Kombinatorische & Sequentielle Schaltungen (universal ...Elektronik/Ein... · Kombinatorische und...

97
1 Kombinatorische und sequentielle digitale Schaltungen Kombinatorische Schaltungen 1. Grundlagen 2. Statische und dynamische Parameter 3. Kombinatorische Standardschaltungen 4. Technische Realisierungsprinzipien Sequentielle Schaltungen 5. Grundlagen sequentieller Schaltungen 6. Flipflops 7. Sequentielle Standardschaltungen 8. Allgemeine Prinzipien synchroner sequentieller Schaltungen

Transcript of Kombinatorische & Sequentielle Schaltungen (universal ...Elektronik/Ein... · Kombinatorische und...

  • 1Kombinatorische und sequentielle digitale Schaltungen

    Kombinatorische Schaltungen 1. Grundlagen

    2. Statische und dynamische Parameter3. Kombinatorische Standardschaltungen4. Technische Realisierungsprinzipien

    Sequentielle Schaltungen5. Grundlagen sequentieller Schaltungen6. Flipflops7. Sequentielle Standardschaltungen8. Allgemeine Prinzipien synchroner sequentieller Schaltungen

  • 2Kombinatorische und sequentielle digitale Schaltungen

    ?SPLD

    (PAL, GAL, ...) CPLD

    FPGAGate-Array

    Sea-of-Gates

    Standardzelle

    Vollkundenspezifischer-Schaltkreis

    fX Y

    Kombinatorische Schaltungen

    Jeder Eingangsbelegung ist eindeutig eine Ausgangsbelegung

    zugeordnet. Kein Gedchtnis!

    Andere Bezeichnungen:Zuordner, Schaltnetz,

    Schaltfunktion

  • 4Kombinatorische und sequentielle digitale Schaltungen

    Ausgangspunkt und Aufgabe

    Ausgangspunkt Irgendeine Beschreibung der gewnschten Funktion

    Verbale Beschreibung Schaltungssymbole, Schaltsymbole Funktionstabelle, Schaltbelegungstabelle, Wahrheitstabelle,

    Wahrheitstafel Boolesche Gleichung, Schaltfunktion, logische Funktion

    Aufgabe Entwicklung einer elektrischen Schaltung, welche

    die gewnschte Funktion realisiert... in der Zieltechnologie realisierbar ist... die statischen Zielparameter einhlt... die dynamischen Zielparameter einhlt... im Kostenrahmen liegt...

  • 5Kombinatorische und sequentielle digitale Schaltungen

    Welche Schaltungstechnologien gibt es?

    Vllig veraltet! Klassischer Entwurf: Veraltet!(zusammenlten vieler TTL-Gatter)

    Moderner Entwurf mit fertigen Schaltkreisen:Programmable Logic Device (PLD)

    (in einen PLD passen hunderte bis tausendeTTL-Gatter)

    Moderner Entwurf beim Halbleiterhersteller(Anwendungsspezifische Fertigung im Reinraum)

    Im Folgenden undWPM PLD!

  • 6Kombinatorische und sequentielle digitale Schaltungen

    Verbale Beschreibung

    Beschreibung des Verhaltens in Textform, Syntax nicht festgelegt Beispiel:

    Wenn drauen die Sonne scheint, sollen die Jalousien runterfahren, aber nur, wenn keine Vorlesung ist.

    Als erste grobe Beschreibung sicher geeignet, aber fr die Implementierung vllig ungeeignet! Unbersichtlich Keine eindeutigen Signalnamen Konsistenzfehler oder unvollstndige Beschreibungen lassen sich nur schwer

    erkennen Die Probleme treten insbesondere bei umfangreichen Funktionen auf! Daher mu die verbale Beschreibung vor der Implementierung immer in

    eine systematische Beschreibung umgesetzt werden.

  • 7Kombinatorische und sequentielle digitale Schaltungen

    Schaltungssymbole, Schaltsymbole

    APOLLO GUIDANCE COMPUTER (AGC)STAGE BRANCH DECODING MODULE

  • 8Kombinatorische und sequentielle digitale Schaltungen

    Schaltungssymbole, Schaltsymbole Entweder: Schaltungssymbole zur Beschreibung der logischen

    Grundfunktionen Kennzeichnen lediglich die logische Funktion ber die Art und Weise der Realisierung der Funktion wird absolut nichts

    ausgesagt Keine Betriebsspannungsanschlsse Eingnge und Ausgnge werden nicht mit Spannungen, sondern mit den

    Variablenwerten beschriftet, Wertebereich 0/1 Oder: Schaltungssymbole als Abbild realer Gatter im Schaltplan

    Kennzeichnen ebenfalls die logische Funktion Durch Angabe des Schaltkreistyps ist die konkrete Realisierung festgelegt Damit sind auch alle Parameter festgelegt:

    Grenzwerte, Elektrische Parameter, Mechanische Parameter Betriebsspannungsanschlsse und andere nichtlogischen Anschlsse werden

    irgendwie dazugemogelt Da ein Schaltkreis mehrere Gatter beinhalten kann mu die Zuordnung durch

    eine entsprechende Symbolik oder Beschriftung kenntlich gemacht werden Wertebereich der Variablen L/H, unter Umstnden tauchen an den Anschlssen

    Spannungswerte auf Fr Lehrzwecke/Erklrungen auch irgendetwas dazwischen!

    AND2

    YX2

    X1

    XOR2

    NAND3B1

    INV

    OR8

    OR2

    AND8

  • 10Kombinatorische und sequentielle digitale Schaltungen

    Schaltungssymbole, Schaltsymbole

    Schaltungssymbole beim klassischen Entwurf Abbild von Grundgattern aus Standard-Schaltkreisfamilien

    TTL (Standard-TTL, S-TTL, LS-TTL, ALS-TTL, ...) IL, ECL, MOS CMOS (4000er, HC, HCT, AC, ACT, AHC, AHCT, ...)

    Schaltungssymbole beim PLD-Entwurf Kennzeichnen lediglich die logische Funktion Im PLD gibt es in der Regel keine einzelnen Grundgatter

    Ausnahmen: Schaltkreisspezifische Spezialbaugruppen (Takttreiber, Gatter und Flipflops mit speziellen Funktionen,)

    AND2

    YX2

    X1

    XOR2

    NAND3B1

    INV

    OR8

    OR2

    AND8

  • 12Kombinatorische und sequentielle digitale Schaltungen

    Schaltungssymbole, Schaltsymbole

    Designeingabe per Schaltungssymbole beim klassischen Entwurf Handzeichnung oder Schaltplaneditor, Universalleiterplatte,

    Bauelemente auflten und verdrahten Schaltplaneditor, Layouteditor, Leiterplattenfertigung, Bauelemente

    auflten

    Designeingabe per Schaltungssymbole beim PLD-Entwurf Schaltplaneditor (Schematic Entry), Compiler Achtung! Aussterbend! Moderne Entwurfssysteme untersttzen oft

    keine Schaltplaneingabe mehr Wechsel zu VHDL erforderlich

    AND2

    YX2

    X1

    XOR2

    NAND3B1

    INV

    OR8

    OR2

    AND8

  • 14Kombinatorische und sequentielle digitale Schaltungen

    Funktionstabelle, Schaltbelegungstabelle, Wahrheitstabelle, Wahrheitstafel

    Vollstndige Funktionstabelle Jeder mglichen Eingangsbelegung ist eine definierte

    Ausgangsbelegung zugeordnet

    Unvollstndige Funktionstabelle Mindestens einer Eingangsbelegung ist keine

    Ausgangsbelegung zugeordnet (Ausgang dont care)

    x1 x2 y

    0 0 0

    0 1 0

    1 0 0

    1 1 1

    x1 x2 a b

    0 0 1 0

    0 1 1 0

    1 0 0 0

    1 1 0 1

    Mehrere Ausgangs-

    variablen mglich

    x1 x2 y

    0 0 0

    1 0 0

    1 1 1

    x1 x2 y

    0 0 0

    0 1 X dont care (X, -, d.c.)

    1 0 0

    1 1 1

  • 16Kombinatorische und sequentielle digitale Schaltungen

    Funktionstabelle, Schaltbelegungstabelle, Wahrheitstabelle, Wahrheitstafel

    Restfunktion Durch die Restfunktion wird automatisch immer

    eine vollstndige Funktionstabelle erzeugt!

    Dont care am Eingang (d.c. // X // -) Vereinfachte und kompakte Darstellung...

    Insbesondere bei >4 Eingngen! Gefahr von Konsistenzfehlern!

    x1 x2 y

    0 0 0

    0 1 0

    1 0 0

    1 X 1Konsistenzfehler!

    x1 x2 y

    0 X 1

    Rest 0

    x1 x2 y

    0 0 0

    0 1 0

    1 X 1

    x1 x2 y

    0 0 0

    0 1 0

    1 0 1

    1 1 1

    x1 x2 y

    0 X 0

    X 0 0

    1 1 1

    AND mit d.c.Korrektes Beispiel

    VHDL: OTHERS // WHEN OTHERS

  • 18Kombinatorische und sequentielle digitale Schaltungen

    Funktionstabelle, Schaltbelegungstabelle, Wahrheitstabelle, Wahrheitstafel

    x1 x2 y

    0 0 0

    0 1 0

    1 0 0

    1 1 1

    Designeingabe per Funktionstabelle beim klassischen Entwurf Nicht mglich Umwandlung in Gatterschaltung erforderlich!

    Designeingabe per Funktionstabelle beim PLD-Entwurf blicherweise per VHDL. Beispiel: begin

    with x selecty

  • 20Kombinatorische und sequentielle digitale Schaltungen

    Boolesche Gleichung, Boolesche Funktion, Schaltfunktion

    Wertebereich der Variablen: 0 und 1 L (Low) und H (High) hier mglichst vermeiden!

    Operationen Konjunktion (AND) y = x1 x2 = x1 * x2 = x1x2 Disjunktion (OR) y = x1 x2 = x1 + x2 Negation (NOT) y = x = ~x = /x = x

    Rechengesetze Gegebenenfalls selbst erarbeiten!

    Normalform Disjunktive Normalform (DNF)

    Disjunktive Verknpfung von konjunktiv verknpften Variablen Variablen drfen negiert auftreten Die konjunktiv verknpften Variablen werden auch Produktterm genannt Beispiel: y = x1x3 + x2 + ~x4

    Konjunktive Normalform (KNF) Konjunktive Verknpfung von disjunktiv verknpften Variablen Beispiel: y = (x1+x3)(x3+x2)

  • 21Kombinatorische und sequentielle digitale Schaltungen

    Boolesche Gleichung, Boolesche Funktion, Schaltfunktion

    Kanonische Normalform Kanonische disjunktive Normalform (KDNF, Mintermform)

    Disjunktive Verknpfung aller konjunktiv verknpften Variablen (Elementarkonjunktionen, Minterme) fr die die Ausgangsvariable den Wert 1 annimmt

    Kanonische konjunktive Normalform (KKNF, Maxtermform) Konjunktive Verknpfung aller disjunktiv verknpften Variablen

    (Elementardisjunktionen, Maxterme) fr die die Ausgangsvariable den Wert 0 annimmt

    Beide Formen sind quivalent und ineinander berfhrbar!

  • 22Kombinatorische und sequentielle digitale Schaltungen

    Boolesche Gleichung, Boolesche Funktion, Schaltfunktion

    Designeingabe per Boolescher Gleichung beim klassischen Entwurf Nicht mglich Umwandlung in Gatterschaltung erforderlich!

    Designeingabe per Boolescher Gleichung beim PLD-Entwurf blicherweise per VHDL. Beispiel:

    beginy

  • 23Kombinatorische und sequentielle digitale Schaltungen

    Umwandlung Funktionstabelle KDNF/KKNF KDNF (Mintermform)

    Aus der Funktionstabelle alle Zeilen heraussuchen, bei denen der Ausgang 1 ist Minterme bilden (1 entspricht dem nichtnegierten, 0 dem negierten Wert der

    Eingangsvariable) Minterme disjunktiv verknpfen

    KKNF (Maxtermform) Aus der Funktionstabelle alle Zeilen heraussuchen, bei denen der Ausgang 0 ist Maxterme bilden (0 entspricht dem nichtnegierten, 1 dem negierten Wert der

    Eingangsvariable) Maxterme konjunktiv verknpfen

    Beispiel (XOR):

    x1 x2 y

    0 0 0

    0 1 1

    1 0 1

    1 1 0

    KDNF: y = ~x1x2 + x1~x2KKNF: y = (x1+x2)(~x1+~x2)

    berfhrung: y = (x1+x2)(~x1+~x2) = x1~x1 + x1~x2 + x2~x1 + x2~x2= 0 = 0

  • 24Kombinatorische und sequentielle digitale Schaltungen

    Weitere Beschreibungsform-Umwandlungen

    Boolesche Gleichung Funktionstabelle Einsetzen Eingangsbelegung, ausrechnen und in Tabelle eintragen Fr jede mgliche Eingangsbelegung wiederholen

    Funktionstabelle Schaltung Funktioniert nur bei ganz einfachen logischen Verknpfungen,

    fehleranfllig Boolesche Gleichung Schaltung

    Geht nur, wenn alle bentigten Schaltsymbole zur Verfgung stehen Schaltung Funktionstabelle

    Einsetzen Eingangsbelegung, durcharbeiten und in Tabelle eintragen Fr jede mgliche Eingangsbelegung wiederholen

    Schaltung Boolesche Gleichung Einfach ablesen

  • 25Kombinatorische und sequentielle digitale Schaltungen

    Klassischer Entwurf und rechnergesttzter Implementierung

    Ohne exakte Kenntnis des technischen Realisierungsprinzips der digitalen Schaltung liefert jedes noch so gute Minimierungsverfahren nur suboptimale Ergebnisse!

    Verbale Beschreibung der Aufgabe

    Boolsche GleichungFunktiontabelle

    Minimierungsverfahren(KV-Diagramm etc.)

    Mapping auf Zielschaltkreise (z. B. NAND)

    Verbale Beschreibung der Aufgabe

    Boolsche GleichungFunktiontabelle

    Minimierungsverfahren

    Mapping auf Zielstruktur (z. B. LUT)Mas

    chin

    ell

  • 26Kombinatorische und sequentielle digitale Schaltungen

    Minimierungsverfahren Ziel eines Minimierungsverfahrens (Reduktionsverfahrens)

    allgemein: Lsen der Aufgabe mit dem geringsten Aufwand... klassischen Verfahren (z.B. Karnaugh-Diagramm): Anzahl der logischen

    Verknpfungen minimieren diskrete Implementierung: Minimierung Gatter/Schaltkreise/Kosten

    Klassische Verfahren versagen hier! PLD Implementierung: Flchenminimum vs. Verzgerungszeit vs.

    Glitches Klassische Verfahren versagen hier!

    Schlufolgerung Im PLD-Bereich ist die Anwendung von klassischen Minimierungs-

    verfahren meist kontraproduktiv Verfahren werden hier nicht behandelt!

    dont cares dont cares fhren je nach Zielstruktur entweder zu erheblichen

    Vereinfachungen der Schaltung oder bringen gar nichts Dies bei der Eingabe bercksichtigen!

  • 27Kombinatorische und sequentielle digitale Schaltungen

    Zusammenfassung

    Wichtig! Jede beliebige kombinatorische Schaltung kann als zweistufige

    Schaltung realisiert werden. Man bentigt: AND, OR, INV Man benutzt dazu aber meist nicht die KDNF/KKNF sondern eine

    minimierte DNF/KNF Je nach Funktion ist die DNF oder die KNF weniger aufwendig Ist nur die DNF realisierbar und ist diese aufwendiger als die KNF,

    so kann man auch ~y realisieren und den Ausgang negieren

  • 28Kombinatorische und sequentielle digitale Schaltungen

    Welche Beschreibungsform beim PLD verwenden?

    Nehmen Sie doch, was Sie wollen! Es handelt sich in den allermeisten Fllen um eine logische Beschreibung! Die logische Beschreibung wird allerdings vom Compiler auf eine Schaltung

    umgesetzt! Daher ist die Kenntnis der Realisierungsprinzipien von digitalen

    Grundschaltungen hilfreich, um den Compiler und das Verhalten der synthetisierten Schaltung besser zu verstehen!

    Umstritten: Verwendung von herstellerspezifischen Makros fr kombinatorische

    Grundschaltungen bei der Designeingabe. Portierbarkeit eingeschrnkt! Wird in einem der nchsten Kapitel nher erlutert...

  • 29Kombinatorische und sequentielle digitale Schaltungen

    Kombinatorische Schaltungen1. Grundlagen 2. Statische und dynamische Parameter

    3. Kombinatorische Standardschaltungen4. Technische Realisierungsprinzipien

    Sequentielle Schaltungen5. Grundlagen sequentieller Schaltungen6. Flipflops7. Sequentielle Standardschaltungen8. Allgemeine Prinzipien synchroner sequentieller Schaltungen

  • 30Kombinatorische und sequentielle digitale Schaltungen

    Statische und dynamische Parameter

    Kombinatorischer Block innerhalb eines PLD

    Statische Parameter Interessieren in der Regel nicht man geht davon

    aus, dass es funktioniert.

    Dynamische Parameter Verzgerungszeit tD

    Kombinatorischer Block mit Verbindung zur Auenwelt

    I/O-Standard (statisch / dynamisch) Pegel (TTL, LVCMOS33, LVCMOS25, LVDS25,) Single-Ended I/O oder Differential I/O Eingangsstrme, kapazitive Last Ausgangskennlinie Slew Rate fr Ausgnge

    Digitally Controlled Impedance (DCI) (Leitungsanpassung, dynamisch)

    Verzgerungszeit tD (dynamisch) Pin-zu-Pin

    Wichtigster dynamischer Parameter (um die Struktur und die Funktion von realen Schaltungen zu erklren) ist die Verzgerungszeit tD!!!Die Verzgerungszeit tD kann real niemals 0 werden!Die Verzgerungszeit tD (bzw. Differenzen) ist Ursache fr Glitches (Hazards) und Wettlufe (Races, Race Conditions)

    Tafel: Beispielschaltung Glitch

  • 31Kombinatorische und sequentielle digitale Schaltungen

    Kombinatorische Schaltungen1. Grundlagen2. Statische und dynamische Parameter 3. Kombinatorische Standardschaltungen

    4. Technische Realisierungsprinzipien

    Sequentielle Schaltungen5. Grundlagen sequentieller Schaltungen6. Flipflops7. Sequentielle Standardschaltungen8. Allgemeine Prinzipien synchroner sequentieller Schaltungen

  • 32Kombinatorische und sequentielle digitale Schaltungen

    Kombinatorische Standardschaltungen

    Logikgatter (Elementare Grundgatter) NAND, NOR, NOT, AND, OR, XOR, ...

    Codewandler 7-Segment-Decoder, ...

    Multiplexer und Demultiplexer

    Rechenschaltungen Addierer, Multiplizierer, In der bung!

  • 33Kombinatorische und sequentielle digitale Schaltungen

    Codewandler

    dual zu 1-aus-n Decoder (n = 2..16)BCD zu 7-Segment DecoderDezimal zu BCD EncoderPriorittsdecoder...

    Zeitverhalten Verzgerungszeit Glitches

    vollstndiger Codewandler jeder Eingangsvariablenkombination ist ein

    gltiges Ausgangswort zugeordnetunvollstndiger Codewandler

    nur einem Teil der Eingangsvariablenkombinationen ist ein gltiges Ausgangswort zugeordnet

    Vorteil: Minimierungsverfahren hat Spielraum, Realisierungsaufwand sinkt u. U. drastisch

    Nachteil: Folgen bei undefinierten Belegungen nicht vorhersehbar

    Beispiel: BCD zu 7-Segment Decoder

    Frher...Spezialschaltkreise aus Schaltkreisfamilien

    Heute...Logikfunktionen innerhalb von PLD,

    Eingabe ber: Schaltplan (ungnstig) Boolsche Gleichung (besser) Funktionstabelle (ideal)

    fX YN-bit-

    EingangscodeM-bit-Ausgangscode

    !

  • 34Kombinatorische und sequentielle digitale Schaltungen

    Beispiel dual zu 1-aus-4 Decoder

  • 35Kombinatorische und sequentielle digitale Schaltungen

    Beispiel dual zu 1-aus-10 (BCD zu Dezimal) Decoder

  • 36Kombinatorische und sequentielle digitale Schaltungen

    Beispiel dual zu 1-aus-10 (BCD zu Dezimal) Decoder

  • 37Kombinatorische und sequentielle digitale Schaltungen

    Beispiel BCD zu 7-Segment Decoder

  • 38Kombinatorische und sequentielle digitale Schaltungen

    Beispiel BCD zu 7-Segment Decoder

  • 39Kombinatorische und sequentielle digitale Schaltungen

    Beispiel7-Segment Decoder

    mit VHDL

  • 41Kombinatorische und sequentielle digitale Schaltungen

    Multiplexer und Demultiplexer

    Multiplexer Demultiplexer

    Nicht ausgewhlte Ausgnge liegen bei der elektronischen

    Variante blicherweise auf 0!

  • 42Kombinatorische und sequentielle digitale Schaltungen

    Interner Aufbau von Multiplexern

    Realisierung z. B. mit Transmission-Gates

    Realisierung mit Logikgattern bzw. Logikfunktionen

  • 43Kombinatorische und sequentielle digitale Schaltungen

    Interner Aufbau von Multiplexern

    Gatterrealisierung

    Transmission-GateRealisierung

    u. U. mehrfach verwendbar

    Signalregeneration erforderlich!

  • 44Kombinatorische und sequentielle digitale Schaltungen

    Interner Aufbau von Multiplexern

    Vorteil der Kaskadierung: Kein Decoder fr

    S3..S0 erforderlich!

  • 45Kombinatorische und sequentielle digitale Schaltungen

    Demultiplexer

    Demultiplexer

    dual zu 1-aus-n Decoder mit Enable-Eingang

  • 46Kombinatorische und sequentielle digitale Schaltungen

    Kombinatorische Schaltungen1. Grundlagen2. Statische und dynamische Parameter3. Kombinatorische Standardschaltungen 4. Technische Realisierungsprinzipien

    Sequentielle Schaltungen5. Grundlagen sequentieller Schaltungen6. Flipflops7. Sequentielle Standardschaltungen8. Allgemeine Prinzipien synchroner sequentieller Schaltungen

  • 47Kombinatorische und sequentielle digitale Schaltungen

    Realisierungsprinzipien kombinatorischer Schaltungen

    Realisierung mit Logikgattern

    (direkte Umsetzung)

    Produkttermbasierende Realisierung Realisierung mit Funktionstabellen

    Multiplexer Matrixspeicher

  • 48Kombinatorische und sequentielle digitale Schaltungen

    Realisierung mit Logikgattern

    Direkte Umsetzung der Boolschen Gleichung (Minimale Form?) durch Logikgatter!

    z. B.: y = x1x2 + ~x3x4

    Variante 1:beliebige Logikgatter stehen zur Verfgung

    Variante 2:Umsetzung auf NAND

    Reduktionsverfahren (Ziel?) ... Verzgerungszeiten ... Glitches ...

  • 49Kombinatorische und sequentielle digitale Schaltungen

    Produkttermbasierende Realisierung

    Direkte Umsetzung der Boolschen Gleichung in der DNF durch Logikgatter!

    z.B.: y = x1x2 + ~x3x4

    Wenn Gatter mit ausreichender Eingangszahl zu Verfgung stehen, sind beliebige Funktionen realisierbar

    dont cares fhren zu Vereinfachungen Falls die KNF einfacher als die DNF ist, realisiert man die KNF als DNF +

    Negator am Ausgang Reduktionsverfahren ... Verzgerungszeiten ... Glitches ...

    Ausgangspunkt KDNF (kanonische disjunktive Normalform = Mintermform)

    Reduktion zur minimalen DNF (minimale disjunktive Normalform) Realisierung mit zweistufiger Logik (1. Stufe UND, 2. Stufe ODER)

  • 50Kombinatorische und sequentielle digitale Schaltungen

    Varianten der produkttermbasierenden Realisierung

    spezielle Symbolik

  • 51Kombinatorische und sequentielle digitale Schaltungen

    Varianten der produkttermbasierenden Realisierung

    Programmable Logic Array (PLA)

  • 52Kombinatorische und sequentielle digitale Schaltungen

    Varianten der produkttermbasierenden Realisierung

    Programmable Array Logic (PAL)(Markenname)

  • 53Kombinatorische und sequentielle digitale Schaltungen

    Varianten der produkttermbasierenden Realisierung

    entspricht logischeinem (P)ROM

    Aufbau eines (P)ROM ist allerdings ganz anders!

  • 54Kombinatorische und sequentielle digitale Schaltungen

    MUX-Funktionsgenerator (Prinzip)

    0/1110/1010/1100/100yx0x1

  • 55Kombinatorische und sequentielle digitale Schaltungen

    MUX-Funktionsgenerator

    Funktion Reduktionsverfahren (Minimierung) ... Verzgerungszeiten ...

  • 56Kombinatorische und sequentielle digitale Schaltungen

    Realisierung mit Funktionsgeneratoren

    Funktionsgenerator, LUT

    direkte Umsetzung einer Funktionstabellemeist MUX-Realisierung

  • 57Kombinatorische und sequentielle digitale Schaltungen

    Kombinatorische Schaltungen1. Grundlagen2. Statische und dynamische Parameter3. Kombinatorische Standardschaltungen4. Technische Realisierungsprinzipien

    Sequentielle Schaltungen 1. Grundlagen sequentieller Schaltungen 2. Flipflops 3. Sequentielle Standardschaltungen 4. Allgemeine Prinzipien synchroner sequentieller Schaltungen 5. FSM

  • 58Kombinatorische und sequentielle digitale Schaltungen

    Sequentielle Schaltungen (Folgeschaltungen, Schaltwerke)

    Folge von Eingangsbelegungen erzeugt Folge von Ausgangsbelegungen.

    Eine bestimmte Eingangsbelegung mehrere Ausgangsbelegungen mglich (Vorgeschichte entscheidet, Gedchtnis!) ?

    SPLD(PAL, GAL, ...) CPLD

    FPGAGate-Array

    Sea-of-Gates

    Standardzelle

    Vollkundenspezifischer-Schaltkreis

    ???X Y

  • 60Kombinatorische und sequentielle digitale Schaltungen

    Wie funktioniert das?

    XY

    Zt

    Zt+1

    gSf

    Takt

    Verhaltensbeschreibung (Automatengraph) Grundlegende Struktur

    Technische Realisierung (Endlicher Automat)

  • 62Kombinatorische und sequentielle digitale Schaltungen

    Beispiel: RS-Flipflop (die allereinfachste sequentielle Schaltung)

    Reset001Dominantes Set,

    Problem!100

    Set110Speicherny-111

    BemerkungyResetSet

    Speicherprinzip

    Speicherprinzip mit NAND

    RS-Flipflop aus NAND (speichert ein bit)

    bliche Darstellung eines RS-Flipflops!

  • 64Kombinatorische und sequentielle digitale Schaltungen

    Flipflops

    Das Flipflop grundlegendes wiederbeschreibbares Speicherelement, Basis aller

    sequentiellen Schaltungen Geschichte...

    Einteilung in Klassen (nach Seifart): Klasse 1 Klasse 2 Klasse 3

    Nur die Klasse 3 ist direkt zum Aufbau von getakteten sequentiellen Schaltungen (synchronen Schaltungen) geeignet!

    Problem: Die Begriffe Flipflop, Latch, Register und Flankensteuerung werden nicht einheitlich verwendet!

  • 65Kombinatorische und sequentielle digitale Schaltungen

    Einteilung von Flipflops in KlassenFlipflop

    nichttaktgesteuert

    taktgesteuert

    Speicher-Flipflops

    Klasse 1 Klasse 2

    Auffang-Flipflops(Latches)

    Zhl-Flipflops(Flipflops oder Register)

    Klasse 3

    transparent(taktzustandsgesteuert)

    NICHT transparent(taktflankengesteuert)

    einflankengesteuertzweiflankengesteuerteinflankengetriggertzweiflankengetriggert

    pulsgesteuertpulsgetriggertMaster-Slavedynamisch

    meist Flipflopoder Register

    meist Latch

  • 66Kombinatorische und sequentielle digitale Schaltungen

    Bezeichnungen fr Flipflops Klasse 1: nicht taktgesteuert

    Bistabiler Multivibrator, Speicher Flipflop, RS-Flipflop Meist keine Verwechselungsgefahr!

    Klasse 2: taktzustandsgesteuert Auffang-Flipflop, Latch, Data-Latch, transparentes Flipflop, Flipflop

    Klasse 3: taktflankengesteuert Zhl-Flipflop, Flipflop (Problem: Oberbegriff), Register (Problem: auch fr Flipflop-Gruppe und

    prozessor-internen Speicher)

    Die Begriffe einflankengesteuert, zweiflankengesteuert einflankengetriggert, zweiflankengetriggert pulsgesteuert, pulsgetriggert Master-Slave, dynamisch

    mglichst meiden bzw. nur im passenden Zusammenhang verwenden. In der gebruchlichen Literatur werden die Begriffe nicht einheitlich verwendet!

    Spricht man ganz allgemein (Flipflop als Black-Box) von taktzustandsgesteuert und taktflankengesteuert, so will man damit Klasse 2 und Klasse 3 unterscheiden. Man will in diesem Moment nicht auf die Realisierung des Flipflops eingehen!

  • 67Kombinatorische und sequentielle digitale Schaltungen

    Klasse 1: Das RS-Flipflop Einfachstes Speicherflipflop

    Keine Taktsteuerung! Achtung! Eingnge Low-aktiv! Wird das Flipflop aus NOR-Gattern aufgebaut, sind die

    Eingnge High-aktiv! Heutzutage keine sinnvolle Verwendung mehr, das RS-Flipflop

    ist allerdings Bestandteil der nachfolgenden Flipflops!

    Reset001Dominantes Set,

    Problem!100

    Set110

    Speicherny-111BemerkungyResetSet

    Vorzustand!(y-1 // yn-1 // no chg // )

  • 68Kombinatorische und sequentielle digitale Schaltungen

    Transmission-Gate in CMOS

    Schaltermodell Transmission-Gate = Halbleiter-Relais

  • 69Kombinatorische und sequentielle digitale Schaltungen

    G

    D

    ?Q

    Klasse 2: Das Latch (Beispiel D-Latch)

    Realisierungsbeispiel (CMOS)Clk G

    CLK oder C oder Gohne > !!! Transparent!

    G=1 Latch wirkt wie ein Stck Draht!

  • 71Kombinatorische und sequentielle digitale Schaltungen

    C

    D

    Q ?

    Klasse 3: Das D-Flipflop

  • 73Kombinatorische und sequentielle digitale Schaltungen

    Ein Realisierungsprinzip fr D-Flipflops

    C

    G1

    G2

    D

    Q =D1 2

    Q2

    Q(D-FF)

    fr t >0s

    Master-Slave-Prinzip (Schleusenprinzip) keine transparente Phase!

    In der Literatur meistens mit folgenden Begriffen beschrieben: D-Flipflop Master-Slave einflankengesteuert

    Achtung! Innerhalb der Schaltung gibt es keine Elemente, die auf eine Flanke reagieren!

    Tafel: Taktflanke/Wasser

  • 75Kombinatorische und sequentielle digitale Schaltungen

    Ein Realisierungsprinzip fr D-Flipflops

  • 77Kombinatorische und sequentielle digitale Schaltungen

    C

    TQ

    C

    D Q

    FD

    Q

    T

    XOR2

    C

    T

    Q

    Klasse 3: Das T-Flipflop

    C

    T

    QMgliche Realisierung

  • 79Kombinatorische und sequentielle digitale Schaltungen

    Klasse 3: Das JK-Flipflop

    Abhngig vom Aufbau gibt es (historisch bedingt) mindestens 3 Varianten:(1) Klassisches Master-Slave aus 2 RS-Flipflops

    zweiflankengesteuert steigende Flanke bernahme J&K, nderungen von J&K whrend C=1 verboten, fallende Flanke

    Schalten des Ausgangs, Verzgerung um diese Zeit(2) Wie zuvor, aber Verriegelung von J&K whrend C=1(3) Master-Slave aus 2 x D-Latch + Logik (Aktuelle Variante!)

    einflankengesteuert Zeitverhalten wie D-Flipflop, funktionell universeller

    Variante 3!

  • 81Kombinatorische und sequentielle digitale Schaltungen

    Klasse 3: Das JK-Flipflop

    Mgliche Realisierung (Variante 3)

  • 83Kombinatorische und sequentielle digitale Schaltungen

    Klasse 3: Echte flankengesteuerte Flipflops...

    ... Sollen hier nicht besprochen werden!

    Grnde: Kritische Dimensionierung, stranfllig, in PLDs nicht verwendet!

  • 84Kombinatorische und sequentielle digitale Schaltungen

    Reales Zeitverhalten eines D-Flipflops

    C

    D

    Q

    ts th

    td

  • 86Kombinatorische und sequentielle digitale Schaltungen

    Beispiel

    1 TILO

    CLB Output (X, Y)(Combinatorial)

    CLB Input (A,B,C,D,E)

    CLB Clock

    CLB Input(Direct In)

    CLB Input(Enable Clock)

    CLB Output(Flip-Flop)

    CLB Input(Reset Direct)

    CLB Output(Flip-Flop)

    8 TCKO

    X5424

    13 T

    T

    RPW

    9 TRIO

    4 TDICK

    6 T ECCK

    12 TCL

    2 TICK 3 TCKI

    11 T CH

    5 TCKDI

    7 TCKEC

  • 88Kombinatorische und sequentielle digitale Schaltungen

    Beispiel

    Notes: 1. Timing is based on the XC3042A, for other devices see timing calculator.2. The CLB K to Q output delay (TCKO, #8) of any CLB, plus the shortest possible interconnect delay, is always longer than the

    Data In hold time requirement (TCKDI, #5) of any CLB on the same die.

    Speed Grade -7 -6

    Description Symbol Min Max Min Max Units

    Combinatorial Delay

    Logic Variables A, B, C, D, E, to outputs X or Y

    FG Mode

    F and FGM Mode

    1 TILO 5.1

    5.6

    4.1

    4.6

    ns

    ns

    Sequential delay

    Clock k to outputs X or Y

    Clock k to outputs X or Y when Q is returned

    through function generators F or G to drive X or Y

    FG Mode

    F and FGM Mode

    8 T CKO

    TQLO

    4.5

    9.5

    10.0

    4.0

    8.0

    8.5

    ns

    ns

    ns

    Set-up time before clock K

    Logic Variables A, B, C, D, E

    FG Mode

    F and FGM Mode

    Data In DI

    Enable Clock EC

    2

    4

    6

    TICK

    TDICKTECCK

    4.5

    5.0

    4.0

    4.5

    3.5

    4.0

    3.0

    4.0

    ns

    ns

    ns

    ns

    Hold Time after clock K

    Logic Variables A, B, C, D, E

    Data In DI2

    Enable Clock EC

    3

    5

    7

    TCKITCKDITCKEC

    0

    1.0

    2.0

    0

    1.0

    2.0

    ns

    ns

    ns

    Clock

    Clock High time

    Clock Low time

    Max. flip-flop toggle rate

    11

    12

    TCHTCLFCLK

    4.0

    4.0

    113.0

    3.5

    3.5

    135.0

    ns

    ns

    MHz

    Reset Direct (RD)

    RD width

    delay from RD to outputs X or Y

    13

    9

    TRPWTRIO

    6.0

    6.0

    5.0

    5.0

    ns

    ns

    Global Reset (RESET Pad)1

    RESET width (Low)

    delay from RESET pad to outputs X or Y

    TMRWTMRQ

    16.0

    19.0

    14.0

    17.0

    ns

    ns

  • 90Kombinatorische und sequentielle digitale Schaltungen

    Sequentielle Standardschaltungen

    Frequenzteiler Zhler Schieberegister ... Hilfsschaltungen

    Synchronisierung Impulsverkrzungen Taktaufbereitung Kontaktentprellung ....

  • 91Kombinatorische und sequentielle digitale Schaltungen

    Der Binrteiler

    fQ_FD = fCLK / 2 Wichtig: Flipflop Klasse 3

    erforderlich (keine Transparenz) Verwendbare Flipflops: D, T, JK

    Funktionelle Simulation

    Timing-Simulation

    mit D-FF mit T-FF

  • 92Kombinatorische und sequentielle digitale Schaltungen

    Was passiert, wenn man ein Latch verwendet?Beispiel Binrteiler: Latch statt Zhl-Flipflop (Fehler!)

    LD

    G

    LD

    G

    Q D

    INV

    LD

    G

    LD

    G

    Q D

    INV

    CLK

    Out3Out3

    LD

    G

    LD

    G

    Q D

    INVINV

    CLK

    Out1Out1

    fr G = 1

    INV

    GG = 1GG = 1

    LD

    G

    LD

    G

    Q D

    INV

    CLK

    Out1Out1

    t < tP D

    tD

    Lsung 1 DFF

    Lsung 2 dynamisch

    Schwingung mit verzgerungszeitabhngiger Frequenzam Ausgang! Kein Binrteiler!

    Hintergrund der Frage: Man macht sowas nicht findetaber im Netz reihenweise Beispielschaltungen

    (die natrlich nicht funktionieren)

  • 94Kombinatorische und sequentielle digitale Schaltungen

    Der asynchrone Zhler

    4-bit Zhler Zhlt von 0 bis 15 Vorwrtszhler (ohne Inverter Rckwrtszhler)! Wird nur ein Ausgang verwendet: Teiler (fQ_FD = fCLK / 2n) Werden mehrere Ausgnge verwendet und als Zahl interpretiert: Zhler

    Funktionelle Simulation

  • 95Kombinatorische und sequentielle digitale Schaltungen

    Der asynchrone Zhler

    Vorteil Einfacher Aufbau

    Nachteil Ausgnge schalten nicht synchron!

    Problem 1: Verzgerungszeiten addieren sich und knnten zu gro werden!

    Problem 2: Verzgerung zur letzten Stelle kann grer als die Periodendauer des Taktes werden!

    Problem 3: Wann kann ich die Daten weiterverarbeiten?

    Timing - Simulation

  • 96Kombinatorische und sequentielle digitale Schaltungen

    Der asynchrone Zhler

    Was tun bei einem Zhlumfang ungleich 2n? Bei Vorwrtszhlern:

    Zhler nach dem gewnschten Endzhlerstand auf 0zurcksetzen

    Bei Rckwrtszhlern: Zhler bei 0 mit dem gewnschten Startwert laden

    Beispiel Dezimalzhler: 0 1 2 3 4 5 6 7 8 9 0 1 2 3-bit Zhler geht nicht (0..7) 4-bit Zhler verwenden (0..15) und Zhlumfang

    begrenzen

  • 97Kombinatorische und sequentielle digitale Schaltungen

    Der asynchrone Zhler mit Abbruch (Beispiel 0..9)

    Sieht auf den ersten Blick nicht schlecht aus, aaaaber

    Timing - SimulationDetektion der 10 CLR (asynchrones Reset) nach kurzer Verzgerung sind alle Ausgnge 0

  • 98Kombinatorische und sequentielle digitale Schaltungen

    Der asynchrone Zhler mit Abbruch (Beispiel 0..9)Timing - Simulation

    Probleme: Rcksetzimpuls abhngig

    von den Verzgerungszeiten und extrem schmal es ist nicht sichergestellt, dass alle Flipflops korrekt rckgesetzt werden!

    Glitches am Rcksetzdecoder fhren zum fehlerhaften Rcksetzen einzelner oder aller Flipflops

    Kurzzeitig fehlerhafte Werte am Zhlerausgang

  • 99Kombinatorische und sequentielle digitale Schaltungen

    Parallelbertrag(look ahead carry, carry look ahead) T0 = 1 T1 = Q0 T2 = Q0 & Q1 T3 = Q0 & Q1 & Q2 T4 = Q0 & Q1 & Q2 & Q3 ...

    Die (heutzutage) bessere Variante: synchroner Zhler

    Serienbertrag(series carry, carry ripple) T0 = 1 T1 = Q0 T2 = T1 & Q1 T3 = T2 & Q2 T4 = T3 & Q3 ...

    Smtliche Takteingnge (CLK) der Flip-Flops sind mit dem Eingangstakt verbundenDamit schalten alle Flip-Flops taktsynchron

    ber Vorbereitungseingnge wird festgelegt, welche Flip-Flops zu schalten haben und welche nichtMeist Verwendung von T-Flip-Flops

    Vor- und Nachteile...

    Q0 & Q1 = T2

  • 100Kombinatorische und sequentielle digitale Schaltungen

    Synchroner Zhler 2n

    4-bit Zhler Zhlt von 0 bis 15 Vorwrts! Parallelbertrag Wird nur ein Ausgang verwendet: Teiler (fQ_FD = fCLK / 2n) Werden mehrere Ausgnge verwendet und als Zahl interpretiert: Zhler

    1111011110110011110101011001000111100110101000101100010010000000

    sQ0sQ1sQ2sQ3

  • 101Kombinatorische und sequentielle digitale Schaltungen

    Synchroner Zhler 2n

    Timing - Simulation

    Zoom nchste Seite

  • 102Kombinatorische und sequentielle digitale Schaltungen

    Synchroner Zhler 2n

    Timing - Simulation

  • 103Kombinatorische und sequentielle digitale Schaltungen

    Der synchrone Zhler mit Abbruch (Beispiel 0..9)

    Timing - SimulationDetektion der 9 R (synchrones Reset) mit dem nchsten Taktbergang werden alle Flipflops zurckgesetzt

    Zoom nchste Seite

  • 104Kombinatorische und sequentielle digitale Schaltungen

    Der synchrone Zhler mit Abbruch (Beispiel 0..9)

    Probleme: KEINE

  • 105Kombinatorische und sequentielle digitale Schaltungen

    Vergleich Frequenzteiler mit Zhler

    Frequenzteiler = Zhler ohne parallele Datenausgnge Ziel: Die Eingangsfrequenz soll um den Faktor N geteilt werden ein Eingang, ein

    Ausgang Asynchroner Zhler als Frequenzteiler: Funktioniert, aber Eingangstakt und Ausgangstakt

    undefiniert phasenverschoben! Synchroner Zhler als Teiler: Bevorzugt, Eingangstakt und Ausgangstakt definiert

    phasenverschoben. Hinweis: Mit speziellen Schaltungen (PLL, DLL) kann der Phasenversatz eliminiert werden.

    Zhler Ziel: Zhlen von Impulsen ein Eingang, mehrere Ausgnge (Interpretation als Zahl)

    Asynchroner Zhler: Funktioniert, aber extreme Race Conditions und bewusst fehlerhafte Zwischenwerte (Zhlerabbruch) an den Ausgngen!

    Synchroner Zhler als Teiler: Bevorzugt, definierte (beherrschbare) Race Conditions an den Ausgngen.

  • 106Kombinatorische und sequentielle digitale Schaltungen

    Schieberegister

    Funktion Mit jedem Taktbergang werden die Daten von Flipflop zu Flipflop

    weitergereicht Eingnge seriell oder parallel Ausgnge seriell oder parallel

    Anwendungen Taktbezogene Verzgerung von Daten Seriell-parallel Wandlung Parallel-seriell Wandlung Rechenoperationen (Multiplikation mit 2, Division durch 2, )

  • 107Kombinatorische und sequentielle digitale Schaltungen

    Schieberegister

  • 108Kombinatorische und sequentielle digitale Schaltungen

    Schieberegister

  • 109Kombinatorische und sequentielle digitale Schaltungen

    Hilfsschaltungen

    Hilfsschaltungen Synchronisierung Impulsverkrzungen Taktaufbereitung Kontaktentprellung ....

    Hier nicht behandelt...

  • 110Kombinatorische und sequentielle digitale Schaltungen

    Der bse Glitch

  • 111Kombinatorische und sequentielle digitale Schaltungen

    Allgemeine Prinzipien synchroner sequentieller Schaltungen

    Problem? Race Conditions (Wettlufe) und Glitches (Hazards) an Y? Race Conditions (Wettlufe) und Glitches (Hazards) an den

    Rckkopplungen? Frage: Wie kann man die Rckkopplung der Race Conditions und

    Glitches verhindern? Lsung

    Schritt 1: Taktsteuerung am Eingang!!! Schritt 2: Taktgesteuerte Zwischenspeicherung der rckgekoppelten

    Signale

    Maximale Taktfrequenz???

  • 113Kombinatorische und sequentielle digitale Schaltungen

    Zusammenfassung und Vergleich Allgemeine Bezeichnungen:

    Sequentielle Schaltung Folgeschaltung Schaltwerk

    Jede sequentielle Schaltung ist rckgekoppelt! Unterscheidung in

    Asynchrone sequentielle Schaltungen Ausgangssignale werden direkt auf die Eingnge zurckgekoppelt Eingangssignalnderungen wirken sich nach mehr oder weniger gut zu

    bestimmenden Verzgerungszeiten auf das System aus; Verzgerungszeiten differieren zwischen den Ausgangssignalen

    Hauptproblem: Rckkopplung von Race Conditions und Glitches Synchrone sequentielle Schaltungen

    Ausgangssignale werden taktgesteuert zwischengespeichert und derSpeicherausgang wird zurckgekoppelt

    Nach Mglichkeit werden heute synchrone sequentielle Schaltungen verwendet Entwurf einfacher, Betrieb sicherer (gewisse Unabhngigkeit gegenber Verzgerungszeitschwankungen) In PLD sind asynchrone Schaltwerke nur in Ausnahmefllen realisierbar (Anwender hat ungengenden Einflu

    auf Struktur und Verzgerungszeiten der implementierten Schaltung)

  • 115Kombinatorische und sequentielle digitale Schaltungen

    Warum synchrones Designs? Typisches Anfngererlebnis

    Schaltung entworfen Simulation OK Implementierung funktioniert Hurra!!!

    2 Wochen spter... Schaltung erweitert Simulation OK Implementierung erster Teil funktioniert nicht mehr ?????

    Asynchrone Designs Verbrauchen weniger Ressourcen??? Im PLD strukturabhngig! Schneller??? Kommt drauf an Weniger Denkaufwand? scheinbar!!! uerst schlecht zu simulieren und zu debuggen!!! Besondere FPGA-Probleme

    Verdrahtungs-Verzgerungszeiten meist grer als Gatter-Verzgerungszeiten (Verzgerungszeit eines kombinatorischen Logikblocks)

    Verzgerungszeiten nur unzureichend beeinflubar! Nach jedem neuen Implementierungslauf ndern sich die Verzgerungszeiten und

    damit das Verhalten der Schaltung!!!

    Unmotivierte asynchrone Designs ruinieren Ihr Projekt und Ihre Karriere!

  • 116Kombinatorische und sequentielle digitale Schaltungen

    Die Idee des synchronen Designs

    Ausgabedaten werden ausschlielich systemgetakteten Flipflop-Ausgngen entnommen (Glitchfrei und minimale Race Conditions)!

    Alle Flipflops bernehmen die Daten synchron (gleichzeitig), d. h. alle Takteingnge sind parallelgeschaltet und liegen am Systemtakt.

    Nach der Datenbernahme liegen an den kombinatorischen Schaltungsteilen neue Daten an.

    Bis zur nchsten aktiven Taktflanke sind die kombinatorischen Schaltungsteile eingeschwungen und die Daten an den Flipflop-Eingngen stabil.

    Kombinatorische Rckkopplungen sind verboten! Glitches und Race Conditions (am Ausgang der kombinatorischen

    Schaltungsteile) zwischen zwei aktiven Taktflanken haben damit keine Auswirkung auf die Funktion der Schaltung!

  • 117Kombinatorische und sequentielle digitale Schaltungen

    Wie kann man sequentielle Schaltungen systematisch entwerfen?

    XY

    Zt

    Zt+1

    gSf

    Takt

    Verhaltensbeschreibung(Automatengraph oder Zustandsbergangsdiagramm) Grundlegende Struktur

    Technische Realisierung (Endlicher Automat)

  • 119Kombinatorische und sequentielle digitale Schaltungen

    Endlicher Automat

    Ein endlicher Automat (EA, auch Zustandsmaschine, Zustandsautomat; englisch finite state machine (FSM)) ist ein Modell eines Verhaltens, bestehend aus Zustnden, Zustandsbergngen und Aktionen. Ein Automat heit endlich, wenn die Menge der Zustnde, die er annehmen kann (spter S

    genannt), endlich ist. Ein endlicher Automat ist ein Spezialfall aus der Menge der Automaten. Ein Zustand speichert die Information ber die Vergangenheit, d. h. er reflektiert in gewissem Umfang die nderungen der Eingabe seit dem Systemstart bis zum aktuellen Zeitpunkt. Ein Zustandsbergang zeigt eine nderung des Zustandes des EA und wird durch logische Bedingungen beschrieben, die erfllt sein mssen, um den bergang zu ermglichen. Eine Aktion ist die Ausgabe des EA, die in einer bestimmten Situation erfolgt. Es gibt vier Typen von Aktionen Eingangsaktion -- Ausgabe wird beim Eintreten in einen Zustand generiert Ausgangsaktion -- Ausgabe wird beim Verlassen eines Zustandes generiert Eingabeaktion -- Ausgabe wird abhngig vom aktuellen Zustand und der Eingabe generiert bergangsaktion -- Ausgabe wird abhngig von einem Zustandsbergang generiert

    Ein EA kann als Automatengraph (Zustandsbergangsdiagramm) dargestellt werden. Hier Spezialfall Transduktoren!

    Quelle: Wikipedia

  • 120Kombinatorische und sequentielle digitale SchaltungenAutomatentheorie

    Endlicher Automat, Zustandsmaschine, Zustandsautomat, engl. FSM Spezialfall Transduktoren

    Automatengraph (Zustandsbergangsdiagramm) zur Verhaltensbeschreibung

  • 121Kombinatorische und sequentielle digitale Schaltungen

    Technische Realisierung von endlichen Automaten

    Medwedew

    Mealy

    Moore

    Medwedew

    Moore

    Mealy

    Medwedew

    Mooref, g = kombinatorische Logiks = Zustandsspeicher (State Memory), Flipflop!

    nur EingangsaktionenY1 identisch zu Z

    nur EingangsaktionenY2 aus Z codiert

    nur EingangsaktionenY2 aus X und Z codiert

  • 122Kombinatorische und sequentielle digitale Schaltungen

    Technische Realisierung von endlichen Automaten in PLD

    Synchrone Endliche Automaten Zustandsbergang getaktet Zustandsspeicher = Zhl-Flipflops (meist D-Flipflops) Sequentielle Standardschaltungen (Zhler, Schieberegister...) lassen

    sich mit der gleichen Struktur beschreiben Zur Verbesserung des Zeitverhaltens sind aber weitergehende

    Strukturoptimierungen mglich und ggf. auch erforderlich!

    Varianten: Mealy-Automat Moore-Automat Medwedew-Automat

    Wir bentigen: kombinatorische Schaltungsblcke Zhl-Flipflops Verdrahtung

    XY

    Zt

    Zt+1

    gSf

    Takt

    f, g = kombinatorische Logiks = Zustandsspeicher