lundi 25 juin 2007

Prise en main de QuartusII


Si (comme moi) vous découvrez Quartus, voici quelques éléments pour prendre en main QuartusII quelques minutes :

Création d'un projet :

Un projet sous QuartusII est un ensemble de fichiers contenant la configuration du design, le design lui même et la hiérachie des différents composants qui le composent. "New Project WIzard" accessible dans le menu "File" permet la création d'un nouveau projet ou la reprise d'un projet existant.

Création d'un bloc (.bdf) :

Quartus permet la conception de système à partir de fichiers verilog (.v) et VHDL (.vhdl) mais il permet aussi (comme sous MAX+Plus II) de concevoir un système par assemblge de schémas blocs. Chaque bloc est associé à un fichier .bdf (Block Design File). Pour créer un nouveau bloc il suffit de cliquer sur "New" dans "File", de sélectionner "Block Diagram/Schematic File" et de cliquer sur "OK". Un onglet d'édition de blocs est alors ouvert dans le cadre principal.
Pour l'enregister ("File"/"Save As") il faut vérifier que la
case "Add File to Current Project" soit bien cochée.

La créartion d'un bloc est assez intuitive. L'outils "Block Tool" de la barre d'outils située à gauche, permet de créer un nouveau bloc par "glisser -déposer". Un clic droit sur le bloc et un clic sur "Block Properties" permet d'accéder aux propriétes du bloc (nom, entrée/sorties,etc...).

Insertion de "Primitive Symbols" et de "Megafunctions" :
QuartusII inlcut une bibliothèque de bloc de bases (bascules, compteurs, etc,..). Cette bibliothèque est accessible en double cliquant avec le pointeur de sélection dans un espace vide de la fenêtre d'édition de bloc.

L'insertion de "Megafunctions" (blocs de bases un peu plus évolués) se fait à l'aide du "Mega Wizard Plug In Manager". Il est également accessible en double-cliquant dans un espace vide de la fenêtre. En bas de la fenêtre "Symbol", le bouton "Mega Wizard Plug-in Manager" ouvre l'assistant. Il suffit ensuite de se laisser guider par l'assistant.


Une fois les différents blocs en place, il faut encore ajouter les entrées et les sorties (à partir du dossier I/O dans la fenêtre symbole) et connecter les différents blocs.


Compilation vers la cible :
Le jusqu'à maintenant nous sommes intéressé au design sans tenir compte de la cible. Il faut spécifier au compilateur le FPGA ciblé, lui préciser les contraintes de compilation (vitesse, surface,...) et affecter chaque ports du schéma bloc aux pins du circuit.

Une partie des options est accessible depuis le menu "Assignement" puis "Settings" :
- spécifier la cible : "Device";
- réglage de la compilation : "Compilation Process Settings";
- contraintes de compilation : "Analysis & Synthesis Settings"


Définitions des pins :
Une fois le desing terminé il faut relier les pins du .bdf (indentifés par le nom qu'on leur a donné) aux pins du circuit. Par un clic droit sur le pin du .bdf, on accède au menu "Locate" on choisit "Locate in Assignement Editor". Dans la fenêtre "Assignement Editor" on précise "Location" dans la colone "Assignment Name" et on définit le pin de sortie dans la colone "Value".
Les pin de sortie sont identifié par une (deux) lettre(s) et un nombre. La fenêtre "Pin Planner" donne permet de connaître le positionnement de chaque pin sur le packge.
Dans le cas ou l'on utilise une carte de developpement, les correspondances pin/périphériques sont définies dans la datasheet de la carte.

Remarques : les différents éditeurs présentés ci-dessus sont accessible par des raccourcis au-dessus du cadre principal.


Voilà, vous en savez autant que moi ;). J'ajoute qu'un tutoriel complet est accessible dans le menu "Help" rubrique "Tutorial". Comme tout IDE, la prise en main de quartus vient avec la pratique (lieu commun...). Mais n'hésitez pas à jetter un coup d'oeil dans l'aide, qui est plutôt bien documentée, si vous bloquez.

Bon courage !!

Aucun commentaire: