EO_472

DIGITAL SAFETYCRITICAL SYSTEMS 62 - ELETTRONICA OGGI 472 - SETTEMBRE 2018 parecchi decenni, in particolar modo nei settori fer- roviario e aeronautico. Ciò richiede inevitabilmente l’adozione di strategie per la gestione dell’obsolescen- za dei componenti, poiché i componenti industriali standard solo raramente sono disponibili per periodi superiori ai 5-10 anni. Sotto questo aspetto gli FPGA garantiscono significativi vantaggi poiché una funzio- ne non è implementata in un componente dedicato, ma nella programmazione stessa. La cessazione della produzione di un componente non comporta alcuna difficoltà in quanto è possibile eseguire il porting del codice sui nuovi FPGA, con funzionalità perfettamen- te identiche. Di conseguenza, progetti per i quali sono previste durate superiori ai 30 anni non rappresenta- no un problema, anche nel caso di cambio del fornito- re di FPGA. Ciò garantisce l’indipendenza da uno specifico pro- duttore. Gli FPGA danno sempre l’opportunità di inte- grare ulteriori funzionalità in una fase successiva, ad esempio per aggiornare il sistema. Naturalmente que- sto livello di flessibilità influenza anche le fasi iniziali del ciclo di vita di un prodotto: se alcune delle funzioni hardware sono implementate negli FPGA, tali funzioni possono essere collaudate parallelamente a ulteriori sviluppi. Ciò permette di risparmiare tempo durante le fasi di commissioning e di test dell’intero sistema. Componenti per il funzionamento in un range di temperature esteso Uno dei requisiti più comuni, specialmente nel cam- po delle applicazioni safety-critical, è la possibilità di funzionare in un intervallo esteso di temperature, so- litamente compreso tra -40 e +85 °C. Il reperimento di blocchi base e componenti standard idonei al fun- zionamento a queste temperature può rappresentare un problema. Nel momento in cui i requisiti diventano più severi ed è richiesto il funzionamento nel range di temperatura estremo, che va da -55 a +125 °C, risulta molto difficile se non impossibile reperire i componen- ti necessari per implementare le differenti funzionali- tà in hardware. Fortunatamente gli FPGA offrono una gamma sufficientemente ampia per queste temperatu- ra estreme. Ridondanza e immunità ai fenomeni SEU La strategia più valida per ridurre l’esposizione ai rischi di un sistema è senza dubbio la ridondanza, ovvero la duplicazione funzionalmente identica dei component chiave al fine di ovviare senza problemi a eventuali guasti di un singolo componente. Un bloc- co base il cui malfunzionamento provoca l’arresto di un intero sistema viene definito SPOF (Single Point of Failure). Ogni blocco base principale può essere uno SPOF. Nelle applicazioni aeronautiche, per esempio, gli errori che si verificano nelle memorie provocati dalle radiazioni cosmiche possono rappresentare un pro- blema. In particolare si possono verificare fenomeni di SEU (Single Event Upset) e di MBU (Multiple Bit Upset), una tipologia di guasto che provoca la commutazione del valore logico (da 0 a 1 o viceversa) di uno o più bit presenti negli elementi di memoria. Nel caso in cui i componenti critici come ad esempio una CPU sono forniti in versioni ridondanti multiple con voting (arbi- tro), è possibile incrementare sia la sicurezza funzio- nale sia l’affidabilità. La ridondanza con funzionalità di voting può essere realizzata mediante gli FPGA, con l’ulteriore vantaggio di poter replicare questa logica in ciascuna istanza mediante una semplice operazione di “copy & paste”. Nell’FPGA questa ridondanza vie- ne ripetuta al fine di consentire il completamento del calcolo nel caso di malfunzionamento di un flip-flop dell’FPGA. Ciò si traduce in un tasso di errore pari a 0,000001 FIT, il che significa che la probabilità che si verifichi un guasto in un miliardo di ore di funziona- mento è pari a una su un milione. In pratica, la probabi- lità che questo evento si verifichi è praticamente nulla. Funzionalità real-time e tempi di risposta garantiti Oltre all’affidabilità, le applicazioni di tipo safety-critical richiedono tempi di esecuzione calcolabili. Il sistema deve reagire a un evento esterno in un periodo di tem- po prestabilito, anche nelle condizioni peggiori (worst case). Le tipiche architetture di elaborazione utilizzano interrupt e topologie DMA che possono influenzare in maniera negativa i tempi di risposta dei singoli processi (task) nel momento in cui un processo richiede l’acces- so alle medesime risorse. Per questo motivo risulta diffi- cile ottenere il comportamento deterministico – ovvero con temporizzazioni prevedibili con esattezza – richie- L’FPGA integrata nel modulo “rugged” CC10C in formato COM Express con processore ARM i.MX6mette a disposizione I/O flessibili e personalizzabili

RkJQdWJsaXNoZXIy MTg0NzE=