Digitális technika (VIMIAA02) Laboratórium 4

Hasonló dokumentumok
Digitális technika (VIMIAA02) Laboratórium 4

Digitális technika (VIMIAA01) Laboratórium 4

Digitális technika (VIMIAA02) Laboratórium 5

Digitális technika (VIMIAA02) Laboratórium 5

Digitális technika (VIMIAA02) Laboratórium 5.5

Digitális technika (VIMIAA02) Laboratórium 1

Digitális technika (VIMIAA02) Laboratórium 1

Digitális technika (VIMIAA02) Laboratórium 3

Digitális technika (VIMIAA02) Laboratórium 3

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

Digitális technika VIMIAA02

Digitális technika VIMIAA02

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

Digitális technika (VIMIAA01) Laboratórium 2

Digitális technika (VIMIAA01) Laboratórium 2

Digitális technika (VIMIAA02) Laboratórium 2

A LOGSYS GUI. Fehér Béla Raikovich Tamás, Laczkó Péter BME MIT FPGA laboratórium

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

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

Digitális technika VIMIAA01 9. hét

Digitális technika Xilinx ISE GUI használata

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

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

SZORGALMI FELADAT. 17. Oktober

Laborgyakorlat 3 A modul ellenőrzése szimulációval. Dr. Oniga István

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

DIGITÁLIS TECHNIKA (VIMIAA02)

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

Digitális technika (VIMIAA01) Laboratórium 9

Összetett feladatok megoldása

Digitális technika (VIMIAA01) Laboratórium 9

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

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

Digitális technika VIMIAA02 7. hét

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

Digitális technika VIMIAA01 5. hét

Digitális technika Laboratórium 6.

Dr. Oniga István DIGITÁLIS TECHNIKA 8

Adatfeldolgozó rendszer tervezése funkcionális elemekkel

Újrakonfigurálható eszközök

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

Mérési jegyzőkönyv. az ötödik méréshez

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

LOGSYS EGYSZERŰ ALKALMAZÁS KÉSZÍTÉSE A LOGSYS KINTEX-7 FPGA KÁRTYÁRA A XILINX VIVADO FEJLESZTŐI KÖRNYEZET HASZNÁLATÁVAL június 16. Verzió 1.

A LOGSYS rendszer ismertetése

Digitális technika VIMIAA hét

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

Hardver leíró nyelvek (HDL)

Digitális technika VIMIAA hét

Dr. Oniga István DIGITÁLIS TECHNIKA 9

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

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

8.3. AZ ASIC TESZTELÉSE

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

Nyolcbites számláló mintaprojekt

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

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

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

Beágyazott és Ambiens Rendszerek Laboratórium BMEVIMIA350. Mérési feladatok az 1., 2. és 3. mérési alkalomhoz

Újrakonfigurálható eszközök

Verilog ismertető (Szántó Péter, BME MIT, )

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

Digitális technika (VIMIAA01) Laboratórium 1

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 házi feladat III. Megoldások

Attribútumok, constraint-ek

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

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

Mikrorendszerek tervezése

Dr. Oniga István DIGITÁLIS TECHNIKA 9

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

2008. október 9. Verzió

Budapesti Műszaki és Gazdaságtudományi Egyetem. A Verilog HDL II. Nagy Gergely. Elektronikus Eszközök Tanszéke (BME) szeptember 26.

LOGSYS LOGSYS SPARTAN-3E FPGA KÁRTYA FELHASZNÁLÓI ÚTMUTATÓ szeptember 19. Verzió

Digitális technika VIMIAA01

Verilog HDL ismertető 4. hét : hét dia

Digitális technika VIMIAA02

Szántó Péter BME Méréstechnika és Információs Rendszerek Tanszék, FPGA Labor

Mintavételes szabályozás mikrovezérlő segítségével

Állapot minimalizálás

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

A fealdatot két részre osztjuk: adatstruktúrára és vezérlőre

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

Digitális technika (VIMIAA02) Laboratórium 12

Digitális technika (VIMIAA02) Laboratórium 12

Áramkörök elmélete és számítása Elektromos és biológiai áramkörök. 3. heti gyakorlat anyaga. Összeállította:

5. Hét Sorrendi hálózatok

Mikrorendszerek tervezése

Alapszintű formalizmusok

Hobbi Elektronika. A digitális elektronika alapjai: Sorrendi logikai áramkörök 4. rész

EB134 Komplex digitális áramkörök vizsgálata

Újrakonfigurálható eszközök

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

DIGITÁLIS TECHNIKA I

LOGSYS DIGITÁLIS VIDEO INTERFÉSZ MEGVALÓSÍTÁSA A LOGSYS KINTEX-7 FPGA KÁRTYÁVAL június 16. Verzió 1.0.

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

Kombinációs hálózatok és sorrendi hálózatok realizálása félvezető kapuáramkörökkel

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

Digitális technika VIMIAA 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

Átírás:

BUDAPESTI MŰSZAKI ÉS GAZDASÁGTUDOMÁNYI EGYETEM VILLAMOSMÉRNÖKI ÉS INFORMATIKAI KAR MÉRÉSTECHNIKA ÉS INFORMÁCIÓS RENDSZEREK TANSZÉK Digitális technika (VIMIAA02) Laboratórium 4 Fehér Béla Raikovich Tamás, Fejér Attila BME MIT

Lab4_1 feladat: Regiszter és D flip-flop A feladat a regiszter és D flip-flop működésének vizsgálata ISE elindítása, projekt létrehozása Lab4_1.v forrásfájl mintakeret specifikálása sw[7:0], ld[7:0] adat be- és kimenetek clk, rst, mosi, vezérlőjelek a LOGSYS GUI alkalmazásból LOGSYS_SP3E.UCF fájl hozzáadása és adaptálása a kívánt interfészekhez (sw, ld, clk, rst, mosi interfészek, ) A Lab4_1 feladatok specifikálása a funkcionális kódrészletekkel Funkcionális kód ellenőrzése szimulációval Konfigurációs fájl generálása, letöltése és a működés tesztelése a kártyán Digit labor 4., 2014.08.18. (v1.0) 1

Lab4_1 feladat: Regiszter és D flip-flop D flip-flop használata A legáltalánosabban használt flip-flop A több bites regiszterek alap építőeleme A CLK órajel (vagy lefutó) élére mintavételez és ezt a következő felfutó él váltásig tartja A D flip-flop-ot mindig viselkedési leírással specifikáljuk always @(posedge clk) típusú érzékenységi lista A rendszer a technológiai környezet megfelelő elemét példányosítja Minden vezérlőjel (D, R, CE) egyedi időzítési előírását (t su, t h ) az órajel aktív éléhez képest kell betartani 2

Lab4_1 feladat: Regiszter és D flip-flop always @ (posedge clk) blokkal Figyeljük meg a működést és az időzítési viszonyokat A CLK élénél ha a RESET nem aktív és a CE engedélyezett, akkor mintát vesz D-ből és ezt tartja a kimeneten a következő eseményig Tehát a legalább 1 órajel hosszú pulzusokból biztosan mintát vesz. Ellenőrizzük szimulációval! 3

Lab4_1 feladat: Regiszter és D flip-flop A feladatban a REG8R resetelhető 8 bites regiszter belső struktúrájának hangsúlyozására az egységet 8 db D_FF beépítésével építjük fel. A későbbiekben ennél tömörebb specifikációt alkalmazunk A REG8R egységet pedig egy befoglaló Lab4_1.v top_level keretbe foglaljuk, a következő interfész összerendeléssel: sw[7:0] D[7:0], clk clk, rst rst, MOSI load, Q[7:0] ld[7:0]. Generáljuk a konfigurációs adatfájlt 4

Lab4_1 feladat: Regiszter és D flip-flop Letöltés után ellenőrizzük a működést Órajel: LOGSYS GUI BitBang I/O Órajel 1-100Hz, vagy pulzusonként, ill. élenként ( ) Szinkron RST pulzus vagy konstans High-Low érték MOSI soros kim. MISO soros bem. Részletekért lásd a dokumentációt Egyszerű használati tippek a következő dián 5

Lab4_1 feladat: Regiszter és D flip-flop Javaslat a BitBang I/O használatára Folytonos 10Hz órajelet adjunk ki Sync RST 3 pulzusig aktív MOSI Data out legyen 010 minta A MOSI pulzus megjelenésekor a élre a regiszter mintát vesz a bemenetből, tehát SW LD 6

Sorrendi hálózatok, FSM vezérlők Az egyszerű sorrendi hálózatok, véges állapotú gépek (FSM) a leggyakrabban használt digitális egységek vezérlők, mintagenerátorok, mintafelismerők tervezésére Az FSM lényegében közvetlen digitális áramköri megvalósítása az állapotdiagramban felrajzolt működésnek, ennek megfelelően kis számú állapot és bemeneti/kimeneti jel esetén szinte tetszőleges működést (több utas egylépéses, közvetlen állapotátmenetek) képes realizálni A következő feladatokban egyszerű FSM-ek példáin (LED villogtatás, a 110 bitminta generálása) mutatjuk be a flexibilitást és tervezési lehetőségeket Az egységek interfészei: CLK, RST, MOSI, MISO (LOGSYS GUI jelek, vezérelhetők) Esetleg LED-ek a működés demonstrálására 7

Lab4_2 feladat: LED villogtatás A feladat az egyszerű sorrendi hálózat tervezési lépéseinek megismerése ISE elindítása, projekt létrehozása Lab4_2.v forrásfájl mintakeret specifikálása clk, rst LOGSYS GUI vezérlőjelek mosi, miso LOGSYS GUI soros adat interfész jelek ld[7:0] esetleges kijelzés LOGSYS_SP3E.UCF fájl hozzáadása és adaptálása a kívánt interfészekhez (vezérlő és adat interfészek) A Lab4_2 feladat specifikálása a funkcionális kódrészletekkel: BLINK sorrendi hálózat, mint önálló modul elkészítése Funkcionális kód ellenőrzése szimulációval Konfigurációs fájl generálása, letöltése és a működés tesztelése a kártyán 8

Lab4_2 feladat: LED villogtatás A BLINK sorrendi hálózat specifikációja RST hatására alaphelyzetben vár, kimenete 0 Ha a BLINK bemeneti jel 1-be vált, akkor a kimenet aktív lesz és folyamatosan 1-0-1-0 sorozatot ad ki az órajel ütemében A BLINK jel kikapcsolására újra alaphelyzetbe áll és vár Előzetes állapotdiagram a szöveges specifikáció alapján: 3 állapot: INIT, ON, OFF BLINK=0 BLINK=1 BLINK=1 INIT/0 ON/1 OFF/0 9 BLINK=0

Lab4_2 feladat: LED villogtatás A tervezés következő lépése: állapotminimalizálás Észrevehetően az INIT és OFF állapotok ekvivalensek: Azonos kimenetet adnak Azonos bemenetre azonos (vagy ekvivalens) állapotba lépnek Tehát összevonhatók: legyen a megmaradó állapot az OFF A maradó 2 állapot 1 biten kódolható: OFF -> 0, ON -> 1 OFF/0 BLINK=0 BLINK=1 ON/1 BLINK értékétől függetlenül visszalép 10

Lab4_2 feladat: LED villogtatás A végleges specifikáció megadása Verilog HDL nyelven Állapotregiszter műveletek Állapotregiszter definiálása (1 bit) Állapotkódok felsorolása Kezdeti RST állapot előírása CLK élre következő állapot Állapot átmeneti logika Az állapotdiagram szerint Feltételes vagy közvetlen Kimeneti logika Moore modell, az állapot alapján 11

Lab4_2 feladat: BLINK ellenőrzése A vezérlők működése egyszerűen szimulálható, de gyakran nehezen értékelhető a hullámforma alapján A BLINK_TF.v minta tesztkörnyezetet kiegészítjük A folyamatos órajel generátorral És bevezetünk egy state_label szimulációs változót ASCII karakteres állapot információk kiíratásához 12

Lab4_2 feladat: BLINK ellenőrzése A hullámforma ablakban a state_label[23:0] változóra az ASCII kijelzést állítjuk be A szimuláció eredménye néhány tesztvektorral Generáljuk a konfigurációs adatfájlt Letöltés után ellenőrizzük a működést 13

Lab4_2 feladat: BLINK ellenőrzése A működést a LOGSYS GUI vezérlőjelekkel teszteljük A jeleket BitBang módban adjuk ki Az órajel léptethető, futtatható Küldhető RST jel A MOSI jel (= BLINK) lehet: Statikus High-Low Vagy adott bitminta és Send Ezek az elsődleges interfészjelek megfigyelhetőek 14

Lab4_3 feladat: bitminta generátor A feladat egyszerű véges állapotú gép (FSM) tervezése ISE elindítása, projekt létrehozása Lab4_3.v forrásfájl mintakeret specifikálása clk, rst, mosi, miso LOGSYS GUI vezérlőjelek LOGSYS_SP3E.UCF fájl hozzáadása és adaptálása a kívánt interfészekhez (vezérlő és adat interfészek) A Lab4_3 feladat specifikálása a funkcionális kódrészletekkel: FSM_CNT Funkcionális kód ellenőrzése szimulációval Konfigurációs fájl generálása, letöltése és a működés tesztelése a kártyán 15

Lab4_3a feladat: bitminta generátor Tervezzünk egy vezérlőegységet (FSM) ami a RST pulzus után periódikusan a 011011011011011 sorozatot adja ki (az INP bemeneti jeltől függetlenül) A vezérlő állapotdiagramja: A/0 B/1 C/1 3 állapot (A, B, C), kezdőállapot az A állapot Minden állapotátmenet feltétel nélkül, az órajel ütemében történik 1 kimenet jel (OUT), az A állapotban 0 értékű, a B, és C állapotokban 1 értékű Moore modell 16

Lab4_3a feladat: bitminta generátor Az állapotregiszter minimális mérete: 2 bit Állapotkódolás: A = 00, B = 01, C =10 (lehetne más is) Az állapotregiszter és az állapot átmeneti logika 17

Lab4_3a feladat: bitminta generátor A kimeneti logika A szimuláció eredménye Generáljuk a konfigurációs adatfájlt Letöltés után ellenőrizzük a működést 18

Lab4_3b feladat: bitminta generátor Módosítsuk úgy a vezérlőegységet (FSM), hogy csak az INP pulzus hatására adja ki a 011 3 bites mintát. Amennyiben INP folyamatosan 1, akkor működése legyen azonos a korábbi FSM-mel. A túl gyakori pulzusokat elveszítheti. A módosított vezérlő állapotdiagramja: INP=0 A/0 B/1 C/1 INP=1 Továbbra is 3 állapot (A, B, C), kezdőállapot az A állapot Az első állapotátmenet feltételes, a többi feltétel nélküli, de mindegyik az órajel ütemében történik 1 kimenet jel (OUT), az A állapotban 0 értékű, a B, és C állapotokban 1 értékű Moore modell 19

Lab4_3b feladat: bitminta generátor Az állapotregiszter minimális mérete: 2 bit Állapotkódolás: A = 00, B = 01, C =10 (lehetne más is) Az állapotregiszter és az új állapotátmeneti logika 20

Lab4_3b feladat: bitminta generátor A kimeneti logika A szimuláció eredménye Generáljuk a konfigurációs adatfájlt Letöltés után ellenőrizzük a működést 21