En pacemaker får aldrig sluta fungera och ribban ligger lika högt för många andra medicintekniska apparater. Därför tredubblas ofta hårdvaran med stor energiförbrukning och högt pris som följd. Det Chalmersledda EU-projektet Desyre (on-Demand System Reliability) har tagit fram en ny arkitektur som ger 28 procent lägre energiförbrukning och 48 procent mindre kiselyta trots att lösningen ger nio gånger lägre felfrekvens.
Handlar det om en medicinteknisk apparat, fordonselektronik eller en satellit är det inte ett alternativ. Då måste systemet fortsätta fungera korrekt eller stänga av sig på ett kontrollerat sätt och sedan larma användaren.
En vanligt metod för att skapa felsäkra system är att ha ett antal identiska uppsättningar av hårdvaran som kör samma program, så kallad lock-step. Så länge svaren är lika är allt frid och fröjd, skiljer de sig åt får majoriteten bestämma vad som är rätt.
För ett implantat innebär det att batteriet dräneras onödigt snabbt och dessutom ökar kostnaden för hårdvaran. Det senare kan åtgärdas – om man har gott om tid – genom att exekvera programmet flera gånger i samma hårdvara och jämföra resultaten.
Men för den som kräver realtidsprestanda är den nya Desyre-arktitekturen ett intressant alternativ. Lösningen har utvecklats under tre och ett halv år i ett EU-projekt med samma namn och resultaten är mycket lovande. Eller vad sägs om 28 procents lägre energiförbrukning och 48 procents mindre kiselyta. Allt jämfört med ett system med tre identiska uppsättningar hårdvara.
Om man istället jämför med ett tidsredundant system – programmet körs två gånger och resultatet jämförs – exekverar Desyre koden 14 till 32 procent snabbare.
Sist men inte minst, när man tittar på permanenta fel och jämför Desyre med ett system som dubblerat resurserna genom att ha en reservprocessor som tar över vid funktionsfel – reducerar Desyre antalet systemfel (FIT) nästan en storleksordning. I praktiken ger arkitekturen därför nio gånger lägre livslängd.
En viktig del i den nya arkitekturen är en liten felfri logikenhet som övervakar resultaten från en helt vanlig processor och kan avgöra om resultaten är korrekta. Tekniken kommer från den italienska partnern Yogitech och är under patentering.
– De har inte berättat om detaljerna men som jag förstår det hämtar logikenheten information från olika delar av processorn. Sedan har de metoder för att avgöra om det är något problem. Vissa typer av fel ger helt enkelt vissa typer av resultat, säger Ioannis Sourdis som är koordinator för projektet och docent på Chalmers.
Rent praktiskt delas systemet upp i en felfri del där Yogitechs logikenhet ingår och den del där det kan uppstå fel med vanliga processorer, DSP:er och andra logikblock. Lösningen bygger på att man kan addera datakanaler till ett antal intressanta ställen i beräkningsenheterna så att det går att hämta ut data utan att påverka funktionen hos dessa.
Tekniken ökar visserligen kiselytan en smula men gör det möjligt att avgöra vilken av beräkningsenheterna som har rätt resultat och vilken som har fel om resultaten är olika.
Om man väl har identifierat ett fel så kommer nästa fråga, är det en engångshändelse (transient) eller är det ett permanent fel?
Här kommer programbibliotek väl till pass som även det nyttjar den extra information som hämtats från processorn. Den felfria delen av systemet kan sedan välja att exempelvis flytta uppgiften till en fungerande processor eller kanske bara byta ut en trasig del av processorn eller vidta någon annan åtgärd för att systemet ska kunna fortsätta fungera korrekt.
– Jämfört med trippelredundant hårdvara har vi en lösning som kostar ungefär som dubblerad hårdvara men som är smartare. Vi kan i 60 procent av fallen avgöra vilken del som är fel, det är bättre än vad tredubblad hårdvara klarar av, säger Ioannis Sourdis.
Grunden till Yogitechs teknik fanns redan vid starten men har vidareutvecklats under projektets gång.
– Vi har också utvecklat metoder för att isolera permanenta fel samtidigt som vi fortsätter att använda resten av systemet.
Även om projektet fokuserat på medicintekniska tillämpningar som en konstgjord del av en hjärna och en konstgjord bukspottkörtel, bägge under utveckling av nederländska Recore, så finns andra områden där den skulle passa, som rymdtillämpningar och i fordonselektronik.
Att intresse är brett visas inte minst av styrgruppen där det finns representanter för bland annat Ruag Space, ST Micorelectronics, Xilinx, SKF och Europeiska rymdorganisationen ESA.
I Desyrekonsortiet ingår europeiska experter på feltoleranta och självreparerande system. Från den akademiska världen deltog Chalmers (som även var projektledare), University of Bristol (Storbritannien), EPFL (Schweiz), Forth (Grekland) och Imperial College London (Storbritannien). Industripartners var Neurasmus och Recore Systems (Nederländerna) och Yogitech (Italien).
Mer om projektet på
www.desyre.eu