Hacker Newsnew | past | comments | ask | show | jobs | submitlogin
How to Make a CPU – A Simple Picture Based Explanation (robertelder.org)
347 points by accrual on Oct 22, 2023 | hide | past | favorite | 65 comments


Ok so now I have a dream. Is not as good as the dream the other guy had but it's my dream.

I want to build a course, or a series of courses, where one rebuilds the world. It's the sort of thing one could do slowly with one's kids.

Yes it's like that book "the knowledge" and related stuff. But Inhave done things like building a sextant to use that to measure the circumference of the earth and so on, and really I never imagined Incoukd actually build my own cpu to run my own language - but it's there.

One could literally go from fire, to solar system, to lime and then to CPUs.

The world we live in is insanely complex, but it is ... rebuildable

I guess I am inspired by the quote Feynman left on his blackboard - "that which I cannot recreate I do not understand"


> I want to build a course, or a series of courses, where one rebuilds the world. It's the sort of thing one could do slowly with one's kids.

You can start with this book (bibliography available):

* http://the-knowledge.org/en-gb/

* https://en.wikipedia.org/wiki/The_Knowledge:_How_to_Rebuild_...

See also the Primitive Technology YouTube channel:

* https://en.wikipedia.org/wiki/Primitive_Technology


You might enjoy the anime Dr Stone, which involves someone doing exactly this, but packaged in a fun almost course-like format.


Dr Stone has nothing to do with rebuilding the world. It's a fantasy and you can't build CPU from little bit of glass and copper and cook it with algae.


That's confusing, given the description of the show is "The story follows Senku Ishigami, a scientific genius who plans to rebuild civilization."


Check out "Open Source Ecology" and "Global Village Construction Set"

I participated in a couple of Marcin's workshops, AMA

also CollapseOS

I'm interested in it too for disaster recovery scenarios. Just started my HAM radio journey, seems like a community that likes to re-establish comms when everything else fails.


Ooo yes. I share your dream as well. A comprehensive guide on how to make anything from scratch would be amazing.

I guess to get started, it would be a process of reverse engineeringing to work out steps of a build, and then build a dependency tree from that.

E.g the linked guide to making a CPU depends on using some chemicals, there would need to be an explanation of how those chemicals are obtained, and then subsequently on how the equipment to facilitate that is made. Until it resolves to primative tools and processes to obtain raw material.


There’s a YouTube series, How To Make Everything (HTME) that was well along this road until a fire destroyed the guy’s studio. He’s restarted in the last year or so. It’s good fun, and showcases how difficult it is even with something as simple as casting a blade.


I wept when they posted that fire video. Such a cool channel.


A more humorous take on the subject of how to rebuild civilization from scratch, from the perspective of a time-traveler who got stuck in the past but managed to have their time-traveling machine's manual with them: "How to Invent Everything: Rebuild All of Civilization" by Ryan North - https://www.howtoinventeverything.com/


I had such high hopes for this book but it is nothing like its title implies.


It’s actually probably not possible. We’ve exhausted all the easy to find/surface layer minerals. Oil doesn’t just leak out of the ground anywhere. Iron, copper, coal, are all underground.


Right, we've made it easy, it's all on the surface now in scrapyards and landfills

</grew up watching junkyard wars and was highly dissapointed to find out the better gear was planted among the junk to make the tv show viable>


Very good point. I read Olaf Stapledon's First and Last man, a sci-fi book which describes the next few billion years for mankind and deals with this issue.

In one scenario, human society collapses, spends 80 million years living as hunter/gatherers (with some evolution) and then develops once again to a technological civilization, in part because the minerals and fossil fuels have been replenished.


> Oil doesn’t just leak out of the ground anywhere

https://en.wikipedia.org/wiki/Petroleum_seep


We've also had a lot of time to develop new things that mean we might need oil less. Oil was (and still currently is) a necessary developmental stage. We just need to get through it.


Maybe not at current civilization scale quantities, but there is certainly enough surface metals and oil to bootstrap industry.


This is essentially Wikipedia. Just run a topological sort over the dependency graph, and you have your course.


Wikipedia is essentially a raw dump of the knowledge, I don't think you could automatically create a course that starts from the basics until you have a CPU, the "graph" hasn't been created with that in mind, so it's not "chronological" so to say.

But, I'm happy to be proven otherwise. Maybe wikidata could be a better start, beginning with "recipes" for how to create things codified into their format.


Not sure if you're joking, but a topological sort wouldn't work because Wikipedia contains circular references.


lol

So you're saying that if I throw a wikipedia filled USB at you and go "Ok, invent a CPU from scratch," You'll be able to do it?


Peak HN comment


I have a somewhat related dream. Have you ever read "I, pencil"? https://mises.org/library/i-pencil

Pick any human artifact. The pencil might be a good start, but really I'd prefer something like the CPU.

Start with what we currently know. How do we make this thing? How do we make the tools and materials and everything else involved in making the thing? Recurse all the way down.

And then - how could we optimize that? This thing we make is part of a massive global human economy, entangled with all sorts of other things. But what if we didn't care about any of that? What parts are unnecessary? What can we simplify?

How would you make this thing "from scratch"? For example, on a desolate, uninhabited planet. What could you bootstrap locally, what is absolutely necessary to bring?

The real end goal, for me, is: how would you build a human artifact that could self-replicate on another planet? What is the simplest such artifact we could come up with?

Could you do it without any pre-existing organic life? Maybe a CPU; certainly not a pencil, if you don't have access to wood. Unless you bring seeds and whatever else you need to grow your own forests...


Another fun take on this is How To Invent Everything by Ryan North. The premise is that it's a handbook for stranded time travelers, but it covers the same ideas of building from one technology to the next.

https://www.howtoinventeverything.com/


Is the other guy this one?: https://www.youtube.com/@htme


The Knowledge: How to Rebuild Civilization in the Aftermath of a Cataclysm

https://www.amazon.co.uk/Knowledge-Rebuild-Civilization-Afte...



Play Factorio, maybe with some more intense mods.



Check out "The Toaster Project".


I'd recommend against this one. It's frustratingly light on actual detail and heavy on some 20-year-old's Big Thoughts.


This is where one should start these days: https://www.foxfire.org/shop/category/books/foxfire-series/

Also, this might tickle you:

https://www.eoht.info/page/Last%20person%20to%20know%20every...

> In genius studies, last person to know everything, i.e. technically “last man to know everything”, as there has never been a "last woman to know everything", possibly Hypatia, the only known purported "female universal genius", aside, is a title or epitaph that has been attributed to a number of individuals over the years.

> At least four, as shown adjacent, namely: Thomas Young, Joseph Leidy (IQ:150|#439), who built on Goethe's morphology work, and Athanasius Kircher, and Enrico Fermi, have had books written about them, with the epitaph "last man to know everything" attributed or affixed to their name. [7]

> Sometime between 1700 to 1900, predominately, people began to profess the view that the body of "known knowledge" had become so large that it was no longer possible for one person to know everything. To situate this postulate in the context of a date, French philosopher Pierre Levy argues, in his 1994 Collective Intelligence, that the publication of Frenchman Denis Diderdot and Jean d’Almbert’s Encyclopedie (1751-1772) marks “the end of an area in which a single human being was able to comprehend the totality of knowledge.”

> Humboldt is one of the cited "last persons to know everything" (below); a Cattell 1000 (top 100); was one of the first to propose that South America and Africa were both joined; in 1797, in Jena, with his brother Wilhelm, Friedrich Schiller, and Johann Goethe, the four discussed, in Goethe's own words, “all of nature from the perspectives of philosophy and science”.

I wouldn't take the EOHT website very seriously, it's just the opinions of one guy. He also seems to be only acquainted with +3SD to +4SD people, seeing how he considers being religious a detriment to one's "rationality".

Also, IMO such a pursuit is in vain unless you're someone that can actually manage such a thing. If you were, you would be at least a +5SD person who had a stable childhood and was studious, and wasn't socially excluded. All very rare, and the combination all but unheard of. Real polymaths "just do it", they aren't just completing a game. I've known one guy with a purported +6SD IRL and a handful of other +4SD people, and to say they're "smart" is understating it. They have to translate to get through. Writing a book for the masses isn't something they'd like to do, unless it came with social clout that could improve their state while still being an agreeable compromise.


If optics and photolithography interest you I recommend Huygens Optics on YT [0]. Jeroen, the creator, has an engrossing passion for the material.

Jeri's process [1] is wild compared to Sam's lab.

[0] https://www.youtube.com/@HuygensOptics

[1] https://www.youtube.com/watch?v=PdcKwOo7dmM


I have some doubts about step 15: I used to work in a post-Soviet lab which produced chips in early 90s and as far as i remember etching happened in a high temperature (was it 1200C ?) environment where you would pass some chlorine type gas over the wafers. The temperature was achieved by induction heating with 8kHz AC passing through water cooled copper coils. The generators were mechanic, big water cooled machines placed in the basement of the building due to the noise they generated. Another reason for placing them in a basement was that water leaks were common. I was responsible for maintaining the heating setup and transitioning to electronic, thyristor based generators. The job was kind of electronic-engineer-plumber type of duty.


> etching happened in a high temperature (was it 1200C ?) environment where you would pass some chlorine type gas over the wafers.

This is plasma etching or dry etching.

Step 15 shows acid etching or wet-chemical etching.

I don't know the pros/cons of each, but both have been used as viable options to etch a circuit.


You are probably right. What I remember there was this chlorine gas, and there was some other gas (oxygen?). And in between them we had to flush everything with lots of nitrogen to prevent formation of potentially explosive mixture. The wafers would be placed on a graphite support, which was heated by that induction coil (as copper itself would melt at that temperature I guess).


For those who read the comments first: The article is about semiconductor fabrication, not computer architecture.


Yeah, I was expecting the geek equivalent of "How to Draw an Owl in Two Simple Steps" meme. Step 1: Start with some NAND gates. Step 2: Now make the rest of the fucking CPU.

Random reference: https://i.pinimg.com/originals/d4/28/29/d42829227cd7526d75af...


I immediately thought of this as well. Step 12 cracked me up!

12) Take a chromium-etched photo-lithographic quartz mask with your desired circuit pattern and shine a laser beam through it to project the circuit pattern onto the wafer.

"Your desired circuit pattern" might as well be "draw the rest of the fucking owl."


This course is pretty much what you described, but incredibly good pedagogy. https://www.nand2tetris.org/


There’s a lovely game called Turing Complete on Steam that will take you from a nand gate through making a simple game in your own assembly that run on the processor you built. https://store.steampowered.com/app/1444480/Turing_Complete/




It's actually funny that that meme is now not viable anymore, due to the proliferation of text-to-image generators.


That's the hardest part of "making a CPU" anyway, if you define CPU specifically as a microprocessor, because people have built working hobby CPUs with all kinds of more easily approachable tech, like relays, vacuum tubes, discrete transistors, and logic gate ICs. Basically anything that can act as one of the universal logic gates (NAND, XOR) will work as a CPU building block.


_Minecraft and Dwarf fortress have entered the chat_



I followed the instructions carefully and ended up with a bunch of RAM because I used the wrong "chromium-etched photo-lithographic quartz mask" or whatever. The guy on ebay said it was an i7. Took ages.


For those who want to know how to build a CPU on a breadboard, I recommend the book “But How Do It Know?” and the Scott CPU architecture.


This was mostly about making a silicon wafer. This video shows more detail on the rest of the process in a home lab: https://www.youtube.com/watch?v=IS5ycm7VfXg (blog here: http://sam.zeloof.xyz/second-ic/)


This reminds me of a text file I found back in the 1990s on a BBS about “how to build your own atomic bomb”. The first step was something along the lines of “obtain 50 lbs of weapons grade plutonium” as if you could just walk into your local military surplus store and pick up a crate. It was pretty obvious at that point that the whole thing was meant to be humorous.


Monty Python's "Today on how to do it" sketch is the classic of the genre maybe? Definitely a worthwhile minute out of your day.

https://www.youtube.com/watch?v=tNfGyIW7aHM


Another one from that era was something like: "how to destroy the Earth". There were several methods proposed, one of which was to use a black hole: "step1: take a reasonably sized black hole, step2..." etc.


https://qntm.org/destroy might be what you're thinking of? Lots of other good fiction there too. I love the There Is No Antimemetics Division stuff.


Thanks so much!


What are the key differences between CPUs now are CPUs twenty years ago? Sure we can pack more transistors into a smaller space, but clock speed has plateaued. Are all the innovation purely in pipelines and branch prediction?


plus out of order execution, hyperthreading, SIMD, better and bigger memory caches, more cores, more power efficiency


In the spirit of increasingly large memory caches, don't forget other increasingly large microarchitectural buffers (e.g. reorder/retire buffer), and the hella microarchitectural parallelism that it enables. Apple went all in on this strategy, and it paid off.


I think clever choice of instruction set is another one. Today's x86-64 is a far cry from what an 8088 could do, and Apple's Silicon does more in one clock cycle than its predecessors by a mile.


I was just watching Outlander and wondering what value could I bring if I went back in time. Thankfully now I will be able to make a computer now that I've skimmed through this article. :)


Not so much a CPU as chip fabrication. But otoh that is soo cool by itself. Making your own ingot ffs, that is crazy.


I wish he broke down step 16 into a lot more steps explaining how individual features where built up in this easy, eli5 way.


Very important to make sure you pick the right sort of rock! Not all rocks are made of silicon dioxide.


So, basically just like baking a cake


this reads like a Nile Green meme




Consider applying for YC's Winter 2026 batch! Applications are open till Nov 10

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

Search: