Reverse Engineering the Motorola MC14500 1-bit CPU

Поделиться
HTML-код
  • Опубликовано: 26 ноя 2024

Комментарии • 69

  • @CuriousMarc
    @CuriousMarc 3 года назад +108

    Well done! What a weirdly interesting chip. I look at these photos and I still just see squiggles. I'm glad I have Ken to rely on...

    • @UsagiElectric
      @UsagiElectric  3 года назад +18

      Thank you!
      And thank you so much for all your help in getting this entire crazy project to come to fruition!
      It is definitely a weird little chip but Ken is an excellent teacher. Without his wizardry, I never would have figured anything out about the little chip!

    • @ReneSchickbauer
      @ReneSchickbauer 12 дней назад

      Yeah, if you need something reverse engineered, Ken got you covered. I've yet to see him fail uncovering the secrets behind some weird electronics.

  • @jimmy21584
    @jimmy21584 2 года назад +11

    I went searching for websites about 1-bit CPUs recently, just out of historical interest. I found this fantastic website detailing this old industrial microprocessor, and spent an evening reading it. Then I realised it was the same guy who restored the Centurion computers on RUclips, then went back and checked out the rest of the videos here 😊. Fantastic channel!

    • @UsagiElectric
      @UsagiElectric  2 года назад +4

      Thank you so much!
      And I'm guessing you found the article on Ken Shirriff's blog, he was an absolute legend in helping me with this. I can't think him and CuriousMarc enough, they were both just absolutely top notch. Ken very patiently took the time to explain to me all the new and interesting stuff I was seeing and it was just awesome chatting with him. Someday, I hope to meet him in person and take him out to a nice dinner to say thanks!

    • @kurt9232
      @kurt9232 3 месяца назад

      I feel you.
      They are great. As you are.
      I'm learning a lot from you. And I'm really happy about the fact that I'm able now to understand what's going on.
      Thank you so much!
      Could you possibly implement electron flow more? It's much more intuitive for me.

  • @greggysimmo
    @greggysimmo 3 года назад +21

    Congratulations on another fantastic episode! I'm actually not surprised at all that Dan at Hackaday, CuriousMarc, Ken, John and everyone else involved in making this episode possible reached out to help. Your passion for learning and exploring these electronic systems is both sincere and enjoyable, and from a viewers perspective there is an undeniably likable style regarding the way in which you do it. I strongly suggest you nurture these new relationships to help you along the path of this journey, but don't lose yourself along the way as I believe it's who "you" are that's making all of these amazing things happen. Well done and keep up the great work! Oh and I think I speak on behalf of everyone here that we didn't mind your old hair style...it reminded me of a younger version of the chemistry Professor Sir Martyn Poliakoff.

    • @UsagiElectric
      @UsagiElectric  3 года назад

      Thank you so much!
      Sometimes I feel a little weird getting so excited over stuff that's been obsolete for like 40 years (sometimes 80 years), but it's just such cool engineering and I want to share it with anyone who'll listen to me, haha.
      One goal of mine is to read and reply to every comment or interaction that results from these videos, as i think the absolute best part of this whole RUclips thing is the interaction with people. The Discord server is also fantastic, with lots of people exchanging ideas and projects. But either way, the interaction with so many people who are way, way smarter than me has been the absolute best part of all this.
      As for the hair, I was going for more of a Doc Brown look, haha. It'll grow out nice and long soon again though!
      Thank you so much for the kind words and feedback!

  • @gammaleader96
    @gammaleader96 3 года назад +15

    I love how Marc and Ken don't just make suberb content but also are superb people.
    In my opinion your content is right up the same alley btw.
    Of course you are "smaller" and don't have as much equipment but the videos you make are just as interesting and well thought out.
    So thanks for your content as well.
    Greetings,
    Michael

    • @UsagiElectric
      @UsagiElectric  3 года назад +2

      Thank you so much!
      Marc, Ken, John and Dan were all just 100% excellent people to talk with!
      It's incredibly humbling to hear that my content is even in the same ballpark as Marc and Ken, that's just so amazing to hear.
      Thank you again for the awesome feedback!

  • @RWBHere
    @RWBHere 10 месяцев назад +1

    Wow! This takes me back to 45 years ago, when I worked in wafer fabrication. Can't go into specifics, for security reasons, but, on occasion, we used to reverse engineer devices made in other places, to figure out what was being done, and to learn how we could improve on the circuitry. We used a combination of etching, lapping, polishing, staining, lapping at oblique angles, and more, to determine doping types, doping depths, insulation depths, widths, lengths, and other information. It took time and patience, with the right tools, techniques and any insider knowledge which could be gleaned.
    Those methods enabled us to figure out recipes to make better devices, and to tailor them to our customers' exact requirements. (Yes, we called the instructions recipes, because the semiconductors were cooked in ovens. (British humour...)) It was fascinating work, for those with the skills. Our competitors were doing the same things with our circuitry, and different manufacturers would often send sample devices to others, knowing full well that they would undergo forensic examination. The net result has been a rapid pace of progress for most wafer fabrication businesses, and end users are benefitting from that type of reverse engineering to this day.

  • @flomojo2u
    @flomojo2u 2 года назад +1

    I used to work at a chip layout company and one of the services they provided was called "Competitor Analysis"... The company would acquire some chips, then they would be decapped with acid and one of the engineers would painstakingly move over the entire chip's surface using a very expensive optical microscope, while recording the microscope picture with a special TV-resolution camera connected to a VCR, pausing at roughly one screen-worths of a picture. They'd then strip the current layer off and repeat the process until all layers had been filmed. Then some poor person at the company would use AutoCAD and a video capture card to trace over each screen of the video. Then using this simplified drawing they would work it up to an actual schematic. Incredibly time-consuming and very difficult, since as you might guess you don't get a great picture from a VCR tape, and the decapped chip was never perfectly etched down to the current layer. Also some of these layers are somewhat transparent, so it was a very complicated process. Obviously this kind of procedure would never work on smaller digital chips, and in the late 90s it was starting to become impractical for analog/hybrid chips anyway. Crazy stuff.

  • @ymirthefrostgiant
    @ymirthefrostgiant 10 месяцев назад +1

    I'm literally speechless (or rather txtless). What an incredible journey!

  • @AgentOrange96
    @AgentOrange96 3 года назад +5

    To put it a bit more clearly, the first two stages are inverters as already explained. This is basically just buffering the input. The last stage is a NAND gate.
    The top two transistors are PMOS, so they conduct when their inputs are low. Because they are in parallel, if either is active (either input is low) they will pull the output high.
    Otherwise, it'll let the output float.
    A B O
    0 0 1
    0 1 1
    1 0 1
    1 1 X
    Likewise, the bottom two transistors are NMOS, so they conduct when their inputs are high. Because they are in series, both must be active (both inputs high) for them to pull the output low. Otherwise, they will let the output float.
    A B O
    0 0 X
    0 1 X
    1 0 X
    1 1 0
    Because the truth tables don't overlap, when one set of transistors let the output float, the other set will pull it high or low. In other words, you just combine the truth tables:
    A B O
    0 0 1
    0 1 1
    1 0 1
    1 1 0
    This gives you a NAND gate.
    Because CMOS directly connects to either high or low without a pull-up resistor, there is no current flowing when not switching, which is what makes CMOS logic so efficient. It's also what allows logic levels to hit GND and VSS completely, which is super useful. Alternatively, you can create NMOS logic by using only the bottom half of that circuit and using a pull-up resistor or you can create PMOS logic by using only the top half of that circuit and using a pull-down resistor. This, I think, is closer to how tube logic is built.
    I'm not familiar enough with tubes to know this, but I wonder if in theory a CMOS like approach could be taken using the concepts of followers and inverters. Obviously this wouldn't be practical in real works applications regardless, but could be a cool experiment.

    • @UsagiElectric
      @UsagiElectric  3 года назад +3

      Thank you for the excellent breakdown!
      After I showed Ken the video, he sent back an e-mail saying that it was indeed just a NAND gate on the end their, and it was truly a facepalm moment. It was one of those things that was so hard to see until it was pointed out, and then it was so hard to see why I couldn't see it before, haha.
      CMOS stuff is really interesting because the combination of both NMOS and PMOS. In tubes, there's not really an equivalent to a PMOS type circuit, so it was really hard for me to wrap my head around the idea of "depletion mode" stuff. To be honest, I still haven't fully grasped how and when to use PMOS or even PNP BJTs.
      But, creating logic gates using diodes and pullups is pretty common in tube circuits! Essentially, to build a NAND gate, you can build a diode logic AND gate and then use the tube as an inverting amplifier. Same with OR and NOR. It really make it easy to build complex logic. I've even managed to get an XOR and XNOR gate to work using just diodes and and inverters! I was quite happy when that one worked: ruclips.net/video/ANrSOlgGSOU/видео.html

    • @AgentOrange96
      @AgentOrange96 3 года назад +1

      @@UsagiElectric As far as PMOS, it's similar to NMOS and presumably Triode logic, but kinda backwards. So instead of pulling up to logic high, you pull down to logic low. And things that are in series tend to go parallel, and things that are in parallel tend to go series. If that makes sense. As for when to use one over the other? I have no clue.
      I'm not super familiar with diode logic as it wasn't taught in the electrical engineering program I went through. (And neither were tubes. Crazy that they'd focus instead on semiconductors! XD) I did just Google to see what logic AND and OR look like and they make sense! But definitely not something I would have thought of really. Similar to your response to learning that was a NAND gate, it seems obvious after.
      But I think a lot of that boils down to different people having different backgrounds of knowledge, interests, experiences, etc. And really that just keeps things interesting! (:

    • @gcewing
      @gcewing 3 года назад +2

      The tube equivalent of a P-channel FET would be made of antimatter and use positrons instead of electrons. Combining the two would be rather dangerous.

  • @landspide
    @landspide 9 месяцев назад +1

    This is epi, you're one of a kind David too!!

  • @BM-jy6cb
    @BM-jy6cb 2 года назад +1

    A very useful reminder of how absolutely, unimaginably, insanely complex today's processors are at the silicon level when you see how much work went into a rudimentary processor such as this. Of course, no human could design even "simple" modern devices at the silicon level, but the folks who manually drew out these early designs and cut the ruby films for the masks with knives on huge tables are legends.

  • @MikeSzczys
    @MikeSzczys 3 года назад +5

    Thanks for the shoutout to Hack Chat! I'm so happy you had a good experience and very thankful that you shared your time and talent by hosting! You're right that there have been a huge number of awesome people as hosts... you definitely belong in that group :-D

    • @UsagiElectric
      @UsagiElectric  3 года назад +1

      Thank you guys so much for the opportunity to be a host!
      It was an absolute blast and a wonderful opportunity. Plus, to be in the same group as some of the legends that have hosted in the past feels awesome (doesn't stop that imposter syndrome feeling though, haha).

  • @MarcelHuguenin
    @MarcelHuguenin 2 года назад +6

    Wow! This is an awesome video! I told you before I only found your channel recently and am following the Centurion project now. Then, looking into the catalog, I found this little project and did not expect this! You are a great storyteller and then suddenly you introduce two of my heroes Marc and Ken! I tremendously enjoyed it. Thanks David and love your Dream 50 too ;-)

  • @tstahlfsu
    @tstahlfsu 3 года назад +8

    That's so awesome. Love watching Marc and Ken, have been for a few years now -- I probably know more about Teletypes and HP equipment than anyone probably should because of those guys :-D

    • @UsagiElectric
      @UsagiElectric  3 года назад

      They're both absolutely awesome people!
      My family has had a Model 14 Teletype in the garage for about 30 years and I never knew what it was growing up. But, watching Marc's videos on the Model 15 inspired me to take a stab at restoring it. I went from not even knowing what a teletype was to having a restored one sitting on my desk thanks to Marc's excellent videos!

  • @ristopoho824
    @ristopoho824 2 года назад

    A whole video just basically praising how Ken is a genius. Frankly. He deserves all that praise.

  • @raymaster
    @raymaster 2 года назад +1

    an excellent series so far! thank you for making them.

  • @xSH4773Rx
    @xSH4773Rx 2 года назад +1

    I'm in love with this man, super useful info thanks dude!

  • @JohnRineyIII
    @JohnRineyIII 3 года назад +3

    Marc’s a great gent. He very patiently tolerated me being overly excited about his smart HP terminal at the Bay Area Maker Faire after party. 😄

    • @UsagiElectric
      @UsagiElectric  3 года назад +1

      Marc is just excellent!
      Even before I started this whole RUclips thing, I once sent him an e-mail out of nowhere asking about my Teletype and he was patient and helped get me the right answers. Absoltuely top class and I hope someday (after the human malware patch comes out) I get the chance to meet him and thank him in person!

  • @your_utube
    @your_utube 2 года назад +2

    Curiousmarc, what a legend to have him be interested in you. I subscribed today.

    • @UsagiElectric
      @UsagiElectric  2 года назад

      Thank you!
      Curiousmarc is just a fantastic person! I've been a huge fan of his for a while now, so to actually trade emails and get to talk to him was totally surreal, but absolutely amazing!

  • @behnamkakavand
    @behnamkakavand 3 года назад +1

    Found your video through Ken’s tweet. Such a great story and great hints at how to identify bits and pieces on a die shot

    • @UsagiElectric
      @UsagiElectric  3 года назад

      Thank you so much!
      Ken was an absolute legend and taught me so much!

  • @tomcombe4813
    @tomcombe4813 3 года назад +2

    A lot of vacuum tube computers used serial ALUs. So essentially you have a 1-bit ALU, then using shift registers as your CPU registers, you can shift your data through your 1-bit ALU keeping track of the carry in a flip flop.
    You might want to do that instead. You'll still save loads of hardware, but the processor'll be a lot more capable.

    • @UsagiElectric
      @UsagiElectric  3 года назад +2

      Thank you for the comment!
      I've actually done a bit of testing with building up architecture around using serial architecture (serial ALU, shift registers, etc.). It's a really smart way to do things, and in the future I may very well lean into that idea harder. The primary reason behind building a replica of the MC14500 is because I think it'd be cool, haha. Also, I like the idea of being able to build a system based around the actual chip and then use that as a preliminary test bed for what might or might not work on the tube version.
      Also, the more I tinker with the MC14500, the more I discover that it can do some really interesting and complicated things. For example, using IEN and OEN to mask inputs or outputs opens a ton of avenues for IF-THEN-ELSE logic or WHILE loops. In the future I'd love to work on building a sort of "math co-processor". The MC14500 would essentially be the workhorse that moves data around and performs complex loops, and an additional 1-bit adder could be used whenever arithmetic functions are specifically needed.
      The primary downside is that programs will be massively long. But, I've got some ideas knocking around in my noggin about how to handle that.

    • @tomcombe4813
      @tomcombe4813 3 года назад +1

      @@UsagiElectric No problem, and thanks. Yeah i think you'll definitly need a stack pointer or link register then if you're going with this design. Because you'll be using subroutines to carry out most operations longer than 1-bit. Does the MC14500 have either of these?

    • @UsagiElectric
      @UsagiElectric  3 года назад

      @@tomcombe4813 Unfortunately, the MC14500 doesn't have either of those, haha. But, that doesn't mean they can't be implemented externally, which is the primary reason I chose this chip. It's more a building block than an all-in-one package, allowing me to build and add modules as they become necessary.

    • @tomcombe4813
      @tomcombe4813 3 года назад

      @@UsagiElectric I'm sure you'll figure out a way to implement it. Good luck and well done, this is a really good series. I don't think i've seen someone on youtube build a full vacuum tube computer before so i'm excited to see how it ends up

  • @AjinkyaMahajan
    @AjinkyaMahajan 3 года назад +3

    Thanks for a great explanation.
    Cheers ✨✌

    • @UsagiElectric
      @UsagiElectric  3 года назад +1

      Thank you so much for checking the video out!

  • @tze-ven
    @tze-ven 2 года назад

    That interesting gate that the output of the second inverter goes into is a CMOS NAND gate.

  • @DarthCloud
    @DarthCloud 3 года назад +2

    Awesome channel, found it via Ken Shirriff tweet, just finished the relay bin/hex calculators series. Slowly going through the back catalog :) In the same league as CuriousMarc channel in my book! Really good content but also great video editing. I wish I could make my own video that good ;) Thanks!

    • @UsagiElectric
      @UsagiElectric  3 года назад

      Thank you so much!
      I still feel like a total beginner compared to Marc and Ken, but it means a lot to hear that you're enjoying the content!

  • @jensschroder8214
    @jensschroder8214 2 года назад

    at the end of the day it's almost just n-channel and p-channel Mosfet wired together in a logical way.
    NPN and PNP transistors would have needed resistors and current flow.
    Mosfet only require power when the state is switched.

  • @adrianrevill7686
    @adrianrevill7686 2 года назад

    I have always wondered what the NOP instruction was for, now i know, it is so SKIP will work

  • @TheGamingDinosaurRoblox
    @TheGamingDinosaurRoblox Год назад

    this video was really interesting i think i micht be able to work of this and recreate the chip using smd transistors on a pcb i think that could be a fun project to try

  • @wChris_
    @wChris_ 2 месяца назад

    How do you know which transistors are nMOS and which transistors are pMos? Or are you just guessing?

  • @VandalIO
    @VandalIO 3 года назад +1

    Is there a program which can connect the dots and make a circuit diagram using these layers ?

    • @UsagiElectric
      @UsagiElectric  3 года назад

      Oh man, I certainly wish there was!
      There might be a way to get something like that working for more popular ICs, but the MC14500 is such a weird little chip that I think we're stuck with just digging through it by hand.

  • @ZomB1986
    @ZomB1986 3 года назад

    I thought the die shot looked oddly familiar. I've seen the reverse engineering of it on Ken's blog. Back in February.

    • @UsagiElectric
      @UsagiElectric  3 года назад

      Ken was an absolute legend in helping me with this!
      If you look closely at the bottom of the article on Ken's blog, he gives me a brief mention!

    • @ZomB1986
      @ZomB1986 3 года назад

      @@UsagiElectric I've worked with Ken in the past, and with Robert Baruch too , but not Marc. I will work with them in the future too, even though I'm virtually a nobody unlike you. You shouldn't be so reserved like "Oh I spoke with true legends how blessed I am!!11OneOne1". They're just people who do what they do and don't know any better.

  • @zaraak323i
    @zaraak323i 3 года назад +2

    That's not a good story, that's a great story!

  • @thirstyCactus
    @thirstyCactus 7 дней назад

    0:15 Either very cute, or a traditional Klingon breakfast.
    I'm sorry, it just popped in there.

  • @DJ_Level_3
    @DJ_Level_3 2 года назад

    Why are there two inverters? I know you might not have the answer or whatever but it doesn't make sense to me that there's two inverters and a NAND gate rather than just a NAND gate.

    • @afterthesmash
      @afterthesmash Год назад +1

      I can think up a variety of reasons.
      1. Sharpens the signal edge.
      2. Adds time delay to better hit a signal window downstream.
      3. There was extra die space in this block, and it was easier or more reliable to build two inverters than add more metalization.

  • @_film_flashback
    @_film_flashback 2 года назад

    To be fair, Two things, 1. I found your channel first. 10. to me, you are "The Usagi Electric"... JS

  • @LaurentLaborde
    @LaurentLaborde 3 года назад +1

    curiousmarc asked you question ??! are you a god or something ? Instant subscribe :D

    • @UsagiElectric
      @UsagiElectric  3 года назад

      Haha, thank you!
      However, I think it's more just that I'm doing weird stuff that no sane person would actually attempt!

  • @seanwieland9763
    @seanwieland9763 2 года назад

    Skipping instructions immediately makes me think of stack-based programming like Forth.

  • @edgeeffect
    @edgeeffect 2 года назад

    The hot nitric acid to decap the chip is scary enough.... until you use the hydroflouric acid to delayer it.... which makes the nitric feel like warm water. 😀

  • @MultiPtest
    @MultiPtest 3 года назад

    Amazing.

  • @stickworldanimated9545
    @stickworldanimated9545 2 года назад

    Image if Ben eater was here

  • @stickworldanimated9545
    @stickworldanimated9545 2 года назад

    0:10
    XD :)

  • @ropersonline
    @ropersonline 2 года назад

    Me, having watched the video up to about 5:22: _"Stop fangirling and get to the point!"_