Komplexe Systeme werden aus einfachen Schaltungen erzeugt
Man sucht erst schnell überhaupt eine Lösung und
optimiert nur, wenn es Probleme (Funktionalität, Geschwindigkeit,
Leistungsverbrauch) gibt.
Alle Schaltungen müssen zur Sicherstellung der Funktionalität getestet werden.
Schaltungen sollen skalierbar und wiederverwendbar entworfen werden
EDA (Electronic Design Automation) Werkzeuge
helfen bei der Realisierung digitaler Systeme
AOI design style
NAND
\( Y = \overline{ X1 \cdot X2 \cdot X3} \)
NOR
\( Y = \overline{ X1 + X2 + X3} \)
PFETs connected to VDD are at the top and NFET connected to GND at the bottom.
A NAND has PFETs on the top in parallel and NFETS at the bottom in series.
A NOR has PFETs on the top in series and NFETS at the bottom in parallel.
This can be used for arbitrary functions.
There can be additional inverters added to the inputs or outputs
to realize a logic function.
Version 4
SHEET 1 1552 680
WIRE 272 -16 224 -16
WIRE 320 -16 272 -16
WIRE 480 -16 320 -16
WIRE 320 32 320 -16
WIRE 320 32 272 32
WIRE 160 64 112 64
WIRE 224 64 160 64
WIRE 480 80 480 -16
WIRE 528 80 480 80
WIRE 320 128 320 32
WIRE 320 128 272 128
WIRE 528 128 528 80
WIRE 528 128 480 128
WIRE 192 160 112 160
WIRE 224 160 192 160
WIRE 432 160 400 160
WIRE 272 192 272 176
WIRE 480 192 480 176
WIRE 480 192 272 192
WIRE 528 192 480 192
WIRE 512 240 480 240
WIRE 192 256 192 160
WIRE 288 256 192 256
WIRE 400 272 400 160
WIRE 400 272 128 272
WIRE 432 272 400 272
WIRE 480 288 224 288
WIRE 256 336 224 336
WIRE 512 336 512 240
WIRE 512 336 480 336
WIRE 160 368 160 64
WIRE 176 368 160 368
WIRE 288 368 288 256
WIRE 432 368 288 368
WIRE 256 384 256 336
WIRE 256 384 224 384
WIRE 336 384 256 384
WIRE 480 384 336 384
WIRE 512 384 512 336
WIRE 512 384 480 384
WIRE 336 400 336 384
FLAG 336 400 0
FLAG 224 -16 VDD
FLAG 528 192 Y
IOPIN 528 192 Out
FLAG 112 64 A
IOPIN 112 64 In
FLAG 112 160 B
IOPIN 112 160 In
FLAG 128 272 C
IOPIN 128 272 In
SYMBOL nmos4 176 288 R0
SYMATTR InstName M1
SYMATTR Value N
SYMATTR Value2 l=0.05u w=0.1u
SYMBOL nmos4 432 192 R0
SYMATTR InstName M2
SYMATTR Value N
SYMATTR Value2 l=0.05u w=0.1u
SYMBOL pmos4 432 80 R0
SYMATTR InstName M3
SYMATTR Value P
SYMATTR Value2 l=0.05u w=0.1u
SYMBOL pmos4 224 80 R0
SYMATTR InstName M4
SYMATTR Value P
SYMATTR Value2 l=0.05u w=0.10u
SYMBOL pmos4 224 -16 R0
SYMATTR InstName M5
SYMATTR Value P
SYMATTR Value2 l=0.05u w=0.1u
SYMBOL nmos4 432 288 R0
SYMATTR InstName M6
SYMATTR Value N
SYMATTR Value2 l=0.05u w=0.1u
TEXT 584 -32 Left 2 !VDD VDD 0 DC 1\n;VX1 A 0 PULSE(1 0 0 1n 1n 19n 40n)\n;VX2 B 0 PULSE(1 0 0n 1n 1n 39n 80n)\n;VX3 C 0 PULSE(1 0 0n 1n 1n 79n 160n)\nVY1 C 0 PULSE(1 0 0 1n 1n 19n 40n)\nVY2 B 0 PULSE(1 0 10n 1n 1n 39n 60n)\nVY3 A 0 PULSE(1 0 30n 1n 1n 59n 105n)\nVX4 X4 0 PULSE(1 0 0 1n 1n 159n 320n)\n.tran 160n
TEXT 72 448 Left 2 !.include cmosedu_models.txt
TEXT 576 352 Left 2 !C1 N001 0 10f\nC2 N002 0 10f\nC3 Y 0 10f
Man sieht die Parallelschaltung der NFETs mit a und b als Eingang und
der PFET Reihenschaltung zur Realisierung
der NOR Verknüpfung /(a+b).
Zusammen mit dem NFET mit Eingang c in Reihe und PFET mit Eingang c parallel
ergibt sich die gewünschte Funktion y = /((a+b)c).
Von einer Problemstellung zu einer logischen Schaltung
Problemstellung: Eingänge und Ausgänge
Wahrheitstabelle
Ziel:
Realisierung der logischen Funktion mit möglichst wenig logischen Verknüpfungen:
Normalform, Minimierung
Für jede '1' am Ausgang y in einer Zeile der Wahrheitstabelle bestimmt man
die UND Verküpfung der Eingänge oder der invertierten Eingänge.
x1
x2
x3
y
0
1
0
1
y(010) = /x1 x2 /x3
Diese Gleichungen werden dann mit einer ODER Funktion verknüpft und ergeben
die Gleichung für die Wahrheitstabelle.
Logische Gleichung für eine Wahrheitstabelle
Normalform, disjunktive Normalform
Minimierung:
Boolesche Algebra
Karnaugh Veitch Diagramm
Algorithmisch (FPGA, VHDL Compilier)
Karnaugh Veitch Diagramm
Eine andere Darstellung einer Wahrheitstabelle
Nr
X Y Z
F
Minterm
0
0 0 0
1
/X/Y/Z
1
0 0 1
0
2
0 1 0
0
3
0 1 1
1
/XYZ
4
1 0 0
1
X/Y/Z
5
1 0 1
0
6
1 1 0
0
7
1 1 1
1
XYZ
Z
/Z
Y
3
7
6
2
1
5
4
0
/Y
/X
X
/X
Z
/Z
Y
1
1
0
0
0
0
1
1
/Y
/X
X
/X
Minimierung:
Zusammenfassung von horizontalen oder vertikalen Gruppen von 2,4 oder 8 '1'
Dabei kann man von rechts nach links über die Begrenzung des Kastens gehen.
Dabei kann man von oben nach unten über die Begrenzung des Kastens gehen.
In der linken Darstellung sind die Zeilen der Wahrheitstabelle angegeben in der man nach dem
Ausgangssignal suchen muss.
Darstellung eines Minterms durch NAND Funktionen
SOP-Ausdruck (sum of products)
(AB)+(CD)
Verifikation mit einer Wahrheitstabelle
Zur Erstellung der Wahrheitstabelle werden die
Hilfssignale H1 = /(AB) und H2 = /(CD) eingeführt.
Die Hilfssignal erleichetern die Auswertung der logischen Funktionen.
A
B
C
D
H1=/(AB)
H2=/(CD)
SOP=/(H1H2)
(AB)
(CD)
(AB)+(CD)
0
0
0
0
1
1
0
0
0
0
0
0
0
1
1
1
0
0
0
0
0
0
1
0
1
1
0
0
0
0
0
0
1
1
1
0
1
0
1
1
0
1
0
0
1
1
0
0
0
0
0
1
0
1
1
1
0
0
0
0
0
1
1
0
1
1
0
0
0
0
0
1
1
1
1
0
1
0
1
1
1
0
0
0
1
1
0
0
0
0
1
0
0
1
1
1
0
0
0
0
1
0
1
0
1
1
0
0
0
0
1
0
1
1
1
0
1
0
1
1
1
1
0
0
0
1
1
1
0
1
1
1
0
1
0
1
1
1
0
1
1
1
1
0
0
1
1
1
0
1
1
1
1
1
0
0
1
1
1
1
Man sieht, dass die Spalten SOP und (AB)+(CD) gleich sind.
Für eine Messung muss man die Signale A, B, C und D erzeugen.
Dazu erzeugt man Pulse mit T (D), 2T (C), 4T (B) und 8T (A) Periodendauer.
Eine zeitliche Abfolge der Zeilen der Wahrheitstabelle innerhalb von 8T findet statt.
Schaltung zur Realisierung der Normalform
Stellen Sie die Wahrheitstabelle auf.
Geben Sie die logische Gleichung an.
Jedes Gatter hat eine Verzögerungszeit von 5 ns.
Geben Sie die maximale Verzögerungszeit an.
Wenn man den zeitlichen Verlauf der Signale zeichnen möchte,
sollte man erst alle Zwischensignale mit der berücksichtigten
Verzögerungszeit (5ns, Verschiebung der Änderung nach rechts) zeichnen.
Dabei Addieren sich Verzögerungszeiten auf:
Das Signal IN0 wird invertiert und steht mit 5ns Verzögerung als X3 zur Verfgung.
Nach dem ersten NAND Gatter ist die Verzögerungszeit von X4 zu IN0 dann (10ns = 5ns + 5 ns).
Out0 steht dann bei einer Änderung von IN0 aktualisiert nach 15ns (INV, NAND, NAND: 5 ns + 5 ns + 5 ns) zur Verfügung.
Da es kein Signal gibt mit mehr Logikschaltungen (Gattern) zwischen Eingang und Ausgang spricht man
vom längsten Pfad mit der maximalen Verzögerungszeit von 15 ns.
Durch die Verzögerungszeit kann es zu Glitchen (kurzen Signaländerungen) am Ausgang kommen.
Um diese am Ausgang zu vermeiden und Zustandsmaschinen zu bauen werden am
Ausgang Speicherelemente (Register) mit einer Taktsteuerung eingeführt.
Schaltung zur Realisierung der Normalform
Stellen Sie die Wahrheitstabelle auf.
Geben Sie die logische Gleichung an.
Jedes Gatter hat eine Verzögerungszeit von 5 ns.
Zeichnen Sie das Zeitverhalten, wenn die Wahrheitstabelle abgeprüft wird.
Geben Sie die maximale Verzögerungszeit an.
Eingänge
Signale
Ausgänge
IN2
IN1
IN0
X1
X2
X3
X4
X6
X7
X8
OUT0
OUT1
0
0
0
1
1
1
1
1
1
1
0
0
0
0
1
1
1
0
1
1
1
1
0
0
0
1
0
1
0
1
1
1
0
1
0
1
0
1
1
1
0
0
1
0
1
0
1
1
1
0
0
0
1
1
0
1
1
1
1
0
1
0
1
0
1
0
1
1
1
1
0
0
1
1
0
0
0
1
1
1
1
1
0
0
1
1
1
0
0
0
1
1
1
1
0
0
Geben Sie die logische Gleichung für Out0 an:
OUT0 = (IN2 /IN1 /IN3) + (/IN2 IN1 IN0)
Geben Sie die logische Gleichung für Out1 an:
OUT1 = (/IN2 IN1/IN0) + (/IN2 IN1 IN0)
Die maximale Verzögerungszeit beträgt 3 * 5 ns = 15 ns.
Ein NAND Gatter hat nur dann eine 0 am Ausgang, wenn alle Eingänge auf 1 sind.
X4 ist nur dann 0, wenn IN2=1, /IN1=1 und /IN0=1 ist.
Eine ähnliche Schaltung wird im
Versuch 2 realisiert.
Version 4
SymbolType BLOCK
LINE Normal -32 -48 -15 -48
LINE Normal -32 32 -32 -48
LINE Normal -15 32 -32 32
LINE Normal -4 -46 -15 -48
LINE Normal 3 -41 -4 -46
LINE Normal 11 -32 3 -41
LINE Normal 15 -21 11 -32
LINE Normal 17 -7 15 -21
LINE Normal 16 5 17 -7
LINE Normal 10 17 16 5
LINE Normal 2 26 10 17
LINE Normal -5 30 2 26
LINE Normal -15 32 -5 30
CIRCLE Normal 32 8 17 -7
WINDOW 0 34 -18 Bottom 2
PIN -32 -32 LEFT 8
PINATTR PinName A
PINATTR SpiceOrder 1
PIN -32 -16 LEFT 8
PINATTR PinName B
PINATTR SpiceOrder 2
PIN -32 0 LEFT 8
PINATTR PinName C
PINATTR SpiceOrder 3
PIN -32 16 LEFT 8
PINATTR PinName D
PINATTR SpiceOrder 4
PIN 32 0 RIGHT 8
PINATTR PinName Y
PINATTR SpiceOrder 5
Version 4
SymbolType BLOCK
LINE Normal -32 24 -32 -23
LINE Normal 0 0 -32 24
LINE Normal -32 -23 0 0
CIRCLE Normal 17 11 0 -9
WINDOW 0 -12 -23 Bottom 2
PIN -32 0 NONE 8
PINATTR PinName A
PINATTR SpiceOrder 1
PIN 16 0 NONE 8
PINATTR PinName Y
PINATTR SpiceOrder 2