Metodologie di progetto per i system on a programmable chip.

Dalla rivista:
Elettronica Oggi

 
Pubblicato il 15 dicembre 2001

Una volta selezionata la mappa di memoria e le periferiche, problemi quali la generazione del codice C per il processore, la scelta del sistema operativo e i driver delle periferiche assumono un aspetto di notevole criticità. Quando il PLD viene programmato, è necessario generare un file del dispositivo che integri il codice di inizializzazione del dispositivo con il file di inizializzazione del PLD tradizionale. Per far ciò è necessario disporre di una metodologia che riesca a integrare questi elementi all’interno di un processo coerente.

Non sono dunque solamente gli elementi dei blocchi IP della metodologia di progetto che devono subire variazioni. Sotto molti altri aspetti la metodologia di design è allineata con quella già in uso per i circuiti ASIC. Gli utenti stanno esaminando la possibilità di disporre di tool che in precedenza erano di stretta pertinenza dello sviluppo ASIC.

Solo fino a poco tempo fa la simulazione funzionale e delle temporizzazioni era sufficiente per soddisfare le esigenze degli utilizzatori di PLD. Gli stessi adesso stanno esaminando l’utilizzo di tool di simulazione comportamentale per ottimizzare il processo di design: per soddisfare questa esigenza Altera mette ora a disposizione le funzioni di simulazione comportamentale di terze parti.

I progettisti stanno cercando di incrementare la velocità di simulazione senza compromettere in alcun modo l’accuratezza e di “comprimere” in maniera efficace il numero di circuiti logici necessari in funzione del livello di risoluzione richiesto. I tool di simulazione attualmente disponibili consentono di ottimizzare questo processo.

Stima della potenza

Attualmente sono anche disponibili tool per l’analisi della potenza basati su file di vettori di simulazione. Tali file rappresentano il funzionamento del dispositivo in modo da garantire una modellazione più accurata della dissipazione del PLD. Tale stima è senz’altro più precisa rispetto a quella ottenibile con i tool della generazione precedente in cui la dissipazione di potenza veniva calcolata sulla base di parametri quali dimensioni del progetto, velocità di clock e “toggling rate” dei nodi.

Gli utenti stanno inoltre cercando di aggiungere alla simulazione delle temporizzazioni basata sui ritardi la simulazione delle temporizzazioni basata sulla “temporizzazione minima” al fine di verificare che l’intero progetto possa operare correttamente in tutti i range di funzionamento previsti.

Le variazioni della metodologia di progetto sono imputabili essenzialmente all’adozione di nuovi tool che permettono o di incrementare le prestazioni di un design o di aumentare la produttività mediante la riduzione del tempi di sviluppo. La progettazione in linguaggio C e l’impiego di tool di sintesi comportamentale permettono di abbreviare il ciclo di design.
Potendo disporre di tool in grado di aumentare la produttività, la domanda da porsi è se un più elevato livello di astrazione possa garantire prestazioni confrontabili con quelle ottenute con la metodologia HDL.

Mentre la tecnologia ASIC può offrire prestazioni anche decisamente superiori a quelle richieste (a prezzo di una minore flessibilità e di un aumento del time-to-maket), i PLD assicurano invece esattamente le performance previste dagli utilizzatori. Questi tool in grado di aumentare la produttività potranno dunque essere utilizzati efficacemente se saranno in grado di garantire un compromesso tra prestazioni e livello di astrazione capace di assicurare l’ottimizzazione delle prestazioni. Se ciò si traduce in realtà, anche la verifica formale diventa un elemento essenziale nel mondo dei PLD.

Al momento attuale sono in corso parecchi tentativi perché i tool per PLD possano garantire un aumento delle prestazioni.
Nuovi sviluppi soprattutto nel campo del piazzamento “intelligente” dei circuiti logici e del routing pilotato dalle temporizzazioni assicurano un incremento delle prestazioni, con aumenti in termini di f MAX stimati intorno al 40-50%.

Inoltre, la sempre più stretta integrazione con i tool di sintesi tradizionale, che comporta tra l’altro stime delle temporizzazioni più precise, assicura ulteriori miglioramenti.

Uno dei principali vantaggi legati all’utilizzo dei PLD sta nel fatto che essi rappresentano una piattaforma hardware sulla quale è possibile eseguire sviluppi software, modellazione, simulazione a livello di sistema e co-verifica nelle fasi iniziali del processo di sviluppo. Implementare una soluzione su silicio nelle prime fasi del processo di design rappresenta un vantaggio solo se ciò consente di effettuare in maniera più efficiente il debug a livello di sistema.

I prodotti di debug della prima generazione, come ad esempio SignalTap – che prevede il ricorso a un analizzatore logico embedded – garantisce la visibilità di tutti i nodi interni del design mentre il sistema funziona alla massima velocità. Futuri miglioramenti potranno consentire, ad esempio, di avere la medesima visibilità a livello del sorgente HDL originale. I tool per PLD devono quindi subire una profonda evoluzione e sfruttare i progressi tecnologici dell’industria Eda.

All’aumentare della complessità di progetto, la metodologia di design deve assicurare notevoli incrementi in termini di produttività mediante la riduzione dei tempi di sviluppo, senza per questo compromettere assolutamente le prestazioni del dispositivo. Tale metodologia, dunque, permetterà ai prodotti basati sui PLD di penetrare nei tradizionali mercati dei processori embedded e accelerare il declino del mercato dei gate array.