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

Digitális technika (VIMIAA02) Laboratórium 4

Digitális technika (VIMIAA02) Laboratórium 4

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

Digitális technika (VIMIAA01) Laboratórium 4

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

Digitális technika VIMIAA02

Digitális technika VIMIAA02

SZORGALMI FELADAT. 17. Oktober

Összetett feladatok megoldása

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

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

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

Digitális technika (VIMIAA02) Laboratórium 5

Digitális technika (VIMIAA02) Laboratórium 5

Digitális technika VIMIAA01 5. hét

Digitális technika VIMIAA hét

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

Digitális technika VIMIAA hét

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

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

Adatfeldolgozó rendszer tervezése funkcionális elemekkel

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

Dr. Oniga István DIGITÁLIS TECHNIKA 8

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

Digitális technika VIMIAA02 7. hét

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

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

Összeadás BCD számokkal

DIGITÁLIS TECHNIKA I

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

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

DIGITÁLIS TECHNIKA feladatgyűjtemény

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

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

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

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

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

Shor kvantum-algoritmusa diszkrét logaritmusra

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

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

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

Dr. Oniga István DIGITÁLIS TECHNIKA 9

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

A továbbiakban Y = {0, 1}, azaz minden szóhoz egy bináris sorozatot rendelünk

Újrakonfigurálható eszközök

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

DIGITÁLIS TECHNIKA II

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...

5. Hét Sorrendi hálózatok

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

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

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

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

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

Dr. Oniga István DIGITÁLIS TECHNIKA 9

Aszinkron sorrendi hálózatok

Digitális technika - Ellenőrző feladatok

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

Digitális technika (VIMIAA02) Laboratórium 1

Digitális technika (VIMIAA02) Laboratórium 1

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

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

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

Bevezetés a programozásba. 5. Előadás: Tömbök

2. Elméleti összefoglaló

Shannon és Huffman kód konstrukció tetszőleges. véges test felett

2. Fejezet : Számrendszerek

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

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

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

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

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

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

A Gray-kód Bináris-kóddá alakításának leírása

Digitális jelfeldolgozás

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

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

Híradástechikai jelfeldolgozás

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

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

DIGITÁLIS TECHNIKA II

1. Ismertesse az átviteltechnikai mérőadók szolgáltatásait!

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

Szoftverminőségbiztosítás

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

Állapot minimalizálás

funkcionális elemek regiszter latch számláló shiftregiszter multiplexer dekóder komparátor összeadó ALU BCD/7szegmenses dekóder stb...

Matematika. 1. évfolyam. I. félév

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

Digitális technika (VIMIAA02) Laboratórium 3

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

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

DIGITÁLIS TECHNIKA I

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

Architektúra, megszakítási rendszerek

PMU Kezdı lépések. 6-0 Csatlakozás LG GLOFA-GM és SAMSUNG PLC-hez. 6-1 Kommunikáció LG PMU és LG GLOFA-GM7 / GM6 / GM4 között

A mikroprocesszor felépítése és működése

Digitális technika (VIMIAA02) Laboratórium 3

Átírás:

Véges állapotú gépek (FSM) tervezése F1. Tervezzünk egy soros mintafelismerőt, ami a bemenetére ciklikusan, sorosan érkező 4 bites számok közül felismeri azokat, amelyek 3-mal vagy 5-tel oszthatók. A fenti tulajdonságnak megfelelő bit sorozatokat a 4. ütemben, a 4. bit beérkezésével egy időben jelzi, a kimenet 1-be állításával. Egyébként a kimenet a többi bitciklusban legyen 0. F1.a Gondoljuk végig, mi a megadott feltételnek megfelelő számok halmaza és milyen tulajdonság alapján tervezhető sorosan érkező bitek alapján a logika? A soros működésnél melyik sorrendben várjuk a biteket? 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 észrevehető, 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 lenne. 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 (e even) vagy páratlan (o odd) oldalra lép. A 2. és 3. bitek beérkezésével a lehetséges állapotátmenetek 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 a találatot jelző 1 vagy 0 kimeneti értéket. Ennek megfelelően ez egy Mealy FSM. Mivel a

bemeneti bitek megszakítás nélkül, sorban érkeznek egymás után, itt értelemszerűen a Mealy modell szerinti működés a megfelelő, ami a 4. bittel egyidőben jelzi a feltétel esetleges teljesülését. Á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! Az állapotkódoláshoz 3 bites állapotregiszter szükséges, az állapotkódok a beérkező bitek sorszámával és értékével logikusan is kijelölhetők. Az első két bit a sorszám, 0,1,2,3, az utolsó bit a beérkezett bit értéke. Ez a fajta kódolás előnyös az állapotátmeneti függvény egyszerűsíthetőségéhez is.

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 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 kell 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 kimenetet 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 az utolsó 4 mintavételezett 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.