Dies ist eine alte Version des Dokuments!


Abb. ##: n- und p-Kanal MOSFETs

Ok, now we know at least that the chip consists of many transistors. But how do they work and how can you build something as complex as a processor from them? The exact function is the content of the course '(Analog) Circuit Design'. For digital applications it is sufficient to have a simple picture of a certain type of transistor - the MOSFET - in your head. This has the three terminals:

  • Source („Quelle“), the inflow of charge carriers
  • Drain („Senke“), the outflow of the charge carriers
  • Gate („Tor“), the gatekeeper, which regulates the passage between source and drain: If the correct voltage gate is present at the gate terminal 1), the Source and Drain terminals are short-circuited, that is, a current can flow and the voltage drop between them becomes small.

Two types of MOSFET are important in the following digital circuits:

  • one that is non-conductive for low voltages ($0V$, logic $0$, Low, $L$, or False) at the gate (n-channel MOSFET) and
  • one that is non-conductive for high voltages ($5V$, logic $1$, High, $H$ or True) at the gate (p-channel MOSFET).

In the picture on the right (Abbildung ##) you can see the two variants in action, when the voltage at the gate just assumes the digital voltage values.

Now it is interesting, that these two kinds of transistors are sufficient to build all variants of logical functions. Logical functions combine one or more inputs ($X_1, ... X_n$) in such a way, that every kind of input uniquely leads to an output ($Y_1, ... Y_n$). In circuits, so-called gates correspond to logical functions. They need not be only such simple functions like an AND-gate. Mathematical operations can also be mapped in this way. To do this, gates must be cleverly combined with each other. In an exercise on binary logic, it is shown that all gates can be constructed using NAND or NOR gates. So, if we could figure out how to build a NAND or NOR gate from transistors, we could in turn build all gates up to addition from it.

Abb. ##: Simulation eines Inverters

Before the NAND gate is considered, a very simple circuit is to build, which generates the output value $Y(0)=1$ from the digital input value $X=0$ and for $X=1$ correspondingly $Y(1)=0$. This circuit always negates the input value and is called inverter. For this purpose the two types of transistors are combined similar to a voltage divider or a half bridge. Thus, only one transistor (TRANSfer ResISTOR) becomes conductive at a time, the other one correspondingly high impedance. In Abbildung ## the corresponding circuit with normally open and normally closed switch is also drawn. It is important for the following consideration that the logic voltages ($0V$, $5V$) are just switched complementary via the switches. For this reason this technique is also called CMOS technique: Complementary MOSFET. In today's electronics, this technology is used throughout and has completely replaced older variants (e.g. TTL).

Abb. ##: Inverter gate in CMOS on chip introduction_to_digital_systems:invertergattermikroskop.png

From this example, it can be seen how a logical $1$ can become $0$ in mobile phones, vehicle control units, and television sets. The Abbildung ## shows the realization of this gate in silicon:

  • Figure (1) shows the image of a scanning electron microscope, which shows several layers at the same time. The three circular elements are electrical passages („vias“) through several layers. In green are the two structures of the MOSFETs, which can act as a „valve“ to open the connection up ($5V$) or down ($0V$).
  • Figure (2) is a false color image. In beige is the top conductive layer and in blue is the non-conductive region of the top layer.
  • In figure (3), the different signals have been highlighted.
    The output $A$ is taken out via a via with the right connection.

Abb. ##: Simulation of a CMOS NAND gate

But how does the NAND gate work, on which logic can be built it? The concept behind this gate is that the output will only output logic false ($Y=0$) if both inputs are set to logic true ($A=1$ and $B=1$). The gate is shown in Abbildung ## above. This must be implemented using the two types of transistors , which were already explained. So, this structure must be built in such a way that:

  1. only if both inputs switch transistors with $A=1$ and $B=1$ at the same time, $0V$ shall be applied,
  2. if one of the inputs $A$ or $B$, or both equal 0, $5V$ shall be applied.

The first one is possible via a series connection of transistors at $0V$. These must short the source and drain terminals at a gate voltage of $5V$ (input to logic $1$), so n-channel MOSFETs are required.
The second one requires a parallel connection of transistors against $5V$. These must short the source and drain with a gate voltage of $0V$. Here p-channel MOSFETs are used (Abbildung ## below).

The implementation in silicon (Abbildung ##) again appears somewhat unclear at first glance. In this figure three pictures are to be seen, again. In the first picture the transistors are marked green again and also the vias are to be recognized again over white circles. If you take a closer look at the diagram, you will notice that the via at $5V$ can be reached via the left or right MOSFET. However, the via at $0V$ can only be reached if both lower MOSFETs short-circuit. Thus, the structure is consistent with the circuit determined so far. The Abbildung ## and Abbildung ## should show this in more details.

Abb. ##: NAND-Gatter in CMOS auf Chip introduction_to_digital_systems:nandgattermikroskop.png

NAND Gate in CMOS auf Chip (schematisch)Abb. ##

Abb. ##: Simulation eines CMOS NAND-Gatters (Struktur ähnlich Si-Die)

Abb. ##: Simulation eines Addierers

Wie können nun die NAND-Gatter so verschaltet werden, dass das Rechenwerk Operationen wie $y=a+b$ durchführen kann? Dazu wird die Operation zunächst nur für binäre Werte betrachtet. Um die binäre Größen von dezimalen Größen zu unterscheiden wird diesen ein $0b$ vorangestellt. Folgende Kombinationen sind also möglich:

  • $0 + 0 = 0$ bzw. $0b0 + 0b0 = 0b00$
  • $0 + 1 = 1$ bzw. $0b0 + 0b1 = 0b01$
  • $1 + 0 = 1$ bzw. $0b1 + 0b0 = 0b01$
  • $1 + 1 = 2$ bzw. $0b1 + 0b1 = 0b10$

Es ist zu sehen, dass nur wenn beide Eingänge gerade $1$ sind die zweite Stelle des Bitwertes gesetzt ist. Dies entspricht gerade einem AND. Da aber alles aus NAND-Gattern aufgebaut werden soll, muss eine geschickte Zusammenschaltung dieser Gatter gefunden werden. Hierzu wird einem NAND-Gatter ein Inverter-Gatter nachgeschalten. Das Inverter-Gatter wiederum erhält man über ein NAND-Gatter, wenn beide Eingänge verbunden werden. In Abbildung ## ist diese Schaltung unten durch die beiden unteren NAND-Gatter dargestellt.
Auch für die erste Stelle des Bitwertes lässt sich eine Schaltung finden. Wie kann man auf diese Schaltungen kommen? Dies wird im Kapitel Schaltnetze erklärt.

Werden viele Eingänge oder Ausgänge zusammengefasst, können größere Zahlenwerte umgesetzt werden. Das heißt, die Rechnung $3+3$ bzw. im binären $0b\color{green}1\color{violet}{1} + 0b\color{blue}{1}\color{red}{1}$ wird auf mehrere Einzelrechnungen heruntergebrochen. Dies ähnelt der händischen Addition durch Untereinanderschreiben der Zahlenwerte und schrittweiser Rechnung. In diesem Beispiel müsste zunächst $0b\color{violet}{1} + 0b\color{red}{1}$ berechnet werden, was $0b\boldsymbol{1}0$ ergibt. Im nächsten Schritt $0b\color{green}1 + 0b\color{blue}{1}$ muss zusätzlich noch der Überlauf aus der vorherigen Rechnung $0b\boldsymbol{1}$ berücksichtigt werden. So können prinzipiell beliebig lange Zahlen miteinander verknüpft werden.

Um die Zahlen handhabbarer für Mensch und Maschine zu gestalten wurde eine sinnvolle Gruppierung eingerichtet: 8 binäre Zahlenwerte werden zu einem Byte zusammengefasst. Dieses kann für Menschen lesbar als Dezimalwert $0...255$ oder Hexadezimalwert $0x00 ... 0xFF$ in Programmen dargestellt werden. Im Microprozessor werden diese Zahlenwerte stets als Binärwert gehandhabt.

dreidimensionale Struktur eines Silizium ChipsAbb. ##


1)
to be correct: the voltage has to be between gate and source an, not at the gate terminal…