Carte de développement pour FPGA

Transcription

Carte de développement pour FPGA
OUTILSdeDÉVELOPPEMENT
Carte de développement
pour FPGA
Entrée en matière facile grâce à Xilinx
Gunther May, DL3ABQ
Bien que les FPGA aient vu leur coût diminuer très sensiblement, les
cartes de développement pour FPGA de taille importante à prix
abordable restent très rares. La société australienne BurchEd fait une
proposition qui, comparée à ce qui se fait sur le marché actuellement, est
littéralement irrésistible.
Comme le dit leur acronyme, les FPGA (Field
Programmable Gate Array) sont des circuits
intégrés logiques programmables. L’utilisateur a 2 options pour la conception de son circuit numérique, soit un langage de description matériel, soit par le biais d’un éditeur
graphique, le résultat de cette opération
étant téléchargé dans le FPGA. Ceci fait, le
composant se comporte, pour l’extérieur,
comme le ferait le circuit électronique qui y a
été programmé.
Les FPGA intègrent à cet effet un nombre
important de structures universelles qui se
composent chacune, en fonction du type de
FPGA auquel on a affaire, en plusieurs portes
et bascules. Ces blocs sont interconnectés
par le biais d’éléments programmables de
sorte qu’il devient possible d’en influencer le
comportement.
Les FPGA modernes sont, la plupart du
temps, à base de technologie SRAM. Ceci
explique qu’en l’absence de tension d’alimentation elles perdent leur configuration.
De manière à ce que, lors de la réapparition
de la tension d’alimentation, les FPGA soient
à nouveau opérationnelles, on fait appel à des
EPROM spéciales dites de configuration dans
lesquelles les FPGA peuvent récupérer, de
façon autonome, leurs données de configuration. Le programmateur Xilinx décrit dans le
numéro de novembre convient à merveille
pour de telles applications. Il existe également des FPGA non-volatiles (attention cela
64
Figure 1. La carte de développement pour FPGA B5-X300.
ne signifie pas qu’elles ne peuvent
pas se volatiliser, mais que leur
contenu de mémoire ne peut pas
s’effacer même en cas de disparition
de la tension d’alimentation), telles
que les modèles dits « antifuse »,
qu’il n’est d’ailleurs possible de programmer qu’une seule et unique fois.
Les fabricants les plus connus de
FPGA sont Xilinx, Altera et Actel.
Les CPLD (Complex Programmable
Logic Device) constituent une autre
famille de circuits intégrés de
logique programmable. Les CPLD
comportent plusieurs blocs de structures logiques complexes qui ressemblent à celles dont sont constituées les GAL (Gate Array Logic).
En principe, on peut dire qu’une
CPLD est en fait une matrice de
GAL. Les CPLD ont, comme élément
programmable majeur, des cellules
d’EEPROM non-volatiles. Xilinx, Lattice et Altera sont les fabricants les
plus connus de ce type de composant.
Il devient possible, en fonction de la
taille de la FPGA ou CPLD concer-
Elektor
11/2003
OUTILSdeDÉVELOPPEMENT
– Platine de connexion pour RS-232, souris,
clavier et VGA
– Interface CompactFlash
– Interface IDE
– Platine de configuration Flash
Figure 2. Logiciel de programmation Xilinx au travail.
née, de réaliser un processeur complet ou un autre circuit complexe
similaire à l’aide d’un tel composant.
Dans l’industrie on les utilise principalement pour la réalisation de prototypes, mais on les retrouve également dans ce que l’on appelle des
automates reprogrammables. Le
traitement du signal est l’un des
domaines d’application les plus
importants des FPGA et CPLD.
La puissance d’un circuit intégré de
ce type est souvent exprimé sous la
forme de « portes équivalentes »,
valeur qui donne le nombre théorique de portes utilisables à l’intérieur du FPGA. Il faut prendre ces
valeurs avec un grain de sel, vu que
souvent, pour des raisons de publicité commerciale, les fabricants donnent des chiffres très optimistes.
Dans le cas des CPLD, les tailles
typiques vont de 1 000 à 50 000
portes équivalentes, alors qu’avec
les FPGA cela va de 10 000 à plusieurs millions. Les versions à faible
nombre de portes deviennent de
plus en plus abordables. Dès que
l’intégration devient importante,
ces circuits logiques coûtent rapidement cher. Pour l’électronicien
concepteur-développeur, ces circuits constituent une alternative
attrayante à l’approche multi-circuits intégrés logiques. De même,
lorsqu’il s’avère que la vitesse de
traitement d’un microcontrôleur
11/2003
Elektor
n’est pas suffisante, la logique programmable peut constituer une
solution à ce problème.
Carte de développement
Burched, la société australienne évoquée plus haut, propose un kit de
développement
pour
FPGA
(figure 1). Le B5-X300 repose sur un
FPGA de la série Spartan2E de
Xilinx
de
pas
moins
de
300 000 portes équivalentes. Cette
carte est accompagnée d’un adaptateur de téléchargement qui pourra
être branché directement sur le port
parallèle d’un PC. Cette interconnexion sert au transfert des données
de configuration de la FPGA.
La carte comporte un oscillateur
d’horloge dont la fréquence se laisse
paramétrer par l’implantation de
cavaliers. La carte dispose en outre
d’un support dans lequel pourra
prendre place une EPROM de configuration et des embases donnant
accès aux lignes de la FPGA.
Outre la carte de développement
FPGA, il est proposé d’autres
modules qui peuvent faire partie
d’une application. Voici les modules
additionnels disponibles :
– Platine de commutateurs
– Platine de LED
– Afficheurs 7 segments
– Extension de mémoire
L’environnement de développement logiciel
accompagnant la carte est le Webpack de
Xilinx, mis gratuitement à disposition par
cette société et grâce auquel il devient possible de programmer le circuit de différentes
façons (figure 2). On trouvera, en référence [2], un lien où télécharger ce logiciel.
La mise en oeuvre de la carte est étonnamment facile. Une fois que l’on a pris connaissance du manuel décrivant les premiers pas
téléchargé depuis le site de BurchEd, un amateur même débutant en la matière sera en
mesure de transférer son premier programme
vers la FPGA pour faire clignoter une LED
présente sur la carte de développement.
La carte B5-X300 est disponible en France
auprès de Hi Tech Tools [5]. Le coût de la
carte est de 192 €, ce prix comprenant le
câble de programmation.
Exemples d’application
Elektor a utilisé l’occasion des circuits intégrés programmables, tels que GAL et CPLD
en particulier. Sur sa page d’accueil [1] BurchEd propose des programmes d’exemple au
téléchargement, le nombre de ces exemples
étant cependant encore relativement restreint,
mais Mr Burch nous a assuré que le nombre
de ces programmes devrait augmenter très
sensiblement dans les prochains mois.
S’il est un thème très intéressant ayant trait
aux FPGA, c’est indubitablement celui du
développement de petits processeurs. On
trouvera, sur le site donné en référence [3],
une collection impressionnante de matériel
concernant ce thème.
À noter que des développeurs ont mis sur
FPGA l’un ou l’autre jeu pour ordinateur
datant déjà d’un certain temps, Pacman par
exemple. On trouvera en [4] un très beau site
Internet traitant du sujet. On pourra y télécharger la totalité des fichiers.
(030216)
Liens Internet
[1] www.burched.biz
[2] www.xilinx.com/xlnx/xil prodcat
landingpage.jsp?title=ISE+WebPack
[3] www.fpgacpu.org/
[4] www.fpgaarcade.com/
[5] www.hitechtools.com
65

Documents pareils