TRACE32 nell’analisi temporale di sistemi AUTOSAR – Seconda parte

automotive

Le potenzialità di uno strumento di sviluppo professionale come TRACE32 vengono ulteriormente rafforzate nel caso di un suo utilizzo in associazione a tool complementari. Questo articolo rappresenta la seconda parte della serie "TRACE32 nell’analisi temporale di sistemi AUTOSAR" incluso nella Rubrica Firmware Reload. 

ANALISI DI TRACE CON TRACE32

Applicando quanto detto sinora ad un sistema AUTOSAR/OSEK, possiamo rilevare che TRACE32 conosce le informazioni simboliche di alto livello generate dalla toolchain di compilazione: pertanto, conosce i nomi e le caratteristiche delle funzioni, le variabili ed i tipi di dati, oltre all’associazione fra le linee di codice sorgente e il codice oggetto. Inoltre, tramite il file ORTI di descrizione delle risorse di progetto, conosce una serie di oggetti di livello BSW, come per esempio i task e gli allarmi. Con queste informazioni è possibile effettuare molti tipi di analisi, per esempio sulle tempistiche di esecuzione dei task. È anche possibile svolgere analisi basate sulle funzioni, sia suddivise task per task, sia per ogni singolo task o indipendentemente dal task che le ha richiamate. Gli esempi mostrati nelle figure sono relativi ad un’applicazione dimostrativa basata su ERIKA Enterprise di Evidence Srl. ERIKA realizza un’implementazione certificata e open-source OSEK/VDX con API AUTOSAR OS 4.0.3. Un ambiente dimostrativo per simulatore di istruzioni TRACE32 è disponibile sul sito Lauterbach (Figura 1).

automotive

Figura 1: ERIKA Enterprise

INTEGRAZIONE FRA TRACE32 E PRODOTTI DI TERZE PARTI

È importante osservare che TRACE32 non conosce le entità di livello applicativo di un sistema AUTOSAR, in particolare i Componenti e i Runnables, proprio perché queste entità sono definite a livello di modello e non vengono descritte in un file ORTI. Ciò comporta, per esempio, che TRACE32 non ha visibilità diretta della durata di un task AUTOSAR, dal suo inizio alla fine. Lo stesso discorso vale per i Runnables, che sono comunque equiparabili a pure funzioni eseguite, e potrebbero quindi essere esaminati tramite un’analisi standard per funzioni. Per favorire l’utente nell’analisi di questi aspetti del modello, TRACE32 ha definito una serie di marcatori da associare all’informazione di trace, relativi ai task, alle ISR ed ai Runnables. Gli eventi marcati, insieme alle tempistiche ad essi associate, possono essere esportati in formato CSV verso tools di terze parti (Figura 2), per essere poi studiati con sistemi esterni di analisi e verifica dei tempi. È quindi possibile analizzare i dati temporali per svolgere analisi worst-case e per effettuare valutazioni sul carico di picco, o basate su altri parametri che aiutano a ottimizzare il progetto. Si noti anche che questa prestazione è stata sviluppata per AUTOSAR ma può essere applicata a molti altri ambienti. Nella puntata che seguirà verranno introdotti tre diversi possibili tools di terze parti, la cui integrazione con TRACE32 è stata implementata e verificata.

automotive

Figura 2: Esportazione dati tramite comando Trace.EXPORT.TASKEVENTS

Leggi anche la puntata precedente della serie: TRACE32 nell’analisi temporale di sistemi AUTOSAR - Prima parte

Scarica subito una copia gratis

Scrivi un commento

Seguici anche sul tuo Social Network preferito!

Send this to a friend