Nagyteljesítményű mikrovezérlők

A tantárgy angol neve: High-performance Microcontrollers

Adatlap utolsó módosítása: 2009. október 30.

Tantárgy lejárati dátuma: 2015. június 30.

Budapesti Műszaki és Gazdaságtudományi Egyetem
Villamosmérnöki és Informatikai Kar

Villamosmérnöki szak, MSc képzés

Kötelezően választható tantárgy

Tantárgykód Szemeszter Követelmények Kredit Tantárgyfélév
VIMIM342 3 2/1/0/v 4  
3. A tantárgyfelelős személy és tanszék Dr. Tóth Csaba,
4. A tantárgy előadója

 

Scherer Balázs tanársegéd, BME MIT
5. A tantárgy az alábbi témakörök ismeretére épít

A tárgy az alábbi BSc témakörök ismeretére épít:

  • Mikrovezérlők alapszintű ismerete (Digitális technika II., VIIIA108)
  • C programozás alapjai (A programozás alapjai 1., VIHIA106)
További ajánlott témakörök:

 

  • 8-bites mikrovezérlők felépítése (Mikrokontrollerek alkalmazástechnikája, VIMM9151 vagy Mikrokontroller alapú rendszerek VIAUA348).
7. A tantárgy célkitűzése

A tantárgy célkitűzése, hogy alapfokú beágyazott rendszeres ismeretekkel rendelkező hallgatók tudását kiegészítse a modern, nagy teljesítményű mikrovezérlős rendszerek felhasználásához, megértéséhez szükséges ismeretekkel. A tárgy bemutatja a 32-bites architektúrákon alapuló mikrovezérlők működését, tartalmazza az ezekkel való tervezéshez és fejlesztéshez szükséges hardver- és szoftverismereteket, illetve az elengedhetetlen tesztelési és debuggolási technológiákat. A tárgy feltételezi, hogy a hallgatók legalább alapszinten ismerik az egyszerűbb 8-bites mikrovezérlők felépítését, továbbá jártassággal rendelkeznek a C programozási nyelvben.

 

A tantárgy követelményeit eredményesen teljesítő hallgatóktól elvárható, hogy:

 

(1) Ismerjék a mikrovezérlő piac trendjeit, az elmúlt 10 év változásait, valamint a jövőben várható tendenciákat.

(2) Ismerjék a legfontosabb 32-bites architektúrákat: ARM, MIPS, PowerPC. Részletes ismeretekkel rendelkezzenek az ARM architektúra, ARM7, ARM9, ARM Cortex variánsairól.

(4) Ismerjék a 32-bites mikrovezérlők általános felépítését és annak különbözőségeit a 8-bites mikrovezérlőkhöz képest.

(5) Ismerjék az általában csak 32-bites mikrovezérlőknél alkalmazott komplexebb perifériák (pl. USB, Ethernet kontroller) működését és használatát.

(6) Alkalmazási szinten ismerjenek legalább egy konkrét mikrovezérlőt, amely a fenti architektúrák valamelyikét implementálja. Ismerjék ennek a mikrovezérlőnek a perifériakészletét és hozzá tartozó fejlesztőkörnyezetet.

(7) Képesek legyenek komplexebb szoftveralkalmazásokat vagy hardverterveket készíteni a megismert mikrovezérlőkkel.

 

Bár a tárgynak nem célja, hogy egyetlen mikrovezérlő használatát tanítsa meg, de a könnyű érhetőség miatt az egyes funkciók megvalósulását egy konkrét mikrovezérlőn mutatjuk be. Ez a mikrovezérlő végig fogja követni a tárgyat, és a legtöbb alkalmazási példát ezen keresztül demonstráljuk.

8. A tantárgy részletes tematikája 1. A mikrovezérlők piacán érzékelhető trendek a múltban és a jelenben. A piac várható alakulása a jövőben (elmélet/előadás):

 

A mikrovezérlők rövid történelme. A 8-bites mikrovezérlők fejlődése, a 32-bites mikrovezérlők megjelenése. A jelenleg piacon kapható generációk felbukkanása és fejlődése. A legelterjedtebb architektúrák felsorolása, várható jövőbeli trendek bemutatása.

 

2. A 32-bites mikrovezérlők általános felépítése, főbb blokkjaik (elmélet/előadás):

 

A jelenleg kapható 32-bites mikrovezérlők általános felépítése egy-két tipikus példa alapján. A fontosabb belső blokkok felsorolása és rövid bemutatása. Különbségek és hasonlóságok a 8-bites vezérlőkhöz képest.

 

3. Legelterjedtebb 32-bites processzormagok bemutatása (ARM, MIPS, PowerPC) (elmélet/előadás + demonstráció):

 

A legelterjedtebb processzormagok bemutatása, azok belső felépítésével és jellemzőivel mint utasításkészlet, regiszterek, megszakítás-kezelés stb.


4. Az ARM processzormag-család bemutatása ARM7, ARM9, ARM Cortex (elmélet/előadás + demonstráció):

 

Az egyes ARM családok részletes elemzése, különbözőségeik, hasonlóságok, az új Cortex alapú vezérlők és azok sajátosságainak ismertetése.


5. A system control block működésének bemutatása; az energiamenedzsment bemutatása (elmélet/előadás + demonstráció)

 

Egy-két tipikus 32-bites mikrovezérlőn keresztül bemutatjuk a system control block működését, a reset utáni elindulás folyamatát, a választható boot opciókat, az alapvető rendszerkonfigurációs opciókat, a mag- és periféria-órajel kiválasztási lehetőségeket, valamint az ehhez tartozó energiatakarékos módokat és azok hatását.


6. Külső és belső memóriák, külső memóriák illesztése, az External Memory Controller működése, DMA vezérlő és működése (elmélet/előadás + demonstráció)

 

Bemutatásra kerül a mintának használt mikrovezérlő(k) memória-felépítése. Ismertetésre kerülnek a lehetséges külső memória típusok valamint azok illesztésének módja.


7. A megszakításkezelő blokk és működése (elmélet/előadás + demonstráció)

 

Az adott mikrovezérlő(k)-höz tartozó vektoros megszakítás-kezelő blokk felépítése és használatának bemutatása.


8. Hagyományos mikrovezérlős perifériák ismertetése (elmélet/előadás + demonstráció)

 

A mintaként kiválasztott mikrovezérlő(k)-ben található hagyományos perifériák mint ADC, DAC, I2C, SPI, UART, PWM, CAN, watchdog timerek ismertetése, különbségek és eltérések a 8-bites verziókhoz képest.


9. Modern, 32-bites mikrovezérlőkre jellemző perifériák bemutatása (elmélet/előadás + demonstráció)

 

Ez a rész tartalmazza az USB, Ethernet, SD/MMC interfész, I2S interfészek bemutatását és használatuk rövid demonstrációját.


10. Szoftverfejlesztés 32-bites mikrovezérlőkre (elmélet/előadás + demonstráció)

 

A lehetséges fejlesztőkörnyezetek bemutatása, különös tekintettel a GNU GCC környezetre. Szoftverírás és -letöltés, debuggolás a kiválasztott mikrovezérlő(k)-höz.


11. Beágyazott operációs rendszerek és alkalmazása 32-bites vezérlőkön (elmélet/előadás + demonstráció)

 

A szoftveres részt a beágyazott operációs rendszerek rövid áttekintése folytatja: miben térnek el a normál PC-s operációs rendszerektől? Milyen sajátosságaik vannak? Bemutatásra kerülnek az alkalmazható operációs rendszer kategóriák konkrét példákon keresztül: uC-Os, FreeRTOS, eCos (Embedded Configurable Operation System), valamint röviden megemlítésre kerülnek a Linux és Windows beágyazott rendszerekben használt változatai is.

9. A tantárgy oktatásának módja (előadás, gyakorlat, laboratórium)

Előadás és gyakorlat (demonstráció).

10. Követelmények

a. A szorgalmi időszakban: Egy házi feladat elfogadható szintű teljesítése.

A házi feladat háromféle módon teljesíthető: szoftver-/alkalmazásfejlesztés meglévő 32-bites demó panelre; egyszerű, saját panel készítése és élesztése; komplexebb hardver tervezése és részszoftver írása egy meglévő fejlesztőkártyára.

b. Vizsgaidőszakban: írásbeli vizsga.

11. Pótlási lehetőségek

A zárthelyi szorgalmi időszakban egy alkalommal, pótlási időszakban szintén egy alkalommal pótolható. Házi feladat a pótlási időszakban pótolható. Házi feladat zárthelyivel nem helyettesíthető.

12. Konzultációs lehetőségek

Igény szerint, megbeszélés alapján.

13. Jegyzet, tankönyv, felhasználható irodalom

Az oktatók által készített óravázlatok, prezentációk, segédletek, amelyek letölthetők a tárgy honlapjáról.

 

14. A tantárgy elvégzéséhez átlagosan szükséges tanulmányi munka
Kontakt óra42
Félévközi készülés órákra10
Felkészülés zárthelyire0
Házi feladat elkészítése20
Kijelölt írásos tananyag elsajátítása0
Vizsgafelkészülés48
Összesen120
15. A tantárgy tematikáját kidolgozta

Scherer Balázs tanársegéd, BME MIT

Dr. Tóth Csaba adjunktus, BME MIT

Egyéb megjegyzések

A tárgy neve angolul: High-performance Microcontrollers.