grundlagen der technischen informatik 11. Übungej39evyx/gti/ws1112/uebung... · 11. Übungsblatt...
TRANSCRIPT
Grundlagen der Technischen Informatik
11. Übung
Christian Knell
Keine Garantie für Korrekt-/Vollständigkeit
Übung zu Grundlagen der Technischen Informatik
11. Übungsblatt – Themen
Aufgabe 1: Komparator
Aufgabe 2: Addierer / Subtrahierer
Aufgabe 3: Mehr-Operanden-Addierer
Übung zu Grundlagen der Technischen Informatik
11. Übungsblatt – Aufgabe 1
a) Entwickeln Sie eine digitale Schaltung, die zwei Bits a und b
miteinander vergleicht. Die Schaltung besitzt 3 Ausgänge:
‘<‘ ist logisch ‘1‘, genau dann, wenn a < b. Entsprechend ist
‘>‘ genau dann ‘1‘, wenn a > b. Der Ausgang ‘=‘ soll genau
dann eine ‘1‘ anzeigen, wenn a und b gleich sind.
(Hinweis: Beginnen Sie mit einer Funktionstabelle)
b) Die Schaltung aus a) wird als ‘Black-Box‘ mit den Eingängen
a und b und den Ausgängen ‘<‘, ‘>‘ und ‘=‘ betrachtet.
Bestimmen Sie ein Komparator-Schaltnetz für vorzeichenlose
zweistellige Binärzahlen unter Verwendung von
1-Bit-Komparatoren aus Teilaufgabe a). Darauf aufbauend
soll nun ein Komparator für zwei 4-Bit-Binärzahlen A = a3…a0
und B = b3…b0 aufgebaut werden.
Übung zu Grundlagen der Technischen Informatik
11. Übungsblatt – Aufgabe 1
a) Entwickeln Sie eine digitale Schaltung, die zwei Bits a und b
miteinander vergleicht. Die Schaltung besitzt 3 Ausgänge:
‘<‘ ist logisch ‘1‘, genau dann, wenn a < b. Entsprechend ist
‘>‘ genau dann ‘1‘, wenn a > b. Der Ausgang ‘=‘ soll genau
dann eine ‘1‘ anzeigen, wenn a und b gleich sind.
(Hinweis: Beginnen Sie mit einer Funktionstabelle)
→
Übung zu Grundlagen der Technischen Informatik
a b < > =
0 0 0 0 1
0 1 1 0 0
1 0 0 1 0
1 1 0 0 1
ba''
11. Übungsblatt – Aufgabe 1
a) Entwickeln Sie eine digitale Schaltung, die zwei Bits a und b
miteinander vergleicht. Die Schaltung besitzt 3 Ausgänge:
‘<‘ ist logisch ‘1‘, genau dann, wenn a < b. Entsprechend ist
‘>‘ genau dann ‘1‘, wenn a > b. Der Ausgang ‘=‘ soll genau
dann eine ‘1‘ anzeigen, wenn a und b gleich sind.
(Hinweis: Beginnen Sie mit einer Funktionstabelle)
→
Übung zu Grundlagen der Technischen Informatik
a b < > =
0 0 0 0 1
0 1 1 0 0
1 0 0 1 0
1 1 0 0 1
ba''
11. Übungsblatt – Aufgabe 1
a) Entwickeln Sie eine digitale Schaltung, die zwei Bits a und b
miteinander vergleicht. Die Schaltung besitzt 3 Ausgänge:
‘<‘ ist logisch ‘1‘, genau dann, wenn a < b. Entsprechend ist
‘>‘ genau dann ‘1‘, wenn a > b. Der Ausgang ‘=‘ soll genau
dann eine ‘1‘ anzeigen, wenn a und b gleich sind.
(Hinweis: Beginnen Sie mit einer Funktionstabelle)
→
Übung zu Grundlagen der Technischen Informatik
a b < > =
0 0 0 0 1
0 1 1 0 0
1 0 0 1 0
1 1 0 0 1
bababaab ''
11. Übungsblatt – Aufgabe 1
a) Entwickeln Sie eine digitale Schaltung, die zwei Bits a und b
miteinander vergleicht. Die Schaltung besitzt 3 Ausgänge:
‘<‘ ist logisch ‘1‘, genau dann, wenn a < b. Entsprechend ist
‘>‘ genau dann ‘1‘, wenn a > b. Der Ausgang ‘=‘ soll genau
dann eine ‘1‘ anzeigen, wenn a und b gleich sind.
Übung zu Grundlagen der Technischen Informatik
baba ''
ba''
ba''
11. Übungsblatt – Aufgabe 1
b) Die Schaltung aus a) wird als ‘Black-Box‘ mit den Eingängen
a und b und den Ausgängen ‘<‘, ‘>‘ und ‘=‘ betrachtet.
Bestimmen Sie ein Komparator-Schaltnetz für vorzeichenlose
zweistellige Binärzahlen unter Verwendung von
1-Bit-Komparatoren aus Teilaufgabe a). Darauf aufbauend
soll nun ein Komparator für zwei 4-Bit-Binärzahlen A = a3…a0
und B = b3…b0 aufgebaut werden.
1. Erweiterung auf 2 Bit
Übung zu Grundlagen der Technischen Informatik
11. Übungsblatt – Aufgabe 1
b) 1. Erweiterung auf 2 Bit
→ A > B, wenn entweder:
(1) a1 > b1
(2) a1 = b1 & a0 > b0
→ A < B, wenn entweder:
(1) a1 < b1
(2) a1 = b1 & a0 < b0
→ A = B, wenn:
(1) a1 = b1 & a0 = b0
Übung zu Grundlagen der Technischen Informatik
11. Übungsblatt – Aufgabe 1
b) 1. Erweiterung auf 2 Bit
→ entspricht einer Kaskadierung des Komparators
Übung zu Grundlagen der Technischen Informatik
11. Übungsblatt – Aufgabe 1
b) 2. Erweiterung auf 4 Bit = Kaskadierung des Verfahrens
→ baumartig
Übung zu Grundlagen der Technischen Informatik
11. Übungsblatt – Aufgabe 1
b) 2. Erweiterung auf 4 Bit = Kaskadierung des Verfahrens
→ Kettenprogression
Übung zu Grundlagen der Technischen Informatik
11. Übungsblatt – Aufgabe 2
a) Realisieren Sie einen Halbaddierer mit Hilfe von NAND-
Gattern. Realisieren Sie einen Volladdierer mit Hilfe von
NAND-Gattern. Bestimmen Sie jeweils die Anzahl der
verwendeten Gatter und die Anzahl der Gatter des kritischen
Pfades.
b) Erstellen Sie aus den Volladdiererzellen aus a) einen
Carry-Ripple-Addierer für 4-Bit breite Operanden
(a3…a0 + b3…b0 + cin = couts3…s0. Wie viele Gatter enthält
nun der kritische Pfad des gesamten Schaltnetzes?
Übung zu Grundlagen der Technischen Informatik
11. Übungsblatt – Aufgabe 2
a) Realisieren Sie einen Halbaddierer mit Hilfe von NAND-
Gattern.
Halbaddierer:
summieren die beiden Eingangsbits ai und bi und
legen die Summe auf den Ausgang si
zusätzlich wird ein Übertragungsbit ci+1 erzeugt
Übung zu Grundlagen der Technischen Informatik
11. Übungsblatt – Aufgabe 2
a) Realisieren Sie einen Halbaddierer mit Hilfe von NAND-
Gattern.
Halbaddierer:
→
Übung zu Grundlagen der Technischen Informatik
ai bi si ci+1
0 0 0 0
0 1 1 0
1 0 1 0
1 1 0 1
iiiii babas
11. Übungsblatt – Aufgabe 2
a) Realisieren Sie einen Halbaddierer mit Hilfe von NAND-
Gattern.
Halbaddierer:
→
Übung zu Grundlagen der Technischen Informatik
ai bi si ci+1
0 0 0 0
0 1 1 0
1 0 1 0
1 1 0 1
iii bac 1
11. Übungsblatt – Aufgabe 2
a) Realisieren Sie einen Halbaddierer mit Hilfe von NAND-
Gattern.
→
Übung zu Grundlagen der Technischen Informatik
iiiii babas
))(())(( iiiiii bbabaa
)()( iiii baba
iiiii babas
11. Übungsblatt – Aufgabe 2
a) Realisieren Sie einen Halbaddierer mit Hilfe von NAND-
Gattern.
→
Übung zu Grundlagen der Technischen Informatik
iii bac 1
iii bac 1
)()( iiii baba
11. Übungsblatt – Aufgabe 2
a) Realisieren Sie einen Halbaddierer mit Hilfe von NAND-
Gattern.
→
→
Übung zu Grundlagen der Technischen Informatik
))(())(( iiiiiii bbabaas
)()(1 iiiii babac
11. Übungsblatt – Aufgabe 2
a) Bestimmen Sie jeweils die Anzahl der verwendeten Gatter
und die Anzahl der Gatter des kritischen Pfades.
→ Beim Halbaddierer liegt ein gültiges cout-Signal nach 2
und ein s-Signal nach 3 Gatterlaufzeiten am Ausgang an.
→ Es genügen 5 Gatter zur Realisierung eines HAs.
Übung zu Grundlagen der Technischen Informatik
11. Übungsblatt – Aufgabe 2
a) Bestimmen Sie jeweils die Anzahl der verwendeten Gatter
und die Anzahl der Gatter des kritischen Pfades.
→ optimale Implementierung:
Übung zu Grundlagen der Technischen Informatik
11. Übungsblatt – Aufgabe 2
a) Realisieren Sie einen Volladdierer mit Hilfe von NAND-
Gattern.
Volladdierer:
besitzen zusätzliche einen Übertragungseingang und
sind somit in der Lage, vorhergehende Stellen in die
Berechnung einzubeziehen
Übung zu Grundlagen der Technischen Informatik
11. Übungsblatt – Aufgabe 2
a) Realisieren Sie einen Volladdierer mit Hilfe von NAND-
Gattern.
Volladdierer:
Einen Volladdierer erhält man durch Verschachtelung zweier
Halbaddierer
Übung zu Grundlagen der Technischen Informatik
11. Übungsblatt – Aufgabe 2
a) Bestimmen Sie jeweils die Anzahl der verwendeten Gatter
und die Anzahl der Gatter des kritischen Pfades.
→ Beim Volladdierer liegt ein gültiges cout-Signal nach 5 und
ein s-Signal nach 6 Gatterlaufzeiten am Ausgang an.
→ Es genügen 9 Gatter zur Realisierung eines VAs
Übung zu Grundlagen der Technischen Informatik
11. Übungsblatt – Aufgabe 2
b) Erstellen Sie aus den Volladdiererzellen aus a) einen
Carry-Ripple-Addierer für 4-Bit breite Operanden
(a3…a0 + b3…b0 + cin = couts3…s0. Wie viele Gatter enthält
nun der kritische Pfad des gesamten Schaltnetzes?
Carry-Ripple-Addierer:
Hintereinanderschaltung von Volladdierern
Übung zu Grundlagen der Technischen Informatik
11. Übungsblatt – Aufgabe 2
b) Erstellen Sie aus den Volladdiererzellen aus a) einen
Carry-Ripple-Addierer für 4-Bit breite Operanden
(a3…a0 + b3…b0 + cin = couts3…s0. Wie viele Gatter enthält
nun der kritische Pfad des gesamten Schaltnetzes?
→ Die Gesamtlaufzeit beträgt 12 Gatterlaufzeiten für s3 und
11 Gatterlaufzeiten für cout
Übung zu Grundlagen der Technischen Informatik
11. Übungsblatt – Aufgabe 2
b) Erstellen Sie aus den Volladdiererzellen aus a) einen
Carry-Ripple-Addierer für 4-Bit breite Operanden
(a3…a0 + b3…b0 + cin = couts3…s0. Wie viele Gatter enthält
nun der kritische Pfad des gesamten Schaltnetzes?
Übung zu Grundlagen der Technischen Informatik
11. Übungsblatt – Aufgabe 2
c) Der Addierer aus b) soll nun als Block dargestellt werden und
so erweitert werden, dass er durch ein zusätzliches Steuerbit
auch subtrahieren kann (durch Umwandlung von B
in das 1er-Komplement). Dazu stehen Ihnen beliebige Gatter
zur Verfügung. Beachten Sie:
Erzeugung negativer Zahlen (Komplementierer)
Behandlung des Übertrags
Erkennung eines Überlaufs (Overflow)
d) Führen Sie den Schritt c) für eine Recheneinheit durch, die B
in Abhängigkeit von in das Zweierkomplement
umwandelt.
Übung zu Grundlagen der Technischen Informatik
/SubAdd
/SubAdd
11. Übungsblatt – Aufgabe 2
c) Erzeugung negativer Zahlen (Komplementierer)
→ Die Komplementbildung erfolgt durch XOR-Gatter die als
steuerbarer Inverter arbeiten.
Übung zu Grundlagen der Technischen Informatik
11. Übungsblatt – Aufgabe 2
c) Behandlung des Übertrags
→ Das auflaufende Carry muss auf die niederwertigste
Stelle addiert werden (End-Around-Carry EAC)
→ Das ist nötig, da die ‘0‘ in der B-1-Darstellung durch 0000
und 1111 codiert wird
Übung zu Grundlagen der Technischen Informatik
11. Übungsblatt – Aufgabe 2
c) Erkennung eines Überlaufs (Overflow)
→ Die Overflow Logik prüft ob bei gleichen
Eingangsvorzeichenbits (a3, b3) das
Ergebnisvorzeichenbit (s3) verschieden ist
Übung zu Grundlagen der Technischen Informatik
11. Übungsblatt – Aufgabe 2
c) …durch ein zusätzliches Steuerbit auch
subtrahieren kann (durch Umwandlung von B in das 1er-
Komplement).
Übung zu Grundlagen der Technischen Informatik
/SubAdd
11. Übungsblatt – Aufgabe 2
d) Führen Sie den Schritt c) für eine Recheneinheit durch, die B
in Abhängigkeit von in das Zweierkomplement
umwandelt.
→ Das Aufsummieren der ‘1‘ erfolgt unter Verwendung des
cin-Eingangs
Übung zu Grundlagen der Technischen Informatik
/SubAdd
11. Übungsblatt – Aufgabe 2
d) Führen Sie den Schritt c) für eine Recheneinheit durch, die B
in Abhängigkeit von in das Zweierkomplement
umwandelt.
Übung zu Grundlagen der Technischen Informatik
/SubAdd
11. Übungsblatt – Aufgabe 3
In dieser Aufgabe soll ein Schaltnetz für
die Addition von 4 Summanden (u, v, w, x)
erstellt werden, das beispielsweise für
die Addition von Teilprodukten eines
Multiplizierers benutzt werden könnte.
Eine mögliche Lösung besteht darin, zuerst u + v und w + x mit
Hilfe je eines Carry-Ripple-Addierers zu berechnen. Die
Teilsummen werden dann baumartig zu dem Endergebnis
zusammenaddiert. Wie viele NAND-Gatterverzögerungszeiten
umfasse dann der kritische Pfad minimal, wenn nur die in
Aufgabe 2a) entworfenen Volladdierer verwendet werden dürfen?
Übung zu Grundlagen der Technischen Informatik
u3 u2 u1 u0
+ v3 v2 v1 v0
+ w3 w2 w1 w0
+ x3 x2 x1 x0
s5 s4 s3 s2 s1 s0
11. Übungsblatt – Aufgabe 3
Eine mögliche Lösung besteht darin, zuerst u + v und w + x mit
Hilfe je eines Carry-Ripple-Addierers zu berechnen. Die
Teilsummen werden dann baumartig zu dem Endergebnis
zusammenaddiert. Wie viele NAND-Gatterverzögerungszeiten
umfasse dann der kritische Pfad minimal, wenn nur die in
Aufgabe 2a) entworfenen Volladdierer verwendet werden dürfen?
Übung zu Grundlagen der Technischen Informatik
11. Übungsblatt – Aufgabe 3
Eine mögliche Lösung besteht darin, zuerst u + v und w + x mit
Hilfe je eines Carry-Ripple-Addierers zu berechnen. Die
Teilsummen werden dann baumartig zusammenaddiert.
Übung zu Grundlagen der Technischen Informatik
11. Übungsblatt – Aufgabe 3
Wie viele NAND-Gatterverzögerungszeiten
umfasse dann der kritische Pfad minimal, wenn nur die in
Aufgabe 2a) entworfenen Volladdierer verwendet werden dürfen?
Übung zu Grundlagen der Technischen Informatik
11. Übungsblatt – Aufgabe 3
→ Die Zahlen unter den VAs geben die jeweils größte NAND-
Gatterverzögerungszeit an.
Übung zu Grundlagen der Technischen Informatik
11. Übungsblatt
Danke für die
Aufmerksamkeit
Übung zu Grundlagen der Technischen Informatik