6. hét: A sorrendi hálózatok elemei és tervezése
Sorrendi hálózat A Sorrendi hálózat Y
Sorrendi hálózat A Sorrendi hálózat Y Belső állapot
Sorrendi hálózat Primer változó A Sorrendi hálózat Y Szekunder változó
Mealy - modell f y = A, Q Y f Q n+1 = A, Q Q n+1 Bemenetek A Q Kombinációs hálózat Y Qn+1 Kimenetek Szekunder változók Memória
Szinkron hálózatok Bemenet Kombinációs hálózat Kimenet Órajel Tárolóegység Két fő eleme Tárolóegység (Memória) A korábbi bemeneti kombinációkra vonatkozó információ tárolására Bemeneti kombinációs hálózat A kimeneti jel előállítása A tárolandó információ előállítása A bemeneti kombinációkból és az előzőleg eltárolt információk együtt határozzák meg a következő ciklusban eltárolandó információt Fontos különbség az aszinkron sorrendi hálózatokhoz képest A jelváltozások nem futnak rögtön végig a hálózaton, csak a következő ciklusban hatnak 6
Szinkronizáció Felfutó él Lefutó él 1 0 1 Ciklusidő idő Minden változás az órajellel időzítve, azzal szinkronizálva megy végbe, előre pontosan definiált időpillanatban, az órajel fel- vagy lefutó élének megérkezését követően 7
Szinkron hálózatok Bemenet Kombinációs hálózat Kimenet Órajel Tárolóegység 8
A tároló egység flip - flop A tárolóegység, memóriaegység tároló elemekből épül fel Feladata: információ tárolás Egy tároló elem 1 bit információt tárol Kétállapotú (bistabil) billenő elemek (Flip-Flopok) Mindaddig megtartják előző állapotukat míg külső jel ennek megváltoztatására nem kényszeríti
A tároló típusai SR (Set-Reset) flip-flop D (Data) flip-flop T (toggle) flip-flop JK flip-flop
R-S tároló S R Q n+1 = F Q (S,R,Q n ) Q n Y n = Q n.q n+1
R-S tároló S R Q n+1 = F Q (S,R,Q n ) Q n Y n = Q n.q n+1 R S Q n Q n+1 0 0 0 0 0 0 1 1 0 1 0 1 0 1 1 1 1 0 0 0 1 0 1 0 1 1 0 X 1 1 1 X Változatlan Beírás Törlés Tiltott
A R- S Tároló Készítsünk Set-Reset tárolót Az S(Set) bemenetre adott 1 -es a kimenetet 1 - be állítja Az R(Reset) bemenetre adott 1 -es a kimenetet 0 -ba állítja R S Q n Q n+1 0 0 0 0 0 0 1 1 0 1 0 1 0 1 1 1 1 0 0 0 1 0 1 0 1 1 0 X 1 1 1 X Változatlan Beírás Törlés Tiltott S R Q n+1 = F Q (S,R,Q n ) Q n Y n = Q n.q n+1 13
R- S tároló Állapot gráf X0/0 01/1 0 1 10/0 0X/1 R S Q n Q n+1 0 0 0 0 0 0 1 1 0 1 0 1 0 1 1 1 1 0 0 0 1 0 1 0 1 1 0 X 1 1 1 X Változatlan Beírás Törlés Tiltott 14
Vezérlő tábla R- S tároló Nincs versenyfutás vagy oszcilláció - aszinkron működés is stabil Vannak érdektelen (Don t care állapotok) Q n+1 -re elvégezve az összevonásokat az egyszerűsített logikai függvény: R S Q n Q n+1 0 0 0 0 0 0 1 1 0 1 0 1 0 1 1 1 1 0 0 0 1 0 1 0 1 1 0 X 1 1 1 X Változatlan Beírás Törlés Tiltott R S Q n 0 1 Q n+1 1 1 X X 0 0
RS tároló Működést leíró táblázat Az aktuális órajel előtti kimenet Q n Az aktuális órajel utáni kimenet Q n+1 Állapottábla Felírható a kimenet logikai függvénye A következő órajel megérkezésekor R S Q n Q n+1 0 0 0 0 0 0 1 1 0 1 0 1 0 1 1 1 1 0 0 0 1 0 1 0 1 1 0 X 1 1 1 X Változatlan Beírás Törlés Tiltott R S Q n+1 0 0 Q n 0 1 1 1 0 0 1 1 X Tiltott R S Q n 0 1 Állapot gráf 1 1 X X 0 0 X0/0 10/1 0 1 01/0 0X/1 16
RS tároló megvalósítása A Q n+1 -et és Q n+1 -et megvalósító kombinációs hálózat logikai _ függvénye NAND kapus megvalósítása Külön jelképi jelölés
RS tároló megvalósítása A Q n+1 -et és Q n+1 -et megvalósító kombinációs hálózat logikai _ függvénye NAND kapus megvalósítása Külön jelképi jelölés R S Q n+1 0 0 Q n 0 1 1 1 0 0 1 1 X Tiltott
RS tároló megvalósítása A Q n+1 -et és Q n+1 -et megvalósító kombinációs hálózat logikai függvénye _ NAND kapus megvalósítása Külön jelképi jelölés R S Q n+1 0 0 Q n 0 1 1 1 0 0 1 1 X Tiltott Az RS tároló ebben a formájában még aszinkron működésű
RS tároló megvalósítása A Q n+1 -et és Q n+1 -et megvalósító kombinációs hálózat logikai függvénye _ NAND kapus megvalósítása Külön jelképi jelölés R S Q n+1 0 0 Q n 0 1 1 1 0 0 1 1 X Tiltott Az RS tároló ebben a formájában még aszinkron működésű
RS tároló megvalósítása Az R és S bemenetek hatása a szinkronjel (órajel) megérkezésekor érvényesüljön (Órajel) C
RS tároló megvalósítása (Órajel) C Statikus vezérlés (Szint vezérlés)
RS tároló megvalósítása (Órajel) C Statikus vezérlés (Szint vezérlés) A flip-flop csak akkor billen át, ha az órajel 1 értékű
RS tároló megvalósítása (Órajel) C Statikus vezérlés (Szint vezérlés) A flip-flop csak akkor billen át, ha az órajel 1 értékű Ez a megoldás nem használható szinkron hálózat építésére átlátszó
RS tároló megvalósítása (Órajel) C Statikus vezérlés (Szint vezérlés) A flip-flop csak akkor billen át, ha az órajel 1 értékű Ez a megoldás nem használható szinkron hálózat építésére átlátszó Az órajel 1 értékénél az esetleges többszöri változás a bemeneten a kimenetet is többször átbillentheti, és ez tovább is terjed a flip-flopon keresztül
RS tároló megvalósítása (Órajel) C Statikus vezérlés (Szint vezérlés) A flip-flop csak akkor billen át, ha az órajel 1 értékű Ez a megoldás nem használható szinkron hálózat építésére átlátszó Az órajel 1 értékénél az esetleges többszöri változás a bemeneten a kimenetet is többször átbillentheti, és ez tovább is terjed a flip-flopon keresztül Ez idő alatt az ilyen elemekből felépített hálózat teljes egésze aszinkron módon viselkedne
RS tároló megvalósítása (Órajel) C Statikus vezérlés (Szint vezérlés) A flip-flop csak akkor billen át, ha az órajel 1 értékű Ez a megoldás nem használható szinkron hálózat építésére átlátszó Az órajel 1 értékénél az esetleges többszöri változás a bemeneten a kimenetet is többször átbillentheti, és ez tovább is terjed a flip-flopon keresztül Ez idő alatt az ilyen elemekből felépített hálózat teljes egésze aszinkron módon viselkedne Ez szinkron hálózatban nem megengedhető egy szinkron jel, egy változás
RS tároló megvalósítása Élvezérlés (Dinamikus vezérlés) C t pd A B Y tpd A B Y 28
RS tároló megvalósítása Élvezérlés (Dinamikus vezérlés) Nem engedjük folyamatosan az órajel 1 értéke alatt hatni a bemeneteket A C t pd A B Y tpd B Y 29
RS tároló megvalósítása Élvezérlés (Dinamikus vezérlés) Nem engedjük folyamatosan az órajel 1 értéke alatt hatni a bemeneteket Csak egy rövid időre, amíg a tároló át tud billeni, ez után elvesszük a beíró (óra) jelet A C t pd A B Y tpd B Y 30
RS tároló megvalósítása Élvezérlés (Dinamikus vezérlés) Nem engedjük folyamatosan az órajel 1 értéke alatt hatni a bemeneteket Csak egy rövid időre, amíg a tároló át tud billeni, ez után elvesszük a beíró (óra) jelet Lerövidítjük az órajel 1 értékét A C t pd A B Y tpd B Y 31
RS tároló megvalósítása Élvezérlés (Dinamikus vezérlés) Nem engedjük folyamatosan az órajel 1 értéke alatt hatni a bemeneteket Csak egy rövid időre, amíg a tároló át tud billeni, ez után elvesszük a beíró (óra) jelet Lerövidítjük az órajel 1 értékét Szándékosan hazárdos órajel formáló hálózatot csinálunk C t pd A B Y tpd A B Y 32
RS tároló megvalósítása Élvezérlés (Dinamikus vezérlés) Nem engedjük folyamatosan az órajel 1 értéke alatt hatni a bemeneteket Csak egy rövid időre, amíg a tároló át tud billeni, ez után elvesszük a beíró (óra) jelet Lerövidítjük az órajel 1 értékét Szándékosan hazárdos órajel formáló hálózatot csinálunk C t pd A B Y tpd A B Y 33
RS tároló megvalósítása Élvezérlés (Dinamikus vezérlés) Nem engedjük folyamatosan az órajel 1 értéke alatt hatni a bemeneteket Csak egy rövid időre, amíg a tároló át tud billeni, ez után elvesszük a beíró (óra) jelet Lerövidítjük az órajel 1 értékét Szándékosan hazárdos órajel formáló hálózatot csinálunk A C t pd A B Y tpd B Y 34
RS tároló megvalósítása Master Slave megoldás C 35
RS tároló megvalósítása Master Slave megoldás Az élvezérlésnél bonyolultabb megoldás Master Slave C 36
RS tároló megvalósítása Master Slave megoldás Az élvezérlésnél bonyolultabb megoldás Beíró kapuk Master Átíró kapuk Slave C 37
RS tároló megvalósítása Master Slave megoldás Az élvezérlésnél bonyolultabb megoldás Beíró kapuk Master Átíró kapuk Slave C 38
RS tároló megvalósítása Master Slave megoldás Az élvezérlésnél bonyolultabb megoldás Az órajel 1 értékénél a beíró kapuk engedélyezik a Master-t, ezalatt a Slave letiltva Beíró kapuk Master Átíró kapuk Slave C 39
RS tároló megvalósítása Master Slave megoldás Az élvezérlésnél bonyolultabb megoldás Az órajel 1 értékénél a beíró kapuk engedélyezik a Master-t, ezalatt a Slave letiltva Az órajel 0 értékénél az átíró kapuk engedélyezik a Slave-et, ezalatt a Master letiltva Beíró kapuk Master Átíró kapuk Slave C 40
RS tároló megvalósítása Master Slave megoldás Az élvezérlésnél bonyolultabb megoldás Az órajel 1 értékénél a beíró kapuk engedélyezik a Master-t, ezalatt a Slave letiltva Az órajel 0 értékénél az átíró kapuk engedélyezik a Slave-et, ezalatt a Master letiltva A bemeneten lévő esetleges zavaró tranziensek nem jutnak át a letiltott Slave-en Beíró kapuk Master Átíró kapuk Slave C 41
RS tároló megvalósítása Master Slave megoldás Az élvezérlésnél bonyolultabb megoldás Az órajel 1 értékénél a beíró kapuk engedélyezik a Master-t, ezalatt a Slave letiltva Az órajel 0 értékénél az átíró kapuk engedélyezik a Slave-et, ezalatt a Master letiltva A bemeneten lévő esetleges zavaró tranziensek nem jutnak át a letiltott Slave-en Bár aszinkron működésű, de nem átlátszó Beíró kapuk Master Átíró kapuk Slave C 42
RS tároló megvalósítása Kétfokozatú tároló (Master-Slave flip-flop) A Master-be írás alatt lehet tranziens De az átírás előtt már lecseng Átírás alatt Master kimenete állandó 1 Beíró kapuk nyitnak Átíró kapuk zárnak Beírás Masterba Átírás Slave-be Master kimenete már nem változhat 0 Átíró kapuk nyitnak Beíró kapuk zárnak
A tárolóelemek Tároló elemek Szinkron hálózatokban csak nem átlátszó tároló elemek használhatók Dinamikus vezérlésű (élvezérelt) Kétfokozatú (Master-Slave) Nincsenek instabil állapotok A legfontosabb alap tároló elemek a bemenetek számában és a bemeneti jel hatására történő kimeneti jelváltozásban térnek el RS tároló JK tároló T tároló D tároló
JK Tároló
JK Tároló Kiküszöböli az RS tároló hátrányát Nincs tiltott bemeneti kombináció K J Q n+1 0 0 Q n 0 1 1 1 0 0 _ 1 1 Q n
JK Tároló Kiküszöböli az RS tároló hátrányát Nincs tiltott bemeneti kombináció K J Q n Q n+1 0 0 0 0 0 0 1 1 0 1 0 1 0 1 1 1 1 0 0 0 1 0 1 0 Változatlan Beírás Törlés K J Q n+1 0 0 Q n 0 1 1 1 0 _ 0 1 1 Q n 1 1 0 1 1 1 1 0 Billentés
JK Tároló Kiküszöböli az RS tároló hátrányát Nincs tiltott bemeneti kombináció Működést leíró táblázat Az aktuális órajel előtti kimenet Q n Az aktuális órajel utáni kimenet Q n+1 Állapottábla Felírható a kimenet logikai függvénye K J Q n Q n+1 0 0 0 0 0 0 1 1 0 1 0 1 0 1 1 1 1 0 0 0 1 0 1 0 1 1 0 1 1 1 1 0 Változatlan Beírás Törlés Billentés K J Q n+1 0 0 Q n 0 1 1 1 0 _ 0 1 1 Q n
JK Tároló Kiküszöböli az RS tároló hátrányát Nincs tiltott bemeneti kombináció Működést leíró táblázat Az aktuális órajel előtti kimenet Q n Az aktuális órajel utáni kimenet Q n+1 Állapottábla Felírható a kimenet logikai függvénye K J Q n Q n+1 0 0 0 0 0 0 1 1 0 1 0 1 0 1 1 1 1 0 0 0 1 0 1 0 1 1 0 1 1 1 1 0 Változatlan Beírás Törlés Billentés K J Q n+1 0 0 Q n 0 1 1 1 0 _ 0 1 1 Q n Állapot gráf 11/1 10/0 01/1 01/1 00/0 0 1 10/0 11/0 00/1
JK Tároló Kiküszöböli az RS tároló hátrányát Nincs tiltott bemeneti kombináció Működést leíró táblázat Az aktuális órajel előtti kimenet Q n Az aktuális órajel utáni kimenet Q n+1 Állapottábla Felírható a kimenet logikai függvénye K J Q n Q n+1 0 0 0 0 0 0 1 1 0 1 0 1 0 1 1 1 1 0 0 0 1 0 1 0 1 1 0 1 1 1 1 0 Változatlan Beírás Törlés Billentés K J Q n+1 0 0 Q n 0 1 1 1 0 _ 0 1 1 Q n Q n KJ 0 1 1 1 1 0 0 0 Állapot gráf 11/1 10/0 01/1 01/1 00/0 0 1 10/0 11/0 00/1
JK tároló megvalósítás Kétfokozatú (Master-Slave) megvalósítás RS tárolóból külön visszacsatolásokkal A Master-ba írást az előző állapot is vezérli A visszacsatoláson keresztül K J Q n+1 0 0 Q n 0 1 1 1 0 0 _ 1 1 Q n J Q K Q _ C 51
T tároló
Csak egy bemenet T tároló T Q n+1 0 Q n _ 1 Q n
T tároló Csak egy bemenet T Q n Q n+1 0 0 0 0 1 1 1 0 1 1 1 0 Változatlan Billentés T Q n+1 0 Q _ n 1 Q n
T tároló Csak egy bemenet Működést leíró táblázat Az aktuális órajel előtti kimenet Q n Az aktuális órajel utáni kimenet Q n+1 Állapottábla Felírható a kimenet logikai függvénye T Q n Q n+1 0 0 0 0 1 1 1 0 1 1 1 0 Változatlan Billentés T Q n+1 0 Q _ n 1 Q n Állapot gráf 1/1 0/0 0 1 1/0 0/1
T tároló Csak egy bemenet Működést leíró táblázat Az aktuális órajel előtti kimenet Q n Az aktuális órajel utáni kimenet Q n+1 Állapottábla Felírható a kimenet logikai függvénye T Q n Q n+1 0 0 0 0 1 1 1 0 1 1 1 0 Változatlan Billentés T Q n+1 0 Q _ n 1 Q n Állapot gráf T Q n 0 1 1 0 1/1 1 0 0 0 0/0 0 1 1/0 0/1
T tároló megvalósítása T tároló megvalósítása JK tárolóval T Q n+1 0 Q n 1 Q n K J Q n+1 0 0 Q n 0 1 1 1 0 0 1 1 Q n
D tároló
D tároló Csak egy bemenet Átmeneti információtárolásra D Q n+1 0 0 1 1
Csak egy bemenet D tároló Átmeneti információtárolásra Működést leíró táblázat Az aktuális órajel előtti kimenet Q n Az aktuális órajel utáni kimenet Q n+1 Állapottábla Felírható a kimenet logikai függvénye D Q n Q n+1 D Q n+1 0 0 1 1 0 0 0 0 1 0 1 0 1 1 1 1 Törlés Beírás 1 0 0 0
D tároló Csak egy bemenet Átmeneti információtárolásra Működést leíró táblázat Az aktuális órajel előtti kimenet Q n Az aktuális órajel utáni kimenet Q n+1 D Q n Q n+1 0 0 0 0 1 0 1 0 1 1 1 1 Törlés Beírás D Q n+1 0 0 1 1 Állapottábla Felírható a kimenet logikai függvénye 1/1 0 1 0/0 1/1 0/0
D tároló Csak egy bemenet Átmeneti információtárolásra Működést leíró táblázat Az aktuális órajel előtti kimenet Q n Az aktuális órajel utáni kimenet Q n+1 Állapottábla Felírható a kimenet logikai függvénye D Q n Q n+1 0 0 0 0 1 0 1 0 1 1 1 1 Törlés Beírás D Q n+1 0 0 1 1 D Q n 0 0 1 1 1/1 1 0 0 0 0 1 0/0 1/1 0/0
D tároló megvalósítása JK tárolóval K J Q n+1 0 0 Q n 0 1 1 1 0 0 1 1 Q n D Q n+1 0 0 1 1
Alapállapotba állítás A berendezések bekapcsolásakor biztosítani kell a stabil, ismert alapállapot Preset J Q K Clear Q _ C 64
Alapállapotba állítás A berendezések bekapcsolásakor biztosítani kell a stabil, ismert alapállapot Általában aszinkron bemenetek A tároló kiindulási állapota lehet 0 vagy 1 Preset J Q K Clear Q _ C 65
Alapállapotba állítás A berendezések bekapcsolásakor biztosítani kell a stabil, ismert alapállapot Általában aszinkron bemenetek A tároló kiindulási állapota lehet 0 vagy 1 1) Clear (Reset) bemenet - A tároló törlése, 0 -ába állítása 2) Preset (Set) bemenet - A tároló beállítása, 1 -be állítása Preset J Q K Clear Q _ C 66
Szinkron sorrendi hálózat működése Bemenet Kombinációs hálózat Kimenet Órajel Tárolóegység A szinkron sorrendi hálózat állapotai Minden tároló elem két állapotot vehet fel: 0 vagy 1 Ha n tárolóelem van, a teljes hálózatnak 2 n állapota lehet Működés közben ezek közül nem feltétlenül valósul meg mindegyik (tiltott állapotok) Egyik állapotból a másikba csak egy újabb órajel hatására kerülhet a rendszer A bemeneti jelek és a tároló elemek tartalma együttesen határozzák meg a következő (Q n+1 ) állapotot A tároló elemek az előző órajel hatására létrejött belső (Q n ) állapotot tárolják
Szinkron sorrendi hálózat működése Bemenet Kombinációs hálózat Kimenet Órajel Tárolóegység A szinkron sorrendi hálózat állapotai Minden tároló elem két állapotot vehet fel: 0 vagy 1
Szinkron sorrendi hálózat működése Bemenet Kombinációs hálózat Kimenet Órajel Tárolóegység A szinkron sorrendi hálózat állapotai Minden tároló elem két állapotot vehet fel: 0 vagy 1 Ha n tárolóelem van, a teljes hálózatnak 2 n állapota lehet Működés közben ezek közül nem feltétlenül valósul meg mindegyik (tiltott állapotok)
Szinkron sorrendi hálózat működése Bemenet Kombinációs hálózat Kimenet Órajel Tárolóegység A szinkron sorrendi hálózat állapotai Minden tároló elem két állapotot vehet fel: 0 vagy 1 Ha n tárolóelem van, a teljes hálózatnak 2 n állapota lehet Működés közben ezek közül nem feltétlenül valósul meg mindegyik (tiltott állapotok) Egyik állapotból a másikba csak egy újabb órajel hatására kerülhet a rendszer A bemeneti jelek és a tároló elemek tartalma együttesen határozzák meg a következő (Q n+1 ) állapotot A tároló elemek az előző órajel hatására létrejött belső (Q n ) állapotot tárolják
A hálózat működése kapcsolási rajz Q 1 Q 1 Két tároló elem (T tárolók) Bemeneti és kimeneti kombinációs hálózat Sorrendi hálózatoknál a tároló elemek és visszacsatolások nehezítik a megértést Még ennél a viszonylag egyszerű hálózatnál is Bonyolultabb esetben átláthatatlanná válhat a kapcsolási rajz Az összeköttetéseket gyakran összekötő vonalak helyett azonos elnevezéssel helyettesítik
A hálózat működése Állapotgráf Szemléletes, könnyen áttekinthető Két (belső) szekunder változó Négy lehetséges állapot A lehetséges állapotokat a tároló elemek kimeneti jelével kódoljuk Q 2 Q 1 = 00, 01, 10, 11 Egyik sem tiltott Ha X = 1 állapotváltozás következik be X Y Q 2 Q 1 Q 2 Q 1 1/0 0/0 0/0 00 01 1/0 1/0 0/1 11 1/1 10 0/0
A hálózat működése Állapottáblázat Az állapot gráfból könnyen felírható 1/0 0/0 0/0 0/1 00 01 1/0 1/0 11 1/1 10 0/0 Q n 2 Q n 1 X Q n+1 2 Q n+1 1 Y 0 0 0 0 0 0 0 0 1 0 1 0 0 1 0 0 1 0 0 1 1 1 0 0 1 0 0 1 0 0 1 0 1 1 1 0 1 1 0 1 1 1 1 1 1 0 0 1
A hálózat működése Állapotegyenletek Egy sorrendi hálózat elvi működése két logikai függvénnyel írható le Állapotegyenlet (szekunder változók függvénye) Kimeneti függvény (függő változók függvénye) Q n+1 = F Q (X n,q n ) Y n = F Y (X n,q n ) Annyi állapotegyenlet ahány szekunder változó (ahány tároló elem) Annyi kimeneti egyenlet, ahány kimenet A hálózat tényleges felépítésére nem ad információt JK, T vagy D tárolóval, NAND, NOR? Q n 2 Q n 1 X Q n+1 2 Q n+1 1 Y 0 0 0 0 0 0 0 0 1 0 1 0 0 1 0 0 1 0 0 1 1 1 0 0 1 0 0 1 0 0 1 0 1 1 1 0 1 1 0 1 1 1 1 1 1 0 0 1 X Q 2n Q 1 n Q 2 n+1 X Q 2n Q 1 n Q 1 n+1 0 0 0 1 0 1 1 0 1 0 1 1 1 0 0 1
A hálózat működése VHDL VHDL (VHSIC Hardware Description Language) VHSIC : very-high-speed integrated circuits Hardver leíró nyelv Logikai áramkörök egyszerű szöveges leírására fejlesztették ki (USA 1987) A logikai áramkörökre jellemző párhuzamosság kezelésére, leírására Konkurens Szekvenciális utasítások Logikai hálózatok Modellezésére Szimulációjára (testbench) Szintetizálására (hardver megvalósítás) IEEE szabvány IEEE Std 1076-1987 IEEE Std 1076-1993 A programozási nyelvekhez hasonló felépítés Automatizálható feldolgozás (text) Integrált áramkörök gyártásánál Programozható logikai áramkörök (CPLD, FPGA) fejlsztéséhez
A hálózat működése VHDL Szinkron sorrendi hálózat működése Be- kimenetek definíciója (portok) VHDL Használt könyvtárak (hasonló: #include) Belső jelek, konstansok stb.. definíciója, inicializálása in0 in1 inbus clk logic out0 out1 outbu s Működést leíró utasítások
A hálózat működése VHDL signal a : STD_LOGIC; signal b : STD_LOGIC; signal c : STD_LOGIC; signal d : STD_LOGIC; begin a <= 0 ; b <= 1 ; c <= a and b; d <= c or b when a = 1 else a nor b when a = 0 ; end Behavioral a b c d Konkurens utasítások Az utasítások egyszerre hajtódnak végre, a leírás sorrendjétől függetlenül Általában kombinációs hálózatot ír le
A hálózat működése VHDL Értékadás signal d : STD_LOGIC; signal q : STD_LOGIC; signal qn : STD_LOGIC; signal reset : STD_LOGIC; signal clk : STD_LOGIC; begin qn <= not q; process begin if (reset = 1 ) then q <= 0 ; elsif (clk`event and clk = 1 ) then q <= d; end if; end process; end Behavioral; Szekvenciális utasítások A leírás sorrendjében hajtódnak végre Szekvenciális hálózatot lehet leírni
Példa T tárolók és ÉS VAGY kombinációs hálózat segítségével tervezze meg és rajzolja fel egy 3 bites szinkron számláló MEALY - MODELL szerinti logikai kapcsolási rajzát, amely a következő sorrendben számlál: 0, 1, 2, 3, 5. Ezután ismétlődik. A belső állapotokat Q0, Q1, Q2, a tároló bemeneteket pedig T0, T1, T2 szimbólumokkal jelölje.
Állapottábla i n n+1 T Tárolók Q 2 Q 1 Q 0 Q 2 Q 1 Q 0 T 2 T 1 T 0 0 1 2 3 4 5 6 7
Állapottábla i n n+1 T Tárolók Q 2 Q 1 Q 0 Q 2 Q 1 Q 0 T 2 T 1 T 0 0 0 0 0 1 0 0 1 2 0 1 0 3 0 1 1 4 1 0 0 5 1 0 1 6 1 1 0 7 1 1 1 0,1,2,3,5
Állapottábla i n n+1 T Tárolók Q 2 Q 1 Q 0 Q 2 Q 1 Q 0 T 2 T 1 T 0 0 0 0 0 1 0 0 1 2 0 1 0 3 0 1 1 0,1,2,3,5 4 1 0 0 x x x 5 1 0 1 6 1 1 0 x x x 7 1 1 1 x x x
Állapottábla i n n+1 T Tárolók Q 2 Q 1 Q 0 Q 2 Q 1 Q 0 T 2 T 1 T 0 0 0 0 0 0 0 1 1 0 0 1 0 1 0 2 0 1 0 0 1 1 3 0 1 1 1 0 1 0,1,2,3,5 4 1 0 0 x x x 5 1 0 1 0 0 0 6 1 1 0 x x x 7 1 1 1 x x x
Állapottábla i n n+1 T Tárolók Q 2 Q 1 Q 0 Q 2 Q 1 Q 0 T 2 T 1 T 0 0 0 0 0 0 0 1 1 0 0 1 0 1 0 2 0 1 0 0 1 1 3 0 1 1 1 0 1 0,1,2,3,5 4 1 0 0 x x x x x x 5 1 0 1 0 0 0 6 1 1 0 x x x x x x 7 1 1 1 x x x x x x
Állapottábla i n n+1 T Tárolók Q 2 Q 1 Q 0 Q 2 Q 1 Q 0 T 2 T 1 T 0 0 0 0 0 0 0 1 0 1 0 0 1 0 1 0 0 2 0 1 0 0 1 1 0 3 0 1 1 1 0 1 1 0,1,2,3,5 4 1 0 0 x x x x x x 5 1 0 1 0 0 0 1 6 1 1 0 x x x x x x 7 1 1 1 x x x x x x
Állapottábla i n n+1 T Tárolók Q 2 Q 1 Q 0 Q 2 Q 1 Q 0 T 2 T 1 T 0 0 0 0 0 0 0 1 0 0 1 1 0 0 1 0 1 0 0 1 1 2 0 1 0 0 1 1 0 0 1 3 0 1 1 1 0 1 1 1 0 0,1,2,3,5 4 1 0 0 x x x x x x 5 1 0 1 0 0 0 1 0 1 6 1 1 0 x x x x x x 7 1 1 1 x x x x x x
Állapottábla i n n+1 T Tárolók Q 2 Q 1 Q 0 Q 2 Q 1 Q 0 T 2 T 1 T 0 0 0 0 0 0 0 1 0 0 1 1 0 0 1 0 1 0 0 1 1 2 0 1 0 0 1 1 0 0 1 3 0 1 1 1 0 1 1 1 0 0,1,2,3,5 4 1 0 0 x x x x x x 5 1 0 1 0 0 0 1 0 1 6 1 1 0 x x x x x x 7 1 1 1 x x x x x x
Állapottábla i n n+1 T Tárolók Q 2 Q 1 Q 0 Q 2 Q 1 Q 0 T 2 T 1 T 0 0 0 0 0 0 0 1 0 0 1 1 0 0 1 0 1 0 0 1 1 2 0 1 0 0 1 1 0 0 1 3 0 1 1 1 0 1 1 1 0 0,1,2,3,5 4 1 0 0 x x x x x x 5 1 0 1 0 0 0 1 0 1 6 1 1 0 x x x x x x 7 1 1 1 x x x x x x
Állapottábla i n n+1 T Tárolók Q 2 Q 1 Q 0 Q 2 Q 1 Q 0 T 2 T 1 T 0 0 0 0 0 0 0 1 0 0 1 1 0 0 1 0 1 0 0 1 1 2 0 1 0 0 1 1 0 0 1 3 0 1 1 1 0 1 1 1 0 0,1,2,3,5 4 1 0 0 x x x x x x 5 1 0 1 0 0 0 1 0 1 6 1 1 0 x x x x x x 7 1 1 1 x x x x x x
T0 Q1 1 1 1 Q2 x 1 x x Q0
T0 Q1 1 1 1 Q2 x 1 x x Q0 T 0 = Q 0 + Q 1
Állapottábla i n n+1 T Tárolók Q 2 Q 1 Q 0 Q 2 Q 1 Q 0 T 2 T 1 T 0 0 0 0 0 0 0 1 0 0 1 1 0 0 1 0 1 0 0 1 1 2 0 1 0 0 1 1 0 0 1 3 0 1 1 1 0 1 1 1 0 0,1,2,3,5 4 1 0 0 x x x x x x 5 1 0 1 0 0 0 1 0 1 6 1 1 0 x x x x x x 7 1 1 1 x x x x x x
T1 Q1 1 1 Q2 x x x Q0
T1 Q1 1 1 Q2 x x x Q0 T 1 = Q 2 Q 0
Állapottábla i n n+1 T Tárolók Q 2 Q 1 Q 0 Q 2 Q 1 Q 0 T 0 T 1 T 0 0 0 0 0 0 0 1 0 0 1 1 0 0 1 0 1 0 0 1 1 2 0 1 0 0 1 1 0 0 1 3 0 1 1 1 0 1 1 1 0 0,1,2,3,5 4 1 0 0 x x x x x x 5 1 0 1 0 0 0 1 0 1 6 1 1 0 x x x x x x 7 1 1 1 x x x x x x
T2 Q1 Q2 x 1 x x 1 Q0
T2 Q1 Q2 x 1 x x 1 Q0 T 2 = Q 2 + Q 1 Q 0