Dr. Kincses Zoltán, Dr. Vörösházi Zsolt: FPGA-alapú beágyazott rendszerek tervezése

Hasonló dokumentumok
Dr. Kincses Zoltán, Dr. Vörösházi Zsolt: FPGA-alapú beágyazott rendszerek tervezése

Dr. Kincses Zoltán, Dr. Vörösházi Zsolt: FPGA-alapú beágyazott rendszerek tervezése

Dr. Kincses Zoltán, Dr. Vörösházi Zsolt: FPGA-alapú beágyazott rendszerek tervezése

Perifériák hozzáadása a rendszerhez

Mikrorendszerek tervezése

Programmable Chip. System on a Chip. Lazányi János. Tartalom. A hagyományos technológia SoC / PSoC SoPC Fejlesztés menete Mi van az FPGA-ban?

Dr. Kincses Zoltán, Dr. Vörösházi Zsolt: FPGA-alapú beágyazott rendszerek tervezése

Témakiírások 2014/15. őszi félévben

2004 Xilinx, Inc. All Rights Reserved. EDK Overview Xilinx, Inc. All Rights Reserved

Dr. Kincses Zoltán, Dr. Vörösházi Zsolt: FPGA-alapú beágyazott rendszerek tervezése

Dr. Kincses Zoltán, Dr. Vörösházi Zsolt: FPGA-alapú beágyazott rendszerek tervezése

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

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

Dr. Kincses Zoltán, Dr. Vörösházi Zsolt: FPGA-alapú beágyazott rendszerek tervezése

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

Rendszerarchitektúrák labor Xilinx EDK

ISE makró (saját alkatrész) készítése

Mikrorendszerek tervezése

A ChipScope logikai analizátor

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

Rendszerarchitektúrák labor Xilinx EDK

Tervezési módszerek programozható logikai eszközökkel

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

Nyolcbites számláló mintaprojekt

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

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

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.

Raikovich Tamás BME MIT

A Picoblaze Core implementálása FPGA-ba

Raikovich Tamás BME MIT

Mikrorendszerek tervezése

1 Laboratóriumi gyakorlat

Mobil Informatikai Rendszerek

LOGIKAI TERVEZÉS HARDVERLEÍRÓ NYELVEN. Előadó: Dr. Oniga István

Digitális technika Xilinx ISE GUI használata

BME-MIT. Linux board bringup

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

Tervezési módszerek programozható logikai eszközökkel

A Memory Interface Generator (MIG) beállítása a Logsys Kintex-7 FPGA kártyához

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

Tervezési módszerek programozható logikai eszközökkel

Szoftvertelepítési útmutató NPD HU

Bevezető az ISE rendszer használatához

Dr. Vörösházi Zsolt: Beágyazott rendszerek fejlesztése (FPGA) A felsőfokú informatikai oktatás minőségének fejlesztése, modernizációja

Mikrorendszerek tervezése

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Ó

Digitális technika (VIMIAA02) Laboratórium 1

Digitális technika (VIMIAA02) Laboratórium 1

Programozási technológia

Microblaze Micro Controller

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

Digitális technika VIMIAA01 9. hét

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

Autóipari beágyazott rendszerek. Komponens és rendszer integráció

Küls eszközök. Dokumentum cikkszáma: Ez az útmutató a külön beszerezhető külső eszközök használatát ismerteti

BME-MIT. Linux board bringup

6.2. TMS320C64x és TMS320C67xx DSP használata

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

Küls eszközök. Dokumentum cikkszáma: Ez az útmutató a külön beszerezhető külső eszközök használatát ismerteti

Magyar változat. A termék bemutatása. A hardver telepítése. PU013 Sweex 1 portos párhuzamos és 2 portos soros PCI kártya

C2000 Manager 1.02 Verzió Használati Utasítás

Robotot vezérlő szoftverek fejlesztése Developing robot controller softwares

OPENCV TELEPÍTÉSE SZÁMÍTÓGÉPES LÁTÁS ÉS KÉPFELDOLGOZÁS. Tanács Attila Képfeldolgozás és Számítógépes Grafika Tanszék Szegedi Tudományegyetem

Mobil Telefonon Keresztüli Felügyelet Felhasználói Kézikönyv

A virtuális környezetet menedzselő program. Első lépésként egy új virtuális gépet hozzunk létre a Create a New Virtual Machine menüponttal.

Magyar változat. A termék bemutatása. A hardver telepítése. PU011 Sweex 1 portos párhuzamos PCI expressz kártya

Felhasználói leírás a DimNAV Server segédprogramhoz ( )

Samsung Universal Print Driver Felhasználói útmutató

Digitális fényképezőgép Szoftver útmutató

Kedvenc Ingyenes editorok avagy milyen a programozó jobbkeze? PSPAD editor DEVPHP IDE

WebEC kliens számítógép telepítése és szükséges feltételek beállítása, az alábbi ellenőrző lista alapján történik.

Netis Vezetékes ADSL2+, N Modem Router Gyors Telepítési Útmutató

Bluetooth Software frissítés leírása Windows 7 rendszerhez IVE-W530BT

SSL VPN KAPCSOLAT TELEPÍTÉSI ÚTMUTATÓ

Hálózati betekint ő program telepítése mobil telefonra. Symbian. alarm shop. Windows mobile Android IPhone Blackberry

RIEL Elektronikai Kft v1.0

Swing GUI készítése NetBeans IDE segítségével

Digitális elektronika gyakorlat

DAT adatcserefájl AutoCAD MAP DWG mapobject konvertáló program dokumentáció

Digitális elektronika gyakorlat

Avery Design Pro 4.0

Az Euro2A PLU letöltő-feltöltő program telepítése és használata Windows 9x/NT/2000/XP/Vista/Windows7/Windows8 (32/64bit) V január 7.

Digitális technika (VIMIAA02) Laboratórium 5.5

Mobil Informatikai Rendszerek

Távolléti díj kezelése a Novitax programban

Rendszerkezelési útmutató

Bérprogram vásárlásakor az Ügyfélnek ben és levélben is megküldjük a termék letöltéséhez és aktiválásához szükséges termékszámot.

Telepítési útmutató a Solid Edge ST7-es verziójához Solid Edge

Elemi alkalmazások fejlesztése I.

Dr. Schuster György október 30.

Orvosi készülékekben használható modern fejlesztési technológiák lehetőségeinek vizsgálata

DIGITÁLIS TECHNIKA 13. Dr. Oniga István

A MOKKA hitelesítő szoftver telepítése és használata

Felhasználói útmutató CVR mobil kliens, ios rendszerhez.

Külső eszközök. Felhasználói útmutató

Internetkonfigurációs követelmények. A számítógép konfigurálása. Beállítások Windows XP alatt

A GeoEasy telepítése. Tartalomjegyzék. Hardver, szoftver igények. GeoEasy telepítése. GeoEasy V2.05+ Geodéziai Feldolgozó Program

T Bird 2. AVR fejlesztőpanel. Használati utasítás. Gyártja: BioDigit Kft. Forgalmazza: HEStore.hu webáruház. BioDigit Kft, Minden jog fenntartva

ReszlAd fájl, kitöltési útmutató:

Átírás:

Dr. Kincses Zoltán, Dr. Vörösházi Zsolt: FPGA-alapú beágyazott rendszerek tervezése A felsőfokú informatikai oktatás minőségének fejlesztése, modernizációja TÁMOP-4.1.2.A/1-11/1-2011-0104 Főkedvezményezett: Pannon Egyetem 8200 Veszprém Egyetem u. 10. Kedvezményezett: Szegedi Tudományegyetem 6720 Szeged Dugonics tér 13. 2014 Frissítve: 2016. április 7.

FPGA-alapúbeágyazott rendszerektervezése Dr. Kincses Zoltán, Dr. VörösháziZsolt 6. Saját periféria hozzáadása az összeállított beágyazott alaprendszerhez

Tárgyalt ismeretkörök 1. Bevezetés Beágyazott rendszerek 2. FPGA-k, Digilent Nexys-2 és ZyBo fejlesztő kártyák és eszközök 3. Beágyazott Rendszer fejlesztő szoftverkörnyezet (Xilinx EDK Embedded Development Kit/XPS Xilinx Platform Studio) áttekintése 4. Beágyazott alap tesztrendszer (BSB - Base System Builder and Board Bring-Up) összeállítása XPS-ben 5. Perifériák hozzáadása (IP adatbázisból) az összeállított beágyazott alaprendszerhez 6. Saját periféria hozzáadása az összeállított beágyazott alaprendszerhez 7. Szoftver alkalmazások fejlesztése, tesztelése, hibakeresése (debug) Xilinx SDK használatával (Software Development Kit) 8. HW-SW rendszerek együttes tesztelése(xilinx ChipScope) 9. Beágyazott Linux operációs rendszer I.: a MicroBlaze szoft-processzoron Linux rendszer beállítása és indítása 10. Beágyazott Linux operációs rendszer II.: Alkalmazás fejlesztés, tesztelés, meghajtóprogramok, és boot-olás 11. Egyedi hardver szellemi termékek fejlesztése és tesztelése (ZyboAC97, Nexys-2 VGA vezérlő) 3

Xilinx EDK használata SAJÁT IP PERIFÉRIA HOZZÁADÁSA A BEÁGYAZOTT RENDSZERHEZ 4

Feladat Lépések: 1.)Sajátperifériakészítése HDL modul tervezése(vhdl v. Verilog forrásból) 2.) Saját periféria hozzáadása a beágyazott rendszerhezxilinxedk-ban 3.) Lábkiosztás (Pin-out) hozzárendelések megadása(.ucfconstraints) 4.)Bitstreamgenerálásaésletöltése 5.)SWtesztalkalmazáselkészítése Hardver/Szoftver teszt verifikáció 5

Nexys-2 Xilinx EDK használata BEÁGYAZOTT RENDSZER ÖSSZEÁLLÍTÁSA 6

A feladat megoldásának lépései Az előző (5.) ismeretkör elsajátítása során létrehozott projekt archiválása, és megnyitása: LAB02 LAB03 (megnyitás) Saját Periféria generálása IP template segítségével a Xilinx EDK-ban, Saját IP Periféria létrehozása: A.)led_ip:LED, B.) seg7_ip: 7-segmenses kijelző Elkészült IP periféria hozzáadása és összekapcsolása a beágyazott rendszerrel. 7

Beágyazott rendszer kibővítése BRAM Utasítás ILMB BRAM vezérlő MicroBlaze DLMB BRAM vezérlő Adat B MDM UART A LEDs led_ip seg7_ip 7Segs PSBs DIPs GPIO GPIO EMC vezérlő PSDRAM Flash PLB Busz Új saját, a Xilinx IP katalógusban nem szereplő modul tervezése és integrálása: A.) led_ip: LED-ek vezérlésére(saját IP, nem GPIO modul) B.) seg7_ip: 7-szegmenses kijelző vezérlésére(digilent csomag) 8

Korábbi projekt archiválása és megnyitása Hozzunk létre egy új mappát, legyen a neve \LAB03 Másoljuk át az előző ismeretkör (5) elsajátításakor létrehozott projektet (azaz a \LAB02 mappa tartalmát) Indítsuk el az XPS\EDK szoftvert: Start Programok XilinxDesign Tools ISE Design Suite14.7 EDK Xilinx Platform Studio File Open Project <projectdir>/lab03/system.xmp Open 9

A.) LED IP Perifériatemplate generálása I. Az XPS/EDK-banindítsuk el: Hardware Create, or Import Peripherial Next 1 Next >> EDK-hozszükséges busz interfészek és könyvtár struktúra is fog generálódni. 2 10

Periféria template generálása II. * IP neve: csak kisbetűs! 1 2 3 PLB busz Big-Endian, azaz bitfordított formátumot definiál! 11

Periféria template generálása III. 12

Periféria template generálása IV. 13

Periféria template generálása V. 1 2 3 14

IP periféria generált komponensei -HDL source - D:\vzsolt\Lab03_MyIP_Nexys2/pcores/led_ip_v1_00_a/hdl top entity : vhdl/led_ip.vhd user logic : vhdl/user_logic.vhd -XPS interface - D:\vzsolt\Lab03_MyIP_Nexys2/pcores/led_ip_v1_00_a/data mpd: led_ip_v2_1_0.mpd pao: led_ip_v2_1_0.pao -Miscfile - D:\vzsolt\Lab03_MyIP_Nexys2/pcores/led_ip_v1_00_a/devl help : README.txt option : ipwiz.opt log : ipwiz.log -Driver source - D:\vzsolt\Lab03_MyIP_Nexys2/drivers/led_ip_v1_00_a/src makefile : Makefile header : led_ip.h source : led_ip.c selftest : led_ip_selftest.c - Driver interface - D:\vzsolt\Lab03_MyIP_Nexys2/drivers/led_ip_v1_00_a/data mdd: led_ip_v2_1_0.mdd tcl: led_ip_v2_1_0.tcl FW források SW források, driverek 15

Periféria template generálása VI. 2 1 16

Periféria hozzáadása I. Adjuk hozzá a LED_IP perifériát a USER IP katalógusból a rendszerünkhöz: 1 2 Nyissuk meg a led_ip_v2_1_0.mpd fájlt a <projectdir>/led_03/pcores/led_ip_v1_00_a/datamappábból, vagy már a hozzáadott LED_IP-n jobb gomb, majd a legördülő listából View MPD MPD= MicroprocessorPeripheralDesciptor(egy IP periféria portjainak, busz interfészeinek és paramétereinek alapbeállításait tartalmazza) Adjuk hozzá a fájlhoz az alábbi sort, majd Save -el mentsük is el: 3 17

Periféria létrehozása II. -HDL Nyissuk meg a user_logic.vhdfájlt (felhasználói rész) a <projectdir>/lab03/pcores/led_ip_v1_00_a/hdl/vhdl mappában, vagy már hozzáadott LED_IP-n jobb gomb és a legördülő listából Browse HDL sources Adjuk hozzá a file-hoz az alábbi sorokat: 1 2 3 18

VHDL kódrészlet: LED_PROC process() --USER logic implementation added here -- azaz a user_logic.vhd-ben itt kell a saját forráskódot megírni ~147. sorától kezdve LED_PROC : process (Bus2IP_Clk) is begin if Bus2IP_Clk'event and Bus2IP_Clk = '1' then if Bus2IP_Reset = '1' then led_i <= (others => '0'); else if Bus2IP_WrCE(0) = '1' then led_i <= Bus2IP_Data(24 to 31); --big endian end if; end if; end if; end process LED_PROC; LED <= led_i; 19

Periféria létrehozása III. -HDL Majd nyissuk meg a led_ip.vhd fájlt a <projectdir>/lab03/pcores/led_ip_v1_00_a/hdl/vhdl mappából, vagy már hozzáadott LED_IP-n jobb gomb és a legördülő listából Browse HDL sources Adjuk hozzá a fájlhoz az alábbi sorokat: PORT-okhoz(felhasználói rész): 1 PORT MAPhez (felhasználói rész): 2 20

Alternatív megoldás: HDL (.vhd) forráskódok szerkesztésére, és szintaxisának ellenőrzésére javasolt használni a Xilinx ISE fejlesztő környezetet (hiba előbb detektálható): Indítsuk el a <projectdir>/lab03/pcores/led_ip_v1_00_a/devl/projnav /led_ip.xise Szerkesszük, és ellenőrizzük a forrás fájlokat! 21

Módosítások frissítése Végül az IP katalógushoz szerkesztett saját IP periféria minden módosítása frissíthető:.ucf, VHDL források (led_ip.vhd, user_logic.vhd). Katalógus frissítése: Project RescanUser Repositories 22

Periféria hozzáadása és összekapcsolása a rendszerrel I. Hozzáadott saját LED_IP periféria buszrendszerhez kapcsolása Bus Interfész nézet SPLB = mb_plb kiválasztása 1 2 23

Periféria hozzáadása és összekapcsolása a rendszerrel II. System Assembly View Ports nézet A LED port-ot alakítsuk külső porttá(make External) 1 2 24

Periféria hozzáadása és összekapcsolása a rendszerrel III. System Assembly View Addresses nézet ellenőrizzük a Base/High Address értékeket Unmapped memória címtartomány beállítása Kezdőcíme legyen:= 0x8302_0000 Címtartomány mérete legyen: 64K 1 2 3 25

GPIO jelek FPGA lábakhoz rendelése II. Módosítani kell az.ucf file-t (\data\system.ucf alapértelmezett) 1 2 LED lábak: LVCMOS33! 26

.UCF hiba LED lábaknál XilinxPlanAhead: Memória IOSTANDARD-jével(LVCMOS 3.3V) ütközik a LED_GPIO IOSTRANDARD-je(2.5V)! Megoldás: LED IOSTANDARD = LVCMOS33 legyen. ütközések 27

DRC ellenőrzés futtatása Project menü Design Rule Check Módosított, vagy nem BSB-bőlgenerált beágyazott rendszer esetén érdemes DRC (Design Rule Checking) ellenőrzést is futtatni. Kiszűri az esetleges elkötéseket, hibákat Figyelmeztető (warning) jellegű üzenetek megengedettek (szintetizálható a terv) Legtöbb lebegő (floating) vezetékkel sem kell foglalkozni (pl. Peripheral Reset, FSL_x stb.) Ezután indítható el a Netlista, ill. Bitstream generálás. 28

LED_IP periféria SW alkalmazás A saját LED_IP periféria illesztése után a SW alkalmazás megírása történik: BER_07 fólia! 29