Digitale Schaltungstechnik/ Addierer/ BCD

Aus testwiki
Version vom 27. März 2016, 08:14 Uhr von imported>MichaelFrey
(Unterschied) ← Nächstältere Version | Aktuelle Version (Unterschied) | Nächstjüngere Version → (Unterschied)
Zur Navigation springen Zur Suche springen

Digitale Schaltungstechnik/ Navigation

Aufgabe

Gegeben sei die folgende Aufgabe:

Wir wollen die beiden 4-Bit BCD-Zahlen genannt "A" und "B" addieren und das Resultat soll wieder eine BCD-Zahl sein.

Dazu haben wir zwei 4-Bit Binäraddierer, sowie konventionelle Logik zur Hand.

Der Aufbau soll im Blockdiagramm etwa so aussehen:

Blockdiagramm

Vorlage:Clear

Lösungsansatz

Wenn das Resultat kleiner oder gleich 9 (1001b), müssen wir nichts tun. Wenn das Resultat 10 oder grösser ist, fügen wir 6 (110b) hinzu.

Da die beiden Eingangszahlen selber schon BCD sind, muss die Korrekturlogik nur Zahlen von 0 (0+0) bis 18 (9+9) berücksichtigen.

Wahrheitstabelle

Dez. Eingang der
Korrekturlogik
Korr. Ausgang der
Korrekturlogik
C4 C3 C2 C1 C0 D4 D3 D2 D1 D0
0 0 0 0 0 0 +0 0 0 0 0 0
1 0 0 0 0 1 +0 0 0 0 0 1
2 0 0 0 1 0 +0 0 0 0 1 0
3 0 0 0 1 1 +0 0 0 0 1 1
4 0 0 1 0 0 +0 0 0 1 0 0
5 0 0 1 0 1 +0 0 0 1 0 1
6 0 0 1 1 0 +0 0 0 1 1 0
7 0 0 1 1 1 +0 0 0 1 1 1
8 0 1 0 0 0 +0 0 1 0 0 0
9 0 1 0 0 1 +0 0 1 0 0 1
10 0 1 0 1 0 +6 1 0 0 0 0
11 0 1 0 1 1 +6 1 0 0 0 1
12 0 1 1 0 0 +6 1 0 0 1 0
13 0 1 1 0 1 +6 1 0 0 1 1
14 0 1 1 1 0 +6 1 0 1 0 0
15 0 1 1 1 1 +6 1 0 1 0 1
16 1 0 0 0 0 +6 1 0 1 1 0
17 1 0 0 0 1 +6 1 0 1 1 1
18 1 0 0 1 0 +6 1 1 0 0 0

Die Korrekturlogik muss also bewirken, dass zum Resultat nochmal 6 dazu addiert werden und zwar dann wenn

X=C3C1C3C2C4

Zusätzlich müssen wir den Übertrag handhaben.

Schaltung

Bei diesem Schema wurde bereits auf die schaltungstechnische Realisierung geachtet. Die Ein- und Ausgänge sind mit Pinnummern versehen und nicht belegte Eingänge mit definiertem Potential (hier Ground also Masse) verbunden.

fertige Bausteine

Wie so oft, gibt es auch hierfür eine fertige Lösung: 74HCT583[1]