Az előadás letöltése folymat van. Kérjük, várjon

Az előadás letöltése folymat van. Kérjük, várjon

VÉGES AUTOMATA ALAPÚ TERVEZÉSI MODELL

Hasonló előadás


Az előadások a következő témára: "VÉGES AUTOMATA ALAPÚ TERVEZÉSI MODELL"— Előadás másolata:

1 VÉGES AUTOMATA ALAPÚ TERVEZÉSI MODELL
Németh Gábor

2 Németh Gábor: Számítógép architektúrák
MODELL ALAPÚ TERVEZÉS A rendszert általában egy VÉGES ÁLLAPOTÚ AUTOMATÁval írjuk le.  Az állapotátmeneteket eredményező események a környezetből a portokon keresztül érkező üzenetek.  Az elosztott rendszer konkurrens működését nagyon jól lehet kezelni ezzel a modellel.  Közvetlen módszerek léteznek a megvalósításra. 2001 Németh Gábor: Számítógép architektúrák

3 MODELL ALAPÚ TERVEZÉS - 2
Nagy rendszerek esetén az állapotok száma kezelhetetlenül nagy lesz. A megoldás helyességének bizonyítása nehéz, nincs rá közvetlen módszer. A finomítási lépések (amikor a rendszert egymással kommunikáló alrendszerekre bontjuk fel) a tervezőt általában meghatározott megvalósítások felé kényszerítik. 2001 Németh Gábor: Számítógép architektúrák

4 MODELL ALAPÚ TERVEZÉS - 3
PÉLDA: Tervezzünk egy tantárgyra jelentkezett hallgatókat nyilvántartó és félévüket elismerő rendszert. (MEGJEGYZÉS: A véges automata alapú módszer lényeges sajátosságainak kiemelésére a példában nincs szükség lépésenkénti finomításra, a formális specifikáció már magát a megvalósítást adja.) 2001 Németh Gábor: Számítógép architektúrák

5 MODELL ALAPÚ TERVEZÉS - 4
ELŐFELTEVÉSEK: 1. A hallgatóknak egyedi neve van. (Tipikus példája a környezetből és az önkényes tervezői döntésből együttesen származó előfeltevésnek.) 2. Egyetlen beviteli terminál van a rendszerben. (Akár környezetből származó, akár önkényes tervezői döntésből származó előfeltevés lehet.) 3. Csak a beiratkozott hallgatók látogathatják a tantárgyat. 4. Nem lép fel meghibásodás a rendszerben. (Önkényes tervezői döntés a feladat egyszerűsítésére.) 2001 Németh Gábor: Számítógép architektúrák

6 MODELL ALAPÚ TERVEZÉS - 5
SPECIFIKÁCIÓK: 1. STUDENTS /*állapot specifikálása*/ done, notdone: set of NAME done  notdone =  /*korlátozás*/  Az állapot specifikáció korlátozását a rendszer bármilyen műveletsorozata végrehajtásának eredményeként adódó új állapotnak is teljesítenie kell. 2001 Németh Gábor: Számítógép architektúrák

7 MODELL ALAPÚ TERVEZÉS - 6
2. ENROLL /*művelet specifikálása*/ STUDENTS /*jelenlegi állapot*/ STUDENTS’ /*új állapot*/ nm: NAME nm  done  notdone /*a művelet saját kiegészítő korlátozása*/ done’ := done /*állapotátmenet*/ notdone’ := notdone  {nm} /*állapotátmenet*/  A done  notdone =  korlátozásnak teljesülnie kell a művelet végrehajtása előtt és a done’  notdone’ =  korlátozásnak teljesülnie kell a művelet végrehajtása után, azaz az állapotok korlátozásait örököljük. 2001 Németh Gábor: Számítógép architektúrák

8 MODELL ALAPÚ TERVEZÉS - 7
3. COMPLETE STUDENTS STUDENTS’ nm: NAME nm  notdone done’ := done  {nm} notdone’ := notdone - {nm} 4. REPORT result’: set of NAME result’ = done’ := done notdone’ := notdone 2001 Németh Gábor: Számítógép architektúrák

9 MODELL ALAPÚ TERVEZÉS - 8
• A végesállapotú automata működése implikálja, hogy egy kezdeti állapotot kell definiálni. • A kezdeti állapotnak is ki kell elégítenie az általános done  notdone =  korlátozást. 5. STUDENTSinit STUDENTS done :=  notdone :=  ÉS HA KIKAPCSOLJUK A TÁPFESZÜLTSÉGET?! SAJNOS A MODELL NEM TUDJA KEZELNI A TÁROLÁST/BETÖLTÉST. 2001 Németh Gábor: Számítógép architektúrák

10 MODELL ALAPÚ TERVEZÉS - 9
SPECIFIKÁCIÓ ELLENŐRZÉSE: MEGVALÓSÍTHATÓSÁG  Egy specifikáció akkor és csak akkor valósítható meg, ha 1. a kezdeti állapot feltételei teljesíthetőek, és 2. minden, az előfeltételeknek és a saját korlátozásaiknak megfelelően végrehajtott utasítás megengedett állapotot eredményez. 2001 Németh Gábor: Számítógép architektúrák

11 MODELL ALAPÚ TERVEZÉS - 10
A példában a kezdeti feltétel STUDENTSinit STUDENTS done :=  notdone :=  a done =  és notdone =  választással nyilvánvalóan teljesíti az érvényes állapot done  notdone =  feltételét. 2001 Németh Gábor: Számítógép architektúrák

12 MODELL ALAPÚ TERVEZÉS - 11
A megvalósíthatóság 2. feltételét ellenőrizzük pl. az ENROLL művelet esetén (a művelet akkor érvényes, ha végrehajtásakor teljesítjük saját egyedi korlátozását is [nm  done  notdone]): [(done  notdone = )  (nm  done  notdone)]  done  (notdone  {nm}) =    (done’, notdone’): [(done’ = done)  (notdone’ = notdone  {nm})  (done’  notdone’ = )] 2001 Németh Gábor: Számítógép architektúrák

13 MODELL ALAPÚ TERVEZÉS - 12
Egy jó rendszer specifikációjának ELÉRHETŐnek kell lennie.  A specifikáció elérhető, ha minden legális állapotot bármelyik legális állapotból el lehet érni legális műveletek valamilyen véges sorozatával.  Nem elérhető specifikáció esetén valamilyen hiba vagy nem megengedett művelet olyan állapotba viheti a rendszert, mely a legális műveletekkel nem érhető el.  A rendszer csak hidegindítással vihető vissza a helyes működésbe. 2001 Németh Gábor: Számítógép architektúrák

14 MODELL ALAPÚ TERVEZÉS - 13
A végesállapotú gépet a következőképpen jellemezhetjük: x(n+1) = Gx(n) + Hu(n) ahol x(n) az n. állapot, u(n) az n. bemenet és G és H a vonatkozó átmeneti függvények. Az egyszerűség kedvéért tekintsünk csak időinvariáns rendszereket (sem meghibásodás, sem konfiguráció módosítás nem történik). Kissé más formában: x(n+1) = G[x(n) + Fu(n)] ahol G k  k nemszinguláris mátrix és F k  m mátrix. 2001 Németh Gábor: Számítógép architektúrák

15 MODELL ALAPÚ TERVEZÉS - 14
A cél állapot legyen az állapottér origója (mindig ide transzformálható). n = 0-ból indulva: x(1) = G[x(0) + Fu(0)] x(1) = 0 választással meghatározhatók azon x(0) kiinduló állapotok, melyekből a rendszer egy lépésben a kívánt állapotba vihető: 0 = G[x(0) + Fu(0)] Mivel G nemszinguláris mátrix: x(0) = -Fu(0) 2001 Németh Gábor: Számítógép architektúrák

16 MODELL ALAPÚ TERVEZÉS - 15
Hasonlóan, x(2) = 0 választással meghatározhatók azon x(0) kiinduló állapotok, melyekből a rendszer két lépésben a kívánt állapotba vihető: x(2) = G[x(1) + Fu(1)] = G[G{x(0) + Fu(0)} + Fu(1)] = G2x(0) + G2Fu(0) + GFu(1) = 0 Ebből: x(0) = -Fu(0) - G-1Fu(1) k lépésben a rendszer a következő kiinduló állapotból vihető a kívánt állapotba: x(0) = -Fu(0) - G-1Fu(1) - … - G-(k-1)Fu(k-1) 2001 Németh Gábor: Számítógép architektúrák

17 MODELL ALAPÚ TERVEZÉS - 16
Ha -F, -G-1F, …, -G-(k-1)F lineárisan függetlenek, akkor bármilyen x(0) előállítható lineáris kombinációjukból. A specifikáció elérhető, ha P = [F | GF | … | Gk-1F] mátrix rangja k. A részrendszerek elérhetősége nem garantálja a teljes rendszer elérhetőségét! A fejlesztéshez megfelelő eszközök állnak rendelkezésre. 2001 Németh Gábor: Számítógép architektúrák


Letölteni ppt "VÉGES AUTOMATA ALAPÚ TERVEZÉSI MODELL"

Hasonló előadás


Google Hirdetések