Internode kommunikáció osztott memóriás APU+MCU AMP rendszerekben (evopro Innovation)
![]() docens
Szoba: IE334
Tel.:
+36 1 463-4372 Email: khazy (*) mit * bme * hu |
A kiírás adatai
Léteznek olyan modern ARM Cortex alapú rendszerek, melyek több különböző típusú CPU-t is tartalmaznak egyetlen szilíciumon (pl. Freescale/NXP Vybrid VF6xx, i.MX6SX, i.MX7, TI OMAP4, TI Sitara 35xx, 45xx). Ezek a koprocesszorok általában egy közös AXI buszon keresztül érnek el erőforrásokat, és gyakran ugyanazt a DDR RAM-ot használhatják operatív tárnak. Ez azt jelenti, hogy nagysebességű adatcsere valósítható meg a magok között, de a kisebb teljesítményű magok futtathatnak "housekeeping" taskokat is a fő core inaktív állapotában. Egy ilyen összetett HW rendszert programozni nem egyszerű feladat, hiszen a különböző magokat inicializálni kell, azokra különböző SW binárisokat kell betölteni, valamint igény szerint le is kell tudni állítani őket.
A Linux operációs rendszer tartalmaz beépített framework-öket ezen feladatok ellátásához, nevezetesen a remoteproc és rpmsg alrendszerek. Az előbbi felületet ad a segéd core-ok (de‑)inicializációjához, valamint az általuk kezelt hardverek nyilvántartásához, míg utóbbi segítséget ad az üzenetcserére a core-ok között.
Feladat:
-
Ismerkedjen meg a
- remoteproc és
- rpmsg alrendszerekkel
- Portolja ezeket az alrendszereket a Freescale Vybrid VF6xx sorozatú processzorára
- Mutassa meg ezek működését egy példaalkalmazás segítségével
Kapcsolódó készségek és ismeretek:
- Szoftverfejlesztés C és C++ nyelven
- Linux ismeretek
- Valós-idejű szoftverfejlesztés