Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

RW-SystemarchitekturKap. 31 Multiplizierer Gesucht: Schaltkreis zur Multiplikation zweier Binärzahlen, Beispiel:

Ähnliche Präsentationen


Präsentation zum Thema: "RW-SystemarchitekturKap. 31 Multiplizierer Gesucht: Schaltkreis zur Multiplikation zweier Binärzahlen, Beispiel:"—  Präsentation transkript:

1 RW-SystemarchitekturKap. 31 Multiplizierer Gesucht: Schaltkreis zur Multiplikation zweier Binärzahlen, Beispiel:

2 RW-SystemarchitekturKap. 32 Allgemeines zum Multiplizierer Wieviele Stellen werden für das Ergebnis benötigt? Also: 2n Stellen reichen zur Multiplikation von Zweierkomplementzahlen

3 RW-SystemarchitekturKap. 33 Vorgehen bei der Multiplikation 1.Multipliziere die Beträge der Zahlen 2.Bestimme das Vorzeichen des Produkts 3.Setze das Endergebnis zusammen

4 RW-SystemarchitekturKap. 34 Definition 3.4.: Ein n-Bit-Multiplizierer ist ein Schaltkreis, der die folgende Funktion berechnet: mul n : {0,1} 2n {0,1} 2n mit mul n (a n-1,..., a 0, b n-1,..., b 0 ) = (p 2n-1,..., p 0 ) mit =

5 RW-SystemarchitekturKap. 35 Die Multiplikationsmatrix Realisierung der Multiplikationsmatrix mit n 2 AND-Gattern (und n 2 Konstanten 0). carry? Partialprodukte mit 2n Stellen, n Stück

6 RW-SystemarchitekturKap. 36 Daraus entstehende Aufgabe: Schnelle Addition von n Partialprodukten der Länge 2n. Mit CLAs lösbar mit Kosten O(n 2 ), Tiefe O(n log(n)) bei linearem Aufsummieren der Partialprodukte ((((pp 0 +pp 1 )+pp 2 )+...)+pp n-1 ), O(log 2 n) bei baumartigem Zusammenfassen der Partialprodukte.

7 RW-SystemarchitekturKap. 37 Partialprodukte

8 RW-SystemarchitekturKap. 38 Schnelle Addition von n Partialprodukten der Länge 2n Verwende Carry-Save-Addierer. Reduktion von 3 Eingabewerten u, v, w zu zwei Ausgabewerten s, c mit + + = + Gelöst durch Nebeneinandersetzen von Volladdierern (kein Carry-Chain!).

9 RW-SystemarchitekturKap. 39 Carry-Save Addierer CSavA u v w c s n nn n n FA u1u1 v1v1 w1w1 s1s1 c1c1 u0u0 v0v0 w0w0 s0s0 c0c0 u n-1 v n-1 w n-1 s n-1 c n-1...=

10 RW-SystemarchitekturKap. 310 Bemerkung zum Aufbau des CSavA Speziell bei Partialprodukten: Reduziere 3 2n-Bit-Zahlen zu 2 2n-Bit-Zahlen (c 2n-1 = 0 Carry-Ausgang des letzten FA nicht verwendet)

11 RW-SystemarchitekturKap Serielle Lösung: Hintereinanderschalten von n-2 CSA-Addierern der Länge 2n Fasse n Partialprodukte zu 2 2n-Bit-Worten zusammen Addiere die 2n-Bit-Worte mit CLA Kosten O(n 2 ), Tiefe O(n) CSavA pp 2 pp 1 pp 0 CSavA pp 3 CSavA pp n-2 CSavA pp n-1... ADD

12 RW-SystemarchitekturKap Baumartige Lösung: Neue Grundzelle zur Reduktion von 4 2n-Bit Eingabeworten zu zwei Ausgabeworten, bestehend aus 2 CSAs Baumartiges Zusammenfassen der Partialprodukte mit 4-zu-2- Bausteinen zu 2 2n-Bit-Worten Addiere die 2n-Bit-Worte mit CLA siehe Abb. der Addierstufe mit log. Zeit Kosten O(n 2 ), Tiefe O(log n) CSavA 4-zu-2 4-zu-2 Reduktions-Grundzelle

13 RW-SystemarchitekturKap. 313 Addierstufe des log-Zeit- Multiplizierers für 16 Bit ADD 4-zu-2 pp 0 pp 3 pp 2 pp 1 pp 15 pp 14 pp 13 pp 12...

14 RW-SystemarchitekturKap. 314 Aufbau einer ALU ALU = Arithmetic Logic Unit zur Berechnung von arithmetischen und logischen Basisoperationen n-Bit-ALU mit: 2 n-Bit-Operanden a, b, Eingangscarry c m-Bit select-Eingang, der auswählt, welche Funktion ausgeführt wird (n+1)-Bit-Ausgang ALU a b c select n n n+1 m Schaltzeichen einer n-Bit-ALU

15 RW-SystemarchitekturKap. 315 Beispiel zum select-Eingang Hier: 8 Funktionen, d.h. 3-Bit select-Eingang FunktionsnummerALU-Funktion s 2 s 1 s [b] – [a] 0 1 0[a] – [b] 0 1 1[a] + [b] + c a b = (a n-1 b n-1,..., a 0 b 0 ) a b = (a n-1 b n-1,..., a 0 b 0 ) a b = (a n-1 b n-1,..., a 0 b 0 )

16 RW-SystemarchitekturKap. 316 Mögliche Realisierungen einer ALU 1.Möglichkeit: Realisiere Fkt. getrennt durch für f i, dann Auswahl durch verallgemeinerten M ultiplexer SKf 0 SKf 1 verallgemeinerter Multiplexer... abc select n+1 m 12 m SKf

17 RW-SystemarchitekturKap. 317 Schaltungsrealisierung der n-Bit ALU s 2 s 1 s [b] – [a] 0 1 0[a] – [b] 0 1 1[a] + [b] + c a b = (a n-1 b n-1,..., a 0 b 0 ) a b = (a n-1 b n-1,..., a 0 b 0 ) a b = (a n-1 b n-1,..., a 0 b 0 ) Möglichkeit: gemeinsame Behandlung ähnlicher Funktionen

18 RW-SystemarchitekturKap. 318 Datenpfad und Befehlsausführung Prozessor (CPU) PCIR ALU Steuerwerk Wo stehen wir?


Herunterladen ppt "RW-SystemarchitekturKap. 31 Multiplizierer Gesucht: Schaltkreis zur Multiplikation zweier Binärzahlen, Beispiel:"

Ähnliche Präsentationen


Google-Anzeigen