Fachhochschule Regensburg Fachbereich Elektrotechnik 1. Übung aus Digitaltechnik 2 1. Aufgabe Die folgende CMOS-Anordnung weist einen Fehler auf: A B C p p p Y VDD a) Worin besteht der Fehler? b) Bei welcher Eingangskombination von A,B,C tritt der Fehler auf? c) Was passiert bei den anderen Kombinationen? d) Welches Gatter ergibt sich, wenn der Fehler behoben wird? n n VSS Lösungen DT2 1 Kohlert
2. Aufgabe Gegeben sei die folgende Anordnung aus Invertern und Transmission-Gates: A B 1 1 a) Welche logische Funktion wird durch die Anordnung realisiert? b) Wie müßte eine Realisierung ohne Transmission-Gates (mit üblichen Gattern) aussehen? c) Wieviele Transistoren würde diese Realisierung benötigen? Y Lösungen DT2 2 Kohlert
3. Aufgabe Realisieren Sie die dargestellte logische Funktion als Complex-Gate, also ohne hintereinandergeschaltete Gatter: Lösungen DT2 3 Kohlert
Lösungen DT2 4 Kohlert
Lösungen DT2 5 Kohlert
Lösungen DT2 6 Kohlert
Lösungen DT2 7 Kohlert
Lösungen DT2 8 Kohlert
Lösungen DT2 9 Kohlert
Lösungen DT2 10 Kohlert
Lösungen DT2 11 Kohlert
2. Aufgabe Vcc = 0V Welche logische Funktion wird durch die nebenstehende ECL-Schaltung realisiert? A Vref1 Y,A2 B0C B C Vref2 Iq Vee = -5.2V Lösungen DT2 12 Kohlert
3. Aufgabe Welche Funktion wird durch die folgende ECL- Schaltung realisiert? A C C Vcc T1 B VEE 4. Aufgabe T2 T3 T4 Vref Iq T5 C=1: Latch ist transparent C=0: Latch speichert Q Q C,1 C,0: Stromfluss nur über T1,T2 oder T3 möglich, T4, T5 ohne Einfluss => Q,A0B C,0 C,1: Q,A0B Rückgekoppelter Inverter(Latch): Alter Zustand wird gespeichert => Ersatzschaltung: A B C 1 D Q Latch CK Q D 1 CK 1 1 & & & & Q Q Die nebenstehende D-Latch-Schaltung soll mit Hilfe von I 2 L-Gattern realisiert werden. a) Zeichnen Sie die Schaltung um, indem Sie die I 2 L- typischen NAND-Gatter mit mehreren Ausgängen verwenden! D G1 G4 G2 G5 G3 Q Q b) Zeichnen Sie die Schaltung auf Transistor-Ebene! CK G7 G6 Q Q Ucc D Gnd G1 G2 G3 G4 G5 G6 G7 CK Lösungen DT2 13 Kohlert
Fachhochschule Regensburg Fachbereich Elektrotechnik 6. Übung aus Digitaltechnik 2 /Lösung Blatt 1 1. Aufgabe X3 X2 X1 X0 LD_SH_X LD/SH Par_In Par_In Par_In Par_In X-Register CK Q Q Q Q QX3 QX2 QX1 QX0 Volladdierer A S B VA Cin Co CK Ser_In Q Summenregister Q Q Q Y3 Y2 Y1 Y0 S3 S2 S1 S0 LD_SH_Y CK LD/SH CK Par_In Q QY3 Par_In Q QY2 Par_In Q QY1 Par_In Q QY0 Y-Register Res_C D Q DFF CK Q Res C4 Die obige Schaltung zeigt einen seriellen 4Bit-Addierer. Die Register X und Y stellen parallel ladbare Schieberegister dar. Für LD/SH = 1 wird der parallel anstehende Wert in das Register übernommen, für LD/SH =0 wird der Inhalt jeweils um eine Stelle nach rechts verscho-ben. Beide Aktionen finden nur statt, wenn gleichzeitig das Steuersignal ansteht und eine ansteigende CK-Flanke auftritt. a) Zeichnen Sie den inneren Aufbau dieser Register (Gatterebene)! LD/SH D3 D2 D1 D0 "0" CK Sel 0 Mux 1 Sel D Q 0 Mux DFF 1 CK Q Q3 D Q DFF CK Q Q2 Sel 0 Mux 1 D Q DFF CK Q Q1 Sel 0 Mux 1 D Q DFF CK Q Q0 Das Summenregister ist ein reines Schieberegister. Wie bei jedem Schieberegister können die eingeschobenen Daten parallel entnommen werden. Die beiden Summanden X und Y werden zunächst parallel in das X- bzw. Y-Register eingeschrieben (Steuersignal LDX,LDY). Durch entsprechendes Weiterschieben der Summanden können die Bits der Summanden im Volladdierer der Reihe nach aufaddiert werden, wobei der Übertrag in einem D-Flipflop zwischengespeichert wird. Mit Hilfe des Steuersignals RES_C wird das Übertragsflipflop zurückgesetzt. Lösungen DT2 14 Kohlert
6. Übung aus Digitaltechnik 2 /Lösung Blatt 2 b) Zeichnen Sie ein komplettes Timing der Anordnung. Der Zeitpunkt des Anlegens der Daten X und Y ist frei wählbar. Die Steuersignale und die Daten sollen so angelegt werden, daß eine 4-Bit-Addition durchgeführt wird. Alle Steuersignale sollen ebenfalls taktsynchron sein, d.h. sie können sich nur als Reaktion auf eine ansteigende Taktflanke ändern (vollsynchrones Design). CK LD_SH_X X3..X0 DX3.. 0 XX QX3 XXX DX3 0 QX2 XXX DX2 DX3 0 QX1 XXX DX1 DX2 DX3 0 QX0 XXX DX0 DX1 DX2 DX3 0 LD_SH_Y Y3..Y0 DY3.. 0 XXX QY3 XXX DY3 0 QY2 XXX DY2 DY3 0 QY1 XXX DY1 DY2 DY3 0 QY0 XXX DY0 DY1 DY2 DY3 0 S XXX S0 S1 S2 S3 CO XXX C1 C2 C3 C4 Res_C CIN=C4 C1 C2 C3 C4 S3 XXX S0 S1 S2 S3 S2 XXX S0 S1 S2 S1 XXX S0 S1 S0 XXX S0 c) Wie viele Taktperioden werden für eine 4-Bit-Addition benötigt? Siehe Timing: 5 Taktperioden: 1* Laden, 4* Addieren d) Werden wirklich für jedes Register getrennte Steuersignale benötigt, oder können Steuersignale zusammengelegt werden? LD_SH_X, LD_SH_Y, Res_C haben den gleichen Zeitverlauf, daher reicht ein Steuersignal zur Einleitung einer neuen Addition. e) Was müßte verändert werden, um den Addierer zum 8-Bit-Addierer zu erweitern? Die Register müssten jeweils 8 Bit lang werden; das Ergebnis würde dann 8 Schiebetakte nach dem Laden der Summanden im Summenregister stehen. Lösungen DT2 15 Kohlert
Lösungen DT2 16 Kohlert
Lösungen DT2 17 Kohlert
Lösungen DT2 18 Kohlert
Lösungen DT2 19 Kohlert
Lösungen DT2 20 Kohlert
Lösungen DT2 21 Kohlert
Lösungen DT2 22 Kohlert
Lösungen DT2 23 Kohlert
Lösungen DT2 24 Kohlert
Lösungen DT2 25 Kohlert
Lösungen DT2 26 Kohlert
Lösungen DT2 27 Kohlert
Fachhochschule Regensburg Fachbereich Elektrotechnik 9. Übung aus Digitaltechnik 2 / Lösung 1. Aufgabe Der Befehl AND des in der Vorlesung behandelten Mikroprozessors soll in allen möglichen Adressierungsarten realisiert werden. a) Schreiben die zu jedem Befehl gehörigen Mikroprogramme in Registertransfersprache! AND,short,direct,adr Bedeutung: Bilde die UND-Verknüpfung des Akku-Inhaltes mit demjenigen Datenwort, das unter der Adresse adr im Speicher steht. adr ist eine Adresse zwischen 0 und 1023. Der Befehl benötigt nur 1 16-Bit-Wort. RTL-Programm: AC PC ;Befehl holen IR [ AR] PC PC+1 ; DECODE ;Dekodieren ARH 0 ARL IR(9..0) ;Daten aus effektiver Adresse DR M[AR] ;holen AC DR & AC ;UND-Verknüpfung ausführen AND,long,direct,adr Bedeutung: Bilde die UND-Verknüpfung des Akku-Inhaltes mit demjenigen Datenwort, das unter der Adresse adr im Speicher steht. adr ist eine beliebige 26-bit-Adresse. Der Befehl benötigt 2 16-Bit-Worte. RTL-Programm: AC PC ;Befehl holen IR [ AR] PC PC+1 ; DECODE ;Dekodieren AR PC ;2. Teil der Adresse DR M[AR] PC PC+1 ;holen ARH DR ; ARL IR(9..0) ;Daten aus effektiver Adresse DR M[AR] ;holen AC DR & AC ;UND-Verknüpfung ausführen ------------------------------------------------------------------------- Lösungen DT2 28 Kohlert
AND,long,indirect,adr Bedeutung: Bilde die UND-Verknüpfung des Akku-Inhaltes mit demjenigen Datenwort, dessen Adresse unter der Adresse adr bzw adr+1 im Speicher steht. adr ist eine beliebige 26-bit-Adresse. Der Befehl benötigt 2 16-Bit-Worte. RTL-Programm: AC PC ;Befehl holen IR [ AR] PC PC+1 ; DECODE ;Dekodieren AR PC ;2. Teil der Adresse adr DR M[AR] PC PC+1 ;holen ARH DR ;Effektive Adresse ARL IR(9..0) ; (Adresse des Operanden) DR M[AR] ;holen (untere 16 Bit, nur 10 davon relevant) AR AR+1 ;obere 16 Bit der effektiven Adresse TR M[AR] ;holen ARH TR ;Daten aus ARL DR(9..0) ;effektiver Adresse DR M[AR] ;holen AC DR & AC ;UND-Verknüpfung ausführen ------------------------------------------------------------------------- AND,short,indirect,adr Bedeutung: Bilde die UND-Verknüpfung des Akku-Inhaltes mit demjenigen Datenwort, dessen Adresse unter der Adresse adr bzw adr+1 im Speicher steht. adr ist eine Adresse zwischen 0 und 1023. Der Befehl benötigt 1 16-Bit-Wort. RTL-Programm: AC PC ;Befehl holen IR [ AR] PC PC+1 ; DECODE ;Dekodieren ARH 0 ARL IR(9..0) ;untere 16 Bit der effektiven Adresse DR M[AR] PC PC+1 ;holen DR M[AR] ; AR AR+1 ;obere 16 Bit der effektiven Adresse TR M[AR] ;holen ARH TR ;Daten aus ARL DR(9..0) ;effektiver Adresse Lösungen DT2 29 Kohlert
DR M[AR] ;holen AC DR & AC ;UND-Verknüpfung ausführen ------------------------------------------------------------------------- b) Listen Sie die zu jedem Mikrobefehl gehörenden Steuersignalkombinationen auf! Mikrobefehl Steuersignale AC PC LDARPC IR [ AR] PC PC+1 CS;DBIN;LDIR;PCINCR DECODE Keines DR M[AR] PC PC+1 CS;DBIN;LDDR;PCINCR ARH DR DROUT;LDARH ARL IR(9..0) IROUT;LDARL DR M[AR] CS;DBIN;LDDR AR AR+1 ARINC TR M[AR] CS;DBIN;LDTR ARH TR LDARH;TROUT ARL DR(9..0) LDARL;DROUT AC DR & AC LDAC;AND ARH 0 ARL IR(9..0) IROUT;CLRAH;LDARL 2. Aufgabe Der Befehl INC des in der Vorlesung behandelten Mikroprozessors soll realisiert werden. a) Schreiben das zu dem Befehl gehörige Mikroprogramm in Registertransfersprache! AC PC ;Befehl holen IR [ AR] PC PC+1 ; DECODE ;Dekodieren AC AC+1 ;Akku um 1 erhöhen b) Listen Sie die zu jedem Mikrobefehl gehörenden Steuersignalkombinationen auf! Nur 1 neuer Mikrobefehl: AC AC+1 Steuersigale: INC,LDAC 3. Aufgabe Zeichnen Sie ein Zustandsdiagramm für eine Ablaufsteuerung des Prozessors, in der nur die oben behandelten Befehle realisiert werden! Mikrobefehl Steuersignale Zustand AC PC LDARPC Z1 IR [ AR] PC PC+1 CS;DBIN;LDIR;PCINCR Z2 DECODE Keines Z3 DR M[AR] PC PC+1 CS;DBIN;LDDR;PCINCR Z4 ARH DR DROUT;LDARH Z5 ARL IR(9..0) IROUT;LDARL Z6 DR M[AR] CS;DBIN;LDDR Z7 AR AR+1 ARINC Z8 TR M[AR] CS;DBIN;LDTR Z9 ARH TR LDARH;TROUT Z10 Lösungen DT2 30 Kohlert
ARL DR(9..0) LDARL;DROUT Z11 AC DR & AC LDAC;AND Z12 ARH 0 ARL IR(9..0) IROUT;CLRAH;LDARL Z13 AC AC+1 INC,LDAC Z14 Lösungen DT2 31 Kohlert
Lösungen DT2 32 Kohlert
Lösungen DT2 33 Kohlert