Trellis Codec Modulation

Descargar como pdf o txt
Descargar como pdf o txt
Está en la página 1de 12

TECNIA,Vol 8 N03, pgs.

11-17, 1999 Universidad Nacional de Ingeniera Lima - Per

Simulacin e Implementacin de un esquema de Modulacin Trellis-Coded y de un decodificador de Viterbi en un DSP


Reynaldo Sal y Rosas Reyes, IEEE Student Member

ABSTRACT
Tradicionalmente las tcnicas de codificacin/decodificacin y modulacin/ demodulacin para sistemas de transmisin digital fueron tratadas como instancias separadas, existiendo un compromiso entre la potencia transmitida que se ve aumentada si usamos un modulador de alto orden- y el ancho de banda requerido que se incrementa al usar codificacin para la correccin de errores-. El presente trabajo combina los criterios arriba mencionados, al tratar en conjunto el proceso de codificacin y modulacin por medio de un esquema denominado TCM (Trellis-Coded Modulation)[1]. Del mismo modo, la parte de demodulacin y decodificacion se llevan a cabo conjuntamente, por medio de un decodificador de Viterbi basado en "soft-decision". La implementacin del codificador convolucional y del decodificador de Viterbi para la constelacin 32QAM basada en la recomendacin V.32 del CCITT, se realiza en el mdulo de evaluacin DSP56002EVM de MOTOROLA. La arquitectura Harvard, la flexibilidad del conjunto de instrucciones y la velocidad del procesador digital de seales son fundamentales en la implementacin. Index terms: Trellis-Coded modulation, procesador digital de seales, codificador diferencial, codificador convolucional, decodificador de Viterbi, distancia de Hamming, distancia Euclidiana, constelacin 32QAM.

I. INTRODUCCIN
Los canales de banda limitada, como los de telefona, normalmente estn expuestos a diversos tipos de interferencia y ruido, de stos, el ruido aditivo blanco gaussiano (AWGN) es de lejos uno de los ms perjudiciales. Tradicionalmente, las funciones de modulacin y de codificacin para la correccin de errores producidos por AWGN fueron tratadas en forma separada. En el caso de la codificacin para la correccin de errores se presentaba una prdida en la velocidad de transferencia, que era compensada incrementando el reloj del modulador, si el canal permita expansin del ancho de banda, o utilizando un modulador con una mayor constelacin de smbolos, si el canal era de banda limitada; esto ltimo implicaba esquemas de modulacin no binarios (M>2). An as cuando la modulacin y la codificacin para la correccin de errores se llevaban en

forma independiente se obtenan resultados poco satisfactorios[2]. La siguiente figura ilustra mejor lo anterior.

En la figura (a) se tiene un modulador 4PSK sin codificacin. En la figura (b) se aade un codificador 2/3 y se mantiene el mismo modulador; pero se tiene que incrementar el reloj del modulador para mantener la misma tasa de transferencia de datos, se presenta entonces un incremento del ancho de banda. Finalmente en la figura (c) observamos el mismo codificador 2/3 y un modulador 8PSK, que evita tener que incrementar el reloj del modulador; pero requiere una mayor constelacin de smbolos.

II. Cdigos de correccin de error clsicos


Para canales de ancho de banda limitado, se optaba por el esquema del tipo de la figura (1c). Como se mencion anteriormente, los resultados no eran los ms alentadores; principalmente por dos razones: A. Diseo de codificadores basados en la "distancia de Hamming". B. Empleo de decodificacin "hard decision". A. Diseo de codificadores basados en la "distancia de Hamming". El diseo de codificadores convolucionales y de bloques est clsicamente ligado al concepto de "distancia de Hamming" o ms precisamente al de "mnima distancia libre"[3]. Podemos entender por "distancia de Hamming" al nmero de coordenadas en el que dos bloques de cdigos (v,w) de longitud n difieren, dHamming = d(v,w)= {i / vi wi, i=0,1,..., n-1} (1) Bajo este criterio, el decodificador recibe la seal cuantizada del demodulador sin importar cuan grande fue el error de la seal analgica recibida. En otras palabras, el decodificador se limita a corregir los errores introducidos por el demodulador en la toma de decisin. Es evidente que durante el proceso de decodificacin ser indistinto el grado de error de la seal recibida, producindose una prdida irreversible de infomacin. Este

tipo de decodificacin se conoce como "hard decision". B. Empleo de decodificacin "hard decision" Existen diferentes tipos de mtodos para decodificar cdigos convolucionales, entre los que destacan el secuencial, el threshold y el propuesto por Viterbi en 1967. Como se ha podido ver, tradicionalmente el decodificador actuaba sobre los datos cuantizados por el demodulador privndose de valiosa informacin que podra ser utilizada s el decodificador actuara sobre la data no cuantizada, en otras palabras, si realizara el proceso de demodulacin y decodificacin en forma conjunta. Este esquema de decodificacin se denomina "soft decision" y esta estrechamente ligado al concepto de "distancia euclidiana" en la modulacin Trellis-Coded. Para dos bloques de cdigos (v,w) de longitud n, la "distancia euclidiana" ser: dEuclidiana={(v0-w0)2 +(v1-w1)2 +...+(vn-1-wn-1)2 }0.5 (2) An usando un decodificador de Viterbi "soft decision" en lugar de uno "hard decision" el rendimiento global del sistema no mejora ostensiblemente. Esto se debe a que no existe una relacin directa entre la "distancia de Hamming" y la "distancia Euclidiana", sin importar como se distribuyan los puntos en la constelacin. Queda claro entonces que el diseo de codificadores convolucionales debe basarse en la "distancia Euclidiana" en lugar de la "distancia de Hamming", como lo propuso Ungerboeck. La siguiente figura nos muestra el concepto de "distancia euclidiana" en un esquema de modulacin 4PSK.

figura 2 En la figura (2) se observa que la "distancia euclidiana" d1 corresponde a los puntos p1 y a las coordenadas de 00, de la misma forma la "distancia euclidiana" d2 corresponde a los puntos p2 y a las coordenadas de 00.

III. Trellis-Coded Modulation


El TCM propone la eleccin adecuada de un esquema de modulacin y codificacin convolucional -basados en la "distancia euclidiana" y la bsqueda de los correspondientes polinomios de chequeo de paridad -, y la realizacin del proceso de demodulacin y decodificacin en un solo paso, sin implicar ello un incremento en el ancho de banda del sistema. Los esquemas TCM ms sencillos (cuatro estados) pueden mejorar en 3dB la ganancia total del sistema,

mientras que los ms complejos pueden sobrepasar los 6dB. A. Constelacin Las constelaciones multinivel existentes optimizadas para "distancia de Hamming" no garantizan una buena esctructura de "distancia euclidiana", por lo que se hace necesario la bsqueda de nuevas constelaciones y nuevos cdigos para TCM. Las primeras constelaciones, propuestas por Ungerboeck se obtuvieron optimizando a mano las ya existentes. En la actualidad se han podido encontrar esquemas con mayor ganancia mediante el empleo de algoritmos genticos[4], quedando claro que las constelaciones asimtricas presentan en TCM mejor ganancia que las ampliamente usadas y conocidas constelaciones simtricas (8PSK, 32QAM, etc.). La figura (3.a) muestra una constelacin 8AM simtrica mientras que la figura (3.b) muestra una 8AM asimtrica.

Figura(3) La figura (4) muestra la constelacin simtrica 32QAM de la norma V.32 del CCITT, utilizada en la implementacin realizada. Se muestran tambin las 52 regiones existentes que corresponden a la superposicin de las regiones pertenecientes a cada uno de los estados del codificador ocho estados en total-.

Figura(4) B. Codificacin TCM. La figura (5) muestra el sistema de codificacin diferencial y convolucional tambin para la norma V.32 del CCITT. Al igual que la constelacin 32QAM los codificadores han sido implementados en un DSP.

Figura(5) Los datos paralelos Q1n y Q2n son las entradas del codificador diferencial, que se encargar de proporcionar 90

grados de invarianza de fase; es decir, Q3n y Q4n sern los mismos para puntos en la constelacin 32QAM que se encuentren a 90 grados uno de otro. La figura (6) nos muestra la implementacin del codificador diferencial y la correspondiente tabla de entrada, salida y estados; mientras que la figura (7) muestra el diagrama de Trellis del codificador convolucional.

Figura(6)

Input bits Q1n 0 0 0 0 0 0 0 0 1 Q2n 0 0 0 0 1 1 1 1 0

Past Output bits

Output bits

Y1n- Y2n-1 Y1n 1 0 0 1 1 0 0 1 1 0 0 1 0 1 0 1 0 1 0 0 0 1 1 0 0 1 1 1

Y2n 0 1 0 1 1 0 1 0 0

1 1 1 1 1 1 1

0 0 0 1 1 1 1

0 1 1 0 0 1 1

1 0 1 0 1 0 1

1 0 0 1 1 0 0

1 1 0 1 0 0 1

Figura (7) Es importante observar en la figura que los estados pares provienen de los estados anteriores 0, 1, 2 y 3; mientras que los estados impares provienen de los estados anteriores 4, 5, 6 y 7. Este hecho permitir reducir significativamente el cdigo en lenguaje ensamblador utilizado en el decodificador.

IV. Decodificacin TCM.


El proceso de decodificacin V.32 comprende la implementacin del decodificador de Viterbi y del decodificador diferencial, tal como lo muestra la figura (8).

Figura(8) A. Decodificacin por medio del Algoritmo de Viterbi. De los algoritmos de decodificacin de cdigos convolucionales existentes, el de Viterbi demuestra ser el mejor para cierto tipo de aplicaciones. La eleccin de un algoritmo entre los otros, depender de la eficiencia del mismo y de la conplejidad de su implementacin. El algoritmo de Viterbi es asintticamente ptimo; pero su complejidad crece en forma exponencial conforme es mayor el "constraint length" del cdigo. En nustro caso el codificador convolucional tiene un "constraint lenght" de cuatro (K=4), lo que hace realizable la implementacin del algoritmo de Viterbi. Tpicamente los decodificadores de Viterbi estn limitados a "constraint lenght" de valores menores que diez; mientras que los decodificadores secuenciales son eficientes hasta valores cercanos a 50. El algoritmo de Viterbi usa la estructura del trellis del codificador convolucional, para determinar la ruta ptima a la salida de ste. Existen 2 mtodos de obtener dicha salida: Traceback y register exchange. Ambos mtodos requieren una cantidad de memoria similar; la diferencia entre ellos radica en la mayor velocidad y complejidad del traceback .

V. Simulacin e Implementacin.
Los diagramas de flujo de los sistemas de codificacin y decodificacin se muestran en las figuras (9) y (10). Es evidente que el tiempo de procesamiento del decodificador es mayor que el del codificador, debido a su mayor complejidad, y por consiguiente a la mayor cantidad de rutinas a ejecutar. Se requiri calcular las 52 fronteras existentes en la constelacin por medio de un programa en MATLAB basado en el concepto de "distancia euclidiana". La simulacin de ambos sistemas se realiz mediante el software "DSP56000 Simulator" -fig(11)proporcionado por MOTOROLA; se comprob el funcionamiento global del sistema mediante el siguiente procedimiento: Se gener una secuencia aleatoria en MATLAB que fue usada como entrada del codificador; la salida fue contaminada con AWGN y fue usada como entrada del decodificador, comparndose finalmente la secuencia original de entrada con la de salida, y verificndose la capacidad de correccin de errores del sistema.

La implementacin se realiz en el mdulo de evaluacin DSP56002EVM[6,7], las pruebas a cada sistema se llevaron a cabo por separado, restando la transmisin de la data por un medio fsico; para ello se est realizando la programacin del SSI y del codec de la tarjeta. Los prximos avances estarn referidos a la implementacin de una interface serial PC-DSP bajo un sistema operativo en tiempo real (Real Time Linux[8]).

Figura(9)

Figura(10)

Figura(11)

VI. Agradecimientos
El presente trabajo no se hubiera podido realizar sin el apoyo de la Seccin de Post Grado y Segunda Especializacin de la Facultad de Ingeniera Elcrtica y Electrnica de la UNI en la persona del Dr. Arturo Rojas Moreno.

VII. Referencias
[1] G. Ungerboeck, "Channel coding with multilevel/phase signals," IEEE Trans. Information Theory, vol. IT-28, pp. 55-67, Jan. 1982. [2] G. Ungerboeck, "Trellis-Coded Modulation with Redundant Signal Sets," IEEE Communications Magazine, vol. CM-25, pp. 5-21, Feb. 1987. [3] Stephen B. Wicker, Error Control Systems for Digital Communications and Storage. [4] Ren J. Van der Vleuten and Jos H. Weber, "Optimized Signal Constellations for TrellisCoded Modulation on AWGN Channels," IEEE Trans. on Communications, vol. TC-44, pp 646-648, Jun. 1996. [5] Ezio Biglieri, Dariush Divsalar, Peter McLane, Marvin Simon, Introduction to Trellis-Coded Modulation with Application. [6] MOTOROLA, DSP56002 User Manual. [7] MOTOROLA, DSP56000 Family Manual. [8] RTLINUX, http://www.rtlinux.org

[9] MOTOROLA, application notes.


Para mayores referencias dirjase a la siguiente direccin [email protected]

También podría gustarte