Diplomske in magistrske naloge

Nudimo ti sodobno opremljeno okolje za raziskave in vsa iSYSTEM razvojna orodja, čez celoten postopek pa te vodijo izkušeni mentorji z obilico nasvetov in napotkov. Za več informacij nam lahko pišeš na jobs@isystem.si.

Zaključena dela:

Optimizacija prenosov podatkov v bliskovni pomnilnik vgrajenih naprav

Diplomsko delo, ki je bilo opravljeno na Fakulteti za elektrotehniko, obravnava merjenje hitrosti prenašanja podatkov v notranji in zunanji bliskovni pomnilnik mikrokrmilnikov in naprav SoC preko UMI monitorjev. UMI monitor je program, ki se naloži v notranji statični pomnilnik naprave in upravlja osnovne operacije bliskovnih pomnilnikov, kot so pisanje, branje itd.

Meritve so bile namenjene pregledu vpliva parametrov UMI programa na čas zapisovanja podatkov. Na podlagi teh meritev je bil razvit program, ki lahko določi optimalne nastavitve za posamezen UMI monitor program.

Optimizacija zagona operacijskega sistema GNU/Linux na vgrajenih sistemih

Na Fakulteti za računalništvo in informatiko je bila uspešno zaključena diplomska naloga, ki je obravnavala optimizacijo zagona in vzpostavitev razvojnega sistema (ang. toolchain) za gradnjo GNU/Linux OS.

Čas zagona operacijskega sistema in aplikacije na vgrajenih sistemih je običajno kritičnega pomena. Aplikacije pogosto tečejo na posebni različici sistema GNU/Linux, ki je namenjena vgrajenim sistemom, kjer pa čas zagona ni optimalen.

S pomočjo razvojnih orodij iSYSTEM je bil najprej diagnosticiran zagon sistema od zaganjalnika prve stopnje (ang. First Stage Boot Loader) do uporabniške aplikacije. Sledila je časovna optimizacija zaganjalnika U-Boot ter jedra operacijskega sistema GNU/Linux z vsemi razpoložljivimi orodji. Čas zagona na konkretnem Avnet ZedBoard vgrajenem sistemu je bil zmanjšan z začetnih 35 sekund na 1 sekundo.

Razvoj mikrokrmilniškega učnega kompleta za učenje programiranja

Na Fakulteti za elektrotehniko je bila uspešno zaključena diplomska naloga, ki je obravnavala celoten postopek razvoja mikrokrmilniškega kompleta za učenje programiranja oz. študentske razvojne mikrokrmilniške ploščice MiSKo 3, ki jo bodo študentje drugih letnikov Aplikativne elektrotehnike, smer elektronika uporabljali pri predmetu Osnove mikroprocesorske elektronike.

Študentska ploščica temelji na mikrokrmilniku družine STM32G474, samo vezje pa vsebuje USB hub, povezan z glavnim mikokrmilnikom in razhroščevalnikom ST-LINK 2.1, USB C konektor za napajanje in prenos podatkov, vezje za nadzor napajanja in moˇznost uporabe dodatnega pomnilnika preko vodila QSPI. Glavni mikrokrmilnik nadzira periferijo, uporabniku fizično na voljo preko konektorjev, ki so po funkcionalnosti in razporeditvi enaki kot na komercialni razvojni ploščici Arduino Due. Preko teh konektorjev bodo lahko študentje uporabljali več različnih komunikacij, kot so USART, UART, SPI, I2C, CAN in LIN ter več izhodov s časovniki, analognih vhodov z AD pretvorniki in analogne izhode z DA pretvorniki. Razvojna ploščica vsebuje tudi LCD zaslon, 6 tipk in 8 svetlečih diod, nameščenih na spodnji strani za interakcijo, podobno igralnim konzolam.

Shema in samo vezje sta narejena v programskem okolju Altium Designer, vezje je zgrajeno iz šestih plasti, pri sami izdelavi sheme, vezja in nato polaganja komponent paje študent sodeloval z našim podjetjem. 

Prilagoditveno tiskano vezje za testiranje elektronskih sistemov

Na Fakulteti za elektrotehniko je bila uspešno zaključena diplomska naloga, ki je obravnavala celoten postopek razvoja prilagoditvenega tiskanega vezja za testiranje elektronskih sistemov.

Razvoj vezja je del rešitve večjega sistema iC5700 BlueBox, njegov namen pa je testiranje kompleksnejših vgrajenih sistemov. Ti sistemi spremljajo realnočasne signale na eni ali več aplikacijah istočasno.

Globalni čas v vgrajenih sistemih

Vgrajeni sistemi so računalniške naprave, namensko oblikovane za izvajanje specifičnih nalog znotraj večjega sistema. Poseben problem pri takih sistemih je časovna usklajenost posameznih komponent; različne ure nihajo z različnimi frekvencami, kar povzroči neskladje med časovnimi oznakami podatkov, neoptimalno delovanje sistema in lahko tudi dejanske napake v programih. Za vzdrževanje dopustne časovne napake je treba to neskladje stalno popravljati.

V okviru tega dela smo na razvojni platformi Beaglebone Black implementirali in preizkusili tri uporabljene metode za sinhronizacijo časa.