Zur Hauptnavigation springen [Alt]+[0] Zum Seiteninhalt springen [Alt]+[1]

Logische Schaltungen

Elementare Gatter

Zunächst ist zu klären, dass digitale Signale für die Zeit ihrer Verarbeitung in einem Rechner durch elektrische Potenziale dargestellt werden. Die üblicherweise für Bit-Werte verwendeten Bezeichnungen „0“ und „1“ (oder auch „H“ und „L“) werden dann durch ein hohes Potenzial (+5 V) und ein niederes Potenzial (0 Volt) dargestellt. Beide Werte können in einer einfachen Spannungsteilerschaltung aus zwei hintereinandergeschalteten Widerständen R1 und R2 realisiert werden, wenn man die Werte der Widerstände passend wählt. Um nun am Ausgang eines solchen Spannungsteilers einmal +5 Volt zur Verfügung zu stellen und kurz darauf 0 Volt, muss man die Widerstandswerte variieren können. Für Experimente im Unterricht genügt es, nur einen der beiden Widerstände gegen einen Transistor auszutauschen; in CMOS-Schaltungen werden beide Widerstände durch Transistoren ersetzt. Für unsere Zwecke ist es völlig ausreichend, die Transistoren einfach als „spannungsgesteuerte Widerstände“ aufzufassen – alle Details der komplizierten Halbleitungsmechanismen gehören zur Ebene unterhalb unseres Horizonts und dürfen ausgeblendet bleiben! Nun ist es nur noch eine Frage der Interpretation, dass man in dieser Spannungsteilerschaltung den Inverter (d.h. die NOT-Schaltung) erkennt.

Kombiniert man die Bauelementen zweier NOT-Schaltungen geschickt miteinander, dann kann man sowohl eine NAND- als auch eine NOR-Schaltung erhalten. Durch zusätzliche Invertierung des Ausgangs jeder dieser beiden Schaltungen erhält man die (eigentlich logisch näher liegende) AND- bzw. OR-Schaltung. Die bis zu diesem Zeitpunkt studierten Gatter sollen nun als elementare Bausteine für den Aufbau von logischen Schaltungen dienen. Dazu stellt man sie durch jeweils eigene Symbole dar und hält ihre Funktion in einer Wahrheitswerttabelle fest. (Der Nachweis, dass sich alle anderen dieser elementaren Gatter nur aus NAND-Gattern herstellen lassen, ist für einen nicht zu schwachen Kurs durchaus machbar!)

Logische Bauteile aus CMOS-Bausteinen

Mit Hilfe zweier p-MOS und zweier n-MOS-Bausteinen, wird ein NAND-Gatter (als Schaltbild) dargestellt. Es wird nochmals erwähnt, wann die Bausteine leiten und wann sie sperren. Mit Hilfe einer Tabelle kann man nun zeigen, dass die NAND-Verknüpfung erfüllt wird.

Um diese neuen Erkenntnisse zu festigen, gibt man das CMOS-Schaltbild der NOR-Funktion vor und lässt die Schüler nun selbst eine passende Tabelle erstellen, mit deren Hilfe sie dann die Richtigkeit der ebenfalls vorgegebenen Wahrheitstafel überprüfen können.

Sind die beiden Gatter in ihrer Wirkung bekannt, können sie mit Hilfe von Zeichen modularisiert werden. Hier kommt nun die Simulations-Software LogicSim ins Spiel. Zunächst lässt man die Schüler nur die Wahrheitstafel von NAND- und NOR-Gatter mit Switch und LED überprüfen.

Man kann an dieser Stelle die Schüler alle möglichen zweistelligen logischen Verknüpfungen finden lassen. Die wichtigsten, wie AND, OR und XOR werden durch ihre Namen hervorgehoben. Ohne Beweis kann man nur mitteilen, dass sich alle zweistelligen logischen Verknüpfungen zum Beispiel durch die NAND-Verknüpfung darstellen lassen:

x NOR y = ((x NAND x) NAND (y NAND y)) NAND ((x NAND x) NAND (y NAND y))

Mit LogicSim bauen die Schüler die obige Verknüpfung nach und überprüfen so die Behauptung.

Danach kann man umgekehrt vorgehen: Die Schüler bekommen das „Schaltbild“ der OR-Verknüpfung durch NAND-Gatter gezeigt und müssen nun die Gleichung für OR aus NAND finden. Zum Schluss sollte auch die XOR-Funktion durch NAND-Gatter dargestellt werden.

Implementierung mathematischer Funktionen

Im nächsten Unterrichtsabschnitt sollen einfache logische Schaltungen aufgebaut werden, die nun eben diese elementaren Gatter als Bausteine verwenden. Dazu kann nun auch ein Simulationsprogramm für logische Schaltungen eingesetzt werden, wie z.B. LogicSim. Im Wesentlichen sind drei Probleme zu bearbeiten: wie kann man digitale Daten a) weiterleiten, b) speichern und c) miteinander verknüpfen?

Der erste Punkt der Weiterleitung der Daten ist nicht schwer: er wird von den elektrischen Leitungen übernommen, welche ein Motherboards zu tausenden durchziehen. Etwas komplizierter ist die Frage, ob und wie man den Informationsstrom kontrollieren kann. Dazu sollte geklärt werden, dass ein AND-Gatter als ein Tor einge­setzt werden kann, das darüber entscheidet, ob die Information auf einer Leitung weiter fließt oder nicht. Diese Torsteuerung wird später an einigen Stellen nochmals gebraucht werden.

So dann ist zu klären, wie man ein Bit speichern kann. Die elementare Speicherfunktion wird am besten an einem einfachen RS-Flipflop aus zwei NOR-Schaltungen geklärt. Der Ausbau zu einem „echten“ Speicherbaustein mit einem Dateneingang und einem Ausgang kann nun von Schülern selbstständig erledigt werden, indem sie das RS-Flipflop mit etwas zusätzlicher Peripherie zum D-Flipflop ausbauen. Eine Kombination aus D-Flipflops kann dann als Register angesehen werden (auch wenn „echte“ Register aus anderen, komplizierteren Flipflops bestehen).

Nachdem nun die Weiterleitung und die Speicherung digitaler Daten soweit geklärt sind, bleibt „nur noch“ die Verknüpfung binärer Informationen zu besprechen, denn schließlich wollen wir verstehen, warum der Rechner „Rechner“ heißt! Dabei ist es ratsam, sich im Wesentlichen auf die Addition und die Subtraktion zu beschränken, denn dies sind tatsächlich die einzigen wirklich hardwarenah implementierten Rechenarten!

Schon die Addition zweier einstelliger binärer Zahlen stellt höhere Anforderungen, könnte das Ergebnis doch schon zweistellig werden. Gesucht ist also eine Schaltung, die zwei Bit-Werte entgegennimmt und an 2(!) Ausgängen das Ergebnis dieser Rechnung ausgeben kann. Die Wahrheitswerttabelle einer solchen Schaltung ist leicht aufzustellen, und auch eine entsprechende Gatter-Schaltung ist nicht schwer zu finden. Eine solche Schaltung heißt ein Halbaddierer.

Ein Studium der schriftlichen Addition zweier mehrstelliger Binärzahlen liefert dann die Erkenntnis, dass ein Addierer für eine binäre Stelle mit 3(!) Eingängen ausgestattet werden muss, weil zu den zwei Stellenwerten der Summanden noch eventuell ein Übertrag von der vorigen Stelle kommen kann. Glücklicherweise lassen sich 2 Halbaddierer leicht zu einem Volladdierer ergänzen. Und der Weg zu einem 8-Bit-Addierwerk ist dann nicht mehr weit.

Die Subtraktion ist nun mehr ein Problem der theoretischen Informatik als ein ergiebiges Thema für weitere Hardware-Recherchen. Man gerät hier unversehens auf das schwierige Terrain der Bedeutung der binären Daten, welche sich als ganz und gar nicht eindeutig erweist. Dieses Thema eignet sich eher für recht gute und interessierte Gruppen, die einiges an mathematischer Standfestigkeit mitbringen.

Lassen Sie uns nochmals den Gedanken der Kapselung aufgreifen und eine Darstellung für die Abfolge der verschiedenen Hardware-Ebenen explizit angeben:

Ebene Elemente

Mathematische

Funktionen

Register Addierwerk
D-Flipflop Volladdierer
RS-Flipflop Halbaddierer
Kombinierte Gatter OR-, AND-, XOR-Gatter
Elementare Gatter NAND-, NOR-Gatter
NOT-Gatter
Transistor-Ebene Transistoren, Widerstände

 

 

Unterrichtsgang: Herunterladen [odt][72 KB]

 

Weiter zu Registermaschine