Table of Contents
Mikroprosessorien viansieto on olennaisen tärkeää, jotta voidaan varmistaa luotettava toiminta kriittisissä järjestelmissä. Siihen kuuluu tekniikoita, joilla voidaan havaita, korjata tai estää käsittelyn aikana mahdollisesti esiintyviä virheitä. Tässä artikkelissa tarkastellaan yhteisiä menetelmiä, laskelmia, joita käytetään viansietokyvyn ja käytännön toteutuksen arvioimiseen.
Virheiden sietomenetelmät
Useita tekniikoita käytetään parantamaan vikatoleranssia mikroprosessorissa. Näitä ovat laitteiston resistenttiys, virhetunnistus ja korjauskoodit sekä ohjelmistopohjaiset lähestymistavat. Laitteiston resurssit sisältävät moninkertaistamista, jotta jos yksi epäonnistuu, toinen voi ottaa ohjakseen. Virheen havaitsemiseen käytettävät menetelmät, kuten pariteettitarkistukset ja sykliset erotarkistukset (CRC), tunnistaa virheet tietojen siirron tai käsittelyn aikana.
Virhekorjauskoodit, kuten Hamming-koodit, eivät ainoastaan havaitse, vaan myös korjaa tietyntyyppiset virheet automaattisesti. Ohjelmistomenetelmiin kuuluu kellojen ajastimet ja poikkeuskäsittelyrutiineja, jotka seuraavat järjestelmän terveyttä ja vastaavat virheisiin nopeasti.
Virhetoleranssin laskeminen
Virhetoleranssin arvioiminen edellyttää usein järjestelmän keskimääräisen ajan laskemista vikatilan (MTBF) ja virhetason välillä. Luotettavuusmallit, kuten vikapuuanalyysi (FTA), auttavat tunnistamaan mahdolliset vikapisteet ja arvioimaan järjestelmän kestävyyttä. Esimerkiksi jos osan vikaantumisen todennäköisyys on p ja käytetään murtovenymää, järjestelmän kokonaisvarmuus voidaan laskea tarpeettomien yksiköiden määrän perusteella.
Järjestelmässä, jossa on n tarpeettomia komponentteja, todennäköisyys, että järjestelmä epäonnistuu, on usein mallinnettu seuraavasti:
]P(järjestelmän vika) = pn[]
Käytännön lähestymistavat
Mikroprosessorien viansietokyky perustuu järjestelmän vaatimuksiin. Laitteiden resurssit ovat yleisiä ilmailu- ja lääkinnällisissä laitteissa, joissa luotettavuus on tärkeää. Virheiden havaitseminen ja korjaaminen integroidaan muistiin ja viestintään, jotta estetään tietojen korruptio.
Suunnittelijat sisältävät myös vikaa sietäviä arkkitehtuuria, kuten Triple Modular Redundancy (TMR), jossa kolme samanlaista moduulia toimivat rinnakkain ja enemmistöäänestys määrittää oikean tuloksen. Säännöllinen testaus ja validointi ovat välttämättömiä järjestelmän eheyden ylläpitämiseksi ajan mittaan.