Bruk av feilinjeksjon for å bestemme påvirkningen strålingseffekter har på en SRAM basert FPGA. Johan Alme Høgskolen i Bergen FPGA forum 2012, Trondheim 14.-15. Feb
Stråling Kan forenklet beskrives som en mekanisme for overføring ("transport") av energi fra en strålekilde til et materiale. - Statens Strålevern
Strålingseffekter og FPGA RAM RAM RAM RAM Q Q SET CLR D Q Q SET CLR D RAM RAM Q Q SET CLR D Q Q SET CLR D 0101000101 0101011000 0101011110 1010110010 Transistor 0101000101 0101011000 0101011110 1010100010 Transistor + Transistor + + + - - - - - + + - -
ALCE og LHC TPC detektor
Stråling ved CERN Hvordan oppfører elektronikk seg i et slikt miljø?
ALCE TPC Elektronikk Ca 5000 kretskort Ca 6000 FPGAer Samlet vekt på elektronikken er flere tonn! NB: Denne teknologien startet sitt utviklingsløp i 2000. ppgraderinger er nå diskutert
Hvor er elektronikken plassert? 216 Xilinx Virtex-2 pro midt i strålingssonen. Så hvorfor ble kommersielle komponenter valgt?
Aktiv Partiell Rekonfigurasjon Gir mulighet til å lese og/eller skrive konfigurasjonsminnet mens FPGAen er konfigurert uten å påvirke designet. Visse begrensninger: Dette gjelder ikke BRAM Kan ikke bruke SRL16 minneer i designet. SRL minne er bruker LUTene til RAM. Denne RAMen er konfigurasjonsramen. Konfigurasjonsminnet til Xilinx er inndel i frames. Dette er den minste adresserbare enheten. Det er mulig å lese og skrive enkle frames. Xilinx Virtex-2 pro 936 frames som kan rekonfigureres. Frame størrelse: 484 bytes Major frame 0.0 Major frame 0.1 Major frame n.n Minor frame buffer Minor frame 0 Minor frame 1 Minor frame n Minor frame 0 Minor frame 1 Minor frame n Minor frame 0 Minor frame 1 Minor frame n
Rekonfigurasjonsnettverk Komponenter: Strålingstolerant Flashminne Strålingstolerant Flash basert FPGA Xilinx Virtex- pro DCS kort: Embedded PC med Linux Virkemåte: RCU support FPGA leser og sammenligner Flash innhold mot konfigurasjonsminnet på Xilinx. Er det ulikheter blir framen med feil overskrevet. Data Acquisition System SU card SU FPGA Trigger System TTCrx ASC DCS board embedded computer Channel A Channel B Clock RCU main FPGA DCS bus (32 bit) SelectMap F Detector Control System DCS t board FPGA w/ ARM cpu 16 bit bus RCU support FPGA DCS Flash Memory Device w/ Linux RCU motherboard RCU Flash Memory Device Reconfiguration Network ALTR bus A/B Front End Cards
Xilinx FPGA kode Delen av designet som er markert i rød skygge er aktivt under datautlesning. Dette er ca 98% av total designstørrelse. Designet bruker ca 90% av e ressurser på FPGAen. Konsekvens: TMR eller andre mitigansjonsteknikker er nesten ikke benyttet. Control Node Monitoring Module Result Memory DCS bus DCS interface RCU bus protocol Safety Module Status Memory Front end control bus interface Readout Node RCU bus protocol nstruction Sequencer nstruction Memory nstructions Readout List Memory Hit List Memory Data Mem A0 & A1 Channel Readout Unit A ALTR F A RCU Decoder and Bus Arbiter RCU bus Result Unit Result Memory Data Mem B0 & B1 ALTR F B Trigger Receiver CDH FF Event Manager ALTR nterface Data Assembler SU interface FC Branch A FC Branch B ALTR Branch A 40 bit Result & Status ALTR Branch B 40 bit RCU bus protocol Channel Readout Unit B Triggers CDH (32 bit) Triggers & Messages RCU bus protocol DDL Formatted Data (32 bit) CDH (32 bit) ALTR Raw Data (40 bit) SU bus 32 bit
FPGA editor screenshot
Plot av konfigurasjonsfilen. GCLK, B, & LE BRAM BRAM interconnect
DDL fiber optical link RCU Fiber optical link Feilinjeksjon njeksjon av feil via Aktiv Partiell Rekonfigurasjon. Mulig av to årsaker: Busy Box Linux på DCS kortet. Bus arkitekter mellom DCS og RCU hovedkort. RRC Local Trigger Unit With Linux PC with Linux (DAQ & DCS) Ethernet Switch DCS board With Linux RCU SU card DCS board RCU board Flash Mode Software Linux incl. drivers Altera FPGA incl. ARM core 8 bit data 23 bit address 5 bit ctrl RCU Flash Memory Device selectmap Mode Software Linux incl. drivers Altera FPGA incl. ARM core 8 bit data 7 bit ctrl RCU Xilinx- vp 7 Selectmap Bus nterface 32 bit RCU Xilinx- vp 7 Selectmap Bus nterface Normal Mode Linux incl. drivers Altera FPGA incl. ARM core 16 bit Software 32 bit data 16 bit address 3 bit ctrl RCU Actel APA075 Feilinjeksjon-SW på DCS kort gjør det mulig å lage et testoppsett som er helt likt det reelle oppsettet. Samme programmeringsfil. Helt lik funksjon og oppførsel! RCU Flash Memory Device Branch A FECs Branch B FECs
Feilinjeksjon Connect to all sub systems testprosedyre nitialize System Ekte data (hentet fra reelle hendelser) lastet opp i bufferminnet på Frontende kortene. Reset RCU/ Upload pedestials nject SEU Write to inject logfile * SEU blir injisert i en frame. Framenummer og bitposisjon blir loggført ssue trigger from LTU Trigger blir sendt starter utlesningsprosess. Verify event Write to result logfile * Data blir validert i mottager PC. Loggføres: Run 1 cycle FRVC * All events written to log Krasj Datamengde Bitfeil SEU korrigert Yes Readout stopped? No More events? Yes Reinitialize system No Disconnect/ Fnished
Resultater () Antall bitflip injisert: 206151 Feil kategorisert i 2 typer: 1. Krasj medfører full rekonfigurering 2. Datafeil 1. Feil størrelse 2. Bitfeil Kan medføre ustabilt system Målingene viser en Poisson fordeling på feilene. Dette passer bra med at de er statistisk uavhengige
Resultater () Feiltype Totalt antall feil Feil/SEU[%] SEUP [SEU/feil] Alle 10341 5,02 ~19,9 Krasj 2210 1,07 ~93,5 Alle datafeil 8131 3,94 ~25,4 Størrelse 2499 1,21 ~82,6 Bitfeil 5632 2,73 ~36,6 Xilinx konservativt anslag: SEUP: 10 SEU/feil Testingen viser at designet er bedre enn dette.
Resultater () BRAM C frames BRAM C frames SEU som fører til krasj SEU som fører til datafeil nteressant observasjon: -Nesten ingen SEU i BRAM interconnect fører til krasj -Mange SEU i BRAM interconnect fører til datafeil
Reelle målinger RCU support FPGA gjør det mulig å føre statistikk over antall SEUs under operasjon. Hver SEU er loggført med tilhørende framenummer. Statistikken er lagret i en database og data fra perioden Mai August i fjor ble analysert* Totalt antall SEU (fordelt på 216 RCU kort): 1552 ca 7.2 per RCU ntegrert luminositet i perioden: 2840 nb -1 Luminositet er en måleenhet kan sies å angi partikkeltettheten til strålen. ntegrert luminositet er proposjonal med antall kollisjoner innenfor en gitt periode *Dette arbeidet ble utført av Ketil Røed og er publisert i JNST Desember 2011
Resultater Det er en tydelig korrelasjon mellom integrert luminositet og antall SEU Dette kan vi se på som sensitiviteten til FPGA typen. Gjennomsnittsverdi: 0.49 SEU/nb -1 Estimert antall funksjonelle feil i perioden Mai - August: Totalt: 77.9 feil Krasj: 16.6 feil Feilrate: 0,13 krasj/døgn Loggførte og analyserte feil i perioden 1. Mai 16. Juni ~4 krasj som kan ha sammenheng med SEU Feilrate: ~0.9 krasj/døgn* * Luminositeten øker noe i perioden Mai August så det er legitimt å anta at det kan ha vært flere feil på slutten av perioden enn på starten.
Hva kan dette brukes til? Basert på feilinjeksjon og på reelle målinger av SEU er det mulig å estimere et totalt antall feil som vil skje ved økende integrert luminositet. Den integrerte luminositeten er planlagt og økes med en faktor 10 i løpet av de neste 6 årene. Endres designet må ny feilinjeksjon gjennomføres. Antall SEU er kun bestemt at strålingsmiljø og teknologi. Antall funksjonelle feil er også bestemt av design Endres FPGA-typen må nye målinger gjøres Sensitiviteten til RAM cellene er ikke nødvendigvis lik.
Konklusjon Nå: Studien som har blitt gjort er viktig for å kunne forstå og tolke feilsituasjoner som oppstår i daglig drift av ALCE TPC detektoren. Skyldes en situasjon strålingsfeil eller andre typer feil? Feilinjeksjon har vist seg å være et godt verktøy for å øke robustheten til designet. Fremtidige oppgraderinger: ppgraderinger av elektronikken er diskutert i disse dager. Fokus: Økt datarate mer fysikk Studien viser at feilraten ved økt integrert luminositet kan bli den store begrensningen på systemet med nåværende løsning. Designvalgene ved neste generasjons utlesningelektronikk må ta hensyn til strålingsmiljøet.
(Direkte) Bidragsytere Johan Alme (jalm@hib.no): Høgskolen i Bergen Ketil Røed, Attiq Ur Rehman CERN/Universitetet i Bergen Kjetil Ullaland, Dominik Fehlker: Universitetet i Bergen Christian Lippmann, Magnus Mager: GS Frankfurt, CERN