Beágyazott rendszerek tervezése Dr. Odry Péter, Ferenc

Hasonló dokumentumok
Mikrovezérlők II. Dr. Odry, Péter

Autóipari beágyazott rendszerek Dr. Balogh, András

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

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

Mikrorendszerek tervezése

Napjainkban a korábbiaknál is nagyobb szükségünk van arra, hogy eszközeink rugalmasak legyenek és gyorsan igazodjanak a változó környezethez.

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

5.1. fejezet - Általános 32 bites mikrovezérlő/processzor alkalmazástechnikája A Freescale

Digitális eszközök típusai

Szolgáltatás Orientált Architektúra a MAVIR-nál

IoT alapú mezőgazdasági adatgyűjtő prototípus fejlesztési tapasztalatok

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

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

Firmware fejlesztés. Mártonfalvi Zsolt Hardware programozó

6.2. TMS320C64x és TMS320C67xx DSP használata

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

Szoftver-technológia I.

Intelligens eszközök fejlesztése az ipari automatizálásban Evosoft Hungary kft., Evosoft Hungary Kft.

01. gyakorlat - Projektalapítás

BEÁGYAZOTT RENDSZEREK TERVEZÉSE UDP csomag küldése és fogadása beágyazott rendszerrel példa

Nagy Gergely április 4.

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?

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

Komponens alapú fejlesztés

OPERÁCIÓS RENDSZEREK. Elmélet

FMC felügyeleti és vezérlőegységek

Számítógép architektúra

Norway Grants. Az akkumulátor mikromenedzsment szabályozás - BMMR - fejlesztés technológiai és műszaki újdonságai. Kakuk Zoltán, Vision 95 Kft.

Új kompakt X20 vezérlő integrált I/O pontokkal

Prolan Zrt. fejlesztéseiben. Petri Dániel

Joint Test Action Group (JTAG)

Rendszertervezés 2. IR elemzés Dr. Szepesné Stiftinger, Mária

SZOFTVERES SZEMLÉLTETÉS A MESTERSÉGES INTELLIGENCIA OKTATÁSÁBAN _ Jeszenszky Péter Debreceni Egyetem, Informatikai Kar jeszenszky.peter@inf.unideb.

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

Digitális technika VIMIAA01 9. hét

Tartalomjegyzék. Előszó... xi. 1. Bevezetés Mechanikai, elektromos és logikai jellemzők... 13

A Netburner fejlesztőeszköz alkalmazástechnikája

Programozható logikai vezérlő

ARM Cortex magú mikrovezérlők. mbed

SZENZORMODUL ILLESZTÉSE LEGO NXT PLATFORMHOZ. Készítette: Horváth András MSc Önálló laboratórium 2 Konzulens: Orosz György

Nagy bonyolultságú rendszerek fejlesztőeszközei

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

Leírás. Készítette: EMKE Kft február 11.

Everything Over Ethernet

Hogyan tudom soros eszközeimet pillanatok alatt hálózatba kötni?

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

Dr. Schuster György október 30.

IK Algoritmusok és Alkalmazásaik Tsz, TTK Operációkutatás Tsz. A LEMON C++ gráf optimalizálási könyvtár használata

Adatbázis rendszerek. dr. Siki Zoltán

Utolsó módosítás:

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

WebService tesztelés. SOAPui Pro, GreenPepper és Confluence használatával. Verhás & Verhás Szoftver Manufaktúra KNOW-HOW

A LEGO Mindstorms EV3 programozása

TANMENET 2018/2019. tanév

ÓBUDAI EGYETEM KANDÓ KÁLMÁN VILLAMOSMÉRNÖKI KAR. Villamosmérnök szak

Összeadás BCD számokkal

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

Bevezetés A harmadik szoftverkrízis korát éljük! Szoftverkrízisek: 1. nincs elég olcsó: hardver, szoftver, programozó 2. nincs elég olcsó: szoftver, p

Mérnök informatikus (BSc)

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

Számítógépes alapismeretek

Komplex terheléses tesztmegoldások a Mobil PS és CS gerinchálózaton

MÉRŐ AUTOMATA RENDSZEREK

Fogalomtár Etikus hackelés tárgyban Azonosító: S2_Fogalomtar_v1 Silent Signal Kft. Web:

ÖNÁLLÓ LABOR Mérésadatgyűjtő rendszer tervezése és implementációja

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

Programozó- készülék Kezelőkozol RT óra (pl. PC) Digitális bemenetek ROM memória Digitális kimenetek RAM memória Analóg bemenet Analóg kimenet

FPGA áramkörök alkalmazásainak vizsgálata

1. Generáció( ):

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

Programozási Technológia előadás bevezetés. Előadó: Lengyel Zsolt

VTOL UAV. Moduláris fedélzeti elektronika fejlesztése pilóta nélküli repülőgépek számára. Árvai László, Doktorandusz, ZMNE ÁRVAI LÁSZLÓ, ZMNE

Tartalomjegyzék. Előszó... 10

Tartalomjegyzék. Előszó... xiii Bevezetés... xv. 1. Ismerkedés a Windows 7-tel Integráció a Windows 7 tálcájával: az alapszolgáltatások...

NETinv. Új generációs informatikai és kommunikációs megoldások

30 MB INFORMATIKAI PROJEKTELLENŐR

Informatikai alkalmazásfejlesztő Információrendszer-elemző és - tervező

Bevezetés a kvantum informatikába és kommunikációba Féléves házi feladat (2013/2014. tavasz)

Bankkártya elfogadás a kereskedelmi POS terminálokon

Takács Árpád K+F irányok

MANUFUTURE STRATÉGIAI KUTATÁSI TÉMATERÜLETEK KAPCSOLATI RENDSZERE, TERVEZHETŐ IDŐHORIZONTOK

Parametrikus tervezés

IBM felhő menedzsment

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

OPERÁCIÓS RENDSZEREK I. BEVEZETÉS Koczka Ferenc -

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

Űrtechnológia október 24. Műholdfedélzeti energiaellátás / 2 Műholdfedélzeti szolgálati rendszerek Felügyeleti, telemetria és telekommand rendsz

SEGÉDLET. A TTMER102 - FPGA-alapú hálózati eszközfejlesztés című méréshez

A Jövő Internet Nemzeti Kutatási Program bemutatása

Szoftver-technológia II. Szoftver újrafelhasználás. (Software reuse) Irodalom

Intelligens Autonom Kamera Modul (IAKM)

Alkalmazások fejlesztése A D O K U M E N T Á C I Ó F E L É P Í T É S E

VIRTUÁLIS GRAFFITI ÜZENETHAGYÓ RENDSZER

Szolgáltatásintegráció (VIMIM234) tárgy bevezető

Advisor Master. GE Interlogix Magyarország Kft.

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

Párhuzamos programozási platformok

Programfejlesztési Modellek

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

Átírás:

Beágyazott rendszerek tervezése Dr. Odry Péter, Ferenc

Beágyazott rendszerek tervezése Dr. Odry Péter, Ferenc Publication date 2013 Szerzői jog 2013 Dr. Odry Péter Szerzői jog 2013 Dunaújvárosi Főiskola Kivonat Ez egy moodle kurzus amely a beágyazott rendszerek tervezése tananyagot tartalmazza. Minden jog fenntartva.

Tartalom 1. Bevezetés... 1 2. 1. Rendszer definiálása. Architektúra választása, dokumentálása és tervezése.... 3 1. 1.1. Általános áttekintés... 3 2. 1.2. Valós idejű rendszerek... 3 3. 1.3. Felügyelő- és vezérlő rendszerek... 3 4. 1.4. A fejlesztés programnyelvei... 3 5. 1.5. Valósidejű szoftver-rendszerek modellezése... 4 3. 2. Ipari szabványok a beágyazott rendszereknél... 5 1. 2.1. Standardizáció alapkérdései... 5 2. 2.2. A szabvány implementálásának a kérdései... 5 3. 2.3. A szabványosítás-nak nincs alternatívája... 5 4. 2.4. Miért olyan fontosak a biztonsági és védelmi szabványok a beágyazott eszközöknél?.. 5 5. 2.5. Néhány példa a beágyazott felület fejlesztésre vonatkozó standardok/előírások tekintetében 6 4. 3. Beágyazott operációs rendszerek... 7 1. 3.1. Lényegi különbség az FPGA és az MCU programozás filozófiájában... 7 2. 3.2. MCU, DSP, FPGA, ASIC... 7 3. 3.3. Technológiai kompromisszumok metaprogramozható blokkokkal... 7 4. 3.4. Kompromisszumok a beágyazható processzor megválasztásakor... 7 5. 4. Tápellátás, környezeti elektronika megválasztása és integrálása... 9 1. 4.1. Általános áttekintés... 9 2. 4.2. SoC környezet kialakításának a kérdése... 9 3. 4.3. Mi a Dinamikus Teljesítmény Vezérlés?... 9 4. 4.4. Akkumulátor teljesítménymenedzsment rendszere... 9 5. 4.5. A vezeték nélküli energia mindenkit szolgál - Egy érdekes példaként szemléljünk drótnélküli tápmegoldást... 10 6. 5. Rendszer elemek együttműködésének kérdései, akadályai és megvalósítási módjai... 11 1. 5.1. Rendszer elemek és azok együttműködésének az alapjai... 11 2. 5.2. Hogyan változtatják meg az FPGA-k, többmagos CPU-k és a grafikus programozás a beágyazott tervezést... 11 3. 5.3. Szabványos beágyazott architektúra... 11 4. 5.4. Az FPGA technológia előnyei a környezet kialakításában más beágyazott eszközhöz viszonyítva... 11 5. 5.5. Magasabb fejlettségi szintű eszközök együttműködései... 12 7. 6. Beágyazott operációs rendszerek... 13 1. 6.1. Általános áttekintés... 13 2. 6.2. Beágyazott operációs rendszer alkalmazások... 13 3. 6.3. Valós idejű operációs rendszerek... 13 4. 6.4. A szemléltetésben alkalmazott DM6446 EVM bemutatása... 13 5. 6.5. Debian GNU/Linux 6.0 arm(el) gyökérkönyvtár létrehozása... 14 6. 6.6. Linux futtatása TMDSEVM6472 eszközön... 14 8. 7. Integrált beágyazott eszközök közötti kommunikáció eszköze inek megválasztása... 15 1. 7.1. Integrált beágyazott eszközök közötti kommunikáció eszközeinek megválasztása... 15 2. 7.2. Egyszerűbb I/O felületek megvalósítása... 15 3. 7.3. Mikroprocesszor interfész: megszakítások (interrupts)... 15 4. 7.4. Közvetlen memória-hozzáférés (DMA)... 15 5. 7.5. Fejlett kommunikációs elvek beágyazott eszközfejlesztésben... 16 6. 7.6. Párhuzamos protokollok: ARM Busz... 16 7. 7.8. Letölthető mellékletek... 16 9. 8. Beágyazott hálózatok... 17 1. 8.1. Bevezetés a beágyazott hálózatok témakörbe... 17 2. 8.2. A TMDSEVM6472 Hálózati és fejlesztő környezet beállítása a működés teszteléséhez 17 3. 8.3. Hálózati környezet beállítása a működés teszteléséhez Davinci DM6446 EVM fejlesztőkörnyezetben... 17 4. 8.4. UDP csomag küldése és fogadása beágyazott rendszerrel példa... 17 10. 9. Software és hardware integrálása és tesztelése... 19 iii

Beágyazott rendszerek tervezése 1. 9.1. Általános áttekintés... 19 2. 9.2. Is mételgetés (Iteration) és végrehajtás (Implementation)... 19 3. 9.3. Részletes Hardver és Szoftver tervezés... 19 4. 9.4. Az evolúció tesztjei... 19 5. 9.5. Kész általános jellegű beágyazott eszköz példa... 20 11. 10. Összetett beágyazott rendszer tervezési dilemmák... 21 1. 10.1. Összetett beágyazott rendszer tervezése. Valósidejű szoftver-rendszerek modellezése 21 2. 10.2. Szoftvertervezés valósidejű rendszerek esetében... 21 3. 10.3. A beágyazott rendszerek evolúciója... 21 4. 10.4. A rendszer és folyamatok párhuzamos evolúciója... 21 5. 10.5. Az evolúció ellenőrzése a terhelési időszakban... 22 12. 11. Összetett beágyazott rendszerek programozás technikája és tesztelése (JTAG)... 23 1. 11.1. Általános áttekintés, BDM, JTAG, and Nexus... 23 2. 11.2. Joint Test Action Group (JTAG)... 23 3. 11.3. JTAG inkompatibilis eszközök kivizsgálása... 23 4. 11.4. A JTAG lánc integritásának ellenőrzése... 23 13. 12. Beágyazott robotfelület tervezése, fejlesztése és beüzemelése... 25 1. 12.1. Robot futtatás és fejlesztés feladatai... 25 2. 12.2. Robot beágyazott felülete... 25 3. 12.3. Saját fejlesztésű sztereo Video Interfész... 25 4. 12.4. Feladatok amit a beágyazott "látóeszköznek" meg kell oldania... 25 5. 12.5. Matlab platform alkalmazása a robotirányításban... 26 14. 13. Beágyazott mérő és adatgyűjtő rendszerek tervezésének kérdése... 27 1. 13.1. A probléma felvezetése... 27 2. 13.2. A Matlab és a beágyazott rendszerek kapcsolata... 27 3. 13.3. Forráskód felhasználási/konvertálási lehetőségek Matlab és C/C++ között... 27 4. 13.4. Bitmélység, lebegőpontos- és fixpontos formátum... 27 5. 13.5. Alkalmazási példák... 28 6. 13.6. Generate VHDL and Verilog code for FPGA and ASIC designs... 28 15. 14. Eljárások prezentálása és interaktív tesztek... 29 1. 14.1. Eljárások prezentálása... 29 2. 14.2. Interaktív tesztek... 29 Tárgymutató... 30 iv

1. fejezet - Bevezetés Ebben a jegyzetben nem kifejezetten a fejlesztés csúcsát jelentő ASICs technológia alkalmazásából eredő gondolkozás menetet céloztuk meg, hanem azt a technológiát ami a kisebb sorozatot jelentő specifikus problémát kiszolgáló beágyazott berendezés tervezését illeti. Ki kell hangsúlyozni, hogy ebben a jegyzetben tárgyalt témakör nagyon széles, óriási az irodalma, nagy mérnöki tudást köve tel az hardwareáramkörtechnológia, software tudomány területén de különösen fontos az, hogy aki ezzel foglalkozik annak jó pár berendezést nem kis összetettséggel rendelkezőt már egyedül vagy csapatban részt véve tervezni kellett ahhoz hogy ezt érdembe művelni tudja. Ez a tudomány kifejezetten alkalmazott széleskörű alapos tudást követel a művelőjétől. Így csak néhány lapvető kérdést fogunk érinteni érintőlegesen, ahhoz, hogy a fejles ztési integráció működhessen villamos mérnökök és a mérnök informatikusok között. A tárgyalt terület mint ahogy említve lett széleskörű és csak csipegetve lett belőle, alkalmazva a több tíz éves beágyazott eszköz fejlesztésből felhalmozott tudást. Jegyzet írásakor az vezetet minket, hogy olyan anyagot biztosítsunk a hallgatóság részére ami más módon közelíti meg ezt az összetett problémakört, mint más publikációkban. Úgy közelítettük meg a probléma kört, hogy azt arra alapoztuk amit a szerző tapasztalt, amikor kezdő fejlesztő mérnökökkel fejlesztett beágyazott eszközöket. A beágyazott rendszerek ma már széleskörűen elterjedtek, a háztartási készülékektől kezdve a kritikus alkalmazásokig, mint pl. a betegek életfenntartó rendszerei. A beágyazott rendszerek fejlődését meghatározó igények formálják egyben a piaci kínálatot is. Például sok fogyasztó-orientált rendszer a piac nyomásának hatására, gyors változások és átalakítások során esik át, minek következtében néhány havonta jelennek meg az újabb generációs termékek. A fejlődés másik előremozgatója a hardver elavulása, pl. a régi hardverelemeket idővel le kell cserélni, vagy az újonnan kifejlesztett hardver bizonyos szoftver-funkciókat is átvehet. A meglevő hardverplatformok számára is szükségesek lehetnek új funkciók bevezetése: amennyiben ebben egy beágyazott rendszereket gyártó cég felismeri az új üzleti lehetőséget azért hogy megőrizze vagy javítsa piaci helyzetét valószínű, hogy a már meglevő és kiaknázás alatt álló rendszereit is fejlesztés alá vonja. A fejlődés harmadik előremozgató ereje a felhasználó. Ugyanis a tapasztalt felhasználók gyakran a meglévő rendszerek új felhasználási módját találják meg, kiterjesztve a rendszer műveleti területét és eleget téve a feléjük támasztott igényeknek. A beágyazott rendszerek domináns alkotó eleme 2010 -ig a mikrovezérlők voltak. A kétezres évek elején nagy erővel fejlődött fel az FPGA technológia és mind nagyobb teret foglalt el ezen a területen. Ma a legújabb trendet képviseli az ASICS technológia. Folyamatos a vetélkedés a technológiák létjogosultsága tekintetében, felmerül a kérdés mikor, mit használjunk, mi a legjobb az adott alkalmazásra. Ez a döntés általában villamosmérnöki tudást követel, de ahhoz, hogy a döntéshozatal logikáját követni tudják, a beágyazott eszközöket programozó informatikusok is rálátással kell, hogy legyenek a beágyazott rendszerbe épített eszközökre. Ebben igyekszik segíteni ez az anyag. Az ASIC és az FPGA eszközökbe is különböző típusú mikrovezérlőket építenek, valamint más logikai és jelfeldolgozó elemeket is használnak. Ezek a mikrovezérlő eszközök hasonlóan programozhatók, mint standard mikrovezérlők. Sok esetben az FPGA gyártók vagy fejlesztőeszköz gyártók létrehozzák saját mikroprocesszor magjaikat és azokat ajánlják a beépítésre. Ezek a beprogramozható mikrokontroller magok legtöbb esetben C51-es mag jellemzőivel rendelkeznek, újabban mind nagyobb teljesítményű beágyazott ARM magok is vannak. Sokszor az a kérdés vajon mikroprocesszor/vezérlő, FPGA vagy ASIC eszköz a legmegfelelőbb az adott feladat megoldására. Ha eldöntöttük, hogy mikroprocesszor/vezérlő kell, akkor szintén nagy döntés előtt állunk, vajon melyik típusa/családja a legjobb az adott feladat megoldásához. A döntést a tapasztalat mellett sokszor a szokás is vezérli, melyik mikroprocesszor/vezérlő gyártó, családját-típusát fogjuk alkalmazni. Ugyanakkor hasonlóan jó eszközök közül az ár, a fejlesztőeszköz vagy más szempontok alapján fogunk dönteni. Az előadáson érintünk érdekes mikrovezérlőket, amelyeket ma már a gyártók nem ajánlanak alkalmazásra, mert ki szeretnék vonni a forgalomból, pedig az alkalmazók körében népszerű. Ezek a mikrovezérlő szerkezetek sok esetben megépítésre kerülhetnek FPGA vagy ASIC eszközökbe, mert könnyen kezelhetők és áttekinthetőek az alkalmazásokban. A nagyteljesítményű mikrovezérlők/mikroprocesszorok adatlapjai sok esetben ezer vagy akár több ezer oldalt is tartalmazó leírások. Ezzel az anyaggal nem az volt a szándékunk, hogy ezeket kiváltjuk, ellenkezőleg rá akartunk mutatni, hogy hol találhatók meg ezek az anyagok és miként kell ezeket alkalmazni. Maguk a mikrovezérlők nagyon színes palettát képviselnek, de ha jobban bele merülünk ezek alkalmazásába, akkor kezdjük csak érezni, milyen nagy lehetőségeket rejtenek, ugyanakkor mekkora kihívást is jelentenek. A nagyteljesítményű mikorprocesszorok/vezérlők sokszor ARM és DSP magot is tartalmazhatnak, akár egyszerre több magot is valamennyi típusból. Ma már mindennapi igény akár egy mobil telefonban is négy magot tartalmazó mikrovezérlő/processzor. Olyan gyors a mikrovezérlők fejlődése, hogy egy naprakész állapot holnap már a múlt, ez miatt szerettünk volna kiválogatni olyan mikroprocesszor/vezérlőket amelyeket nagyszámban gyártanak vagy gyártottak és alkalmaztak vagy alkalmaznak széles körben. Ugyanúgy a válogatás folyamán szerettünk volna bemutatni pár olyan eszközt is, amelyek beépítése, vagy részeinek a beépítése FPGA vagy ASIC áramkörökben sok esetben előremutató megoldást jelenthet. Ezzel a munkával az a célunk, hogy főiskolai végzetséggel rendelkező mérnök informatikusnak rálátást biztosítsunk a mikroprocesszor/vezérlők 1

Bevezetés alkalmazástechnikájára. A leírt anyag kifejezetten nem villamosmérnöki szemszögből lett megközelítve. Egy sor jól megírt jegyzet található magyar és más nyelveken elektronikus és papír formában is, néhányat a teljesség igénye nélkül a bevezető végén fel is sorolok. Ezek a jegyzetek a mikrovezérlő elmélet alapjait, de sok esetben haladó jelleggel közelítik meg a problémakört. Sok mikrokontrollerhez modulokat lehet beszerezni és ezek tovább integrálhatók összetettebb szerkezetekbe ezáltal felgyorsítható a fejles ztés folyamata. A beágyazott rendszer architektúrája valójában a beágyazott eszköz egy absztrakciója, ami annyit jelent, a rendszer általánosítása amely tipikusan nem mutat részletes implementált információt a rendszerről mint a szoftver forráskódja vagy a hardver áramkör tervezete. Az architektúra szintjén egy beágyazott rendszer hardver és szoftver komponenseit inkább mint kölcsönhatásban levő elemek csoportját ábrázolják. Az elemek mint hardver és/vagy szoftver ábrázolása vannak jelen melyek implementációs részleteit elvonatkoztatták, így csak a viselkedési és együttműködési információ maradt. Az architektúra elemeket belsőleg ötvözni lehet a beágyazott eszközben, vagy a beágyazott rendszer külső egységeit képezik melyek képesek a belső elemekkel kölcsönhatásba lépni. Röviden, egy beágyazott architektúra tartalmazza a beágyazott rendszer elemeit, a beágyazott rendszerrel kölcsönhatásba lépő elemeket, az egyes elemek tulajdonságait és az egyes elemek közötti interaktív kapcsolatot. Megszeretnénk közelíteni a probléma kört egy olyan szems zögből amit a nagyon széles ezen a téren megjelent irodalom nem tárgyal. A megközelítés kompromisszumon alapul: kifejezetten villamosmérnöki témakört mérnökinformatikus társadalom közelébe hozni. Másik célunk pedig kifejezett en alkalmazás orientáltan közelítettük meg. A tárgyalt terület nagyon széles és egy sor kifejezetten villamosmérnöki tudományhoz tartozó témakört érint. A mikrovezérlők megjelenése forradalmi változás idézett elő a 1970-es években a vezérlő rendszerek piacán. Előtte a az összetett rendszereket egyszerű logikai áramkörökből rakták össze és a mikrovezérlők csak a visszacsatolást ellenőrizték. Bevezető Bevezető 2

2. fejezet - 1. Rendszer definiálása. Architektúra választása, dokumentálása és tervezése. 1. 1.1. Általános áttekintés Általános áttekintés Általános áttekintés 2. 1.2. Valós idejű rendszerek Valós idejű rendszerek Valós idejű rendszerek 3. 1.3. Felügyelő- és vezérlő rendszerek Felügyelő- és vezérlő rendszerek Felügyelő- és vezérlő rendszerek 4. 1.4. A fejlesztés programnyelvei A fejlesztés programnyelvei 3

A fejlesztés programnyelvei 1. Rendszer definiálása. Architektúra választása, dokumentálása és tervezése. 5. 1.5. Valósidejű szoftver-rendszerek modellezése Valósidejű szoftver-rendszerek modellezése Valósidejű szoftver-rendszerek modellezése 4

3. fejezet - 2. Ipari szabványok a beágyazott rendszereknél 1. 2.1. Standardizáció alapkérdései Standardizáció alapkérdései Standardizáció alapkérdései 2. 2.2. A szabvány implementálásának a kérdései A szabvány implementálásának a kérdései A szabvány implementálásának a kérdései 3. 2.3. A szabványosítás-nak nincs alternatívája A szabványosítás-nak nincs alternatívája A szabványosítás-nak nincs alternatívája 4. 2.4. Miért olyan fontosak a biztonsági és védelmi szabványok a beágyazott eszközöknél? Miért olyan fontosak a biztonsági és védelmi szabványok a beágyazott eszközöknél? Miért olyan fontosak a biztonsági és védelmi szabványok a beágyazott eszközöknél? 5

2. Ipari szabványok a beágyazott rendszereknél 5. 2.5. Néhány példa a beágyazott felület fejlesztésre vonatkozó standardok/előírások tekintetében Néhány példa a beágyazott felület fejlesztésre vonatkozó standardok/előírások tekintetében Néhány példa a beágyazott felület fejlesztésre vonatkozó standardok/előírások tekintetében 6

4. fejezet - 3. Beágyazott operációs rendszerek 1. 3.1. Lényegi különbség az FPGA és az MCU programozás filozófiájában Lényegi különbség az FPGA és az MCU programozás filozófiájában Lényegi különbség az FPGA és az MCU programozás filozófiájában 2. 3.2. MCU, DSP, FPGA, ASIC MCU, DSP, FPGA, ASIC MCU, DSP, FPGA, ASIC 3. 3.3. Technológiai kompromisszumok metaprogramozható blokkokkal Technológiai kompromisszumok metaprogramozható blokkokkal Technológiai kompromisszumok metaprogramozható blokkokkal 4. 3.4. Kompromisszumok a beágyazható processzor megválasztásakor Kompromisszumok a beágyazható processzor megválasztásakor 7

3. Beágyazott operációs rendszerek Kompromisszumok a beágyazható processzor megválasztásakor 8

5. fejezet - 4. Tápellátás, környezeti elektronika megválasztása és integrálása 1. 4.1. Általános áttekintés Általános áttekintés Általános áttekintés 2. 4.2. SoC környezet kialakításának a kérdése SoC környezet kialakításának a kérdése SoC környezet kialakításának a kérdése 3. 4.3. Mi a Dinamikus Teljesítmény Vezérlés? SoC környezet kialakításának a kérdése SoC környezet kialakításának a kérdése 4. 4.4. Akkumulátor teljesítménymenedzsment rendszere Akkumulátor teljesítménymenedzsment rendszere 9

Akkumulátor teljesítménymenedzsment rendszere 4. Tápellátás, környezeti elektronika megválasztása és integrálása 5. 4.5. A vezeték nélküli energia mindenkit szolgál - Egy érdekes példaként szemléljünk drótnélküli tápmegoldást A vezeték nélküli energia mindenkit szolgál - Egy érdekes példaként szemléljünk drótnélküli tápmegoldást A vezeték nélküli energia mindenkit szolgál - Egy érdekes példaként szemléljünk drótnélküli tápmegoldást 10

6. fejezet - 5. Rendszer elemek együttműködésének kérdései, akadályai és megvalósítási módjai 1. 5.1. Rendszer elemek és azok együttműködésének az alapjai Rendszer elemek és azok együttműködésének az alapjai Rendszer elemek és azok együttműködésének az alapjai 2. 5.2. Hogyan változtatják meg az FPGA-k, többmagos CPU-k és a grafikus programozás a beágyazott tervezést Hogyan változtatják meg az FPGA-k, többmagos CPU-k és a grafikus programozás a beágyazott tervezést Hogyan változtatják meg az FPGA-k, többmagos CPU-k és a grafikus programozás a beágyazott tervezést 3. 5.3. Szabványos beágyazott architektúra Szabványos beágyazott architektúra Szabványos beágyazott architektúra 4. 5.4. Az FPGA technológia előnyei a környezet kialakításában más beágyazott eszközhöz viszonyítva 11

Szabványos beágyazott architektúra 5. Rendszer elemek együttműködésének kérdései, akadályai és megvalósítási módjai Szabványos beágyazott architektúra 5. 5.5. Magasabb fejlettségi szintű eszközök együttműködései Magasabb fejlettségi szintű eszközök együttműködései Szabványos beágyazott architektúra 12

7. fejezet - 6. Beágyazott operációs rendszerek 1. 6.1. Általános áttekintés Beágyazott operációs rendszer alkalmazások Általános áttekintés 2. 6.2. Beágyazott operációs rendszer alkalmazások Beágyazott operációs rendszer alkalmazások Beágyazott operációs rendszer alkalmazások 3. 6.3. Valós idejű operációs rendszerek Valós idejű operációs rendszerek Beágyazott operációs rendszer alkalmazások 4. 6.4. A szemléltetésben alkalmazott DM6446 EVM bemutatása A szemléltetésben alkalmazott DM6446 EVM bemutatása A szemléltetésben alkalmazott DM6446 EVM bemutatása 13

6. Beágyazott operációs rendszerek 5. 6.5. Debian GNU/Linux 6.0 arm(el) gyökérkönyvtár létrehozása Debian GNU/Linux 6.0 arm(el) gyökérkönyvtár létrehozása Debian GNU/Linux 6.0 arm(el) gyökérkönyvtár létrehozása 6. 6.6. Linux futtatása TMDSEVM6472 eszközön Linux futtatása TMDSEVM6472 eszközön Linux futtatása TMDSEVM6472 eszközön Beadandó feladat 14

8. fejezet - 7. Integrált beágyazott eszközök közötti kommunikáció eszközeinek megválasztása 1. 7.1. Integrált beágyazott eszközök közötti kommunikáció eszközeinek megválasztása Integrált beágyazott eszközök közötti kommunikáció eszközeinek megválasztása Integrált beágyazott eszközök közötti kommunikáció eszközeinek megválasztása Beadandó feladat 2. 7.2. Egyszerűbb I/O felületek megvalósítása Egyszerűbb I/O felületek megvalósítása Egyszerűbb I/O felületek megvalósítása 3. 7.3. Mikroprocesszor interfész: megszakítások (interrupts) Mikroprocesszor interfész: megszakítások (interrupts) Mikroprocesszor interfész: megszakítások (interrupts) 4. 7.4. Közvetlen memória-hozzáférés (DMA) Közvetlen memória-hozzáférés (DMA) 15

7. Integrált beágyazott eszközök közötti kommunikáció eszközeinek megválasztása Közvetlen memória-hozzáférés (DMA) 5. 7.5. Fejlett kommunikációs elvek beágyazott eszközfejlesztésben Fejlett kommunikációs elvek beágyazott eszközfejlesztésben Fejlett kommunikációs elvek beágyazott eszközfejlesztésben 6. 7.6. Párhuzamos protokollok: ARM Busz Párhuzamos protokollok: ARM Busz Párhuzamos protokollok: ARM Busz 7. 7.8. Letölthető mellékletek 16

9. fejezet - 8. Beágyazott hálózatok 1. 8.1. Bevezetés a beágyazott hálózatok témakörbe Bevezetés a beágyazott hálózatok témakörbe Bevezetés a beágyazott hálózatok témakörbe 2. 8.2. A TMDSEVM6472 Hálózati és fejlesztő környezet beállítása a működés teszteléséhez Bevezetés a beágyazott hálózatok témakörbe Bevezetés a beágyazott hálózatok témakörbe 3. 8.3. Hálózati környezet beállítása a működés teszteléséhez Davinci DM6446 EVM fejlesztőkörnyezetben Hálózati környezet beállítása a működés teszteléséhez Davinci DM6446 EVM fejles ztőkörnyezetben Hálózati környezet beállítása a működés teszteléséhez Davinci DM6446 EVM fejlesztőkörnyezetben 4. 8.4. UDP csomag küldése és fogadása beágyazott rendszerrel példa UDP csomag küldése és fogadása beágyazott rendszerrel példa UDP csomag küldése és fogadása beágyazott rendszerrel példa 17

8. Beágyazott hálózatok 18

10. fejezet - 9. Software és hardware integrálása és tesztelése 1. 9.1. Általános áttekintés Általános áttekintés Általános áttekintés 2. 9.2. Ismételgetés (Iteration) és végrehajtás (Implementation) Ismételgetés (Iteration) és végrehajtás (Implementation) Ismételgetés (Iteration) és végrehajtás (Implementation) 3. 9.3. Részletes Hardver és Szoftver tervezés Részletes Hardver és Szoftver tervezés Részletes Hardver és Szoftver tervezés 4. 9.4. Az evolúció tesztjei Az evolúció tesztjei Az evolúció tesztjei 19

9. Software és hardware integrálása és tesztelése 5. 9.5. Kész általános jellegű beágyazott eszköz példa Kész általános jellegű beágyazott eszköz példa Kész általános jellegű beágyazott eszköz példa 20

11. fejezet - 10. Összetett beágyazott rendszer tervezési dilemmák 1. 10.1. Összetett beágyazott rendszer tervezése. Valósidejű szoftver-rendszerek modellezése Összetett beágyazott rendszer tervezése. Valósidejű szoftver-rendszerek modellezése Összetett beágyazott rendszer tervezése. Valósidejű szoftver-rendszerek modellezése 2. 10.2. Szoftvertervezés valósidejű rendszerek esetében Szoftvertervezés valósidejű rendszerek esetében Szoftvertervezés valósidejű rendszerek esetében 3. 10.3. A beágyazott rendszerek evolúciója A beágyazott rendszerek evolúciója A beágyazott rendszerek evolúciója 4. 10.4. A rendszer és folyamatok párhuzamos evolúciója A rendszer és folyamatok párhuzamos evolúciója 21

10. Összetett beágyazott rendszer tervezési dilemmák A rendszer és folyamatok párhuzamos evolúciója 5. 10.5. Az evolúció ellenőrzése a terhelési időszakban Az evolúció ellenőrzése a terhelési időszakban Az evolúció ellenőrzése a terhelési időszakban 22

12. fejezet - 11. Összetett beágyazott rendszerek programozás technikája és tesztelése (JTAG) 1. 11.1. Általános áttekintés, BDM, JTAG, and Nexus Általános áttekintés, BDM, JTAG, and Nexus Általános áttekintés, BDM, JTAG, and Nexus 2. 11.2. Joint Test Action Group (JTAG) Joint Test Action Group (JTAG) Joint Test Action Group (JTAG) 3. 11.3. JTAG inkompatibilis eszközök kivizsgálása JTAG inkompatibilis eszközök kivizsgálása JTAG inkompatibilis eszközök kivizsgálása 4. 11.4. A JTAG lánc integritásának ellenőrzése A JTAG lánc integritásának ellenőrzése 23

11. Összetett beágyazott rendszerek programozás technikája és tesztelése (JTAG) A JTAG lánc integritásának ellenőrzése 24

13. fejezet - 12. Beágyazott robotfelület tervezése, fejlesztése és beüzemelése 1. 12.1. Robot futtatás és fejlesztés feladatai Robot futtatás és fejlesztés feladatai Robot futtatás és fejlesztés feladatai 2. 12.2. Robot beágyazott felülete Robot beágyazott felülete Robot beágyazott felülete 3. 12.3. Saját fejlesztésű sztereo Video Interfész Robot beágyazott felülete Robot beágyazott felülete 4. 12.4. Feladatok amit a beágyazott "látóeszköznek" meg kell oldania Feladatok amit a beágyazott "látóeszköznek" meg kell oldania 25

12. Beágyazott robotfelület tervezése, fejlesztése és beüzemelése Feladatok amit a beágyazott "látóeszköznek" meg kell oldania 5. 12.5. Matlab platform alkalmazása a robotirányításban Matlab platform alkalmazása a robotirányításban Matlab platform alkalmazása a robotirányításban 26

14. fejezet - 13. Beágyazott mérő és adatgyűjtő rendszerek tervezésének kérdése 1. 13.1. A probléma felvezetése A probléma felvezetése A probléma felvezetése 2. 13.2. A Matlab és a beágyazott rendszerek kapcsolata A Matlab és a beágyazott rendszerek kapcsolata A Matlab és a beágyazott rendszerek kapcsolata 3. 13.3. Forráskód felhasználási/konvertálási lehetőségek Matlab és C/C++ között Forráskód felhasználási/konvertálási lehetőségek Matlab és C/C++ között Forráskód felhasználási/konvertálási lehetőségek Matlab és C/C++ között 4. 13.4. Bitmélység, lebegőpontos- és fixpontos formátum Bitmélység, lebegőpontos- és fixpontos formátum 27

13. Beágyazott mérő és adatgyűjtő rendszerek tervezésének kérdése Bitmélység, lebegőpontos- és fixpontos formátum 5. 13.5. Alkalmazási példák Alkalmazási példák Alkalmazási példák 6. 13.6. Generate VHDL and Verilog code for FPGA and ASIC designs Generate VHDL and Verilog code for FPGA and ASIC designs Generate VHDL and Verilog code for FPGA and ASIC designs 28

15. fejezet - 14. Eljárások prezentálása és interaktív tesztek 1. 14.1. Eljárások prezentálása 2. 14.2. Interaktív tesztek 29

Tárgymutató 30