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!
@Crushnaut7 жыл бұрын
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
@JohnnyPhoenix7 жыл бұрын
Crushnaut good luck! Planning to do the same myself. Quick question; how much did all the parts come around costing? Bought them online?
@Crushnaut7 жыл бұрын
+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.
@LearnElectronicsCanada7 жыл бұрын
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-tq1yr7 жыл бұрын
Crushnaut does your computer as clean as Ben's computer? or do you have jumpers all over the place?
@Crushnaut7 жыл бұрын
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.
@jtsiomb7 жыл бұрын
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.
@bretthaupt10197 жыл бұрын
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.
@crocellian29727 жыл бұрын
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.
@cmuller14416 жыл бұрын
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...
@AnneJan6 жыл бұрын
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 Жыл бұрын
@@AnneJan I was gonna build this whole computer eventually on prototype boards. That's a good tip.
@barmetler5 жыл бұрын
soo many blinking lights, soo satisfying @10:50
@Orxenhorf5 жыл бұрын
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.
@LemoUtan7 жыл бұрын
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).
@jozef_kascak7 жыл бұрын
Man, you gave me more about this things than CS university ... Thanks
@alexandermaasland34943 жыл бұрын
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!
@crashmatrix7 жыл бұрын
That dip switching speed tho
@lightdark007 жыл бұрын
I always wondered why the first vacuum tube based computers had so many lights. Now I understand.
@kaitlyn__L Жыл бұрын
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!
@nil2k7 жыл бұрын
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__7 жыл бұрын
thats a long sentence
@julian40647 жыл бұрын
dAcid lol
@johncochran84976 жыл бұрын
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-9996 жыл бұрын
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.
@campbellstarky21444 жыл бұрын
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.
@311Firefly5 жыл бұрын
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
@benthere80514 жыл бұрын
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.
@younessamr68027 жыл бұрын
can you add an IO module, to see how the computer interact with the outside world. keep the good work ^^
@trellend5 жыл бұрын
That would be another register (C), 2 control lines, and now you got 8 outputs. Need some bit math instructions though.
@QuintarFarenor5 жыл бұрын
@@trellend Or do it like "real 8-Bit computers" and just use a part of RAM as a screen Memory
@trellend5 жыл бұрын
@@QuintarFarenor Then you have that annoying screen blanking thing going on.
@davidmcgill10005 жыл бұрын
@@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.
@prathamkalgutkar75384 жыл бұрын
@@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
@koolatrimr22116 жыл бұрын
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.
@GazzJ827 жыл бұрын
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.
@JasonMasters7 жыл бұрын
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.
@vierikristianto13349 ай бұрын
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.
@jamescaperelliiii46207 жыл бұрын
Ben thank you for the series. This is one of my favorites on KZbin. 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).
@mannhansen93375 жыл бұрын
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.
@EdwinNoorlander7 жыл бұрын
Nice Julian👍🏻, you added something good to the computer from Ben.
@CafeBikeGirl7 жыл бұрын
It is totally amazing that something half that complex is running on a breadboard!
@gelatinocyte62707 жыл бұрын
It's been fun watching your videos Ben Eater. Keep it up!
@jetraid7 жыл бұрын
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.
@duncang554 жыл бұрын
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...
@TDk-ob2ew7 жыл бұрын
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! =)
@alangilman20155 жыл бұрын
I like that you use the answer to Life, The Universe, and Everything for your calculation :-)
@Mr_ToR5 жыл бұрын
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 Жыл бұрын
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 Жыл бұрын
@@Android480 best series ever. universities should learn from him.
@thomasre80736 жыл бұрын
I like it, to watch you messing around with this computer.
@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!
@mikedelosier957 жыл бұрын
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
@SteveYoung3592 жыл бұрын
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.
@tusharmaurya16687 жыл бұрын
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.
@aameen9515 жыл бұрын
What does "... these signals will be buffered ..." (at 4:23) means?
@RichSr406 жыл бұрын
Excellent Instructions. Keep up the Good Work!
@tehaxor697 жыл бұрын
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.
@stepsvideos7 жыл бұрын
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.
@tehaxor697 жыл бұрын
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.
@JP-gs3jw7 жыл бұрын
Thank you very much, I always learn something from your videos.
@AyariMakrem7 жыл бұрын
Big thanks for this great work and effort and good explanation.
@williefleete7 жыл бұрын
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
@beopstek7 жыл бұрын
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.
@DrRChandra7 жыл бұрын
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?
@LucS00425 жыл бұрын
I'd love to see you make a PCB with something like easyeda and put it together on pcb
@jsmythib4 жыл бұрын
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 :)
@caroman41025 жыл бұрын
Thank you i finally inderstood how pc really works.
@blazaniterules2896 жыл бұрын
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.
@leoq44985 жыл бұрын
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!!
@64jcl7 жыл бұрын
Should consider adding some sort of card-reader so it becomes easier to program the machine. :)
@allmycircuits88505 жыл бұрын
Punch-card-reader :) for authenticity
@supernenechi4 жыл бұрын
@@allmycircuits8850 Programming it into argol
@bas80367 жыл бұрын
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...
@MAProsper7 жыл бұрын
I still want my previous suggestion: "You should add a Micro-instruction for Reset to T0 and Reset Instruction Register, it will save the space of multiple Fetch versions and Time!" and now non-volatile memory; but that I don't know how it works, the other two I think would know how to implement them. Again Great Video! :)
@SiliconSet7 жыл бұрын
Great video! Many thanks!
@idjles7 жыл бұрын
if you used 100kΩ pulldown resistors instead of 10kΩ on your switches, would you would reduce pulldown leaking power by 10fold?
@bitblaster666 жыл бұрын
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.
@Joshuahall2285 жыл бұрын
Alard Eales It’s possible to notice something without addressing it right then; as neither of us did and he did. 😂
@St3venAU7 жыл бұрын
I was quite surprised at the 1.2A current draw. I'm wondering if the majority of that is all of the LEDs.
@mamelukok7 жыл бұрын
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.
@KX367 жыл бұрын
LEDs used for indicators shouldn't draw anywhere near 20mA.
@LearnElectronicsCanada7 жыл бұрын
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)
@EDToasty6 жыл бұрын
I mean... 5w doesn't seem much, considering the scale.
@GRBtutorials6 жыл бұрын
By using CMOS chips, you might be able to reduce power consumption. Of course, that might mean putting resistors on the LEDs.
@knodelcrafter68887 жыл бұрын
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?
@danidiaz95106 жыл бұрын
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.
@casarek5 жыл бұрын
(my thinking) He pauses filming, measures and bends the cables, strips the ends and then films himself putting it in place.
@SiggyPony5 жыл бұрын
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
@RoamingAdhocrat4 жыл бұрын
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.
@CheeseDiablo4 жыл бұрын
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
@damisimsanii5447 жыл бұрын
thank you so much Ben..great video
@kryptocat42404 жыл бұрын
What is the perpose of buffer gate
@NeverSnows4 жыл бұрын
what a fancy calculator you have there sir.....
@jtasrtrash3 жыл бұрын
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.
@TDk-ob2ew7 жыл бұрын
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.
@fzigunov7 жыл бұрын
Can't stop watching!
@jack828220054 жыл бұрын
why do we need a buffer for reset?
@minecraftermad6 жыл бұрын
it running at full speed the stopping makes me the happiest person on the planet
@mistervoldemort75407 жыл бұрын
As usual, great work!
@fiskusmati5 жыл бұрын
why you have your program on volatile memoty? couldnt you just use flash or eeprom to store program?
@Isacvd7 жыл бұрын
Can't we use the non inverted reset, before the first nand gate?
@twistedsim7 жыл бұрын
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.
@patrickjeromeobaldo24502 жыл бұрын
This is the only time I'd like to operate a slow computer.
@gogogooner7 жыл бұрын
Thank you for a great series! It was very interresting.
@GaryCameron7804 жыл бұрын
~16:00 regarding breadboards: As with most things you get what you pay for.
@camiz39947 ай бұрын
Thank you Ben!-
@nickhuber54767 жыл бұрын
how do you make the wires so perfectly
@stevenriofrio79632 жыл бұрын
Will you make a video on how to implement interrupt control?
@lolshoc57557 жыл бұрын
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.
@EJOsis7 жыл бұрын
Do you have a jig or method for making your small jumpers. Or have you just made enough for muscle memory to kick in.
@p4pagaio1803 жыл бұрын
Carai pivete, tudo isso por uma calculadora, tu é foda viu, para bens
@zakariarizvi80037 жыл бұрын
upgrade the alu so that it can also perform AND, OR and NOT operations ...
@georgegardei3405 жыл бұрын
I want to build this... and then figure out on my own how to add a multiply, device, subtract, and or not, etc
@georgegardei3405 жыл бұрын
oh, and save my programs onto eprom
@andreyrumming68424 жыл бұрын
@@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.
@andreyrumming68424 жыл бұрын
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
@bobdagamer6404 жыл бұрын
Andrey Rumming couldn’t you just add multiple times like how the micro instruction thing works
@thepvporg5 ай бұрын
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.
@SiggyPony5 жыл бұрын
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
@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.
@thewhoareyouperson27747 жыл бұрын
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
@amrkhaled92034 жыл бұрын
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 ?
@lukasrussell59057 жыл бұрын
I LOVE THESE VIDEOS!!!!
@JarppaGuru11 ай бұрын
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 Жыл бұрын
does he have a compiler and a loader for that computer? or similar functionality with an easier use than filling memory cells by hand
@paulcarter72385 жыл бұрын
if you did not clear the A buffer it could run again and add to that until it goes past 255...thanks very much
@cogwheel427 жыл бұрын
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.
@ferencakosjambor11445 жыл бұрын
The numbers to be added are given by the last four bits of the programmed program in the ram?
@EdwinNoorlander7 жыл бұрын
So Ben, what are you going to do in the next video? More op-codes?
@erniepasveer80277 жыл бұрын
Yes, I'm very interested in "what's next". I just love this series of videos.
@Crushnaut7 жыл бұрын
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
@palpatinewasright7 жыл бұрын
I'm hoping for a simple jump instruction, so we can get some simple loops.
@404Anymouse7 жыл бұрын
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
@palpatinewasright7 жыл бұрын
Memory mapping is great, but when you only have 16 bytes of address space you can run out very quickly.
@richard67687 жыл бұрын
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.
@Shyssiryxius6 жыл бұрын
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?
@xc_gwpl5 жыл бұрын
Try adding a register for memory banking, and increasing the amount of memory.
@israeldlr43657 жыл бұрын
this is beautiful
@vitaliimakarov6181 Жыл бұрын
Can someone explain why we need to reprogram the top memory every time, but the memory on the bottom somehow persists forever?
@EebstertheGreat4 жыл бұрын
What are the green and yellow jumpers still connected?
@samwe89777 жыл бұрын
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?
@peterchen64627 жыл бұрын
Great Ben
@damiandassen77637 жыл бұрын
are you going to make more videos upgrading this computer?
@Defianthuman4 жыл бұрын
The iPad charger is 5.2 volts. That would explain the brighter lights.
@dachew575 жыл бұрын
Hi Ben. How are limiting current to the LEDs? That power usage seems high for that few chips. Maybe I'm missing something tho?
@jamesrivettcarnac3 жыл бұрын
What are the push buttons you use? I've had such mixed luck with them.
@martandrmc7 жыл бұрын
Where are the JMP (Jump) and JIF (Jump If Carry) instructions?
@JarppaGuru11 ай бұрын
3:12 /TS could be 1bit on roms last opcode step you set it 0 rest address its 1. or invert that thing so its control signal TS. all is there ready setup xD and would save clock cycles in your 16 address computer(cpu) bcoz output is just register c LOL