SEm/laboratoires/04 synthese

From FSI
Revision as of 14:19, 4 March 2015 by Oliver.gubler (Talk | contribs)
Jump to: navigation, search

Contents

Introduction

</div></div></div>

Ce laboratoire présente la synthèse automatique de circuits à partir du code VHDL.

Il se base sur l'exemple du générateur de fonctions. La combinaison de deux sinusoïdes à des fréquences différentes permet de dessiner des courbes de Lissajous.

Figure 1. Courbe de Lissajous


</div>

Synthèse

Au niveau supérieur du circuit à synthétiser, il faut prévoir la circuiterie d'entrée/sortie. C'est à ce niveau que se mettent les adaptateurs de polarité des signaux, les "buffers" haute impédance, la logique de synchronisation, ...

Dans notre exemple, nous placerons deux générateurs de sinus, deux modulateurs sigma-delta et une logique de synchronisation pour le signal de remise à zéro au démarrage.

Figure 2. Circuit à réaliser


Nous profiterons du signal carré de l'un des générateurs pour fournir un signal de synchronisation pour l'oscilloscope.

Le circuit se trouve dans la librairie Board, le banc de test dans la librairie SineInterpolator_test.

Circuit

Ouvrir le bloc FPGA_sineGen de la librairie Board, le compiler et vérifier que le schéma est fonctionnel.

Une simulation du circuit à ce niveau permet de s'assurer de la bonne fonctionnalité du système.

Génération

Spécifier le nom du fichier généré avec la commande Options > Main... > User variables: concat_file = sineGen.

Lancer la commande Prepare for synthesis.

Synthèse

Lancer la commande Xilinx Project Navigator.

Spécifier le type de circuit utilisé, xc3s500E, et ses paramètres FG320-5.

Ajouter le fichier VHDL généré sineGen.vhd au projet. Vérifier que le circuit choisi pour la synthèse est bien FPGA_sineGen-struct.

Ajouter le fichier sineGen.ucf au projet.

Lancer la commande Synthesize - XST. Vérifier tous les avertissements ("warning") et s'assurer que le circuit ne pose aucun problème de réalisation. Examiner les informations de résultat de synthèse quant à la taille du circuit résultant.

Vérifier la fréquence maximale prévue pour ce circuit.

Placement et routage

Lancer la commande Implement Design.

Configuration

Alimenter le circuit FPGA et le connecter au câble de téléchargement JTAG.

Lancer les commandes Generate Programming File et Configure Target Device.

Télécharger le fichier de configuration dans la FPGA.

Tests

Dimensionner un filtre passe-bas passif RLC pour obtenir une fréquence de coupure de 20 kHz.

Brancher les filtres passe-bas à la sortie des modulateurs. Vérifier la forme des signaux sur l'oscilloscope. Mettre l'oscilloscope en mode X-Y: ceci donne une courbe de Lissajous.

</div>


Navigation
Arrow left.gif 03 Convertisseur numérique / analogique Arrow up.gif Instructions en français TBC Arrow right.gif

Personal tools
Namespaces
Variants
Actions
Navigation
Modules / Projects
Browse
Toolbox