Analog Devices EZKit
Transcription
Analog Devices EZKit
OUTILSdeDÉVELOPPEMENT Analog Devices EZKit Débutez efficacement en programmation DSP Benoît Bouchez Que l’on soit amateur éclairé ou professionnel, choisir un microprocesseur ou un DSP implique bien plus qu’une simple sélection sur des critères de performances. Il convient de prendre également en compte le coût des outils de développement. Analog Devices Inc. (ADI) propose sous le nom d’EZKit des kits de développement pour ses différentes gammes de DSP, qui permettent de sensiblement réduire les coûts d’investigation et de développement. Ces kits forment le premier niveau dans la gamme des outils proposés par ADI. Il s’agit de véritables outils de développement vendus à un prix très raisonnable, de 250 à 450 € selon le DSP. Un support matériel efficace et complet Avant de choisir une famille particulière de DSP, une des questions les plus importantes à laquelle il faut répondre est : « les algorithmes passent-ils sur ce type de DSP ? ». Il est en effet fréquent de voir sur les fiches de caractéristiques des puissances de calcul légèrement (!) augmentées par rapport à ce que le composant fournira réellement. Un exemple typique sur les DSP concerne les instructions multiples qui s’exécutent en un seul cycle d’horloge : la vitesse instantanée de calcul atteignant alors un pic de deux ou trois fois la vitesse normale, elle est alors utilisée dans les fiches de caractéristiques sous la forme « ce composant peut atteindre une vitesse de xx MIPS », ce qui n’est pas faux en soit. Mais en pratique, la puissance que l’on peut attendre en moyenne est plus faible. Devoir développer une carte à DSP pour effectuer ce genre de tests peut représenter un coût non négligeable, d’autant que les DSP ne sont pas forcément des composants simples à intégrer. Les EZKit sont justement conçus pour répondre à ce genre d’attentes. Selon la famille du DSP, ils se présentent sous la forme d’un circuit imprimé indépendant à poser sur 74 table, connecté au PC via un port série ou USB (l’EZKit ADSP2192 étant formé d’une carte PCI à intégrer directement dans l’ordinateur). Bien qu’étant présentés comme des cartes de développement « Lite », les EZKit ont des caractéristiques techniques dont ils n’ont pas à rougir. En effet, leur conception est totalement ouverte, et il est possible de les intégrer dans des systèmes plus complexes, car la quasi-totalité des lignes du DSP sont accessibles, via divers connecteurs d’extension. En outre, ils intègrent de nombreux périphériques considérées comme standards pour les DSP. On trouve ainsi sur chaque modèle d’EZKit au moins un codec audio 48 kHz 16 bits stéréo de bonne qualité (standard AC’97 V2), certaines versions étant équipées d’interfaces S/PDIF. Les EZKit mettent également à disposition de l’utilisateur un certain nombre de boutons poussoirs connectés sur une partie des broches d’E/S logiques mises à disposition sur les DSP Analog Devices, l’autre partie de ces broches d’E/S étant reliée à des LED. Ces boutons et voyants permettent d’interagir sur le programme en cours de développement. Hormis l’EZKit ADSP-2192, qui est destiné à fonctionner dans un PC, tous les autres modèles comportent une mémoire Flash qui contient le moniteur de déverminage. Comme cette mémoire est installée sur un support, il est possible de la remplacer par une autre mémoire contenant une application utilisateur et de rendre alors l’EZKit autonome. Enfin, tous les EZKit mettent à disposition un connecteur JTAG, destiné à recevoir le câble d’émulateur temps-réel. Elektor 10/2003 OUTILSdeDÉVELOPPEMENT Du côté du logiciel Les EZKit sont tous livrés avec une version limitée de Visual DSP++, l’environnement de développement Analog Devices. Il s’agit toutefois du même logiciel que la version complète (vendue aux environs de 3 500 €), ce qui est on ne peut plus intéressant, car il est possible de récupérer tous les développements faits sous la version limitée le jour où on décide de passer à la version complète. La limitation de la version EZKit se trouve au niveau de l’éditeur de liens, qui est limité à 25% de la mémoire programme (PM) disponible sur le DSP. Par exemple, sur un ADSP21065 qui dispose de 10 Kmots en mémoire programme, on peut produire un programme occupant jusqu’à 2,5 Kmots. Cette limitation est beaucoup moins gênante qu’il n’y paraît de prime abord. En effet, un ADSP21065 cadencé à 60 MHz ne dispose « que » de 1 300 cycles entre chaque interruption du codec pour un signal échantillonné à 48 kHz. La limitation à 2 500 mots PM permet donc de développer des programmes qui utilisent 100% de la puissance CPU ! Soulignons que la limitation ne s’applique qu’à la mémoire programme, la quantité de mémoire données (DM) n’étant pas limitée. Seul l’éditeur de liens est soumis à cette restriction, les autres composants logiciels comme l’assembleur et le compilateur C pouvant produire des fichiers de taille quasiment illimitée. L’autre limitation interdit de lancer l’environnement de développement si le PC n’est pas relié à la carte EZKit, la simulation logicielle étant inhibée. Cette limitation n’est que très rarement gênante en pratique. Petite remarque en passant : Analog Devices propose sur son site Web de très nombreux exemples de programmes complets pour les différents EZKit, très intéressants à étudier. Malheureusement, ces programmes ont été écrits sur des versions complètes de Visual DSP++, et les fichiers descripteurs de liens (.LDF) sont inadaptés aux versions limitées. Lorsque l’on tente de construire ces projets, une erreur est déclenchée par l’éditeur de lien, qui vous rappelle assez violemment les limites auxquels vous êtes contraints (les fameux 25% de mémoire programme) et refuse alors de générer le fichier exécutable pour le DSP. Pourtant, ces programmes fonctionnent bel et bien sur les EZKit. En fait, il suffit juste de modifier le fichier LDF des différents projets. Afin de permettre aux lecteurs d’Elektor d’utiliser au plus vite les exemples fournis par ADI (la syntaxe des fichiers .LDF n’étant pas forcément facile à saisir pour les débutants), nous avons modifié un certain nombre de ces fichiers, que vous pourrez trouver sur le site de l’auteur, sur la page consacrée aux DSP (pour mémoire http://benoit.bouchez.free.fr, rubrique DSP Audio (en anglais)). En conclusion, si vous souhaitez vous attaquer à la programmation des DSP, n’hésitez pas à acquérir un EZKit, l’investissement en vaut largement la peine. (030321) Note : Nous nous sommes bien entendu renseignés auprès d’Analog Devices sur la disponibilité de leurs kits EZKits. Bien que certains d’entre eux soient encore mentionnés sur le site Internet d’Analog Devices à l’adresse : www.analog.com, Analog Devices signale que les modèles 21061 et 21062 sont obsolètes et renvoie vers une nouvelle famille, celle des EZ-KIT Lite™ destinée à leur famille de DSP ADSP-2106x SHARC. Nous aurons sans doute l’occasion de vous en parler dès qu’Analog Devices nous en enverra un exemplaire comme ils nous l’ont promis. NdlR : si vous voulez en savoir plus sur les DSP, nous ne pouvons que vous recommander la lecture de l’ouvrage du même auteur sorti tout récemment chez Publitronic : Applications audionumériques des DSP. 10/2003 Elektor 75