Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

I don't know anything about hardware or EE. Is this something that a person could actually build from scratch?


From "scratch," as in raw materials, absolutely not. Even the most dedicated home-fabrication hobbyists ( http://sam.zeloof.xyz/first-ic/ ) have come nowhere near achieving the transistor density required to construct the "OberonStation's" CPU or memory, whether taped out (laid into a chip design using actual silicon gates) or built using a programmable gate array.

From a circuit board etched by someone else and PCB components purchased online and soldered together by a hobbyist, certainly, without too much difficulty (the package used by the programmable gate array requires a bit of specialty equipment, but is within reach).

One other point about Oberon is that I _believe_ that because the design predates open-source FPGA toolchains, a closed toolchain is still required to convert the Verilog (high-level design describing the processor logic) into a netlist (FPGA configuration), and it hasn't been taped out into a chip, either. So, the book covers the design of a computer end-to-middle - that is, without covering how the block / HDL level design becomes logic gates, and without covering how said gates are then manufactured. This is probably fine - the scope has to end somewhere. The linked NAND-to-Tetris articles cover the other end - from logic gates up to typical computing constructs (adder, registers, shifters, etc.).


What's the next big limitation zeelof had for going smaller?


I suppose it depends on how you define "from scratch". Pretty much anyone can build a desktop PC from parts in a single day. That's what would make the most sense in this context as well, probably. Target a simple CPU design with a simple instruction set that you can understand.

If you want to go further from scratch... Designing a motherboard wouldn't be too hard, though it probably wouldn't be very good or reliable. Same with a power supply. Designing my own CPU is something I could probably do with several months' worth of effort, as a CompE. But actually making a physical chip of it is another matter entirely. It would be expensive and you'd have to pay a manufacturer to do it. Physically making your own CPU at home is pretty much out of the question, but you could use an FPGA. I have no idea how to go about making RAM or hard drives "from scratch". Same for monitors.


It's more of a statement of guided documentation than anything.

With enough study and motivation everything should be pretty accessible.

I've used it a bit (almost 20 years ago however), certainly still requires committed dedication, then again, just like anything else.


I decided I could fix my own cars when I “realized” that ‘if someone else can do it, I can do it’ as well. Turns out I had to learn a lot, but I learned it.


Fixing cars is of course learnable; we all know that mechanics exist. But computing hardware is usually built by really complicated machines. I honestly don't know whether it's possible for a person to make a CPU.


Click on Nana2Tetris in the link above. You'll find out a good bit about it. Modern CPUs are enormously complicated. Machines from earlier eras tend to only be of only middling complexity.


Now more than ever because you can define it code. Here is a CPU written in 200 lines of Verilog.

https://excamera.com/files/j1.pdf


I think that Digilent FPGA board is discontinued so a bit more work to make it work on another board. You will have to modify the ucf file to match the pinout of another board. In particular you need a board with SRAM but a lot of newer boards have DDR memory.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: