5. sequentielle Schaltungen



Ähnliche Dokumente
5. Flipflops. 5.1 Nicht-taktgesteuerte Flipflops NOR-Flipflop. Schaltung: zur Erinnerung: E 1 A 1 A 2 E 2.

11. Flipflops NOR-Flipflop. Schaltung: zur Erinnerung: E 1 A 1 A 2 E 2. Funktionstabelle: Fall E 1 E 2 A 1 A

11 Sequentielle Schaltungen

Fachrichtung Mess- und Regelungstechniker

Praktikum Elektronik für FB Informatik

15. Netzgeräte. 1. Transformator 2. Gleichrichter 3. Spannungsglättung 4. Spannungsstabilisierung. Blockschaltbild:

Schriftliche Abiturprüfung Technik/Datenverarbeitungstechnik - Leistungskurs - Hauptprüfung. Pflichtteil

Versuch 1 Schaltungen der Messtechnik

Johann Wolfgang Goethe-Universität

Abiturprüfung Baden-Württemberg 1986

Praktikum Grundlagen der Elektrotechnik Versuch 5. Matrikelnummer:

Eine charakteristische Gleichung beschreibt die Arbeitsweise eines Flipflops in schaltalgebraischer Form.

Digitaltechnik 2. Roland Schäfer. Grundschaltungen der Digitaltechnik. BFH-TI-Biel/Bienne. (Version v1.1d)


Kondensator und Spule im Gleichstromkreis

Analog-Elektronik Protokoll - Transitorgrundschaltungen. Janko Lötzsch Versuch: 07. Januar 2002 Protokoll: 25. Januar 2002

Thema 6: Kapitalwert bei nicht-flacher Zinsstruktur:

Grundlagen der Informatik III Wintersemester 2010/2011

Phillips Kurve (Blanchard Ch.8) JKU Linz Riese, Kurs Einkommen, Inflation und Arbeitslosigkeit SS 2008

4. Kippschaltungen mit Komparatoren

Grundlagen zeitveränderlicher Signale, Analyse von Systemen der Audio- und Videotechnik

Kapitel 11 Produktion, Sparen und der Aufbau von Kapital

Professionelle Seminare im Bereich MS-Office

Elektrische Logigsystem mit Rückführung

Motivation. Finanzmathematik in diskreter Zeit

Quality Assurance in Software Development

Lineargleichungssysteme: Additions-/ Subtraktionsverfahren

Aufgabensammlung. a) Berechnen Sie den Basis- und Kollektorstrom des Transistors T 4. b) Welche Transistoren leiten, welche sperren?

Arbeitsbereich Technische Aspekte Multimodaler Systeme. Praktikum der Technischen Informatik T1 2. Flipflops. Name:...

Oliver Liebold. NAND (negierte Undverknüpfung) L L H L H H H L H H H L

SERVICE NEWSLETTER. Einführung in die Mechanik Teil 2: Kinematik (2)

Einführung in. Logische Schaltungen

Einteilung der Kippschaltungen (Schaltwerke) (=Flipflops)

1. Mathematische Grundlagen und Grundkenntnisse

1. Speicherbausteine JK-RS-Master-Slave-Flip-Flop

10. Elektrische Logiksysteme mit

Übungen zu Architektur Eingebetteter Systeme. Teil 1: Grundlagen. Blatt 5 1.1: VHDL 28./

RS-Flip Flop, D-Flip Flop, J-K-Flip Flop, Zählschaltungen

Technische Informatik Basispraktikum Sommersemester 2001

GRUNDLAGENLABOR CLASSIC RC-GLIED

9 Multiplexer und Code-Umsetzer

Grundtypen Flip-Flops

Informationsblatt Induktionsbeweis

Die Halbleiterdiode. Demonstration der Halbleiterdiode als Ventil.

Grundschaltung, Diagramm

Zu DT Übung 11.1 FF oben links. (Lösungsvorschlag)

Signal- und Systemtheorie for Dummies

- Strukturentwurf elementarer Rechenwerke - Grund-Flipflop (RS-Flipflop) - Register, Schieberegister, Zähler

DuE-Tutorien 17 und 18

FAKULTÄT FÜR INFORMATIK

Bedienungsanleitung: Onlineverifizierung von qualifiziert signierten PDF-Dateien

Praktikum Grundlagen der Elektronik

S7-Hantierungsbausteine für R355, R6000 und R2700

Simulation LIF5000. Abbildung 1

Zwischenablage (Bilder, Texte,...)

Flip - Flops Multivibratoren

AGROPLUS Buchhaltung. Daten-Server und Sicherheitskopie. Version vom b

Preisniveau und Staatsverschuldung

Lehrer: Einschreibemethoden

Grundlagen der Informatik

Flip Flops allgemein - Digitale Signalspeicher

Dokumentation von Bildungsaktivitäten

Praktikum Digitaltechnik

INSTITUT FÜR ANGEWANDTE PHYSIK Physikalisches Praktikum für Studierende der Ingenieurswissenschaften Universität Hamburg, Jungiusstraße 11

1 Mathematische Grundlagen

Kapitalerhöhung - Verbuchung

Computertechnik Schaltwerke, Sequentielle Schaltungen. Flip-Flops (FF) Flip-Flops (FF) Dr. Wolfgang Koch

Grundlagen der Theoretischen Informatik, SoSe 2008

Thema : Rendite und Renditemessung

Zulassung nach MID (Measurement Instruments Directive)

TECHNISCHE UNIVERSITÄT MÜNCHEN

Zeichen bei Zahlen entschlüsseln

R ist freie Software und kann von der Website.

Widerrufsbelehrung der Free-Linked GmbH. Stand: Juni 2014

Grundlagen der höheren Mathematik Einige Hinweise zum Lösen von Gleichungen

b) Man erwärmt auf einer Herdplatte mit einer Leistung von 2,0 kw zehn Minuten lang zwei Liter Wasser von 20 C.

Outlook. sysplus.ch outlook - mail-grundlagen Seite 1/8. Mail-Grundlagen. Posteingang

Handbuch ECDL 2003 Modul 2: Computermanagement und Dateiverwaltung Der Task-Manager

Welche Lagen können zwei Geraden (im Raum) zueinander haben? Welche Lagen kann eine Gerade bezüglich einer Ebene im Raum einnehmen?

Dokumentenverwaltung im Internet

Würfelt man dabei je genau 10 - mal eine 1, 2, 3, 4, 5 und 6, so beträgt die Anzahl. der verschiedenen Reihenfolgen, in denen man dies tun kann, 60!.

Erstellen von x-y-diagrammen in OpenOffice.calc

Stammdatenanlage über den Einrichtungsassistenten

Tutorial Moodle 2 Rollenzuweisung

Kosten der Verzögerung einer Reform der Sozialen Pflegeversicherung. Forschungszentrum Generationenverträge Albert-Ludwigs-Universität Freiburg

III. Asynchrone und synchrone Schaltwerke

7 Rechnen mit Polynomen

4. BEZIEHUNGEN ZWISCHEN TABELLEN

Handbuch. NAFI Online-Spezial. Kunden- / Datenverwaltung. 1. Auflage. (Stand: )

Advoware mit VPN Zugriff lokaler Server / PC auf externe Datenbank

Handbuch Fischertechnik-Einzelteiltabelle V3.7.3

Flipflops. asynchron: Q t Q t+t

Erweiterung der Aufgabe. Die Notenberechnung soll nicht nur für einen Schüler, sondern für bis zu 35 Schüler gehen:

DIGITALTECHNIK 07 FLIP-FLOP S

INPUT-EVALUATION DER ZHW: PHYSIK SEITE 1. Serie 1

Südbaden-Cup. Ausstieg Champions

Elektronischer Kontoauszug

Primzahlen und RSA-Verschlüsselung

Kapitalerhöhung - Verbuchung

Abschlussprüfung Realschule Bayern II / III: 2009 Haupttermin B 1.0 B 1.1

Transkript:

Humbold-Universiä zu Berlin, r. Winkler igiale Syseme (Grundlagen 3) 10.05.2010 5. sequenielle Schalungen sequenielle Schalungen: digiale Schalung mi inneren Rückführungen sie haben eine zeisequenielle Arbeisweise, wobei die einzelnen diskreen Zeipunke durch innere Zusände repräsenier werden die Ausgangsvariable is eine Funkion der Eingangsvariablen x i und der inneren Zusandsvariablen z i : y = f ( x 0, x 1,... x n-1, z 0,,... z m-1 ) - Funkion f is realisierbar durch Verknüpfung mi Grundgaern - Zusandsvariable z i werden durch binäre Speicherelemene Flipflops FF realisier, die enweder 1 gesez oder auf 0 rückgesez werden 5.1. Flipflops bekanne FF-Typen: RS-Flipflops, JK-FF, -FF, T-FF Grundprinzip: im einfachsen Fall erfolg eine inneren Rückführung durch 2 Negaoren RS-Flipflop: = Zusand bleib gespeicher, is jedoch nich beeinflußbar Realisierung mi Gaern (z.b. NAN, NOR) 2 Eingänge: S (Se, Sezen) und R (Rese, Rücksezen) 2 Ausgänge: 1 und 2 i.a. exisier die Forderung nach einer komplemenären Belegung, d.h. 2 = 1 S 1 S 1 1 R 2 1 ( 1 ) R ( 1 ) 2 Realisierung mi NAN bzw. NOR-Gaern efiniion: Sezen: S = 1 und R = 0 1 = 1 2 = 0 Rücksezen: R = 1 und S = 0 1 = 0 2 = 1 ST RS-FF: S R 1 1 * 2 * 0 0 0 0 1 Speichern 0 0 1 1 0 0 1 0 0 1 Rücksezen 0 1 1 0 1 1 0 0 1 0 Sezen 1 0 1 1 0 1 1 0 1 1 unbrauchbar 1 1 1 1 1 1 = 2 SF RS-FF: charakerisische Gleichung eines RS-FF: 1 * = S ( R 1 ) : vor der Zusandsänderung 1 * : nach der Zusandsänderung 5-1

Humbold-Universiä zu Berlin, r. Winkler igiale Syseme (Grundlagen 3) 10.05.2010 HL: <= S OR (NOT R AN ); Zeidiagramm: S 1 1 R 0 0 1 1 0 0 0 0 Problem: Übergang der Eingangsbelegung R=1, S=1 (Zusand 1 = 2 =1) zu R=0, S=0 (Zusand speichern, wird 1 =1, 2 =0 oder 1 =0, 2 =1 gespeicher?) Lösung: Unerdrückung einer kurzzeiig aufreenden Belegung R=1, S=1 durch Takung bzw. Vermeidung der Eingangsbelegung R=1, S=1 durch Verknüpfung der Eingangssignale unereinander (z.b. R = S, -FF) oder mi den Ausgangssignalen (z.b. 1, 2, JK-FF) geakees RS-Flipflop Funkion: = 0: Tor gesperr ( S = 0; R = 0 Zusand Speichern) = 1: Tor geöffne ( S = S; R = R neuen Zusand einnehmen)? S R ST RS-FF: SF -FF: HL: S R * * 1 0 0 0 0 1 Speichern 1 0 0 1 1 0 1 0 1 0 0 1 Rücksezen 1 0 1 1 0 1 1 1 0 0 1 0 Sezen 1 1 0 1 1 0 1 1 1 0 1 1 vermeiden 1 1 1 1 1 1 0 0 0 1 keine Änderung 0 1 1 0 vollsändige charakerisische Gleichung des geakeen RS-FF * = (S R ) <= ((S OR NOT R AN ) AN ) OR ( AN NOT ); oder besser: process (S, R, ) begin if = 1 hen if S= 1 AN R= 0 hen <= 1 ; if R= 1 AN S= 0 hen <= 0 ; end if; end process; er process beschreib, was bei Änderung eines der Eingangssignale (S, R, ) mi dem Ausgang geschieh. Erfolg keine Änderung der Eingänge, bleib unveränder wird also gespeicher. 5-2

Humbold-Universiä zu Berlin, r. Winkler igiale Syseme (Grundlagen 3) 10.05.2010 vereinfache arsellung: of wird die leze Zeile der ST nich dargesell, da geakee FF grundsäzlich bei nich akiven Taksignal (hier: =0) keine Änderung am Ausgang zeigen. vereinfache charakerisische Gleichung: * = S ( R ) Bedingung: =1 die vereinfache charakerisische Gleichung des geakeen RS-FF gil nur während eines angelegen Takes =1, für =0 erfolg keine Änderung des Ausganges (Speichern * = ) Schlussfolgerung: er Tak kann im Enwurf für eine vereinfache arsellung zunächs unberücksichig bleiben, da keine Änderung zu erwaren is. In der konkree Schalung muß naürlich dieser Takeingang beschale werden. -Flipflop Verzögerungsspeicher (elay = Verzögerung) of auch als Lach ( Riegel ) oder -Lach bezeichne LP: -FF Variane 1 -FF Variane 2 Symbol: Inv1 TG2 Inv2 Inv3 TG1 -FF Variane 3 (mi Transmissionsschalern) G1 Funkion: ST -FF: abgeleie aus dem RS-FF mi S = ; R =, dami wird S = R = 0 vermieden, d.h. die Ausgänge (, ) sind immer komplemenär zueinander = 0: Tor (NAN-Gaer) gesperr ( = 0 Zusand Speichern) = 1: Tor (NAN-Gaer) geöffne ( = Eingangsbelegung übernehmen) * * 1 0 0 0 1 Rücksezen 1 0 1 0 1 1 1 0 1 0 Sezen 1 1 1 1 0 0 0 0 1 keine Änderung (Speichern) 0 1 1 0 5-3

Humbold-Universiä zu Berlin, r. Winkler igiale Syseme (Grundlagen 3) 10.05.2010 SF -FF: vollsändige charakerisische Gleichung des -FF * = vereinfache arsellung: of wird die leze Zeile der ST nich dargesell, da geakee FF grundsäzlich bei nich akiven Taksignal (hier: =0) keine Änderung zeigen. vereinfache charakerisische Gleichung: * = Bedingung: =1 die vereinfache charakerisische Gleichung des -FF gil nur während eines angelegen Takes =1, für =0 erfolg keine Änderung des Ausganges (Speichern * = ) Schlußfolgerung: er Tak kann im Enwurf für eine vereinfache arsellung zunächs unberücksichig bleiben, da keine Änderung zu erwaren is. In der konkreen Schalung muß naürlich dieser Takeingang beschale werden. verkürze arsellung des Zusands Speichern in der ST: * * 0 Speichern 1 Übernehmen von akflankengeriggeres -FF die charakerisische Gleichung ensprich dem -FF, die Übernahme der aen erfolg jedoch nich während =1, sondern während der 0 1Takflanke von : 1 HL: process () begin if rising_edge() hen <= ; end if; end process; = er process beschreib, was bei einer posiiven Takflane (rising_edge) des Eingangssignals () mi dem Ausgang geschieh er übernimm. Ansonsen bleib unveränder wird also gespeicher. Opional kann durch ein Rese (R) ein Anfangszusand z.b. 0 hergesell werden. Ensprechende Flipflops haben einen zusäzlichen R- Eingang: process (,R) begin if R= 1 hen <= 0 ; elsif rising_edge() hen <= ; end if; end process; = Zeidiagramm des akflankengeriggeren -FF Anwendungsbeispiel: Binäreiler Rückführung des -Ausgangs auf den -Eingang 5-4

Humbold-Universiä zu Berlin, r. Winkler igiale Syseme (Grundlagen 3) 10.05.2010 f c 1 f c 2 Zeidiagramm Frequenzeiler 5.2. Zusandsauomaen allgemeiner Auoma: A = (X,Y,Z, f, g, Z 0 ) (X: Eingangsalphabe, Y: Ausgangsalphabe, Z: innerer Zusand, f: Zusandsüberführungsfunkion, g: Ausgangsfunkion, Z 0 : Anfangszusand) igiale Auomaen besehen aus kombinaorischen und sequeniellen Schalungen, kurz: Schalnezen und Speichern. Sie werden auch als Schalwerke bezeichne. a bei ihnen nur eine endliche Anzahl von Bauelemenen exisieren und eine Zufalls-Logikbelegung durch eindeuige Schalungsauslegung nich aufri, handel es sich um deerminisische Auomaen. Beispiele sind Mealy/Moore-Auomaen, Zähler, Schieberegiser. allgemeiner Auoma X i = ( x 0, x 1,... x l-1 ) 0 i 2 l -1 i Eingangsvekoren l-dimensional Y j = ( y 0, y 1,... y v-1 ) 0 j 2 v -1 j Ausgangsvekoren v-dimensional Z k = ( z 0,,... z w-1 ) 0 k 2 w -1 k Zusandsvekoren w-dimensional er Auoma wird zur Vereinfachung nur zu diskreen Zeipunken m berache. (Synchroner Auoma) ie Ausgangsvekoren sind von den Eingangsvekoren X und den inneren Zusänden Z zu den diskreen Zeipunken m abhängig: Y j = f (X, Z) m X i Schalnez Y j =f(x,z) m Z k ( m ) Z Speicher k ( m+1 ) Sysemaisierung des Zusammenhanges ergib die Zusandsgleichungen: 5-5

Humbold-Universiä zu Berlin, r. Winkler igiale Syseme (Grundlagen 3) 10.05.2010 Y j ( m ) = g [ X i ( m ), Z k ( m ) ] Z k ( m+1 ) = f [ X i ( m ), Z k ( m ) ] Z k ( m ) := Z k ( m+1 ) Ausgangs/Ergebnisgunkion Überführungs/Übergangsfunkion Zeifunkion (synchroner Auoma) daraus is ein realisierbarer Zusandsauoma ableibar (Mealy-Auoma): Eingabe nächser Zusand Zusandsvekor Ausgabe X i ( m ) Z k ( m ) Schalne Z k ( m+1 ) Zusands- Z k ( m ) Schalnez 2 Speicher f(x,z) m g(x,z) m bi m Y j =f(x,z) m Mealy-Auoma ein Sonderfall ergib sich, wenn der Ausgangsvekor nich unmielbar vom Eingangsvekor abhängig is. (Moore-Auoma) Y j ( m ) = g [ Z k ( m ) ] Ausgangs/Ergebnisfunkion Z k ( m+1 ) = f [ X i ( m ), Z k ( m ) ] Überführungs/Übergangsfunkion Z k ( m ) := Z k ( m+1 ) Zeifunkion (synchroner Auoma) Eingabe X i ( m ) Z k ( m ) nächser Zusand Schalne Z k ( m+1 ) Zusands- Z Schalnez 2 Speicher k ( m ) f(x,z) m g(z) m bi m Zusandsvekor Ausgabe Y j =f(z) m Moore-Auoma Beschreibungsmöglichkeien von Schalwerken - Zeilicher Verlauf der Eingangs- und Ausgangssignale (Schalfolgediagramm, Zeidiagramm, Timing-iagramm) - Tabellen (Auomaenabelle, Zusandsübergangsabelle) - Zusandsgraph oder Signalflußgraph - Zusandsgleichungen (Schalfunkion) - HL, Hardwarebeschreibungssprachen (VHL) Enwurf von Schalwerken 1. Beschreibung der Funkion, z.b. miels Zusandsgraph 2. Ermilung der Anzahl der nowendigen binären Zusandsspeicher w aus der Anzahl m der inneren Zusände w ld (m) (aufgerunde auf die nächshöhere ganze Zahl) 3. Feslegung der Zusandskodierung (ual, Gray, 1-aus-m,... ) 4. Feslegung des Flipflopyps ( -FF, T-FF,...) 5. Aufsellen der Zusandsübergangsabelle 6. Generierung der Flipflop-Eingangsbelegung (Übergangsfunkion) und der Ausgangsfunkion 7. Synhese des Schalplanes Beispiel: Es soll ein kaskadierbarer 2-Bi-ualzähler mi Zählerfreigabe (x) und Überrag (y) enworfen werden. 5-6

Humbold-Universiä zu Berlin, r. Winkler igiale Syseme (Grundlagen 3) 10.05.2010 z 0 Zusandsfolge: Z m = (, z 0 ) m = (00, 01, 10, 11, 00...) Zähler zähl nur dann, wenn x = 1 is (Freigabe) und der Tak c anlieg. er Überrag wird zum Zusand 11 durch y =1 ausgegeben. (synchroner Überrag) x c 2 bi Zähler y späere Anwendung des Beispiel-Zählers: z 0 z 2 z 3 z n-1 z n 1 c x y c 2 bi Zähler c 2 bi Zähler c 2 bi Zähler Eine hinereinanderschalung (Kaskadierung) mehrerer 2-bi-Zähler ergib einen n-bi-zähler. Alle Zähler nuzen den gleichen Tak. synchron (d.h. gleichgeake ) ie jeweils nachfolgende Sufe zähl genau nur dann um eins weier, wenn die vorhergehende Sufe einen Überrag y = 1 generier. azu ha jeder Zähler einen Freigabeeingang x Im Beispiel wird einer dieser (idenischen) 2-bi-Zähler enworfen. Enwurfsschrie: zu 1. Timing-iagramm c x z 0 y z 0 0 0 0 1 1 0 1 1 0 0 0 0 zu 2. Zähler mi 4 binären Zusänden Z 0, Z 1, Z 2 Z 3 erforder 2 Zusandsbis (2 FF) zu 3. Kodierung : ualcode: Z 0 = 00, Z 1 = 01, Z 2 = 10, Z 3 = 11 5-7

Humbold-Universiä zu Berlin, r. Winkler igiale Syseme (Grundlagen 3) 10.05.2010 Zusandsübergangsabelle x Eingangsbelegung zur Zei m, z 0 Zusand zur Zei m *, z0 * Folgezusand zur Zei m+1 y Ausgangsbelegung zur Zei m x z 0 * z 0 * y 0 0 0 0 0 0 1 0 0 0 1 0 0 0 1 0 1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1 0 1 1 0 0 1 1 1 1 0 1 1 1 0 0 1 Zusandsgleichungen Überrag z 0 * = x z 0 x z 0 * = z 0 x z 0 x z 0 Zusandsgraph Knoen: Zusände, Zusandskodierung Kanen: Eingangskombinaionen, die zum Zusandsübergang führen x=1 x=0 x=0 y=0 z 0 00 y=0 z 0 01 y=0 x=0 y=0 x=1 y=1 z 0 11 x=1 y=0 z 0 10 x=1 y=0 x=0 y=0 zu 4. -Flipflops (Synchronzähler) Zusandsübergangsabelle (Hilfsmiel: -FF Synheseabelle) * * 0 0 0 0 1 SP 0 0 1 1 0 SP 0 1 0 0 1 SP 0 1 1 1 0 SP 1 0 0 0 1 RES 1 0 1 0 1 RES 1 1 0 1 0 SET 1 1 1 1 0 SET abgeleiee Synheseabelle -FF * 0 0 0 0 1 1 1 0 0 1 1 1 zu 5. Zusandsübergangsabelle mi -Generierung x z 0 * z 0 * y 1 0 0 0 0 0 0 0 0 0 1 0 0 0 1 0 0 1 0 0 1 0 1 0 0 1 1 0 1 1 0 0 1 0 0 1 0 1 0 0 1 0 1 1 0 1 1 0 1 1 0 1 1 1 1 0 1 1 1 1 1 0 0 1 0 0 zu 6. Generierung von 1, 0 und von y 0 = x z 0 x z 0 = x z 0 ; 1 = x z 0 x z 0 y = x z 0 5-8

Humbold-Universiä zu Berlin, r. Winkler igiale Syseme (Grundlagen 3) 10.05.2010 zu 7. Logikplan: NOT AN3 14 21 AN2 OR3 20 AN2 11 FF PRN 6 Z1 9 X V 19 LRN NOT 23 AN3 13 AN2 25 26 Y NOT 15 16 AN2 OR2 12 FF PRN 4 Z0 17 24 LRN 8 lk V 0 = x z 0 x z 0 = x z 0 ; 1 = x z 0 x z 0 y = x z 0 XOR-Umformung: 1 = x x z 0 x z 0 (unschädliche Erweierung mi x) 0 = x z 0 x z 0 ; 1 = x x (z 0 ) ( x geseuere Muliplexer im FFE und zusäzliches XOR-Gaer) XOR 7 FFE PRN 6 Z1 9 X V 1 ENA LRN AN3 10 11 Y 8 lk V NOT 3 FFE 2 PRN ENA LRN 4 Z0 Verallgemeinerung (Herleiung späer beim n-bi-zähler): i = x z i x (z i-1 z i-2... z 0 1 z i ) HL (1-Bi Zählsufe, vollsändig) LIBRARY IEEE; USE IEEE.ST_LOGI_1164.ALL; ENTITY bi_coun is por ( signal X, lk: in ST_LOGI; signal Z: ou ST_LOGI_VETOR (1 downo 0); signal Y: ou ST_LOGI ); end bi_coun; ARHITETURE arch_bi_coun of bi_coun is signal : ST_LOGI_VETOR (1 downo 0):= 00 ; begin Y <= X AN (1) AN (0); Z <= ; process (lk) begin if rising_edge(lk) hen if X = 1 hen (1) <= (1) XOR (0); (0) <= NOT (0); end if; end if; end process; end arch_bi_coun; Anselle <= wie beim FF noieren wir die logische Funkion, wenn X= 1 gesez is. Bei X= 0 soll sich nichs ändern. (1) und (0) bleiben erhalen, ohne das explizi ein else Zweig für if X= 1 angegeben wird. Verallgemeiner: Alle Zuweisungen in einem solchen Prozess werden gespeicher - sie beschreiben jeweils ein Flipflop. a der Ausgang Y nich gespeicher werden soll, erfolg die Zuweisung außerhalb des Prozesses. iese Zuweisung kann über oder uner dem Prozess noier werden, da die AN Funkion immer berechne wird nebenläufig (parallel) zum Prozess. Z wird ebenso aus erzeug, das is nöig, da Z als Ausgang ou nich gelesen werden kann. Problem: er Anfangszusand der Flipflops wird zwar mi 00 fesgeleg, das ensprich aber nich der Schalung bzw. der Hardware. azu solle späer besser der LRN oder PRN Eingang (s. Bild) bzw. ein RES Signal benuz werde. 5-9

Humbold-Universiä zu Berlin, r. Winkler igiale Syseme (Grundlagen 3) 10.05.2010 Moore-Version des Beispielzählers X z 0 * z 0 * y 0 0 0 0 0 0 1 0 0 0 1 0 0 0 1 0 1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1 0 1 1 0 0 1 1 1 1 1 1 1 1 0 0 1 Zusandsgleichungen Überrag z 0 * = x z 0 x z 0 * = z 0 x z 0 x z 0 Zusandsgraph x=0 z 0 00 x=1 y=0 y=0 z 0 01 x=1 x=1 x=0 x=0 z 0 11 y=1 z 0 10 y=0 x=1 x=0 x z 0 * z 0 * y 1 0 0 0 0 0 0 0 0 0 1 0 0 0 1 0 0 1 0 0 1 0 1 0 0 1 1 0 1 1 0 0 1 0 0 1 0 1 0 0 1 0 1 1 0 1 1 0 1 1 0 1 1 1 1 1 1 1 1 1 1 0 0 1 0 0 zu 6. Generierung von 1, 0 und von y 0 = x z 0 x z 0 = x z 0 ; 1 = x z 0 x z 0 y = z 0 XOR 7 FFE PRN 6 Z1 9 X V 1 ENA LRN AN2 12 11 Y 8 lk V NOT 3 FFE 2 PRN ENA LRN 4 Z0 VHL: Bis auf die Ausgangsfunkion Y <= (1) AN (0); Gib es keine Unerschiede zum Mealy-Zähler. 5-10

Humbold-Universiä zu Berlin, r. Winkler igiale Syseme (Grundlagen 3) 10.05.2010 Anwendung des Beispiel-Zählers: Kaskadierung z 0 z 2 z 3 z n-2 z n-1 1 c x y 1 y 2 c 2 bi Zähler c 2 bi Zähler c 2 bi Zähler y Mögliche Timing-Probleme der Kaskadierung des Mealy-Zählers: Eine Änderung des Freigabeeinganges x während des Zusandes Z 3 =(11): bewirk mi einer Gaerlaufzei-Verzögerung auch eine Änderung des Überragsausgang y. Bei einer Kaskadierung der Zähler (x n = y n-1 ) mi 0 n i addieren sich diese Zeien, so daß sich bei hinreichend großer Sufenzahl i der Eingang x i ers nach der Takflanke änder. ami sopp die Sufe i nich korrek, sondern zähl um 1 weier. urch Verringerung der Takfrequenz kann wieder eine korreke Arbeisweise erreich werden. c x x=0: Zählen soppen z 0 1 Gaerverzögerung y 1 Zähler 1 sopp z 0 00 01 10 11 11 11 i Gaerverzögerungen y i z 0 11 11 11 Zähler i sopp nich 11 00 00 5-11

Humbold-Universiä zu Berlin, r. Winkler igiale Syseme (Grundlagen 3) 10.05.2010 Mögliche Probleme der Kaskadierung des Moore-Zählers: Kaskadierung von mehr als 2 Zählern is nich möglich, da das Überragssignal y des 2. Zählers 4 Take lang akiv is, so daß der 3. Zähler mehrere Take lang zähl. Archiekurprinzipien bei der Verkopplung von Auomaen: - asynchrone Weiergabe von Signalen (Ripple-hrough-Prinzip) Mealy-Beispielzähler Voreil: einfache Realisierung Problem: lange Verzögerungskeen erfordern langsamen Tak - synchrone Weiergabe von Signalen (Pipeline-Prinzip) Voreil: keine Abhängigkei von Gaerlaufzeien Problem: Verzögerung von Sufe zu Sufe um einen Tak, d.h. Baugruppen arbeien unereinander verzöger. 2. Moore-Beispielzähler - Parallele und synchrone Weierleiung von Signalen (Parallelarbeisprinzip) Voreil: keine Abhängigkei von Gaerlaufzeien Problem: höherer Hardwareaufwand, nich beliebige Kaskadierbarkei spezielle Schalwerke: Serien-Parallel-Wandler serieller aeneingang, paralleler aenausgang n, n-1,... 0 Schieberegiser: n n-1 0 1 1... 1 Parallel-Serien-Wandler paralleler aeneingang n, n-1,... 0, serieller aenausgang L = 1: paralleles Laden der aen n, n-1,... 0 n n-1 0 1 1 1 1... 1 L Auonome Schalwerke auonome Schalwerke haben keine Eingangssignale X, Anwendung: Zähler, Frequenzeiler Beispiel: 2-bi-Zähler mi -FF Z 1 Z 0 = 1 1. 1 = z 0 0 = z 0 5-12

Humbold-Universiä zu Berlin, r. Winkler igiale Syseme (Grundlagen 3) 10.05.2010 Verallgemeinerung (n-bi-zähler): n Flipflops n i Zusands- Speicher Z Z * i +1 n Über- führungs- Funkion n bi Zähler- Sand Z = ( z n-1 z 0 ), = Z * = Z + 1 Inkremenierer z i z n-1 z 3 z 2 z 0 + 0 0 0 0 1 c i z 2 z 0 1 z 0 1 z 0 1 d i z 3 (z 2 z 0 1) z 2 ( z 0 1) (z 0 1) z 0 1 d 0 = z 0 d 1 = (z 0 ) n-bi Zähler: d i = z i (z i-1 z i-2... z 0 ) 0 i n-1 Rekursiv: d i = z i c i-1 Akuelle Zählsufe mi c i = z i c i-1 Überrag zur nächsen Sufe Für erse Sufe z 0 gil: c -1 = 1 erse Sufe z 0 zähl c -1 = 0 erse Sufe z 0 zähl nich (und alle anderen auch nich) Anwendung: 1-Bi-Zählermodul mi Ladeeingang GET, Freigabe IN und Überragsausgang OUT = GET AT GET (Z IN) OUT = IN Z AR = Z (Muliplexer mi GET Seuerung) 20 IN V XOR 19 mux E1 E2 A FF PRN 25 AR S 18 30 LRN 23 AT V AN2 24 GET V 31 26 OUT 28 LK V 29 RES V ieses Modul kann zu einem N-Bi Zähler mi N Ausgängen AR(N-1), AR(N-2), AR(1), AR(0) zusammengesez werden. 5-13

Humbold-Universiä zu Berlin, r. Winkler igiale Syseme (Grundlagen 3) 10.05.2010 VHL (vollsändiger 1-Bi Zähler, rücksezbar und ladbar) LIBRARY IEEE; USE IEEE.ST_LOGI_1164.ALL; ENTITY bi_couner is por (signal IN, AT, GET, LK, RES: in ST_LOGI; signal AR, OUT: ou ST_LOGI); end bi_couner; ARHITETURE arch_bi_couner of bi_couner is signal Z: ST_LOGI; -- in. AR ohne in/ou begin process (LK,RES) begin if RES = 0 hen -- RES=LRN is akiv bei 0 Z <= 0 ; elsif rising_edge(lk) hen if GET = 1 hen -- Muliplexer, wenn-dann Z <= AT; -- laden else Z <= IN XOR Z; -- inkremenieren end if; end if; end process; AR <= Z; OUT <= IN AN Z; end arch_bi_couner; ie Anweisungen im process werden von oben nach unen inerpreier. Wie in einer gewöhnlichen Programmiersprache können daher if, else usw. geschachel werden, um das gewünsche Verhalen zu beschreiben. ie Funkion = GET AT GET (Z IN) kann also sa Z <= (GET AN AT) OR (NOT GET AN ( Z XOR IN); einfacher und übersichlicher wie folg beschrieben werden: if GET = 1 hen Z <= AT; else Z <= IN XOR Z; end if; Beachen: ie Zuweisung erfolg immer auf Z, die Speicherung im -FF erfolg auomaisch durch die rising_edge Bedingung. Z wird mi RES= 0 korrek in den Anfangszusand 0 rückgesez. VHL (vollsändiger N-Bi Zähler, rücksezbar, ladbar, zähl bei IN=1, Überrag OUT) LIBRARY IEEE; USE IEEE.ST_LOGI_1164.ALL; ENTITY couner is generic (N: INTEGER:=4); por (signal IN, GET, LK, RES: in BIT; signal AT: in ST_LOGI_VETOR (N-1 downo 0); signal AR: ou ST_LOGI_VETOR (N-1 downo 0); signal OUT: ou ST_LOGI); end couner; ARHITETURE arch_ couner of couner is componen bi_couner is por (signal IN, AT, GET, LK, RES: in ST_LOGI; signal AR, OUT: ou ST_LOGI); end componen; signal Z: ST_LOGI_VETOR (N-1 downo 0); -- lokale Zusände signal : ST_LOGI_VETOR (N-1 downo 0); -- lokale Überräge begin bi0: bi_couner por map(in, AT(0), GET, LK, RES, Z(0), (0)); generae_bis: for I in 1 o N-1 generae -- I benöig keine eklaraion bix: bi_couner por map((i-1), AT(I), GET, LK, RES, Z(I), (I)); end generae; AR <= Z; OUT <= (N-1); end arch_compare; Es gib weiere Lösungen für die Beschreibung von Zählern, wenn die mahemaischen Operaoren + bzw. +1 auf ST_LOGI_VETOR angewende werden können. azu sind spezielle Funkionen (packages) verfügbar, z.b. in der numeric_sd oder ST_LOGI_signed: USE IEEE.ST_LOGI_signed.ALL; 5-14

Humbold-Universiä zu Berlin, r. Winkler igiale Syseme (Grundlagen 3) 10.05.2010 Zyklischer odegeneraor (Pseudozufallsgeneraor) 0 1 2 3 = 1 1 1 1. Speicherregiser Lach bzw. Parallel-Por: n P n G1 n-1 G1 P n-1 n Tak zu lang aen 1 aen 2... 0 G1 P 0 P n aen 1 übernommen Regiser mi Enable-Eingang GET: n GET n-1 0 EN EN EN... R n R n-1 R 0 GET R Anfang u. Länge unkriisch aen 1 aen 1 übernommen aen 2 aen 2 Zusammenfassung sequenielle Schalungen - sequenielle Schalungen haben ein zeiabhängiges Verhalen - ie Zei wird durch Takung der Flipflops quanisier - durch Rückführungen werden Ausgangssignale und Eingangssignale verknüpf - Rückführungen erfolgen aus Sabiliäsgründen immer über geprüfe Flipflops - digiale Auomaen besizen Zusandsspeicher, Überführungs- und Ausgangslogik - der Mealy Auoma läß im Gegensaz zum Moore-Auomaen eine kombinaorische Verknüpfung der Eingänge zum Ausgang zu. - der Auomaenenwurf erfolg durch formale Beschreibung, Einführung von Flipflop- Zusandsspeichern und Generierung der Flipflop-spezifischen Überführungsfunkion und der Ausgangsfunkion - bei synchronen Auomaen besizen alle Flipflops den selben Tak - er globale Tak und das Rese Signal wird i.a. nachräglich in die Schalung aufgenommen. - ie Kopplung von Auomaen is durch eine asynchrone Signalweiergabe (ripple-hrough) oder synchrone Signalweiergabe (pipeline- oder parallel- Verarbeiung) möglich. 5-15

Humbold-Universiä zu Berlin, r. Winkler igiale Syseme (Grundlagen 3) 10.05.2010 5.3. Rechenwerk ie Zusammenschalung einer n-bi-alu mi Speicherregisern über einen aenbus ergib eine Srukur, in der die Operanden und Ergebnisse der ALU zwischengespeicher werden können. Im allgemeinen Fall werden n-bi Regiser für die Operanden A und B sowie für das Ergebnis benöig, dami können die folgenden Operaionsypen realisier werden: := A B ( : beliebiger ALU-Operaor, := Zuweisung erfolg mi einem Tak oder einem Enable-Signal) Vereinfach is auch die Rückspeicherung nach A möglich, das ergib den Operaionsyp: A := A B ( : beliebiger ALU-Operaor) := Tak oder Enable-Signal ge_a in Verbindung mi dem Tak) ge_b ge_a Befehl S A-Reg. B-Reg. -1 A B ALU S n-1 Z Flags Beispiel einer 4-bi-ALU: A=0010 (2) B=1110 (14) -1=0 S=[1,0,0,1] (Addiion mi Überrag) liefer nach der Verzögerungszei der ALU: =0000 Z=1 n-1=1 er Wer von wird durch ein ge_a Signal in das Ergebnisregiser A (vier -Flipflops) zurückgeschrieben. Wenn der aenbus mi den einzelnen Regisern zusäzlich über Trisae-Treiber verbunden is, können neben den Ergebnissen der ALU auch Were von A oder B ransporier werden, z.b. B := A, (:= Enable-Signal GET_B, Trisae-Enable PUT_A ) A := B, (:= Enable-Signal GET_A, Trisae-Enable PUT_B ) A :=, bzw. A:= A B (:= Enable-Signal GET_A, Trisae-Enable PUT_RES) B :=, bzw. A:= A B (:= Enable-Signal GET_A, Trisae-Enable PUT_RES) Es darf jeweils nur ein Trisae-Treiber akivier werden, um eine widersprüchliche Busbelegung zu vermeiden. Alernaiv zu Trisae-Treibern können auch Muliplexer (hier: 3 auf 1) eingesez werden. Weierhin is ein Flag-Regiser F vorgesehen, welches der Speicherung der ALU-Ausgangssignale und Z dien. Zusäzlich können das Vorzeichen n-1 (das MSB mos significan bi) und ein Zweierkomplemen-Überlauf Bi OV (ZK-Overflow) im F-Regiser abgespeicher werden. Für eine n-bi ALU ergib sich ein Überlauf, wenn im Ergebnis der Addiion posiiver Zahlen eine negaive Zahl enseh oder bei der Addiion negaiver Zahlen ein posiives Ergebnis enseh: ZK = A n-1 B n-1 n-1 A n-1 B n-1 n-1 5-16