Multiplizierer. Beispiel komplexer arithmetischer Schaltung. Langsamer als Addition, braucht mehr Platz. Sequentielle Multiplikation

Ähnliche Dokumente
Digitaltechnik. 4 Arithmetik. Revision 1.1

Rechnernetze und Organisation

Grundlagen der Rechnerarchitektur. Binäre Logik und Arithmetik

Rechnerarithmetik. Vorlesung im Sommersemester Eberhard Zehendner. FSU Jena. Thema: Multiplikation

6. Zahlendarstellungen und Rechnerarithmetik

Computerarithmetik (15b)

Algorithmen zur Integer-Multiplikation

Darstellung von negativen binären Zahlen

Rechnerstrukturen, Teil 1

Das negative Zweierkomplementzahlensystem. Ines Junold 23. Februar 2010

Inhalt. Zahlendarstellungen

N Bit binäre Zahlen (signed)

Rechnerstrukturen, Teil 1. Vorlesung 4 SWS WS 14/15

Minimierung nach Quine Mc Cluskey

Integrierte Schaltungen

Das negative Zweierkomplementzahlensystem

G Zahlendarstellung und Rechnerarithmetik

Carry Lookahead Adder

Kapitel 6 - Addierwerke

Carry-Lookahead Addierer (CLA)

Aufgabe 1. Aufgabe 2. Abbildung 1: Schaltung für die Multiplikation mit 4

Informatik I Modul 5: Rechnerarithmetik (2)

Rechnerarithmetik. Vorlesung im Sommersemester Eberhard Zehendner. FSU Jena. Thema: Division

Multiplikation. Grundlagen der Rechnerarchitektur Logik und Arithmetik 79

II. Grundlagen der Programmierung

Zur Multiplikation von Gleitkommazahlen müssen die Mantissen inkl. führender 1, als Festkommazahlen multipliziert werden.

Multiplikation. Grundlagen der Rechnerarchitektur Logik und Arithmetik 79

Grundlagen der Rechnerarchitektur

Minimierung nach Quine Mc Cluskey

Übungen zur Vorlesung Technische Informatik I, SS 2001 Strey / Guenkova-Luy / Prager Übungsblatt 4 Zahlendarstellung/Rechenarithmetik/Rechenwerke

Teil V. Programmierbare Logische Arrays (PLAs)

Computerarithmetik (6a)

Zum Nachdenken. Welche Eigenschaften einer Vorzeichendarstellung. erreichen? Wie könnte man Vorzeichenzahlen darstellen?

Minimierung nach Quine Mc Cluskey Ermitteln der Primtermtabelle

Logische Bausteine. Addierwerke. Grundlagen der Rechnerarchitektur Logik und Arithmetik 48

Algorithmen zur Division

2 Initialisierung clk_mkand= clk_produkt= multiplexer= init/>>1= 6 Schieben clk_mkand= clk_produkt= multiplexer= init/>>1=

Digital Design 2 Schaltnetze (kombinatorische Logik) Digital Design

Teil 2: Rechnerorganisation

Teil 2: Rechnerorganisation

Rechnerstrukturen, Teil 1. Vorlesung 4 SWS WS 14/15

N Bit Darstellung von Gleitkommazahlen

Das Verfahren in Hardware

Computerarithmetik (1)

Control Beispiel. Control wird als kombinatorische Schaltung realisiert. Hierzu die Wahrheitstabelle: Control

Computer Arithmetik. Computer Arithmetik Allgemein

Einführung in die Informatik I

Outline Schieberegister Multiplexer Zähler Addierer. Rechenschaltungen. Marc Reichenbach und Michael Schmidt

Computerarithmetik (1)

14 Addierer und Subtrahierer

Speichern von Zuständen

Arithmetik. Zahlendarstellung, Addition und Subtraktion Multiplikation, Division, Fest- und Gleitkommazahlen

2. Vorzeichenbehaftete und vorzeichenlose Zahlen. 3.3 Beschleunigen der ganzzahligen Multiplikation - Booth s Algorithmus

Zahlen im Computer (Klasse 7 Aufbaukurs Informatik)

3.8 Sequentieller Multiplizierer 159

Logische Bausteine. Grundlagen der Rechnerarchitektur Logik und Arithmetik 31

Schaltnetz zur Addition n-bit langer Summanden. a 2 b 2. s 2

Programmieren 1 C Überblick

5. Computer Arithmetik. a i b i C in i-1 C out i s i. a b hc out hs. Addition mit Volladddierer (1 Bit) Halbadddierer (1 Bit) b c in.

Lösungsvorschlag 4. Übung Technische Grundlagen der Informatik II Sommersemester 2009

Rechnergrundlagen SS Vorlesung

Algorithmen zur Division

1. Grundlegende Konzepte der Informatik

Dokumentation der Assemblerroutinen

Isomorphismus. Definition Gruppen-Isomorphismus. Seien (G, +) und (G, ) Gruppen. Die Abbildung f : G G heißt Gruppen-Isomorphismus, falls gilt

Arithmetik. Einführung in die Technische Informatik Falko Dressler, Stefan Podlipnig Universität Innsbruck

Digitaltechnik Grundlagen 5. Elementare Schaltnetze

2.Vorlesung Grundlagen der Informatik

Rückblick. Zahlendarstellung zu einer beliebigen Basis b. Umwandlung zwischen Zahlendarstellung (214) 5 = (278) 10 =(?) 8

Multiplikationschip. Multiplikation. Beitrag zu "Werkstattunterricht Multiplikation" Allgemeine Didaktik - Seminar SS95. Oberwiesenstr.

Rechnerarithmetik. Vorlesung im Sommersemester Eberhard Zehendner. FSU Jena. Thema: Implementierung von Gleitkomma-Operationen

ALU ALU. ALU-Aufbau. Eine ALU (arithmetisch-logische Einheit) besteht in der Regel aus. Addierer. Logischer Einheit. Shifter

12. Tutorium Digitaltechnik und Entwurfsverfahren

3 Rechnen und Schaltnetze

G , Franz J. Hauck, Verteilte Systeme, Univ. Ulm, [2005s-TI1-G-Arith.fm, ]

Übungsaufgaben. - Vorgehensweise entsprechend dem Algorithmus der schriftlichen Multiplikation

Grundlagen der Rechnerarchitektur. Binäre Logik und Arithmetik

Problem: Keine Integers in JavaCard. ToDo: Rechnen mit Bytes und Shorts

2.1.2 Gleitkommazahlen

Vorwort Teil 1: Grundlagen 1. 1 Einleitung Grundbegriffe Einheiten Geschichte Arten von Computern 8

GTI ÜBUNG 12. Komparator und Addierer FRIEDRICH-ALEXANDER UNIVERSITÄT ERLANGEN-NÜRNBERG JAN SPIECK 1

3 Arithmetische Schaltungen

3.1 Schaltungselemente 129. b) Tragen Sie in nachfolgende Abbildung die Realisierung eines 1 Bit 4-auf-1 Multiplexers aus Logikgattern ein.

Mikroarchitekturen. Peter Marwedel Informatik 12 TU Dortmund 2013/07/16. technische universität dortmund. fakultät für informatik informatik 12

Rechnerstrukturen WS 2012/13

Assembler Integer-Arithmetik

Zahlendarstellungen und Rechnerarithmetik*

Inhaltsangabe 3.1 Zahlensysteme und Darstellung natürlicher Zahlen Darstellung ganzer Zahlen

Rechnerarithmetik. Vorlesung im Sommersemester Eberhard Zehendner. FSU Jena. Thema: Addition/Subtraktion

Grundlagen der Technischen Informatik

Seminararbeit Sommersemester 2017

FAKULTÄT FÜR INFORMATIK

Grundlagen der Technischen Informatik. 4. Übung

Grundlagen der Technischen Informatik. 4. Übung

Kap.2 Befehlsschnittstelle. Prozessoren, externe Sicht

ARM-Cortex-M4 / Thumb-2-Befehlssatz Adressierungsarten und arithmetische Operationen

Transkript:

Multiplizierer 1 Beispiel komplexer arithmetischer Schaltung Langsamer als Addition, braucht mehr Platz Sequentielle Multiplikation Kompakte kombinatorische Variante mit Carry-Save-Adders (CSA) Vorzeichenbehaftete Multiplikation mit Booth-Algorithmus Digitaltechnik #252-14- Sommersemester 24 Armin Biere ETH Zürich

Schulalgorithmus zur Multiplikation 2 B A Partielle Summe + 1 1 1 * 1 1 1 + 1 1 1 + 1 1 1 1 1 1 + 1 1 1 1 1 1 1 Resultat 1 1 1 1 1 Digitaltechnik #252-14- Sommersemester 24 Armin Biere ETH Zürich

Einfacher Multiplizierer 3 5 B A 5 5 Bit Addierer 5 5 Bit Addierer 5 5 Bit Addierer 5 5 Bit Addierer 5 Resultat Digitaltechnik #252-14- Sommersemester 24 Armin Biere ETH Zürich

Ad: Einfacher Multiplizierer 4 n n Multiplikation: Eingabe: zwei n Bit Vektoren Ausgabe: 2 n Bit-Vektor benützt n 1 seriell geschaltete Addierer Annahme CLA Adder Zeit: O(n logn) Platz: O(n 2 ) Gatter, Fläche O(n 2 logn) Digitaltechnik #252-14- Sommersemester 24 Armin Biere ETH Zürich

Sequentielle Version 5 Shiften C P A n n 1 n n n n Bit Addierer n B Digitaltechnik #252-14- Sommersemester 24 Armin Biere ETH Zürich

Sequentieller Algorithmus 6 1. Obere Hälfte P der partiellen Summe mit initialisieren 2. Erster Operand ins B Register 3. Zweiter Operand ins A Register (untere Hälfte der partiellen Summe) 4. Für jeden der n Multiplikationsschritte: (a) LSB von A gleich 1, dann Addiere B zu P (ansonsten ) (b) Shiebe (C,P,A) nach rechts (C ist Carry des Addierers) 5. Result findet sich in (P,A) Digitaltechnik #252-14- Sommersemester 24 Armin Biere ETH Zürich

Sequentielle Multiplikation von 7 und 5 7 C P A 11 Schreibe 7 = 111 2 nach B und 5 = 11 2 nach A + 111 A = 1 also Addiere B = 111 2 111 11 11 11 Shiften (A gebraucht, fällt also raus) + A 1 = also Addiere 11 11 1 111 Shiften (A 1 gebraucht, fällt also raus) + 111 A 2 = 1 also Addiere B = 111 2 1 11 1 11 Shiften, Resultat ist 111 2 = 35 Digitaltechnik #252-14- Sommersemester 24 Armin Biere ETH Zürich

Probleme mit Vorzeichen 8 Multiplikation von 3 und 7 gibt natürlich 21 4-Bit Zweierkomplement: 3 111 2, 7 11 2 als unsigned 4-Bit Zahlen sind das 13 bzw. 9 Multiplikation von 13 und 9 ergibt 117 8-Bit Zweierkomplement: 21 111 2, 117 11111 2 Multiplikation gibt es mit oder ohne Vorzeichen (signed oder unsigned)! Digitaltechnik #252-14- Sommersemester 24 Armin Biere ETH Zürich

Einfache Multiplikation mit Vorzeichen 9 1. Konvertierung der beiden Operanden in positive Zahlen 2. Speichern der urspünglichen Vorzeichen 3. Unsigned Multiplikation der Konvertierten Zahlen 4. Berechnung des Resultats-Vorzeichen aus gespeicherten Vorzeichen (negativ gdw. ursprüngliche Operanden hatten komplementäres Vorzeichen) 5. eventuell Negation des Ergebnisses bei negativem Resultats-Vorzeichen Digitaltechnik #252-14- Sommersemester 24 Armin Biere ETH Zürich

Booth Recoding 1 Erste Beobachtung: PA ist auch signed! Verwende Arithmetisches Shift statt Logischem (schiebe beim Shift Vorzeichen-Bit nach, statt dem Carry) Verwende folgende Addition/Subtraktion Regeln (A 1 = ): 1. addiere zu P wenn A i = und A i 1 = 2. addiere B zu P wenn A i = und A i 1 = 1 3. subtrahiere B von P wenn A i = 1 und A i 1 = 4. addiere zu P wenn A i = 1 und A i 1 = 1 Digitaltechnik #252-14- Sommersemester 24 Armin Biere ETH Zürich

Booth Multiplikation von 6 und 5 11 P A 11 Schreibe 6 = 11 2 nach A und 5 = 111 nach B 11 A = A 1 = ergibt mit Regel 1 Addition von 11 Shiften 111 A 1 = 1, A = ergibt mit Regel 3 Subtraktion von B +11 Zweierkomplement von 111 2 ist 11 2 11 11 1 11 Shiften +111 A 2 =, A 1 = 1 ergibt mit Regel 2 Addition von B 111 11 111 111 Shiften (arithmetisch!) 111 A 3 = 1, A 2 = ergibt mit Regel 3 Subtraktion von B +11 Zweierkomplement von 111 2 ist 11 2 11 111 Shiften (arithmetisch!) 1 111 Shiften, Resultat is 1111 2 = 3 Digitaltechnik #252-14- Sommersemester 24 Armin Biere ETH Zürich

Hintergrund Booth Multiplikation 12 Da jedesmal B (A i 1 A i ) zum partiellen Produkt addiert wird, erhält man die Teleskopsumme B n 1 B (A i 1 A i ) 2 i i= ) ( A n 1 2 n 1 + A n 2 2 n 2 + + A 1 2 + A + B A 1 Integer-Konvertierung einer n-bit Zahl A im Zweierkomplement: A n 1 2 n 1 + A n 2 2 n 2 + + A 1 2 + A (z.b. 3 = 11 2 = 111 2 = 2 3 + 5) Digitaltechnik #252-14- Sommersemester 24 Armin Biere ETH Zürich

Carry-Save-Adder (CSA) 13 Idee: keine Carry Propagierung bei der Multiplikation Unabhängige Volladdierer (Full Adder = FA) Carry-In wird von vorheriger Berechnung genommen Carry-Out wird gespeichert für nachfolgende Berechnung Man spart Propagation durch min. Ω(log n) Logik-Level beim CLA Wesentlich kürzere Multiplikationschritte Digitaltechnik #252-14- Sommersemester 24 Armin Biere ETH Zürich

Sequentieller Multiplizierer mit CSA 14 P A Summe Carries FA FA FA FA Volladdierer C i C i +1 A i FA S i B i B Nach n Schritten muss noch die Summe und die Carries addiert werden. Digitaltechnik #252-14- Sommersemester 24 Armin Biere ETH Zürich

Kombinatorischer Multiplizierer mit CSA 15 B 4 A B 3 A B 2 A B 1 A B A CSA CSA CSA Ausrollen des sequentiellen CSA und direktes Verbinden der Carries Propagate Adder Digitaltechnik #252-14- Sommersemester 24 Armin Biere ETH Zürich

Zusammenfassung Multiplizierer 16 Multiplikation braucht Platz oder Zeit Carry-Save-Adder braucht kein Rippeln (sequentiell und kombinatorisch) Vorzeichen mit Booth-Recoding behandeln! Weitere Operationen wie Division haben ähnliche Trade-Offs Digitaltechnik #252-14- Sommersemester 24 Armin Biere ETH Zürich