Recently I studied the very fundamentals of how computers work at the level of 1s and 0s, wires, and logic gates from a book written for laypersons. I followed the book along and built a very, very primitive computer with a cpu and ram in a simulator by plotting different kinds of logic gates and connecting them with wires.

After this exercise I’m left wondering how are new chips designed nowadays considering that there are billions and billions of microscopic transistors in a modern chip? I’m assuming there are some levels of abstraction to simplify the process? I can’t imagine all those billions of transistors and wires being plotted manually one by one by people. Is there like a programming language of some sort where a compiler converts syntax into circuitry layouts?

Also, I don’t mean the physical manufacturing process. I think I have a good grasp of that. I’m purely talking about the design stage.

  • solrize@lemmy.ml
    link
    fedilink
    arrow-up
    21
    ·
    edit-2
    12 hours ago

    You might start with the now quite old but groundbreaking book “Introduction to VLSI design Systems”[*] by Mead and Conway. It shows the chip layouts for basic switches, gates, and stuff like that, and design tools for building circuits up from those. Now imagine decades of improvements to the design tools. For the past few decades chip designs have looked like software programs, except highly parallel. The two main languages (“HDL’s”) are Verilog (looks like C) and VHDL (looks like Ada). You say what circuits you want and how they should be connected, and the compiler and layout software figure out how to place thst stuff on the chip. You can drop “macros” for very complex subsystems into your design, such as communication ports or even microprocessor cores, without having to worry about the insides of the macro blocks. There is a significant FOSS ecosystem of such macros too: see opencores.org for some of what’s available. It’s sort of like Github but for hardware.

    Edit: I mis-remembered the book title, it’s “Introduction to VLSI Systems” not “Design”. See also:

    https://en.wikipedia.org/wiki/Mead–Conway_VLSI_chip_design_revolution