PDF-Datei

Transcrição

PDF-Datei
Digitaltechnik Teil 2
-1-
Prof . Komar
Digitaltechnik
Teil 2: Schaltwerke – asynchrone und synchrone
Inhaltsverzeichnis
Schaltwerke
Schaltwerksarten (asynchron, synchron)
Schaltwerk als Automat
Entwurf von Schaltwerken
Zustandsgraph und Zustandsfolgetabelle
Vorgehensweise beim Entwurf
Zustandsminimierung mit Schaltwerktabelle
Zustandscodierung
..................
..................
..................
.................
.................
..................
...................
.................
2
3
4
6
7
9
9
11
Flipflop (Binärspeicher)
Bistabile Kippstufen
Basis -Flipflops
Flipflops mit Taktsteuerung
Taktzustandgesteuerte Zweispeicher-FF
Taktflankengesteuerte FF (dynamische)
Zusammenfassung der Flipfloptypen
.................. 13
.................. 14
.................. 16
.................. 18
.................. 20
.................. 21
Ki ppschaltungen
Schmitt-Trigger
Monostabile Kippstufen ( Monoflop )
Astabile Kippstufen ( Multivibrator )
.................. 22
................. 23
................. 24
Zählschaltungen
Asynchrone Zähler
Synchrone Zähler
.................. 25
.................. 26
.................. 27
Register und Schieberegister
Auffangregister
Schieberegister
Schaltwerkentwurf mit Schieberegistern
...................31
................. 31
..................32
..................34
Realisierungsmöglichkeiten von Schaltwerken
Mikroprogrammsteuerwerk
Komplexe Schaltwerke
Mikroprozessor
.................. 36
.................. 37
...................39
...................40
Digitaltechnik Teil 2
Schaltwerke
-2-
Prof . Komar
( endlicher Automat, Zustandsmaschine, Finite State Machine, sequentielle Logik )
Bei Schaltnetzen ( kombinatorische Logik ) sind die Ausgangssignale stets nur eine Funktion der
augenblicklichen Eingangssignale.
Die Vorgeschichte der Eingangssignale ist ohne Bedeutung. Für jeden Eingangszustand gibt es daher genau
einen Ausgangszustand. Die Laufzeitverzögerung realer Logikgatter muß bei Schaltnetzen
nur zur Vermeidung von Fehlfunktionen ( Hazard ) und wegen der Arbeitsgeschwindigkeit beachtet werden.
Bei Schaltwerken ( sequentielle Logik ) hängt im allgemeinsten Fall der Ausgangszustand von allen
bisherigen Eingangszuständen ab.
Die Vorgeschichte ist damit von Bedeutung und das Schaltwerk benötigt ein 'Gedächtnis', technisch
ausgedrückt einen Speicher. Bei einem Schaltwerk ist daher für jeden Eingangszustand mehr als ein
Ausgangszustand möglich, denn die Ausgangsvariablen sind zusätzlich noch von den inneren
Zustandsvariablen ( gespeicherte Information = Gedächtnis ) abhängig.
Definition: Schaltwerke ( sequential circuit ) sind eine Funktionseinheit zum Verarbeiten von Schaltvariablen,
bei der die Werte aller Schaltvariablen am Ausgang ( Ausgangsvariablen ) zu einem bestimmten Zeitpunkt t 0
nach Verstreichen der Lauf- und Verzögerungszeit t d nur abhängen von den Werten aller Schaltvariablen am
Eingang ( Eingangsvariablen ) zum Zeitpunkt t 0 – td und zu endlich vielen vorangegangenen Zeitpunkten sowie
gegebenenfalls vom Anfangszustand. Ein Schaltwerk hat eine endliche Anzahl von inneren Zuständen und ist,
abstrakt gesehen, ein endlicher Automat.
Schaltwerke bestehen in der einfachsten Form aus Schaltnetzen, bei denen Ausgangsgrößen auf die Eingänge
rückgekoppelt sind.
Hierbei wird die interne Speicherfunktion durch die realen Gatterverzögerungen erzielt, die man sich in den
Rückkopplungszweigen zusammengefaßt denken kann ( sozusagen eine rückgekoppelte Verzögerungseinheit ).
Diese Lokalisierung der Verzögerung ist eine starke Abstraktion, denn die realen Verzögerungen sind über den
gesamten Signalpfad der durchlaufenden Gatter verteilt.
Impulsdiagramm
Rückgekoppeltes NOR-Schaltnetz -> 2 Eingängen S und R, 1 Zustandsvariable Q und 1Ausgang = Q
Zustandsdiagramm
( Moore – Typ )
Digitaltechnik Teil 2
-3-
Prof . Komar
Einfachstes mögliches Schaltwerk - Impulsdetektor
Eine Logikschaltung soll an ihrem Ausgang Y durch Y = 1 anzeigen, wenn in der Vergangenheit am Eingang X
ein positiver Impuls X=1 angelegen hat.
( Hinweis: Ein funktioneller Impulsdetektor würde natürlich noch einen Eingang zum Rücksetzen benötigen )
Impulsdiagramm:
X
Y
Zustandsgraph:
Zustandsfolgetabelle:
Schaltung:
X
Y
Ungetaktete Schaltwerke, bei denen die rückgekoppelte Verzögerung ohne synchronisierenden Takt und
Speicher (Flipflops) realisiert wird, werden als asynchrone Schaltwerke bezeichnet.
Wichtigste Vertreter dieser Kategorie von Digitalschaltungen sind die sogn. Kippschaltungen ( Kippstufen ),
unterteilt in:
- Bistabile
Kippst. ( Flipflop )
1 Bit Speicher
- Monostabile Kippst. ( Monoflop )
variable Impulsdauer
- Astabile
Kippst. ( Multivibrator ) periodische Rechteckschwing.
- Schmitt-Trigger
Schwellwert -Diskriminator
Asynchrone Schaltwerke werden in der Praxis nur in sehr einfacher Form realisiert, weil bei ihnen durch
unterschiedliche Laufzeiten in den einzelnen Rückkopplungszweigen Race-Probleme auftreten können, die sie
unsicher machen.
Vorteile der asynchronen Schaltwerke sind die hohe Arbeitsgeschwindigkeit und der geringere
Energieverbrauch. Da komplexere Schaltungen ( Mikroprozessoren usw.) in asynchroner Realisierung aber
aufgrund der Laufzeitproblematik sehr aufwendig zu entwerfen sind und einen höheren Schaltungsaufwand
erfordern, werden diese üblicherweise als synchrone Schaltwerke entworfen.
Synchrone Schaltwerke sind getaktete Schaltwerke, bei denen Änderungen der internen Zustandsvariablen
nur zu ganz bestimmten, vom Takt abhängigen Zeitpunkten zugelassen werden.
Um die Verzögerung durch den Takt C extern zu steuern, verwendet man spezielle getaktete Module, sogn.
Flipflops FFs, die selbst aber intern asynchron arbeiten ( FFs sind ganz einfache asynchrone Schaltwerke).
Es wird somit die Verzögerungseinheit aus triggerbaren Speicherelementen ( getaktete Flipflops )
aufgebaut, die nur bei einem gemeinsamen Taktsignal ( Clock ) die anliegende Information übernehmen ( Zeit
wird mit Clock diskretisiert ).
Die Verzögerung ( Taktperiode ) ist somit für alle Rückkopplungszweige gleich und Race-Probleme
(Einschwingvorgänge) können nicht mehr auftreten.
Dadurch sind synchrone Schaltwerke einfacher zu entwerfen und werden generell für komplexere Funktionen
bevorzugt. Durch die Taktung ist allerdings ihr Energieverbrauch gegenüber einem asynchronem Entwurf
deutlich erhöht.
Da in der synchronen Schaltungstechnik Zustandsänderungen nur im Taktperiodenabstand möglich sind, reicht
es hier aus, nur diskrete Zeitwerte zu betrachten. Damit hat man in synchronen digitalen Schaltungen neben
dem Wertebereich auch den Zeitbereich diskretisiert.
Digitaltechnik Teil 2
-4-
Prof . Komar
Aufbau und Arten von Schaltwerken
Jedes Schaltwerk läßt sich, unabhängig von einer asynchronen oder synchronen Realisierung, prinzipiell
aufteilen in einen ausschließlich verknüpfenden Teil ( kombinatorisches Schaltnetz ) und einem
ausschließlich speichernden ( verzögernden ) Teil.
Schaltwerk
Eingänge
Ausgänge
Schaltnetz
Zustände
Verzögerung
Speicher
Automat
Eine weitere Unterteilung des Schaltnetzes in Übergangs-( oder Erregungs-) und Ausgangsschaltnetz führt
auf die Unterscheidung von Mealy- und Moore-Automat, die aber letztlich in ihrem Logikverhalten äquivalent
sind, sich also gegenseitig ineinander umformen lassen ( im zeitlichen Verhalten bleiben „geringe“ Unterschiede
= der Mealy-Automat reagiert auf Eingangssignale schneller )
E/A
Z
Mealy - Automat
Der Mealy-Automat wird als übergangsorientiert bezeichnet, weil seine Ausgänge unmittelbar auf
Eingangsänderungen reagieren können ( Ausgangsänderung asynchron gegenüber evtl. Takt ).
E
Z
A
Moore- Automat
Der Moore-Automat wird als zustandsorientiert bezeichnet, weil seine Eingänge nicht unmittelbar auf den
Ausgang wirken , sondern die Ausgänge immer aus dem Zustandsvektor hergeleitet werden
( Ausgangsänderung nur synchron mit evtl. Takt ).
Digitaltechnik Teil 2
-5-
Prof . Komar
Mealy-Automat als synchrones ( getaktetes ) Schaltwerk mit synchronisierten Eingangssignalen
Bei ganz einfachen Schaltwerken, kann auch der innere Zustand ( Ausgang des Speichers ) zugleich die
Ausgangsgröße des Schaltwerks sein ( Medwedjew-Automat )
Blockstrukturen verschiedener Automaten
Bei Schaltwerken müssen im Gegensatz zu Schaltnetzen die Variablen auch in den unterschiedlichen
Zeitpunkten ( Folgewert durch + ) gekennzeichnet werden.
Bezüglich des funktionellen Aufbaus von Schaltwerken wird unterschieden:
- festverdrahtete Schaltwerke ( Gatterbausteine, Flipflops usw. )
- Realisierung mit PLD-Bausteinen ( programmierbare Logikbausteine, ermöglichen ganze Schaltwerke auf
einem Chip bzw. als Komponente eines ganzen Systems auf einem Chip ( SoC-> System on a Chip )
- mikroprogrammierte Schaltwerke ( Steuerwerk ) mittels Halbleiterspeicher, interner Aufbau der klassischen
CISC-Mikroprozessoren
- Schaltwerkfunktionen durch Mikroprozessoren ( Software )
Ein Schaltwerk ist eine schaltungstechnische Einheit zum Verarbeiten von Schaltvariablen, deren Wert an den
Ausgängen zu einem Zeitpunkt nur von den Werten an den Eingängen zum gleichen Zeitpunkt und zu endlich
vielen früheren Zeitpunkten abhängt
Schaltwerke sind äquivalent zu den deterministischen endlichen Automaten der Informatik ( endliche
Zustandsautomaten )
Unter einem asynchronem Schaltwerk versteht man eine sequentielle Schaltung, die ohne ein übergreifendes
Taktsignal betrieben wird.
Digitaltechnik Teil 2
-6-
Prof . Komar
Allgemeines zum Entwurf von Schaltwerken
Verbale Aufgabenstellung
Verdeutlichung der Aufgabenstellung durch
Impuls-Zeit-Diagramm
Mit Zustandsgraph Entwurf einer Lösung entweder als Mealy- oder Moore-Automat
( Mealy -> allgemeiner ,schneller und evtl. geringerer Schaltnetzaufwand – schwieriger verstehbar )
wichtigster, schwierigster aber auch kreativster Entwicklungsschritt
Synchroner Entwurf
Asynchroner Entwurf
Zustandscodierung im Prinzip beliebig
Einschrittige Codierung kann zu geringerem
Schaltnetzaufwand führen
Zustandscodi erung muß !!! aufgrund
ungleicher Laufzeiten in den
Rückkopplungszweigen einschrittig erfolgen.
Falls dies nicht möglich ist, müssen sogn.
dynamische Zwischenzustände eingeführt
werden, was meist eine Vergrößerung des
Aufwandes bedeutet.
Deswegen is t der asynchrone Entwurf auf
kleine Schaltwerksfunktionen begrenzt.
Im allgemeinen Fall werden Takt + FFs
(getaktete Flipflops) nur für die
Synchronisation in den Rückkopplungszweigen
verwendet. (d.h. Erzwingung gleicher
Laufzeiten in den Rückkopplungszweigen )
Sonderfall: Zähler/ Frequenzteiler bei denen
der Takt auch zugleich logisches
Eingangssignal ist. ( Taktflanken sind zu
zählen )
Zustandsminimierung mit Hilfe der Schaltwerktabelle – eine Verminderung der Anzahl der
Zustände auf das unbedingt notwendige führt zu verringertem Realisierungsaufwand
Aus Zustandsgraph die Zustandsfolgetabelle entwickeln. Sie wird für die Schaltnetzrealisierung in
diskreter Logik oder als Festwertspeicher –Schaltnetz benötigt.
Unbedingt vor Realisierung des Entwurfes die Fehlerzustände betrachten und überprüfen und
eventuell durch gezielte Festlegung von Folgezuständen korrigierend eingreifen.
Digitaltechnik Teil 2
-7-
Prof . Komar
Entwurf von Schaltwerken
Schaltwerke lassen sich mit den vom Schaltnetzentwurf bekannten Wahrheits- oder Funktionstabellen nicht
beschreiben, da für Schaltwerke neben den Ein- und Ausgangssignalen auch die inneren Zustände in zeitlicher
Abfolge betrachtet werden müssen.
Für die Analyse und Synthese von Schaltwerken verwendet man in der Entwurfsabfolge folgende Hilfsmittel:
das Impulsdiagramm
zur Veranschaulichung einer verbalen Aufgabenbeschreibung
den Zustandsgraph /-diagramm zur formalen Beschreibung des zu lösenden Problems (Synthesekern)
die Schaltwerkstabelle
zur Zustandsminimierung und damit Vereinfachung des Zustandsdiagramms
die Zustandsfolgetabelle
zur Realisierung der Schaltnetze eines Schaltwerkes mit minimalen
Aufwand (entspricht Wahrheitstabelle)
Impulsdiagramme dienen zur Veranschaulichung der zeitlichen Abläufe der Ein- und Ausgangsgrößen eines
Schaltwerkes.
Impulsschaltung
und
Impulsdiagramm
Zustandsdiagramm (Zustandsgraph)
Ausgehend von einer Funktionsbeschreibung erfolgt als erster Entwurfschritt meist das Erstellen eines
Zustandsdiagramms ( Zustandsgraph ).
Diese formale Beschreibung des zu lösenden Problems ist der eigentliche, den Ingenieur erfordernden Kern des
Entwurfes.
Ein Zustandsdiagramm oder -graph dient zur grafischen Darstellung der einzelnen Zustände und Übergänge
eines Schaltwerkes und beschreibt das Verhalten des Schaltwerkes vollständig und anschaulich.
In einem Zustandsdiagramm werden die internen Zustände durch Knoten ( Kreise ) dargestellt.
Ein Knoten ( Zustand ) ist in der Regel Ausgangspunkt für einen oder mehrere Kanten (gerichtete Linien), die
dann in jeweils einem Zielknoten ( Folgezustand ) enden.
Jede Kante stellt somit einen möglichen Übergang ( Zustandswechsel ) dar, wobei die Pfeilrichtung angibt, in
welchen Zustand übergegangen wird.
In die Knoten trägt man die Zustände ( Zustandsvektor ) entweder symbolisch oder aber bereits in der
Zustandscodierung ein.
An die Kanten werden die den Übergang bewirkenden Eingangssignale und durch Schrägstrich getrennt,
die dabei entstehenden Ausgangsgrößen angetragen ( Mealy-Automat ).
Bei einem Moore-Schaltwerk können die Ausgangssignale auch unter einem Querstrich in die Kreise
(Knoten) eingetragen werden, denn bei diesem Schaltwerkstyp sind die Ausgangssignale nur von den
Zustandsvariablen abhängig.
An die Kanten brauchen dann nur noch die Eingangsgrößen angetragen werden, die den Zustandsübergang
bewirken.
Zustandsdiagramm (Mealy )
Digitaltechnik Teil 2
-8-
Prof . Komar
Schaltwerktabelle
Für die weiteren Entwurfsschritte wird aus dem Zustandsdiagramm die Schaltwerktabelle und/oder die
Zustandsfolgetabelle abgeleitet.
Zustandsdiagramm, Schaltwerk- und Zustandsfolgetabelle enthalten die gleiche Information und können ohne
zusätzliche Angaben ineinander überführt werden.
Die Schaltwerktabelle ist die kompaktere und übersichtlichere Darstellung und ist für eine
Zustandsminimierung unerläßlich. In dieser zweidimensionalen Anordnung ( Matrix ) sind den internen
Zuständen Zeilen und den Eingangskombinationen die Spalten zugeordnet.
Als Matrixelemente werden die aus Zuständen und Eingängen sich ergebenden Folgezustände/Ausgänge Z /A
eingetragen.
Bei einem Moore-Automaten sind in der Schaltwerkstabelle alle Ausgänge einer Zeile gleich und können auch
für jede Zeile zusammengefaßt dargestellt werden.
Moore-Zustandsgraph
mit
Schaltwerktabelle
Zustandsfolgetabelle (Zustandstabelle)
Die Zustandsfolgetabelle ist im Grunde eine, für die Schaltwerksbeschreibung erweiterte Wahrheitstabelle und
kann direkt aus dem Zustandsgraphen abgeleitet werden.
In der Zustandsfolgetabelle werden die möglichen Kombinationen von Eingangsgrößen und Zustandsvariablen
auf der Eingangsseite ( linker Tabellenteil ) und die Folgezustände ( Zustandsvariablen nach Takt oder
Verzögerung ) sowie die Ausgangsgrößen auf der Ausgangsseite ( rechter Tabellenteil ) aufgetragen.
Das bedeutet, daß bei m Eingangsvariablen und p Zustandsvariablen eine Tabelle mit 2**( m+p ) Zeilen entsteht.
Ein Schaltwerk ist vollständig bestimmt, wenn Folgezustand und Ausgang für jeden internen Zustand bei jeder
möglichen Eingabe festliegen.
Die Zustandsfolgetabelle für die Beschreibung des Übergangsverhalten ist wenig anschaulich und nur bei
einfachen Aufgabenstellungen direkt aus der verbalen Funktionsbeschreibung zu erstellen.
Sie ist aber meist als Entwurfshilfe für die Realis ierung eines Schaltwerkes unerläßlich.
Zustandsgraph, Zustandsfolgetabelle
und
Schaltwerktabelle für ein Mealy-Schaltwerk
E = Eingänge, A = Ausgänge, Q = Zustände
S,R = FF – Vorbereitungseingänge bei synchroner Realisierung mit einem RS-FF
Digitaltechnik Teil 2
-9-
Prof . Komar
Vorgehensweise beim Entwurf von Schaltwerken
1. Aufgabenbeschreibung und Impulsdiagramm
Eine verbal vorgegebene Schaltwerksbeschreibung muß die Gesamtfunktion definieren und insbesondere
die Ein - und Ausgangsgrößen hinsichtlich ihres geforderten Zeitverhaltens erfassen.
Häufig legen aber weder die verbale Beschreibung noch das Impulsdiagramm die Schaltwerksfunktion bis in
die letzten Einzelheiten fest.
2. Zustandsdiagramm / Zustandsgraph
Eine vollständige Beschreibung stellt erst das Zustandsdiagramm / Zustandsgraph dar.
Ausgehend von der verbalen Beschreibung sind unterscheidbare Zustände festzulegen, die das Schaltwerk für
die vorgesehene Arbeitsweise durchlaufen muß und es sind die zugehörigen Ausgangsvektoren festzulegen.
Damit kann das Zustandsdiagramm (-graph) entwickelt werden, in dem für jeden der internen Zustände
beschrieben wird, wie die Schaltung auf jeden möglichen Eingangszustand reagiert.
Dieser Schritt, also die Herleitung der vollständigen, formalen Beschreibung aus der Aufgabenstellung ist der
schwierigste Teil des Schaltwerkentwurfes und er ist nicht formalisierbar (eigentlicher Kern der Synthese ).
Ursprüngliches Zustandsdiagramm
und
nach Ausgangsgruppen geordnete Schaltwerktabelle
3. Zustandsminimierung und Schaltwerktabelle
Für die Realisierung der vorgegebenen Schaltwerksfunktion müssen die im 2.Schritt vorgesehenen Zustände
nicht unbedingt alle erforderlich sein.
Zur Minimierung der Zustände wird das Zustandsdiagramm daraufhin untersucht, ob nicht einige Zustände
redundant und damit überflüssig sind.
Wichtigste Minimierungsregel: Wenn zwei Zustände bei identischen Eingangsgrößen dieselben
Folgezustände bei identischen Ausgangsgrößen haben, dann kann im Zustandsdiagramm auf einen der beiden
Zustände verzichtet werden.
Die Verminderung der Zustandszahl wird im allgemeinen auch zu einem verringerten Realisierungsaufwand
führen.
Mit Hilfe der Schaltwerktabelle läßt sich nun die Anzahl der Zustände am einfachsten minimieren.
Bei der Zustandsminimierung wird versucht, die Zeilenzahl der zugehörigen Schaltwerktabelle zu verringern,
ohne das Ein-/Ausgangsverhalten zu verändern.
Im ersten Minimierungsschritt ist die Tabelle nach Ausgangsgruppen zu ordnen.
Regel: Man benötigt mindestens soviele Zustände wie es unterschiedliche Ausgangsgruppen gibt.
Fehlerhafter Versuch, die Zustände zu verschmelzen
Digitaltechnik Teil 2
- 10 -
Prof . Komar
Im zweiten Minimierungsschritt ist für jede Ausgangsgruppe zu untersuchen, ob man die zu ihr gehörenden
Zustände zusammenfassen darf.
Dazu beginnt man mit der Bildung von Folgezustandsgruppen und es wird für jede Folgezustandsgruppe
geprüft, ob jeweils alle Folgezustände Z als Zustände Z zu ein und derselben Ausgangsgruppe gehören.
Wenn ja, können die entsprechenden Zustände verschmolzen werden.
Die Ausgangsgruppe ( 1 0 ) ist aufgespalten worden
Der dritte und alle weiteren Minimierungsschritte entsprechen sinngemäß völlig dem zweiten Schritt und
werden dann nötig, wenn sich nicht alle Zustände einer Ausgangsgruppe verschmelzen lassen.
Dann müssen diese Ausgangsgruppen aufgespaltet werden und die Untergruppen sind auf
Zusammenfassbarkeit ihrer Zustände zu untersuchen.
Dieses Aufspalten muß solange wiederholt werden, wie zu einer Ausgangsgruppe ( Untergruppe ) mehr als ein
Zustand gehört.
Minimiertes Zustandsdiagramm
und
minimiertes Schaltwerktabelle
Struktogramm zur Vorgehensweise bei der Zustandsminimierung
Digitaltechnik Teil 2
- 11 -
Prof . Komar
4. Zustandscodierung
Zur binären Verschlüsselung ( Codierung ) der nötigen Zustände werden Zustandsvariable deklariert und
jedem Zustand eine der möglichen Binärkombinationen eindeutig zugeordnet.
Bei synchronen Schaltwerken kann man die Zustände grundsätzlich beliebig codieren.
Beim Moore-Automaten codiert man häufig so, daß die Zustandssignale unmittelbar als Ausgangssignale
verwendet werden können ( spart bzw. reduziert Ausgangsschaltnetz ).
Faustregel: Minimalster Aufwand für das Schaltnetz kann sich ergeben , wenn sich bei den
Übergängen bzw. Zustandswechseln möglichst wenig Bit im Code ändern (ideal sind
einschrittige Codes wie z.B. Gray-Code).
Die beiden folgenden Regeln führen oftmals zur Einsparung von Bauteilen im Übergangsschaltnetz. Im
Konfliktfall hat Regel 1 Vorrang.
Regel 1: Zustände, die bei identischen Eingangszuständen denselben Folgezustand aufweisen, sind
einschrittig zu codieren.
Regel 2 : Zustände, die bei benachbarten Eingangszuständen Folgezustände ein und desselben
vorausgehenden Zustands darstellen, sind einschrittig zu codieren.
Beim Moore-Automat werden die Zustände häufig so codiert, dass man Zustandssignale unmittelbar als
Ausgangssignale verwenden kann. Das Ausgangsschaltnetz lässt sich auf diese Weise vereinfachen oder sogar
ganz einsparen.
Bei einem asynchronen Schaltwerk ( ungetaktet ) müssen !!! die Zustände einschrittig codiert werden, um
kritische Wettrennen ( races ) und damit eventuell fehlerhafte Folgezustände zu verhindern.
Wenn sich ein Zustandsdiagramm nicht einschrittig codieren läßt, müssen sogn. zusätzliche dynamische
Zwischenzustände e ingeführt werden, was zusätzliche Zustandsvariablen zur Folge haben kann.
Zustandsdiagramm in einschrittiger Codierung
Zustandsdiagramm
Zustandsdiagramm in einschrittiger Codierung mit dynamischen Zwischenzuständen
Digitaltechnik Teil 2
- 12 -
Prof . Komar
5. Wahl der Flipflop-Typen
Nur bei synchronen Schaltwerken. Es ist festzulegen, mit welchen Flipflop-Typen die einzelnen
Zustandsvariablen realisiert werden.
Da von der Zustandscodierung und der Flipflop-Wahl der Aufwand für das Schaltnetz abhängt, wird für das
Erzielen des minimalen Bauelemente -Aufwandes das Durchprobieren verschiedener AlternativKombinationen nötig sein. ( Schritte 4. 5. 6. 7. iterativ)
6. Zustandsfolgetabelle
Ausgehend vom Zustandsgraph (Zustandsdiagramm) ist die Zustandsfolgetabelle vollständig zu erstellen.
Nur für synchrone Schaltwerke:
In einer Erweiterung der Zustandsfolgetabelle sind die Erregungsgrößen, d.h. die Vorbereitungseingänge
der gewählten Flipflops, so festzulegen, daß sich die gewünschte logische Aufeinanderfolge der Zustände
ergibt.
Dafür benötigt man die Synthesetabelle (Übergangstabelle) des gewählten Flipflop-Typs.
7. Erzeugung der Folgezustandssignale
Bei asynchronen Schaltwerken ergeben sich die Folgezustände als Ausgänge des rückgekoppelten
Schaltnetzes. Die Wahrheitstabelle für dieses Schaltnetz besteht aus dem Eingangsteil der
Zustandsfolgetabelle und den Folgezuständen Z+ im Ausgangsteil.
Entwurf des Übergangsschaltnetzes für synchrone Schaltwerke
Die Ansteuertabelle, bestehend aus dem Eingangsteil der Zustandsfolgetabelle ( Eingangsgrößen + Zustände )
und den FF-Erregungsvariablen als Ausgangsgrößen bildet jetzt eine Wahrheitstabelle für das zu
entwerfende Schaltnetz.
Die Ausgänge dieses Schaltnetzes steuern die Flipflops an ( Erregungsvariable ) und Eingänge des
Schaltnetzes sind die rückgekoppelten Zustandsvariablen ( FF-Ausgänge ) und die Eingangsgrößen des
Schaltwerkes.
Je nach gewählter Realisierung ist aus diesen Wahrheitstabellen (enthalten in der Zustandsfolgetabelle) mit
den Mitteln der Schaltnetzminimierung für jede Ausgangsgröße eine möglichst einfache schaltalgebraische
Gleichung ( diskretes Schaltnetz ) zu bestimmen oder es sind die nötigen Programmiertabellen ( FestwertSpeicher-Schaltnetz ) zu entwickeln.
8. Ausgangsschaltnetz
Möglichst einfache schaltalgebraische Gle ichungen sind ebenfalls für die Ausgangsgrößen des Schaltwerkes
zu bestimmen.
Die dafür nötige Wahrheitstabelle besteht aus dem Eingangsteil der Zustandsfolgetabelle und den
Ausgangsgrößenspalten der Zustandsfolgetabelle.
9. Fehlerzustände
Gegebenenfalls ist das Verhalten des Schaltwerkes in Pseudozuständen zu untersuchen, die als Folge von
Störungen angenommen werden können und in denen sich das Schaltwerk nicht fangen (aufhängen) darf.
10. Zeichnen des Symbolschaltplanes
mit den Zustands-Flipflops und den verknüpfenden Schaltnetzen.
Eigentlicher kreativer Teil des Schaltwerkentwurfes sind die ersten fünf Schritte. Die nachfolgenden
Entwurfsschritte sind weitgehend formalisierbar und kaum noch an die spezielle Aufgabe gebunden.
Außerdem können diese Schritte mit Rechnerunterstützung abgearbeitet werden.
Digitaltechnik Teil 2
- 13 -
Prof . Komar
Bistabile Kippstufen ( Flipflops )
Eine bistabile Schaltung weist zwei stabile Zustände auf und kann damit ein Bit speichern.
Den Grundbaustein aller Flipflops FF stellt das Basis -FF dar.
Die Unterscheidung der verschiedenen FF-Arten erfolgt hinsichtlich Taktsteuerung ( ungetaktet, taktzustandsoder taktflankengesteuert ) und der internen Speicherzustände ( Ein- oder Zweispeicher-FF ).
Bezeichnung
Basis-FF
Einspeicher-FF ( Auffang-FF, Latch )
Zweispeicher-FF( Zwischenspeicher-FF )
Taktsteuerung
Nein
Ja
Ja
Zwischenspeicher
Nein
Nein
Ja
Asynchrone Flipflops ( Basis-FF ) sind ungetaktet und übernehmen daher die Eingangssignale unmittelbar
nach deren Auftreten
Synchrone Flipflops verknüpfen die Eingangssignale mit einem zusätzlichen Taktsignal und schalten nur bei
einem aktiven Taktsignal
Taktzustandsgesteuerte, statisch getaktete Flipflops verarbeiten ein eintreffendes Eingangssignal während der
gesamten Zeitdauer des aktiven Taktpegels.
Taktflankengesteuerte Flipflops übernehmen nur zu einem bestimmten ( diskreten ) Zeitpunkt den Wert, der
am Eingang anliegt.
Binärspeicher bzw Flipflops werden in getakteten Versionen in die Rückkopplungszweige von Schaltwerken
eingefügt, um für alle Rückkopplungspfade die gleiche 'Verzögerung' zu erzwingen und damit die
Laufzeitprobleme, die durch die unmittelbar wirksame Rückkopplung bei asynchronen Schaltwerken bedingt
sind, zu vermeiden.
Durch das synchrone Takten aller Flipflops kann erreicht werden, daß die Rückkopplungszweige entweder nur
für einen kurzen Augenblick geschlossen werden ( Taktflankensteuerung ) oder zu keinem Zeitpunkt eine
geschlossenen Rückkopplung zugelassen, sondern eine partielle Weiterleitung des Zustandes bzw Folgezustandes durchgeführt wird ( Master-Slave -Steuerung ).
Zustandsübergänge werden somit durch die Verwendung getakteter Flipflops in synchronen Schaltwerken
ausschließlich vom Takt bestimmt.
Für den Einsatz in synchronen Schaltwerken muß die bistabile Kippstufe ( Flipflop ) folgende grundsätzliche
Funktionen realisieren:
- 0 oder 1 einspeichern
( Schreiben )
- Speicherinhalt muß extern zur Verfügung stehen
( Lesen )
- einspeichern nur unter Einwirkung des Taktes in einem möglichst kurzen Zeitintervall
Im Gegensatz zu ungetakteten Flipflops ( Basis -FF ) reagieren getaktete Flipflops nur in einem beschränkten
Zeitabschnitt 'empfindlich', nämlich im Entscheidungsintervall.
Im Übergangsintervall geben die Flipflops das übernommene Signal aus.
Entscheidungs- und Übergangsintervall
Digitaltechnik Teil 2
- 14 -
Prof . Komar
Basis-Flipflops
Basis -FF sind nicht taktgesteuert. Von diesem FF werden folgende Funktionen verlangt:
- Setzen,
der Ausgangszustand wird oder bleibt 1
- Löschen, der Ausgangszustand wird oder bleibt 0
- Speichern, der Ausgangszustand behält den alten Wert bei
Für diese drei Funktionen muß das Basis -FF mindestens zwei Eingänge besitzen.
Die beiden Ausgänge Q1 und Q2 liefern in regulären Betriebszuständen zueinander komplementäre Signale.
RS-Basisflipflops lassen sich aus kreuzgekoppelten NOR- oder NAND-Gattern bilden ( Rückkopplung von
Ausgang auf Eingang ).
Funktionen des NOR-FF:
S=1 R=0 Setzen S=1 erzwingt
Q2=0 -> Q1=1
S=0 R=1 Löschen oder Rücksetzen R=1 erzwingt
Q1=0 -> Q2=1
S=0 R=0 Speichern, ist abhängig vom vorausgehenden Zustand
S=1 R=1 irregulärer Zustand, erzwingt
Q1=Q2=0
falls danach R=0 S=0 Speichern folgt, müßte sich eigentlich der nichtstabile Zustand Q1=Q2=1
einstellen. Abhängig von den zufälligen Verzögerungszeiten der NOR-Elemente wird sich einer der
zwei stabilen Zustände einstellen.
Übergangsverhalten des RS-Basis -Flipflops
RS-Basis-Flipflop aus NOR-Elementen
Das Basis -RS-FF aus NAND-Elementen antworten im irregulären Zustand S=R=0 mit Q1=Q2=1.
Kreuzgekoppelte NAND-Elemente
Digitaltechnik Teil 2
- 15 -
Prof . Komar
Überblick über das reguläre Verhalten von RS-Basis-Flipflops
Im Beispiel ist die Anwendung eines NAND-RS-FF als Entpreller eines mechanischen Kontaktes dargestellt.
Ein Kontaktprellen ( Unterbrechung, nicht Umschaltung ) führt dazu, daß abwechselnd 'Speichern' und 'Löschen'
gefordert wird und damit der Ausgangszustand sich nicht mehr verändert.
Entprellschaltung
Mit einem zusätzlichen Schaltnetz vor dem Eingang eines RS-Basis -FF läßt sich der irreguläre Eingangszustand
verhindern und einem der drei regulären Zustände Vorrang einräumen.
Umwandlung der Flip-Flops durch eine Zusatzlogik
RS-Flipflop mit Setzvorrang
Digitaltechnik Teil 2
- 16 -
Prof . Komar
Flipflops mit Taktsteuerung
Der steuernde Takteingang bewirkt, daß die Information an den Vorbereitungseingängen des FF nicht mehr
unmittelbar sondern nur noch im Zusammenspiel mit dem Taktsignal übernommen wird.
Daneben sind noch Direkteingänge möglich. Diese werden nicht vom Takt gesteuert sondern wirken wie beim
Basis -FF unmittelbar auf das FF ein ( wirken asynchron – am Takt vorbei ).
Ideales und reales Taktsignal
Taktzustandsgesteuerte Einspeicher-Flipflops
Der Taktzustand, mit dem die Vorbereitungseingänge des FF freigegeben werden, wird aktiver Taktzustand
genannt.
Änderungen der Vorbereitungseingänge wirken sich in der aktiven Taktphase unmittelbar auf das FF aus. Der
irreguläre Zustand des RS-FFs muß in der aktiven Taktphase verhindert werden, da in der passiven Taktphase
die Funktion Speichern folgt.
Taktzustandgesteuertes RS-Flipflop
Impulsdiagramm mit Anfangszustand Q = 0
NAND-Schaltung eines taktzustandsgesteuerten RS-Flipflops
Digitaltechnik Teil 2
- 17 -
Prof . Komar
RS-Flipflop mit Direkteingängen
D-Flipflop ( Daten-FF, Latch )
werden als Auffang-FF eingesetzt um Daten für eine durch den Takt vorgegebene Zeitspanne bereitzuhalten
( zwischenzuspeichern ). Es übernimmt im aktiven Taktzustand den am D-Eingang anliegenden
Wert und hält diesen im passiven Taktzustand am Ausgang bereit.
Übergangsverhalten von D-Flipflops
NAND-Schaltung eines D-Flipflops
Digitaltechnik Teil 2
- 18 -
Prof . Komar
Taktzustandgesteuerte Zweispeicher-Flipflops
Wenn ein FF die an seinem Vorbereitungseingängen anliegende 'neue' Information schon übernehmen und
dennoch an seinen Ausgängen die gespeicherte 'alte' Information für eine Zeitspanne bereithalten soll, dann ist
dazu ein Zweispeicher-FF oder Zwischenspeicher-FF erforderlich.
Diese Zwischenspeicherung wird notwendig, wenn z.B. bei Zählern oder Schieberegistern mehrere FF
hintereinandergeschaltet werden müssen.
Das Zweispeicher-FF besteht aus zwei Einspeicher-FF und einem Inverter. Die beiden Einspeicher-FF werden
Master und Slave genannt.
Bei Takt C=1 wird der Wert an den Vorbereitungseingängen in den Master übernommen. Das interne Signal S'
ändert sich entsprechend, ist aber außerhalb des FF nicht zugänglich.
Die Ausgänge des Slave bleiben unverändert. Erst bei C=0 wird die im Master gespeicherte Information an den
Slave weitergegeben und erscheint dann an den Ausgängen.
Ein- und Ausgabe erfolgen zeitlich getrennt aufeinander.
Direkteingänge werden beiden Einspeicher-FF zugeführt und damit beide gleichzeitig gesetzt oder gelöscht.
RS-Zweispeicher-Flipflop
Ein zweizustandsgesteuertes D-Zweispeicher-FF läßt sich nach der gleichen Methode mit zwei Einspeicher-FF
ausbauen.
Es weist das gleiche Übergangsverhalten wie das Einspeicher-D-FF auf und damit sind Zustandsfolgetabelle,
Synthesetabelle und charakteristische Gleichung weiterhin gültig.
D-Zweispeicher-Flipflop
Das taktzustandsgesteuerte JK-Zweispeicher-FF weist weitgehend das gleiche Übergangsverhalten wie das
RS-FF auf, wobei sich die Eingänge J und S sowie K und R entsprechen.
Ein irregulärer Eingangszustand wie S=R=1 existiert aber nicht, sondern für J=K=1 wechselt mit jeder
Taktperiode das Ausgangssignal.( Toggel-FF, Frequenzteilung des Taktsignals durch Faktor 2 )
Ein taktzustandsgesteuertes JK-FF ist nur als Zweispeicher-FF stabil. Ein JK-Basis -FF oder ein JK-EinspeicherFF im aktiven Taktzustand würden bei J=K=1 mit einer Frequenz schwingen, die nur von der Gatterlaufzeit
abhängig wäre.
Aufgabe : Es ist ein taktzustandsgesteuertes JK-Zweispeicher-FF mit dem dargestellten RS-Master-Slave-FF zu
entwerfen ( Entwurf synchroner Schaltwerke )
Digitaltechnik Teil 2
Übergangsverhalten von JK-Flipflops
Impulsdiagramm zum JK-Flipflop
JK-Flipflop SN7472
- 19 -
Prof . Komar
Digitaltechnik Teil 2
- 20 -
Prof . Komar
Taktflankengesteuerte Flipflops ( dynamische FF )
Beim taktflankengesteuerten FF werden die Vorbereitungseingänge mit einer der beiden Flanken des
Taktpulses freigegeben. Aktive Taktflanke kann somit die 0/1 oder die 1/0 Taktflanke sein.
Schaltungstechnisch lassen sich die dynamischen Takteingänge durch RC-Glieder oder durch Verknüpfungs gatter unter Ausnutzung des Laufzeiteffektes aufbauen.
Alle taktzustandsgesteuerten FF sind auch als taktflankengesteuerte FF realisiert. Es gelten weiterhin die von
zustandsgesteuerten FF bekannten Tabellen und Gleichungen.
Das Takttor öffnet bei flankengesteurten FF nur so kurzzeitig, daß bei einflankengesteuerten JK-FF für
J=K=1 kein Stabilitätsproblem auftritt.
Bei zweiflankengesteuerten FF erfolgt die Übernahme ( Eingabe ) in den Master mit der aktiven Taktflanke und
die Weitergabe an den Slave ( Ausgabe ) mit der passiven Taktflanke.
Kennzeichnung dynamischer Eingänge
Impulsdiagramm zum flankengesteuerten JK-Flipflop
Aufgabe: Es ist ein Toggle-FF mit Hilfe von geeigneten RS-, JK- und D-FFs zu entwerfen
T Q Q+
0
0
1
1
0
1
0
1
S R
JK
D
1J
0
1
1
0
C1
1K
1S
1D
C1
C1
1R
Digitaltechnik Teil 2
Zusammenfassung bistabiler Flipfloptypen
- 21 -
Prof . Komar
Digitaltechnik Teil 2
- 22 -
Prof . Komar
Kippschaltungen
werden unterteilt in
- astabile
(ohne stabilen Logikzustand )
- monostabile (mit nur einem stabilen Logikzustand )
- bistabile
(mit zwei stabilen Logikzuständen => Flipflops )
Schmitt-Trigger
Schwellwertschalter ( Schmitt-Trigger ) sind bistabile Kippstufen mit Hysterese, die bei stetiger Änderung der
Eingangsspannung unstetige ( sprungartige ) Ausgangssignale liefern.
Der Schmitt-Trigger ist damit ein weiteres bistabiles, rückgekoppeltes Kippglied mit zwei stabilen
Logikzuständen.
Übersteigt die Eingangsspannung UI die obere Triggerschwelle UIein , dann springt die Ausgangsspannung auf
H-Pegel. Sie springt erst dann wieder zurück (L-Pegel), wenn die Eingangsspannung UI die untere
Triggerschwelle unterschreitet.
Die Spannungsdifferenz zwischen Ein - und Ausschaltpegel heißt Schalthysterese. Die Hysteresekennlinie stellt
auch das Symbol eines Schmitt-Trigger-Bausteins dar.
Schmitt-Trigger-Bausteine werden als Rechteckformer zur Flanken bzw. Signalregenerierung (z.B. Aufrichten
von 'müden' Flanken nach langen Leitungen) und als Schwellwertschalter eingesetzt.
Die Hysterese verhindert Schwingungen des Ausgangs bei Schwankungen ( Störungen ) des Eingangssignals um
die Ansprechschwelle.
Die meisten Schmitt-Trigger-Bausteine sind mit logischen Funktionen gekoppelt ( SN7413 , 7414, 7418, 7419,
7424, 74121) Bei manchen Bausteinen haben nur bestimmte Eingänge Schmitt-Trigger-Verhalten (siehe SN
74121).
Eingangs- und Ausgangsspannungsdiagramm
Eines nicht invertierenden Schnitt-Triggers
Ausgangsspannungsverläufe eines Inverters und eines
invertierenden Schmitt-Triggers
Übertragungskennlinie eines nicht invertierenden
Schmitt-Triggers
Schaltsymbole verschiedener Gatter mit
Schmitt-Trigger-Eingängen
Digitaltechnik Teil 2
- 23 -
Prof . Komar
Monostabile Kippstufen ( Monoflop, Univibrator )
Monoflops haben nur eine stabile Lage am Ausgang. Durch eine Triggerung am Eingang nimmt der Ausgang
eine unstabile Arbeitslage ein und kippt nach einer, meist durch ein externes RC-Glied einstellbaren Zeit, in
seine stabile Lage zurück.
Es werden positive - und negativ-flankengetriggerte Monoflops unterschieden.
Die Impuls - oder Verweildauer hängt von der Dimensionierung des RC - Gliedes ab.
Beim nicht nachtriggerbaren Monoflop bleibt eine während der Verweilzeit eintreffende triggernde Flanke
wirkungslos. Eine triggernde Flanke kann erst nach Rückkehr in die stabile Lage und einer Erholzeit einen
neuen Impuls anregen.
Beim nachtriggerbaren Monoflop löst dagegen jeder Triggerimpuls einen Ausgangsimpuls der eingestellten
Zeitdauer T aus, auch wenn das Monoflop noch nicht zurückgekippt ist ( volle Verweilzeit für Nachtriggerung).
Es gibt auch Monoflops mit Rückstelleingängen, durch den ein anstehender Ausgangsimpuls jederzeit
abgebrochen werden kann ( SN 74123 ).
Impulsdiagramme der verschiedenen Monoflops
Schaltsymbole und Funktionstabelle eines Positiv- und eines negativflankengetriggerten Monoflops
Einstellung der Verweilzeit
mit externem RC-Glied
Monoflop, das wahlweise positiv- oder negativflankengetriggert betrieben
werden kann
Nachtriggerbare Monoflop 74122 und 74123 der TTL-Familie
Digitaltechnik Teil 2
- 24 -
Prof . Komar
Astabile Kippschaltungen ( Multivibrator, Taktgeber )
weisen keinen stabilen Zustand auf. Ohne äußere Einwirkung kippen sie stets von einem Logikzustand in den
anderen. Sie werden häufig als Taktgeber in digitalen Schaltungen verwendet
Freilaufende astabile Kippstufen schwingen beim Anlegen der Betriebsspannung selbständig an.
Start-Stop-Rechteckoszillatoren können mit einem Steuereingang ein- und abgeschaltet werden.
Spannungsgesteuerte Oszillatoren (VCO) sind Schwingschaltungen, deren Frequenz von einer anliegenden
Eingangsspannung abhängt ( SN 74S124 ).
Quarzgesteuerte Oszillatoren (Quarzgenerator) sind äußerst frequenzstabil und werden auch zur
Taktversorgung von Mikrocomputersystemen verwendet. Je nach benötigter Frequenz, Frequenzstabilität und
Pulsform werden astabile Kippstufen sehr verschieden realisiert.
Dies reicht von Ausführungen mit
- kreuzgekoppelten Transistoren (< 10 kHz )
- Operationsverstärkern
- Logikgattern, Monoflops und Zeitgebern (Timer)
bis zu
- speziellen integrierten Bausteinen für höchste Frequenzen (> 100 MHz)
Schaltung und Signal-Zeit-Plan eines freilaufenden
Rechteckgenerators, aufgebaut aus Invertern mit
Schmitt-Trigger-Eingängen und RC-Glied
CMOS-Quarzoszillator mit eingebautem
Frequenzteiler
Spannungsgesteuerter Start-Stop-Oszillator
(VCO) 74S124 max. 85 MHz
5 MHz-Quarzoszillator mit TTL-Invertern
Digitaltechnik Teil 2
- 25 -
Prof . Komar
Schaltwerke
Asynchron
Synchron
(einschrittige Zustandscodierung)
( Einsatz von FFs )
Zählerschaltungen
(das zu zählende Signal ist der Takt für die FFs)
Asynchrone Zähler
asynchron getaktet
(externer Takt geht an mindestens ein FF,
für weitere FFs wird der Takt aus den
vorhergehenden Stufen abgeleitet, falls
möglich!! Falls nicht möglich, führt Entwurf
auf Synchrone Zähler.
Synchrone Zähler
synchron getaktet
(externer Takt an alle FFs )
Frequenzteiler sind Zählerschaltungen, bei denen der Zählcode nicht interessiert, sondern nur der
heruntergeteilte Takt. Sie werden wie Zählerschaltungen entworfen.
Digitaltechnik Teil 2
- 26 -
Prof . Komar
Zählschaltungen
sind synchrone Schaltwerke, bei denen das zu zählende Signal zugleich den Takt für die FFs bildet.
Zähler werden mit Flipflops aufgebaut und zählen Impulse, die in beliebiger zeitlicher Folge am Eingang
auftreten dürfen. Es sind Grundbausteine der Digitaltechnik und sie werden in den häufigsten
Anwendungsvarianten als integrierte Bausteine angeboten .
Zähler werden unterschieden hinsichtlich
- der unterscheidbaren Zustände ( modulo-m-Zähler -> m Zustände )
- des Zählcodes ( Dual- , 8421-BCD ...)
- der Zählrichtung ( Vorwärts- oder Rückwärtszähler )
- der Funktionsweise (synchron oder asynchron-getaktet )
Frequenzteiler unterscheiden sich von Zählern nur dadurch, daß bei ihnen nur der heruntergeteilte Takt und
nicht der Zählcode nach außen geführt wird.
Frequenzteiler m:1 können immer als modulo-m-Zähler entworfen werden, wobei das gewünschte Puls Pause-Verhältnis (Tast-Verhältnis) entweder durch Wahl des Zählcodes oder eines Ausgangsschaltnetzes
erzielt werden kann.
In synchronen Zählern führt man die zu zählenden Impulse den Takteingängen aller FF's zu.
Bei asynchronen Zählern werden die Zählimpulse nicht allen FF zugeführt, vielmehr wird das Taktsignal für
möglichst viele FFs in der Schaltung selbst erzeugt. Dadurch wird der Aufwand für das
Vorbereitungsschaltnetz minimal.
Bei Einrichtungszählern liegt die Zählrichtung fest und bei Zweirichtungszählern ist sie wählbar.
Programmierbare Zähler besitzen Ladeeingänge zum Laden eines Zählerstandes ( Program Counter PC im
Mikroprozessor ).
Zähler liefern einen Übertrag, der das Zusammenschalten von Zählern zu größeren Einheiten ermöglicht
(Zähldekaden).
Modulo-m-Zähler werden mit minimaler Anzahl von FFs entworfen, dagegen bestehen Ringzähler aus
m zum Ring geschalteten FFs , verwenden einen 1-aus-m-Code und benötigen kein Schaltnetz.
Aufgabe: Zu entwerfen ein Frequenzteiler 6:1 für Puls -Pause-Verhältnis 1:1 mit JK-Flipflops
000
001
011
111
110
100
Durch die Wahl dieser einschrittigen Zustandscodierung kann an jedem der 3 FF-Ausgänge das heruntergeteilte
Signal abgegriffen werden
Q2 Q1 Q0
0
0
0
0
0
0
0
0
0
0
1
1
0
1
0
1
0
0
0
0
1
1
1
1
0
0
1
1
0
1
0
1
1
1
1
1
0
0
0
0
0
0
1
1
0
1
0
1
1
1
1
1
1
1
1
1
0
0
1
1
0
1
0
1
Q2+ Q1+ Q0+ J2 K2 J1 K1 J0 K0
00
01
11
10
00
0
0
1
1
0
0
1
1
01
11
10
Digitaltechnik Teil 2
- 27 -
Prof . Komar
Asynchrone Zähler
Asynchrone Zähler sind die häufigste Anwendung einer Sonderform von Schaltwerken, nämlich der asynchron
getakteten Schaltwerke.
Asynchron getaktete Schaltwerke werden mit triggerbaren Flipflops aufgebaut, aber der externe Takt wird nicht
parallel an alle FFs geführt, sondern für möglichst viele Flipflops wird der Takt von den Ausgängen anderer
FFs hergeleitet. Dadurch kann sich ein einfacheres Schaltnetz ergeben.
Ein asynchron getakteter Entwurf ist nur dann möglich, wenn der Takt eigentlich eine Logikfunktion hat ( wie
z.B. als Zählsignal beim Zähler oder Frequenzteiler) und nicht nur zur Synchronisation der Rückkopplungs zweige dient.
Allerdings muß beim Entwurf asynchron getakteter Schaltwerke vor dem Festlegen der Vorbereitungseingänge
in der Zustandsfolgetabelle die Triggerung des jeweiligen FFs festgelegt werden.
Da die Vorbereitungseingänge nur bei der Triggerung des FFs bestimmt sein müssen, ergeben die vielen X =
don't care in den Erregungsspalten meist deutlich einfachere Schaltnetze.
Wenn es nicht möglich ist, geeignete Triggersignale von anderen FF-Ausgängen abzuleiten, dann führt dieser
Entwurf letztlich auf synchron getaktete Schaltwerke ( synchrone Zähler ).
Im Beispiel eines asynchronen mod-8-Vorwärtszähler im Dualcode werden die Zählimpulse nur dem
Takteingang des ersten FF zugeführt.
Die übrigen FFs erhalten ihre Takteingänge von den Ausgängen der davor liegenden FFs.
Die Vorbereitungseingänge aller JK-FFs liegen an H-Signal und damit befinden sich sich die FF ständig in der
Betriebsart 'Wechseln' und halbieren folglich die Frequenz ihres jeweiligen Taktsignals.
Änderungen des Ausgangssignals ( Zählergebnis ) sind um die einzelnen FF-Laufzeiten gegenüber Änderungen
des zu zählenden Signals verzögert. Durch diese Verzögerungen entstehen beim Zählen fehlerhafte
Zwischenzustände.
Außerdem wird durch diese Arbeitsweise ( ripple through counter ) die maximal mögliche Zählfrequenz
eingeschränkt.
Nachteilig gegenüber den synchronen Zählern sind die geringere Zählfrequenz und die fehlerhaften
Zwischenzustände. Der Vorteil des geringeren Bauteileaufwandes verliert durch die Verfügbarkeit integrierter
Bausteine immer mehr an Bedeutung.
Asynchroner mod-8-Zähler
Digitaltechnik Teil 2
- 28 -
Prof . Komar
Synchrone Zähler
Ein synchroner Zähler ist ein synchrones Schaltwerk. Die Zählimpulse führt man den Takteingängen aller
Flipflops zu. Es müssen geeignete FFs für den Speicher ausgewählt und Ausgangs- sowie Übergangsschalt netz entworfen werden.
Das Ausgangsschaltnetz erzeugt z.B. den Übertrag und das Übergangschaltnetz liefert die für die
Vorbereitungseingänge der FF benötigten Signale.
Man nennt die Schaltfunktionen des Übergangsschaltnetzes häufig Erregungsfunktionen.
Die FF-Eingänge müssen so beschaltet werden, daß die Ausgänge das geforderte Übergangsverhalten von Q
nach Q+ zeigen.
Beispiel: Mod-5-Vorwärtszähler für den Dualcode
Ein mod-5-Vorwärtszähler wird zyklisch die Zustandsfolge 0,1,2,3,4,0,1,2.... durchlaufen. Dem Zähler führt man
das zu zählende Signal C zu. Er liefert einen Übertrag Ü sowie den Zählerstand an den Ausgängen Y2, Y1 und
Y0. Die FF-Ausgänge Q2, Q1 und Q0 sollen unmittelbar den Dualcode liefern.
Es werden für die 5 Zustände 3 Dualstellen benötigt und der Entwurf erfolge mit drei D-Master-Slave Flipflops und drei J K-Master-Slave-FFs.
Das angestrebte Verhalten des Zählers wird in der Zustandsfolgetabelle festgelegt. Es treten drei
Pseudozustände ( Fehlerzustände ) auf, deren Folgeverhalten nicht festgelegt wird, um ein möglichst einfaches
Übergangsschaltnetz zu erhalten.
Das Übergangsschaltnetz ist so zu entwerfen, daß an den Vorbereitungseingängen während jeder Informations übernahme die geeigneten Werte anliegen.
Diese Werte sind den Synthesetabellen der gewählten FF zu entnehmen und in die Spalten der erweiterten
Zustandsfolgetabelle einzutragen.
mod-5-Vorwärtszähler mit D-Flipflops
Digitaltechnik Teil 2
- 29 -
Prof . Komar
Im allgemeinen muß für den Übertrag Ü im Ausgangsschaltnetz der letzte Zählerstand dekodiert werden.
Im Beispiel kann Ü mit dem Taktsignal durch die UND-Verknüpfung ausgeblendet werden.
Zum Abschluß des Zählerentwurfes ist nun noch das Verhalten im Störfall zu untersuchen. Dabei wird überprüft,
wie bei der Herleitung der Erregerfunktion die X-Felder verwendet worden sind.
Mit dem Folgeverhalten der Pseudozustände kann man überprüfen, ob der Zähler sich etwa in den
Pseudozuständen fängt.
mod-5-Vorwärtszähler mit JK-Flipflops
Ein Modulo-m-Zähler ist so aufgebaut, daß die Anzahl der verwendeten FF minimal ist.
Ein Ringzähler für n-Zählzustände besteht dagegen aus n zu einem Ring geschalteten FF , von denen nur
jeweils ein einziges gesetzt ist. Mit jedem Zählimpuls wandert die 1 um eine Stelle in Zählrichtung weiter.
Der Zählerinhalt entspricht damit einem 1-aus n-Code .
Der Ringzähler hat die Eigenschaft, daß er zwar viele FFs aber kein Schaltnetz für die Dekodierung benötigt.
Der Johnson-Zähler ist eine Zwischenlösung, der für n Zählerzustände n/2 FFs und ein einfaches Schaltnetz
(für jeden Zählstand eine UND-Verknüpfung mit 2 Eingängen ) zum Dekodieren benötigt.
Ringzähler
Digitaltechnik Teil 2
- 30 -
Prof . Komar
Johnson-Zähler
Der TTL-Baustein SN74161A ist ein vierstufiger, synchroner und programmierbarer Zähler, der über
Ladeeingänge die Zählfolge steuerbar macht. Mit diesem Baustein läßt sich ohne großen Aufwand ein mod-mZähler für m=1...16 entwerfen.
Programmierbarer Zähler SN74161A
Programmierbarer mod-m-Zähler ( m= 1 ..16 )
. CTR 4, Counter vierstufig;
. C, Clock Puls, zu zählende Impulsfolge;
. PE, Parallel Load Enable, Freigabe des parallelen Ladens;
PE = 0 , die an den Dateneingängen anliegenden Informationen werden übernommen, der Zählvorgang ist gesperrt
PE = 1 , der Zählvorgang ist freigegeben;
. CEP, Count Enable P, Freigabe des Zählvorgangs;
. CET, Count Enable T, Freigabe des Zählvorgangs und des Übertragssignals; der Zählvorgang ist nur dann
freigegeben, wenn an beiden CE-Eingängen 1-Signal anliegt.
. MR, Master Reset
. TC, Terminal Count, Endzählstand; Übertragssignal, das bei Zählerstand CT=15 (Content=15) abgege ben wird, wenn CET = 1
Mit den drei TTL-Bausteinen SN 74162A wird ein dreistufiger BCD-Zähler aufgebaut.
Der SN74162A zählt im 8-4-2-1-Code von 0-9, gibt also bei Zählerstand 9 sein Übertragssignal ab.
Bedeutung der Bezeichnungen:
- CTR DIV 10, Counter dividing by 10, durch 10 teilender Zähler
- pon, power on, synchrones Rücksetzsignal
- Load, Werte an Dateneingängen laden, Load=0:Laden,Load=1:Zählen
- C, Clock, zu zählendes Signal
- Count Zählfreigabe
- A0..A3,B0..B3,C0..C3 Ladewerte ( Startwert) der einzelnen Stellen
Die Freigabeeingänge CET sind jeweils mit den Übertragsausgängen der vorhergehenden Stufen verbunden und
damit wird z.B. von 009 mit dem nächsten Zählimpuls nach 010 weitergeschaltet.
Digitaltechnik Teil 2
3-stufiger BCD-Zähler mit SN74162A
- 31 -
Prof . Komar
Digitaltechnik Teil 2
- 32 -
Prof . Komar
Register und Schieberegister
Eine n-Bit -Registerschaltung enthält n gemeinsam getaktete Flipflops. Registerschaltungen dienen in der Regel
zur kurzzeitigen Speicherung binärer Werte und werden als Auffang- oder Schieberegister eingesetzt
( Auffangregister auch Bufferregister oder nur Register ).
4-bit-Auffangregister
Auffangregister ( Latch )
In einem n-Bit-Auffangregister können n Bit gespeichert und parallel ein/ausgegeben werden.
Die einzelnen Flipflops des Registers sind über gemeinsame Takt- und Rücksetzleitungen miteinander
verbunden. Mit Auffangregistern lassen sich binäre Werte 'auffangen' und für eine von ihrem Taktsignal
bestimmte Zeitspanne zur Weiterverarbeitung bereithalten.
Latch LS373 und seine Anwendung in der Bussteuerung eines Mikrocomputersystems
Digitaltechnik Teil 2
- 33 -
Prof . Komar
Schieberegister
Schieberegister sind Ketten von Flipflops , die es ermöglichen eine am Eingang anliegende Information mit
jedem Takt um ein Flipflop weiter zu schieben. Nach dem Durchlaufen der Kette steht sie am Ausgang
verzögert, aber sonst unverändert zur Verfügung.
Die FF sind so hintereinandergeschaltet, daß jeweils der Ausgang eines FFs mit dem Eingang des nächsten
verbunden ist.
Da die FFs bei jedem Schiebevorgang ihr Ausgangssignal für die Folgestufe noch konstant halten müssen,
während sie das Signal der vorausgehenden Stufe aber schon zu übernehmen haben, werden FFs
mit Zwischenspeicher eingesetzt.
Schieberegister können z.B. als Parallel-Serien oder als Serien-Parallel-Umsetzer eingesetzt werden.
Wenn der Inhalt des Schieberegisters eine vorzeichenlose, positive Dualzahl darstellt, so bedeutet das Schieben
nach links um eine Stelle eine Multiplikation mit 2 und das Schieben um eine Stelle nach rechts eine Division
durch 2, wenn jeweils eine Null nachgezogen wird.
Schieberegister aus D- bzw. JK-Flip-Flops
In den Beispielen der mit D-Flipflops realisierten Parallel-Serien- und Serien-Parallel-Umsetzer wird mit dem
Eingang X die Arbeitsweise gesteuert:
Parallel- Serien
Serien-Parallel-Umsetzer
X=0
Dateneingänge gesperrt
Parallele Ausgabe gesperrt
Schieben freigegeben
X=1
Dateneingänge werden
übernommen
Schieben gesperrt
parallele Ausgabe frei
Digitaltechnik Teil 2
- 34 -
Prof . Komar
Universell einsetzbare Registerschaltungen ( TTL SN 74LS194A ) lassen sowohl parallele und serielle Eingabe
als auch parallele und serielle Ausgabe zu.
Sie können somit als Parallel-Seriell-oder als Serien-Parallel-Umsetzer verwendet werden.
Datenblattauszug zum TTL-Baustein SN74LS194A
- Für S1 = S0 = L (Mode 0) wird weder geschoben noch geladen. Die gespeicherten Daten liegen unverändert
an den Ausgängen
- Für S1 = S0 = H (Mode 3) werden mit der nächsten ansteigenden Taktflanke die an den Eingängen
D0, ...., D3 anliegenden Daten parallel geladen
- S1 = H und S0 = L ( Mode 2 ) gibt Schieben in Richtung von Q3 nach Q0 frei. Ein am seriellen Eingang
für ’Linksschieben’ ( SE L ) anliegender Wert wird dabei in Q3 übernommen.
- S1 = L und S0 = H ( Mode 1 ) gibt Schieben in Richtung von Q0 nach Q3 frei. Ein am seriellen Eingang
für ’Rechtsschieben’ ( SE R ) anliegender Wert wird dabei in Q0 übernommen
Beim Umlaufregister werden serieller Ausgang und serieller Eingang direkt miteinander verbunden. Nach n
Schiebeschritten stellt sich der Ausgangszustand wieder ein.
Ein Ringzähler läßt sich somit auch mit einem Schieberegister aufbauen.
Der Johnson-Zähler unterscheidet sich vom Umlaufregister nur dadurch, daß der serielle Ausgang invertiert mit
dem seriellen Eingang verbunden wird. Nach n Schiebeschritten enthält das Register den invertierten
Ausgangszustand und nach 2n Schritten wieder den Ausgangszustand.
Schieberegister mit invertierter Rückführung
SE=> serieller Eingang
SA=> serieller Ausgang
Durch Rückführung verschiedener Ausgänge eines Schieberegisters über ein Schaltnetz an den seriellen
Eingang lassen sich die verschiedensten Schaltwerksfunktionen, darunter auch modulo-m-Zähler realisieren.
Um ein 3-Bit-Schieberegister als mod-8-Zähler einzusetzen, wird eine Zustandsfolge der Länge 8 benötigt.
Dies läßt sich weder mit dem Umlaufregister oder dem Johnson-Zähler erreichen.
Aus dem Zustandsdiagramm des 3-Bit-Schieberegisters ist eine Zustandsfolge als Zählerfolge so zu
bestimmen, daß sie sich mit dem Schieberegister durchlaufen läßt, wobei natürlich jeder Zustand nur einmal
verwendet werden darf.
Durch Minimierung gewinnt man aus dieser Zustandsfolge das Schaltnetz für die Rückkopplung.
Ein gewünschter spezieller Zählcode muß aus den Zuständen durch ein Ausgangs-Schaltnetz erzeugt werden.
Digitaltechnik Teil 2
Rückgekoppeltes Schieberegister
- 35 -
Prof . Komar
Schieberegister als Pseudo-Zufallsgenerator
3-Bit-Schieberegister mit beliebigem Schaltnetz in der Rückführung und Zustandsdiagramm
mod-8-Zähler realisiert mit 3-Bit-Schieberegister
Digitaltechnik Teil 2
- 36 -
Prof . Komar
Eine weitere Anwendung ist die Realisierung eines Serienaddierwerkes, wobei ein Volladdierer und zwei
(Akkumulator-Version) oder drei Schieberegister benötigt werden.
Ein derartiges Serienaddierwerk ist naturgemäß recht langsam.
Serienaddierwerk mit 2 Schieberegistern
T = Takt, VA = 1-Bit-Volladdierer, C = Übertragsbit Carry , r = Ergebnisbit
Übersicht der möglichen digitalen Elektronik-System-Realisierungstechniken
Digitaltechnik Teil 2
- 37 -
Prof . Komar
Realisierungsmöglichkeiten von Schaltwerken
1.Verdrahtungsprogrammierte Realisierung mit SSI- und MSI- Schaltkreisen ( Gatter, Flipflops, Zähler,
Multiplexer u.ä )
2. Speicherprogrammierte Realisierung mit ROMs oder PLDs und Registern (auch als mikroprogrammgesteuertes Schaltwerk bezeichnet).
3. Speicherprogrammierte Realisierung in Form eines Mikroprozessorsystems ( Mikrocomputer )
Bei mikroprogrammgesteuerten Schaltwerken ( Mikroprogrammsteueurwerk ) wird das Schaltnetz durch
einen Festwertspeicher ( ROM, PROM, EPROM ) realisiert.
Mikroprogrammsteuerwerke haben den Vorteil eines geringen Bausteineaufwandes und der einfachen
Änderung ( Umprogrammierung ).
Festverdrahtetes
und
mikroprogrammiertes Schaltwerk
Die Eingänge des Festwertspeichers, die Adreßleitungen, werden von einem Decoder so aufgeschlüsselt, daß
jedes angelegte Adreßwort eine Wortleitung des Speichers aktiviert und damit das Speicherwort ausgibt.
Hierbei dienen die Zustands - und Eingangsvariablen als Adresse, unter der die Ausgangsvariablen und der
Folgezustand im ROM gespeichert sind. Die Speichermatrix ist damit in zwei Bereiche mit der
Übergangsfunktion g und der Ausgangsfunktion f unterteilt.
In den Speicher kann direkt die Wertetabelle für die beiden Funktionen einprogrammiert werden.
Digitaltechnik Teil 2
- 38 -
Prof . Komar
Von dieser allgemeinen Struktur eines mikroprogrammierten Schaltwerkes weichen optimale Lösungen oft
ab, wobei Optimierungskriterien sind:
.Speicherplatzbedarf
.Arbeitsgeschwindigkeit
.zusätzlicher Hardwareaufwand ( neben Speicher und Register/Zähler )
.Flexibilität bei Änderungen
Bei einem Schaltwerk mit n Zustandsvariablen
l Eingangsvariablen
und
m Ausgangsvariablen besitzt das zugehörige Schaltnetz im allgemeinensten Fall
( n+l ) Eingänge und ( n+m ) Ausgänge. Bei einer Realisierung des Schaltnetzes mit einem ROM ergibt sich eine
maximale Speicherkapazität von
2 ( n+1) Worte zu je ( n+m ) Bit = ( n + m ) 2 ( n+l ) Bit
Durch eine Unterteilung des Festwertspeichers in ein Programm-ROM ( Übergangsschaltnetz ) und ein
Ausgabe-ROM (Ausgangsschaltnetz ) kann, wenn bestimmte Eingangsvariablen entweder nur auf
Zustandsfolge oder Ausgangsdekodierung einen Einfluß haben ( nicht auf beide gleichzeitig) , der
Speicherplatzbedarf deutlich reduziert werden.
Reduzierung der insgesamt benötigten Speicherkapazität
durch Aufteilung in zwei kleine ROMs
Mikroprogrammsteuerwerk mit
Zähleradressierung
Eine oft angewandte, einfache Struktur eines Mikroprogrammsteuerwerkes kann bei entsprechender
Aufgabenstellung aus einem Festwertspeicher bestehen, der von einem Binärzähler adressiert wird. Diese
Adressierung erlaubt allerdings nur den Ablauf von starren, sich nicht verzweigenden 'Programmen'.
Vergleichbar ist dies der Nockenwalze eines mechanischen Steuerwerkes.
Mikroprogrammsteuerwerk mit Zähleradressierung
und programmierbarer Unterbrechung
Grundmodell eines Mikroprogrammsteuerwerks
Digitaltechnik Teil 2
- 39 -
Prof . Komar
Mikroprogrammsteuerwerk zur Ausführung von Makrobefehlen
Reagierendes Mikroprogrammsteuerwerk mit
Zähleradressierung
Reagierendes Mikroprogrammsteuerwerk mit
Sprungadressenspeicher
Digitaltechnik Teil 2
- 40 -
Prof . Komar
Komplexe Schaltwerke
Als komplexes Schaltwerk bezeichnet man ein digitales System, dessen externes Verhalten überschaubar, das
jedoch nicht mehr durch eine Folgetabelle von Hand beschreibbar ist.
Komplexe Schaltwerke werden deshalb üblicherweise rechnergestützt entworfen.
Struktur eines komplexen Schaltwerks
Der klassische Schaltwerksentwurf zielt vornehmlich darauf ab, Schaltwerke mit einer minimalen Zahl von
Zuständen zu konstruieren, um die Zahl der binären Speicherelemente möglichst klein zu halten.
Der Entwurf erfolgt mit Hilfe von Zustandsdiagrammen und Zustandsfolgetabellen. Neben diesen beiden
Hilfsmitteln gibt es noch eine weitere Möglichkeit die Funktion eines Schaltwerkes darzustellen, den
Programmablaufplan ( Flussdiagramm ).
Der Programmablaufplan wird vorwiegend zum Entwurf komplexer Schaltwerke eingesetzt.
Zustandsgraph und Programmablaufplan eines Mealy-Automaten
Beim Entwurf dieser komplexen Schaltwerke wird die Aufteilung in Schaltnetz und Speicher aufgegeben und
eine funktionsbezogene Unterteilung in Operationswerk (Informationsverarbeitung) und Steuerwerk
(Ablaufsteuerung) oder anders ausgedrückt, in ein gesteuertes und ein steuerndes Werk, vorgezogen.
Das Schaltwerk wird dann als eine Zusammenschaltung von Registern aufgefaßt und es wird der
Informationsfluß und die Informationsverarbeitung der in den Registern gespeicherten Daten beschrieben.
Diese Beschreibung eines digitalen Systems auf dem Operationsniveau wird als Register-Transfer-Methode
bezeichnet.
Digitaltechnik Teil 2
- 41 -
Prof . Komar
Mikroprozessor
Unter einem Mikroprozessor wird eine vollständige Prozessor-Funktionseinheit CPU ( Central Processing Unit )
verstanden, die in großintegrierter Technik auf einem Halbleiterchip integriert ist.
Mikroprozessoren zählen zu den komplexen Schaltwerken und dienen zur Verarbeitung von Daten.
Die Struktur der Mikroprozessoren gliedert sich in
. Rechenwerk – Register ALU für logische und arithmetische Operationen
. Leitwerk
- Mikroprogrammsteuerwerk für Ablaufsteuerung
. E/A-Werk - Ein/Ausgabe-Puffer-Register
Blockstruktur eines Prozessors
Die meisten heute verfügbaren Mikroprozessoren sind mikroprogrammiert, aber nicht vom Anwender
mikroprogrammierbar.
Mikroprogrammierte Prozessoren enthalten ein vom Hersteller fest programmiertes Steuerwerk und
werden heutzutage als CISC-Prozessoren bezeichnet ( Complex Instruction Set Computer )
Bei den heute üblichen RISC-Rrozessoren ( Reduced-Instruction Set Computer ) wird das Schaltnetz der
Ablaufsteuerung in diskreter Logik ausgeführt, mit Vorteilen hinsichtlich Platzbedarf, Geschwindigkeit und
Kosten.
Struktur eines mikroprogrammierbaren Rechners
Zusammenwirken von Hauptspeicher und
Mikroprogrammspeicher
Bei mikroprogrammierbaren Prozessoren kann der Anwender das Mikroprogramm des Steuerwerks
verändern und seiner Aufgabenstellung anpassen.
Zur Programmierung der Mikroprozessoren sind Makrobefehle nötig, die jeweils eine Sequenz von
Mikrobefehlen ( Maschinenzyklus/Befehlszyklus ) auslösen.
Das Benutzerprogramm ( Folge von Makrobefehlen ) ist in einem externen Arbeitsspeicher abgelegt.

Documentos relacionados