DIGITAL
SoC CO-DESIGN
45
- ELETTRONICA OGGI 456 - SETTEMBRE 2016
del sistema – come la compilazione del codice C/C++ e la realiz-
zazione del file eseguibile per il sistema di elaborazione ARM, la
generazione del flusso di bit usando i tool applicativi di Xilinx e il
suo trasferimento sulle schede di sviluppo Zynq – ha consentito
di ottenere un flusso di lavoro per la prototipazione rapida.
Questo flusso di lavoro si basa su due tecnologie: Embedded
Coder e HDL Coder. Embedded Coder genera codice C e C++
con una qualità adatta alla produzione a partire dagli ambienti
MATLAB, Simulink e Stateflow, con ottimizzazioni specifiche per i
sistemi dedicati. L’adozione di Embedded Coder è stata così am-
pia che quando guidate una moderna autovettura, prendete un
treno ad alta velocità o volate su un aereo, è molto probabile che
Embedded Coder abbia generato il codice in tempo reale che
guida il veicolo. HDL Coder è l’omologo di Embedded Coder per
la generazione di codice VHDL o Verilog per gli FPGA e gli ASIC,
ed è strettamente integrato all’intero dei flussi di lavoro di Xilinx.
Questa tecnologia di generazione di codice in linguaggio C e HDL
rappresenta la base del flusso di lavoro per i SoC programmabili.
I team di progettazione che fanno ricorso alla progettazione ba-
sata su modelli in applicazioni quali comunicazioni, elaborazione
delle immagini, potenza “intelligente” e controllo motori hanno
adottato questo flusso di lavoro come mezzo per consentire agli
sviluppatori di algoritmi di cooperare con i progettisti hardware
e gli sviluppatori di software dedicato per accelerare la messa a
punto di algoritmi su SoC programmabili. Una volta che il codice
HDL e C è prototipato su hardware, il team di progettazione può
usare Vivado Integrator IP per integrare il codice con altri com-
ponenti del progetto necessari per la produzione.
Controllo di un motore trifase
Per diverse ragioni, i controllori dedicati di motori in grado di
garantire una conversione di potenza efficiente sono una delle
applicazioni più diffuse dei SoC programmabili. Le iniziative fina-
lizzate a ottenere prestazioni ed efficienza superiori sono il fatto-
re che ha determinato questo successo. Siccome i sistemi pilo-
tati da motori sono responsabili del 46% del consumo globale di
elettricità, poter conseguire un’efficienza superiore con nuovi al-
goritmi di controllo rappresenta un obiettivo di progetto sempre
più comune per gli azionamenti dei motori. In grado di garantire
una temporizzazione precisa, le logiche Zynq sono la piattaforma
ideale per realizzare azionamenti a bassa latenza e ad alta effi-
cienza. Un altro fattore trainante è il controllo multiasse. La pre-
senza di ampie risorse DSP e di logica programmabile sui SoC
programmabili permette di realizzare più controllori di motore
su un singolo SoC programmabile, a prescindere dal fatto che i
Fig. 1 – I progettisti possono creare modelli in Simulink che rappre-
sentano un sistema dinamico completo e generare soluzioni hardwa-
re-software basate sui SoC Zynq direttamente a partire dal modello
Fig. 2 – Il modello di un sistema di controllo del motore include due sottosistemi primari