+ +
- -
Systèmes d'Exploitation
Calendrier  Détails
Programmation
 
Calendrier  Détails
Processeurs ARM
 
Calendrier  Détails
Processeurs PowerPC
 
 
 
 
Calendrier  Détails
Communications
 
 
Calendrier  Détails
+ +
> >
- -

 
ac6 >> ac6-training >> Programmation >> Logique Programmable >> Lattice Diamond Télécharger le catalogue Télécharger la page Ecrivez nous Version imprimable

H2 Lattice Diamond

Maitriser l'outil Diamond pour optimiser et debugger un FPGA

formateur
Objectifs
  • Maitriser l'utilisation des outils Lattice Diamond
  • Apprendre à optimiser un design pour respecter
    • une fréquence de travail imposée
    • des contraintes de synchronisation d'horloges
  • Apprendre à debugger un design
    • par simulation
    • par insertion du cœur de trace Reveal
Tous les exercices sont faits sur une carte à base de FPGA Lattice.
Matériel
  • Un PC Windows par binôme avec
    • L'outil Lattice Diamond de programmation du FPGA
  • Une carte cible Lattice
  • Support de cours imprimé
  • Présentation et solutions des exercices
Pré-requis
  • Bonne connaissance de la programmation VHDL et de la structure des FPGAs (niveau cours V1 - VHDL Language)

Premier jour
Le flot Diamond
  • Les projets Diamond
  • Options des outils et de l'environnement
  • Affectation des broches et de préférences de timings
  • Mapping du design
  • Analyse statique des timing après mapping
  • Placement et Routage du design
    • Sélection des options PAR
  • Analyse statique des timing après routage
    • Voir la mise en œuvre dans le FPGA
    • Identifier les chemins critiques
Amélioration des timings du design
  • Analyse statique des temps après routage
    • fréquence maximale
    • temps de setup et de mainteint des signaux
    • délais entre horloge et sorties
  • Optimisation du mapping, placement et routage
    • eviter d'utiliser les bocs d'entrées/sorties dans les chemins critiques
    • utilisation des attributs de signaux VHDL
  • Utilisation de PLLs pour minimiser les délais d'horloge
    • l'outil IPexpress
    • ajout d'une PLL à un design
    • Impact sur les délais horloge vers sortie
  • Startégies d'optimisation du placement/routage
    • choisir l'effort de placement/routage
    • le mode multi-placement
    • le routage seul (routage réentrant)
  • Utlisaton de la PLL pour compenser les délais d'horloge
  • Placement guidé
    • floorplanning dans les sources HDL
    • floorplanning à l'aide de design Planner
    • floorplanning dans le fichier de préférences
  • Examen du FPGA après optimisation
    • notion de congestion de routage
Second jour
Estimation des consommations
  • Utilisation du Power Calculator
    • Estimation du taux d'activité
    • Impact des changements température
    • Impact des changements de FPGA
Simulation
  • Création d'un test-bench par Diamond
    • utilisation du schéma de test-bench généré automatiquement
    • génération des stimuli
  • Simulation avec Active-HDL d'Aldec
    • simulation focntionnelle
    • simulation dynamique des timings après placement/routage
Debug du FPGA
  • Le debugger embarqué Reveal
  • L'outil Reveal Inserter
    • Ajout du cœur de debug au design
    • ajout des signaux à tracer
    • Ajout de triggers et d'expressions de déclencement
  • Le débugger Reveal Analyzer
    • Création de projet Reveal Analyzer
    • Connection au FPGA
  • Lancement du FPGA et saisie des traces
    • Affichage des formes d'onde des signaux
    • modes de capture a un seul trigger