Razmotrimo primjer elektroničke upravljačke jedinice (ECU) koja koristi tradicionalni statički ugrađeni softver. Bootloader je softverska komponenta koja se koristi i za pokretanje pokretanja glavnog ECU softvera, uključujući kopiranje softvera u RAM, i za obavljanje bilo kakvih provjera softvera prije pokretanja. Bootloader je također odgovoran za ažuriranje softvera, primanje, provjeru i pisanje ažuriranog softvera u memoriju, obično Flash memoriju. Stoga se obično koristi i izraz Flash Bootloader.
Koriste li se isti bootloaderi u razvoju i proizvodnji?
Obično se isti bootloader može koristiti u razvoju vozila i povezanih ECU-ova te u normalnoj proizvodnji, sa zaštitom kako bi se osiguralo da proizvodni ECU-ovi imaju mnoge mogućnosti razvoja ili deaktivirane inženjerske bootloadere. Tijekom razvoja vozila često je poželjno ukloniti sigurnosne mehanizme proizvodnih bootloadera kako bi se omogućila brza implementacija razvojnog softvera.
Sigurni pokretač
Sve više svi pokretači moraju biti sigurni. Međutim, tradicionalno je to bila razlika, koja se obično primjenjuje radi zaštite funkcionalnosti koje se bave sigurnošću, sigurnošću, a ponekad i performansama.
Bootloaderi obično provjeravaju softversku memoriju ECU-a prilikom pokretanja i primljenog softvera prije ažuriranja softvera i u memoriji nakon toga.
Mehanizmi obično uključuju:
- Autentikacija softvera primljenog i/ili prisutnog u memoriji u vrijeme pokretanja, često korištenjem hash softverskog binarnog softvera za provjeru ispravnosti generirane sigurnim procesom kompilacije službeno objavljenih verzija softvera.
- Autentikacija pošiljatelja pomoću sjemena i ključa, zaštita sigurnih podataka unutar ECU-a pomoću zaštićene memorije i memorijskih mapa za definiranje pristupačnih/prepisivih područja.
Dvostruki pokretač
Neke implementacije bootloadera su u dva dijela, otuda i pojam dual bootloader. U tom se slučaju primarni pokretački program ne može ažurirati, kao dio osiguranja bootloadera. To se odnosi na pokretanje modula i ažuriranje sekundarnog bootloadera. Sekundarni bootloader može se ažurirati putem zaštićenog postupka, omogućujući izmjene procesa ažuriranja softvera, na primjer, memorijske karte, omogućujući njihovo normalno zaključavanje. Ova vrsta bootloadera sada je rjeđa zbog novih metoda osiguranja procesa ažuriranja pomoću ugrađenog sigurnog hardvera, na primjer, HSM (Hardware Secure Module).
Imajte na umu da je ovaj izraz poput dvostrukog pokretanja, gdje su dostupni blokovi s dva pokretanja ili pune memorije, što omogućuje ažuriranje neiskorištene verzije dok je jedna verzija aktivna. To zahtijeva dodatnu memoriju u svakom ECU-u koji podržava ovu metodu ažuriranja.
Capital Embedded Bootloader
Capital Embedded Bootloader podržava pouzdana ažuriranja ECU-a tijekom razvoja, proizvodnje vozila i tijekom vijeka trajanja vozila putem povezanih dijagnostičkih alata ili on-line metodologija. Standardizirani ISO 14229 UDS protokol koristi se u nizu uobičajenih mrežnih sabirnica vozila, Ethernet, CAN/CAN-FD, LIN, FlexRay, a moguće je koristiti i druge metode poput ASAM kalibracijskih protokola. Cybersecurity ključni je aspekt tijeka ažuriranja softvera i značajke koje omogućuju provjeru autentičnosti softvera, a opcije sigurnog pokretanja dio su rješenja. Kako bi se zadovoljili specifični zahtjevi OEM (proizvođači originalne opreme) i MCU, dostupna je široka podrška za širok raspon ECU projekata.
Koja je razlika između OTA i FOTA?
OTA (over the air) ažuriranje ili FOTA (firmware over the air) metoda je za postizanje prijema novog softvera za ugrađeni uređaj, na primjer, automobilski ECU, na daljinski način, a ne putem izravno povezanog servisnog alata u radionici. To može zahtijevati neke mogućnosti ugrađenog dijagnostičkog ispitivača u koordinacijskom ECU-u i/ili sposobnosti oporavka i samo-testiranja u samom bootloaderu.