4.2.2.2 UArchitecturesU
n CPLD (Complex Programmable Logic Device) : Ce sont des
assemblages de macro-cellules programmables « simples »
réparties autour d'une matrice d'interconnexion. Les temps de
propagation de chaque cellule sont en principe prévisibles.
n FPGA (Field Programmable Gate Array) sont formés
d'une mer de petits modules logiques de petite taille, noyés dans un
canevas de routage. Du fait de la granularité plus fine des FPGA, les
temps de propagation sont le résultat d'additions de chemins et sont
plus difficiles à maîtriser que celui des CPLD.
4.2.2.3
UTechnologiesU
Les circuits sont des pré-diffusés, c'est
à dire qu'une grande quantité de fonctions potentielles
préexistent sur la puce de silicium. La programmation est
l'opération qui consiste à créer une application en
personnalisant chaque opération élémentaire.
n EEprom : Le circuit se programme normalement et conserve sa
configuration même en absence de tension.
n Sram : La configuration doit être
téléchargée à la mise sous tension du circuit. S'il
y a coupure d'alimentation, la configuration est perdue.
n Antifusible : La configuration consiste à faire
sauter des fusibles pour créer des connexions. L'opération est
irréversible mais en contre-partie offre l'avantage d'une grande
robustesse et de sécurité au niveau du piratage possible du
circuit.
n Flash : Le circuit se programme normalement et conserve sa
configuration même en absence de tension.
4.2.3 USaisie du code
RTLU [12]
4.2.3.1 UTexte et
graphiqueU
Un simple éditeur de texte suffit bien
évidemment pour saisir le code. Tous les synthétiseurs incluent
leur propre éditeur plus ou moins élaboré. Certains outils
généralistes comme emacs (GNU) offrent
un mode VHDL personnalisable très sophistiqué permettant de
gagner du temps lors de la saisie du texte.
Le graphique n'est pourtant pas exclu des outils de saisie. Il
est toujours primordial de pouvoir dessiner graphiquement un diagramme
d'état. De nouveaux outils sont apparus capable de générer
automatiquement du VHDL à partir de graphique. Nous ne citerons que
HDL_Designer de Mentor Graphics qui permet de
créer des schémas blocs, des tables de vérité, des
diagrammes d'état, des organigrammes avec intégration
complète de la syntaxe VHDL et génération automatique du
texte. Celui-ci reste en fin de compte la véritable source du projet.
4.2.3.2
UStyleU
Le VHDL offre de nombreuses possibilités de style
d'écriture pour une même fonctionnalité. Il est donc
impératif de faire dans chaque cas le meilleur choix. La meilleure
solution sera toujours Ula plus lisible Uc'est à
dire simple, claire, UdocumentéeU. Pour cela, outre les autres
problèmes de conception, il n'est pas mauvais de se fixer quelques
règles de conduite comme
n Tous les identificateurs seront en minuscule, les mots clefs
du langage en majuscule et les constantes commenceront par une majuscule et
seront ensuite en minuscule.
n Les identificateurs auront un sens fort : adresse_ram
plutôt que ra
n Les horloges s'appelleront toujours h ou clock
n Les signaux actifs à l'état bas seront
terminés par _b ou _n
n Privilégier les DOWNTO aux TO pour la
définition des vecteurs
n Donner au fichier le même nom que l'entité
qu'il contient.
n Privilégier au niveau de l'entité les types
std_ulogic, unsigned ou signed
|