Dettagli dei corsi
Elenco degli argomenti:
- Preparazione di modelli Simulink per la generazione di codice HDL
- Generazione di codice HDL e testbench per un modello Simulink compatibile
- Esecuzione di ottimizzazioni di velocità e di area
- Integrazione di codice scritto a mano e IP esistente
- Verifica del codice HDL generato usando testbench e cosimulazione
Giorno 1/2
Preparazione di modelli Simulink per la generazione di codice HDL
Obiettivo: Preparare un modello Simulink per la generazione di codice HDL. Generare codice HDL e testbench per modelli semplici che non richiedono alcuna ottimizzazione.
- Preparazione di modelli Simulink per la generazione di codice HDL
- Generazione di codice HDL
- Generazione di un testbench
- Verifica del codice HDL generato con un simulatore HDL
Controllo di precisione a virgola fissa
Obiettivo: Stabilire la corrispondenza tra il codice HDL generato e specifici blocchi Simulink nel modello. Usare lo strumento Fixed-Point per finalizzare l'architettura a virgola fissa del modello.
- Scalatura a virgola fissa ed ereditarietà
- Workflow di Fixed-Point Designer
- Strumento Fixed-Point
- Interfaccia a riga di comando
Generazione di codice HDL per modelli multi-rate
Obiettivo: Generare codice HDL per progetti multi-rate.
- Preparazione di un modello multi-rate per la generazione di codice HDL
- Generazione di codice HDL con pin di clock singoli o multipli
- Comprensione e applicazione delle tecniche utilizzate per l'attraversamento del clock domain crossing
Giorno 2/2
Ottimizzazione del codice HDL generato
Obiettivo: Usare le pipeline per soddisfare i requisiti di timing del progetto. Usare implementazioni hardware specifiche e condividere risorse per l'ottimizzazione dell'area.
- Generazione di codice HDL con l'HDL Workflow Advisor
- Soddisfacimento dei requisiti di timing attraverso il pipelining
- Scelta di implementazioni hardware specifiche per blocchi Simulink compatibili
- Condivisione di risorse FPGA/ASIC in sottosistemi
- Verifica che il codice HDL ottimizzato sia accurato al bit e al ciclo
- Mappatura dei blocchi Simulink alle risorse hardware dedicate su FPGA
Uso della virgola mobile nativa
Obiettivo: Implementare valori e operazioni in virgola mobile nel proprio codice HDL.
- Perché e quando usare la virgola mobile nativa
- Generazione di codice HDL indipendente dal target con HDL Coder
- Confronto tra virgola fissa e virgola mobile
- Ottimizzazione delle implementazioni in virgola mobile
Interfaccia tra il codice HDL esterno e l'HDL generato
Obiettivo: Incorporare codice HDL scritto a mano e/o IP di terze parti nel tuo progetto.
- Interfaccia dell’HDL generato
Verifica del codice HDL con cosimulazione
Obiettivo: Verificare il proprio codice HDL usando un simulatore HDL nel modello Simulink.
- Verifica del codice HDL generato con HDL Coder
- Confronto tra il codice HDL scritto manualmente e un modello di riferimento
- Incorporazione del codice HDL in Simulink per la simulazione
Livello: Avanzato
Prerequisiti:
- Elaborazione dei Segnale in Simulink o esperienza equivalente utilizzando Simulink
Durata: 2 giorni
Lingue: English, Français, 中文, 日本語, 한국어