Triple Modular Redundancy -virheenkorjaustekniikan käyttö FPGA-piirien ajonaikaiseen suojaamiseen avaruuskäytössä
Abstract
Avaruuteen tai muualle säteilyalttiiseen ympäristöön tarkoitetut elektroniset laitteet on suojattava säteilyltä. Nykyään säteilyalttiissa paikoissa käytetään paljon SRAM- tyyppisiä FPGA-piirejä. SRAM-solut ovat kuitenkin herkkiä vaihtamaan niihin tallennettuja arvoja säteilylle altistuessaan. Triple modular redundancy -tekniikka on yleinen tapa suojata FPGA-piirejä käytön aikana. Tässä tutkielmassa selvitetään, kuinka FPGA-piirejä suojataan säteilyltä TMR:n avulla.
TMR toimii siten, että yksittäinen piirin osa monistetaan kolmeksi rinnakkain toimivaksi osaksi. Nämä kolme lohkoa suorittavat aina keskenään samaa tehtävää. Yhden vikaantuessa kaksi kopiota antavat edelleen oikean ulostulon. Lopullinen ulostulo äänestetään kolmesta ulostuloista siten, että valitaan sellainen signaali, joita on kaksi tai enemmän.
TMR huono puoli on se, että se kolminkertaistaa piirin koon. TMR:stä onkin kehitetty erilaisia variaatioita, joilla pyritään minimoimaan piirin pinta-alaa ja tehonkulutusta, mutta kuitenkin säilyttämään TMR:n antama toimintavarmuus. Näissä tekniikoissa arvioidaan piirin eri osien vaikutuksia koko järjestelmän toimintaan, ja lisätään TMR- suojausta vain sellaisiin osiin, joiden vikaantumisesta on eniten haittaa.
TMR pystyy luotettavasti korjaamaan piirillä tapahtuvan yksittäisen vikaantumisen. Useampi samanaikainen vikaantuminen voi johtaa siihen, että yksittäiset piirin osat toimivat väärin ja näin mahdollisesti koko piiri lakkaa toimimasta. Piiri pitää pystyä korjaamaan jollain muulla menetelmällä ennen kuin vikoja kertyy liikaa. Viat korjaantuvat, kun koko piirin toiminta ohjelmoidaan uudelleen. Uudelleenohjelmointia käytetäänkin virheidenkorjaustekniikkana. Tällaista uudelleenohjelmointia kutsutaan scrubbingiksi, ja sen käyttö yhdessä TMR:n kanssa on yleisin tapa suojata SRAM- FPGA-piirejä.