digitális technika ii. rész: sorrendi hálózatok

103
Digitális technika II. Rész: Sorrendi hálózatok Dr. Turóczi Antal [email protected]

Upload: scot

Post on 21-Jan-2016

55 views

Category:

Documents


2 download

DESCRIPTION

Digitális technika II. Rész: Sorrendi hálózatok. Dr. Turóczi Antal [email protected]. Sorrendi hálózatok. Bevezető A hálózatban visszacsatolás van A kimenet nem csak a bemenetektől függ, hanem a VAGY kapu kimenetén előzőleg észlelt logikai értéktől is - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: Digitális technika II. Rész:  Sorrendi hálózatok

Digitális technikaII. Rész:

Sorrendi hálózatok

Dr. Turóczi [email protected]

Page 2: Digitális technika II. Rész:  Sorrendi hálózatok

Sorrendi hálózatok• Bevezető

– A hálózatban visszacsatolás van• A kimenet nem csak a bemenetektől függ, hanem a VAGY kapu kimenetén előzőleg észlelt logikai értéktől is

– A hálózat egyenletének felírásához szükség van egy közbenső (belső) változóra is• A Q’-vel jelölve a belső változó aktuális, és Q-val az előző értékét logikai függvénykapcsolat írható fel a közbenső

változóra és a kimenetre is• Tegyük fel, hogy kezdetben

A B Q Y 0 0 0 0

2

A

B QY

00

0

0

0

10

0

A

B

YQ

Page 3: Digitális technika II. Rész:  Sorrendi hálózatok

Sorrendi hálózatok• Bevezető

– A hálózatban visszacsatolás van• A kimenet nem csak a bemenetektől függ, hanem a VAGY kapu kimenetén előzőleg észlelt logikai értéktől is

– A hálózat egyenletének felírásához szükség van egy közbenső (belső) változóra is• A Q’-vel jelölve a belső változó aktuális, és Q-val az előző értékét logikai függvénykapcsolat írható fel a közbenső

változóra és a kimenetre is• Tegyük fel, hogy kezdetben

A B Q Y 0 0 0 0 0 1 0 1

3

A

B QY

10

0

0

0

11

1

A

B

YQ

Page 4: Digitális technika II. Rész:  Sorrendi hálózatok

Sorrendi hálózatok• Bevezető

– A hálózatban visszacsatolás van• A kimenet nem csak a bemenetektől függ, hanem a VAGY kapu kimenetén előzőleg észlelt logikai értéktől is

– A hálózat egyenletének felírásához szükség van egy közbenső (belső) változóra is• A Q’-vel jelölve a belső változó aktuális, és Q-val az előző értékét logikai függvénykapcsolat írható fel a közbenső

változóra és a kimenetre is• Tegyük fel, hogy kezdetben

A B Q Y 0 0 0 0 0 1 0 1 1 1 1 0

4

A

B QY

10

1

0

0

11

11

1

1 00

A

B

YQ

Page 5: Digitális technika II. Rész:  Sorrendi hálózatok

Sorrendi hálózatok• Bevezető

– A hálózatban visszacsatolás van• A kimenet nem csak a bemenetektől függ, hanem a VAGY kapu kimenetén előzőleg észlelt logikai értéktől is

– A hálózat egyenletének felírásához szükség van egy közbenső (belső) változóra is• A Q’-vel jelölve a belső változó aktuális, és Q-val az előző értékét logikai függvénykapcsolat írható fel a közbenső

változóra és a kimenetre is• Tegyük fel, hogy kezdetben

A B Q Y 0 0 0 0 0 1 0 1 1 1 1 0 0 1 1 0

• Azonos bemenő jel, mégis különböző kimeneti érték• A kimenet a belső állapotváltozótól is függ

5

A

B QY

11

0

1

1

01

0

A

B

YQ

Page 6: Digitális technika II. Rész:  Sorrendi hálózatok

Sorrendi hálózatok• Bevezető

– Az előző példában a bemeneti (primer) változókon kívül szükség volt köztes változóra • Belső változó• Szekunder változó

– Két egyenlet szükséges a működés leírásához• Belső állapot függvény

Q’ = FQ(A,B,Q)

• Kimeneti függvényY = FY(A,B,Q)

– A hálózat működése a bemeneti logikai értékek időbeli sorozatától is függ• Sorrendi hálózat• Szekvenciális hálózat

– A hálózat működését befolyásolja a belső változó kezdeti értéke is

6

Page 7: Digitális technika II. Rész:  Sorrendi hálózatok

Logikai hálózatok• Logikai hálózatnak nevezzük azokat a rendszereket

– melyeknek bemeneti illetve kimeneti jelei logikai jelek, – a kimeneti jeleket a bemeneti jelek függvényében többé-kevésbé bonyolult logikai

műveletsorozat eredményeként állítják elő.

• A logikai hálózatok két nagy csoportja– Kombinációs hálózatok

• Kombinációs hálózatoknak nevezzük azokat a logikai hálózatokat, melyeknek kimeneti jelei csak a bemeneti jelek pillanatnyi értékétől függnek

• „Emlékezet” nélküli hálózat

– Sorrendi hálózatok• Sorrendi (szekvenciális) hálózatoknak nevezzük azokat a logikai hálózatokat, melyek kimeneti jelei nemcsak a

pillanatnyi bemeneti jelkombinációtól függnek, hanem attól is, hogy korábban milyen bemeneti jelkombinációk voltak

• „Emlékezettel” (memóriával) rendelkező hálózat• Ugyanazon bemeneti kombinációhoz más-más kimeneti kombináció tartozhat, a szekunder változók aktuális

értékétől függően.• A szekunder változók értékét a korábbi bemeneti kombinációk és azok sorrendje is befolyásolja• Előző állapotuktól függően különböző módon reagálnak a bemenetükre

– Véges állapotú automaták (Finite State Machines)

7

Page 8: Digitális technika II. Rész:  Sorrendi hálózatok

Sorrendi hálózatok• Információ tárolás

– A sorrendi hálózatnak tehát emlékeznie kell ezekre a bemeneti jelkombinációkra• Általában elegendő korlátozott mennyiségű korábbi jelkombinációt megjegyeznie• Az emlékezéshez a sorrendi hálózatnak külön „memóriával”, tárolóegységgel kell rendelkeznie

– A sorrendi hálózat leglényegesebb és legbonyolultabb része a tárolóegység.• A tárolóegység tároló elemekből áll• Egy tároló elem 1 bit információ tárolását végzi

– Sorrendi hálózat memória elemekkel (tárolókkal) kiegészített kombinációs hálózatból építhető fel• A tároló elemek tartalma (a szekunder változók) a hálózat előéletéről őriznek információt• A bemenetek és a hálózat előélete együttesen, és egyértelműen meghatározzák a kimeneti jelet (jeleket)

8

Kombinációs hálózat

Memória

Bemenet Kimenet

Page 9: Digitális technika II. Rész:  Sorrendi hálózatok

Sorrendi hálózatok• Információ tárolás

– A kombinációs hálózatnál tapasztalt be- és kimenetek közötti késleltetés a tárolási képesség alapja

• A tranziens lezajlásáig a kapuk kimenetén az előző bemeneti kombinációk hatására kialakult logikai szint van

9

Ideális Kombinációs

hálózat

(késleltetés nélküli)

A Y1

r

B

NYm

Q’1

Q’2

Q’r

Q1

Q2

Qr

Szekunder változók

Bemeneti (primer) változók Kimenetek

Page 10: Digitális technika II. Rész:  Sorrendi hálózatok

Sorrendi hálózatok• Bevezető

– A hálózatban visszacsatolás van• A kimenet nem csak a bemenetektől függ, hanem a VAGY kapu kimenetén előzőleg észlelt logikai értéktől is

– A hálózat egyenletének felírásához szükség van egy közbenső (belső) változóra is• A Q’-vel jelölve a belső változó aktuális, és Q-val az előző értékét logikai függvénykapcsolat írható fel a közbenső

változóra és a kimenetre is• Tegyük fel, hogy kezdetben

A B Q Y 0 0 0 0 0 1 0 1 1 1 1 0

10

A

B QY

10

1

0

0

11

11

1

1 00

A

B

YQ

tpd

Page 11: Digitális technika II. Rész:  Sorrendi hálózatok

Sorrendi hálózatok• Sorrendi hálózat modelljei

– Mealy modell

– A kimenetek a bemenetek és az előző állapot (szekunder változók) függvénye

Q’ = FQ(X,Q)

Y = FY(X,Q)

11

Kombinációs hálózat

Memória

Bemenetek Kimenetek

Szekunder változók

X Y

Q Q’

Page 12: Digitális technika II. Rész:  Sorrendi hálózatok

Sorrendi hálózatok• Sorrendi hálózat modelljei

– Moore modell

– A kimenetek csak az előző állapot (szekunder változók) függvényei

Q’* = FQ*(X,Q*)

Y = FY*(Q*)

12

Kombinációs hálózat

Memória

Bemenetek

Kimenetek

Szekunder változók

X

Y

Q*Q’*

Kombinációs hálózat

Page 13: Digitális technika II. Rész:  Sorrendi hálózatok

Sorrendi hálózatok• Sorrendi hálózat modelljei

– Bebizonyítható• Minden Mealy modellnek előállítható egy Moore ekvivalense• Minden Moore modellnek előállítható egy Mealy ekvivalense

– Bármely modellt is használjuk• Egy sorrendi hálózat működése két logikai függvénnyel írható le

– Szekunder változók függvénye– Kimeneti függvény (függő változók függvénye)

• A két függvény együttesen határozza meg a sorrendi hálózat működését– A belső (szekunder) változók tárolják a hálózat előző vezérlési állapotait– A bemenő (primer) és belső (szekunder) változók együtt egyértelműen meghatározzák a kimeneteket

– A hálózat modellje, függvényei nem írják le a tranzienseket• A függvényekben az idő nem szerepel változóként• Az állapotváltások között azonban rövid átmeneti jelenségek játszódnak le

13

n-edik állandósult állapot tranziens állapot (n+1)-edik állandósult állapot

idő

Page 14: Digitális technika II. Rész:  Sorrendi hálózatok

Sorrendi hálózatok• Sorrendi hálózat működésének leírása

– A működés folyamata• A hálózat belső állapotát a szekunder változók értéke határozza meg

– A szekunder változók száma megadja a lehetséges állapotok maximális számát» Nem feltétlenül jön létre minden lehetséges belső állapot

– A példában 1 változó (Q) 21 = 2 lehetséges állapot

• Bekapcsoláskor a sorrendi hálózat a szekunder változók kezdeti értékeinek megfelelő állapotban van

• A bemenő kombinációk változásának hatására a rendszer újabb állapotba kerülhet• További bemeneti változások hatására újabb, vagy akár korábbi állapotokba ugorhat

– Azonos bemenő jelre más-más szekunder változó és kimeneti kombináció tartozhat

• A sorrendi hálózat aktuális állapota megadja a rendszer előéletét– Mi történt vele az előzőekben

– Egy n hosszúságú bemeneti sorozat (szekvencia hatására)• n hosszúságú belső állapot (szekunder változó) szekvencia jön létre• n hosszúságú kimeneti szekvencia generálódik• Ha n véges: véges sorrendi automatáról beszélünk

14

Page 15: Digitális technika II. Rész:  Sorrendi hálózatok

Sorrendi hálózatok• Sorrendi hálózat működésének leírása

– Állapot gráf• Grafikus szemléltetés• A sorrendi hálózat belső állapotait a gráf csomópontjai szemléltetik• A csomópontokat összekötő irányított élek (nyilak) az egyik állapotból a másikba történő

átmenetet reprezentálják– Ha nem teljesül semmilyen továbblépési feltétel, marad az előző állapotban– Több feltétel is kielégítheti a továbblépés feltételét– Egy állapotból visszafelé, egy előző állapotba is lehetséges állapotátmenet– Az éleken az átmenetet előidéző bemeneti x kombináció szerepel– Emellett az y kimeneti értékeket is gyakran fel szokás tüntetni

15

qi qj

Egyik továbblépési feltétel sem teljesül

Xi2/yi2

qk

qm

Xj1/yj1 Xm1/ym1

Teljesül valamely továbblépési feltétel

Xi1/yi1

Xj2/yj2

Xm2/ym2

Xk2/yk2

Xk1/yk1

Page 16: Digitális technika II. Rész:  Sorrendi hálózatok

Sorrendi hálózatok• Sorrendi hálózat működésének leírása

– Állapot gráf• Grafikus szemléltetés• A sorrendi hálózat belső állapotait a gráf csomópontjai szemléltetik• A csomópontokat összekötő irányított élek (nyilak) az egyik állapotból a másikba történő

átmenetet reprezentálják– Az előző példa állapot gráfja– Két belső állapot, két csomópont

16

q1 q2

A

B QY

X0/y0

X2/y0

X1/y1

X3/y1

X0/y0

X1/y0

X3/y0

X2/y0

0 100/0

10/0

01/1

11/1

00/0

01/0

11/010/0

Page 17: Digitális technika II. Rész:  Sorrendi hálózatok

Sorrendi hálózatok• Sorrendi hálózat működésének leírása

– Állapottábla• Táblázatos formában adja meg, hogy adott bemeneti kombinációk hatására mely állapotból

mely állapotba ugrik a rendszer• A kimenet alakulását is ebben a táblázatban írhatjuk fel• A kombinációs hálózatoknál használt igazságtáblázathoz hasonló

17

0 100/0

10/0

01/1

11/1

00/0

01/0

11/010/0

Q A B Q’ Y0 0 0 0 00 0 1 0 10 1 0 1 00 1 1 1 11 0 0 0 01 0 1 1 01 1 0 1 01 1 1 1 0

Page 18: Digitális technika II. Rész:  Sorrendi hálózatok

Sorrendi hálózatok• Sorrendi hálózat működésének leírása

– Példa (Lovassy, Pődör: Digitális Technika II. előadás)– Italautomata

• 150 Ft egy üdítő• A gép 50 és 100 Ft-os érmét fogad el, és visszaad• Belső állapotok száma 3

18

0

2

1

50Ft be

50Ft be

50Ft be üdítő ki

100Ft be üdítő, 50Ft ki100Ft be

üdítő ki

100Ft be

START állapot

50 Ft bedobva

100 Ft bedobva

Page 19: Digitális technika II. Rész:  Sorrendi hálózatok

Sorrendi hálózatok• Sorrendi hálózat működésének leírása

– Példa (Lovassy, Pődör: Digitális Technika II. előadás)– Italautomata állapot gráf, állapottábla

• x1: 100Ft; x0: 50 Ft

• y1: üdítő ki; y0: 50 Ft ki

• Belső állapotok 00,01,10

19

0

2

1

01,00

01/00

00/00

10/11

10,10

10,00

01,10

00,0000,00

Előző állapot

Bemenet (x1x0) 100/50Ft

00 01 10 11

0 (0 Ft) 0 2 1 x1 (100 Ft) 1 0 0 x2 (50 Ft) 2 1 0 x

Page 20: Digitális technika II. Rész:  Sorrendi hálózatok

Sorrendi hálózatok• Sorrendi hálózat működésének leírása

– Vezérlési táblázat• Az állapottábla célszerűen átalakított formája

– Az oszlopok a bemenő jelek– A sorok a visszacsatolt jelek (a késleltetés után előállt)– A cellákba a bemenő jel hatására keletkező Q’ jelet írjuk– Stabil állapotokat bekarikázzuk

» Ahol Q = Q’ nincs állapotváltozás a visszacsatoló hurokban» Ahol Q ≠ Q’ instabil állapot, állapotváltozás zajlik a

visszacsatoló hurokban (a jel még nem „ért át” a késleltetőn)– Pl.

» kiindulás: Q = A = B = 0» bemeneti szekvencia: 01, 11, 01, 00

20

Q A B Q’ Y0 0 0 0 00 0 1 0 10 1 0 1 00 1 1 1 11 0 0 0 01 0 1 1 01 1 0 1 01 1 1 1 0

A

B QY

QAB

1111

1

0 00

0 1 23

4 5 67

i

0

1

2

3

4

5

6

7

Vezérlési táblázat Átmeneti táblázat

Page 21: Digitális technika II. Rész:  Sorrendi hálózatok

Sorrendi hálózatok• Sorrendi hálózat működésének leírása

– Karnaugh táblás leírás• Példa két belső (szekunder) változóra

– Kiindulás: Q2Q1 = AB = 00 stabil állapot

– AB bemenet változzon AB = 01-re» Mindkét belső változó 0-ról 1-re vált» Mi történik, ha eltérő késleltetések vannak

– Általában nem tudjuk előre melyik hurok a gyorsabb» Nem egyértelmű működés

21

00 11

11

11 11

11

11

00

00

00

0000

01

01

10

00

ABQ2Q1 • Versenyfutás jelenség

– Ha két szekunder változónak egyszerre kell változnia

– Kritikus versenyfutásról beszélünk, ha az eltérő késleltetések miatt a hálózat eltérő stabil állapotokba kerülhet (példában)

– Azaz ha a vezérlési táblázat versenyfutást tartalmazó oszlopában több stabil állapot is van

– Nem kritikus, ha egy oszlopban csak egy stabil állapot van (utolsó oszlop)

Page 22: Digitális technika II. Rész:  Sorrendi hálózatok

Sorrendi hálózatok• Sorrendi hálózat működésének leírása

– Karnaugh táblás leírás• Példa két belső (szekunder) változóra

– Kiindulás: Q2Q1 = 0; AB = 10 stabil állapot

– AB bemenet változzon AB = 11-re» Csak az Q1-hez tartozó hurok kell változzon» Nincs versenyfutás de instabil állapot» Újabb és újabb instabil állapotokba lépünk

22

00 11

11

11 11

11

11

00

00

00

0000

01

01

10

00

ABQ2Q1 • Oszcilláció jelenség

– A hálózat instabil állapotokat vesz fel egymás után– Ha nincs stabil állapot a vezérlési tábla egy

oszlopában, az adott bemeneti kombináció esetén a rendszer biztosan oszcillálni fog

Page 23: Digitális technika II. Rész:  Sorrendi hálózatok

Sorrendi hálózatok• Aszinkron és szinkron sorrendi hálózatok

– Az ideális esettől eltérően• A valóságban a hálózat különböző pontjain eltérő, és akár időben változó késleltetést tapasztalhatunk

(pl. hőmérséklet változás miatt)• Ezek a tulajdonságok nehezen kézben tarthatók

23

– Aszinkron sorrendi hálózatok• Az eddigi példákban a hálózat jeleinek terjedését külső

tényezők nem befolyásolták• A kimenetek és a szekunder változók kizárólag a

bemenetek és a belső változók pillanatnyi értékétől függenek

• Az állapotváltozást a bemeneti kombinációk változása okozza, a változások bármely időpontban bekövetkezhetnek

• A zavaró késleltetések miatt instabil állapotok, egyszeri vagy többszörös állapotátmenetek, oszcilláció jöhet létre

• A tervezésnél ezekre különös tekintettel kell lenni• Az ilyen sorrendi hálózatokat aszinkron hálózatoknak

nevezzük

Page 24: Digitális technika II. Rész:  Sorrendi hálózatok

Sorrendi hálózatok• Aszinkron és szinkron sorrendi hálózatok

– Szinkron sorrendi hálózatok• A zavaró késleltetések szempontjából jobban kézben tartható megoldás jelent a szinkronizáló jelek

használata, vagyis szinkron sorrendi hálózat építése• A szinkron sorrendi hálózatok működése ütemezett, az ütemező (szinkronizáló) jel az órajel

• Állapotváltozás csak az órajel által meghatározott ütemekben jöhet létre• A bemenő és a visszacsatolt jelek hatása nem azonnal érvényesül, csak a következő ütemben, a

következő órajel beérkezésekor– Az ütemezési időt úgy kell megválasztani, hogy a következő órajel előtt minden zavaró tranziens véget érjen

• Az órajel szünetében a primer és szekunder változók csak „előkészülnek” a következő ütemre– A jelek már statikusak, nem változnak, így a tranziensek okozta problémák kiküszöbölhetők

24

Kombinációs hálózat

Tárolóegység

Bemenet Kimenet

Órajel

Page 25: Digitális technika II. Rész:  Sorrendi hálózatok

Sorrendi hálózatok• Aszinkron és szinkron sorrendi hálózatok

– Szinkron sorrendi hálózatok• 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

• A szinkronizáció lehet– Szintvezérelt (statikus)

» „0” vagy „1” logikai szintre– Élvezérelt (dinamikus)

» Felfutó élre, 0 → 1 átmenetre » Lefutó élre, 1 → 0 átmenetre

25

„1”

„0”

1 Ciklusidőidő

Felfutó él Lefutó él

Page 26: Digitális technika II. Rész:  Sorrendi hálózatok

Sorrendi hálózatok• Szinkron sorrendi hálózatok

– 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

26

Kombinációs hálózat

Tárolóegység

Bemenet Kimenet

Órajel

Page 27: Digitális technika II. Rész:  Sorrendi hálózatok

Sorrendi hálózatok• Szinkron sorrendi hálózatok

– A kimeneti jel előállítása itt is két féle modellel adható meg

27

Qn+1Q*n+1

Qn

Q*n

Mealy modell Moore modell

Qn+1 = FQ(Xn,Qn)

Yn = FY(Xn,Qn)

Órajel Órajel

Q*n+1 = FQ(Xn,Q*n)

Yn = FY(Q*n)

Page 28: Digitális technika II. Rész:  Sorrendi hálózatok

Sorrendi hálózatok• Szinkron sorrendi hálózatok

– 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

– Tároló alapelemek, elemi sorrendi hálózatok • 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

– 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

28

.Qn+1

Qn

SR Qn+1 = FQ(S,R,Qn)

Yn = Qn

R S Qn Qn+1 0 0 0 0

Változatlan0 0 1 10 1 0 1

Beírás0 1 1 11 0 0 0

Törlés1 0 1 01 1 0 X

Tiltott1 1 1 X

Page 29: Digitális technika II. Rész:  Sorrendi hálózatok

Sorrendi hálózatok• Tároló elemek

– Készítsünk Set-Reset tárolót• Az S(Set) bemeneten „1”-es a kimenetet „1”-be állítja• Az R(Reset) bemeneten „1”-es a kimenetet „0”-ba állítja

– Állapot gráf

– Állapottábla• Nincs versenyfutás vagy oszcilláció - aszinkron működés is stabil• Vannak érdektelen (Don’t care állapotok)

• Az állapottáblát Karnaugh-táblának tekintve, Qn+1-re elvégezve az összevonásokat az egyszerűsített logikai függvény:

29

0 1

01/1X0/0

10/0

0X/1

Qn

RS

1

10

0 0

X X

1

R S Qn Qn+1 0 0 0 0

Változatlan0 0 1 10 1 0 1

Beírás0 1 1 11 0 0 0

Törlés1 0 1 01 1 0 X

Tiltott1 1 1 X

Qn+1

Page 30: Digitális technika II. Rész:  Sorrendi hálózatok

Sorrendi hálózatok• Tároló elemek

– RS tároló (Filp-flop) megvalósítása• A Qn+1-et és Qn+1 -et megvalósító kombinációs hálózat logikai függvénye• NAND kapus megvalósítás

– Külön jelképi jelölés

– Az RS tároló ebben a formájában még aszinkron működésű

30

_

R S Qn+1 0 0 Qn 0 1 1 1 0 0 1 1 X Tiltott

Page 31: Digitális technika II. Rész:  Sorrendi hálózatok

Szinkron sorrendi hálózatok• Tároló elemek

– Szinkron RS tároló (Filp-flop) megvalósítása• Az R és S bemenetek hatása a szinkronjel (órajel) megérkezésekor érvényesüljön

– 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

31

(Órajel) C

Page 32: Digitális technika II. Rész:  Sorrendi hálózatok

Szinkron sorrendi hálózatok• Tároló elemek

– Szinkron RS tároló (Filp-flop) 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”

32

C

tpd

tpd

AB

Y

A

B

Y

Page 33: Digitális technika II. Rész:  Sorrendi hálózatok

Szinkron sorrendi hálózatok• Tároló elemek

– Szinkron RS tároló (Filp-flop) megvalósítása• Kétfokozatú tároló (Master-Slave flip-flop)• 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ó

33

Beíró kapuk Átíró kapukMaster Slave

C

Page 34: Digitális technika II. Rész:  Sorrendi hálózatok

Szinkron sorrendi hálózatok• Tároló elemek

– Szinkron RS tároló (Filp-flop) 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ó

34

Beíró kapuk nyitnakÁtíró kapuk zárnak

Átíró kapuk nyitnakBeíró kapuk zárnak

Beírás Master-baÁtírás Slave-beMaster kimenete már nem változhat

„1”

„0”

Page 35: Digitális technika II. Rész:  Sorrendi hálózatok

Szinkron sorrendi hálózatok• 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ó

35

Page 36: Digitális technika II. Rész:  Sorrendi hálózatok

Szinkron sorrendi hálózatok• Tároló elemek

– RS tároló• Működést leíró táblázat

– Az aktuális órajel előtti kimenet Qn

– Az aktuális órajel utáni kimenet Qn+1

• Állapottábla– Karnaug-táblaként is értelmezhető– Felírható a kimenet logikai függvénye

» A következő órajel megérkezésekor

Állapot gráf

36

R S Qn+1 0 0 Qn 0 1 1 1 0 0 1 1 X Tiltott

R S Qn Qn+1 0 0 0 0

Változatlan0 0 1 10 1 0 1

Beírás0 1 1 11 0 0 0

Törlés1 0 1 01 1 0 X

Tiltott1 1 1 X

0 1

10/1X0/0

01/0

0X/1

Qn

RS

1

10

0 0

X X

1

Page 37: Digitális technika II. Rész:  Sorrendi hálózatok

Szinkron sorrendi hálózatok• Tároló elemek

– 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 Qn

– Az aktuális órajel utáni kimenet Qn+1

• Állapottábla– Karnaug-táblaként is értelmezhető– Felírható a kimenet logikai függvénye

Állapot gráf

37

K J Qn+1 0 0 Qn 0 1 1 1 0 0 1 1 Qn

K J Qn Qn+1 0 0 0 0

Változatlan0 0 1 10 1 0 1

Beírás0 1 1 11 0 0 0

Törlés1 0 1 01 1 0 1

Billentés1 1 1 0

0 1

01/1

00/0

10/0

00/1

Qn

KJ

1

10

0 0

1 0

1

_

11/1

11/0

10/0 01/1

Page 38: Digitális technika II. Rész:  Sorrendi hálózatok

Szinkron sorrendi hálózatok• Tároló elemek

– JK tároló• 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

38

K J Qn+1 0 0 Qn 0 1 1 1 0 0 1 1 Qn

C

J

K

Q

Q_

_

Page 39: Digitális technika II. Rész:  Sorrendi hálózatok

Szinkron sorrendi hálózatok• Tároló elemek

– T tároló• Csak egy bemenet• Működést leíró táblázat

– Az aktuális órajel előtti kimenet Qn

– Az aktuális órajel utáni kimenet Qn+1

• Állapottábla– Karnaug-táblaként is értelmezhető– Felírható a kimenet logikai függvénye

Állapot gráf

39

T Qn+1 0 Qn 1 Qn

T Qn Qn+1 0 0 0

Változatlan0 1 11 0 1

Billentés1 1 0

0 1

1/1

0/0

1/0

0/1

Qn

T

0

10

0 0

1 0

1

_

Page 40: Digitális technika II. Rész:  Sorrendi hálózatok

Szinkron sorrendi hálózatok• Tároló elemek

– 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 Qn

– Az aktuális órajel utáni kimenet Qn+1

• Állapottábla– Karnaug-táblaként is értelmezhető– Felírható a kimenet logikai függvénye

Állapot gráf

40

D Qn+1 0 01 1

D Qn Qn+1 0 0 0

Törlés0 1 01 0 1

Beírás1 1 1

0 1

1/1

0/0

Qn

T

1

00

0 0

1 0

1

0/0 1/1

Page 41: Digitális technika II. Rész:  Sorrendi hálózatok

Szinkron sorrendi hálózatok• Tároló elemek

– 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”

• Clear (Reset) bemenet - A tároló törlése, „0”-ába állítása

• Preset (Set) bemenet - A tároló beállítása, „1”-be állítása

41

C

J

K

Q

Q_

Preset

Clear

Page 42: Digitális technika II. Rész:  Sorrendi hálózatok

Szinkron sorrendi hálózatok• Tároló elemek

– T és D tároló megvalósítása• JK tárolóval

42

T Qn+1 0 Qn 1 Qn

D Qn+1 0 01 1

K J Qn+1 0 0 Qn 0 1 1 1 0 0 1 1 Qn

Page 43: Digitális technika II. Rész:  Sorrendi hálózatok

Szinkron sorrendi hálózatok• Szinkron sorrendi hálózat működése

– 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 2n á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ő (Qn+1) állapotot– A tároló elemek az előző órajel hatására létrejött belső (Qn) állapotot tárolják

• Az aszinkron hálózatokhoz hasonlóan többféle leírás mód– Kapcsolási rajz– Állapot gráf– Állapottáblázat

43

Kombinációs hálózat

Tárolóegység

Bemenet Kimenet

Órajel

Page 44: Digitális technika II. Rész:  Sorrendi hálózatok

Szinkron sorrendi hálózatok• Szinkron sorrendi hálózat működése

– Kapcsolási rajz

• 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

44

Q1

Q1

Page 45: Digitális technika II. Rész:  Sorrendi hálózatok

Szinkron sorrendi hálózatok• Szinkron sorrendi hálózat működése

– Állapot grá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

– Q2Q1 = 00, 01, 10, 11

– Egyik sem tiltott– Ha X = 1 állapotváltozás következik be

45

00 010/0 0/0

Q2

Q1

Q2 Q1

10 0/0110/1

1/0

1/1

1/0 1/0

X Y

Page 46: Digitális technika II. Rész:  Sorrendi hálózatok

Szinkron sorrendi hálózatok• Szinkron sorrendi hálózat működése

– Állapottáblázat• Az állapot gráfból könnyen felírható

46

Q2n Q1

n X Q2n+1 Q1

n+1 Y

0 0 0 0 0 00 0 1 0 1 00 1 0 0 1 00 1 1 1 0 01 0 0 1 0 01 0 1 1 1 01 1 0 1 1 11 1 1 0 0 1

00 010/0 0/0

10 0/0110/1

1/0

1/1

1/0 1/0

Page 47: Digitális technika II. Rész:  Sorrendi hálózatok

Szinkron sorrendi hálózatok• Szinkron sorrendi 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)

– 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 … ?

47

Qn+1 = FQ(Xn,Qn)

Yn = FY(Xn,Qn)

Q2n Q1

n X Q2n+1 Q1

n+1 Y

0 0 0 0 0 00 0 1 0 1 00 1 0 0 1 00 1 1 1 0 01 0 0 1 0 01 0 1 1 1 01 1 0 1 1 11 1 1 0 0 1

XQ2

nQ1n

1

00

1 1

1 0

0

Q2n+1 X

Q2nQ1

n

0

10

0 1

1 0

1

Q1n+1

Page 48: Digitális technika II. Rész:  Sorrendi hálózatok

Szinkron sorrendi hálózatok• Szinkron sorrendi hálózat működése

– Gyakorló feladatok– Egyszerű szinkron sorrendi hálózatok tervezése

Page 49: Digitális technika II. Rész:  Sorrendi hálózatok

Szinkron sorrendi hálózatok• Szinkron sorrendi hálózat működése

– 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

Page 50: Digitális technika II. Rész:  Sorrendi hálózatok

Szinkron sorrendi hálózatok• Szinkron sorrendi hálózat működése

– VHDLHasznált könyvtárak

(hasonló: #include)Be- kimenetek

definíciója (portok)

Belső jelek, konstansok stb..

definíciója, inicializálása

Működést leíró utasítások

in0in1

inBus outBus

out0out1

clk

logic

Page 51: Digitális technika II. Rész:  Sorrendi hálózatok

Szinkron sorrendi hálózatok• Szinkron sorrendi hálózat működése

– VHDL• Értékadás

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

• 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

ba c

d

Page 52: Digitális technika II. Rész:  Sorrendi hálózatok

Szinkron sorrendi hálózatok• Szinkron sorrendi 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

Page 53: Digitális technika II. Rész:  Sorrendi hálózatok

Szinkron sorrendi hálózatok• Egyszerű szinkron sorrendi hálózatok

– Regiszterek• Tárolóegységek összekapcsolásával, egyszerű bemeneti kombinációs hálózattal kiegészítve

– Átmeneti tárolás– Léptetés– Vezérlési feladatok– Soros-párhuzamos, párhuzamos-soros átalakítás

53

Page 54: Digitális technika II. Rész:  Sorrendi hálózatok

Szinkron sorrendi hálózatok• Egyszerű szinkron sorrendi hálózatok

– Regiszterek• Átmeneti tárolás

– Azonos órajelű D tárolókból épül fel– Több bites adatok átmeneti tárolására

» Vezérlő információk» Műveletek operandusainak és eredményének tárolása

signal d : STD_LOGIC_VECTOR(3 downto 0);signal q : STD_LOGIC_VECTOR(3 downto 0);signal clk: STD_LOGIC;…processBegin

if (clear = ’1’) thenq <= ”0000”;

elsif (clk`event and clk = ’1’) then   q <= d;end if;

end process;

54

Page 55: Digitális technika II. Rész:  Sorrendi hálózatok

Szinkron sorrendi hálózatok• Egyszerű szinkron sorrendi hálózatok

– Regiszterek• Léptetés

– Azonos órajelű D tárolókból épül fel– A tárolók kimenete egy másik tároló bemenetére csatlakozik

» Az órajel hatására az információ az egyik tárolóból a másikba íródik» Léptetőregiszter, shift-regiszter

– Léptetés jobbra

Process

Begin

if (clear = ’1’) then

q <= ”0000”;

elsif (clk`event and clk = ’1’) then    

q(2 downto 0) <= q(3 downto 1);

q(3) <= qin; end if;

end;

55

Q0Q1Q2Q3

Page 56: Digitális technika II. Rész:  Sorrendi hálózatok

Szinkron sorrendi hálózatok• Egyszerű szinkron sorrendi hálózatok

– Regiszterek• Léptetés

– Azonos órajelű D tárolókból épül fel– A tárolók kimenete egy másik tároló bemenetére csatlakozik

» Az órajel hatására az információ az egyik tárolóból a másikba íródik» Léptetőregiszter, shift-regiszter

– Léptetés balra

Process

Begin

if (clear = ’1’) then

q <= ”0000”;

elsif (clk`event and clk = ’1’) then    

q(3 downto 1) <= q(2 downto 0);

q(0) <= qin; end if;

end;

56

Q3 Q0Q1Q2

Page 57: Digitális technika II. Rész:  Sorrendi hálózatok

Szinkron sorrendi hálózatok• Egyszerű szinkron sorrendi hálózatok

– Regiszterek• Léptetés

– Jobbra, balra léptetés– Párhuzamos be- kimenet– Soros be- kimenet– Alkalmas soros/párhuzamos átalakításra

– SLI: baloldali soros bemenet – SRI: jobboldali soros bemenet – D: párhuzamos bemenetek– Q: párhuzamos kimenetek– CE: órajel engedélyező bemenet– C: órajel– L: beírás engedélyezés– LEFT: balra/jobbra léptetés– R: szinkron törlés

57

Párhuzamos bemenetek

Soros bemenet

Párhuzamos kimenetek

Soros kimenet

Page 58: Digitális technika II. Rész:  Sorrendi hálózatok

Szinkron sorrendi hálózatok• Egyszerű szinkron sorrendi hálózatok

– Regiszterek• Léptetés

– Jobbra, balra léptetés– Párhuzamos be- kimenet– Soros be- kimenet– Alkalmas soros/párhuzamos átalakításra

– SLI: baloldali soros bemenet – SRI: jobboldali soros bemenet – D: párhuzamos bemenetek– Q: párhuzamos kimenetek– CE: órajel engedélyező bemenet– C: órajel– L: beírás engedélyezés– LEFT: balra/jobbra léptetés– R: szinkron törlés

58

Inputs Outputs

R L CE LEFT SLI SRI D3 : D0 C Q0 Q3 Q2 : Q1

1 X X X X X X ↑ 0 0 0

0 1 X X X X D3 : D0 ↑ D0 D3 Dn

0 0 0 X X X X X No Change

No Change

No Change

0 0 1 1 SLI X X ↑ SLI q2 qn-1

0 0 1 0 X SRI X ↑ q1 SRI qn+1

qn-1 or qn+1 = state of referenced output one setup time prior to active clock transition

Page 59: Digitális technika II. Rész:  Sorrendi hálózatok

Szinkron sorrendi hálózatok• Egyszerű szinkron sorrendi hálózatok

– Regiszterek• Speciális számlálók

– Gyűrűs-számláló– A LOAD bemenettel a D3-D0 bemeneteket 0001 alaphelyzetbe állítjuk– Az órajel engedélyezése után minden órajel ciklusban az 1-es továbblép a következő helyi értékre– A visszacsatolás miatt 4 ciklus után újra kezdődik a folyamat – A 2n (16) lehetséges állapotból csak n (4) valósul meg (12 tiltott állapot)

59

Q3Q2Q1Q0

0 0 0 1 0 0 1 0 0 1 0 0 1 0 0 0 0 0 0 1 0 0 1 0 …

0001

0010

0100

1000 CE = 1

Page 60: Digitális technika II. Rész:  Sorrendi hálózatok

Szinkron sorrendi hálózatok• Egyszerű szinkron sorrendi hálózatok

– Regiszterek• Álvéletlen szám generátor léptetőregiszterrel (LFSR (Linear Feedback Shift Register)

– Bitminta generálás– Titkosítás– Hibavédelem

– Ha a regiszterek tartalma 0 ez az állapot marad– Nem nulla kezdőállapot után véges hosszúságú periodikus jelet állít elő a kimeneten– A periódus hossz maximum 2n-1 (n a regiszterek száma)

60

Page 61: Digitális technika II. Rész:  Sorrendi hálózatok

Szinkron sorrendi hálózatok• Egyszerű szinkron sorrendi hálózatok

– Regiszterek• Álvéletlen szám generátor léptetőregiszterrel (LFSR (Linear Feedback Shift Register)

61

Page 62: Digitális technika II. Rész:  Sorrendi hálózatok

Szinkron sorrendi hálózatok• Egyszerű szinkron sorrendi hálózatok

– Regiszterek• Álvéletlen szám generátor léptetőregiszterrel (LFSR (Linear Feedback Shift Register)

62

Page 63: Digitális technika II. Rész:  Sorrendi hálózatok

Szinkron sorrendi hálózatok• Egyszerű szinkron sorrendi hálózatok

– Számlálók• Bináris felfelé számláló

– Pl. 0-tól 7-ig (000b – 111b) egyesével számlál minden órajel ciklusban (3-bites)– A hálózat 23 = 8 állapotot vehet fel, nincs tiltott állapot

– A Q0 bit minden órajelre billen

» T-tároló T = 1 állandó bemenettel– A Q1 bit akkor billen a következő órajelre ha Q0 = 1

» T-tároló T = Q0 állandó bemenettel

– A Q2 bit akkor billen a következő órajelre ha Q1Q0 = 11

» T-tároló T = (Q0 ÉS Q1) állandó bemenettel

63

Q2Q1Q0

0 0 0 (0) 0 0 1 (1) 0 1 0 (2) 0 1 1 (3) 1 0 0 (4) 1 0 1 (5) 1 1 0 (6) 1 1 1 (7)

000

010

100

110

001111

101 011

„1”

Q0

Q1 Q2

Q1

Q0

Q0

T2

T1

T0

Page 64: Digitális technika II. Rész:  Sorrendi hálózatok

Szinkron sorrendi hálózatok• Egyszerű szinkron sorrendi hálózatok

– Számlálók• Bináris felfelé számláló

– Pl. 0-tól 7-ig (000b – 111b) egyesével számlál minden órajel ciklusban (3-bites)– A hálózat 23 = 8 állapotot vehet fel, nincs tiltott állapot– VHDL:

use IEE.STD_LOGIC_ARITH.ALL;

signal q : STD_LOGIC_VECTOR(2 downto 0);

signal clk: STD_LOGIC;

signal clear: STD_LOGIC;

process

Begin

if (clear = ’1’) then

q <= ”000”;

elsif (clk`event and clk = ’1’) then   q <= q+1;end if;

end process;

64

Page 65: Digitális technika II. Rész:  Sorrendi hálózatok

Szinkron sorrendi hálózatok• Egyszerű szinkron sorrendi hálózatok

– Számlálók• Bináris lefelé számláló

– Pl. 7-től 0-ig (111b – 000b) egyesével számlál minden órajel ciklusban (3-bites)– A hálózat 23 = 8 állapotot vehet fel, nincs tiltott állapot

– A Q0 bit minden órajelre billen

» T-tároló T = 1 állandó bemenettel– A Q1 bit akkor billen a következő órajelre ha Q0 = 0

» T-tároló T = Q0 állandó bemenettel

– A Q2 bit akkor billen a következő órajelre ha Q1Q0 = 00

» T-tároló T = (Q0 ÉS Q1) állandó bemenettel

65

Q2Q1Q0

1 1 1 (7) 1 1 0 (6) 1 0 1 (5) 1 0 0 (4) 0 1 1 (3) 0 1 0 (2) 0 0 1 (1) 0 0 0 (0)

000

010

100

110

001111

101 011

„1”

Q0

Q1 Q2

Q1

Q0

Q0

__

_

__

T2

T1

T0

_

Page 66: Digitális technika II. Rész:  Sorrendi hálózatok

Szinkron sorrendi hálózatok• Egyszerű szinkron sorrendi hálózatok

– Számlálók• Bináris lefelé számláló

– Pl. 7-től 0-ig (111b – 000b) egyesével számlál minden órajel ciklusban (3-bites)– A hálózat 23 = 8 állapotot vehet fel, nincs tiltott állapot– VHDL:

use IEE.STD_LOGIC_ARITH.ALL;

signal q : STD_LOGIC_VECTOR(2 downto 0);

signal clk: STD_LOGIC;

signal clear: STD_LOGIC;

process

Begin

if (clear = ’1’) then

q <= ”000”;

elsif (clk`event and clk = ’1’) then   q <= q-1;end if;

end process;

66

Page 67: Digitális technika II. Rész:  Sorrendi hálózatok

Szinkron sorrendi hálózatok• Egyszerű szinkron sorrendi hálózatok

– Számlálók• Bináris fel-le számláló

– Az számlálási irányt megadó X bemenet függvényében» Pl. 7-től 0-ig (111b – 000b) egyesével számlál minden órajel ciklusban (3-bites)» Pl. 0-tól 7-ig (000b – 111b) egyesével számlál minden órajel ciklusban (3-bites)

67

Q2

Q1

Q0

T2

T1

T0

000

010

100

110

001111

101 011

0

0

0

0

0

0

0

0

1

11

1

1 1

1 1

Page 68: Digitális technika II. Rész:  Sorrendi hálózatok

Szinkron sorrendi hálózatok• Egyszerű szinkron sorrendi hálózatok

– Számlálók• Bináris fel-le számláló

– Az számlálási irányt megadó X bemenet függvényében» Pl. 7-től 0-ig (111b – 000b) egyesével számlál minden órajel ciklusban (3-bites)» Pl. 0-tól 7-ig (000b – 111b) egyesével számlál minden órajel ciklusban (3-bites)

68

„1”

Q0Q2

Q1

Q0

Q1

X

Q0

Q1

X

Q0

X

Q0

X

T2

T1

T0

Page 69: Digitális technika II. Rész:  Sorrendi hálózatok

Szinkron sorrendi hálózatok• Egyszerű szinkron sorrendi hálózatok

– Számlálók• Bináris fel-le számláló

– Az számlálási irányt megadó X bemenet függvényében» Pl. 7-től 0-ig (111b – 000b) egyesével számlál minden órajel ciklusban (3-bites)» Pl. 0-tól 7-ig (000b – 111b) egyesével számlál minden órajel ciklusban (3-bites)

– VHDL:

use IEE.STD_LOGIC_ARITH.ALL;

signal q : STD_LOGIC_VECTOR(2 downto 0);

signal x: STD_LOGIC;

signal clk: STD_LOGIC;

signal clear: STD_LOGIC;

process

Begin

if (clear = ’1’) then

q <= ”000”;

elsif (clk`event and clk = ’1’) then   if (x = ’0’) then q <= q+1;

else q <= q-1;

end if; end if;

end process;

69

Page 70: Digitális technika II. Rész:  Sorrendi hálózatok

Szinkron sorrendi hálózatok• Egyszerű szinkron sorrendi hálózatok

– Számlálók• Decimális felfelé számláló

– Pl. 0-tól 9-ig (0000b – 1001b) egyesével számlál minden órajel ciklusban (4-bites BCD kód)– A hálózat 24 = 16 állapotot vehet fel, ebből 6 tiltott állapot– 1001b-ig úgy működik mint egy bináris számláló, de 1001b után 0000b kell következzen– A bemeneti kombinációs hálózat a bináris számlálótól különböző lesz

70

Q3Q2Q1Q0

0 0 0 0 (0) 0 0 0 1 (1) 0 0 1 0 (2) 0 0 1 1 (3) 0 1 0 0 (4) 0 1 0 1 (5) 0 1 1 0 (6) 0 1 1 1 (7) 1 0 0 0 (8) 1 0 0 1 (9)

0000

0010

0101

1000

00011001

0110 0100

00110111

Page 71: Digitális technika II. Rész:  Sorrendi hálózatok

Szinkron sorrendi hálózatok• Egyszerű szinkron sorrendi hálózatok

– Számlálók• Decimális felfelé számláló

– Pl. 0-tól 9-ig (0000b – 1001b) egyesével számlál minden órajel ciklusban (4-bites BCD kód)

– A hálózat 24 = 16 állapotot vehet fel, ebből 6 tiltott állapot

71

0000

0010

0101

1000

00011001

0110 0100

00110111

Page 72: Digitális technika II. Rész:  Sorrendi hálózatok

Szinkron sorrendi hálózatok• Egyszerű szinkron sorrendi hálózatok

– Számlálók• Decimális felfelé számláló

– Pl. 0-tól 9-ig (0000b – 1001b) egyesével számlál minden órajel ciklusban (4-bites BCD kód)

– A hálózat 24 = 16 állapotot vehet fel, ebből 6 tiltott állapot

– Q3 kimenet billen ha

» Q0 = Q1 = Q2 = 1 vagy

» Q3Q2Q1Q0 = 1001

– Q2 kimenet billen ha

» Q0 = Q1 = 1

– Q1 kimenet billen ha

» Q0 = 1 és

» Q3Q2Q1Q0 ≠ 1001

– Az ”1001” állapot jelzéséhez BCD kódban elég ha Q3 = Q0 = 1

72

Page 73: Digitális technika II. Rész:  Sorrendi hálózatok

Szinkron sorrendi hálózatok• Egyszerű szinkron sorrendi hálózatok

– Frekvenciaosztás• n bites számláló frekvenciaosztása: 2n

73

1

0

f0

f0/4

f0

f0/8

f0/16

f0/2

Page 74: Digitális technika II. Rész:  Sorrendi hálózatok

Szinkron sorrendi hálózatok• Egyszerű aszinkron sorrendi hálózatok

– Aszinkron számlálók• Bináris felfelé számláló

– Pl. 0-tól 7-ig (000b – 111b) egyesével számlál minden órajel ciklusban (3-bites)– A hálózat 23 = 8 állapotot vehet fel, nincs tiltott állapot

– A T tárolók kimenete a következő tároló órajel bemenetére csatlakozik– A tárolók kimeneti jelének frekvenciája fele a bemeneti órajel frekvenciájának– Előny:

» Nem kellenek kiegészítő kapuáramkörök– Hátrány:

» A késleltetések miatt a tárolók nem egyszerre billennek» Az órajel változásakor rövid időre határozatlan kimeneti jel

74

Q2Q1Q0

0 0 0 (0) 0 0 1 (1) 0 1 0 (2) 0 1 1 (3) 1 0 0 (4) 1 0 1 (5) 1 1 0 (6) 1 1 1 (7)

Q1

Q2Q1Q0

Page 75: Digitális technika II. Rész:  Sorrendi hálózatok

Szinkron sorrendi hálózatok• Egyszerű aszinkron sorrendi hálózatok

– Aszinkron számlálók• Bináris felfelé számláló

– Pl. 0-tól 7-ig (000b – 111b) egyesével számlál minden órajel ciklusban (3-bites)– A hálózat 23 = 8 állapotot vehet fel, nincs tiltott állapot

75

Q2Q1Q0

0 0 0 (0) 0 0 1 (1) 0 1 0 (2) 0 1 1 (3) 1 0 0 (4) 1 0 1 (5) 1 1 0 (6) 1 1 1 (7)

Q1

Q2Q1Q0

Page 76: Digitális technika II. Rész:  Sorrendi hálózatok

Szinkron sorrendi hálózatok• Egyszerű aszinkron sorrendi hálózatok

– Diszkrét áramkörök• D flip-flop

– 74AC11074

• J-K tároló– CD54AC112

• Léptető regiszter– CD4015

• Számláló– CD40193

Texas Instruments

76

Page 77: Digitális technika II. Rész:  Sorrendi hálózatok

Memóriák• Memóriák (tárolók)

– Nagyobb mennyiségű információ átmeneti vagy tartós tárolására szolgáló egységek• Regiszterek

– Néhány bit, vagy bitcsoport (4, 8, 16, 32 …stb.) tárolására

• Több regiszterből nagyobb tárolókapacitású tárolók építhetők– Kiegészítő és vezérlő egységek szükségesek

» A tárolt információ célszerű kezeléséhez» Más áramkörökkel való együttműködés, illeszthetőség» foglaltság, készenlét stb…

77

Memória

Cím

Vezérlés

Adat

• Memóriák működése– A „Cím” bemenetre érkező információval jelöljük ki

» az „Adat” csatlakozóra érkező, tárolandó» az „Adat” csatlakozón távozó, kiolvasandó

információ memórián belüli helyét (memória rekeszt)– A „Vezérlés” csatlakozásokon keresztül adhatunk

utasításokat» beírás, kiolvasás stb…

vagy nyerhetünk információkat a memória működésére vonatkozólag

» foglaltság, készenlét stb…

Page 78: Digitális technika II. Rész:  Sorrendi hálózatok

Memóriák• Működés

– Általános memória felépítése• 1 db cella 1 bit tárolására képes• 1 rekesz (sor) K db cellából épül fel. 1 sor

mérete K bit. Ettől függően léteznek:– Byte szervezésű (K = 8)– Szó szervezésű (K = 16)– Duplaszó szervezésű (K = 32)

• A párhuzamos hozzáférésű memóriáknál az adatbusz hozzávezetéseinek számát K adja meg

• A memória tömb N = 2L db rekeszből épül fel – A párhuzamos címzésű memóriáknál a

címbusz hozzávezetéseinek száma L

• Memória tárolókapacitása – tárolt bitek száma = 1 rekesz mérete *

rekeszek darabszáma = K * N bit

• Vezérléstől függően 3 féle állapot:– Írás: R = 1, W = 0– Olvasás : R = 0, W = 1– Üresjárat / tárolás: R = 1, W = 1

78

Cím(Address)

N db m

emória

rekesz

TömbRekesz

Cella

Vezérlés

WR CLK

Page 79: Digitális technika II. Rész:  Sorrendi hálózatok

Memóriák• Működés

– Általános memória felépítése• Cella

– RS tároló + logika

• Rekesz– Regiszterhez hasonlóan, tároló cellák párhuzamosan kapcsolva

79

I

W R S Qn+1 0 0 Qn 0 1 1 1 0 0 1 1 X

O

0 1 2 K-1

I0 I1 I2 IK-1

O0 O1 O2 OK-1

W

Page 80: Digitális technika II. Rész:  Sorrendi hálózatok

Memóriák• Működés

– Általános memória felépítése• Rekeszek memória tömbbé szervezése

80

Page 81: Digitális technika II. Rész:  Sorrendi hálózatok

Memóriák• Működés

– Általános memória felépítése• Rekeszek memória tömbbé szervezése

– IS65C256AL

81

Page 82: Digitális technika II. Rész:  Sorrendi hálózatok

Memóriák• Működés

– Olvasás, párhuzamos független adat és címvezetékekkel• CE: Chip Enable• OE : Output Enable

82

Page 83: Digitális technika II. Rész:  Sorrendi hálózatok

Memóriák• Működés

– Írás, párhuzamos független adat és címvezetékekkel• CE: Chip Enable• WE : Write Enable

• Olvasás

83

Page 84: Digitális technika II. Rész:  Sorrendi hálózatok

Memóriák• Csoportosítás

• A megcímzett rekesz hozzáférési módja szerint– Tetszőleges (véletlen) hozzáférésű memória (RAM: Random Access Memory)

» Bármely adat a címtől függetlenül azonos idő alatt elérhető– Soros hozzáférésű memória (SAM: Serial Access Memory)

» Az adat címétől függő elérési idő» Pl. Mágnesszalagos tárolás

– Asszociatív memória (CAN : Content Addressable Memory)» Megadja, hogy az adott információ a memória mely címén található

• Az információ beírhatósága szempontjából– Csak olvasható memória (ROM: Read Only Memory)– Módosítható memória (RWM: Read Write Memory)

» RAM

• A tárolás időbeli módja– Statikus (pl.: SRAM)

» Tápfeszültség esetén az információt korlátlan ideig megőrzi– Dinamikus (pl.: DRAM)

» A memória tartalma időnként frissítésre szorul (ez hátrány)» (De) nagy tároló kapacitás érhető el

84

Page 85: Digitális technika II. Rész:  Sorrendi hálózatok

Memóriák

– Pl.:• 216 bit tárolása (64 Kibit), 216 cella• 8 bit (byte) szervezés: 8 KiByte, 213 rekesz• Párhuzamos szervezéssel

– 8 adatvezeték– 13 cím vezeték

• Soros szervezéssel csökkenteni lehet a kivezetések számát– Egy 32 bites 2GiByte-os memóriának

» 32 adatvezetés» 29 címvezeték

– Párhuzamos memória + soros-párhuzamos átalakítás

85

Page 86: Digitális technika II. Rész:  Sorrendi hálózatok

• Csoportosítás

Memóriák

Hozzáférés

Párhuzamos Soros

Független cím-és adatbusz

Univerzális (egyesített)Cím- és adatbusz

Független cím-és adatbusz

UniverzálisCím- és adatbusz

86

Address

Data

WR

RE

CLK

Address/

Data

ALE

WR

RE

CLK

Address

Data

WR

RE

CLK

Address/

Data

WR

RE

CLK

512M x 32 (K =29, L=32) tömb esetén M: chip lábainak száma Q: 1 művelethez szükséges órajel periódusok száma

M = 66Q = 1 + 1

M = 38Q = 1 + 1

M = 7Q = 29+32

M = 6Q = 29 + 32

Page 87: Digitális technika II. Rész:  Sorrendi hálózatok

Memóriák• Soros hozzáférésű memória

– Párhuzamos memóriából, soros-párhuzamos, párhuzamos-soros átalakítókkal

87S

→ P

A0

A1

A2

AL-1

S ↔ P

D1 D0D2 DK

DA CLK W R

Page 88: Digitális technika II. Rész:  Sorrendi hálózatok

Memóriák• Bővítés

– Szóhossz bővítés

88

D0

D1

D2

DK

-1

DK

cswR

Data

Adrr cswR

Data

AdrrD

0

D1

D2

DK

-1

DK

DK

+1

DK

+2

D2K

-1

cswR

Adrr2 x 8k * 8 = 8k * 16

Page 89: Digitális technika II. Rész:  Sorrendi hálózatok

Memóriák• Bővítés

– Kapacitás bővítés

89

Page 90: Digitális technika II. Rész:  Sorrendi hálózatok

Memóriák• Írás,olvasás, törlés

90

MEMÓRIÁK

ROM RAM

ROM PROM UVEPROM EEPROM Statikus RAM Dinamikus RAM

Egyéb

• Írás a gyárban• Törlés nem

lehetséges

• 1x felhasználó által is írható (beégethető)

• Törlés nem lehetséges

• Felhasználó által is írható

• Törlés 10”-es UV-s levilágítással

• Felhasználó által is írható

• Elektromosan törölhető

• Tápfesz nélkül elveszti a tartalmát

• Gyors• Nem kell

frissíteni

• Tápfeszültség alatt is néha frissíteni kell

• Lassú

Nem illékonyIllékony

Page 91: Digitális technika II. Rész:  Sorrendi hálózatok

Mikroprocesszoros rendszerek• Algoritmusok megvalósítása

– Műszaki rendszereket mindig valamilyen feladat megoldása érdekében építünk– A feladatmegoldás általában valamilyen algoritmus szerint történik

• Mérésadatgyűjtés• Adatok elemzése (pl. összehasonlítás)• Aritmetikai, logikai műveletek végzése az adatokon• Döntéshozatal stb.

– Az információfeldolgozás menetét (programját) építjük be a rendszerbe• 1. megoldás:

– A rendszer összetevői és egymáshoz való kapcsolódásuk, sorrendiségük a hardverben fixen „behuzalozva” jelennek meg

• 2. megoldás– Az algoritmusnak megfelelő sorrendben, előre letárolt program szerint, egy

vezérlő berendezés segítségével aktivizáljuk az egyes műveletvégző egységeket

91

Page 92: Digitális technika II. Rész:  Sorrendi hálózatok

Mikroprocesszoros rendszerek• Algoritmusok megvalósítása

1. megoldás: Huzalozott program• A rendszer összetevői és egymáshoz való kapcsolódásuk, sorrendiségük a hardverben fixen

„behuzalozva” jelennek meg– Előny

» Egyes részfeladatok párhuzamosanis végrehajthatók (gyors működés)

– Hátrány» A hardver a rögzített struktúra miatt

csak az adott feladat megoldásáraalkalmas

2. megoldás: Tárolt program• Az algoritmusnak megfelelő sorrendben, előre letárolt program szerint, egy vezérlő berendezés

segítségével aktivizáljuk az egyes műveletvégző egységeket– Előny

» Ha megváltoztatjuk a memória tartalmát(a programot) más-más feladatrahasználhatjuk

– Hátrány» A részfeladatok nehezen

párhuzamosíthatók (lassúbb működés)» Szekvenciális utasítás végrehajtás

Hardverben rögzített algoritmus

Bemenet Kimenet

Bemenet KimenetMemória Vezérlő

További rendszerösszetevők

92

Page 93: Digitális technika II. Rész:  Sorrendi hálózatok

Mikroprocesszoros rendszerek• Algoritmusok megvalósítása tárolt program alapján

– Vezérlő egység• A vezérelt rendszer kívánt algoritmus szerinti működését

– Felügyelik– Szervezik

• A vezérlő működési programja lehet– Fázisregiszteres

» Kötött struktúrájú» A fázisregiszter (ez lehet egy számláló is) tárolja a vezérlő belső állapotát» A belső állapotnak megfelelően kell előállítani a kimeneti vezérlő jeleket» A módosítás nehézkes

– Mikroprogramozott» A vezérlőt működtető utasítások sorozata (a program) egy memóriában van tárolva» Az aktuális utasítás megadja az adott fázisban végrehajtandó műveletet és a következő utasítás

memórián belüli címét

Bemenet KimenetMemória Vezérlő

További rendszerösszetevők

93

Page 94: Digitális technika II. Rész:  Sorrendi hálózatok

Mikroprocesszoros rendszerek• Algoritmusok megvalósítása tárolt program alapján

– Memória• A rendszer működése hatékonyabb, ha a memóriában

nem csak az utasítások hanem adatok is tárolhatók későbbi felhasználás céljából– Programmemória– Adatmemória

• Lehet közös memória (Neumann architektúra)• Vagy fizikailag külön adat és programmemória (Harvard architektúra)

– Bemenetek- Kimenetek• A bementi adatok fogadására• A kimeneti adatok megjelenítésére• A külvilággal való kommunikációra, illesztésre

Bemenet KimenetMemória Vezérlő

További rendszerösszetevők

94

Page 95: Digitális technika II. Rész:  Sorrendi hálózatok

Mikroprocesszoros rendszerek• Algoritmusok megvalósítása tárolt program alapján

– Műveletvégző egységek• A gyakran használt aritmetikai és logikai műveletek végrehajtását célszerű külön erre a célra

tervezett egységre bízni– ALU (Arithmetic Logic Unit)

• A vezérlési, aritmetikai és logikai, illetve egyéb feldolgozási műveleteket elvégző központi egységet CPU-nak ( Central Processing Unit, központi feldolgozó egység) hívjuk

Bemenet KimenetMemória Vezérlő

További rendszerösszetevők

95

Page 96: Digitális technika II. Rész:  Sorrendi hálózatok

Mikroprocesszoros rendszerek• CPU

– Az utasítások alapján előállítja a processzoron belüli és a processzorhoz kapcsolt külső egységek működéséhez szükséges vezérlőjeleket

• Belső vezérlő jelek– ALU működtetése– Regiszterek és a belső sínrendszer közötti adatátvitel

• Külső vezérlőjelek– A memória – CPU közötti adatátvitel– A perifériák – CPU közötti adatátvitel

– A művelet-végrehajtás elemi lépéseit mikroprogram írja le, amely a programtárban (memória) helyezkedik el

• A mikroprogram mikroutasításokból áll– Műveleti kód

» Az adott fázisban elvégzendő feladathoz rendelt vezérlővonal állapotokat adja meg– Címzésmód

» A mikroprogram végrehajtása hogyan folytatódik a következő utasítással a tárban , feltétel nélküli vezérlésátadással (INC) vagy egy külső feltételtől függő vezérlésátadással (JMP)

– Következő mikroutasítás címe» Automatikus inkrementálásnál lényegtelen

– Operandus(ok) cime(i)» A memória mely elemeivel akarunk műveletet végezni» Pl: A = A+B (A és B a memóriában tárolt adatok címei)

96

Page 97: Digitális technika II. Rész:  Sorrendi hálózatok

Mikroprocesszoros rendszerek• CPU

– Cím- adat- és vezérlősínek (buszrendszer)• CPU a hozzá csatlakoztatott memóriaegységekkel, be- és kimeneti egységekkel, regisztertárakkal ezeken

keresztül tart kapcsolatot. • Több párhuzamos vezeték, melyeken az adatok, a memóriák egyes rekeszeit kiválasztó címek, és egyéb

vezérlőjelek utaznak• A síneken általában több eszköz osztozik, de egyszerre csak egy használhatja őket

97

Page 98: Digitális technika II. Rész:  Sorrendi hálózatok

Mikroprocesszoros rendszerek• CPU

– Utasítás dekódoló és végrehajtó egység• Irányítja és ütemezi az összes többi egység működését • Az adatokat vagy címeket a megfelelő útvonalon vezeti

végig, hogy a kívánt helyre eljussanak• Ha szükséges, beindítja az ALU valamelyik műveletvégző

áramkörét

– PC (Program Counter Register)programszámláló regiszter

• A következő utasítás memóriacímét tartalmazza• Minden utasítás végrehajtása során egyel nő az értéke

– IR (Instruction Register) utasítás regiszter • A memóriából kiolvasott utasítást tartalmazza• A dekódoló egység értelmezi a tartalmát és ennek megfelelően ad ki vezérlő jeleket a többi egységnek• Ugrás esetén innen kerül a következő utasítás címe a PC-be, memória íráskor illetve olvasáskor ebből a regiszterből

jut el a kívánt cím a memóriához (az MA regiszteren keresztül)

– MA (Memory Address Register) memória címregiszter• Az MA és MD regiszterek tartják a közvetlen kapcsolatot a memóriával • Az MA-ból jut a memória bemeneteire a kiválasztott rekesz címe (adatírás, -olvasás, utasításbeolvasás esetén)

– MD (Memory Data Register) memória adatregiszter• A memóriából kiolvasott adat közvetlenül ide kerül, illetve a memóriába innen töltjük az adatokat

98

Page 99: Digitális technika II. Rész:  Sorrendi hálózatok

Mikroprocesszoros rendszerek• CPU

– ALU (Arithmetic Logic Unit)• CPU "kalkulátora”• Néhány alapvető műveletet képes végrehajtani

– Összeadás, kivonás, átvitel bitek kezelése– Fixpontos szorzás osztás– Logikai műveletek– Léptetések, bitek mozgatása jobbra/balra– Lebegőpontos aritmetikai műveletek

– Akkumulátor• Ideiglenes tárolást (munkamemóriát) biztosít(anak)

az ALU számára

– Egyéb regiszterek• A CPU belső tárolóelemei• Írásuk és olvasásuk sokkal gyorsabb a memóriákénál• Segítik a címképzést, tárolnak állapotjellemzőket,

státusokat (ezzel a vezérlést segítik)• Tartalmuk gyorsan és egyszerűen elérhető a CPU

elemei számára

99

Page 100: Digitális technika II. Rész:  Sorrendi hálózatok

Mikroprocesszoros rendszerek• CPU

– Pl. Adat beírása az akkumulátor regiszterbe1. lépés: A PC-ből az MA-n keresztül a memória bemeneteire jut az utasítás címe. A memória adatvezetékein megjelenik

a rekesz tartalma (vagyis a műveleti kód), az MD-n keresztül az IR-be kerül2. lépés: Az utasítás dekódoló és végrehajtó egység beolvassa a műveleti kódot, és értelmezi azt3. lépés: A PC értéke eggyel nő (így az operandus címére mutat)

100

Page 101: Digitális technika II. Rész:  Sorrendi hálózatok

Mikroprocesszoros rendszerek• CPU

– Pl. Adat beírása az akkumulátor regiszterbe1. lépés: A PC-ből az MA-n keresztül a memória bemeneteire jut az utasítás címe. A memória adatvezetékein megjelenik

a rekesz tartalma (vagyis a műveleti kód), az MD-n keresztül az IR-be kerül2. lépés: Az utasítás dekódoló és végrehajtó egység beolvassa a műveleti kódot, és értelmezi azt3. lépés: A PC értéke eggyel nő (így az operandus címére mutat)4. lépés: Az operandus címe a PC-ből a memória bemeneteire jut, majd tárolt érték az MD-n keresztül az akkuba kerül5. lépés: A PC értéke megint eggyel nő, vagyis a következő utasításra mutat: elkezdődhet annak a végrehajtása.

101

Page 102: Digitális technika II. Rész:  Sorrendi hálózatok

Mikroprocesszoros rendszerek• Mikroprocesszorok (P), mikroszámítógépek (C)

Page 103: Digitális technika II. Rész:  Sorrendi hálózatok

Mikroprocesszoros rendszerek• Mikroprocesszorok (P), mikroszámítógépek (C)

ATmega168TMS320C28xTMS320C6416T