NOTE: The processing of information can be done by flow and storage of data. Data can be represented by the switching status of switches, and the flow of data can be managed by potatoes, fluids, gases or by electrical current. See the article Circuit for an overview of different types of circuits.
A very simple functionality thingy is here: impressive; replace the balls with potatoes or with a bunch of electrons. You understand that, you understand information processing. If you then see what a relay, and vacuum tube and a transistor have in common, you understand their use in information processing. And once you understand that, you basically know how a processor works: It's all math, it's all about arithmetic operations.
A transistor is a very simple and very basic electronic component. It can be used to do the same thing as a relay or a vacuum tube but it can be shrunk to much lower levels than these electronic components. It consumes less current and the production is far cheaper. Thus in the field of data processing, the transistor replaced them completely.
By combining more Transistors to build a circuit you can achieve different tasks, such as:
Basically these represent different control tasks. And as you can see, the logic “is the equivalent”/“equates to”/“can be described”/“reproduced” precisely with algebraical operations performed in the Binary numeral system. So, with using transistors only, we can construct circuits, with which we can perform algebraical operations. Using Registers we can create circuits to perform very complex operations in very short time.
Circuit diagrams are used to display and plan more simple circuits. Example: OpAmpTransistorLevel_Colored_DE.svg. On http://commons.wikimedia.org/wiki/Category:Circuit_diagrams?uselang=de you'll find even more examples. One basically still draws all the lines through which the current flows, but uses symbols for the various electronic components. Such drawings are cumbersome for very complex circuits, but they can be realized 1:1 into hardware by soldering prefabricated components onto a PCB.
The smaller we make the component, the more transistors we can use to do stuff because we get along with less electrical current and also, the shrinkage cuts on production cost dramatically. But how to accomplish that? By abandoning the usual way to produce individual components and instead integrate a whole lot of them directly onto silicon substrate. NOTE: Today this is considered trivial, but it took some serious effort to make this work!
But how to build a Transistor on silicon substrate? By working with multiple layers:
By using short wave light and several master plates, a dense but light sensitive lacker is being used as a master platter for spraying the different materials onto and into the silicon substrate.
Adding and multiplying shit, is fun, but also a bit boring and limited. Could we have Circuits more complex then a pocket calculator? Yes, pretty much.
Let's use the ability to build a circuit which consists of so many (at the beginning 10, today 109) transistors, to create a processor. A computer. Like say, something like the DEC Alpha ISA. ← to complicated example?
We look at the current possibilities of the semiconductor industry and sketch the basic outline of the ISA to be, like the word-width. Bla bla, see DEC Alpha, the Wikipedia article is quite good.
The next step is to realize this theory into circuit. Something like a Circuit diagram is needed, but it would not only be very complicated to obtain such a drawing, also it would be useless, since we won't solder components onto a board. We are going to fabricate an IC onto silicon substrate, so at the end, we are going to need some plan, some drawings to accomplish that.
There are different Hardware description languages for analogue and for digital circuit design such as VHDL. As a compiler translates code written in a higher programming language into machine code, so does a different kind of compiler translate code written in a hardware description language into a plan for the wiring.
In order to understand the difference between Soft- and Hard IP Core, you should read on.
Although humans can be considered smart, our monkey brains have serious difficulties dealing with this kind of stuff. That is why, we use several layers of abstraction. As long as you merely use software running on this hardware, you basically need to know nothing about the hardware, it's specifications or even it's functionality. However, I wanted to understand some of it, so I created this article.
See Integrated circuit design. To get from the theory (ISA + microarchitecture) to the reality (silicon hardware), you need two types of “construction guidance”s. There are companies that produce such and license them for money:
Soft IP core ⇒
Hard IP core ⇒
Some catchwords from the videos:
First the slicing, then the 400 processes and then the dicing. Now we put each die into a package carrier:
As the Pentium Pro included CPU and L2-Cache on one “package” or “chip” but still on two distinct dies, and the first intel QuadCores, were actually 2 distinct dies, with two CPU-Cores on each packaged on one Chip, so can a SoC consists of more then one single die.
The Printed circuit board (PCB) is for combining many components, such as CPUs, RAM, Flash, resistors, capacitors, inductors and connectors. On (and often in) the board, copper wires called “traces” or “tracks” connect all the electronic components together to form a complete, working electronic circuit.
A PCB can have from 1 to over 10 layers, each layer making additional electrical connections. In general, the more components and/or more signals that have to be routed in a circuit, the more layers are required in the PCB.