Homemade 8-bit Computer
HTML-код
- Опубликовано: 16 июн 2024
- Showing off my homemade 8-bit computer. I built this using only basic 7400 series integrated circuits. It can't do much, but building a computer from such low-level components was a bucket-list item for me. Hope you enjoy seeing it as much as I enjoyed building it!
Some factoids:
Total material cost: ~$400
Max clock rate: ~0.5 MHZ
Total number of breadboards: 36
Number of jumper cables: I lost count, but Amazon was delivering a couple packs a week.
Most difficult module to build: The program memory (the chips I used have a very complicated procedure for writing to them).
Easiest module to build: The memory and the register file.
Number of months I haven't been able to use my kitchen island: 3 Развлечения
"I'm not a computer engineer" ..Goes ahead and shows something more cool than my computer engineering graduation project.
As an actual computer engineer, we had projects where we had to make a 4 bit computer using actual transistors instead of ready made chips and transistor + capacitor for dynamic memory cells as well as filters and opamp buffers. So this project is very simple since you just have to make a boolean table and then connect the wires to the correct pinouts and that’s it. This looks complicated only because he used a-lot of chips and jumper wires instead of neatly bent wires. Even a year 2 EE who studied digital systems can do this.
@@catnipaddict126 no one fucking asked
@@atarairit9987 So you don’t find it interesting from a real computer engineer’s perspective that the original commenter is a fake computer engineering student? Because there is zero chance he/she did not do something more complicated from year 2.
I'll never forget when I was a freshman in college my electrical engineering professor said to us after explaining the basics of AND, OR, NOT, and XOR gates, he said - "with these gates, you can build any computer you want no matter the complexity" - and he was right.
In fact, you can basically build every logic operation just using NAND gates, though obviously that sometimes means you have to take the long way. So, using the „correct“ gates for a specific operation is not really necessary, though of course it speeds up things. However, it also means more logic, and therefore a physically bigger CPU.
Good job. Like it.
Yep, and a fun fact is that the Apollo Guidance Computer was built using NOR gates only.
For "not having a computer engineering degree", I would say this project would satisfy the senior capstone project of any EE program.
"I'm not a computer engineer" MY ASS.
seriously. i care less about a piece a paper and care more about demonstrable ability, he IS a computer engineer. it drives me crazy people think you need to have a formal education to call yourself something you can clearly learn on your own as did the first people discovering this stuff in history.
@@Cara.314can you call yourself a doctor without a degree? well, the same goes for engineering, it is a regulated profession, and it is a crime to do so. about the project itself it is a 2nd or 3rd year project at any reputable EE university (18 year olds make these). you shouldn't be able to graduate in EE without making one of these or more complex projects. full CPU and ISA projects are common
Wow, impressive!
Internet's EE godfather himself.
Bloody h-ell!! Dave Jones just popped out of nowhere. If any of you can speak Australian, I'd appreciate to see a translation of his comment
Lots of comments about how impressive this is (it is), but I'll tell you to KEEP GOING! Don't ever let any project become your magnum opus.
This man might not be one of those "genius" programmers or designers, but he alone has the knowledge to control what almost everyone has forgotten about, and will be the arbitrator of any electronics.
Unbelievably cool.
I think this is my favorite pronunciation of “xor” gate, regardless of how ubiquitous other pronunciations I just like it!
Yah, took me a little time to figure out what he was saying, to realize that x can sound like z :)
I used to call them x-or gates but i started making a computer for a science fair project like a year ago and i started calling them zor gates just because. Anyways this is my completely useless comment that no one asked for
Simp
@@GustavoPinho89 🤔
@@GustavoPinho89Não cara tu se confundiu
what the hell
congrats for not going insane after doing this
I tried learning how alus work last year and I got so scared, ultra low level computer stuff is dark magic
hats off to you
Please never disassemble this masterpiece 🥹
There's a RP2040 in the middle with a few multiplexers. The wiring looks very believable, though. 😂😂😂😂 Just never stop, mate. I'm dying for your big little project
@@GustavoPinho89 huh really??
@@KrishnavyshakR just watch it on a large screen and zoom in. It's just a prop. 😂😂😂 Just taking the pss. Bro worked hard on this Ben Eater 0.7 (lower in better, as it takes us closer to the Logic gates) project. It's really impressive. Or is it?
@@GustavoPinho89I don't see any rp2040 in it, can you provide the time stamp where it is visible
I bought Ben Eaters kit many years ago.. it’s still in the box. It was long after I realized “wait I don’t know anything about computer engineering!”
So I just enjoy videos like this one, very well done!
Whenever I come across someone who worries that computers think and are conscious, I point out to them that with enough beer cans in large enough room we could create a computer to do what electronic computers do, and in precisely the same way. Would anyone think that a room full of carefully arranged beer cans could give rise to consciousness? What you have done is demonstrate the same idea, but closer to the real thing, and in hardware! Great job!
Im curious, how do you make a computer from beer cans? Im assuming you can create logic gates somehow with just beer cans?
Brother, just wanted to say, that this project is way too cool. Only us programmers can admire its beauty even if it's not as functional as a normal computer, this requires a depth of understanding that can easily make you a professional.
The true desktop.
Individual logic gates is insane.
the really insane bit is doing it all on bread boards with only jumper wires
@@GordonWrigleyPure gore
As someone who is working on a very similar computer myself, it's nice to see other people's take on such a project! I struggle to find someone irl who is interested in this stuff...
Dude, this is fucking insane. Even being a CE student, this would take me eons to do. Major props!!!
Hi, computer engineering student, trying to build a computer in Minecraft here! I just wanna say that this is ultimately one of the biggest goal of mine when I first started learning about circuit design and computer architecture. Even though, your computer has less functions and capabilities than others, in the end it's about the process that takes from 0 to wherever we are. Glad you're proud of what you did!
hi kiwi
Technically speaking, an 8 bit computer is pretty simple to build IF you know what you are doing. As you went into it with no experience or knowledge then I give you props for doing it :)
We had to build one in our first year at university, it was pretty fun.
Reminded me of Ben Eater's videos
Nice work. At university in 1989 we made a succesive approximation ADC with gates and op-amps. three maybe four breadboards. Your work is all the machine parts in a glorious proof of the heart of the machine, The accumulator flag. What you made is truly beautiful. And Im impressed by the contact reliability of breadboards and jumper cables. I very much enjoyed seeing it.
Some of the best art is those that are temporary. I think this definitely fits. You made an amazing creation!
This man would absolutely destroy Factorio on his first run.
It is not only a great board, it is also a great achievement. With all the blinking LED's some processes in this processor board can be explained and be made visible to the general public, the common people, those whom are born ignorant. (aren't we all?) It is beautiful.
As someone who has only ever built a computer in the game "Turing Complete" this is very fascinating to see. BTW, for anyone interested, I can highly recommend trying that game.
Wow, incredible work, well done!
wow, the effort done is amazing, i hope this goes viral
Great video, I really liked your explanations of each block. The debugging process must of been a nightmare!
If someone's gonna ask "CAN IT RUN DOOM?" I'm gonna start breaking noses.
Well, can it?
@@Pathfinder3877 Ahhh, you beat me too it!
@@Pathfinder3877that's it, yer dun
Can it run Wolf3D?
@@Pathfinder3877 *casually displaces your septal cartilage
Man I am currently at the 8 bit bus/register part of the Ben Eater style 8 bin computer. and OMG all I can see is jumper wires. Instantly subbed
great job bro ! this "tiny" 8-bit Computer is impressive ! keep up the good work !
WHAT A LEGEND! ‚By the time you’re watching this, I’ve probably disassembled it😮‘ BROTHER I WOULD NEVER TOUCH IT AFTER COMPLETION
Impressive build, Joseph. Very cool.
Good job man! It's actually pretty dang organized
this is amazing work dude.
That's crazy, amazing work!
no matter the capability, this is jawdropping :3
Very impressive project, and seems doable for "normal" people as well. Thanks for showing this!
Don't disassemble it. Donate it to some school or university so they put it in some glas box and it will run forever.
exactly, that is one massive potential for education!
great work - amazing project, made me want to do one as well
Dude, you built a computer and wrote a programming language, ha ha ha. Hats off!
Thanks for sharing Joseph. I can't imagine what it felt like to disassemble the thing after putting so much time/energy into it. I would've felt like I committed sacrilege removing that first jumper wire! That's just me though. Good luck with your future endeavors :]
Nice job! I’ve got a little story for you!
I was doing something very similar but decided to use an FPGA instead. The FPGA allowed me to do some very interesting things (which I made a video about).
I had a functional VGA output using breadboards with a RAM frame buffer. I think the size was 160x200, 8 bit color. While testing I was using an Arduino to draw images into the frame buffer. Unfortunately, I couldn’t get it to behave perfectly, after it ran for a few minutes it would flip a random bit in the RAM or have a temporary visual artifact. I tried decoupling caps and even ferrite beads to reduce the noise on the power supply rails, which worked great but weren’t enough. I didn’t continue with breadboards after that point since I knew it would be very difficult to get the computer to function properly, especially if I added more breadboards.
I love this dude great job!
Awesome work.
Breath-taking.
This is soo cool!! I'm trying to make one myself with individual transistors and having troubles with my ALU (some minor issues with the adders). I'd love to get to a similar state one day :D
Thank you.Fantastic project building ,can use all this in integration circuit . Ic
This is a fantastic accomplishment. My breadboard connections frequently get finicky for a variety of reasons, including oxidation. Do you find yourself having to spend time jiggling wires when things aren't working quite right?
Please donate/sell this treasure to a museum.
Some breadboards are _much_ higher quality than others. You can also try disassembling them and using pliers to carefully improve the contacts, though it's quite a bit of work :D
Luann said it. I didn't have any problems with this once I found a supplier of good breadboards.
@@JosephNaberhaus What brand/supplier did you use? The gold standard for breadboard quality is 3M, but their high cost puts them out of reach for many people.
I did enjoy seeing it
Sir this is exactly what computer engineering is...
Wow nice work
very impressive!
Wow this is a cool project. I plan to make a video similar to this but its for a custom ISA and not a hardware cpu yet.
Absolutely Beautiful ^-^
Very cool!
Nice efforts
really cool build! I've always wanted to take a crack at a similar project in Minecraft but can never dedicate the time LOL
Thanks Joel! Redstone computers are exactly what originally inspired me!
Im in proces of making one in Minecraft and building stuff ALU,ram... isn't that hard but asembly It 💀
This is like rebuild a wheel :) But just sick what a Microcontroller can do, like a Arduino Nano or such, if we see what basicaly is inside it and if we see the size of a larger table to build it with normal electronic locigal chips.
a whole machine with 74 series!?! my dude you crave pain! good freakin job man./
Very hard work ❤
So beautiful
Let wait for the pentium version.
jumper wires is insane. i built mine using solid core wires ( courtesy of beneater )
I do a little bit of microelectronics and I can't keep up with 10 cables, this is absolutely amazing! When will you show us it running doom on this tiny 1x8 screen?
Amazing 😍
Amazing... and I thought my little LED flasher was cool in the early 90's. ;p Nice work.
Crazy it is working at all. Even in small projects I run into faulty bread porn pins quite a bit.
Impressive!
Thats a cool project for when we need to restart civilization. Wonder how much time would it take to go from this to the state of the art litography foundries that produce chips today.
"this is my first foray into electronics" Wow.
I'm amazed as how the sparce ceramic decoupling caps handled so well the parasitics, if i tried this here with jumpers of this size and quantity, probably i would need 3 (1uf/10uf/100uf) in each IC
I only have a tenuous grasp on this subject, but I think this is because my clock stages make most noise irrelevant. In fact, the only module that suffered from noise was the clock itself. That module does have a decent number of filtering capacitors of various sizes.
I did go ahead and liberally apply 0.1uf caps throughout. I don't fully remember why I picked that capacitance. I think it was listed on a datasheet.
Like you mentioned, the datasheet recommends having dedicated noise-filtering capacitors for every IC, but I decided to cheekily ignore that.
@@JosephNaberhaus Your wires get coupled electromagnetic noise by parasitic capacitances and inductances with the enviroment, so this source of noise is external and only handled by filtering. Wires have parasitic inductance and also act as antennae, wires near to each other have parasitic capacitance and act as capacitors, the lenghts and the geometrical disposition make them suitable for capturing the range of frequencies from communication to mains noise.
Not necessarily the noise will come from your power stages or clock gen because your bench supply seems very robust ( these can have noise as low as 1mv ), the main source of noise would be external
The 0.1 uF caps have the point of least impedance at the 50hz/60hz range, so they are 0.1 because their impedance to the mains frequency noise is at the lowest. Capacitors are non ideal, and with their parasitic inductance and resistance comes a notch ( band reject or band pass) response, where they act in a range as a capacitor, and in other higher range or frequencies they act as inductors.
Different types of capacitors respond differently to this non ideality as well.
So different value capacitors are different tuned filters, where using a 1uF cap can filter 6hz the best, and a 0.1uf can filter 60hz the best, a 0.01uf capacitor can filter 600hz the best... and so on.
High capacitor values filter low frequencies, low capacitor values filter high frequencies ( that's why the 1 pf capacitor in circuits subject to noises in khz range)
They point to GND because they really act like this low pass / notch filter that throw the mains noise directly to ground, DECOUPLING (that's why the name) this noise from your supply lines.
I think that maybe your sourcing of components may matter, because most chips around the world when bought from China or low key resellers are just fake ones ( yep , piracy/fake copies of electrical components both discrete and integrated is a widespread issue ), so the internal project may not include the necessary resources to reject noise
@@JosephNaberhaus Also, the dedicated noise-filter capacitor for every IC is much more important in high noise enviroments like mixed-signal boards with wireless comms in very small form factor with noisy power supplies units, that's where it matter the most. In smaller projects, less caps are usually better, the frequency response of them is better (more attenuation, less poles )
@@JosephNaberhaus Oh, forgot to mention, where i live we only have access to the fake components.
So we have funny stuff, for example, when students build TTL sequence gens or counters, weird stuff happens.
Like, if you approach your hand to the circuit ( without touching ) it change states.
Or, if the room lights are switched on and off ( even if the circuit is in batteries ), it change states.
Or, the hex displays only light up when you draw your smartphone closer.
That events point that the object near attract charges and distort fields in a way that affect the parasitics just enough to flip the system around. Quite funny.
Never let the baby touch it.. this will turn from beautiful engineering project to beautiful artwork
I suppose skill of building 8 bit computers will be useful in a post apocalyptic world
The classic mental you-know-what... But a beautiful art piece nonetheless; please do not demolish it!
Congratulations, that's an amazing project.
Next step : rebuild it with only NAND gates ;)
Did you make a sort of schematic of everything you did? Might be fun to rebuild it on a PCB and see how far you can crank the clock. I guess you could easily reach 4MHz that way.
Very cool!!!
This is coooool, by chance did you find that there was a maximum clock speed before it started to misbehave?
Yeah, don't worry, even the Master's Projects of most Computer Engineers are the equivalent of eating glue compared to what you did here. You earned a sub, and definitely much more than that.
Impressive
TSA would love this
very cool
I’m speechless 😮
Why do i feel this is the better version of what JDH built.
Awesome!!
"I'm not a computer engineer" He said. Proceeded to build a computer with his own programming language he did.
amazing 🤯🤯🤯
Switch two wires when he's not there and watch 😅😂. Just kidding. Really nice project. Thanks for sharing
This is pretty muich what the internet was made for, which makes me wonder if the internet was the best idea.
This is amazing!
One quick question though: How does the code you write becomes the electric signals (if i can call it that) and then loaded into memory? is it done manually?
Thank you very much and great video!
But nice job man I appreciate that
Hey congrats it looks awesome! do you recommend some books to learn about this topic?
Oh wow, cool
Intriguing🤔
Sweet what an epic project, hats off to. How much does this computer weigh?
The fact you built this on breadboards is insane
And probably frustrating..
All those weak contacts.
I wonder how fast it can run..
All those long runs of wire without impedance or timing management must cause chaos at higher clocks.
@@peterpan408 description said 500 kHz which is pretty good imo
Great job! What did you read for learning this? I would really like to learn
You should try to cram a bitcon miner on there, see what hashrate you get 😜
Great Project my man! I had a question in mind, how did you really overcame the voltage drop caused due to breadboards. Don't you think it would have been much more reasonable to build out the final prototype on a PCB? really interested to know your take on this! thankyou
High quality breadboards don’t have any meaningful voltage drop, not at the kinds of currents breadboards are intended for. I’ve only experienced voltage drop on _extremely_ bad breadboards that had >1 ohm contact resistance. Good breadboards have only a few milliohms.
That’s really impressive, especially for someone who isn’t a computer engineer. Where did you learn how to make this?
Thanks Gabe! I learned some of the theory in a digital logic course that I took in college. Besides that, I've just been reading a textbook, *Practical Electronics for Inventors*, and Googling.
Nice. What did you major in?
Software Engineering