J3eA - Vol. 2 - 10 (2003).
DOI : 10.1051/bib-j3ea:2003010
Développement d'une plateforme matérielle de démonstration
dédiée aux turbo codes
Ch. Jégo * ¤, A. Picart ** et J. Tousch *** (ENST Bretagne)
Mis en ligne le 15 juillet 2003.
Résumé
SOPC, acronyme pour System On Programmable Chip, peut se traduire par système sur
puce programmable. Cette technologie correspond à l'intégration des ressources
logicielles et matérielles sur une même puce programmable de type FPGA. Depuis peu, la
société Altera (fabricant de circuits reconfigurables) propose un environnement de
conception de SOPC. Une étude sur cette technologie innovante, à travers un projet de
formation, a été menée au sein de l'ENST Bretagne. L'objectif de ce projet était le
développement d'une plateforme de démonstration pour les turbo codes à partir de
l'environnement de prototypage SOPC d'Altera. Cette plateforme permet la saisie d'une
image à partir d'une webcam, son traitement avant émission dans une première carte et
son traitement à la réception à l'aide d'une seconde carte. Un canal de transmission a
également été modélisé à partir d'un générateur de bruit blanc gaussien puis intégré sur la
première carte.
Mots-clés : projet d'ingénieur, communications numériques, turbo codes en bloc, SOPC
(system On Programmable Chip).
© EDP Sciences, 2003.
Niveau de connaissances requis. Notions de communications numériques et de conception de circuit.
Niveau des étudiants. Deuxième année d'école d'ingénieur, deuxième cycle universitaire (maîtrise EEA, GEII,
Bac+4).
* Christophe Jégo 1 est Maître de Conférences au département Électronique de l'École Nationale Supérieure des
Télécommunications de Bretagne (ENST Bretagne). Il est membre du groupe « algorithmes et circuits pour les
communications » du laboratoire de Traitement Algorithmique et Matériel de la Communication, de
l'Information et de la Connaissance (TAMCIC), unité FRE associée CNRS. Ses travaux de recherche portent sur
l'application des méthodologies et des modèles pour la conception et l'exploration des systèmes sur puce au
domaine des Turbo Communications.
¤ e-mail : christophe.jego@enst-bretagne.fr (auteur de correspondance)
** Annie Picart 2 est Ingénieur d'Études au département Signal & Communications de l'École Nationale
Supérieure des Télécommunications de Bretagne (ENST Bretagne). Docteur en traitement du signal et
télécommunications, elle est membre du groupe « algorithmes et circuits pour les communications » du
laboratoire de Traitement Algorithmique et Matériel de la Communication, de l'Information et de la
Connaissance (TAMCIC), unité FRE associée CNRS. Ses travaux de recherche portent sur les transmissions
numériques, le codage canal et les techniques itératives de traitement de l'information.
*** Jacky Tousch 3 est diplômé de l'École Nationale Supérieure des Télécommunications de Bretagne (ENST
Bretagne). Il est cofondateur de la société TurboConcept. Créée en octobre 1999 à Brest, TurboConcept
développe et commercialise des circuits intégrés pour les communications numériques. Expert en codage
Article available at http://www.j3ea.org or http://dx.doi.org/10.1051/bib-j3ea:2003010
correcteur d'erreurs, spécialiste des turbo codes et plus généralement des techniques itératives, TurboConcept
propose une gamme d'IP cores flexibles et performants.
e-mail : jacky.tous[email protected]
1 Département Électronique, Technopôle Brest-Iroise, CS 83818, F-29238 Brest Cedex, France.
2 Département Signal & Communications, Technopôle Brest-Iroise, CS 83818, F-29238 Brest Cedex, France.
3 TurboConcept, Technopôle Brest-Iroise, 115 rue Claude Chappe, F-29280 Plouzané, France.
1. Introduction
Au cours d'un projet qui a eu lieu dans le cadre de la formation d'ingénieur, six étudiants de l'ENST Bretagne ont
travaillé sur l'intégration d'une chaîne de transmission numérique à base de turbo code. Les turbo codes sont un
nouveau type de code correcteur d'erreurs, introduits avec un algorithme de décodage pratique en 1993 par une
équipe de chercheurs de l'ENST Bretagne [1]. Ils constituent aujourd'hui la technique de codage de canal la plus
performante pour la protection de l'information. Le partenaire industriel de ce projet, la société TurboConcept,
est une jeune société développant des circuits utilisés dans des systèmes de transmission numérique. Cette
société fondée en 1999 a pour vocation de proposer des modules de codage correcteurs d'erreurs, en particulier
des IP Cores turbo codes. L'intérêt de ce projet réside dans le développement et la mise en place d'un
environnement de démonstration dédié aux turbo codes pour la société TurboConcept mais également pour les
départements Électronique et Signal & Communications de l'ENST Bretagne. Ainsi, cette plateforme matérielle
doit permettre de visualiser l'efficacité d'un turbo code pour corriger les erreurs de transmission et améliorer la
qualité de la communication sur une image capturée en temps réel.
Fig. 1. Environnement de démonstration matériel dédié aux turbo codes.
Tout d'abord, nous présentons dans cet article le projet d'ingénieur qui a lieu au cours de la formation d'ingénieur
de l'ENST Bretagne et l'environnement de conception qui a été utilisé par les élèves. Puis, nous détaillons la
chaîne de transmission numérique qui a été développée. Enfin, le traitement d'une image numérique par la
plateforme dédiée aux turbo codes est explicité.
2. Le projet d'ingénieur dans la formation ingénieur de l'ENST Bretagne
La formation par le projet est l'un des axes majeurs de la pédagogie de l'ENST Bretagne [2]. Ainsi, les élèves
ingénieurs sont amenés à effectuer au cours des trois années différents projets (projet d'algorithmique et de
programmation, projet expérimental, projet ingénieur et projet d'entreprendre). L'objectif est de confronter les
élèves à des problèmes concrets pour favoriser l'apprentissage et l'expérimentation de nouvelles connaissances
(langages, méthodes, outils...).
2.1. Présentation du projet d'ingénieur
Au cours de la deuxième année de la formation d'ingénieur, les élèves de l'ENST Bretagne doivent réaliser un
véritable projet d'ingénieur proposé par des enseignants-chercheurs en partenariat avec un industriel. En effet,
outre le suivi au quotidien de l'avancement du projet, le groupe d'enseignants a en charge la recherche et la
négociation des sujets de projets avec les partenaires industriels. Ce projet d'ingénieur est un élément important
du projet formation de l'ENST Bretagne qui, démarré en 1995, a abouti à une remise en forme complète du
cursus de formation des ingénieurs télécom. D'une durée de 120 heures par étudiant, ce projet vise à la
réalisation par un groupe de six à huit personnes, d'un produit télécom qui est présenté lors d'un forum réunissant
industriels et partenaires institutionnels. Vitrine du savoir-faire technique des étudiants de l'école, ce projet est
également l'occasion de se familiariser avec le travail de groupe et les techniques de gestion de projet. De ce fait,
les trois objectifs principaux du projet ingénieur sont :
la mise en pratique des techniques de gestion de projet en s'organisant autour d'un groupe
pluridisciplinaire associant étudiants et enseignants.
la possibilité pour les élèves d'utiliser dans un projet les connaissances théoriques et pratiques acquises
dans le tronc commun du cursus de formation. De plus, la réalisation du projet est l'occasion de
confronter l'élève ingénieur à la nécessité d'acquérir de nouveaux savoirs et savoir-faire et de mieux
maîtriser les problèmes que pose le travail en équipe. Ceci permet aux élèves de faire un bilan global de
leurs connaissances, facilitant ainsi leurs choix de formation pour les deux derniers semestres.
la validation de la formation au travers d'activités et de missions proches de celles que les élèves auront
à assumer lors de leur premier emploi, dans le cadre de la mise en oeuvre d'un projet ou d'un service de
télécom.
Les projets sont encadrés par au moins deux enseignants-chercheurs pour la partie technique et par un
enseignant-chercheur différent dans le cadre de la gestion de projet.
2.2. Déroulement du projet d'ingénieur
Les sujets sont présentés aux étudiants au cours du premier semestre de la deuxième année de formation. Les
sujets doivent être liés au secteur de l'électronique, de l'informatique, du traitement de signal et plus
généralement au secteur des technologies de l'information et de la communication ou à celui des services. Les
élèves ont la possibilité de consulter de manière approfondie les sujets sur le site web à l'URL : http://projet-
ingenieur.enst-bretagne.fr/.
Le projet proprement dit se déroule lors du second semestre de la seconde année de formation [3] et s'organise en
trois phases :
une phase préparatoire (de janvier à février) pendant laquelle les élèves appréhendent le contexte et
effectuent la bibliographie sur le sujet. Durant cette période, les premiers contacts industriels-élèves
sont pris. À l'issue de cette phase, un plan de développement est fourni par les élèves (Fig. 2).
une phase de développement (mars à juin) pendant laquelle le partenaire industriel et les responsables
enseignants du projet sont tenus au courant de l'avancement des travaux et de la tenue des délais au
travers de compte-rendus d'avancement.
une phase de mise en valeur du travail au travers d'une soutenance devant un jury et d'une journée de
promotion lors d'un forum.
Fig. 2. Plan de développement proposé par les élèves.
3. Environnement de prototypage utilisé lors du projet
L'environnement de conception qui a été utilisé dans le cadre de ce projet est l'ensemble de prototypage « System
on Chip » Excalibur de la société Altera. Il comprend deux cartes de développement (composées chacune d'un
APEX™ 20K200E, de mémoires FLASH et RAM et de connecteurs d'extension), un processeur embarqué
Nios™ [4,5] incluant un CPU RISC sous forme d'IP, un logiciel GnuPro™ de la société Cygnus™ et un logiciel
Quartus II de la société Altera. L'achat de cet ensemble a été réalisé dans le cadre du programme universitaire
CNFM-Altera. Les éléments constituant l'environnement de conception sont présentés sur la figure 3.
Fig. 3. Environnement de conception pour le projet.
Cet environnement dédié à la conception de système sur puce programmable (SOPC) comprend trois parties
distinctes. Tout d'abord, l'assistant MegaWizard permet de personnaliser les paramètres du coeur de processeur
et de choisir le nombre et le type de périphériques associés, y compris la mémoire. Une fois le processeur
paramétré, une description VHDL synthétisable est générée de manière automatique, puis ajoutée au système à
concevoir. L'intégration sur FPGA des blocs matériels s'effectue à partir de l'environnement Quartus II. Dans cet
environnement, le processeur est modélisé par une « boîte noire » à laquelle se connectent les différents blocs
matériels du système. Un simulateur VHDL Modelsim est utilisé pour la validation des étapes de synthèse. Les
résultats de synthèse des différents blocs matériels sont présentés dans le paragraphe 4. Enfin, les outils
compilateur/linker/debugger C-C++ de la chaîne de développement Cygwin GnuPro ont été utilisés pour la
spécification des tâches logicielles. Cette chaîne de développement permet l'écriture et la compilation des
programmes devant être exécutés par un processeur.
L'environnement de conception se compose, comme nous venons de le voir, de différents outils de modélisation,
de simulation et d'intégration. La plupart de ces outils sont inconnus pour les élèves de deuxième année de
l'ENST Bretagne. En effet, la conception de circuits est une des options proposées en troisième année de l'école.
C'est pourquoi, durant la phase préparatoire du projet (huit séances de trois heures), les élèves ont suivi plusieurs
tutoriaux pour faciliter la prise en main de l'environnement de conception de SOPC. Les séances de tutorat
concernaient l'apprentissage du langage VHDL, la prise en main de l'outil Quartus II, la spécification de
processeurs sous MegaWizard et le développement d'applications sous Cygwin GnuPro.
4. La chaîne de transmission dédiée aux turbo codes
Dans le cadre de ce projet, les élèves ont développé une chaîne de transmission numérique contenant un procé
de codage/décodage canal (turbo code) et une modélisation d'un canal gaussien (Fig. 4).
Fig. 4. Schéma de la chaîne de transmission numérique.
Cette chaîne se compose de deux cartes de développement. Elles correspondent respectivement aux SOPCs
émetteur et récepteur. Le SOPC émetteur est constitué d'un IP processeur Nios, d'un IP codeur TC3000 et d'un IP
modèle de canal gaussien. Le SOPC récepteur est quant à lui composé d'un IP processeur Nios et d'un IP
décodeur TC3000. Un IP (Intellectual Property) se définit comme un ensemble de fichiers (modèle abstrait pour
une évaluation au niveau système, description synthétisable, banc de test...) permettant l'intégration d'un bloc
fonctionnel préconçu dans le flot de conception d'un système à implanter sur ASIC ou FPGA [6]. Le format ainsi
que les degrés de description d'un IP font l'objet de recommandations et de standards [7]. Dans la suite de ce
paragraphe, nous présenterons les différents IPs qui ont été utilisés au cours du projet. Trois différents types de
signaux facilitent la gestion et la transmission des informations entre les différents modules et/ou les deux cartes.
Tout d'abord les signaux de configuration sont envoyés aux blocs codage, canal et décodage. Ils permettent la
définition de différents paramètres comme la taille des blocs échangés, le rapport signal à bruit, le nombre
1 / 11 100%
La catégorie de ce document est-elle correcte?
Merci pour votre participation!

Faire une suggestion

Avez-vous trouvé des erreurs dans linterface ou les textes ? Ou savez-vous comment améliorer linterface utilisateur de StudyLib ? Nhésitez pas à envoyer vos suggestions. Cest très important pour nous !