![]() |
|
|||||
Addierer Ein weiteres interessantes Bauteil ist der Halbaddierer. Dieser Name leitet sich aus der Tatsache her, dass die Schaltung zwar einen Übertrag berechnet, wenn beide Eingangswerte 1 sind, aber nicht in der Lage ist, den Übertrag eines vorgeschalteten Addierers entgegenzunehmen. Diese Fähigkeit besitzt nur der komplexere, weiter unten dargestellte Volladdierer. Beim Halbaddierer werden die Werte der beiden Eingänge x und y addiert. Der Ausgang s (sum, also Summe) liefert das einstellige Ergebnis der Addition, das der Verknüpfung x XOR y entspricht, während c (carry, der Übertrag) den Wert 1 für die nächste Stelle liefert, wenn x und y 1 sind. Die Funktion, die zum Ergebnis von c führt, ist demzufolge x Der Volladdierer enthält zwei Halbaddierer. Die einstellige Summe setzt sich aus der Summe der beiden eigentlichen Summanden x und y und aus dem hereinkommenden Übertrag ci (Carry-In) zusammen. Der ausgehende Übertrag co (Carry-Out) wird durch die Oder-Verknüpfung der beiden Summen gebildet. In Abbildung 2.9 sehen Sie den Aufbau des Volladdierers und sein Schaltsymbol. Aus einer Reihe dieser 1-Bit-Volladdierer lässt sich ein n-Bit-Addierwerk realisieren. Der Übertrag eines dieser Addierer wird dabei jeweils in den nächsten übertragen. Beachten Sie, dass der Baustein ganz rechts ein Halbaddierer ist, weil die kleinste Stelle natürlich kein Carry-In zu verarbeiten hat. Wenn Sie sämtliche s-Ausgänge von links nach rechts lesen, erhalten Sie das duale Rechenergebnis; ganz links kommt zusätzlich das Carry-Out der höchsten Stelle heraus. In Abbildung 2.10 sehen Sie beispielsweise einen 4-Bit-Addierer, mit dem sich zwei Werte von 0000 bis 1111 (0 bis 15) addieren lassen. SpeicherbausteineDie bisher untersuchten komplexen Schaltungen sind in der Lage, verschiedene Operationen durchzuführen. Eine andere Art von Bausteinen dient dagegen nicht als Rechenwerkzeug, sondern als Speicher, bei dem ein einmal gesetzter Wert dauerhaft vorgehalten wird. Erreicht wird dies durch verschiedene Arten der Rückkopplung: Ein Ausgang einer Schaltung wird mit einem Eingang verbunden, um einen einmal eingegebenen Wert immer wieder in die Schaltung zurückzuschreiben. Das Flip-Flop Der wichtigste Grundbaustein zur Realisierung von Speichern ist das Flip-Flop. Der Name dieses Bausteins beschreibt die beiden verschiedenen Zustände, die er einnehmen und dauerhaft halten kann. Die bekannteste Art des Flip-Flops ist das RS-Flip-Flop (für Set und Reset). Es handelt sich um zwei NOR-Gatter, die über je einen freien Eingang (r und s genannt) verfügen. Die beiden anderen Eingänge der NOR-Gatter werden mit den Ausgängen des jeweils anderen Gatters verbunden. In Abbildung 2.11 sehen Sie die Schaltzeichnung des RS-Flip-Flops sowie – wie immer – sein vereinfachtes Schaltsymbol zur weiteren Verwendung. Der schaltlogisch interessante Ausgang des RS-Flip-Flops ist q: Wenn über s (Set) auch nur kurzzeitig der Wert 1 übergeben wird, liefert q diese 1 dauerhaft. Wird dagegen r (Reset) mit einer 1 belegt, dann wird q zurückgesetzt und liefert auf Dauer eine 0. Auf diese Weise dient das RS-Flip-Flop als wichtigste Komponente von Speicherbausteinen; es handelt sich um einen 1-Bit-Speicher. Die Speicherzelle Um vollständige Speicherbausteine zu realisieren, müssen außerhalb des RS-Flip-Flops noch einige weitere Schaltelemente hinzugefügt werden, die dazu dienen, den Eingabewert aus einer einzelnen Leitung als Wert zu interpretieren, der in der Speicherzelle abgelegt werden soll. Dazu muss ein Schalter verwendet werden, der bestimmt, dass das aktuelle Signal des Eingangs im RS-Flip-Flop gespeichert werden soll. Außerdem muss je nach zu speicherndem Wert zwischen dem Eingang s und dem Eingang r gewählt werden: Eine 1 kann einfach an die Leitung s durchgeschaltet werden, eine 0 bedeutet dagegen, dass eine 1 auf r eingegeben werden soll – der Wert muss nach Auswahl von r zusätzlich negiert werden. Abbildung 2.12 zeigt den Aufbau einer Speicherzelle, die die beschriebene Funktionalität zur Verfügung stellt, sowie ihr Schaltsymbol. Wenn auf SELECT eine 1 eingegeben wird, kann über den mit Q AND-verknüpften Ausgang OUT der aktuelle Wert gelesen werden. Dieser Mechanismus dient in einem großen Gefüge von Speicherzellen der Adressierung, das heißt der Auswahl einer bestimmten Speicherzelle oder einer Gruppe von Speicherzellen. Werden SELECT=1 und WRITE=1 gesetzt, wird der an INPUT anliegende Wert auf die beschriebene Weise im Flip-Flop abgelegt. Mehrere Speicherzellen lassen sich zu einem Register zusammenschließen. Dazu werden die SELECT- und WRITE-Eingänge aller beteiligten Zellen zusammengeschlossen, da stets das gesamte Register auf einmal gelesen oder geschrieben wird. Auf diese Weise werden die Rechenregister im Mikroprozessor realisiert, aber auch die adressierbaren Speicherblöcke im Arbeitsspeicher (RAM). Abbildung 2.13 zeigt ein Beispiel eines Vier-Bit-Registers. In der Praxis sind die meisten heutigen Register 32 oder gar 64 Bit breit, funktionieren aber nach demselben Prinzip.
|
|
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Copyright © Galileo Press GmbH 2004
Für Ihren privaten Gebrauch dürfen Sie die Online-Version natürlich ausdrucken. Ansonsten unterliegt das <openbook> denselben Bestimmungen, wie die gebundene Ausgabe: Das Werk einschließlich aller seiner Teile ist urheberrechtlich geschützt. Alle Rechte vorbehalten einschließlich der Vervielfältigung, Übersetzung, Mikroverfilmung sowie Einspeicherung und Verarbeitung in elektronischen Systemen.