(评论)
(comments)

原始链接: https://news.ycombinator.com/item?id=37976894

然而,本文不是从简单的成分开始并逐渐增加复杂性,而是探索完全从头开始创建计算设备的想法,而不假设先前的基础设施或资源。 它承认,虽然构建 CPU 可能涉及学习 NAND 门之外的概念并转向设计电路,但集成电路本身的创建不仅仅是组装先前存在的组件。 最终,我们的目标不是简单地教个人如何使用易于使用的工具绘制图像,而是使任何具有基本电子技能的人都能制作自己的中央处理单元。 与大多数任务一样,必须仔细注意该过程的每一步,包括选择包含芯片制造所需元素的正确类型的岩石。 尽管自早期芯片迭代以来的许多创新(包括改进的缓存大小和增加的指令集功能)对最终结果做出了贡献,但随着时间的推移,基本原理仍然相对稳定。 尽管任务可能很复杂,但将其分解为可管理、易于理解的步骤对于成功至关重要。

相关文章

原文
Hacker News new | past | comments | ask | show | jobs | submit login
How to Make a CPU – A Simple Picture Based Explanation (robertelder.org)
336 points by accrual 2 days ago | hide | past | favorite | 62 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.


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.


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.



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.



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?



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


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...



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



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.



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


> 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.


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.


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/



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

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



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






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.


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...



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!


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. :)


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.


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


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


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


So, basically just like baking a cake


this reads like a Nile Green meme






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



Search:
联系我们 contact @ memedata.com