Rechnerstrukturen 2. Grundlagen Inhalt Elektronische Schalter Elementare Gatterfunktionen Schaltnetze Schaltwerke 2.2
Motivation Unterscheidung von zwei Zuständen Strom / kein Strom Spannung / keine Spannung Positiv / Negativ geladen Reflektierend / nicht reflektierend... Technische Umsetzung Mechanisch Elektromechanisch Elektronisch Licht bbildung auf binäre Zahlen Wahrheitswerte Zeichen 2.3 Elektronische Schalter Elementar Wechselschalter E a E b if S then := E a else := E b S Schalter (Gate, Switch) Vereinfachungen Ein Eingang konstant oder Verzögerungszeit t VZ wird durch die eingesetzte Technologie bestimmt wenige Nanosekunden typisch t VZ S 2.4 2
Realisierungsvarianten Transistor-Transistor Transistor-Logik (TTL) Emitter-Coupled Coupled-Logik (ECL) Metal Oxid Semiconductor (MOS) Unterschiede Verzögerungszeit Versorgungsspannung 5 V (TTL) 2.8-3.3 V (MOS) Integrationsdichte.35µm -.25µm (MOS).8µm demnächst (MOS) (vgl. Haar = µm) Materialien Silicium, luminium in Zukunft ev. Gas, upfer 9 8 7 6 5 4 3 2 TTL ECL CMOS Delay [ns] 2.5 Bipolare Transistoren npn- und pnp-transistor Dotierung von Silicium Collector Schaltverhalten V E = V, V = 3 V V E = 3 V, V =.2 V Base n p n Hohe Ströme p-anal muß mit Elektronen gefüllt werden Wärmeentwicklung Dicke der Leiterbahnen Emitter V CC Geringe apazitäten Hohe Schaltgeschwindigkeit V E V 2.6 3
Wechselschalter: TTL-Realisierung S V CC V CC V CC E b E a V CC 2.7 TTL-Familien 74xx Standard TTL 3 mw/gate 9 ns t VZ 74Lxx Low-power TTL 33 74Hxx High-speed TTL 22 6 74Sxx Schottky TTL 2 3 74LSxx Low-power Schottky TTL 2 9 74Sxx dvanced Schottky TTL 2.6 74LSxx dvanced Low-power Schottky TTL.3 5 74Fxx Fast TTL 5 3 V CC 74x8 GND 2.8 4
Feldeffekttransistoren FETs NMOS (n-anal) PMOS (p-anal) CMOS (complementary MOS) NMOS und PMOS paarweise Source n Gate p n Drain Schaltverhalten V E = V, V = V DD V E = V DD, V = V nmos Substrate Längere Verzögerungszeit apazitives Element Geringe Spannungswerte V DD p Extrem geringe Ströme V E n V V SS 2.9 Wechselschalter: CMOS-Realisierung 2. 5
State of the rt z.b. DEC lpha 2264.35µm CMOS-Technik 3.2 cm 2 52 Transistoren 6 MHz Taktfrequenz 72 W Stromverbrauch.35 µm = cm 49 km Belichten Ätzen Bedampfen, Dotieren 2. Tri-State Direkte Verschaltung von usgängen kritisch CS= CS= CS= E a V CC? V CC E b Zugang mehrerer Elemente zu einem gemeinsamen Bus Dritter, hochohmiger Zustand der usgänge Steuerung durch zusätzlichen Eingang (CS = Chip Select) CS= 2.2 6
Die Grundgatter UND E E2 E E2 ODER E E2 NICHT E 2.3 NND, NOR, XOR NND NOR E E2 E E2 XOR E E2 + 2.4 7
Äquivalenz Ist XOR ein Grundgatter? Wieviele Grundgatter braucht man minimal, um beliebige boolesche usdrücke zu beschreiben? 2.5 Schaltnetze Schaltung aus logischen Grundgattern mit n Eingängen m usgängen Rückkopplungsfrei 2n Eingangskombinationen m boolesche usdrücke über E... En Wahrheitstabelle E Schaltnetz En m 2.7 8
Wahrheitstabelle 7-Segment-Dekoder 4 Eingänge Binärzahl e 3 e 2 e e 7 usgänge usteuerung der Segment a bis g e d f g c 7 Dekoder a b e 3 e 2 e e a b c d e f g 4 2.8 Wahrheitstabelle 7-Segment-Dekoder 4 Eingänge Binärzahl e 3 e 2 e e 7 usgänge usteuerung der Segment a bis g e d f g c 7 Dekoder a b e 3 e 2 e e a b c d e f g 4 2.9 9
7-Segment-Dekoder (cont.) Wie erhält man boolesche usdrücke für a bis g? ae ( 3, e2, e, e) = be ( 3, e2, e, e) = ge ( 3, e2, e, e) = 2.2 7-Segment-Dekoder (cont.) Gatterschaltung: 2.22
Disjunktive und konjunktive Normalformen Disjunktive Normalform Summe von Produkten (minterme) onjunktive Normalform Produkt von Summen (maxterme) Minterm Zeile in Wahrheitstabelle Eingänge mit : e Eingänge mit : e negiert Maxterm Zeile in Wahrheitstabelle Eingänge mit : e negiert Eingänge mit : e e2 e e a 2.24 Disjunktive und konjunktive Normalformen Disjunktive Normalform Summe von Produkten (minterme) onjunktive Normalform Produkt von Summen (maxterme) Minterm Zeile in Wahrheitstabelle Eingänge mit : e Eingänge mit : e negiert Maxterm Zeile in Wahrheitstabelle Eingänge mit : e negiert Eingänge mit : e e2 e e + e2 e e + e2 e e + e2 e e e2 e e a ( e2 + e+ e) ( e2 + e+ e) ( e2 + e+ e) ( e2 + e+ e) 2.25
Boolesche lgebra Dualität zwischen Gatterschaltungen Booleschen usdrücken Positive Logik = False = True E E2 = E E 2 Gesetze = E+ E2 = E 2.26 Gesetze Operationen mit und X + = X, X + = X =, X = X Idempotenz X + X = X X X = X omplementärgesetz X + X = X X = 2.27 2
Gesetze (cont.) ommutativitätsgesetz X + Y = Y + X X Y = Y X ssoziativitätsgesetz ( X + Y) + Z = X + ( Y + Z) ( X Y) Z = X ( Y Z) Distributivgesetz X ( Y + Z) = X Y + X Z X + ( Y Z) = ( X + Y) ( X + Z) 2.28 Gesetze (cont.) Vereinfachungsgesetze X Y + X Y = X,( X + Y) ( X + Y) = X X + X Y = X, X ( X + Y) = X ( X + Y) Y = X Y,( X Y) + Y = X + Y DeMorgan s Gesetz X + Y+ + Z = X Y Z X Y Z = X + Y + + Z 2.29 3
Umformung und Minimierung Gründe Begrenzungen bei der Schaltungstiefe Minimaler Materialeinsatz Bestimmter Gattervorrat Elektrische Eigenschaften Platzbeschränkungen... lgebraische Umformungen lgorithmische Verfahren arnaugh-diagramme (-4 Eingangsvariablen, usgang) uine-mccluskey-verfahren (n Eingänge, usgang) Bündelminimierung (n Eingänge, m usgänge) 2.3 arnaugh-diagramme Graphische Methode max. 4 Eingänge BCD Übertragung der Wahrheitstabelle Position im Diagramm entspricht BCD als Binärzahl B C a = (2,3,4,6) = C C 2 3 B B 6 7 B 4 5 2 3 2.3 4
Minimierung im arnaugh-diagramm Legende = Gray-Code benachbarte Zeilen und Spalten ändern sich nur in einem Bit Zusammenfassen von Gruppen zu, 2, 4 oder 8 Einsen = keine Minimierung 2 = Term mit 2 aus 3 Eingängen 4 = Term mit aus 3 Eingängen 8 = Funktion konstant Diagramm als Torus auffassen! C B = B + BC + C C B 2.32 4 Eingänge Zusammenfassen von Gruppen zu, 2, 4, 8 oder 6 Einsen = keine Minimierung 2 = Term mit 3 aus 4 Eingängen 4 = Term mit 2 aus 4 Eingängen 8 = Term mit aus 4 Eingängen 6 = Funktion konstant Torus C 3 2 4 5 7 6 2 3 5 4 8 9 D B 2.33 5
Minimierung 7-Segment-Dekoder 4 Eingänge Binärzahl e3 e2 e e 7 usgänge usteuerung der Segment a bis g e d f g c 7 Dekoder a b e3 e2 e e a b c d e f g 4 2.34 Minimierung 7-Segment-Dekoder (Don t Care) 4 Eingänge Binärzahl e3 e2 e e 7 usgänge usteuerung der Segment a bis g e d f g c 7 Dekoder a b e3 e2 e e a b c d e f g X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X 4 2.39 6
Bemerkungen Bei bis zu vier Eingangsvariablen ideale Minimierungstechnik 5 und 6 Eingänge theoretisch auch möglich 5: zwei übereinander liegende 4er-Diagramme 6: vier übereinander liegende 4er-Diagramme insgesamt aber praktisch nicht handhabbar onjunktive Minimalform ebenfalls möglich Zusammenfassen der -Gruppen 2.44 uine-mccluskey-methode lgorithmisches Verfahren beliebig viele Eingänge usgang 3 Schritte Initialisierung Ermittlung der Primimplikanten Ermittlung der minimalen Überdeckung Beispielfunktion Segment a e3 e2 e e a b c d e f g 2.45 7
. Initialisierung Sortierung der Minterme aufsteigend nach nzahl () () (2) (4) (8) (3) (9) () (7) (3) 2.46 2. Primimplikanten Vergleich jedes Element einer Gruppe mit allen Elementen der nächsten Gruppe Übernahme in die nächste Spalte, wenn nur in einer Position verschieden Gewählte Zeilen markieren (ok( ok) () ok () ok (2) ok (4) ok (8) ok (3) ok (9) ok () ok (7) ok (3) ok - (,) - (,2) - (,4) - (,8) - (,3) - (,9) - (2,3) - (2,) - (8,9) - (8,) - (3,7) - (9,3) 2.47 8
bbruchkriterium Markierung mit der nächsten Spalte wiederholen Bis auf eine Position gleich (-( = -) bbruch, wenn keine weitere Spalte entsteht - (,) ok - (,2) ok - (,4) * - (,8) ok -- (,,2,3) * -- (,,8,9) * -- (,2,8,) * - (,3) ok - (,9) ok - (2,3) ok - (2,) ok - (8,9) ok - (8,) ok - (3,7) * - (9,3) * 2.48 3. Minimale Überdeckung Sammeln der mit * markierten Primimplikanten: - (,4) - (3,7) - (9,3) -- (,,2,3) -- (,,8,9) -- (,2,8,) Nur einmal markierte Spalten suchen essentielle Primimplikanten Zusätzliche Spalten streichen Schritt auf unmarkierten Spalten wiederholen 2 3 4 7 8 9 D - X X - X X - X X -- X X X X -- X X X X -- X X X X 2 3 4 7 8 9 D - X X - X X - X X -- X X X X -- X X X X -- X X X X 2.49 9
Bündelminimierung nwendbar auf n Eingänge und m usgänge Nutzung gemeinsamer Teilsummen in verschiedenen usgangsfunktionen E j Multilevel-Logik EB nsatz Erweiterung der Zeileninformation ansonsten uine-mccluskey EC k - - (2,3,7,9)... m 2.5 Hazards Ungewollte Wechsel an einem usgang Unterschiedliche Verzögerungszeiten der Gatter Unterschiedliche Gatteranzahl zwischen Eingängen und usgang Statischer Hazard Einmaliger Wechsel Dynamischer Hazard Mehrfacher Wechsel Statischer -Hazard Statischer -Hazard Dynamischer Hazards 2.5 2
Statischer Hazard Nur -Bit Bit-Wechsel Beispiel Z = B + B C B -B X Z Wechsel nach (BC) C Y Z Y X -B C B 2.52 Eliminierung statischer Hazards Grundlage arnaugh-diagramm Merkmal für -Hazard Wechsel des Primimplikanten bei -Bitwechsel der Eingabe Lösung: Redundante Implikanten Merkmal für -Hazard arnaugh-diagramm für konjunktive Normalform nalog -Hazard Eliminierung statischer Hazards auch in mehrstufigen Schaltungen möglich Z = B + B C C C B B 2.53 2
Dynamischer Hazard Beispiel ( B + BC)( + B) B C Wechsel nach (BC) Grund Unterschiedlich lange Wege von einem Eingang zu einem usgang Eliminierung schwierig langsam sehr langsam 2.54 Bemerkungen Beschränkte Möglichkeiten Nur -Bit-Wechsel Multilevel-Logik schwierig Schaltungen frei von statischen und dynamischen Hazards 2-stufige Logik Fan-In/Fan-Out-Problem E En Schaltnetz mit Hazards m Gängiger nsatz uferzwungene Taktung Periode länger als maximaler Hazard j En E 2.55 22
Schaltwerke ombinatorische Schaltnetze usgang hängt nur von den Eingängen ab Unterschiedliche Laufzeiten (Hazard-Problematik) Schaltwerk usgang hängt von den Eingängen und den vorherigen usgaben ab spekte Speichern möglich Synchron / synchron Schwingungen Metastabilität Selbsttaktung k Elementarbausteine Latch Flip-Flop E n Schaltnetz m 2.56 Elementarspeicher: R-S-Latch reuzverschaltete NOR-Gatter R: Reset S: Set usgang mit omplement usgang zurücksetzen R=, S= R usgang setzen R=, S= Wert speichern R=, S= S 2.57 23
R-S-Latch: Zeitdiagramm R S - S R 2.58 R-S-Latch: Zeitdiagramm R S - S R 2.59 24
R-S-Latch: Charakeristische Gleichung S(t) R(t) (t) (t+ ) Hold Reset Set (t) R X X S X Invalid X t ( + ) = St () + Rt () t () 2.6 Probleme Verbotene Eingangskombination R=S= Beide usgänge sind Verbotener Übergang R und S gleichzeitig von nach Oszillation der usgänge Wie lang kann die Oszillation dauern? Theoretisch? Praktisch? Race-Condition S R Speichern Instabil 2.6 25
Theoretische und beobachtbare Zustände SR=,,, Theoretisches Zustandsdiagramm SR=,, Beobachtbares Zustandsdiagramm 2.62 Steuerungsarten Wann wirken die Eingänge auf die usgänge Drei Varianten Ungesteuert (R-S-Latch) Pegelgesteuert Flankengesteuert Positiv ( nach ) Negativ ( nach ) Zusätzliche Steuerungsleitung Enable E E E 2.63 26
Flankensteuerung Stabiler Eingang in einem Zeitfenster vor dem Flankenwechsel Setup-Zeit: T SU Hold-Zeit: T H Verhalten ansonst undefiniert Typische Werte (TTL) T SU = 2ns T H = 5ns T SU T H E 2.64 Pegelgesteuertes R-S-Latch Steuereingang Enable R S Enable 2.65 27
R R S S Enable Enable R R X S S X Enable Enable 2.66 Latch vs. Flip-Flop Latch Ungesteuert Pegelgesteuert Änderung der usgänge bei Änderung der Eingänge Flip-Flop Flop Positiv flankengesteuert Negativ flankengesteuert Master/Slave Änderung der usgänge wird durch den Steuerungseingang getriggert D D C 2.67 28
-Latch Erweiterung eines R-S-Latch Ungültige Eingabe R=S= verhindern Was passiert bei ==? S R 2.68 Zeitdiagramm: =, = - (-) 2.69 29
Zeitdiagramm: =, = - (-) 2.7 Zeitdiagramm: =, = - (-) 2.7 3
Zeitdiagramm: =, = - (-) 2.72 Zeitdiagramm: ==, = - (-) 2.73 3
Zeitdiagramm: ==, = - (-) 2.74 --Latch: Charakeristische Gleichung (t) (t) (t) (t+ ) Hold Reset Set (t) Toggle t ( + ) = t () () t + t () t () 2.75 32
-Master/Slave-Flip-Flop Dauer-Toggle verhindern S R-S-Latch R S R-S-Latch R 2.76 S R-S-Latch R S R-S-Latch R Zeitdiagramm: =, = - 2.77 33
S R-S-Latch R S R-S-Latch R Zeitdiagramm: =, = - 2.78 S R-S-Latch R S R-S-Latch R Zeitdiagramm: =, = - 2.79 34
S R-S-Latch R S R-S-Latch R Zeitdiagramm: =, = - 2.8 S R-S-Latch R S R-S-Latch R Zeitdiagramm: ==, = - 2.8 35
S R-S-Latch R S R-S-Latch R Zeitdiagramm: ==, = - 2.82 S R-S-Latch R S R-S-Latch R Zeitdiagramm: One Catching - 2.83 36
S R-S-Latch R S R-S-Latch R Zeitdiagramm: One Catching - 2.84 D-Flip-Flop Reine Flankensteuerung eine ungültigen Eingaben ein Dauer-Toggeln ein One-Catching Beispiel D-FlipD Flip-FlopFlop Negativ Flankengesteuert D 2.85 37
D-Flip-Flop () D D D D 2.86 D-Flip-Flop (2) D D D D D D 2.87 38
D-Flip-Flop (3) D D D D D ungleich D 2.88 g Zeitdiagramm: g g2 D g3 - g3 g2 g g D 2.89 39
Programmierbare Logik Realisierung von Schaltnetzen und Schaltwerken ufbau mit Hilfe von TTL- und CMOS-ICs aufwendig Große nzahl an Bausteinen Hoher Platz- und Stromverbrauch Geringe Integrationsdichte IC mit ND mit jeweils 2 Eingängen = 32 Pins Programmierbare Bausteine Genügend Eingängen Genügend usgängen usreichende Programmierbarkeit Zweistufige Normalformen E En Möglichst viel Logik m 2.9 PL und PL Programmierbare disjunktive Normalform n Eingängen m usgängen k Terme n,m und k vom jeweiligen Baustein abhängig PL = Programmable Logic rray UND- und ODER-rray programmierbar E En ND-rray Produktterme PL = Programmable rray Logic Nur UND-rray programmierbar OR-rray Programmieren Höhere Programmierspannung Durchbrennen einer Verbindung m 2.9 4
E E2 En Beispiel PL T Tk m 2.92 Beispiel: P6H8 PL 2.93 4
Beispiel: P4H8 PL 2.94 Beispiel: F PL 2.95 42