Live data from Hacker News

How to make a CPU – a simple picture-based explanation

blog.robertelder.org

161–170 of 176 posts

Re: How to make a CPU – a simple picture-based explanation

#161
post #40

The hilarity illustrates an important point. We never just make a thing. A recipe or blueprint is a convenient fiction. Rather we participate in a dynamic evolving process which itself evolved through many cycles of copying, repetition and debugging. Even the first version wasn't strictly original because the idea was borrowed from elsewhere. 'Oh you work at the olive press. How would you like a job with this new-fan…

You might not do great to start with computers, and instead, do better to start from the dawn of civilization. https://www.howtoinventeverything.com/ What I got from this is that I could make homemade coal by myself, MAYBE. I don't know if there's any climate on Earth where I could eek out a net energy return on primitive crops. If there was no one telling me what to do, I would surely starve in early agricultural ti…

It's interesting to imagine the human experience of reality when living in such times.

Re: How to make a CPU – a simple picture-based explanation

#162
post #54

It'd be really awesome if microprocessors, even at a low-end process node like 130 nm, could be made with room-sized machines or smaller. There's a lot of space for companies wanted to manufacture their own MCUs, for instance, without relying on massive supply chains. I think this'll happen at some point, as silicon manufacturing hits final roadblocks and becomes increasingly commoditized, but it'd be nice if it were…

You can buy or rent Yokogawa modular machines for making chips. Fits in a room.

https://cdn.aff.yokogawa.com/9/400/details/minimal-fab-one-s...

*I added a reference link

Re: How to make a CPU – a simple picture-based explanation

#163

Earlier quoted context omitted.

You are right I mixed up silica and silicon my mistake. I found the wired article thats now paywalled and I mixed those two up. https://web.archive.org/web/20180808115837/https://www.wired... >It would be interesting to know if the industry is still using natural quartz crucibles - the latest wafer size is now 450 mm - nearly 18 inches. Maybe someone else here can comment whether the traditional pulling process will…

I had not heard of Spruce Pine - thanks for the references! In the very interesting Wired article you linked, I notice that the quartz goes to GE, which spins it into crucibles. So, I guess the size is unlimited. The current silicon ingots are amazing - cylinders a foot and a half in diameter and maybe six feet long. They are handled with cranes. The ingots are so large and the chips so small that there isn’t much wa…

Even the traditional disco cutters are probably worth their own book

Re: How to make a CPU – a simple picture-based explanation

#164

Earlier quoted context omitted.

I had not heard of Spruce Pine - thanks for the references! In the very interesting Wired article you linked, I notice that the quartz goes to GE, which spins it into crucibles. So, I guess the size is unlimited. The current silicon ingots are amazing - cylinders a foot and a half in diameter and maybe six feet long. They are handled with cranes. The ingots are so large and the chips so small that there isn’t much wa…

Even the traditional disco cutters are probably worth their own book

https://www.nanofab.utah.edu/assets/svn/__svn__/equipment/pu...

Unit weighs 1,300 kg!

Re: How to make a CPU – a simple picture-based explanation

#165

Earlier quoted context omitted.

Even the traditional disco cutters are probably worth their own book

https://www.nanofab.utah.edu/assets/svn/__svn__/equipment/pu... Unit weighs 1,300 kg!

the smaller the heavier :)

Re: How to make a CPU – a simple picture-based explanation

#166
post #62

Earlier quoted context omitted.

If you knew enough VHDL you can make your own digital chips including CPUs using off the shelf FPGAs... https://blog.classycode.com/implementing-a-cpu-in-vhdl-part-...

how steep is the learning curve for VHDL?

I made a simplified MIPS (no FPU, 4-stages pipeline with a basic interrupt controller and nothing out of order or the like) in VHDL for a uni course. We had some simpler exercises before that (e.g., PS2 keyboard controller) and with that I found it quite OK.

One just needs to avoid falling for the similarities with programming too much, and rather think in terms of signal and have the clock in mind.

The worst things are the tooling, e.g., I expected Quartus to crash or hang at any moment, I early wrote a TCL script to setup the project and FPGA pin mapping to be able to scratch the Quartus project at any time and just recreate it in seconds without losing any work (or my mind).

There's ghdl (open source) which I found quite nice, but that's only for virtual development and (at least then) had no support for getting out a bitstream to load onto a real FPGA, so often I used it for test benches and some quicker development tries before actually loading it onto the FPGA every so often.

Re: How to make a CPU – a simple picture-based explanation

#167

I've always been curious how someone gets into this line of work. Is it all via college / post education and your directly recruited by these companies? Obviously, this is a very hard (impossible?) thing to teach yourself. I can't imagine more than a few universities offer this type of education? Where would you start / what path would you go down to be a chip designer / work for an Intel / AMD ???

I got my electrical and computer engineering (ECE) degree in 1999 from UIUC and learned everything but the very lowest-level chemistry, because I specialized in the VLSI (circuit design) side instead of fab. At that point, stuff like MIPS and the DEC Alpha were popular, and computers were just breaking the 1 GHz barrier. Unfortunately the dot bomb happened right after I graduated, and the anti-intellectual backlash o…

Don't worry, we got you covered on the MIMD front ;)

Re: How to make a CPU – a simple picture-based explanation

#168
post #54

It'd be really awesome if microprocessors, even at a low-end process node like 130 nm, could be made with room-sized machines or smaller. There's a lot of space for companies wanted to manufacture their own MCUs, for instance, without relying on massive supply chains. I think this'll happen at some point, as silicon manufacturing hits final roadblocks and becomes increasingly commoditized, but it'd be nice if it were…

I wonder what other processes could be used instead of photolithography to etch the silicon, deposit metal, etc? If you had a machine that started with a doped wafer, and worked one gate at a time, instead of a whole layer at a time, it would be way slower, but could, in theory be testable as it goes, and produce arbitrarily complex chips. Also, I wonder what other materials might work, even if they are much slower,…

I have similar questions. I wonder what wild alternatives can be substituted. Meaning, instead of thinking of making transistors on a silicon chip, can we make transistors on any other material or in any other fashion (say tapping into existing structures in nature) in a much easier way? Can we somehow exploit synthetic biology? Etc. etc. To replace the many assumed and developed processes and steps of the supply chain with much more feasible and easier approaches might result in a more efficient process in general.

Basically, we need functional understanding of all components, and hierarchical functional equivalents/isomorphisms. Aka "What is the end function of logic gates?" "To do X" "Are there simpler, easier, faster, more feasible structures that do X? Any way whatsoever? Does not need to relate to the current discipline or our established approahces" and iterate that question over all components and steps of the chip making process.

Re: How to make a CPU – a simple picture-based explanation

#169
post #22

Earlier quoted context omitted.

I got my electrical and computer engineering (ECE) degree in 1999 from UIUC and learned everything but the very lowest-level chemistry, because I specialized in the VLSI (circuit design) side instead of fab. At that point, stuff like MIPS and the DEC Alpha were popular, and computers were just breaking the 1 GHz barrier. Unfortunately the dot bomb happened right after I graduated, and the anti-intellectual backlash o…

>Only Apple with their M1 seems to have any will to venture outside of the status quo I find this an interesting opinion considering that the M1 is really just "The same, but a bit larger" - IE slightly higher performance at a higher cost. What exactly do you see with the M1 that makes it so different?

Well you're right, the M1's unified memory is not technically that much different, but it's a start. And I don't like the mix of components either. They seem to be copying previous trends, like when FPUs were integrated on-chip. Eventually we'll have some kind of standardized SIMD unit like with Intel's integrated GPUs.

But I don't want all that. I just want a flat 2D array of the same core, each with its own local memory. Then just run OpenGL or Vulkan or Metal or TensorFlow or whatever the new hotness is in software. All Turing-complete computation is inherently the same, so I feel that working in DSLs is generally a waste of time.

Arm is a relatively simple core so scaling an M1 to over say 64 cores is probably straightforward, at least on the hardware side. People complain that chips like that are hard to program, but it's only because we're stuck in C-style languages. GNU Octave or MATLAB or any vector language is trivial to parallelize. Functional languages like Julia would also have no trouble with them.

Once we aren't compute-bound, a whole host of computer science problems become tractable. But we can't get there with current technology. At least not without a lot of pain and suffering. What we're going through now isn't normal, and reminds me a lot of the crisis that desktop software reached in the mid 90s with languages like Java just before web development went mainstream.

Re: How to make a CPU – a simple picture-based explanation

#170

Earlier quoted context omitted.

I got my electrical and computer engineering (ECE) degree in 1999 from UIUC and learned everything but the very lowest-level chemistry, because I specialized in the VLSI (circuit design) side instead of fab. At that point, stuff like MIPS and the DEC Alpha were popular, and computers were just breaking the 1 GHz barrier. Unfortunately the dot bomb happened right after I graduated, and the anti-intellectual backlash o…

> anti-intellectual backlash of the early 2000s I've never heard of this. Could you elaborate, please?

Strange, because for me, the stark contrast between the 90s and 2000s is unmistakeable. After the dot bomb and 9/11, the political climate in America went dark and that's also something that's never recovered.

America decided to double down on neoliberalism with the war on terror, so we've had endless bizarre legislation like the DMCA and PATRIOT act coinciding with our exploitation of developing countries and fear of the other. But we've only had a handful of the really important innovations like blue LEDs, lithium iron phosphate batteries, and enough Moore's Law to miniaturize computers into smart phones. We needed moonshots for stuff like cheap solar panels and mRNA vaccines a long time ago. We needed pure research that we didn't have. Yes we have these things today, but to me, having to wait around seemingly forever for them when we had the technology for this stuff in the 1980s, that looks like 20-40 years of unnecessary suffering.

For example, academia warned about the dangers of GMO foods and unpredictable side effects like autoimmune disease. Nobody ever listens or cares. Nobody cared when they warned about global warming or leaded gasoline either. But I am hopeful that this prolonged period of anti-intellectualism is finally ending and maybe the people standing in the way of progress are finally retiring. I've largely given up on real innovation from the tech world, so I've got my attention fixed on solarpunk now.

Post reply on HN