Véges állapotú gépek (FSM) tervezése

Hasonló dokumentumok
Véges állapotú gépek (FSM) tervezése

Véges állapotú gépek (FSM) tervezése

Megoldás Digitális technika I. (vimia102) 4. gyakorlat: Sorrendi hálózatok alapjai, állapot gráf, állapottábla

Digitális technika (VIMIAA02) Laboratórium 4

Digitális technika házi feladat III. Megoldások

Digitális technika VIMIAA02

Digitális technika VIMIAA02

1. Kombinációs hálózatok mérési gyakorlatai

Digitális technika (VIMIAA02) Laboratórium 4

SZORGALMI FELADAT. 17. Oktober

Digitális technika (VIMIAA01) Laboratórium 4

Összetett feladatok megoldása

Digitális technika VIMIAA hét

Szekvenciális hálózatok és automaták

Digitális technika (VIMIAA02) Laboratórium 5

Digitális technika (VIMIAA02) Laboratórium 5

Digitális technika VIMIAA hét

Számlálók és frekvenciaosztók Szinkron, aszinkron számlálók

D I G I T Á L I S T E C H N I K A Gyakorló feladatok 3.

Digitális technika VIMIAA01 5. hét

2) Tervezzen Stibitz kód szerint működő, aszinkron decimális előre számlálót! A megvalósításához

DIGITÁLIS TECHNIKA I

Adatfeldolgozó rendszer tervezése funkcionális elemekkel

Kiegészítő segédlet szinkron sorrendi hálózatok tervezéséhez

1. Kombinációs hálózatok mérési gyakorlatai

4. hét: Ideális és valódi építőelemek. Steiner Henriette Egészségügyi mérnök

Digitális technika VIMIAA01 5. hét Fehér Béla BME MIT

5. KOMBINÁCIÓS HÁLÓZATOK LEÍRÁSÁNAK SZABÁLYAI

Dr. Oniga István DIGITÁLIS TECHNIKA 8

DIGITÁLIS TECHNIKA feladatgyűjtemény

7.hét: A sorrendi hálózatok elemei II.

5. Hét Sorrendi hálózatok

A feladatokat önállóan, meg nem engedett segédeszközök használata nélkül oldottam meg: Olvasható aláírás:...

Számlálók, adatfeldolgozó egységek

10. Digitális tároló áramkörök

Összeadás BCD számokkal

Laborgyakorlat Logikai áramkörök számítógéppel segített tervezése (CAD)

LOGIKAI TERVEZÉS HARDVERLEÍRÓ NYELVEN. Dr. Oniga István

The Architecture of Computer Hardware and Systems Software: An InformationTechnology Approach 3. kiadás, Irv Englander John Wiley and Sons 2003

Digitális technika VIMIAA02 7. hét Fehér Béla BME MIT

Digitális technika VIMIAA02 7. hét

Digitális technika II. (vimia111) 5. gyakorlat: Tervezés adatstruktúra-vezérlés szétválasztással, vezérlőegység generációk

Ellenőrző mérés mintafeladatok Mérés laboratórium 1., 2011 őszi félév

Digitális Technika. Dr. Oniga István Debreceni Egyetem, Informatikai Kar

Máté: Számítógép architektúrák

Laborgyakorlat Logikai áramkörök számítógéppel segített tervezése (CAD)

Shor kvantum-algoritmusa diszkrét logaritmusra

Hobbi Elektronika. A digitális elektronika alapjai: Kombinációs logikai hálózatok 1. rész

Verilog HDL ismertető 2. hét : 1. hét dia

3.6. HAGYOMÁNYOS SZEKVENCIÁLIS FUNKCIONÁLIS EGYSÉGEK

Máté: Számítógép architektúrák

Logikai áramkörök. Informatika alapjai-5 Logikai áramkörök 1/6

Yottacontrol I/O modulok beállítási segédlet

PWM elve, mikroszervó motor vezérlése MiniRISC processzoron

Dr. Oniga István DIGITÁLIS TECHNIKA 9

Számítógép felépítése

Előadó: Nagy István (A65)

Dr. Oniga István DIGITÁLIS TECHNIKA 9

4. Fejezet : Az egész számok (integer) ábrázolása

Számítógépes Hálózatok. 7. gyakorlat

DIGITÁLIS TECHNIKA 7. Előadó: Dr. Oniga István

A/D és D/A átalakítók gyakorlat

DIGITÁLIS TECHNIKA 8 Dr Oniga. I stván István

Állapot minimalizálás

2. Elméleti összefoglaló

Digitális technika - Ellenőrző feladatok

2. Fejezet : Számrendszerek

Újrakonfigurálható eszközök

A tervfeladat sorszáma: 1 A tervfeladat címe: ALU egység 8 regiszterrel és 8 utasítással

Információk. Ismétlés II. Ismétlés. Ismétlés III. A PROGRAMOZÁS ALAPJAI 2. Készítette: Vénné Meskó Katalin. Algoritmus. Algoritmus ábrázolása

Digitális technika VIMIAA02 2. EA Fehér Béla BME MIT

A gyakorlatokhoz kidolgozott DW példák a gyakorlathoz tartozó Segédlet könyvtárban találhatók.

Adatszerkezetek Adatszerkezet fogalma. Az értékhalmaz struktúrája

Mintavételezés tanulmányozása. AD - konverzió. Soros kommunikáció

Digitális technika VIMIAA01

Digitális technika (VIMIAA02) Laboratórium 1

Szűrő architektúrák FPGA realizációjának vizsgálata

Digitális technika VIMIAA02

Digitális technika VIMIAA01

Digitális technika (VIMIAA02) Laboratórium 1

XXI. Országos Ajtonyi István Irányítástechnikai Programozó Verseny

10-es számrendszer, 2-es számrendszer, 8-as számrendszer, 16-os számr. Számjegyek, alapműveletek.

DIGITÁLIS TECHNIKA NORMÁL BCD KÓD PSZEUDOTETRÁDOK AZONOSÍTÁSA A KARNAUGH TÁBLÁN BCD (8421) ÖSSZEADÁS BCD ÖSSZEADÁS: +6 KORREKCIÓ

Hobbi Elektronika. A digitális elektronika alapjai: További logikai műveletek

3. óra Számrendszerek-Szg. történet

Mikroprocesszor CPU. C Central Központi. P Processing Számító. U Unit Egység

Digitális technika (VIMIAA02) Laboratórium 2

Aszinkron sorrendi hálózatok

AF 088II DIO 16/8 AF 088II DIO 16. Digitális ki-, bemeneti modul. Digitális bemeneti modul

DIGITÁLIS TECHNIKA I BINÁRIS SZÁMRENDSZER BEVEZETŐ ÁTTEKINTÉS BINÁRIS SZÁMRENDSZER HELYÉRTÉK. Dr. Lovassy Rita Dr.

Digitális technika (VIMIAA02) Laboratórium 3

A feladatokat önállóan, meg nem engedett segédeszközök használata nélkül oldottam meg: Olvasható aláírás:...

Versenyző kódja: 28 27/2012. (VIII. 27.) NGM rendelet MAGYAR KERESKEDELMI ÉS IPARKAMARA. Országos Szakmai Tanulmányi Verseny.

Digitális technika (VIMIAA02) Laboratórium 3

A feladatokat önállóan, meg nem engedett segédeszközök használata nélkül oldottam meg. Olvasható aláírás:...minta VIZSGA...

Digitális Technika. Dr. Oniga István Debreceni Egyetem, Informatikai Kar

Informatika érettségi vizsga

1. Az adott kapcsolást rajzolja le a lehető legkevesebb elemmel, a legegyszerűbben. MEGOLDÁS:

LOGSYS LOGSYS SZTEREÓ CODEC MODUL FELHASZNÁLÓI ÚTMUTATÓ szeptember 16. Verzió

3. óra Számrendszerek-Szg. történet

Átírás:

Véges állapotú gépek (FSM) tervezése F1. A 2. gyakorlaton foglalkoztunk a 3-mal vagy 5-tel osztható 4 bites számok felismerésével. Abban a feladatban a bemenet bitpárhuzamosan, azaz egy időben minden adatbit rendelkezésre állt. Tervezzünk egy soros mintafelismerőt, ami a bemenetére ciklikusan sorosan érkező 4 bites számok közül felismeri a fenti tulajdonságnak megfelelő bitsorozatokat és a 4. ütemben, a 4. bit beérkezésével egy időben jelzi a feltétel teljesülését, a kimenet 1-be állításával. Egyébként a kimenet a többi bitciklusban legyen 0. F1.a Idézzük fel, mi volt a megadott feltételnek megfelelő számok halmaza és milyen tulajdonság alapján terveztük meg a párhuzamos kombinációs logikai hálózatot a feladat végrehajtására? A soros működésnél melyik sorrendben várjuk a biteket? A korábban már megoldott feladat alapján a feltételeket kielégítő számok: 0, 3, 5, 6, 9, 10, 12, 15. A lehetséges értékhalmaz fele, azaz 8 érték. A bitmintákat elemezve észrevettük, hogy a jó értékekre jellemző az adatbitek páros paritása, tehát 4 bitre a párhuzamos megoldás egy XNOR függvény volt. A soros mintafelismerő egy lehetséges verziója is e tulajdonság alapján származtatható. A 4 bites beérkező minták páros paritását kell vizsgálnunk. A beérkező bitsorrend ebben az esetben érdekes módon ill. természetesen közömbös. Egyrészt a nyolc bitminta mindegyikének szimmetrikus párja is szerepel a jó értékek között, ezért nyilván a bitsorrend megcserélhető. Másrészt a páros/páratlan paritás tulajdonság csak a 0 és/vagy az 1 bitek számosságától függ, és független a számolás sorrendjétől. De feltételezhetjük a továbbiakban, hogy pl. MSb-vel (legnagyobb helyiértékű bit) kezdve érkeznek a bitek, ha ez segít a feladat megoldásában. F1.b Tervezze meg a mintafelismerő egység állapotdiagramját és előzetes állapottábláját az FSM-ek általános felépítését választva! A páros paritást felismerő állapotdiagram a következő: RESET után, vagy minden 4. ciklusban a rendszer az INIT állapotba kerül. A következő 4 bit első beérkező bitje alapján a páros (even) vagy páratlan (odd) oldalra lép. A 2. és 3. bitek beérkezésével a lehetséges váltások lényegében a páros-páratlan tulajdonság megtartását vagy váltását jelentik. A 3.

bit beérkezése után a 4. bit hatására visszalép az INIT állapotba, egyúttal a kimeneten kiadja az találatot jelző 1 vagy 0 kimeneti értéket. Ennek megfelelően ez egy Mealy FSM. Állapotminimalizálás sajnos nem lehetséges, mert meg kell különböztetni a 4 bit beérkezési fázisát, és minden bitnél szükséges a páros-páratlan megkülönböztetés is. Az állapot átmeneti tábla a következő: F1.b Tervezze meg az áramkört Verilog HDL specifikáció alapján, a nyelvi elemek kedvező alkalmazásával!

SZORGALMI FELADAT F1.c Tervezze meg az áramkört egy bemeneti véges hosszú memória használatával, és a minta párhuzamos felismerésével! Az áramkör az előírt specifikáció szerint működik? Milyen kiegészítésre van szükség, az eredeti specifikáció kielégítéséhez? A bemeneti soros memória egység szükséges mérete 3 bit. Az adatbitek az így kialakult 3 bites shiftregiszterbe ütemenként belépnek, tárolódnak és a negyedik ütemben a 4 bites bitminta minden bitje (az aktuális bemeneti bitet is tartalmazva) rendelkezésre áll. Ezért alkalmazható a második gyakorlat F4. feladatában is használt 4 változós XNOR kapu a kimenet előállítására. MEGJEGYZÉS: A soros bemeneti memóriát használó ciklikus (azaz nem csúszóablakos, mindig a legutolsó biteken dolgozó felismerő) mintafelismerők esetében sajnos egy komoly problémát meg kell oldani. A kimeneti jel csak minden 4. ütemben lehet érvényes, addig nullázni kell. Az átmeneti időszakban, amikor egy korábbi mintafelismerés befejeződött és az új minta bitjei lépegetnek be a soros memóriába, a rendszer önmagában nem biztosítja az adatméretnek megfelelő ciklus (jelen esetben 4) kivárását, a párhuzamos kiértékelő esetleg a shiftregiszter átmeneti tartalma és az aktuális bemenet alapján is generálhat találatot jelző kimeneti jelet. Amennyiben garantált, hogy a kimeneti jelet fogadó és feldolgozó hálózat a kimenetet mindig csak a 4 bites adathatárnak megfelelő pillanatban használja fel, akkor használhatnánk az egyszerű soros bemeneti memóriás megoldást minden kiegészítés nélkül. (Ez azt jelentené, hogy a kimenet az 1.,2.,3. bitciklusokban közömbös lehet, ami egy jó példa lehetne az NTSH, Nem Teljesen Specifikált Hálózatra, amikkel mi a tárgyban most nem foglalkozunk).

De a feladat specifikációja ezt nem engedi meg, tehát az egyszerű soros memóriás mintafelmerőnket ki kel egészítenünk egy olyan hálózattal, ami csak minden 4. ciklusban engedélyezi a kimenetet. Egy lehetséges megoldás egy 4 bites jobbra léptető visszacsatolt shiftregiszter 1000 kezdeti tartalommal, aminek kilépő bitje ÉS kapcsolatban van a 4 bites XNOR kapu kimenetével. Ez kapuzza/korlátozza a kiértékelő függvény megjelenését a kimeneten, úgy, hogy az 1., 2., 3. bitciklusokban a kimenet tiltva 0 kimenetet ad. A megoldás Verilog HDL kódja: A soros bemeneti 3 bites memória és a 4 bites XNOR függvény. A 4 ütemű kimeneti érvényesítést biztosító részhálózat: A második megoldás több bittárolót használ (3 + 4), mint az első (3), azonban talán áttekinthetőbb, és valószínűleg a tesztelése is egyszerűbb.

F2. Tervezzen egy regiszterekből és műveletvégző egységekből álló adatfeldolgozót, ami képes egy mintasorozat utolsó 4 adatának átlagát kiszámolni (pl. a napi hőmérsékletek alapján). A bemeneti és a kimeneti adatformátum 8 bites, az adatok korlátosak, túlcsordulás nem lehetséges. F2.a Első lépésként tervezze meg a 4 utolsó adatot tároló, 8 bites regiszterekből álló egységet. Rajzolja fel az egyes regiszterekben R0, R1, R2, R3 tárolt adatok értékeit, ha a bemeneti sorozat adatai (kb. a heti délutáni időjárás előrejelzés): x(0) = 21, x(1) = 19, x(2) = 22, x(3) = 20, x(4) = 27, x(5) = 22, x(6) = 20, x(7) = 21, x(8) = 18, x(1) = 22, F2.b Írjuk fel az átlag kiszámításának aritmetikai összefüggését! Milyen műveletvégzőkre, funkcionális egységekre van szükség a feladat elvégzéséhez? y(t) = 1/4*(x(t-4) + x(t-3) + x(t-2) + x(t-1)) = 1/4*(R0 + R1 + R2 + R3) Az átlag kiszámítása a 4 adat összegzését és 4-gyel történő osztását jelenti. Ez utóbbi művelet a bináris számrendszerben megfelel a 2-vel történő jobbra léptetésnek. Lehetséges a műveletet az adatok egyenkénti osztásával is elvégezni, de ez nagyobb kerekítési hibát okoz. y(t) = R0/4 + R1/4 + R2/4 + R3/4 F2.c Rajzolja fel a teljes átlagszámító egységet, a kimeneti átlagot is egy regiszterben eltárolva. 4 regiszter egymás után X R0 R1 R2 R3 a fenti ábra szerint A regiszterek kimenetei egy-egy 8 bites összeadóra mennek, ezek kimenetei fa struktúrában egy újabb 8 bites összeadóra. Ennek kimenetét egy 2 bites jobbra shiftelő kapja, ami a 2 bites léptetéssel realizálja ¼ -es skálázást, balról 0-kat beléptetve. A kimenetet egy újabb regiszterbe írjuk.