Nagyteljesítményű mikrovezérlők

A VIK Wikiből
A lap korábbi változatát látod, amilyen Fodi (vitalap | szerkesztései) 2014. május 29., 07:25-kor történt szerkesztése után volt.
Ugrás a navigációhoz Ugrás a kereséshez
Nagyteljesítményű mikrovezérlők
Tárgykód
VIMIM342
Általános infók
Kredit
4
Tanszék
MIT
Követelmények
Házi feladat
1 db
Vizsga
írásbeli
Elérhetőségek

Ellenőrző kérdések a „Nagyteljesítményű mikrovezérlők” tárgyhoz

1. Mutassa be, a mikrovezérlő piac alakulását és fő trendjeit az ARM Cortex magú vezérlők megjelenéséig. Milyen főbb vezérlő családok jelentek meg, ezeknek milyen jellegzetességeik voltak!

2. Mutassa be az ARM cég filozófiáját és a hagyományos ARM magok: ARM7, ARM9, ARM11 jellegzetességeit.

3. Ismertesse az ARM7 magok jellemzőit: utasításkészlet, architektúra működési módok. Interrupt kezelés!

4. Hasonlítsa össze a 8bites és 32bites mikrovezérlők lábszámának és Flash memóriájának, valamint árának a változását az elmúlt 5-10 évben!

5. Hasonlítsa össze a 8bites és 32bites mikrovezérlők sleep fogyasztásának és mőködési feszültség tartományának, valamint perifériakészletének alakulását az elmúlt 5-10 évben!

6. Ismertesse a 8bites és 32bites mikrovezérlők választása mellett és ellen szóló legfőbb érveket!

7. Mutassa be az ARM Cortex mag sorozatának (M, R, A) jellegzetességeit! MelyikCortex-es sorozat melyik hagyományos mag sorozat kiváltására készült!

8. Mutassa be a Cortex M3 processzor mag fő jellemzőit (architektúra, főbb blokkok,újdonságok az ARM7-hez képest)!

9. Mutassa be röviden a Cortex M3 alapú vezérlők memória szervezésének jellemzőit.Milyen főbb cím tartományok vannak, mi az a bit banding, mi a non-aligned memóriahozzáférés. Mik a főbb különbségek az ARM7 alapú vezérlőkkel szemben!

10. Mutassa be a Cortex M3 utasítás végrehajtását (pipe-line), programozói modelljét(load and store), regiszter készletét!

11. Mutassa be a Cortex M3 mőködési módjait és hasonlítsa ezeket össze az ARM7mőködési módjaival!

12. Mutassa be a Cortex M3 standard perifériáit (System timer, NVIC, debugg blokkok) és az ezek által nyújtott elinyöket!

13. Mutassa be a piacon kapható legelterjedtebb Cortex M3 alapú mikrovezérlő sorozatokat!

14. Mutassa be a legelterjedtebb ARM7 magú és Cortex M3 magú sorozatok belső felépítésének fejlidését az elmúlt 8 évben!

15. Mutassa be a Reset és elindulás folyamatát az STM32F107 és az LPC1768 vezérli esetében!

16. Mi az a Flash gyorsító modul, miért szükséges. Mutassa be röviden a hasznát és a mőködését!

17. Mutassa be egy tipikus Cortex M3 magú vezérli órajel hálózatát. Magyarázza meg az egyes órajel osztások értelmét és szükségességét.

18. Mutassa be röviden a CMSIS-t (Cortex Microcontroller Software Interface Standard).

19. Mutassa be egy általános 32 bites mikrovezérlő GPIO lábainak kezelését. Milyen a 8bites vezérlőkre nem jellemzi problémák léphetnek fel az STM32F107 esetében a GPIO lábak kezelésénél. Nagyteljesítményő mikrovezélik (VIMIM342)

20. Mutassa be egy modern Timer blokk által nyújtott lehetiségeket. Milyen Timer megvalósítások lehetségesek egy 32 bites vezérlinél?

21. Mutassa be az SPI kommunikáció jellegzetességeit és mutasson példát tipikus SPI buszon keresztül kommunikáló perifériákra.

22. Mutassa be az I2C kommunikáció jellegzetességeit és mutasson példát tipikus I2C buszon keresztül kommunikáló perifériákra.

23. Mutassa be az USART periféria tipikus felhasználási lehetiségeit! 24. Mutassa be a mikrovezérlőkben található AD és DA átalakítók tipikus tulajdonságait és mőködését.

25. Hasonlítsa össze a Cortex M3 NVIC-ét az ARM7 megszakításkezelési lehetiségeivel.

26. Mutassa be az NVIC interrupt vektor tábla szervezésének főbb jellegzetességeit (nem kell tudni fejbil az IT tábla felépítését). Hány periféria megszakítást támogat az NVIC, mindegyiket ki szokták ezek közül használni?

27. Mutassa be az NVIC priorítás kezelésének alapjait. Mire jók a megszakításmaszk regiszterek, és mi az értelme a Vector Table offset regiszternek?

28. Mutassa be a Cortex M3 NVIC-jének megszakítás végrehajtási folyamatát! Mi az a tail-chaining, mi történik ilyenkor?

29. Mutasson példát a DMA kezelés használatára! Milyen átviteli és mőködési lehetiségeket kínál egy általános DMA blokk. Milyen paramétereket kell általában beállítani egy DMA átvitelhez?

30. Mutassa be röviden az STM32F1xx vezérlők DMA blokkjának mőködését. Milyen problémákat okozhat a memória – memória átvitel esetében a cirkuláris buffer beállítás használata? Hogyan próbálják a DMA hatékonyságát növelni az új sorozatú vezérlőknél (memória elrendezés)?

31. Röviden mutassa be a beágyazott operációs rendszerek és az asztali operációs rendszerek közötti különbségeket! Miért célszerő egy operációs rendszer porttal kezdeni egy 32 bites vezérli fejlesztését, milyen járulékos dolgokat hoz általában magával egy kész operációs rendszer port?

32. Röviden mutassa be a µC-OS felépítését és jellegzetességeit!

33. Röviden mutassa be az eCos felépítését és jellegzetességeit!

34. Röviden mutassa be a FreeRTOS felépítését és jellegzetességeit!

35. Mutassa be, hogy milyen lehetiségeink vannak a mikrovezérlők aktív fogyasztásának befolyásolására 8 bites és 32 bites mikrovezérlők esetében. Hasonlítsa össze nagyvonalakban a 8 bites és 32 bites mikrovezérlők aktív fogyasztásának alakulását az elmúlt pár évben.

36. Mutassa be, hogy egy általános 8 bites és 32 bites mikrovezérlőnek milyen energiatakarékos módjai vannak (általánosan jellemzi módok kellenek, nem kell tudni, hogy melyik vezérlinél hogy hívják ezeket).

37. Tipikusan miért vannak hátrányban a 32 bites vezérlők a 8 bites társaikhoz képest az energiatakarékos fogyasztás (passzív állapotok) tekintetében. Milyen technikákat, trükköket vetnek be ezek kompenzálására?

38. Mi az a ROM monitor (más néven GDB stub), tradicionálisan hogy és hol lehet használni, miért nem a legjobb megoldás a modern 32 bites mikrovezérlők esetében?

39. Mi az a GDB, milyen jellegő parancsok használhatóak a GDB-ben a target debuggolására? Mi az a GDB RSP, milyen tulajdonságai vannak, miért játszik fontos szerepet a beágyazott rendszerek debuggolásában!

40. Mi az az Open-OCD, milyen főbb komponensekbil áll, mire kell odafigyelni, amikor kész Open-OCD forításokat próbálunk használni saját eszközünkhöz?

41. Mutassa be nagyvonalakban, hogy milyen lépések játszódnak le akkor, amikor egy Eclipse-es GDB, alapú debugger felületen le szeretnénk egy debugg állapotban lévi target egy változójának értékét kérdezni az OpenOCD segítségével!

42. Mutassa be, hogy milyen blokkokból áll a Cortex M3 Coresight debug rendszere, mennyivel nyújtanak ezek a blokkok több lehetiséget egy tradicionális hibakereséshez képest.

43. Mik azok az SD kártyák, milyen főbb típusaik vannak? Milyen alapveti lehetiségek vannak a fizikai illesztésüknél, és mik ezeknek az elinyei és hátrányai?

44. Mutasson egy rövid példát az SD kártyák kezelésére SPI módban: írás, olvasás, törlés (nem kell a pontos parancsszámokat tudni, elég, egy átviteli ábra mindegyikbil)!

45. Mutassa be a FAT file rendszer felépítését, röviden foglalja össze, hogy mi az a FAT tábla, és mi az a Directory tábla!

46. Milyen felépítése van a ChanFatFS programcsomagnak, milyen szolgáltatásokat nyújt, és tipikusan milyen funkcionalitásokat kell egy ilyen programnál portolni, ha saját rendszerünkben szeretnénk használni?

47. Milyen vezetékek futnak egy USB 2.0 kábelben, mi ezek szerepe? Milyen USB csatlakozókat használnak? Rajzolja fel egy up-/downstream USB FS transzíver sémáját! Melyik hol található? Mi a lényeges különbség? Miben tér el az LS és FS transzíver?

48. Milyen állapotokat vehet fel az USB két adatvezetéke? Az egyes állapotokhoz adjon példát: mikor kerülnek ezek a buszra? A fizikai rétegben milyen bitkódolást használ az USB átvitel?

49. Mutassa be egy USB csomag általános felépítését! Milyen főbb csoportokba oszthatók a csomagok, mi ezek jellemzije? Jellemezze az USB négy transzfer típusát! Mikor melyiket érdemes/kell használni? Mondjon példákat!

50. Mi az az USB pipe és az endpoint, mi a különbség az IN és OUT típusú endpoint között? Milyen viszonyban van az eszköz-, konfiguráció-, interfész- és a végpont leíró? Melyik "mire való"?

51. Tipikusan milyen TCP/IP protokollok szükségesek egy beágyazott megvalósításban? Röviden mutassa be ezeknek a szerepét!

52. Milyen megvalósítási problémákkal egyszerősítésekkel találkozhatunk egy beágyazott TCP/IP protokoll stack esetében (IP-, ICMP-, TCP korlátok, memóriakezelés, párhuzamosság)? Kis teljesítményő, kis eriforrású vezérli esetében miért nem mindegy, hogy TCP, vagy UDP alapú alkalmazási rétegbeli protokollt használunk?

53. Mutasson be röviden két beágyazott TCP/IP protokoll stack-et és jellemezze iket!

54. Mutassa be röviden a Cortex M0 mag jellegzetességeit, miben különbözik a Cortex M3 magtól és az ARM7 magtól! Mi az a WIC (Wake-up Interupt Controller) és miért fontos az energiatakarékosság szempontjából?

55. Milyen elinyei lehetnek egy 32 bites vezérlinek egy 8 bites vezérlivel szemben energiatakarékos alkalmazásoknál (miért lehet fontos a hatékony utasítás végrehajtás)?

56. Milyen piaci szegmenst céloznak meg az NXP LPC11xx sorozatai alapvetien miben különböznek ezek a vezérlők a Cortex M3 sorozatú társaiktól?

57. Mutassa be a Cortex M4 mag jellegzetességeit! Mik azok a SIMD és MAC utasítások és miért lehetnek ezek hatékonyak jelfeldolgozásra?

58. Mutassa be az NXP LPC4300-as sorozatának felépítését! Milyen szerepet szánnak az M0-ás és az M4-es magnak, mutasson erre példát!