Ger nytt liv till inbyggda datorsystem

De flesta av våra inbyggda datorsystem går inte att uppdatera. För att tillföra nya funktioner så krävs det att hela elektroniken byts ut. Professor Yi Wang leder ett projekt som ska göra det möjligt att uppdatera mjukvaran i allt från pacemakrar till satelliter medan de fortfarande är i drift.

Projektanslag 2019

Designed for UPDATE: Next-Generation Embedded Systems

Huvudsökande:
Professor Yi Wang Uppsala universitet

Medsökande:
Uppsala universitet
Bengt Jonsson
Philipp Rümmer
Thiemo Voigt

Beviljat anslag:
25 000 000 kronor under fem år

Har du någon gång varit med om att din mobiltelefon blivit helt svart efter en uppdatering? I många fall går inte problemet att lösa utan en total återställning av telefonens mjukvara. Förklaringen till varför detta händer finns i konstruktionen av telefonens inbyggda programvara. 

Risk för krasch

Nu kanske det inte är hela världen när det handlar om en mobiltelefon, men samma problem finns i alla inbyggda datorsystem. Och dessa finns i så gott som all elektronik, från satelliter till medicintekniska tillämpningar.

– Dagens inbyggda mjukvarusystem är inte konstruerade för att uppdateras. Tvärtom, om de förändras på något sätt så är risken stor att de kraschar eller att resultatet blir instabilt och en säkerhetsrisk, säger Yi Wang, professor i inbyggda system vid Uppsala universitet. 

Yi Wang leder ett femårigt projekt med finansiering från Knut och Alice Wallenbergs Stiftelse som ska förändra detta. Målet är att lägga grunden för ett helt nytt sätt att utveckla inbyggda system som kan uppdateras efter hand och på så sätt ges en längre livslängd.

Garantera driftsäkerheten

Utmaningarna är flera. Här krävs både ett teoretiskt genombrott när det gäller designprinciperna bakom de inbyggda systemen, och utveckling av en ny generation mjukvaruverktyg. Verktygen ska bland annat göra det möjligt att analysera och garantera driftsäkerheten hos de inbyggda systemen inför en uppdatering. 

– När det gäller till exempel en mobiltelefon eller en bärbar dator så gör det inte så mycket om det krävs en omstart efter en uppdatering. Men det finns många exempel där det är livsviktigt att systemets drift inte påverkas vid en uppdatering. 

 Yi Wang tar en pacemaker som exempel. Om den enkelt och säkert kunde uppdateras så vore det möjligt att utöka den med nya funktioner. Men dagens pacemakrar går inte att uppdatera utan måste bytas ut genom att patienten tvingas genomgå en ny operation. Och de flesta av dagens medicintekniska lösningar fungerar på liknande sätt.  

– Vore det möjligt att uppdatera medicinteknisk utrustning utan att riskera avbrott eller kritiska störningar så kunde patienterna dra nytta av mjukvaruutvecklingen, och tekniken kunde med tiden förmodligen bli mer energieffektiv, säger Yi Wang. 

När det gäller till exempel moderna fordon så rymmer de en mängd datorsystem som är tidskritiska, där rätt information måste nå rätt mål i tid för att fungera korrekt. Inför en uppdatering av till exempel motorns styrning måste det finnas en garanti att bromsar eller väghållning inte påverkas. 

För att göra det möjligt att uppdatera ett system i drift så krävs det verktyg för att kunna göra en omfattande analys som garanterar driftsäkerheten. Dessutom krävs verktyg som säkerställer att en uppdatering inte påverkar säkerheten hos systemet. En uppdatering får inte öppna säkerhetsluckor som riskerar dataintrång där obehöriga tar makten över ett system. Här behövs nya robusta dataprotokoll som kan säkerställa integriteten under en uppdatering även i mer osäkra miljöer eller nätverk. 

Uppdateras i delar

Projektet är uppdelat i fem arbetspaket och inleds med att forskarna utvecklar en ny designstruktur för inbyggda system. Strukturen bygger på en idé att skapa ett system i olika lager, där lagren ges olika funktioner för att kunna garantera att skilda uppgifter fungerar oberoende av varandra. Det ska göra att systemets enskilda delar kan uppdateras utan att det tas ur drift. 

När ett sådant system uppdateras blir det möjligt att kontrollera att uppdateringen inte påverkar någon annan funktion, och att det finns tillräckliga resurser i systemet för att uppdatera och även driftsätta uppdateringen. 

Nästa projektsteg är att utveckla de verktyg som ska användas för att bygga nya system och analysera resultatet. Redan i dag är de inbäddade systemen så omfattande, med många miljoner rader programkod, att de är omöjliga att hantera manuellt. 

Aktiva samarbeten

Till sist ska forskarna visa vilka förbättringar som den nya tekniken kan leda till genom en rad praktiska fallstudier. Här finns redan ett aktivt samarbete med företag i fordonsindustrin, där man bland annat tagit fram en prototyp av en soldriven liten elbil. Men helst av allt vill Yi Wang skicka upp systemet i rymden. 

Dagens satelliter lider nämligen av samma begränsningar som andra inbyggda system: väl på plats i sin bana runt jorden så kan de inte ges nya funktioner genom uppdatering. 

– Om vi kan byta ut programvaran i en satellit så kan vi ge den nya uppgifter och en längre livslängd än dagens satelliter. Vi hoppas att vi lyckas göra detta inom ramen för vårt projekt, men det är kostsamt så vi behöver göra det i samarbete med andra europeiska universitet, säger Yi Wang. 

Text Magnus Trogen Pahlén
Bild Magnus Bergström