1 SORRENDI (SZEKVENCIÁLIS) HÁLÓZATOK Vannak olyan hálózatok, melyeknél - a kombinációs hálózatokkal ellentétben - a kimenet pillanatnyi állapota (kimeneti kombináció) nem csak a bemenet adott pillanatbeli állapotától (bemeneti kombináció) függ. Ez azt jelenti, hogy a kimeneti kombináció adott pillanatbeli értékének meghatározásához nem elégséges a bemeneti kombináció adott pillanatbeli értéke, hanem más is kell. Tekintettel arra, hogy a külső behatásokat már mind figyelembe vettük a bemeneti kombinációknál, így ez korábbi állapottól való függést, ill. ami ezzel egyenértékű a bemeneti kombinációk korábbi értékeinek figyelembevételét jelenti. Az áramkör tehát "emlékezik" korábbi állapotára / állapotaira. Ezeket a bizonyos állapotokat is figyelembe kell vennünk az áramkör működésénél, és így a kimeneti kombináció meghatározásakor. Az emlékezés azonban feltételezi az állapot (el)tárolását, vagyis valamiféle visszacsatolást. Be szükséges tehát vezetnünk az áramkör működéséhez egy változó csoportot, az állapotváltozókat. Sematikusan ábrázolva az 1. ábrán látható módon képzeljük el a működést ill. felépítést. Tekintettel arra, hogy az ismertetett áramkörök az előző állapotukat / állapotaikat is figyelembe veszik / vehetik - vagyis sorrendiséget is, - sorrendi (szekvenciális) hálózatoknak nevezzük őket. Z = Z ( X, y )
X y
Kombinációs hálózat Y = Y ( X, y )
visszacsatolást definiáló doboz sorrendi hálózat 1. ábra Látható az ábrán, hogy az állapotváltozók ( Y ) kétféle formában is helyet kaptak. Nagybetűvel ( Y ) jelöljük az újonnan kialakuló (új) állapotot (állapotváltozó új értékekei), mely már az előző visszahatást is figyelembe vette, míg kisbetűvel ( y ) az (előző) állapotot (állapotváltozó előző értékeit). Mivel az Y már tartalmazza a bemenőjeleket, így egy másik modellben Z már csak az állapotváltozótól függ. Z = Z( y ) . Az első (Mealy) és ez utóbbi (Mootr) modell
bizonyíthatóan egyenértékűek. Így tehát, míg korábban a kombinációs hálózatoknál csak két változóféleség fordult elő, úgy itt három. A kombinációs hálózatoknál igazságtáblázat volt a függvény egyik megadási módja. Itt is használhatunk táblázatos megadási módot, de a peremezésnél figyelembe kell venni, hogy nemcsak a lehetséges bemeneti változók (lehetséges bemeneti kombináció), hanem a lehetséges előző állapotok (állapotváltozók lehetséges előző kombinációi) is van, nemcsak a létrejövő kimenet kerül a táblázat adott cellájába, hanem az új állapot (állapotváltozók új kombinációja) is.
2 Az ezen megfontolások alapján létrehozott táblázatot állapottáblának nevezzük Tekintsük a 2. ábrát, melyen egy sorrendi hálózat táblázatos megadási példája látható. A táblázat bal oldali peremezése a lehetséges előző állapotkombinációkat, felső peremezése pedig a lehetséges bemeneti kombinációkat adja meg. A táblázatba mind az új állapotkombinációk, mind pedig a létrejövő új kimeneti érték helyet kapott. A változó jobb oldali felső indexe nem hatványozást, hanem a különböző kombinációk megkülönböztető indexét jelenti. Az ábrában szereplő új (Y1) és előző (y1) állapotkombinációk azonos indexű elemei ugyanazt az értéket takarják, csak szerepükben különböznek: a nagybetűs tagok már visszahatást követő új állapotot, míg a kisbetűs tagok a vissza még nem hatott állapotot jelentik. Az ábrán 4 különböző bemeneti (X1, X2, X3, X4), 6 különböző kimeneti (Z1, Z2, Z3, Z4, Z5, Z6)és 4 különböző állapotkombinációt (Y1, Y2, Y3, Y4), feltételeztünk
x y
x1
x2
x3
x4
y1
Y1 Z1
Y3
Z3
Y4
Z2
Y3
Z4
y2
Y1
Z4
Y3
Z6
Y1
Z2
Y4
Z2
y3
Y2
Z1
Y3
Z6
Y3
Z3
Y2
Z6
y4
Y3
Z4
Y4
Z5
Y4
Z1
Y1
Z4
2. ábra A sorrendi hálózat működése nagyban függ az. 1. ábrában szereplő "visszacsatolást definiáló doboz"-tól. Ez határozza meg ugyanis, hogy az újonnan kialakuló állapotok mikor és hogyan hassanak vissza a rendszer működésére. Mi két lehetséges összeköttetési módot és így két lehetséges működést mutatunk be. Első esetben a doboz rövidzárakat tartalmaz a dobozba beérkező és távozó jelek között. Ez a gyakorlatban igen kicsi, de nullától eltérő késleltetésű visszacsatolást jelent. Ilyenkor az újonnan létrejövő állapot gyakorlatilag azonnal visszahat és új állapotot (és új kimenetet) hozhat létre. Ez a még újabb állapot aztán ismét visszahat, stb. Ezt a működési módon aszinkron működésnek, az áramkört ilyenkor aszinkron sorrendi hálózatnak nevezzük. Aszinkron a neve, mivel a bemenet megváltozását követően az események a visszacsatolások sorozata nincs semmilyen jelhez időzítve, csak az áramkörben fellelhető késleltetések, jelterjedések befolyásolják a visszahatást és így a működést. Másik esetben a visszahatást nem engedjük folyamatosan hatni, hanem a "visszacsatolást definiáló doboz" csak bizonyos időpillanatokban teremt rövidzárt az új és a visszaható állapot jelei között. Ilyenkor egy jelhez igazítjuk a visszahatást és így a működést is, vagyis ehhez a jelhez képest szinkron fog üzemelni. Ezért ezt az üzemmódot szinkron üzemmódnak az áramkört pedig ilyenkor szinkron sorrendi áramkörnek nevezzük.
3 ASZINKRON MŰKÖDÉS Tekintsük először az első, aszinkronnak nevezett esetet. Ennek megértéséhez a 3. ábrát hívjuk segítségül. Itt megismételjük a 2. ábrát (3.a. ábra) és aszinkron működést feltételezünk, vagyis az új állapot azonnal (a gyakorlatban kis késleltetéssel) vissza tud hatni és újabb állapotot hozhat létre. Határozzunk meg egy kiinduló pontot: legyen ez a bal felső cella. Ezzel azt tételeztük fel, hogy az aktuális bemenetei változó X1 (hiszen a bemeneti változó adja az érintett cella oszlopát) és az előzőleg kialakult új állapot Y1, valamint az előző állapot y1, hiszen az első sorban vagyunk. Lévén ez egy aszinkron áramkör, az új kialakuló állapot azonnal visszahat és megváltoztat(hat)ja az új létrejövő állapotot (és kimenetet). Ez az első cellánál azt jelenti, hogy Y1 ⇒ y1 és a visszahatott y1 határozza meg az új cella sorát, mely az első sor. 4 5
3 1
x
x y
2
x
1
x
2
x
3
x
4
y
x1
x2
x3
x4
y1
Y1 Z1
Y3
Z3
Y4
Z2
Y3
Z4
y1
Y1 Z1
Y3
Z3
Y4
Z2
Y3
Z4
y2
Y1
Z4
Y3
Z6
Y1
Z2
Y4
Z2
y2
Y1
Z4
Y3
Z3
Y1
Z2
Y4
Z2
y3
Y2
Z1
Y3
Z6
Y3
Z3
Y2
Z6
y3
Y2
Z1
Y3
Z1
Y3
Z3
Y2
Z4
y4
Y3
Z4
Y4
Z5
Y4
Z1
Y1
Z4
y4
Y3
Z4
Y4
Z2
Y4
Z1
Y1
Z4
3.a. ábra
3.b. ábra
Tehát jogos volt kiindulási pontként a bal felső cellát választani, hiszen ha nem változtatjuk meg a bemeneti kombinációt, e cellában "marad" a rendszer, ez egy stabil kiinduló pont (Ezt nem kellett volna levezetnünk, hiszen csak egy kiinduló feltételezéssel éltünk. Mégis célszerű volt megtenni, hiszen illusztrálni tudtuk a működést). Vizsgáljuk meg a bemeneti változók X1 ⇒ X2 ⇒ X3 ⇒ X1 ⇒ X3 ⇒ X4 ⇒ X3 esetére. 1. X1 ⇒ X2 Első pillanatban csak a bemeneti kombináció változik meg. Ez azt jelenti, hogy azonos (első) sorban az új bemeneti kombináció által meghatározott második sorba jutunk (ld. világossárga nyíl vízszintes ága). E cellában az új előírt állapotkombináció Y3 (az új kimeneti érték pedig Z3), mely (ugyanezen oszlopon belül - hiszen bemeneti kombinációt
4
2.
3.
4.
5.
nem változtattunk közben) visszahatva y3-ként a harmadik sorba való átmenetelt írja elő. Az itt definiált új állapot ugyancsak Y3 (az új kimeneti érték pedig Z1), vagyis e sorban maradunk. Mit tapasztaltunk? Volt egy cella, melyben csak átmenetileg (a késleltetések által meghatározott rövid ideig) tartózkodott a rendszer. Az ilyen cellákat instabil celláknak nevezzük. Második lépésként ezen instabil cellából egy olyan cellába jutottunk, ahol az új kialakuló állapot nem okozta e cella elhagyását és mindaddig itt marad a rendszer, amíg a bemeneti kombináció nem kerül megváltoztatásra. Ezeket a cellákat stabil celláknak nevezzük (és az ábrán karikával jelöltük meg). Összességében tehát a bemeneti kombináció változásával egy instabil cellán át egy stabil cellába jutottunk. X2 ⇒ X3 A bemeneti kombináció megváltoztatása után - ugyanazon soron belül (hiszen a y2 még nem tud megváltozni) a harmadik (X3) oszlopba kerülünk. E cellában Y3 új állapot (és Z3 új kimeneti kombináció) van előírva. Mivel Y3 ⇒ y3-mal a visszahatás során a visszaható állapot nem változik meg, így e cellából nem megyünk tovább (amíg a bemeneti kombináció újból meg nem változik). Tehát e cella stabil cella (és az ábrán karikával jelöltük meg). Ez esetben nem volt instabil cella, mint közbülső "tartózkodási hely". X3 ⇒ X1 Ahogyan eddig is, most is először oszlopváltás következik be: a harmadik (ez nem változott) sor első oszlopába jutunk. Itt azonban Y2 (és Z1) az előírt új állapot, mely sorváltást is jelent: egy sorral feljebb kell mennünk. A második sor első cellájában Y1 (és Z4) az új állapot, amely cellaelhagyást definiál: tovább kell menni az első sorba. E cellában már jártunk, innen indultunk. A cella tartalma Y1, Z1.és mint tudjuk ez egy stabil cella. Láttuk, hogy most két instabil állapoton (cellán) keresztül jutottunk stabil állapotba. Megjegyzés: megfigyelhettük, hogy stabilnak az a cella nevezhető, melyben előírt új állapot (állapotváltozó indexe) megegyezik a sor peremezésében található állapottal (állapotváltozó indexével). X1 ⇒ X3 Ugyanez a bemeneti kombináció változás már szerepelt egyszer, de akkor két lépésben hajtottuk végre. Kíváncsiak vagyunk: szerepet játszik-e az, hogy milyen előző állapotokon keresztül jutunk el ugyanazon a kiinduló és végső bemeneti kombináció diktálta átmenet esetén (sorrendiség!). Az első lépés a megszokott: oszlopváltás a 3. oszlopba (és mivel az első sorban voltunk ezen oszlopváltás során nem is megyünk még másik sorba azonnal). A harmadik oszlop első sorában Y4 (és Z2) van előírva, mely a 4 sort jelöli ki. A negyedik sor harmadik oszlopába jutva, ott Y4 (és Z1) van előírva, mely stabil cellát jelent. Instabil cellán át jutottunk stabil cellába. Ugyanakkor, ha az előző kérdésre kívánunk választ adni, azt találtuk, hogy máshova jutottunk, mint X1 ⇒ X2 ⇒ X3 két lépésben történő átmenetkor (t.i. ott a harmadik sor harmadik oszlopában kötöttünk ki). Az áramkör ilyen szempontból is sorrendinek bizonyult. X3 ⇒ X4 Az átváltáskor a negyedik oszlopba jutottunk, és maradtunk a 4 sorban. Itt Y1, Z4 az előírás, mely az első sort adja meg (természetesen ugyanezen 4. oszlopban). Vagyis e cella instabil volt. Az új cellában Y3, Z4 van előírva, ez is instabil cella volt. A következő
5 cellában Y2, Z4 az előírt, így újabb instabil cellát azonosítottunk. Következik Y4, Z2 előírás, mely miatt e negyedik cella is instabilnak minősítendő. Az újonnan megadott cella azonban a legelső cellánk volt az oszlopban! Ez azt jelenti, hogy körbe jár a rendszer: cirkulál: nincsen stabil állapot. Az ilyen jelenséget oszcillációnak nevezzük. Az oszcilláció elkerülésére technikailag azt a szükséges feltételt szabhatjuk, hogy legalább egy cellában a cellában levő állapotváltozó indexe egyezzen meg az állapotváltozó peremezés (előző állapot) indexével. Ez akkor elégséges feltétel is, ha a rendszer változása során az adott oszlopban erre a sorra rá is kerül a vezérlés. 6. X4 ⇒ X3 Tekintettel arra, hogy nem tudjuk, hogy abban a pillanatban, amikor ezen bemeneti kombináció változás bekövetkezik, a negyedik oszlop mely sorában "jár" a rendszer az oszcilláció során, ezért nem tudjuk meghatározni a további működését sem. Az aszinkron sorrendi hálózatok nagy előnye a gyors változások lehetővé tétele és így a gyorsaság. Hátrányként hozhatók fel az átmeneti instabil állapot(ok) és az esetlegesen kialakuló oszcilláció, mely utóbbinak a további működésre megjósolhatatlan következményei lehetnek. SZINKRON MŰKÖDÉS A szinkron működést ugyanazon az állapottáblán mutatjuk be, ehhez tekintsük a 4.a. és 4.b. ábrát. 6 4 5
3 1
x
x y
2
x
1
x
2
x
3
x
4
y
x1
x2
x3
x4
y1
Y1 Z1
Y3
Z3
Y1
Z2
Y3
Z4
y1
Y1 Z1
Y3
Z3
Y4
Z2
Y3
Z4
y2
Y1
Z4
Y3
Z6
Y1
Z2
Y4
Z2
y2
Y1
Z4
Y3
Z3
Y1
Z2
Y4
Z2
y3
Y2
Z1
Y3
Z6
Y3
Z3
Y2
Z6
y3
Y2
Z1
Y3
Z1
Y3
Z3
Y2
Z4
y4
Y3
Z4
Y4
Z5
Y2
Z1
Y1
Z4
y4
Y3
Z4
Y4
Z2
Y4
Z1
Y1
Z4
4.a. ábra
4.b. ábra
A szinkron működésnél definiáljuk úgy a visszacsatolást definiáló doboz működését, hogy kapcsolatot arra az időpillanatra engedi létrejönni, amikor a bemeneti változók megváltoznak.
6 Tekintsük e dobozt olyannak, hogy a Yi ⇒ yi visszahatást követően a doboz megszakítja a kapcsolatot, kimenetén viszont megőrződik a yi (fenntartva ezzel az állapotot). Induljunk ki ismét ugyanabból a cellából, mint az aszinkron esetben. 1. X1 ⇒ X2 Azt mondtuk, hogy amikor a bemeneti kombináció megváltozik, akkor engedjük az új állapotot visszahatni. Ez most azt jelenti, hogy a cellában előírt Y1 és az új X2 határozzák meg az új cellát. Ez az első sor második oszlopát jelenti. Az új cellában Y3 (és Z3) van előírva, ez azonban nem érvényesülhet, mivel az állapotváltozó visszahatása csak a bemeneti kombináció következő változásával egyidejűleg történhet meg. Agy e cella stabil! 2. X2 ⇒ X3 A bemenet változásával együtt hat vissza az állapotváltozó is, ezért az X3 és Y3 együtt határozzák meg a következő cella pozícióját, mely így a harmadik sor harmadik oszlopa. Az ott előírt Y3 (és Z3 ) állapotnak nincs most hatása, majd csak a következő állapotváltozáskor számít. Ezért ismét csak stabil állapotú a cellánk. Az eddigiekből is le lehet már vonni a következtetést, hogy a működés során csak stabil állapotok lehetnek, mivel visszahatás mindig csak a következő állapotváltozáskor történhet. 3. X3 ⇒ X1 Az előző új állapottal (Y3) együtt visszahatva az X1 az első oszlop harmadik sora a következő (stabil cella), ahol Y2 (és Z1) az előírás (ezen új állapotnak ugyancsak nincs hatása, majd csak a bemeneti állapot legközelebbi változásakor lesz). 4. X1 ⇒ X3 Az előző új állapottal (Y2) együtt visszahatva az X3 a harmadik oszlop második sora a következő (stabil cella), ahol Y1 (és Z2) az előírás (ezen új állapotnak ugyancsak nincs hatása, majd csak a bemeneti állapot legközelebbi változásakor lesz). 5. X3 ⇒ X4 Az előző új állapottal (Y1) együtt visszahatva az X4 a negyedik oszlop első sora a következő (stabil cella), ahol Y3 (és Z4) az előírás (ezen új állapotnak ugyancsak nincs hatása, majd csak a bemeneti állapot legközelebbi változásakor lesz). Az aszinkron működésnél látott oszcillációnak nyoma sincs! 6. X4 ⇒ X3 Az előző új állapottal (Y3) együtt visszahatva az X3 a harmadik oszlop harmadik sora a következő (stabil cella), ahol Y3 (és Z3) az előírás (ezen új állapotnak ugyancsak nincs hatása, majd csak a bemeneti állapot legközelebbi változásakor lesz). Ugyanakkor az a bizonytalansága, amely aszinkron esetben előfordult, nevezetesen hogy az oszcilláció miatt nem tudtuk, hogy a bemeneti kombináció új változatánál milyen állapotból (cellából) induljunk ki, itt nem léphet fel. Összefoglalásként: a szinkron működésnél csak stabil állapotok vannak, sem instabil sem oszcillációs állapot nem fordul elő. Tranziens viselkedése így kedvezőbb mint az aszinkron áramkörnek. Ugyanakkor - mivel minden hatás csak bizonyos időközönként juthat érvényre (és nem azonnal - ill. a gyakorlatban csekély késleltetéssel) - lassabb a működése.
7 ÁLLAPOTGRÁF A sorrendi hálózatok működésének megadására esetenként használnak egy grafikus módszert, ez az ú.n. állapotgráfos módszer. Itt a lehetséges állapotokat körök reprezentálják, míg azt, hogy mikor történik állapotváltozás, gráfok reprezentálják. A gráfok kiinduló és végpontja adja meg az előző és a következő állapotot, míg a gráf végi nyíl jelöli az állapotátmenet irányát. A gráfokra írjuk fel a bemeneti kombinációt / kombinációkat, mely / melyek hatására az átmenet létrejön és ettől / ezektől elválasztva egy per jellel pedig a létrejövő új kimeneti kombinációt. Az 5. ábra a 3.b. ábra állapotgráfos megfelelője. Az ábrához külön magyarázatot nem fűzünk.
X1 / Z1 X1 / Z4 X3 / Z2
y1 X3 / Z2
X2 / Z3; X3 / Z3 4 2 X4 / Z4 X / Z4 3 X /Z; 4 4 X /Z X2 / Z2
y4 2
2
y2
3
1
4
X /Z
y3 X2 / Z1, X3 / Z3
1
X /Z;X /Z
5. ábra