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 5.5 Fehér Béla Raikovich Tamás, Fejér Attila BME MIT Lab5.5 Pótló labor A félév naptári sajátosságai miatt a heti laboratórium során a korábbi elmaradásokat pótoljuk, illetve, befejezzük a előző heti labor 5_4 feladatát. Javasolt heti menetrend: Október 10 Szerda: LAB5 befejezése Október 11 Csütörtök: LAB3 pótlása, LAB5 befejezése Október 12 Péntek: LAB4 pótlása, LAB5 befejezése Október 13 Szombat: Csütörtöki kurzusoknak extra laboralkalom, LAB5_4 alapján a GYAK6 ban bemutatott STOPPER elkésztése 1
Lab5_4 feladat: BCD számlálók A BCD számlálók sok alkalmazásban a közvetlenül értelmezhető kijelezhetőség miatt hasznos komponensek Üzemmódjai azonosak a BINCNT8 al, de persze 4 biten: szinkron törlés, töltés, engedélyezés, számlálási irány előírása Rendelkeznek végérték jelzéssel (TC, Terminal Count). A BCD számlálóknál ez lényeges, szinte mindig több dekádos számolásra van szükség, TC nélkül nehézkes lenne bővíteni. Tehát a BCD számlálóknál a kaszkádosítás fontos elem, mert csak így tudjuk szükséges méretű egységet realizálni A számlálók modulus csökkentése akár a törlés, akár a töltés funkción keresztül kialakítható, mikor melyik illeszkedik jobban a feladat igényeihez A 4 bites egység interfészei: CLK, RST, LOAD, EN, DIR, D[3:0], Q[3:0] és TC Ha D[3:0] nem BCD kód, a betöltés akkor is lehetséges De a számolás esetleg néhány ütemig hibás lehet, hacsak 2 Lab5_4 feladat: BCD számlálók A feladat a BCD számlálók vizsgálata ISE elindítása, projekt létrehozása Lab5_4.v forrásfájl mintakeret specifikálása clk, rst, mosi, miso LOGSYS GUI vezérlőjelek bt[3:0], sw[7:0], ld[7:0] adat interfészek seg_n[7:0], dig_n[3:0], col[4:0] kijelző interfészek 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 Lab5_4 feladat specifikálása a funkcionális kódrészletekkel: BCD számlálók definiálása és beépí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 3
Lab5_4 feladat: BCD számlálók Multifunkciós regiszter aritmetikai segédáramkörrel Szokásos vezérlések Végérték jelzés az en és dir szerint A szimuláció eredménye 4 Lab5_4 feladat: BCD számlálók A Lab5_4 projekt interfészlistája és a belső jelek A BCD számlálókat dekádonként használjuk A 4 digites számláló lánc az elemi egységek kaszkádosításával építhető fel 5
Lab5_4 feladat: BCD számlálók 4 db BCDCNT beépítése BCD_K, BCD_H, BCD_D és BCD_U néven Figyeljük meg a kaszkádosító jelutat 6 Lab5_4 feladat: numerikus kijelzés Bár fel tudnánk építeni egy 4 digites időmultiplex kijelzőt, de egyszerűbb egy könyvtári elemet használni Ennek típusa LIP_4digit 7
Lab5_4 feladat: szimuláció, ellenőrzés Készítsük el a BCDCNT számláló modult a megadott specifikációval Ellenőrizzük szimulációval néhány tesztvektorral Építsük be a 4 bites modult 4 példányban Egészítsük ki a LIP_4digit.v 4 digites hétszegmenses kijelző egységgel Generáljuk a konfigurációs adatfájlt Letöltés után ellenőrizzük a működést A kijelzés teljesen függetlenül fut a számlálótól, tehát annak vezérlése tetszőleges ütemezéssel lehetséges 8 Lab5.5 EXTRA feladat A tervezendő projekt a gyakorlaton megismert STOPPER óra megvalósítása a LOGSYS Spartan3E FPGA kártyán Specifikáció: START STOP RESET üzemmódú működés 0,01 mp pontosságú mérés 4 digites kijelzés a 7 szegmenses kijelzőn, mérési tartomány max. 1 perc (Kijelzés 59.99) Vezérlés a LOGSYS LDC programozó MOSI jelével 9
Lab5.5 EXTRA feladat A STOPPER funkcióhoz az időmérő számláncon felül szükségünk van egy 0,01 mp pontosságú időalapra is, amely a mérést ütemezi. A GYAK6 alapján ezt a 16MHz kvarcpontosságú órajelből, 160000 es leosztással állíthatjuk elő. Határozza meg a 160000 modulusú bináris számláló szükséges méretét, készítse el Verilog HDL kódját. Azidőalap segítségével építse fel a STOPPER óra teljes áramkörét Generálja a konfigurációs fájlt és ellenőrizze a működést! 10