8-bit CPU reset circuit and power supply tips

Поділитися
Вставка
  • Опубліковано 1 гру 2024

КОМЕНТАРІ • 245

  • @fweephokus
    @fweephokus 4 роки тому +83

    This deep into the series, I'm starting to come up with ideas before Ben presents them. While watching the previous video, I was thinking "I'd wire up a reset button for everything," and now he's doing that. I also had an idea for what to do with the unused control line, and then he started alluding to a future use for it. It's a testament to what a phenomenal teacher Ben is. I'm not just watching, I'm learning, because I have a great teacher. These videos are priceless!

  • @Crushnaut
    @Crushnaut 7 років тому +197

    building myself a copy of this computer, bought the pieces on the weekend and built the clock today
    thanks for making these videos, so far this is a lot of fun and has reinvigorated my interest in electronics

    • @JohnnyPhoenix
      @JohnnyPhoenix 7 років тому +2

      Crushnaut good luck! Planning to do the same myself.
      Quick question; how much did all the parts come around costing? Bought them online?

    • @Crushnaut
      @Crushnaut 7 років тому +5

      +Johnny Phoenix​ I have a local electronics store called Sayal. They had almost everything, plus I got some extras. The parts were about $220 CAD. I haven't got all the breadboards yet, or the EEPROMs. That'll probably get me up to $300 ish.
      *edit see my comment below. I bought a lot of extra parts and lots of wire and such. You can probably do this a lot cheaper if you stick to just the requirements on Ben's blog. I put together the parts for this project + a lot of starter parts of a hobby electrical kit.

    • @LearnElectronicsCanada
      @LearnElectronicsCanada 7 років тому +2

      Aw wow Crushnaut, I know Sayal may be convenient but the cost buying from them (components, not the breadboards/wire) will be alot higher than just placing a Digikey.ca (or .com) order. The parts would have shipped 2 day (for free >$100 order). I'm going to make a BOM from his videos on Digikey and then give a more accurate cost. I'll let either Ben know, or just post a comment in one of his latest videos. Considering doing this myself, but I'm considering the PCB route... I'm not a breadboard type of guy ;-)

    • @NL-tq1yr
      @NL-tq1yr 7 років тому

      Crushnaut does your computer as clean as Ben's computer? or do you have jumpers all over the place?

    • @Crushnaut
      @Crushnaut 7 років тому

      I did some comparisons. The prices weren't THAT different. Sometimes Sayal was cheaper. For instance on the SN74LS00N Digikey is $1.78 CAD. I got mine for $0.50 each.
      Another thing to consider for my costs was that I got 100 feet of 6 colours of 22 AWG wire. That was $20 a roll which was $120. Compared to the recommended product on Ben's site for 6 colours @ 25 feet each for $22 USD I think I did alright.
      The other reason I am estimating is because I also bought a multimeter, needle nose pliers, wire cutters, and wire strippers (I guessed when I removed the cost of these tools). I also got some jumper pin headers and extra parts. For instance you only need 7 74LS173 registers. I bought 10. I got large packs multipacks capacitors, and resistors (over kill but a good starter set up as I have nothing). Finally, I also got 100 packs of LEDs in 4 colours. Those we like $15 each (I think). Again over kill but I was building a starter pack for electronics.
      I think if I just bought the parts for this PC I could have got everything in at around $200.

  • @barmetler
    @barmetler 5 років тому +14

    soo many blinking lights, soo satisfying @10:50

  • @Orxenhorf
    @Orxenhorf 5 років тому +7

    Thanks loads. You just solved some of my confusion. I've been watching this whole series and decided to get a breadboard kit to play around with. I also finally got around to assembling the Three Fives kit and was trying to use that to make a LED blinker as a first project. Aside from the breadboard kit coming with "100 nF" capacitors that measure out as 47 nF, I hadn't realized yet that this breadboard had split power rails.

  • @alexandermaasland3494
    @alexandermaasland3494 3 роки тому +3

    I just have to say: I am in awe... These videos you made about building a computer from scratch are quite inspirational and make me understand how a cpu can be build and customized.
    Please keep up the good work!

  • @jozef_kascak
    @jozef_kascak 7 років тому +48

    Man, you gave me more about this things than CS university ... Thanks

  • @311Firefly
    @311Firefly 5 років тому +3

    Every time I have been doing some projects with " TTL logic " I have allways used decoupling capacitors, mainly to avoid power starvation.
    It's a Really nice Tutorial You got put together there, I enjoyed it wery much.
    Thank You wery much. Keep up the good work

  • @koolatrimr2211
    @koolatrimr2211 6 років тому +2

    This was a great journey. I enjoyed every bit of it. Thanks for putting all things togeter in a consistent way, so it was easy to folow through. Good luck with other projects.

  • @jtsiomb
    @jtsiomb 7 років тому +77

    Speaking of power tips, I think this computer is in desperate need of bypass caps. I think this will help a lot of people who are facing power distribution issues. Btw I'm a big fan of this series; you're doing an excellent job presenting every step of the way with great clarity.

    • @bretthaupt1019
      @bretthaupt1019 7 років тому +4

      Exactly what I was thinking. Just putting a cap on each power rail pair will prevent noise or high peak draws (as evidenced on the benchtop power supply). Not doing so could cause a lot of issues if you ramp up speed as the noise in the power rail could induce ic failure/nonperformance.

    • @crocellian2972
      @crocellian2972 7 років тому +2

      John Tsiombikas - A lot of that is Ben' religious use of the Fairchild DM series of 74LSxx TTL. They were much more tolerant than modern ICs. I am guessing it is the lower speed, but have done bench work to confirm.

    • @cmuller1441
      @cmuller1441 6 років тому +6

      He could also add resistors in series with his leds... some are clearly driven a bit hard and are quite bright. He could reduce the power consumption a lot, reducing stress on the psu caps and wires...

    • @AnneJan
      @AnneJan 6 років тому +13

      Breadboards have nice capacitance between all the plates.
      Shrinking a breadboard project down to PCB has in the past made me wonder why things would work on breadboard but not on PCB . . capacitance

    • @MattRose30000
      @MattRose30000 Рік тому

      @@AnneJan I was gonna build this whole computer eventually on prototype boards. That's a good tip.

  • @crashmatrix
    @crashmatrix 7 років тому +24

    That dip switching speed tho

  • @LemoUtan
    @LemoUtan 7 років тому +3

    Excellent! Also - a note on the cheap MB-102s - there may be two 'flavours' of them, one packaged with a black top (which has the weird numbering, the power rail breaks, the reverse printing, the difficult insertion) and one packaged with a blue top (which has none of these issues).

  • @GazzJ82
    @GazzJ82 7 років тому

    Thank you for these fantastic videos. I am an electrical contractor, built many control panels etc and spent many years as a kid writing basic programs for the C64 and the BBC micro. Never managed to really blur these lines and understand electronics and the basic principals of how computers work. Until now. I plan to order the bits and probably build this on boards and put in a nice case with lots of flashing lights and switches on the front :) Thanks again for your fantastic work.

  • @benthere8051
    @benthere8051 4 роки тому +1

    YOU DON'T NEED POWER DISTRIBUTION PROBLEMS. They can give you wildly unrepeatable results. I recommend running power on bus bars outside of the grid with power and ground delivered to the prototyping boards with the 0.025" square pins as you mentioned. You can make bus bars with 0.062" double-clad FR-4 PC board material which will slide down easily between the rows of your 0.025" square pins. This also gives you an excellent platform for mounting bypass capacitors, which I see a few on your board.

  • @vierikristianto1334
    @vierikristianto1334 10 місяців тому

    If possible, Im going to give you 2 likes for each of your videos. Nice series Ben! It is really that good and educating, while also being interactive.

  • @nil2k
    @nil2k 7 років тому +34

    I'm really enjoying this series, but one thing I keep hoping you're going to do is to use that spare bit in your microcode rom to implement a microinstruction counter reset signal so that at the last step of each instruction, your microcode rom signals that counter to reset so that architecturally when you're done with an instruction you're back at T0 again (giving you instructions that complete in differing numbers of clock cycles as well as no need to ever manually reset the microinstruction counter since HLT will do it as well and simplifying your reset logic overall).

    • @miron__
      @miron__ 7 років тому +18

      thats a long sentence

    • @julian4064
      @julian4064 7 років тому

      dAcid lol

    • @johncochran8497
      @johncochran8497 6 років тому +5

      I agree that would be quite nice. And I see two ways of doing such a counter reset. The first is use an unused control bit from the microcode ROM such as your suggestion. The second is to perform an OR operation on all of the control lines.... And if the result of the OR operation is 0, then reset the microcode counter.

    • @John-Smith-999
      @John-Smith-999 6 років тому

      I was wondering if you could rest the T counter using the same signal as incrementing the instruction counter. The microcode wouldn't have to do this in parallel with the last step, but 3 step instructions would run 33% faster.

    • @campbellstarky2144
      @campbellstarky2144 4 роки тому +1

      john smith One disadvantage of that is that I have been thinking about multi-byte instructions. For example, LDA could be instruction 0001xxxx (disregarding the low order bits) and the address could be the next byte. The microcode might look like FETCH, CE, RO AI, AO MI, RO AI. You could then address 256 bytes of memory by my counting. But you would need to have a CE micro-op that does NOT reset T. No idea if that actually works, but I can’t imagine why it wouldn’t work. But crucially, you need a CE that does not reset T.
      BTW the reason I temporarily park the address at the A register is that I would be worried that if you transfer directly from RO to MI, the RO might update too quickly and then MI would be changed via the bus, and then RO would change, and then.... I might be being overcautious, good edge detection could probably avoid that and reduce the number of cycles a little.

  • @lightdark00
    @lightdark00 7 років тому +9

    I always wondered why the first vacuum tube based computers had so many lights. Now I understand.

    • @kaitlyn__L
      @kaitlyn__L Рік тому +1

      Yep, no circuit budget for heavy decode circuitry, just directly viewing lots of bits. Though my favourite was some early ones which used a CRT as RAM instead of a mercury delay line, and so you could also directly observe the rows of dots as they flickered on the tube!

  • @gelatinocyte6270
    @gelatinocyte6270 7 років тому

    It's been fun watching your videos Ben Eater. Keep it up!

  • @EdwinNoorlander
    @EdwinNoorlander 7 років тому +1

    Nice Julian👍🏻, you added something good to the computer from Ben.

  • @tusharmaurya1668
    @tusharmaurya1668 7 років тому

    Sorry man I can't afford to be your pateron because i am a kid. But i swear when i earn money I'l firstly donate it to you. Thanks for giving us details on those computers, helped me a lot.

  • @younessamr6802
    @younessamr6802 7 років тому +41

    can you add an IO module, to see how the computer interact with the outside world. keep the good work ^^

    • @trellend
      @trellend 6 років тому +6

      That would be another register (C), 2 control lines, and now you got 8 outputs. Need some bit math instructions though.

    • @QuintarFarenor
      @QuintarFarenor 5 років тому +3

      @@trellend Or do it like "real 8-Bit computers" and just use a part of RAM as a screen Memory

    • @trellend
      @trellend 5 років тому +1

      @@QuintarFarenor Then you have that annoying screen blanking thing going on.

    • @davidmcgill1000
      @davidmcgill1000 5 років тому +2

      @@trellend Not necessarily another register. It can exist on the bus with an output enable, but being latched on clock would improve stability, what with bits not being changed while attempting to read it.

    • @prathamkalgutkar7538
      @prathamkalgutkar7538 4 роки тому

      @@davidmcgill1000 I'm Starting to build my one 16-Bit Upgraded Version of Ben Eater's Computer, and I guess Instead of using The Bus Directly, we can use the Same Output Register used for Decimal Display. My Plans are just to use the Port using Arduino to Monitor and Possibly Input Data Aswell

  • @TDk-ob2ew
    @TDk-ob2ew 7 років тому

    Thanks again for the slow pace and the detailed explanations, Ben! Regarding breadboards, I've got exactly the same cheap brand, for less than 2€ a piece. They are a bit difficult to use, but they don't have upside-down numbers or split power rails on them - I guess yours are even cheaper copies of a cheap model. The cheapness of the boards can be a bit annoying, but once your components are placed it's not an issue anymore. - And now for something completely different, I saw someone else solder all their power connections together, using pinheaders for each breadboard connection. Anyway, thanks again, I'm looking forward to the jump circuit! =)

  • @RichSr40
    @RichSr40 6 років тому

    Excellent Instructions. Keep up the Good Work!

  • @jetraid
    @jetraid 7 років тому

    I can't wait for the next chapter, I don't have idea what next but allways something excelent and with an perfect explanation. Maybe the next step could be to add more instructions but I think is time to make a new programming system, maybe with a keypad.

  • @alangilman2015
    @alangilman2015 5 років тому

    I like that you use the answer to Life, The Universe, and Everything for your calculation :-)

  • @AyariMakrem
    @AyariMakrem 7 років тому

    Big thanks for this great work and effort and good explanation.

  • @JP-gs3jw
    @JP-gs3jw 7 років тому

    Thank you very much, I always learn something from your videos.

  • @mikedelosier95
    @mikedelosier95 7 років тому

    Hello Ben, LoneRegister,
    Just watched LoneRegister Micro Code Reset Circuit video, My two bits.
    I am going to try coding my EEPROM using the 16th open instruction decoder output pin as an "Instruction Micro Code Step Counter Reset" signal so your final Micro Code step instruction will reset the Micro Code counter to eliminate wasted instruction T Cycles.
    Remember NOP is 00
    Keep up the good work :)
    Thanks, Mike DeLosier

  • @SiliconSet
    @SiliconSet 7 років тому +1

    Great video! Many thanks!

  • @Mr_ToR
    @Mr_ToR 5 років тому +4

    I was really hoping that the resetting of the control logic instruction step counter would be done in the EEPROM instead of hard-wiring to T5. This would have enabled real various length operations and allowed a bit of cycle optimization. This could be done with the second EPROM which has an unused IO pin and that could be connected to the instruction microcode step counter reset line. You would program the EEPROM accordingly and this would allow, for example , LDA microcode to reset/finish at T4 and ADD to end/reset at T5. Basically just put a 1 in the EPROM at the end of each instruction microcode to reset the instruction step counter.

    • @Android480
      @Android480 Рік тому

      I think part of genius of this series is to let people have ideas like this themselves. He left ample room for us to have ideas, and have the knowledge to implement them.

    • @Mr_ToR
      @Mr_ToR Рік тому +1

      @@Android480 best series ever. universities should learn from him.

  • @mistervoldemort7540
    @mistervoldemort7540 7 років тому

    As usual, great work!

  • @damisimsanii544
    @damisimsanii544 7 років тому

    thank you so much Ben..great video

  • @JasonMasters
    @JasonMasters 7 років тому +1

    It's interesting that the MB-102 boards you received are the low-quality boards with breaks in the middle, because the latest boards I purchased are exactly the same brand and even came in exactly the same package with exactly the same brand markings, but they're better quality than the ones you're showing and with continuous power rails and more consistent printing (although the numbers are still not quite aligned properly).
    The boards I got still aren't the best quality, but they're acceptable if you're willing to overlook their shortcomings.
    I posted a link to the eBay listing on a previous video. The seller offers boards, a power supply plugin board and jumper cables, and offers them in a few combinations too.

  • @vitaliimakarov6181
    @vitaliimakarov6181 Рік тому

    I really can’t wrap my head around this series. How we started with only one LED in the circuit and internal structure of the transistor to the whole 8 bit computer!

  • @duncang55
    @duncang55 4 роки тому

    I MISS RADIO SHACK! (And GREAT series, Ben!). The old plans are getting dug out next day off I have, see if my old DTL stuff is still doable...

  • @jamescaperelliiii4620
    @jamescaperelliiii4620 7 років тому +1

    Ben thank you for the series. This is one of my favorites on UA-cam. Next installment, boot monitor, GPIO, I2C, keypad w/hardware & software...? I guess I am getting nostalgic about my old KIM II SBC. The advice about breadboards is very helpful, especially when buying them online. I have noticed a huge difference in quality and spent a lot of time troubleshooting issues that ultimately were not my design or programming, but rather flaky connections (especially with signals that have critical timing).

    • @mannhansen9337
      @mannhansen9337 5 років тому

      I'm a KIM-1owner. Still in working condition but not used every day. Faulty breadboards almost made me going bananas. 6 years ago I started to experiment with a PIC16F628A , blinky LED example. The LED was blinking sometimes , 2 Hz and sometimes there was a 3-15 sec. delay.
      To make a long story short. Faulty breadboard. Dupont wires badly crimped can cause strange problems. With new designs I test every breadboard and cable.Start simple with a blinky LED an increase complexity.

  • @SteveYoung359
    @SteveYoung359 2 роки тому

    For the asynchronous reset on the step-counter, you could tie all the inputs to LOW, and use "load" as the reset, which makes this synchronous to the clock too :) - Then you have a "step counter reset line" to work with.

  • @thomasre8073
    @thomasre8073 6 років тому

    I like it, to watch you messing around with this computer.

  • @caroman4102
    @caroman4102 5 років тому +1

    Thank you i finally inderstood how pc really works.

  • @CafeBikeGirl
    @CafeBikeGirl 7 років тому

    It is totally amazing that something half that complex is running on a breadboard!

  • @jsmythib
    @jsmythib 4 роки тому +2

    I have been having good luck with the mb-102's I bought on ebay. So far my only issues have been user derived. For anyone interested :)

  • @blazaniterules289
    @blazaniterules289 6 років тому +1

    I ordered a MB-102 breadboard and it was just like the BB830. There wasn't a break in the power lines and the printing of the letters and numbers was accurate and not flipped on the opposite end. It also had good connections. So they have either improved there breadboards, or i was sent a better breadboard in MB-102 packaging.

  • @tehaxor69
    @tehaxor69 7 років тому +3

    I've made CPUs in FPGAs before, but my instruction decoders were done in a case block and the micro code was also done in a descriptor language.
    After watching these videos, I want to try this with the schematic designer with nothing but gate logic, no IP cores except for the M9K blocks.

    • @stepsvideos
      @stepsvideos 7 років тому

      After watching these videos I decided to give it a try using a CPLD. Being new to FPGA and CPLD my first hurdle was finding out that 3-state outputs were not available inside the chip. Next problem was finding out how much of the chip resources get used up when implementing memory with just flip-flops, and had to limit the memory to just 8 bytes.
      So far I have built some of the blocks individually, but I'm sure it's going to be a challenge fitting them all in together. I'm using an Max II with only 240 logic blocks. It does have a built in memory block of 1k, which I will use eventually, but for right now I'm having fun trying to use only logic gates and ff.
      One disappointment was finding out that the max number of program/erase cycles is 100. However the chip and board, plus programmer, were under $10, so can't complain too much. It's been like re-experiencing childhood, playing with Legos, except it's arranging gates and flip-flops to make a circuit. Have to thank Ben for rekindling the interest in digital logic.

    • @tehaxor69
      @tehaxor69 7 років тому

      I'm using a Cyclone V E with 25K LEs.
      I got around the tri-state outputs by making a multiplexer/de-mux, I made eight 8 bit inputs and eight 8 bit outputs with a 3 bit selector for it.
      This kind of does remind me of my childhood, LEGO blocks, K'NEX, and I had a dozed of those multi in one kits from Radio Shack, 1000s of LEDs, Resistors, Caps, Transistors, and 100s of IC parts for glue logic.

  • @TDk-ob2ew
    @TDk-ob2ew 7 років тому

    I'm currently reproducing the control logic counter in my build. I hooked up the green LEDs driven by the 138 to 5v, not ground, so only one of them is active and i presumably save a few milliamps. This also makes more sence to indicate on which step the computer is.

  • @fzigunov
    @fzigunov 7 років тому

    Can't stop watching!

  • @LucS0042
    @LucS0042 5 років тому +3

    I'd love to see you make a PCB with something like easyeda and put it together on pcb

  • @zakariarizvi8003
    @zakariarizvi8003 7 років тому +21

    upgrade the alu so that it can also perform AND, OR and NOT operations ...

    • @georgegardei340
      @georgegardei340 5 років тому

      I want to build this... and then figure out on my own how to add a multiply, device, subtract, and or not, etc

    • @georgegardei340
      @georgegardei340 5 років тому

      oh, and save my programs onto eprom

    • @andreyrumming6842
      @andreyrumming6842 4 роки тому +3

      @@georgegardei340 Subtract is already done for you :). Multiplying is gonna take awhile, as binary multiplication is quite complex. Dividing is EXTREMELY complex and you would need like 2 breadboards just for division alone. Multiplication maybe you can get away with one. The AND, OR, NOT, etc operations however are super easy to do. You'll just have to change how the ALU functions from "Add or subtract depending on if this signal is high or low" to "I can set the ALU function register (Doesn't exist currently) to the command ADD (0001), SUBTRACT (0010), AND (0011), NAND (0100), etc". Can be done, you'll just have to make some alterations to how the ALU functions. I can help you with that if you still want help on it.

    • @andreyrumming6842
      @andreyrumming6842 4 роки тому +1

      As for EPROM, you can build a simple enough circuit to take the output of the internal program memory and save it to an EEPROM or EPROM chip (Either would work), as well as have it load from the EEPROM/EPROM and save it to the running program memory. Can be done, and would be quite fun to have like 10 different EEPROM chips offboard in a container or something with different programs pre-programmed into them. Just swap out the correct EEPROM chip into the save/loader circuit, hit "Load", and off you go

    • @bobdagamer640
      @bobdagamer640 4 роки тому

      Andrey Rumming couldn’t you just add multiple times like how the micro instruction thing works

  • @jtasrtrash
    @jtasrtrash 4 роки тому

    Thank you for your great videos! :) If instruction codes for mem operations like LDA would consist of two bytes instead of one (first (half) byte instruction, second byte address), you could even use one of the 2K EEPROMs for memory instead of the (poor) 16 Byte Memory and therefore use the whole 8 bit bus to address, not only the lower 4 bits, to be able to address 256 bytes without too much change and your program code would even be saved. At a first guess, the only thing you would have to change is the memory unit, extend the microcode counter to four bit and update the microcode. Even using 3 byte LDA like instructions to be able to address even up to 64K would be possible by only more clock cycles and some small changes (you would need a second memory register). But in both cases, with a lot more memory, you could write fairly interesting code for that processor, although the microcode needed more clock cycles on the mem operations and would be slower.

  • @beopstek
    @beopstek 7 років тому

    Thanks for the tips. I use the lower cost breadboards for my own build (a computer that also does video, see my videos). I bought these because you need so many of them. I can confirm that the insert can be difficult. Once you understand how the pins work internally, you know what is happening. They are not always well-aligned underneath the hole, and the mouth or funnel is not as good. There are videos that tear them open and compare. Just don't force them, wiggle a lot, and it should be fine.
    I believe I have forgotten about the power rail gap many times already, very annoying. I suppose they are intended so you can do different projects. But bridging them also causes an unnecessary additional resistance.

  • @camiz3994
    @camiz3994 8 місяців тому

    Thank you Ben!-

  • @aameen951
    @aameen951 5 років тому +3

    What does "... these signals will be buffered ..." (at 4:23) means?

  • @williefleete
    @williefleete 7 років тому +2

    Awesome series, I've been slowly building my own version of this with some changes including adding a 1Mhz clock circuit and using solderable boards and IDC cables etc, still waiting on the memory chips and a supply of EEPROMs that will actually program on my eprom burner, some used ones I got off eBay have bad cells and I put in a request to get more with a local supplier which seemed to work. I am wondering if you will eventually release a binary dump of the EEPROMs, the display one I managed to modify the arduino program and dump out into a bin file the microcode might be more of a challenge.
    So far I have completed and tested the clock, PC and output, and ALU and I'm in the process of wiring the IR and control board, which leaves just the memory once I get the RAM chips

  • @St3venAU
    @St3venAU 7 років тому +6

    I was quite surprised at the 1.2A current draw. I'm wondering if the majority of that is all of the LEDs.

    • @ElusiveAffinityEchosAlignment
      @ElusiveAffinityEchosAlignment 7 років тому

      if one LED needs around 20 mA, then 1200 mA / 20 mA = 60 LEDs
      also the ICs themselves use some power, so this is one hungry beast of a computer ;)
      I am getting components to built this myself, it is fun and very, very educational. Ben is doing a wonderful job by explaining all the inner workings in very simple and easy to understand way.

    • @KX36
      @KX36 7 років тому

      LEDs used for indicators shouldn't draw anywhere near 20mA.

    • @LearnElectronicsCanada
      @LearnElectronicsCanada 7 років тому

      The original design I believe was more around the 700mA range with the power supply design, so Yes the LEDs are adding a fair bit of current draw on the design. I would probably look to reduce that by lowering the current on the LEDs, more like the 5-10 mA, most bright diffused LED can easily be visible in that range. Especially when a resistor on the Logic Gate's transistor is what is limiting the current... has anyone taking the time to measure the current to the LEDs hooked up in this way, or know the internal resistors value? (as you can see I'm a voyeur and not currently building one lol)

    • @EDToasty
      @EDToasty 6 років тому

      I mean... 5w doesn't seem much, considering the scale.

    • @GRBtutorials
      @GRBtutorials 6 років тому

      By using CMOS chips, you might be able to reduce power consumption. Of course, that might mean putting resistors on the LEDs.

  • @lukasrussell5905
    @lukasrussell5905 7 років тому

    I LOVE THESE VIDEOS!!!!

  • @DrRChandra
    @DrRChandra 7 років тому +2

    In the beginning of this series, you talked about decoupling. Perhaps that would add stability too. All those millisecond breaks-makes from wiggling the power feed connector would be "filled in" by extra capacitance. Plus it'd serve its usual role of making sure the chips don't glitch due to action of the other chips.
    I was wondering...with these EEPROMs, have you in essence been using the equivalent of an FPGA; is that the sort of thing FPGAs are for?

  • @gogogooner
    @gogogooner 7 років тому

    Thank you for a great series! It was very interresting.

  • @bitblaster66
    @bitblaster66 6 років тому

    Great videos,
    BUT as to your power supply issues, You should have notices it when you were testing with the multimeter.
    It was reading 4.7 volts which is under rated. Keep up the good work.

    • @Joshuahall228
      @Joshuahall228 5 років тому

      Alard Eales It’s possible to notice something without addressing it right then; as neither of us did and he did. 😂

  • @leoq4498
    @leoq4498 5 років тому

    I think the whole reset circuit could be made out of the extra gates that are not being used from the logic of the clock and save one chip.
    Anyway, thanks Ben for the great videos!! You're awesome!!

  • @idjles
    @idjles 7 років тому +2

    if you used 100kΩ pulldown resistors instead of 10kΩ on your switches, would you would reduce pulldown leaking power by 10fold?

  • @64jcl
    @64jcl 7 років тому +5

    Should consider adding some sort of card-reader so it becomes easier to program the machine. :)

    • @allmycircuits8850
      @allmycircuits8850 5 років тому

      Punch-card-reader :) for authenticity

    • @supernenechi
      @supernenechi 4 роки тому

      @@allmycircuits8850 Programming it into argol

  • @knodelcrafter6888
    @knodelcrafter6888 7 років тому +23

    You probably got this question a few times now, but how are you making these cables? Are you building the episode beforehand, destroy it and use the cables from bevore?

    • @danidiaz9510
      @danidiaz9510 6 років тому +14

      I've passed sleepless nights thinking about it. I can now honestly say I have no idea, he's probably sold his soul to the devil.

    • @casarek
      @casarek 5 років тому +1

      (my thinking) He pauses filming, measures and bends the cables, strips the ends and then films himself putting it in place.

    • @SiggyPony
      @SiggyPony 5 років тому +1

      For mine I use toenail clippers to strip the wires and then tweasers to bend each one individually to shape on the board then taking them off to straighten them out and putting them back in place so they fit perfect. That said, I've been working on mine for over a year now slowly so everything is perfectly aligned

    • @RoamingAdhocrat
      @RoamingAdhocrat 4 роки тому

      I mean you can count the breadboard holes the wire has to cover, and prep it on an empty board…
      But he's clearly rehearsed all these videos except the troubleshooting one.

    • @CheeseDiablo
      @CheeseDiablo 4 роки тому

      If you go back to the first videos, you can notice that he had this computer built before. So maybe he just disassembled it and he already has all wires bent in a right way

  • @minecraftermad
    @minecraftermad 6 років тому

    it running at full speed the stopping makes me the happiest person on the planet

  • @bas8036
    @bas8036 7 років тому

    It would be so awesome to have a follow-up series on how to build an interactive simple calculator with this breadboard computer. 0-9 buttons, +, -, /, *, = and CE. We would have to add some components but not too bad. The dream...

  • @amrkhaled9203
    @amrkhaled9203 4 роки тому

    I have power issues and I noticed that the VCC on my breadboards is between 4.19v-4.6v which is less than VCC required by chips to operate properly . Some chips operate properly though ,but program counter is counting in a weird behavior . So my question is: Can I connect a power supply to the right half of the computer and another power supply to the left half of the computer ? If so, will this have a bad effect on modules connected to the bus from the right and left halves of the computer ?

  • @GaryCameron780
    @GaryCameron780 4 роки тому

    ~16:00 regarding breadboards: As with most things you get what you pay for.

  • @israeldlr4365
    @israeldlr4365 7 років тому

    this is beautiful

  • @SiggyPony
    @SiggyPony 5 років тому

    I had some stability issues on my control lines and address bus especially when working on the control logic because for some reason if the control lines ever floated weird shit started happening. My biggest issue was with the 74LS32 in the clock circuit almost burning itself out because of the floating HLT line as I was working on the control logic. I also encountered erratic behaviour from the computer when the clock is running at full speed (the program the counts to 42 is instant at full speed, and I have to use an oscilliscope for debugging). My solution was to all 1k pulldown resisters to the system bus as oppose to the 10k ones and to add a seperate 1k pulldown resister at each module directly where the control signal connects. I found that 10k pulldown resisters didn't pull the voltage low enough to cause the signals to count as low in some places and caused the address bus to float at 1.4v oftern when nothing was connecting it to ground. I also added some big electrolytic caps at varying places along the power rails for higher power draw situations and decoupling caps on the rails also. Now my processor runs at full speed flawlessly completing calculations right at the instant you press the button, right now thats about 450Hz according to my scope, but I might try increase the speed eventually

  • @JarppaGuru
    @JarppaGuru 11 місяців тому

    4:15 even get simpler. remove nand gate after /ts. use reset and TS for last nand. vola! and add that TS to control roms 2x vola.

  • @farukyldrm8498
    @farukyldrm8498 Рік тому

    does he have a compiler and a loader for that computer? or similar functionality with an easier use than filling memory cells by hand

  • @fiskusmati
    @fiskusmati 5 років тому +1

    why you have your program on volatile memoty? couldnt you just use flash or eeprom to store program?

  • @peterchen6462
    @peterchen6462 7 років тому

    Great Ben

  • @Isacvd
    @Isacvd 7 років тому +3

    Can't we use the non inverted reset, before the first nand gate?

    • @twistedsim
      @twistedsim 7 років тому +1

      Not really, voltage will probably drop a bit with current. It's better to use a buffer to keep the right logic level. But in this case there is not many outputs so it might works well anyway.

  • @jack82822005
    @jack82822005 4 роки тому +2

    why do we need a buffer for reset?

  • @paulcarter7238
    @paulcarter7238 5 років тому +1

    if you did not clear the A buffer it could run again and add to that until it goes past 255...thanks very much

  • @xc_gwpl
    @xc_gwpl 6 років тому

    Try adding a register for memory banking, and increasing the amount of memory.

  • @kryptocat4240
    @kryptocat4240 4 роки тому +2

    What is the perpose of buffer gate

  • @NeverSnows
    @NeverSnows 4 роки тому

    what a fancy calculator you have there sir.....

  • @thepvporg
    @thepvporg 5 місяців тому

    Maybe a better design would add another set of strips to the bus and it is a reset signal bus which carries both types of RESET.

  • @EJOsis
    @EJOsis 7 років тому +1

    Do you have a jig or method for making your small jumpers. Or have you just made enough for muscle memory to kick in.

  • @AnalogDude_
    @AnalogDude_ 6 років тому

    Hey Ben Eater, you could try and add another 555 timer and PWM the leds and cut power consum in half, depending on the frequency by the 555 timer.

  • @p4pagaio180
    @p4pagaio180 3 роки тому

    Carai pivete, tudo isso por uma calculadora, tu é foda viu, para bens

  • @stevenriofrio7963
    @stevenriofrio7963 2 роки тому

    Will you make a video on how to implement interrupt control?

  • @vitaliimakarov6181
    @vitaliimakarov6181 Рік тому

    Can someone explain why we need to reprogram the top memory every time, but the memory on the bottom somehow persists forever?

  • @nickhuber5476
    @nickhuber5476 7 років тому +1

    how do you make the wires so perfectly

  • @thewhoareyouperson2774
    @thewhoareyouperson2774 7 років тому

    Have you ever thought about adding some sort of serial connection to it, so you could 'control' it from your computer? After jmp/etc is implemented of course, but it would be neat to make it do a simple game, or 2+8=whatever somewhere other than hardcoding it in

  • @jamesrivettcarnac
    @jamesrivettcarnac 3 роки тому

    What are the push buttons you use? I've had such mixed luck with them.

  • @patrickjeromeobaldo2450
    @patrickjeromeobaldo2450 2 роки тому

    This is the only time I'd like to operate a slow computer.

  • @Shyssiryxius
    @Shyssiryxius 6 років тому

    After hooking up the reset signal to the program counter and removing the permanent wire to ground on the master reset on the chip my program counter acts weird and resets after a few counts. Ideas?

  • @richard6768
    @richard6768 7 років тому

    Have you had any problems not using smoothing capacitors on the TTL chips? Mine was behaving very wonky until I started putting capacitors on all the chips.

  • @EebstertheGreat
    @EebstertheGreat 4 роки тому

    What are the green and yellow jumpers still connected?

  • @ferencakosjambor1144
    @ferencakosjambor1144 5 років тому

    The numbers to be added are given by the last four bits of the programmed program in the ram?

  • @EdwinNoorlander
    @EdwinNoorlander 7 років тому +5

    So Ben, what are you going to do in the next video? More op-codes?

    • @erniepasveer8027
      @erniepasveer8027 7 років тому +4

      Yes, I'm very interested in "what's next". I just love this series of videos.

    • @Crushnaut
      @Crushnaut 7 років тому

      I am building this computer myself. I am thinking about adding audio out, just a little speaker. I was thinking instruction would be first four bits for audio out, next four for an address. The tone played would then be the value of the memory address with the first 4 bits being the tone, and the second 4 bits being duration (maybe in increments of 1/8th of a second). That would give it 16 different notes, that can be played for 0-2 seconds in 1/8th of a second increments.
      I also want to figure out a way to expand the capacity of the memory. That will be very challenging though.
      *edit ... oh and a keyboard to program the memory would be cool

    • @palpatinewasright
      @palpatinewasright 7 років тому

      I'm hoping for a simple jump instruction, so we can get some simple loops.

    • @404Anymouse
      @404Anymouse 7 років тому

      Crushnaut Normal approach is to memory map the io, that means as far as software is concerned, you control peripherals by writing control word to certain address of memory. The peripheral's enable pin is then activated via combinatorial logic in case the right address appears on address bus. Not having separate address and data bus complicates it a little but you can use what you already have for accessing actual memory

    • @palpatinewasright
      @palpatinewasright 7 років тому

      Memory mapping is great, but when you only have 16 bytes of address space you can run out very quickly.

  • @cogwheel42
    @cogwheel42 7 років тому +1

    Jameco offers breadboards with a 1 year warranty. I'm waiting for a pack of them because the Elegoo ones I got off Amazon were total crap. Dip Switches won't stick in them at all, tactile switches barely stay in... plus the same problems you show with the cheap one here. I've made some progress on my Brainfuck CPU but the breadboards can cause some real problems if you skimp.

  • @lolshoc5755
    @lolshoc5755 7 років тому

    Hi, I love this series, and am probably going to build one for myself. Maybe you could add some sort of "jump if" op code to the computer, so you can do slightly more complex programs.

  • @dachew57
    @dachew57 5 років тому

    Hi Ben. How are limiting current to the LEDs? That power usage seems high for that few chips. Maybe I'm missing something tho?

  • @Defianthuman
    @Defianthuman 4 роки тому

    The iPad charger is 5.2 volts. That would explain the brighter lights.

  • @guiguinelson
    @guiguinelson 3 роки тому

    Great didactics

  • @damiandassen7763
    @damiandassen7763 7 років тому

    are you going to make more videos upgrading this computer?

  • @samwe8977
    @samwe8977 7 років тому

    Hey .. very delightful work keep going :).... and I have questions please .... I have 7400 and ,or, xor,nad and I wanna connect the output of a gate to another gate input but when I tried to do so nothing work please can you tell why?

  • @minecraftermad
    @minecraftermad 6 років тому

    i think you need a current direction thingy in there somewhere (at 9:00)

  • @Seff2
    @Seff2 7 років тому

    I built the computer almost finished, just the Control module is missing. Unfortunately i have to say that i am about to give up on this project. The power issues i have are just not managble for me. Each module on its own works fine, but after i plugged all together there is always at least one module that is not working correctly, that is not taking values from the bus or not put values on the bus. sometimes i also just lightly tap on the table which already sametimes causes some LEDs to toggle on and off... I used some mid range Breadboards, but i think for this kind of big problems it is unavoidable to invest into the really expensive breadboards.
    I also wonder if my power plug might be too weak, it is rated for 1A, but when i measure the total vurrent i only get 0.45A, which seams to be to low comapred to bens values. Maybe i also should try a better power adaptor.
    Anyways, i am really frustrated about this project, because i theory it would work great for me since every module works fine alone, but then the reality hits me when i try to put stuf together.

    • @octagoncake2560
      @octagoncake2560 7 років тому +1

      Have you measured the voltage on different breadboards? I'm going to make a guess and say, that if you see voltage drops on each breadboard take a look at this UA-cam user "/user/osadzinski" . I also had a problem with voltage, which lead to really weird behaviour and that user solved it by soldering together the power line cables.
      So basically instead of connecting the power rails of each breadboard together with some cables you solder all those cables together and create one big long cable having a connection to each power rail of every breadboard.

    • @Seff2
      @Seff2 7 років тому

      Yes, i checked the voltages and i have seen the video you mentioned. I did the same thing, but still i had weired behaviour. it helped quite a bit, but still some connections are just too weak. The voltages on the power rails are okay (not lower then 4V potential between Power and Ground). But many of the flexible jumper cables i use to manually controll modules (as i said, control module nod done yet) are often not making good connection. Also on the registers only one of 4 bit register ICs seem to work, while the other one has all its LEDs off. If i lightly tap on the not working one, sometimes the behavior just flips, and now the other IC dont work, while the not working one seems to work. Also sometimes single bits are not taken from the bus. Or sometimes the go on and off synchronized with the clock... Really weired.
      Anyways, i will try a bit more, but i also ordered now a bunch of prototyping boards with a smilar layout to the breadboards, and then i will completly redo the whole thing with soldering.