Zum Inhalt springen

Digitale Schaltungstechnik/ Addierer/ Alternativen/ Skip/ Rückspiegel

Aus Wikibooks
Titelseite
  1. Addierer
    1. Mehr-Bit Addierer
      1. BCD
    2. Binäre Quersumme
    3. mehrere Variablen
  2. Subtraktion
    1. kombiniertes Rechenwerk
  3. Alternative Addierer
    1. Carry-Ripple-Addierer
    2. Carry-Skip-Addierer
      1. Stufe 2 bis n
      2. Stufe 1
      3. Rückspiegel
    3. Carry-Look-Ahead-Addierer
    4. Serienaddierwerk

Problem

[Bearbeiten]

Analyse

[Bearbeiten]
Das wir immer von 000 an den Eingängen ausgingen, hatte Gründe, die wir nun hier ergründen.

Also, gehen wir davon aus, dass der vorherige Wert die Zusatzlogik getriggert hatte:

Nun ändern wir die Zahl so, dass der Übertrag der vorgehenden Stufe nicht mehr 1 ist:
Beim Übertrag nehmen wir an, dass er durch die vorgehende Stufe 1200 ms verzögert wurde:
Bis zum Oder-Gatter können wir wieder einfach rechnen:

Aber wie lange braucht nun das Oder zum Schalten?

Der Ausgang des Oders geht erst dann auf Null, wenn auch der Übertrag von der konventionellen Logik auf null geht!
Nun, dies ist nun wirklich der Worst case und in diesem Fall ist unserer Carry Skip Addierer sogar langsamer als der Carry Ripple Addierer.

Lösung

[Bearbeiten]

Wieso haben wir uns denn diesen Aufwand gemacht?

Um das zu verstehen müssen wir etwas ausschweifen: grosse Rechenwerke die wirklich zeitkritisch sind, werden nicht als Paralleladdierende TTL-Gräber aufgebaut sondern in Prozessoren intregiert. Jetzt muss man noch wissen, das eine CPU neben Rechnen auch vieles anderes macht, wie Daten lesen und Schreiben, Befehle dekodieren und so weiter. Sobald aber alle Daten bereitliegen, muss das Rechenwerk die Rechnung so schnell wie möglich lösen.

Aber wie löst das unser Problem?

Die Lösung ist verblüffend einfach: In den Takten, in denen der Prozessor sein Rechenwerk gerade nicht braucht, legt er einfach 000 an alle Eingänge. Das "Leeren" des Addierwerkes dauert gerade mal 400 ns, fällt also im Vergleich zum Berechnen also gar nicht mal so ins Gewicht.

Eigentlich ist es verblüffend: Obwohl wir das Addierwerk vor jeder Berechnung leeren müssen, ist es (aber einer gewissen Grösse) denoch schneller als ein konventionelles.

Optimierung

[Bearbeiten]

In den Details gibt es bei der hier vorgestellten Schaltung noch Optimierungspotential, das wir hier aber nur in Stichwörtern wiedergeben:

Anwendungen

[Bearbeiten]

Carry Skip Addierer für 4 Bit sind mit dem 74283 erhältlich.[1]

Quellen

[Bearbeiten]
  1. http://ics.nxp.com/products/hc/datasheet/74hct283.pdf