For design you’ll usually be using a suite of [EDA (Electronic Design Automation)](https://en.wikipedia.org/wiki/Electronic_design_automation) software – i.e. software specially made for that purpose. Be aware that modern CPU design is a *very* complex beast on a *very* small scale. The software will give you all the relevant details (i.e. how many transistors there is in total) – nobody is counting them manually.
However, if you want to play around with creating digital circuits yourself, you can get an FPGA board with the associated software. An FPGA board is a programmable circuit with digital components, meaning that you can create a simple CPU if you want to – without building customized hardware to test your design and see it come to life.
[Xilinx (owned by AMD) is one common provider of FPGA boards](https://www.xilinx.com/products/silicon-devices/fpga/what-is-an-fpga.html) you can purchase and play around with.
Each transistor is very tiny.
And the design process is Computer aided. So there is no developer placing 3 billions Transistors, but they design a certain function and then a computer generate a placement of these Transistors.
And the computer also know how many transistors it has used in its designs.
Well yeah, this is about the most cutting edge design and manufacturing processes in the world. So it isn’t inherently ELI5.
A modern IC is manufactured using basically a “photographic” technology (very ELI5). To get that many devices each device is really very small so the photograph technology has to be very very high resolution. The high end modern ICs don’t use visible light and uses ultraviolet lasers for this process.
Without computers, it would be impossible to design and manufacture these devices. Instead computers are used that have sophisticated design software. Designing the product is similar to writing complex computer code. This “code” is run through these programs and the programs help convert it to actual IC layouts and designs. (It is a LOT LOT more complicated than this in actuality) So we can design chips that require billions of transistors only because we’ve designed really sophisticated tools.
An analogy would be a farmer. A farmer 10,000 years ago used their hands or very basic tools – each farmer could only farm a small area. A modern farmer uses farming equipment that allows them to farm much larger areas.
Well in short the answer is they spend a -lot- of money.
The idea becomes more reasonable when you consider that the set of masks to make a modern chip can run into hundreds of millions of dollars to make. Though for chips that don’t need so many transistors in one spot, or aren’t as complex might be more like a few million or even a couple hundred thousand for the low end. The machines that actually use those masks to make a chip cost just as much.
In more detail no one is designing these chips by hand. The general architecture is sure, but there are computer algorithms actually generating the low level design.
As for how they do it its still a variant of photolithography. Basically they take some chemical that hardens when exposed to light, shine light through a patterned mask with holes in it for the design, wash away anything that isn’t hardened, do some chemical treatments then repeat.
There are massive technical issues when you get that small mind you. Mask repair gets done with electron microscopes and ion beams that those individual atoms at gaps to fill them in. We’ve run into issues with the type of light used as well. The latest EUV machines do this absurd thing where they fling a micro sized drop of molten metal into the air, blast it with a laser to turn it into metal gas, then blast the gas with another laser to make a high intensity UV flash.
But again. There’s huge amounts of money spent on developing these machines years before they are even expected to be needed.
You write programming code in special programming languages.
This code is essentially a very detailed description of what you want the chip to do.
Then some very expensive computer programs work out what arrangement of transistors are required to implement that and how arrange them on the chip.
The code will be worked on by teams of people, sometimes hundreds. It will be divided up into sections which do specific things and many of those sections will get their own teams. Also sections of code can be reused between different chips and improved on over time.
Writing code is a bit like writing a reference book like a dictionary or encyclopedia where each section has to correctly reference other sections but has it’s own detail inside.
But the main thing is the humans deal with the code, computer programs turn that into billions of transistors.
If you know how to put down one domino – a very, very complicated domino that requires a lot of skill and investment to understand how to place it correctly – then it’s just a matter of putting down as many dominoes as you can within a certain space. If you know how to put a very small domino down within a certain area, you can ascertain that “x” amount of dominoes fit within that space.
You, in this case, are a machine. Someone taught you how to put down super tiny dominoes, and you just print those out.
There’s more pieces than just the dominoes but the principal is the same. If you know how to make and lay those tiny dominoes, you just replicate that within a small, defined space and when you work out the mathematics of how many can fit in that space, you can arrive at a given number.
Most of the transistors in modern ics are used towards memory elements (SRAMS, caches etc.). That’s where a large chunk of the transistor count comes from, the number of transistors used in implementing things that do “active work” is usually much less.
It doesn’t make it any less impressive though 🙂
Another comment has also touched on the idea that a lot of it is broken up into macros. For example one memory element can be a large macro, and many macros can combine to give high memory counts – which as you can imagine can quickly lead to very large transistor counts.
This simplifies the work for engineers considerably, as placing billions of transistors and checking them all one by one isn’t really feasible.
As for how is this all possible? Very impressive computer tools that automate a lot of work. Virtually nothing is done by hand or manually, it’s just not possible at that level of complexity.
Source: I do chip design for a living.
The chip is made up of substrucutres that are made of transistors. These structures can be put together like lego blocks to build bigger structures, which can again be combined into larger structures, and so on
Once the smallest structure is designed (which may only be a few tranaistors) the designers can copy and paste it to create bigger structures. Once those are designed, they can again be copy and pasted and reused. Nobody is literally placing 3 billion individual transistors
Once the design is complete, it gets put into a machine that will read it and project it onto the chip. This is the opposite of how a home media projector would work, instead of making the image larger, it makes the image smaller. Much smaller. It focuses the full chip design down onto a small piece of silicon, and the light etches out the microscopic transistors
Latest Answers