Bensadek, Khalid (2004). Développement d'un modèle VHDL synthétisable d'un décodeur de Viterbi. Mémoire de maîtrise électronique, Montréal, Ecole de technologie supérieure.
Prévisualisation |
PDF
Télécharger (3MB) | Prévisualisation |
Résumé
Le codage convolutionnel avec le décodage par l'algorithme de Viterbi est couramment utilisé dans les systèmes de communication numérique actuels pour améliorer leurs performances. L'objectif de ce mémoire de maîtrise est de concevoir et de mettre en oeuvre un modèle VHDL synthétisable, ("core"), du décodeur de Viterbi ciblant la technologie FPGA. La disponibilité d'un modèle synthétisable donne plus de flexibilité quant à la mise en oeuvre des systèmes. En plus, un modèle paramétrable facilite le prototypage du décodeur de Viterbi selon différentes spécifications et permet l'exploitation des performances des différentes implémentations afin de choisir celle qui se trouve à être la plus convenable pour un système de communication donné.
L'évolution récente de la technologie VLSI, notamment pour les circuits FPGA, a permis de faire des réalisations performantes du décodeur de Viterbi sur ce type de circuits. L'architecture du décodeur de Viterbi présentée ici se base sur l'utilisation du treillis radix-4 qui permet de faire deux itérations du treillis ordinaire, radix-2, en une seule. L'utilisation de ce treillis a l'avantage de doubler le débit du décodeur tout en conservant un rapport d'efficacité en surface de 1.
Le modèle VHDL du décodeur de Viterbi, conçu dans le cadre de ce mémoire de maîtrise, décode les codes convolutionnels dont les paramètres sont définis par l'utilisateur. Parmi ces paramètres, il y a la mémoire du code, le nombre de symboles d'entrée, le nombre de niveaux de quantification douce par symbole d'entrée, la largeur des mots des métriques de branche et des métriques d'état et la longueur du "Trace Back". Le calcul des métriques de branche est implémenté sous forme de table de conversion configurable afin d pouvoir adapter le décodeur de Viterbi au type de modulation utilisée et améliorer ainsi les performances d'erreur. Les polynômes générateurs du code sont aussi configurables permettant ainsi de commpléter la flexibilité du décodeur. Par exemple, un décodeur compilé pour une mémoire de code donnée, m, peut réaliser le décodage des codes convolutionnels de mémoire de code mc tel que mc≤ m avec les polynômes générateurs appropriés. Ce décodeur peut réaliser le décodage pour deux groupes de taux de codage pour la même compilaton: 1/S et 2/S, où S est le nombre de symboles d'entrée.
Titre traduit
Design of VHDL synthesizable Viterbi decoder core
Résumé traduit
Convolutional coding with Viterbi decoding is often used in recent digital communication systems to improve their performances. The objective of this master's thesis is to design and implement VHDL synthesizable Viterbi decoder core targeting FPGA technology. The availability of synthesizable core provides more flexibility to the system's implementation. The genericity of the design facilitates the prototyping of the decoder with different specifics, and also facilitates the exploration of the performances of different implementations in order to choose the most suitable one for a specific communication system.
The recent VLSI technology evolution, particularly for FPGA integrated circuits, makes it possible to realize high performance Viterbi decoder implementations on this type of circuits. The architecture of Viterbi decoder presented here is based on the use of the trellis radix-4 which process two radix-2 trellis stages per iteration. Such a trellis has the advantage of doubling the data rate while maintaining an area efficiency ratio of 1.
The VHDL synthesizable Viterbi decoder core, designed during this thesis, decodes convolutional codes whose parameters are user defined. Among these parameters we note the code memory, the number of input symbols, the number of soft quantification levels per input symbol, branch metrics and state metrics words widths and the length of the Trace Back. The branch metrics computation is implemented using a configurable look up table in order to be able to adapt the Viterbi decoder to the type of used modulation and thus to improve its bit error rate. The code generating polynomials are also configurable thus adding more flexibility to the decoder. For example, a decoder compiled for a given code memory m can carry out the decoding of convolutional codes of memory mc that is mc≤ m with the appropriate generating polynomials. This decoder can also carries out decoding for two groups of coding rate for the same compilation: l/S and 2/S, where S is the number of input symbols.
Type de document: | Mémoire ou thèse (Mémoire de maîtrise électronique) |
---|---|
Renseignements supplémentaires: | "Mémoire présenté à l'École de technologie supérieure comme exigence partielle à l'obtention de la maîtrise en génie électrique". Bibliogr.: f. [111]-113. |
Mots-clés libres: | Algorithme, Architecture, Code, Convolutionnel, Decodeur, FPGA, Modele, Synthetisable, Technologie, VHDL, Viterbi |
Directeur de mémoire/thèse: | Directeur de mémoire/thèse Belzile, Jean |
Codirecteur: | Codirecteur Thibeault, Claude |
Programme: | Maîtrise en ingénierie > Génie électrique |
Date de dépôt: | 19 avr. 2011 20:56 |
Dernière modification: | 21 oct. 2016 00:30 |
URI: | https://espace.etsmtl.ca/id/eprint/702 |
Gestion Actions (Identification requise)
Dernière vérification avant le dépôt |