1. A VHDL mint rendszertervező eszköz



Hasonló dokumentumok
III. Alapfogalmak és tervezési módszertan SystemC-ben

Digitális eszközök típusai

Programozás és digitális technika II. Logikai áramkörök. Pógár István Debrecen, 2016

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

LOGIKAI TERVEZÉS. Előadó: Dr. Oniga István Egytemi docens

1. DIGITÁLIS TERVEZÉS PROGRAMOZHATÓ LOGIKAI ÁRAMKÖRÖKKEL (PLD)

VIII. BERENDEZÉSORIENTÁLT DIGITÁLIS INTEGRÁLT ÁRAMKÖRÖK (ASIC)

PROGRAMOZHATÓ LOGIKAI ESZKÖZÖK. Elıadó: Dr. Oniga István Egytemi docens

6. hét: A sorrendi hálózatok elemei és tervezése

Digitális elektronika gyakorlat. A VHDL leírástípusok

Integrált áramkörök/6 ASIC áramkörök tervezése

Hardver leíró nyelvek (HDL)

8.3. AZ ASIC TESZTELÉSE

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

ÁRAMKÖRÖK SZIMULÁCIÓJA

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

Digitális technika VIMIAA01 9. hét

Tartalom Tervezési egység felépítése Utasítások csoportosítása Értékadás... 38

Mikroelektronikai tervezés

MIKROELEKTRONIKA, VIEEA306

Joint Test Action Group (JTAG)

DIGITÁLIS TECHNIKA. Szabó Tamás Dr. Lovassy Rita - Tompos Péter. Óbudai Egyetem Kandó Kálmán Villamosmérnöki Kar LABÓRATÓRIUMI ÚTMUTATÓ

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

Elvonatkoztatási szintek a digitális rendszertervezésben

PROTOTÍPUSKÉSZÍTÉS. Előadó: Dr. Oniga István

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

PAL és GAL áramkörök. Programozható logikai áramkörök. Előadó: Nagy István

Feszültségszintek. a) Ha egy esemény bekövetkezik akkor az értéke 1 b) Ha nem következik be akkor az értéke 0

Végh János Bevezetés a Verilog hardver leíró nyelvbe INCK??? előadási segédlet

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

LOGIKAI TERVEZÉS. Előadó: Dr. Oniga István

A PET-adatgy informatikai háttereh. Nagy Ferenc Elektronikai osztály, ATOMKI

Elektronikai tervezés Dr. Burány, Nándor Dr. Zachár, András

Digitálistechnika II. 1. rész

KAPCSOLÁSI RAJZ KIDOLGOZÁSA

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

Integrált áramkörök/5 ASIC áramkörök

Nagy Gergely április 4.

3. előadás. A TCP/IP modell jelentősége

Digitális technika (VIMIAA02) Laboratórium 4

Programfejlesztési Modellek

ADATBÁZIS-KEZELÉS. Modellek

Hobbi Elektronika. Bevezetés az elektronikába: Logikai kapuáramkörök

Bánsághi Anna 2014 Bánsághi Anna 1 of 31

Digitális technika (VIMIAA02) Laboratórium 4

Digitális elektronika gyakorlat

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

IRÁNYÍTÁSTECHNIKAI ALAPFOGALMAK, VEZÉRLŐBERENDEZÉSEK FEJLŐDÉSE, PLC-GENERÁCIÓK

3. A DIGILENT BASYS 2 FEJLESZTŐLAP LEÍRÁSA

XI. DIGITÁLIS RENDSZEREK FIZIKAI MEGVALÓSÍTÁSÁNAK KÉRDÉSEI Ebben a fejezetben a digitális rendszerek analóg viselkedésével kapcsolatos témákat

Alapkapuk és alkalmazásaik

Adatbázis rendszerek. dr. Siki Zoltán

Digitális technika (VIMIAA02) Laboratórium 3

10. EGYSZERŰ HÁLÓZATOK TERVEZÉSE A FEJLESZTŐLAPON Ennél a tervezésnél egy olyan hardvert hozunk létre, amely a Basys2 fejlesztőlap két bemeneti

Digitális technika (VIMIAA02) Laboratórium 3

Szárazföldi autonóm mobil robotok vezérlőrendszerének kialakítási lehetőségei. Kucsera Péter ZMNE Doktorandusz

Algoritmusok Tervezése. 6. Előadás Algoritmusok 101 Dr. Bécsi Tamás

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

Bev Be e v z e e z t e ő t az ISE re r nds nds e z r e használatához

Hazárdjelenségek a kombinációs hálózatokban

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

A DIGITÁLIS ELEKTRONIKA OKTATÁSÁBAN SIMULATION IN TEACHING OF DIGITAL ELECTRONICS. BALÁSHÁZI BÉLA főiskolai adjunktus VERES GYÖRGY főiskolai adjunktus

Verifikáció és validáció Általános bevezető

OpenCL alapú eszközök verifikációja és validációja a gyakorlatban

Informatika Rendszerek Alapjai

MEMS eszközök redukált rendű modellezése a Smart Systems Integration mesterképzésben Dr. Ender Ferenc

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

CAD Rendszerek I. Sajátosság alapú tervezés - Szinkron modellezés

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

Alkalmazás-orientált szintéziseljárás mikroprocesszoros rendszerekre

A VHDL kódtól az FPGA-ba való ágyazásig From the VHDL Code to the Implementation to FPGA-s

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

Rendszerszintű tervezés: SystemC I.

Hardveres trójai vírusok ASIC és FPGA áramkörökben

Digitális elektronika gyakorlat

Programozható logikai vezérlő

Útjelzések, akadályok felismerése valós időben

Újrakonfigurálható eszközök

Forgalmi modellezés BMEKOKUM209

Kommunikációs rendszerek teljesítőképesség-vizsgálata

2.Előadás ( ) Munkapont és kivezérelhetőség

(Solid modeling, Geometric modeling) Testmodell: egy létező vagy elképzelt objektum digitális reprezentációja.

X. ANALÓG JELEK ILLESZTÉSE DIGITÁLIS ESZKÖZÖKHÖZ

Kapuáramkörök működése, felépítése, gyártása

hét Sorrendi hálózatok tervezési lépései: szinkron aszinkron sorrendi hálózatok esetén

Digitális rendszerek. I. rész. Dr. Turóczi Antal

VHDL alapismeretek. (Xilinx FPGA-k programozása VHDL nyelven) Oktatási jegyzet. Összeállította: dr. Zigó Tamás

PAL és s GAL áramkörök

MIKROELEKTRONIKA, VIEEA306

MŰSZAKI TESZTTERVEZÉSI TECHNIKÁK A TESZT FEJLESZTÉSI FOLYAMATA A TESZTTERVEZÉSI TECHNIKÁK KATEGÓRIÁI

Egyszerű mikroprocesszor RTL modellek (VHDL)

Digitális technika (VIMIAA02) Laboratórium 5.5

Kvantitatív módszerek

IDAXA-PiroSTOP. PIRINT PiroFlex Interfész. Terméklap

11.2. A FESZÜLTSÉGLOGIKA

Acélszerkezetek tűzzel szembeni ellenállása, kapcsolatos problémák

Objektum orientált programozás Bevezetés

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

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

Absztrakció. Objektum orientált programozás Bevezetés. Általános Informatikai Tanszék Utolsó módosítás:

Átírás:

1.1. A gépi tervezés A gépi leíró nyelvek (HDL) célja az egyes termékek egységesítése, logikai szimulációhoz leíró nyelv biztosítása, a terv hierarchikus felépítésének tükrözése és a nagy tervek áttekinthetővé tétele. Többféle nyelv (VHDL, Verilog, SystemC) létezik, de a VHDL vált a legelterjedtebb világszabvánnyá. A HDL nyelvek lehetővé teszik, hogy a mérnökök a terv felépítését és feladatköri jellemzőit a hagyományos kapuszintnél magasabb elvonatkoztatású megjelenési szinten írják le. A következő ábra egy szokásos tervezési folyamatot mutat be a kezdeti elvárásoktól a gyártónak szóló leírásig. Ez utóbbi a programozható kapumátrixok esetén azt a programot jelenti, amellyel fel kell programozni az eszközt, hogy az a kívánt áramkörként működjön. Elvárások Feladatköri terv Regiszterátviteli szint (RTL) Viselkedési szimuláció RTL-szimuláció, statikus igazolás Logikai terv Áramköri terv Logikai szimuláció, statikus igazolás Időzítési szimuláció, áramkörelemzés Fizikai terv Tervezési szabály ellenőrzése Elkészítéshez szükséges leírás 1.1. ábra. Digitális rendszer szokásos tervezési folyamata

1.2. A VHDL általános jellemzése A VHDL a VHSIC Hardware Description Language (VHSIC hardverleíró nyelv), a VHSIC a Very High Speed Integrated Circuits (nagyon nagy sebességű integrált áramkörök) rövidítése. A nyelv a 80-as évek elejéről származik, jelenleg a legfontosabb szabványos nyelvek egyike az előírás (specification), az igazolás (verification) és az elektronikai tervezés területén. Ez annak köszönhető, hogy a nyelv alapleírása teljesen eszközfüggetlen, ezért a megfelelő szintéziseszközök széles skálája készülhetett el hozzá. Az amerikai villamosmérnökök szervezete, az IEEE (IE 3 Institute of Electrical and Electronics Engineers) 1987-ben szabványosította, a szabvány neve: IEEE 1076-1987, és 1993-ban létrehozták a VHDL-szabvány továbbfejlesztett változatát. Az a tény, hogy 1987 óta nemzetközi szabvány, így hivatalosan támogatott, nagymértékben hozzájárult az egyre szélesebb körű felhasználásához. Emiatt a VHDL-re jellemző a tervek átcserélhetősége, a VHDL-modellek garantáltan futnak bármelyik rendszeren, ezzel támogatják a csoportmunkát. A VHDL olyan általános hardvermodellező nyelv, amely a digitális áramkörök különböző elvonatkoztatási szinteken történő, egységes leírására alkalmas. Felhasználható a legkülönbözőbb elektronikai rendszerek tervezésére, különböző céltechnológiákkal, például tervezhetünk vele szilíciumalapú integrált áramkört, hibrid IC-t, nyomtatott áramkört vagy éppen programozható kapumátrixot is. Ilyen programozható kapumátrix-áramkör a Xilinx FPGA vagy az Altera EPLD. Ez utóbbiak kész integrált áramkörök, amelyek felprogramozhatók úgy, hogy különböző felhasználók által tervezett áramkörként működjenek. Így segítségükkel egészen kis darabszám esetén is lehetőség nyílik integrált áramkör alkalmazására a digitális berendezésekben. A VHDL nyelv kiemelkedő tulajdonságai, hogy nyelvi szerkezete átgondolt és technológiafüggetlen. Az utóbbiból adódik, hogy nem kötődik egyetlen szimulátorhoz vagy adatbázishoz sem, és nem erőltet rá a tervezőre egyetlen tervezési módszertant sem. A VHDL lehetővé teszi továbbá az új technológiák beépítését a már létező tervekbe. A technológiafüggetlenségből adódik, azaz abból, hogy független a berendezési és IC-gyártási eljárástól, az, hogy el lehet választani egy szintet, ahol még technológiafüggetlen a terv, de az egyes logikai kapukhoz ezután a különböző technológiáktól függően különböző könyvtárakat lehet rendelni (CMOS, NMOS, 14

Tervezési eljárás VHDL-lel GaAs, FPGA, diszkrét elemek stb.). Emiatt technológiaváltás után is lehet használni a terveket. Használatának előnyei közé tartozik az elektronikai terv fejlesztési idejének a lerövidítése és a terv későbbi módosításának az egyszerűsítése. A VHDL-t eredetileg előírási és modellezőnyelvnek szánták. Az első szimulátorokat a 80-as évek végén fejlesztették ki. Mivel a VHDL nyelv szabványos, a különböző VHDL-alapú tervezési eszközök bemeneti és kimeneti felületei megfeleltethetők egymásnak. Sajnos a VHDL-t nem szabványosították áramkörszintézisre, ugyanakkor a jelenlegi számítógépi teljesítmény lehetővé teszi az áramkörszintézist is. A VHDL elképzelése az, hogy úgynevezett egységeket (entity) határoz meg, amelyeket külső és belső oldalról közelít meg. Ezek az egységek (összetevők, áramkörök, rendszerek) megoszlanak egy külső, látható (egységnév és kapcsolódások) és egy belső vagy rejtett rész (egységalgoritmus és megvalósítás) között. Az egységek egymást ezen a külső határfelületen keresztül használhatják. A VHDL tervezési és modellezési nyelv. Segítségével a számítógép és az ember számára is olvasható alakban le lehet írni a digitális gépi rendszerek, áramköri kártyák és az összetevők, alkatrészek szerkezeti felépítését és feladatkörét. Egy tervezési tárgy VHDL nyelvű leírását VHDL-modellnek hívjuk. A VHDL azért jobb a többi gépi leíró nyelvnél, mert az ezekkel szembeni különböző elvárások mindegyikét kielégíti, például támogatja a különböző tervezési módszereket és tervezési technikákat. Ennek keretében eltérő tervezési módszereket is támogat, például a fentről-lefelé, illetve az alulról-felfelé (könyvtárra támaszkodó) módszert. Hasonlóan különböző tervezési technikák is alkalmazhatók, mint a szinkron és az aszinkron, illetve a PLA- és a random logika. A VHDL egyidejű (concurrent) programozási nyelv, ezért kifejezetten alkalmas igen nagy bonyolultságú digitális rendszerek viselkedésének a leírására. 1.3. Tervezési eljárás VHDL-lel Egy berendezést különböző szinteken lehet leírni, attól függően, hogy az egész rendszer működését akarjuk ábrázolni vagy annak csak egy részegységét. Ezen kívül az egyes leírási módok különböznek attól függően, hogy az egység működésmódját írjuk le, vagy pedig a szerkezeti felépítésére, röviden a szerkezetére (structure) vagyunk 15

kíváncsiak. A VHDL mindkét fajta leírást lehetővé teszi. Segítségével egy tetszőleges digitális áramkört különböző elvonatkoztatási szinteken modellezhetünk. Ezt tükrözi, hogy a VHDL-ben megfogalmazott feladatok három különböző fő elvonatkoztatási szinten írhatók le: Viselkedési (behavioral) leírás: a terv feladatköri vagy algoritmikus megadása sorozatos VHDL-folyamatban van leírva. Adatáramlási (dataflow) leírás: az adatokat a terv bemenetétől a kimenetéig, mint egy folyamat elemeit írjuk le, az egyes lépések egyszerű adatátalakítások. Szerkezeti (structural) leírás: a modellben összetevők (components) egymáshoz való kapcsolódása van megadva. Jellemző rá a leíróképesség széles tartománya, támogatja a digitális rendszer tisztán viselkedési, azaz feladatköri leírását, de támogatja a tisztán szerkezeti modellezését és a fő logikai egységeivel, valamint az azok közötti kapcsolattal való leírását is. Így például elképzelhető, hogy egy nagyobb rendszert szerkezeti leírással kisebbekre bontanak, amelyeket már viselkedési leírással lehet modellezni. A VHDL-alapú tervezés általában a felülről-lefelé és az alulról-felfelé módszer együttes felhasználásával történik. Ennek során, miután megtörtént az egész áramkör általános működésének a maghatározása, az áramkört funkcionális részegységekre bontjuk, majd ezen egységek működésének viselkedési leírása és határfelületeiken keresztüli összekapcsolódásának a meghatározása következik. Természetesen az egész áramkör ki- és bemeneteit is megadjuk. Amikor egy áramköri modellt meghatároztunk, szimulálhatjuk a viselkedési leírásának (vagy az összetevői viselkedési leírásának) a végrehajtásával. Ennek során az adott időtartamot diszkrét lépésekben vizsgáljuk. Egy adott szimulációs időpontban az áramköri egység bemenetén egy bemeneti kapocs értékének változását látjuk, ha az új érték különbözik az előzőtől. Ez a tervezési lépés a leírásokon kívül magába foglalja a részegységek, illetve a teljes áramkör szimulációját, működési helyességének az ellenőrzését. A következő lépés (alulról-felfelé) a részegységek szerkezeti szintű leírása szabványelemek felhasználásával. A részegységek szimulációja után azok összeköttetésének megadása következik, majd az egész rendszer szimulációja. A végső ellenőrzés a kétféle leírás szimulációs eredményeinek az összehasonlítása. 16

Tervezési eljárás VHDL-lel A részegységek modellezésénél optimalizálás is végezhető azzal, hogy a problémás részegységekre több eltérő megvalósítást adunk. Ezek a megvalósítások aztán a vizsgálandó paraméterek alapján összehasonlíthatók. A szintézis (synthesis) mindig két elvonatkoztatási tervezési szint között történik, amelynek során egy magasabb elvonatkoztatási szintről egy alacsonyabbra jutunk úgy, hogy közben többletinformációkat építünk be a modellbe. A tervezés menete fentről lefelé haladva az egyszerűbb tervekből a részletesebbek felé tartva szintézislépésekből áll. Egy ilyen lépést mutat be az 1.2. ábra. Egység (tervezési tárgy kimeneti és bemeneti kapuinak megadása) Feladatköri terv (elképzelt működésmód megadása) Viselkedési szimuláció Szerkezeti leírás (az egység felépítésének megadása a rangsorban egy szinttel lejjebb lévő egységekből) A rangsorban alacsonyabb szintű egységek viselkedésmódjának megadása (természetesen lehet, hogy ezek már létező könyvtári egységek, ebben az esetben a működésmódjuk ismert) Viselkedési szimuláció A terv módosítása A kapott eredmény eltér az előzőekben kapott szimulációs eredményektől? A tervnek az eredetinél egy hierarchiaszinttel részletesebb leírása készen van 1.2. ábra. Egy szintézislépés a VHDL-alapú tervezés folyamatában 17