IAR VisualSTATE


IAR Visual State

Il design e la generazione di codice secondo IAR

IAR Visual State è un insieme di strumenti di sviluppo completamente integrati per la progettazione, il test e l’implementazione di applicazioni embedded basate su modelli di macchine a stati.

Vantaggi chiave

IAR Visual State consente la progettazione grafica, il riutilizzo del codice, la verifica e l’integrazione indipendente dal target.

  • Sviluppo intuitivo
  • Manutenzione e riutilizzo semplificati
  • Supporto per sistemi ad alta integrità
  • Codice indipendente dal target

Sviluppo intuitivo

Le macchine a stati grafiche rendono la logica dell’applicazione facile da creare, comprendere e modificare. Consentono un flusso di lavoro iterativo in cui gli stati della macchina corrispondono agli stati dell’applicazione, garantendo un processo di sviluppo naturale e migliorando la chiarezza e la comunicazione.

Manutenzione e riutilizzo semplificati

Concentrarsi sulla logica di progettazione anziché sulla scrittura del codice rende la manutenzione più efficiente. I modelli di macchine a stati possono essere riutilizzati in applicazioni simili con uno sforzo minimo, riducendo i tempi di sviluppo e garantendo coerenza tra progetti con logiche complesse.

Supporto per sistemi ad alta integrità

Il codice generato da IAR Visual State può essere reso conforme agli standard MISRA C/C++ e supporta progetti di sicurezza funzionale (Functional Safety), inclusa la conformità allo standard IEC-61508. La sua verifica formale rileva stati irraggiungibili, punti ciechi (dead-ends) e input non consumati, facilitando l’identificazione di difetti di progettazione che le suite di test tradizionali potrebbero non rilevare.

Codice indipendente dal target

Il codice C e C++ generato gira su qualsiasi piattaforma dotata di un compilatore standard. Poiché non si affida a funzioni specifiche del compilatore, garantisce flessibilità e portabilità tra diversi sistemi embedded; inoltre, il supporto per C# e Java consente lo sviluppo cross-platform in diversi ambienti software.


Funzionalità

IAR Visual State supporta l’integrazione con RTOS, la generazione di codice, la simulazione, la verifica e la gestione delle varianti, aiutando i team di sviluppo a migliorare efficienza, affidabilità e design del software.

  • Compatibile con RTOS: Il codice generato si integra perfettamente con gli ambienti RTOS. È possibile progettare la logica di controllo e assegnare le macchine a stati ai task dell’RTOS, consentendo una distribuzione flessibile dei compiti.
  • Doppia API di codice: Scegli tra un codice leggibile dall’uomo per la tracciabilità o un codice compatto basato su tabelle per la massima efficienza in termini di dimensioni ed esecuzione.
  • Simulazione dell’esecuzione: Il simulatore fornisce debug animato, tracciamento della macchina a stati e analisi dinamica/statica, aiutando a visualizzare le interazioni tra i task.
  • Verifica formale integrata: Identifica problemi difficili da testare come stati irraggiungibili o condizioni di blocco già nelle prime fasi del design.
  • Supporto per varianti di prodotto: Definisci più varianti di prodotto in modo efficiente mantenendo un design di base condiviso, riducendo la necessità di percorsi di sviluppo separati.

Standard supportati

  • UML e Mealy: Sviluppato in conformità con la notazione UML, può essere utilizzato anche per progettare sistemi stato/evento conformi alla notazione di Mealy.
  • ISO/ANSI e MISRA: Tutti i costrutti C/C++ generati aderiscono agli standard ISO/ANSI C e possono essere conformi a MISRA-C:2004, MISRA-C:2012 e MISRA-C++:2008.

Integrazione di terze parti

Connettiti a strumenti esterni e ambienti di sviluppo per migliorare flessibilità e interoperabilità.

  • Control Center: Fornisce ai prodotti di terze parti un’interfaccia verso IAR Visual State, utilizzabile ad esempio per la simulazione remota del modello.
  • API della macchina a stati
  • Integrazione del codice