En hög tolerans mot fel i datorsystem ger faktiskt en hög säkerhetsnivå. För i exempelvis ett bromssystem styrt av senaste elektroniska teknik måste hänsyn tas till att fel kan uppstå. Det gäller bara att systemet kan upptäcka hur och när. Och hålla reserverna redo.
– Alla som har en bil vet att den går sönder, det gör alla tekniska prylar oavsett om det är ett mekaniskt eller elektroniskt system. Ett helt felfritt system är därför inget man kan räkna med. Men vår målsättning är att en felaktig del eller komponent inte ska medföra att allt slås ut, systemet ska ändå uppföra sig på ett tillräckligt säkert sätt, säger Johan Karlsson.
Hans och forskargruppens huvudsakliga fokus är feltoleranta datorsystem. Den främsta tillämpningen är inbyggda system, det vill säga ett datorsystem som är en del av en annan produkt.
Johan Karlsson intresserade sig för detta ämne redan som nybakad civilingenjör 1982. Då var planen att arbeta i företagsvärlden. Nyfikenheten gjorde att han ändå började forska och det blev så småningom en doktorsavhandling. Men han är fortfarande själv lite förvånad över att befinna sig inom akademin, och att bli professor innebär förstås utmaningar. Professuren i tillförlitliga och robusta realtidssystem blev verklighet 1999 med hjälp av de tre saab-bolagen saab Space, saab Automobile och saab ab. Johan Karlsson är den andre innehavaren. Han ser sig som en brygga för att överföra kunskap.
– De är ju olika bolag, och jag tror att det finns mycket kunskap att kommunicera dem emellan. Min ambition är att få till stånd spännande projekt som har beröringspunkter med både flyg-, bil- och rymdindustrin. Det gäller att balansera så att vi upprätthåller kvaliteten på forskningen samtidigt som det är konkret intressant för industrin.
Stort intresse för kurser
Johan håller också fortbildningskurser i feltoleranta system via Industrihögskolan på Chalmers Lindholmen. Intresset är stort och han har fått förfrågningar från många håll. Idag finns en glupande aptit på kunskap om säkerhet inför utvecklingen av elektroniska system.
Johan försöker sammanfatta det viktigaste om detta område.
– Man måste förstå hela systemet, hur samverkan sker mellan hårdvara och mjukvara. Det är som ett lapptäcke med olika lager i en hierarki, och att förstå hur olika fel kan uppstå och vad de kan orsaka i funktionen är mycket komplext. Problemet är framför allt att i förväg kunna avgöra i hur pass hög grad man kan upptäcka fel.
När felet väl är upptäckt, gäller det att något händer, att systemet på något sätt kan åtgärda fel eller återhämta data. Idag sker detta främst med hjälp av dubbla datorer, som ett reservhjul till bilen ungefär. Det är här tidsaspekten blir viktig. Principiellt menas med realtid egentligen bara att systemet kan nå precisa tidkrav. Om ett fel inträffar under en kritisk händelse, exempelvis när en sensor i ett antisladdsystem känner att bakdelen på bilen är på väg åt sidan, måste felet upptäckas och åtgärdas inom ett fåtal millisekunder. De flesta inbyggda system har sådana tidkrav.

Bestrålning av kommunikationsprocessor i en nod i ett distribuerat system. En radioaktiv källa (Cf-252) och processorn finns i minivakuumkammaren. Kommunikationsbussarna är dubblerade för feltolerans.
Mjuka fel kan orsakas av strålning
I hårdvaran, som Johan och hans kollegor studerat mest, delas felen in i kategorierna transienta och permanenta. De transienta är mjuka fel som inte skadar hårdvaran permanent. Även om funktionen påverkas, så går det att nollställa eller starta om. Ungefär som när PC-n hänger sig. Permanenta fel däremot, kräver att en reservdator aktiveras och kanske att en komponent byts ut.
– Vi har koncentrerat oss främst på de mjuka felen. En av dess orsaker som ännu inte uppmärksammats så mycket, är joniserande partikelstrålning, som kan passera alla material.
Problem med sådan strålning är ett accepterat faktum i rymden. För den senaste generationen kretsar har det uppmärksammats även i flygplan. Fenomenet beror på att tunga joner som kommer ner i atmosfären skapar en hög koncentration av högenergetiska neutroner på 9-18 km höjd.
– Om neutronerna kolliderar med en atom i kretsen kan en tung jon uppstå och ställa till oreda – kanske en etta blir en nolla eller tvärtom i en minnescell. Kretsen skadas inte, men det blir problem. Johan Karlsson menar att strålningen också kan vara en orsak till många ”oförklarliga” effekter som hänförs till buggar i program. Man vet att fenomenet förekommer på marknivå. Felsannolikheten i de flesta kretsar är dock relativt låg.
– Vilken proportion som råder mellan buggar och mjuka fel vet vi inte idag. Men mjuka fel kan mycket väl bli dominerande i framtida elektroniksystem. Därför måste vi lära oss hur vi skyddar oss mot dem.
Intervjun gjordes 2003 av Sofie Hebrand för skriften Ny kunskap.