Sviluppo di un ambiente per l’analisi statistica dell’affidabilità di un software

Definition of methodologies and tools for the static characterization of a hardware/software microprocessor based system. 

  • Duration: 2001-2002
  • Coordinator: Politecnico di Torino
  • Partners: Politecnico di Torino
  • Funded by: Politecnico di Torino under the call Young researchers

Il progetto si propone di affrontare la definizione di metodologie e lo sviluppo di strumenti per caratterizzare in modo statistico l’affidabilità di un sistema hardware/software basato su microprocessore.

Il problema è di particolare attualità sia in sistemi funzionanti in ambienti ad alte radiazioni, quali lo spazio o camere di collisione di particelle subatomiche per esperimenti di fisica, che in prodotti commerciali. In questo caso, la probabilità di guasti transitori causati da radiazioni ambientali è in continuo aumento nelle tecnologie inferiori a 0.18 um operanti a tensioni inferiori a 1.5 volt, in cui l’energia (e quindi la radiazione) necessaria a modificare il contenuto di un elemento di memoria del sistema è molto bassa.

Il problema della tolleranza ai guasti transitori è affrontabile sia a livello hardware che software. Le soluzioni hardware sono tuttavia in genere scartate a causa del loro impatto economico sul costo del sistema finale. Indifferentemente dal tipo di guasto trattato, tutte le tecniche software proposte in letteratura per aumentare l’affidabilità di un sistema a microprocessore implicano sempre l’introduzione di un considerevole overhead nelle performance del sistema, che possono anche essere degradate di 10-100 volte.

Tra i diversi possibili guasti transitori, questa ricerca si concentrerà in modo particolare sugli effetti provocati da guasti di tipo Single Event Upset (SEU) che appaiano nel codice eseguibile e nei dati dell’applicazione e che possono quindi provocare un Control Flow Error, ossia una modifica del corretto flusso di esecuzione (control flow) del software applicativo. Questa classe di errori è particolarmente critica in quanto c’e’ il rischio che l’applicazione produca risultati errati senza che l’utente se ne possa accorgere.

Obiettivo primario di questa ricerca è dunque definire una metodologia per la caratterizzazione probabilistica degli effetti di guasti di tipo SEU che appaiano nel codice.

In particolare il progetto si pone i seguenti obiettivi principali:

  1. Definire una metodologia di SEU Effect Control Flow Analysis che permetta di caratterizzare statisticamente l’affidabilità di un binomio microprocessore/software-applicativo. La metodologia deve essere definita in modo indipendente dal microprocessore, in modo da poter facilmente confrontare l’affidabilità del software applicativo compilato per piattaforme hardware diverse;
  2. Implementare un tool che realizzi l’analisi definita al punto 1;
  3. Validare la metodologia e il tool con tool di Fault Injection, che simulino l’occorrenza di guasti SEU nel sistema durante il suo funzionamento (reale o virtuale tramite simulazione);
  4. Proporre la codifica di un set di istruzioni che sia strutturalmente tollerante guasti nel codice e che possa essere implementato in processori di nuova generazione ad alta affidabilità.

La ricerca proposta risulta, in definitiva, particolarmente significativa sia per l’elevata componente di ricerca sia per l’elevato interesse applicativo in ambito industriale.

Leave a Reply

Your email address will not be published. Required fields are marked *