I built the 16-bit Hack computer from nand2tetris on breadboards
Ғылым және технология
After finishing the nand2tetris course 2.5 years ago, I decided to build the Hack computer using real hardware. I mostly used 74 series Logic ICs for that. I needed to make little modification to the CPU itself to use RAM chip with a single data bus (in/out).
I designed the VGA and keyboard controller, and a memory controller as well to allow CPU and IO to access the RAM.
For more explanations, pictures and schematics: hackaday.io/project/185131-th...
www.nand2tetris.org
Пікірлер: 234
As an electronics Engineer, I have to say, this is a work of art. I would happily hang that on my wall.
@October-TE
Жыл бұрын
Me too, but if it falls you have a problem
@zealotoffire3833
9 ай бұрын
@@October-TE Lmao yeah
@w花b
8 ай бұрын
That would be a waste, it's meant to be used
@Yilmaz4
2 ай бұрын
@@w花b it was meant to be used in 1970s, we're in 2024 now
@evanbarnes9984
2 ай бұрын
@@Yilmaz4as an educational project, this is very much meant to be used now
here i am being impressed with myself for making a button do something with js while this guy exists lol
@to0_0
2 жыл бұрын
:) True thing lol
@VeAndVili
Жыл бұрын
Get gud man
@w花b
8 ай бұрын
It's actually not that hard at least the theory... Watch the nand2tetris course even if you just skim over it's actually pretty cool. There's just a few holes in the Electrical engineering part which I guess is the real challenge here.
@dontreadmyusername6787
3 ай бұрын
let me be honest with u JS devs like to overcomplicate everything to the point even creating a button seems like an accomplishment
@heicom7876
29 күн бұрын
🤣🤣🤣underrated comment......
This is very impressive, but sadly very underrated. People need to watch this masterpiece!
Fantastic! Such clean wiring too.
That's brilliant. I'm feeling ... inspired! Seriously nice work.
It's a great CS course! The two lectures would love to see this! Good work!
I admire your creation, I can understand the effort behind it, as I built Ben Eater's computer on the breadboards and the Hack computer on FPGA. Kudos to you!
This is everything, art, math, science, and most importantly PORN. Absolute masterpiece. I hope I could build one someday.
Such a good job that you have done. The wiring looks amazing and so organize. Well done!
I expect you have so much fun while doing this. Fantastic work!
HOLY CRAP! I was getting around to try it on an old DE1 like 5 years ago but never got around to it! This is so awesome, DUDE! I can't believe this post was from a year ago and I just came across it for the first time today!
If you had done this in the 1980s, you could have become a billionaire.
Amazing work dude! Great design!
This is just beautiful I'm currently on my journey of building a 6502
That breadboard aesthetic is probably the most sexy thing about this haha Very cool build!
We need a depth view into this!! it is so amazing!
Impressive build. Nice work!
Wow this is awesome. I finished part 1 of Nand2Tetris earlier this year. Might have to try this out! Thanks! (also got Ben Eater vibes from the wiring like another commenter mentioned)
@josephfrancis3583
Жыл бұрын
Hey even I had done that course, it was very good
ben eater would be proud of that cable management
the wire management is absolutely beautiful.
this man ACTUALLY built his computer
That's some Ben Eater level of wiring! Congrats!
Very nicely done! Bravo!
Oh man that's so beautiful and clean
Incredible achievement. Most impressive breadboard project I've ever seen
Great work! Would love to hear more about it.
@tomerkronik
2 жыл бұрын
Thanks! Will share more info next week :)
@tomerkronik
2 жыл бұрын
Info here; hackaday.io/project/185131-the-hack-computer-from-nand2tetris-on-breadboards
I Wish my PC Cables would look like your wiring 😩 Amazing work!
Lots of patience required for this work
That's great man!!! keep up the hard work
Mashallah this's pretty awesome!! I'm sure you've studied & worked a lot
A pleasure to the eyes.
That is some crazy mechanism. Nice
if i made that, i would be pissed if someone disconnect some or even one wire. Your wiring so neat
Amazing job!
I am on my first project right now, i cant wait to build it myself. Yours looks amazing, i am going to use this as a wall decor and play some ping pong loll
This kind of videos should have views in million
Superb wiring!
Beautiful!
love the wiring on breadboard
Wow, those wires are clean.
Great work!
Amazing work
You did it hardcore most i think would take the fpga route. Good work.
I fell in love with this
You, sir, are a genius!
looks comfotable! Nice
It's soo beautiful *-*
Amazing im waiting for detailed videos...
Absolutely Brilliant
Amazing! Well done
You still have that keyboard, damn windows xp memories
THIS IS A REAL MASTERPIECE
what a piece of art!!!
A thing of beauty ❤️
That's so fucking brilliant, what a such good work here. Congratulation!
Please upload more!
That is so impressive!
Amazing. I was thinking too (as a computer science student) . Will be doing this whenever got some free time
@mhammadsaani
Жыл бұрын
How much time it took you?
Crazy...Great Job My Friend!!
That's incredible.
Beautiful........Can you give some quick tips on how to wire Circuits in BreadBoard so neatly!
Finally managed to find a bunch of late 90s breadboards that were new. Getting closer to starting a similar build ( 8 bit ) this winter! Still have a bunch of parts to buy, have most it though. Going to start with an 8088, with 1 serial port, keyboard connector, rom dos and video out. Going with romdos due to not having to interface all the glue logic whatnot for storage. Figured MCGA since it'd not so hard (TTL), and dont have to deal with ramdacs. Also going SRAM route, due to it just being way easier and less parts to interface. Might do a small (1-2kb) cpu cache.
@amaankhan3762
2 жыл бұрын
I don't know what you said. Seems nice to read
Good. Make more videos like this. Thank you.
Beyond impressive
Superb.... 👍👍👍👏👏👏
Wow ! Im impressed ..
Nice dude!
Outstanding!
You deserve the world
Now that's ART
Recently found Nand2Tetris and started watching the lectures. Very inspiring. Could you potentially scale this architecture up to run early Unix/BSD/Linux (terminal interface only and only keyboard input)? You'd need a proper filesystem and interface with some kind of storage. I don't really care about writing BIOS or OS software, just the DIY hardware bit (CPU/RAM/IO etc).
This should be the replacement merit badge project for building a cub scout radio.
me: * reads the title * me: you WHAT?
Wow!!! Superb
It's like Ben Eater's breadboard computer on steroids! EPIC!
hats off to you!
This is amazing
Cool! I did NAND to Tetris on Coursera. Was a very elegant architecture except for one fly in the ointment. It is claimed to be a von Neumann architecture machine. It is not, it is a pure Harvard architecture, the program runs from a ROM that is divorced from the data RAM. There isn't even any way to even write the ROM from within the machine itself. Instead you load it externally somehow. Usually that some how is just loading a file into the hardware simulator, analogous to burning and replacing a physical ROM. This is similar to what happens in many embedded microcontrollers. But it's not what happens in computing generally. Not even in the 8 bit micro days. In computing generally an important part of the puzzle is you have real von Neumann architecture, their isn't rigid separation between program and data memory, it all in the same "core", "main store", "main memory", "RAM", whatever you want to call it. This gives the absolutely crucial capability that programs running on the computer can make other programs that run on the computer. Yes this course does a good job showing you how to create a computer and write an assembler, virtual machine and very simple recursive descent compiler for it, but crucially you never get to run said compiler, virtual machine or compiler _on_ the computer you've created. Because in fact by design it's actually physically impossible to get any program running on the computer to write to the program ROM from within the computer. This is really unsatisfying because this is supposed to be a sort of create a computer system from nothing, but in fact you must run the development environment on another computer. In fact you can write everything from the development environment in any programming language you like. Sure such an approach works if you already have a computer with a high-level language for it already, but this is extremely unsatisfactory for answering the question of well by what process did the first assemblers, calling and linking conventions and then high level language, perhaps with a virtual machine layer to ease implementation, come about? Clearly by writing an assembler in machine code, deciding on a calling convention, then writing a linker in assembler that uses this calling convention, then with now having assembly language and a way of creating and using libraries with procedure calls and functions you move on to writing a compiler for a high level language in assembler, maybe coming up with a simpler language than your high level language but more abstract and/or featureful on the way like a virtual machine to make the high level language compiler easier to implement. But you never get to do this. In fact it's impossible without a major hardware addition like adding a ROM burner and swapper I/O device. Also it would perhaps be extremely cramped in the 16K 16bit words and not have any room for compiling decent sized programs?
Very very impressive. Congratulations! I completed building Ben Eater’s 8 bit CPU a year ago and liked it very much. Now I want to progress further and enlisted for the nand2tetris course. Hopefully will complete that and maybe maybe hopefully try to realize it on breadboards too. With Ben’s CPU , I learned how important the quality of the breadboards was for the success of the project. Can you share which brand you took and your experiences? Thanks!
@tomerkronik
2 жыл бұрын
Hi! For breadboards, I did some research and bought Stellarsource breadboards, as they seem good quality enough with reasonable price. I had no issues with them :) I bought them from Aliexpress. Here is a link to a picture I took: cdn.hackaday.io/images/5746351653638234938.jpg.
@bartpastoor1028
2 жыл бұрын
Thanks Tomer 👍
this is Amazing!!!!
WOW brilliant showcase! its Super impressive to see!
very impressive
I learned part 1 of that course several years ago, and i forgot all of it.
omg more people need to see this
A dash, with a slider, ping pong ball..... 🔥🔥🔥 Hummmm, intresting, prehistoric, late 60's
Woah! inspiring! top tier
Damn did you go insane while making this cause i would! Lol
impressive!
More info please... great work!
@tomerkronik
2 жыл бұрын
Hi! All info here: hackaday.io/project/185131-the-hack-computer-from-nand2tetris-on-breadboards
Cool! I have implemented it in a simulator that I call LogicSimX and now I want to write HACK Assembly code to demonstrate it running a simple game. Did you make your code public anywhere for your game demo?
very good
Hello Tomer, This is absolutely brilliant. I am about to take nand2tetris course and was wondering if we could build the physical hardware. Thank you for building it. Can you please provide some information/links on what parts to purchase? It would be great if you provided all the parts and total cost so that anyone interested in building it can start from here. Thank you again!
@tomerkronik
2 жыл бұрын
Thank you! I'm working right now on writing a lot of info on this project and will share it hopefully this week :)
@tomerkronik
2 жыл бұрын
Here you go: hackaday.io/project/185131-the-hack-computer-from-nand2tetris-on-breadboards
@SaidakbarP
2 жыл бұрын
@@tomerkronik thank you!
I am highly interested in building this, can someone tell me what all i need to learn to build this!
Very good
I literally have that book sitting next to me, and was thinking about doing exactly this when the youtube algorithm recommended this video. amazing work.
2.5 years of pain , but my god is beutifull. respect ++
Look creepy, but 16 bit machine like this is awesome 😎😎,
what are the specs the graphics on that game is too much for my 3070
fuck man. nostalgia. i read this book when i was 11. spent the following years making minecraft CPUs like that. goat video and book u guys should read it too and they have a course on coursera
WoW just awesome