Wie mache ich einen Paralleladdierer?


21.05.2020, 03:17

Soll ich einfach die ersten Bits mit einem UND verknüpfen und das dann in den Carry leiten, ist das damit gemeint?

So? Ist das jetzt ein Paralleladdierer?

1 Antwort

Vom Fragesteller als hilfreich ausgezeichnet

Ein Ripple-Carry ist parallel, auch wenn das Carry 'durchschwappt'. Die einzelnen Bitstellen werden direkt verarbeitet, nur muß sich das Carry eben fortpflanzen. Ein serieller Addierer, addiert Stelle für Stelle nacheinander, indem er shiftet.

https://de.wikipedia.org/wiki/Addierwerk

Siehe Schaubild für Serienaddierwerk.

MrAmazing2 
Fragesteller
 21.05.2020, 04:04

Aber ein Ripple-Carry-Adder macht doch Bit für Bit, oder nicht?

0
KarlRanseierIII  21.05.2020, 04:17
@MrAmazing2

Nein, DU verknüpfst doch alle Bitstellen von a und b direkt, lediglich das Ergebnis des Carries lässt auf sich warten (ist halt der kritische Pfad).

Wenn mein Taktzyklus lange genug für den kritischen Pfad ist, kann ich das auch in einem Clockcycle machen (prinzipiell).

Das Serienaddierwerk braucht doch beim FF immer eine Clock fürs Shiften (die natürlich auch höher taktbar wäre, aber das ein anderes Thema). Schau Dir mal den Aufbau des Serienaddierwerkes an. Es holt sich zwei Bit, verarbeitet, schreibt erstest Bit raus, holt sich die nächsten beiden ...usw. usf. . Es shiftet also die Bitstellen der Eingabewörter durch den Addierer.

0