Codigo Trellis

22
Comunicaciones de Datos 2001 Prof.Merardo Retamal Encina 1 Fundamentación del Código de Trellis por Cristóbal Jara Rodríguez ([email protected]), Pedro Melgarejo Rebolledo ( [email protected] ), Sergio Sobarzo Guzmán ([email protected] ) Resumen En el presente trabajo se estudió la modulación en código de Trellis, junto con sus ventajas, desventajas y el por qué de su gran aceptación en la transmisión de datos en canales con ancho de banda limitado. Para comprender como se realiza esta modulación es necesario revisar una serie de conceptos relacionados con códigos y tipos de modulación, los que son presentados como conocimientos previos. Lugo de la adquisición de estos conocimientos se continua con la explicación propiamente tal de la modulación de código de Trellis, explicando como es que este mejora la probabilidad de errores en la transmisión y dando a conocer un ejemplo completo de codificación y decodificación de la transmisión. Finalmente se muestra una aplicación real de la modulación y análisis de error del código. 1. Introducción Algunos de los códigos existentes disminuyen la probabilidad de bits erróneos (P B ) aumentando el ancho de banda de la señal. En el caso de los códigos convolucionales y códigos de dos estados, el ancho de banda se aumenta reemplazando cada mensaje de tamaño k por una palabra codificada de tamaño n, donde n > K. En el caso de canales con ancho de banda limitado, la expansión del ancho de banda no es posible. Es por esto que en el pasado los códigos para canales con ancho de banda limitados, como el telefónico, nunca fueron muy populares. Recientemente, en cambio, ha crecido mucho el interés en algunos tipos de modulaciones combinadas y esquemas de codificación, llamados modulación de código de Trellis, este logra una ganancia de codificación sin ninguna expansión en el ancho de banda. Al principio puede parecer que esto viola algunos principios básicos de intercambio de potencia - ancho de banda - probabilidad de error. Sin embargo, esto se logra debido a que la modulación de código de Trellis logra un una ganancia de codificación a expensas de la complejidad del decodificador. 2. Desarrollo 2.1 Conocimientos Previos 2.1.1 Codificación M-aria A pesar de que la comunicación binaria tiene ventajas significativas en términos de inmunidad al ruido y simplicidad en el equipamiento, muchas veces es deseable codificar la información en un formato que tenga más de dos estados posibles. La ventaja es que se disminuye la razón de transmisión en baudios, lo que implica una disminución del ancho de banda necesario para transmitir una misma cantidad de bps dada. La desventaja es que ahora existen más estados posibles lo que incrementa la probabilidad de error y aumenta la complejidad del equipo. Por ejemplo las técnicas de modulación BASK, BFSK y BPSK, son sistemas binarios; sólo hay dos condiciones posibles de salida, una representa un 1 lógico y la otra un 0 lógico; por tanto, son sistemas M-ario donde M = 2. Tanto con ASK, FSK, PSK o una combinación de ellos es posible realizar una codificación M-aria. Un sistema de PSK, con cuatro posibles fases de salida, es un sistema M-ario en donde M = 4. Si hubiera ocho posibles fases de salida, M= 8, etcétera. Matemáticamente, N = log 2 M en donde: N = número de bits M = número de condiciones de salida posibles con N bits 2.1.2 Constelaciones La codificación M-aria tiene su representación en un diagrama de estado de la señal o constelación. En este diagrama se representa cada símbolo posible de ser transmitido con la amplitud correspondiente de la señal y su fase relativa mediante puntos ubicados en un esquema, como se muestra en la figura N°1.

Transcript of Codigo Trellis

Page 1: Codigo Trellis

Comunicaciones de Datos 2001Prof.Merardo Retamal Encina

1

Fundamentación del Código de Trellispor

Cristóbal Jara Rodríguez ([email protected]), Pedro Melgarejo Rebolledo ([email protected]),Sergio Sobarzo Guzmán ([email protected])

ResumenEn el presente trabajo se estudió la modulación en código de Trellis, junto con sus ventajas, desventajas y el

por qué de su gran aceptación en la transmisión de datos en canales con ancho de banda limitado. Paracomprender como se realiza esta modulación es necesario revisar una serie de conceptos relacionados con

códigos y tipos de modulación, los que son presentados como conocimientos previos. Lugo de la adquisiciónde estos conocimientos se continua con la explicación propiamente tal de la modulación de código de Trellis,

explicando como es que este mejora la probabilidad de errores en la transmisión y dando a conocer unejemplo completo de codificación y decodificación de la transmisión. Finalmente se muestra una aplicación

real de la modulación y análisis de error del código.

1. Introducción

Algunos de los códigos existentesdisminuyen la probabilidad de bits erróneos (PB)aumentando el ancho de banda de la señal. En elcaso de los códigos convolucionales y códigos dedos estados, el ancho de banda se aumentareemplazando cada mensaje de tamaño k por unapalabra codificada de tamaño n, donde n > K. Enel caso de canales con ancho de banda limitado, laexpansión del ancho de banda no es posible. Espor esto que en el pasado los códigos para canalescon ancho de banda limitados, como el telefónico,nunca fueron muy populares. Recientemente, encambio, ha crecido mucho el interés en algunostipos de modulaciones combinadas y esquemas decodificación, llamados modulación de código deTrellis, este logra una ganancia de codificación sinninguna expansión en el ancho de banda. Alprincipio puede parecer que esto viola algunosprincipios básicos de intercambio depotencia - ancho de banda - probabilidad de error.Sin embargo, esto se logra debido a que lamodulación de código de Trellis logra un unaganancia de codificación a expensas de lacomplejidad del decodificador.

2. Desarrollo

2.1 Conocimientos Previos

2.1.1 Codificación M-aria

A pesar de que la comunicación binariatiene ventajas significativas en términos deinmunidad al ruido y simplicidad en elequipamiento, muchas veces es deseable codificarla información en un formato que tenga más dedos estados posibles. La ventaja es que sedisminuye la razón de transmisión en baudios, loque implica una disminución del ancho de banda

necesario para transmitir una misma cantidad debps dada. La desventaja es que ahora existen másestados posibles lo que incrementa la probabilidadde error y aumenta la complejidad del equipo.

Por ejemplo las técnicas de modulaciónBASK, BFSK y BPSK, son sistemas binarios;sólo hay dos condiciones posibles de salida, unarepresenta un 1 lógico y la otra un 0 lógico; portanto, son sistemas M-ario donde M = 2. Tantocon ASK, FSK, PSK o una combinación de elloses posible realizar una codificación M-aria. Unsistema de PSK, con cuatro posibles fases desalida, es un sistema M-ario en donde M = 4. Sihubiera ocho posibles fases de salida, M= 8,etcétera. Matemáticamente,

N = log2 M

en donde: N = número de bitsM = número de condiciones de

salida posibles con N bits

2.1.2 Constelaciones

La codificación M-aria tiene surepresentación en un diagrama de estado de laseñal o constelación. En este diagrama serepresenta cada símbolo posible de ser transmitidocon la amplitud correspondiente de la señal y sufase relativa mediante puntos ubicados en unesquema, como se muestra en la figura N°1.

Page 2: Codigo Trellis

Fundamentación del Código de Trellis

Comunicaciones de Datos 2001Prof.Merardo Retamal Encina

2

Fig. 1. Constelación 4-QAM

Fig. 2. Ejemplos de Constelación

Muchos investigadores han estudiado ungran número de posibles constelaciones en buscade diseños que resulten en un mejor desempeñodel error para una razón señal a ruido dada. Lassiguientes figuras muestran algunos ejemplos deconstelaciones de símbolos para M = 4, 8, y 16.Los conjuntos circulares están designados por lanotación (a, b, ...), donde hay una cantidad de aseñales o símbolos en el círculo mas interno, bseñales en el círculo siguiente y asísucesivamente.

Fig. N°3. Ejemplos de constelaciones M-arias

En general, la regla de constelaciones,conocida como la regla de construcciónCamponiano-Glazer, que dice que el conjunto derendimiento óptimo de señales puede ser resumidocomo: De un arreglo de infinitos puntosencerrados en un arreglo rectangular seleccionarun subconjunto de puntos encerrados de 2k puntoscomo constelación. En este caso, el “óptimo”significa que se debe tener la mínima potenciamedia o peak para un probabilidad de error dada.En un espacio bidimensional de señales elcontorno óptimo que encierras los símbolos tiendea ser un círculo. La siguiente figura muestraejemplos de conjuntos de señales rectangulares64-aria (k = 6) y 128-aria (k = 7). La forma decruz es un compromiso con el círculo óptimo. Laconstelación con k = 6 fue usada en los modems

Page 3: Codigo Trellis

Fundamentación del Código de Trellis

Comunicaciones de Datos 2001Prof.Merardo Retamal Encina

3

Pradyne de de 14400 bps. Comprada con uncontorno cuadrado, el aumento de desempeñoresultante de un límite circular son modestos 0.2dB.

Fig. N°4. Ejemplos de constelaciones M-ariasusando un arreglo rectangular

2.1.3 Capacidad

La finalidad de toda técnica demodulación, incluida la técnica M-aria, esalcanzar el límite máximo de capacidad del canalestablecido por la ley de Shannon:

C = W log2 (1+S/N) [bits/seg]en donde:

W = ancho de bandaS/N = razón señal ruido

Fig. N°5. Comparación de bps/Hz para un BERde 10-4

El restringido ancho de banda de loscanales de voz de las centrales telefónicas hahecho que las compañías de telecomunicacionessean las principales impulsoras de técnicas demodulación más eficientes. Un canal típicotelefónico está caracterizado por una alta razónseñal ruido (SNR) de aproximadamente 30 dB yun ancho de banda de cerca de 3KHz.

La siguiente tabla muestra algunascapacidades del canal dependiendo del ancho debanda y su relación señal a ruido.

BandwidthSNR

2400 2800 3200 342928 dB 22176 25872 29568 3168430 dB 23760 27720 31680 3394732 dB 25344 29568 33792 36210Tabla 1. Capacidades aproximadas del canal

telefónico

2.1.4 QAM (Quadrature Amplitud Modulation)

La modulación de amplitud en cuadratura(QAM), es una forma de modulación digital endonde la información digital está contenida, tantoen la amplitud como en la fase de la portadoratrasmitida.

La definición analítica de la modulaciónQAM se puede obtener de la expresión de unaseñal pasa banda:

( ) ( ) ( ) ( ) tjwtjw cc eetRGetgGt θν ReRe 00 ==

( ) ( ) ( ) ttwtRGt c θν += cos0

( ) ( ) ( )( ) ( ) ( )( ) ( ) twtsentRtwttRGt cc sin)(coscos0 θθν −=

Page 4: Codigo Trellis

Fundamentación del Código de Trellis

Comunicaciones de Datos 2001Prof.Merardo Retamal Encina

4

Una señal QAM se entiende como unaportadora de frecuencia wc modulada en fase porla señal θ(t) y en amplitud por R(t), o bien, comodos portadoras en cuadratura moduladas enamplitud por las señales I(t) y Q(t).

( ) ( ) ( ) ( ) ( ) twtQtwtIGt cc sencos0 −=ν

La señal G0g(t) es la que contiene lainformación. (señal banda base). Ésta puede serrepresentada como un tren de pulsos:

[ ] ( )∑ −=k

kTtskaGtgG 00 )(

a[k] representa un tren de impulsos multinivel, entanto s(t) es la forma del pulso. Cada pulsorepresenta m bits.

Figura N°6. Ejemplo de un tren de impulsosmultinivel y su tren de pulsos equivalente

El factor G0 determina la distancia entrelos distintos niveles. En el caso de QAM, el trende impulsos a[k] se representa en forma compleja,es decir, tanto la parte real como la complejarepresentan un tren de impulsos multinivel. Deeste modo, las señales modulantes I(t) y Q(t)representan cada un tren de pulsos multinivel, odicho de otro modo, representan un conjuntodiscreto de valores en el tiempo. Cada par devalores en un instante determinado [I(t0),Q(t0)] sedenomina un símbolo QAM. El total de bits querepresenta un símbolo es la suma de los bits querepresentan I(t) y Q(t).

2.1.5 Probabilidad de error y DistanciaEuclidiana

Fig. N°7. Constelación de una señal BPSK

Fig N°8. Constelación de una señal QPSK

La señal recibida real (ruidosa) tenderá aser algún punto alrededor del punto “correcto”dentro de la constelación. El receptor escogerá elpunto más cercano a la señal ruidosa recibida. Simás puntos se añaden a la constelación mientras lapotencia se mantiene constante, la probabilidad deerror aumenta, debido a que la distanciaEuclidiana (distancia entre dos puntos adyacentes)“d” se disminuye y el receptor tiene que hacer untrabajo más complejo para realizar la decisióncorrecta. Así se observa que la distanciaEuclidiana domina la expresión de probabilidadde error.

Ya que la potencia es la misma paraambas constelaciones, la energía requerida es lamisma. Los puntos en BPSK están separados d =2, mientras que en QPSK están separados d =

2

Entonces la probabilidad de error paraBPSK es:

=

=

002

1*2*

21

nE

erfcn

EderfcPe

y para QPSK:

=

02 n

EerfcPe

Como se ve en los resultados, lasexpresiones de error dependen del espaciamientoentre señales “d”, por consiguiente la probabilidadpara QPSK es mayor dado que la distancia “d” esmenor. Trellis, mediante el incremento de ladistancia Euclidiana nos permite recuperar esteincremento de error.

Page 5: Codigo Trellis

Fundamentación del Código de Trellis

Comunicaciones de Datos 2001Prof.Merardo Retamal Encina

5

En general la probabilidad de error parauna constelación dada es:

−≤

0221

NE

erfcM

P be

δ

en donde:

ME

Eb

2log=

21 ∑Ω∈

=x

xM

E con constelación Ω

ME

d min

2

22 log=δ

2

'''

2 ''' xxmindxx

min −=≠

2.1.6 Distancia Hamming

La distancia Hamming se define para dospalabras de códigos de igual largo. La distancia deHamming es el número de posiciones de bits en elcual difieren dos palabras. Por ejemplo:

0000, 0011, 0101, 0110, 1001, 1010, 1100, 1111

se verifica que la mínima distancia entre palabrases de 2.

2.1.7 Códigos Convolucionales

En este tipo de código no se consideranlos bloques individuales de bits como palabras decódigo. En cambio, Un flujo continuo de bits deinformación se opera en la forma de mensajecodificado. La fuente genera una secuenciacontinua de 1’s y 0’s y la secuencia transmitida segenera de esta secuencia. La secuencia transmitidano necesita ser más larga que los bits transmitidas,es decir, no añade bits de redundancia. Sinembargo, esta técnica introduce la capacidad decorrección de error al introducir memoria en elsistema. Los bits de mensaje son combinados deuna manera particular con el fin de generar cadabit transmitido.

La técnica para generar la secuenciatransmitida es convolucionar la fuente con unasecuencia binaria fija. Entonces, para un particularbit transmitido tn, se genera de una combinaciónde bits fuente, sn, sn-1, sn-2, ..., sn-k, de acuerdo a laecuación de convolución:

∑−∞=

−=n

kknkn hst

Las h’s en esta ecuación son 1’s o 0’s, yla adición es en módulo 2. La ecuación puede serimplementada con un registro de desplazamientoy un sumador modulo 2.

La siguiente figura muestra unaimplementación con registro de desplazamiento.Los switches de la figura están cerrados si la hasociada es 1 y abierto si es 0.

Fig N°9. Implementación de la convolucióndigital con un registro de desplazamiento

En la aplicación del códigoconvolucional a menudo se transmite más de 1 bitpor cada bit entrante. Entonces, refiriéndonos a laFig N° 9, se puede ingresar 1 bit de entrada ysetear los switches a un particular set de h’s ygenerar el primer bit de salida. Antes de alimentarel registro con otro bit, se pueden volver a setearlos switches con otro set de h’s y transmitir unsegundo bit. Si se transmiten 2 bits de salida porcada bit entrante, este código se denomina codigoconvolucional de razón ½. Al enviar un códigoconvolucional con una razón de ½, a veces seescoge el primer bit de cada bit transmitido con elfin de ser idéntico a la secuencia de informaciónentrante. Este es equivalente a setear h0=1 y hn=0para n≠0. En este caso, el código es conocidocomo código sistemático.

A continuación se presente un ejemplo decódigo convolucional no.sistemático de razón ½,se considera un registro de desplazamiento con elprimer set de h’s dado por 101 y el segundo set deh’s en 011.

Page 6: Codigo Trellis

Fundamentación del Código de Trellis

Comunicaciones de Datos 2001Prof.Merardo Retamal Encina

6

Fig N°10. Ejemplo código convolucional

2.2 Código de Trellis

La modulación de código de Trelliscombina el conjunto de señalizaciones de lamodulación multilevel/phase con el esquema deorientación de estados de Trellis. El conjunto deseñales multilevel/phase es una constelación deseñales que poseen múltiples amplitudes,múltiples fases o una combinación de múltiplesamplitudes y fases. La ganancia de codificaciónpuede ser lograda con códigos de bloques ocódigos de Trellis, pero se considera mucho mas aTrellis debido a la posibilidad de la decodificacióncon el algoritmo de Viterbi. La codificación paracanales con ancho de banda limitado requiere laintroducción controlada de redundancia. Encambio, en este caso, la redundancia es debida alincremento en el alfabeto de señales, lograda através de señalización multilevel/phase, por lo queel ancho de banda del canal no es incrementado.

2.2.1 La idea detrás de la modulación del códigode Trellis

El performance del error en unamodulación no ortogonal M-ario (como lo sonPAM, PSK o QAM) depende de la distancia entreel mas cercano par de puntos de señal. Ladistancia mínima es determinada por medio delpromedio de la potencia transmitida y el numero yposición de los puntos de señal. Para un promediode potencia constante, la mínima distancia entrepuntos disminuye cuando el numero de puntosaumenta. Por lo tanto, si se asume una velocidadde símbolos en el canal constante y una potenciapromedio constante, el performance del errordisminuye para sistemas que intentan aumentar lavelocidad de transmisión de bits con unincremento en el tamaño del set de símbolos. Elobjetivo de la codificación de Trellis es aumentarla mínima distancia entre las señales.

La codificación de Trellis puede serimplementada con un encoder convolucional (verconocimientos previos) en donde K bits corrientes

y K-1 bits de prioridad son usados para producir n= K + p bits codificados, donde p es el numero debits de paridad. Los n = K + P bits codificadosrequieren un canal de 2n símbolos binarios paratransmisión. Se debe notar que esta codificaciónincrementa el tamaño del set de señales de 2k a2K+p . La Figura N°11a muestra una señal PAM 4-aria no codificada, antes y después de sercodificada en una señal PAM 8-aria con una razón2/3. Similarmente, la figura N°10b muestra unaseñal PSK 4-aria antes y después de ser codificadaen una señal PSK 8-aria de razón 2/3, yfinalmente la figura N°10c muestra una señalQAM 16-aria antes y después de ser codificada enuna QAM 32-aria de razón 4/5.

(a) (b) (c)

Fig N°11. Incremento del conjunto de señalespara una modulación con código de Trellis.

En cada uno de estos casos el sistema esconfigurado para usar la misma señal promedio depotencia antes y después de la codificación. Elejemplo de la figura N°11 muestra la idea básicadetrás de la modulación del código de Trellis. Encada caso el tamaño del conjunto de símbolosaumenta de 2K a 2K+1 para proveer la necesidad deredundancia en la codificación; sin embargo encada caso, el incremento en el numero de señalesno resulta en un incremento en el ancho de banda.La expansión del conjunto de símbolos resulta enuna reducción de la distancia entre puntos desímbolos adyacentes para una potencia promediodada. No obstante, debido a que el códigointroduce redundancia, esta reducción de ladistancia no determina mucho el performance delerror. Sin embargo, la distancia libre, que es lamínima distancia entre miembros del conjunto desecuencias de símbolos validos, determina el

Page 7: Codigo Trellis

Fundamentación del Código de Trellis

Comunicaciones de Datos 2001Prof.Merardo Retamal Encina

7

performance del error. Ungerboeck investigo elincremento en la capacidad del canal que se podíalograr aumentando el conjunto de señales yconcluyo que al doblar el numero de señales delcanal ( p = 1 ), es posible al ganar casi toda lacapacidad disponible del canal. Esto puedelograrse con un codigo de razón K/(K+1), yposteriormente mapeando grupos de K+1 bitsdentro del conjunto de 2K+1 símbolos.

2.2.2 Un Evento de Error

La figura N°12 muestra un evento deerror en el código de Trellis, esta muestra unasecuencia transmitida marcada U = . . ., U1, U2,U3, . . . y una secuencia alternativa marcada comoV= . . ., V1, V2 , V3, . . .Asumiendo decodificaciónSoftdecision, un evento de error ocurre cuando elsímbolo recibido esta mas cerca en distanciaEuclidiana a alguna secuencia alternativa, V, quepara la actual secuencia transmitida, U. Así laseparación de U y V describen un evento de error.Esto implica que estas codificaciones para señalesmultilevel/phase deben ser diseñadas para lograruna máxima distancia libre Euclidiana mas queuna máxima distancia libre Hamming; paradecodificadores soft-decision, la mas grandedistancia Euclidiana corresponde a la mas bajaprobabilidad de error. Por lo tanto, asignandopuntos de señal para los bits codificados en unadirección se maximiza la distancia Euclidiana quees la clave para optimizar el código de Trellis.Ungerboeck investigo este problema de mapeo debits-por-simbolos e ideó un procedimiento deasignación, llamado método de set partitioning,que siempre proporciona una ganancia en lacodificación, dando una adecuada selección a losestados de Trellis. Las reglas de este mapeo bits-por-simbolos están basadas en el método de setpartitioning , que pude ser resumido como sigue:

1. Todas las transiciones paralelas en laestructura de Trellis son separadas por lamáxima distancia Euclidiana posible.Transiciones paralelas se refieren a laspalabras de rama resultantes de la transmisiónde bits no codificados junto con los bitscodificados (ver el ejemplo que sigue). Larazón de esto esta basada en el hecho de quetransiciones paralelas implican que soloeventos de signal-error pueden ocurrir. Estolimita la mínima distancia Euclidiana lograblea la mínima distancia en el subsets de señalesasignadas a las transiciones paralelas.

2. Todas las transiciones divergiendo de oemergiendo de un estado de Trellis son asignadas

a la próxima distancia Euclidiana de separaciónmáxima posible.

Fig N°12. Ilustracion de un evento de error

En resumen, la codificación de Trellispara canales con ancho de banda limitados empleagrandes alfabetos de señales logrados a través deseñalización multilevel/phase, tal que el ancho debanda del canal no se aumenta (Ej PAM M-ario,MPSK o QAM). Aunque el aumento en el set deseñales reduce la mínima distancia entre símbolos,la distancia Euclidiana libre entre las secuencia decódigo Trellis se compensa ahora que los puntosde señales están más juntos. El resultado es unaganancia neta de performance de error de 3 a 6dB sin ninguna expansión en el ancho de banda.

2.2.3 Ejemplo de código Trellis

Un codificador convolucional de razón2/3 con longitud de contención K = 3 en mostradoen la figura N°13. El codificador de razón 2/3 eslogrado transmitiendo un bit sin modificar de cadapar de bits de la secuencia de entrada, ycodificando el otro bit en dos bits usando uncodificador de razón 1/2. El diagrama de Trellisresultante es mostrado en la figura N°14, dondelas transiciones paralelas son debidas al bit sincodificar m1 mostrado como el bit mas a laizquierda en cada rama de Trellis. Las dos ramassuperiores emergiendo de cada estado representantransiciones debido a que m1 m2 pueden ser 00 y10 respectivamente, las dos ramas inferioresrepresentan transiciones debido a que m1m2pueden ser 01 y 11, respectivamente. La técnicade Viterbi para la decodificación será mostradapaso a paso en un ejemplo posterior. El segundobit decodificado del par corresponde a la entradam2 este produce la transición de estados de larama al ser decodificada. En la figura N°14 unarama con líneas sólidas corresponde a m2 = 0 yuna rama con líneas segmentadas corresponde am2 = 1.

Page 8: Codigo Trellis

Fundamentación del Código de Trellis

Comunicaciones de Datos 2001Prof.Merardo Retamal Encina

8

Fig N°13. Encoder convolucional de razón 2/3.

Fig N°14. Diagrama de Trellis.

2.2.4 Ganancia de codificación paracodificación Trellis

Considerar el ejemplo anterior. Se asumeuna simple señal unidimencional con modulaciónde pulsos de distintos niveles de amplitud (PAM),como el mostrado en la figura N°15. En la figuraN°15a se muestra una señal 8-aria PAM. Puestoque se asume softdecisions, la distancia métricaapropiada es la Euclidiana. La distanciaEuclidiana de cada señal, tomada desde el centro,es mostrada en unidades arbitrarias. También semuestra la asignación de bit-to-symbol de acuerdo

con el conjunto de reglas de partición. Se puedenotar la adherencia a estas reglas, por medio de lacomparación de la figura N°15 con la N°14.Todas las transiciones paralelas son separadas poruna distancia de ocho unidades, y todas las ramasdivergen de un estado dado que esta separado porlo menos cuatro unidades.

La potencia promedio de la señal, Sav, secalcula de ña siguiente forma:

Mddd

S Mav

222

21 .... +++

=

Donde di es la distancia Euclidiana de laiesima señal del centro del espacio, y M es lanumero de palabras codificadas del conjunto desímbolos. Para el conjunto de señales mostrado enla figura N°15a, donde M = 8, al usar la ecuaciónanterior se obtiene Sav = 21. La figura N°15bmuestra un conjunto de señales PAM 4-aria queno codificado equivale a una razón de 2/3 delconjunto codificado; la distancia Euclidiana fueescogida para obtener la misma potenciapromedio de la señal que en el caso de lacodificación de la figura N°15a.

Fig N°15. Conjunto de señales PAM 8-ario y4-ario.

La figura N°16 muestra la mínimadistancia de un evento de error para el encodermostrado en la figura N°13. La secuenciatransmitida se asume que corresponde a todos loscaminos de ceros. Cada una de las palabrascorrespondientes a las ramas en este caminoposeen una distancia Euclidiana de 7 unidadesdesde el centro del espacio. El evento de errordiverge del camino de puros ceros por la primeratransición al estado 10, luego al estado 01 yfinalmente reemerge al estado 00. En cada una delas ramas del evento de error esta escrita sudistancia Euclidiana desde el centro del espacio,asumiendo el bit no codificado m1 = 0; estasuposición asegura que la distancia entre todos los

Page 9: Codigo Trellis

Fundamentación del Código de Trellis

Comunicaciones de Datos 2001Prof.Merardo Retamal Encina

9

ceros de transmisión y el evento de error esmínima. Para verificar la distancia Euclidiana parael evento de error de la figura N°16, primeronotar las transiciones de ramas desde y hacia. Dela figura N°14 determine la secuencia de palabrasde rama para cada transición (con m1 = 0), y luegode la figura N°15a determine la distanciaEuclidiana desde el centro del espacio para cadarama en el evento de error.

Fig N°16. Mínima distancia de error para uncódigo convolucional de razón 2/3.

La amplitud de la señal corresponde a ladistancia del punto de señal al centro del espacio;la potencia de la señal corresponde al cuadrado deesa distancia. Si se compara el performancerelativo de una modulación PAM 4-aria nocodificada con una modulación de código deTrellis 8-aria, tomando en cuenta un error porsistema y con la misma potencia promedio enambos casos, se puede determinar la ganancia decodificación G, como sigue:

( )( )uncodedavmin

codedavmin

Sd

SdG 2

2

=

Para el ejemplo de codificación de Trellisde razón 2/3, le valor de d2

min para cada evento deerror se calcula de la siguiente forma:

( ) ( ) ( ) ( )( ) ( ) 8.1605.215.6

3637573722

2222

=−=

=−+−+−=

uncodedmin

codedmin

d

d

Entonces la ganancia de codificación resulta ser lasiguiente:

dBdecibeleseno

G

31.3

14.2218.16

2136

=

==

Por lo tanto, incluso para este simpleejemplo en que K = 3, se provee una cantidadsignificante de ganancia de código sin ningunaexpansión en el ancho de banda. Se pueden logrargrandes ganancias de codificación con unincremento en los estados de Trellis, esto aexpensas del incremento en la complejidad de ladecodificación. La siguiente tabla muestra lapotencia promedio de la ganancia de codificaciónen función del numero de estados de Trellis parauna codificación PAM 8-aria de razón 2/3 quecorresponde a la misma del ejemplo anterior. Laganancia es calculada con respecto a un conjuntode señales PAM 4-aria no codificada.

Numero deestados de

TrellisK

Ganancia depotencia

promedio (dB)4 3 3.318 4 3.7716 5 4.1832 6 4.5664 7 5.23

128 8 5.23256 9 5.83

Tabla N°2. Ganancia de Codificación de Trellis

Para el transmisor, esto significa solo unpequeño aumento en la complejidad. En cambio,para el decodificador del receptor el problema esmucho más complejo, por lo que se evalúa laganancia de codificación versus la complejidaddel decodificador al momento de usar lacodificación de Trellis.

2.2.5 Codificación y Decodificación

Para analizar lo que involucra undiagrama de Trellis es conveniente analizar lo queestá envuelto en los códigos convolucionales.

Como ya se señaló en un tópico anterior.Los código convolucionales son códigos lineales,donde la suma de dos palabras de códigocualesquiera también es una palabra de código. Yal contrario que con los códigos lineales, seprefieren los códigos no sistemáticos (aquelloscódigos en los que la palabra de información noaparece de forma explícita en la palabracodificada). El sistema tiene memoria, es decir, la

Page 10: Codigo Trellis

Fundamentación del Código de Trellis

Comunicaciones de Datos 2001Prof.Merardo Retamal Encina

10

codificación actual depende de los datos que seenvían ahora y que se enviaron en el pasado.

Un código convolucional quedaespecificado por tres parámetros a saber:

(n,k,m), donde:

n es el número de bits de la palabra codificadak es el número de bits de la palabra de datosm es la memoria del código o longitud restringida

Ejemplo de este código son:

Código (2,1,3):

Esto quiere decir que la palabracodificada tiene 2 bits de longitud, la entrada sonbloques de 1 bit y la salida depende de los dosbloques anteriores y del actual.

Código (4,2,3):

Esto quiere decir que la palabracodificada tiene 4 bits de longitud, la entrada sonbloques de 2 bit y la salida depende de los dosbloques anteriores y del actual.

A continuación se explica el proceso decodificación para un código convulocional:

Proceso de Codificación:

El proceso de codificación de estoscódigos se realiza utilizando un dispositivo lógicoen el codificador.

Un canal del codificador es el siguiente:

Fig. N°17. Canal Conmutador Convolucional

Un ejemplo de la codificacionconvulocional y su interacción con el conmutadorse muestra a continuación:

Ejemplo: Codificador convolucional (4,3,5)

El canal conmutador es el siguiente (fig.18):

Fig. N°18. Canal Conmutador

El conmutador con las dos entradas haceel papel de un registro de desplazamiento de dosestados. El código convolucional es generadointroduciendo un bit de datos y dando unarevolución completa al conmutador. Inicialmentese supone que los registros intermedios contienenceros.

En este ejemplo la palabra codificada seobtiene como resultado de sumas módulo-2 entrelos bits indicados que están almacenados en losregistros intermedios.

Las secuencias de salida para el códigoanteriormente descrito son las siguientes:

Entrada(S3,S2,S3)

Salida(O1,O2)

000 00001 11010 01011 10100 10101 01110 11111 00

Tabla N°3.

Ahora como ejemplo de funcionamientodel codificador anterior se supondrá el envió de lasecuencia de bits 0101 (donde los bits más a laderecha son los más antiguos). El proceso decodificación es el siguiente:

1) Se introduce el primer bit de la secuencia enel codificador, de esta manera se obtiene elsiguiente canal:

Fig. N°19.

Page 11: Codigo Trellis

Fundamentación del Código de Trellis

Comunicaciones de Datos 2001Prof.Merardo Retamal Encina

11

2) Se introduce el segundo bit de la secuencia enel codificador:

Fig. N°20.

3) Se introduce el tercer bit de la secuencia en elcodificador:

Fig. N°21.

4) Se introduce el cuarto bit de la secuencia enel codificador:

Fig. N°22.

Siguiendo las secuencia respectivas delas figuras se observa que al final del proceso decodificación se obtiene que la secuenciacodificada es: 01 01 01 11.

Debido a que el código convolucional esun código que requiere memoria es necesariodisponer de medios gráfico adecuados paradeterminar la salida asociada a una determinadaentrada.

Existen 3 métodos gráficos apropiados:

Diagrama árbol o árbol del código:representación mediante un árbol binario de lasdistintas posibilidades.

Diagrama de estados: es la forma menosutilizada.

Diagrama de Trellis o enrejado: es la forma másutilizada porque es la que permite realizarla decodificación de la forma más sencilla

Para el ejemplo del codificador (2,1,3)anteriormente especificado se tiene el siguienteArbol de código:

Fig. N°23.

La profundidad genérica de un árbol es)1(2 −m , y el número de estados es km )1(2 − . La

interpretación del árbol del código es la siguiente:Hay dos ramas en cada nodo. La rama superiorcorresponde a una entrada de un 0. La ramainferior corresponde a la entrada de un 1. En laparte exterior de cada rama se muestra el valor desalida. El número de ramas se va multiplicandopor dos con cada nueva entrada. A partir delsegundo nivel el árbol se vuelve repetitivo. Si se

Page 12: Codigo Trellis

Fundamentación del Código de Trellis

Comunicaciones de Datos 2001Prof.Merardo Retamal Encina

12

observa detenidamente el árbol se puede apreciarque solo hay cuatro tipos de nodos: A,B,C,D.Estos tipos de nodos en realidad son estados delcodificador. A partir de estos nodos, se producenlos mismos bits de salida y el mismo estado.

Por ejemplo, de cualquier nodoetiquetado como C se producen el mismo par deramas de salida:

Salida 10 y estado ASalida 01 y estado B

A partir de la identificación de losestados del codificador se puede incorporar estainformación en el DIAGRAMA DE TRELLIS.

El Diagrama de Trellis es un diagramaen forma de red. Cada línea horizontal secorresponde con uno de los estados delcodificador. Cada línea vertical se corresponderíacon uno de los niveles del árbol del código.

Se comienza del estado inicial delcodificador en el primer nivel del árbol. A partirde aquí se trazan dos líneas desde este estado. Unapara el caso de que la siguiente entrada fuera un 0y otra para el caso de que fuera un 1. Estas líneasirán hasta el siguiente nivel del árbol al estado enel que queda el codificador después de habercodificado las correspondientes entradas. Encimade cada una de estas líneas se escribe la salida delcodificador para esa codificación.Para cada nivel del árbol se hace lo mismo desdetodos los estados en los que el codificador sepuede encontrar.

Según todo esto, el diagrama de Trellispara el codificador (2,1,3) del ejemploanteriormente tratado es:

Fig. N°24.

Si se sigue en el diagrama de Trellis quese acaba de construir la codificación de lasecuencia de bits 0101, se tendrá lo siguiente:

Secuencia Entrada 1 0 1 0Secuencia Codificada 11 01 01 01

Fig. N°25.

A continuación se analizará el proceso deDecodificación para la codificación Trellis:

Proceso de decodificación

El proceso de decodificación consiste enbuscar un camino en el diagrama de Trellis (o enel árbol del código) que dé la secuencia de bitsmás probable (si no hay errores se obtendrá lasecuencia exacta).

El codificador convolucional añade unaestructura a la secuencia de bits. Incluso aunquela entrada sea totalmente aleatoria, se fuerza aque la salida siga unas determinadas secuencias.Esta restricción es la que da la capacidadcorrectora a los códigos convolucionales. Elprocedimiento de decodificación es equivalente acomparar la secuencia recibida con todas lasposibles secuencias que pueden obtenerse con elcorrespondiente codificador y seleccionando lasecuencia que está más próxima a la secuenciarecibida.

Para realizar la decodificación se utilizaun algoritmo denominado Algoritmo de Viterbi .El fundamento de este algoritmo está en que no sealmacenan todas las secuencias a las que da lugarel codificador. Se basa en el principio deoptimalidad: el mejor camino (menor distancia deHamming) a través del diagrama de Trellis quepasa por un determinado nodo, necesariamenteincluye el mejor camino desde el principio deldiagrama de Trellis hasta este nodo.

El principio anterior implica que paracada uno de los nodos del diagrama de Trellis sóloes necesario guardar el mejor camino (secuencia)hasta ese nodo. De esta forma, como mucho setendrán tantos caminos como estados diferentes(el número de estados es 2(m-1)*k).

Page 13: Codigo Trellis

Fundamentación del Código de Trellis

Comunicaciones de Datos 2001Prof.Merardo Retamal Encina

13

Descripción del algoritmo de Viterbi:

Paso 1: en el nivel j, se calcula la distancia deHamming de cada camino entrante en cadanodo (estado) desde el nodo del nivel j-1 hasta elnodo del nivel j a través del caminosuperviviente.

-Paso 2: para cada nodo (estado) del diagrama deTrellis en el nivel j, se descartan todos loscaminos que entran en el nodo, excepto el dedistancia mínima. Cuando a un nodo llegan doscaminos con la misma distancia se toma elsuperior.

Paso 3: Se pasa al nivel j+1 y repiten los pasos 1y 2.

Los pasos anteriores se aplican para jmayor o igual que 2. Hasta ese valor se expandenlos caminos.

Se mostrará a continuación un ejemplode aplicación de este algoritmo sobre una cadenacodificada con el codificador (2,1,3) del ejemplode codificación que se ha seguido en el desarrollode esta sección.

El codificador envía la secuencia:11 01 10 11 10 00 11

correspondiente a la codificación de la cadena1 0 0 1 1 1 0

El receptor recibe la secuencia:11 01 00 11 11 00 11

Se aprecia que con respecto del original se hanproducido dos errores (posiciones 5 y 10).

El Algoritmo de Viterbi permitirá corregir loserror, a continuación se muestran los pasos que sesiguen:

Paso 1El cálculo de las distancias entrega:

d(11,00) = 2 , d(11,11) = 0

Fig. N°26.

Paso 2

El cálculo de las distancias entrega:

2+d(01,00)=2 + 1 = 3 , 0 + d(01,01) = 0 + 0 = 02+d(01,11)=2 + 1 = 3 , 0 + d(01,10) = 0 + 2 = 2

En este momento se encuentra el análisisen el nivel 2. A partir de ahora se comienza aaplicar el algoritmo.

Se ve que a cada estado del nivel 2 llegaun único camino, por lo tanto el análisis indicaque deben quedarse todos los caminos hasta elmomento.

Fig. N°27.

Paso 3

El Cálculo de las distancias indica:3 + d(00,00) = 3 + 0 = 30 + d(00,10) = 0 + 1 = 13 + d(00,11) = 3 + 2 = 5

Para cada estado del nivel 3 se debequedar con el camino de menor peso que llegue aél. Los caminos que se han seleccionado hasta elmomento aparecen marcados con un color azul.

Page 14: Codigo Trellis

Fundamentación del Código de Trellis

Comunicaciones de Datos 2001Prof.Merardo Retamal Encina

14

Fig. N°28.

Paso 4

Fig. N°29.

Paso 5

Fig. N°30.

Paso 6

Fig. N°31.

Paso 7

Fig. N°32.

Una vez que se ha llegado al final, seescoge el camino que da la distancia más corta enel último nivel. Una vez seleccionado el camino,se elige el bit que provoca la transición de estadoentre dos niveles comenzando desde el primernivel hasta el último. La secuencia de bitsobtenida es la cadena decodificada.

Para el ejemplo que se analiza, se tieneque la distancia más corta en el último nivel es 2 yviene dada por:

Fig. N°33.

Ahora se selecciona en cada nivel el bitde entrada que provoca la transición de estadosque se refleja según el camino obtenido. De estaforma se obtiene:

Nivel bit

1 12 03 04 15 16 17 0Tabla N°4.

Por lo tanto, la secuencia decodificadaobtenida es 1 0 0 1 1 1 0. Se Aprecia que coincidecon la cadena codificada por el codificador yenviada al decodificador. Por lo tanto el código

Page 15: Codigo Trellis

Fundamentación del Código de Trellis

Comunicaciones de Datos 2001Prof.Merardo Retamal Encina

15

utilizado ha sido capaz de detectar y corregir doserrores.

2.2.6 Análisis de Error Para Código Trellis

Asumiendo que todos las señales deentrada son igualmente probables, todos loscaminos de las señales son localizadas fuerasobre. Como se sabe la señal recibida incluyeruido y tenderá a ser localizada en alguna partealrededor de los puntos estatales. El receptor tieneque nuevamente tomar una decisión basada enaquellos puntos cercanos de la señal y un valor deestado erróneo de salida que se escogerá si elreceptor toma una decisión incorrecta.

Para ilustrar los eventos de error, seasume que el transmisor está enviando "7"símbolos continuos. Los gráficos siguientesilustran los posibles eventos del error:

Fig. N°34.

Aquí "5" seguido por "6" es recibido enlugar de la secuencia de transmisión "7" - "7". Ladistancia Euclidiana para este camino es:

( ) ( )

608.18

sin22

)6,7()5,7(2

20

21

22

=

+=

+=+

π

dddd

Fig. N°35.

Donde d(7,5) y d(7,6) son la distanciaEuclidiana entre estas dos señales “7” y “5”, y “7”y “6” respectivamente.

Aquí "1" seguido por "6" es recibido enlugar de la secuencia de transmisión "7" - "7". Ladistancia Euclidiana para este camino es:

( ) ( )

608.1)8

(22

)6,7()1,7(2

20

21

22

=

+=

+=+

πsin

dddd

Fig. N°36.

Aquí "5" seguido por "2" es recibido enlugar de la secuencia de transmisión "7" - "7". Ladistancia Euclidiana para este camino es:

( ) ( )

33.28

3sin22

)2,7()5,7(2

23

21

22

=

+=

+=+

π

dddd

Fig. N°37.

Aquí "1" seguido por "2" es recibido enlugar de la secuencia de transmisión "7" - "7". Ladistancia Euclidiana para este camino es:

( ) ( )

33.28

3sin22

)2,7()1,7(2

23

21

22

=

+=

+=+

π

dddd

El único evento del error restante es solointervalo "3" en lugar del evento de error "7" quetiene una distancia Euclidiana de 2.

Debido a sus grandes distancias deEuclidianas (2.33), los eventos de error "5" - "2"y "1" - "2" son menos probables. Los errores deevento "1" - "6" y "5" - "6" son más probablesdebido a sus bajas distancias Euclidianas (1.608).

La distancia Euclidiana mínima para unTrellis fue definido por Ungerboeck 3 como lamínima distancia Euclidiana libre "DE" (similar a

Page 16: Codigo Trellis

Fundamentación del Código de Trellis

Comunicaciones de Datos 2001Prof.Merardo Retamal Encina

16

la mínima distancia en código convolucional).Para el caso anterior dE=1.608.

Dado que DE es una medida de lacercanidad espacial entre puntos de estadoadyacentes (y por consiguiente también con másprobabilidad para causar errores), ello dicta ellímite más bajo para la probabilidad de error parael Trellis de la siguiente manera:

( ))2/()(21

0nEdercfdaP EEe ⋅⋅

⋅≥

Donde, a(dE) es el número de caminoserróneos a una distancia dE. En un Trellis de 2estados, hay 2 caminos erróneos a una distanciade dE. Por consiguiente la probabilidad de errores:

( ))//()2/608.1( 0nEercfPe ≥

Comparando, la probabilidad de errorpara un QPSK regular, se tiene:

( ))//()2/404.1( 0nEercfPe ≥

Por lo tanto la mejora de código Trellisde dos estados sobre QPSK es por lo tanto1.608/1.414 o 1.1 dB.

2.3 Módem de 9600 bps

2.3.1 Modulacion en V.32 Utilizando Código deTrellis:

La normalización V.32 utilizadecodificación Trellis para comunicaciones de9600 bps. En V.32 se utiliza un canal codificadorTCM con una ganancia de 4dB, utilizada enV.32 para modems de Banda Vocal Full duplex dedos-hilos utiliza una decisión de decodificaciónsuave (como se mostrará en los párrafossiguientes). Así, se logra una más altaconfiabildiad.

2.3.2 TCM por modem de 9600 bps de BandaVocal.

El código TCM se usa en V.32 para losmódem de 9600bps para obtener inmunidad delruido más alta por sobre la de la transmisión no-codificada a la misma tasa de transferencia de losdatos, potencia de la transmisión y límite delAncho de Banda.

Generalmente, el TCM combina lacodificación y la modulación juntos al fin de delenvió del mensaje, el canal de codificación esnormalmente un código convolucional. El canalde la modulación es de alto-orden QAM o PSK.Mientras al extremo del receptor, no se realizan ladecodificación y demodulación en pasos delseparados, sino entrelazó en un solo paso.

Debido a estos procesos combinados dedecodificación y demodulacion, el parámetro quedomina el perfromace es la “Distancia Euclidianalibre” entre las secuencia de codificado de laseñal, no lo “Distancia de Hamming Libre” comose utiliza en los sistemas tradicionales dedecoding/demodulation. También, la decisiónhecha es un proceso de decisión suave en lugar deuno duro, es decir, las señales recibidas seprocesan antes de las decisiones e haga, cuandolos símbolo que se estén transmitiendocorresponden.

2.3.3 La necesidad de TCM.

Generalmente hablando, los parámetrosque afectan el performance de un canal detransmisión digital no codificado son:

R: Razón de la informaciónB: Ancho de Banda del CanalSNR: Razón señal a ruidoP(e): Probabilidad de Error.

Si se utiliza el canal de la modulacióndonde la constelación de la señal consiste en deM’ estados (el conjunto completo es llamado O’).Asumiendo que cada uno de estos estados esindependiente de los otros, es decir, cada uno esuna señal transmitida igualmente aceptable.Entonces el dmin, la mínima Distancia Euclidianaentre dos secuencias del vector de la señalaceptables, se dará (como se mostró en la secciónanterior) por:

22min '''min xxd −=

Page 17: Codigo Trellis

Fundamentación del Código de Trellis

Comunicaciones de Datos 2001Prof.Merardo Retamal Encina

17

Una relación entre los parámetros delcanal es dada por:

−≤

0221')(

NE

erfcM

ep bδ

donde )(2/1)( xerfxerfc −= , 0/ NEb

( 2/0N la varianza del ruido Gaussiano) es larazón señal a ruido y se tiene que:

'log'

2 ME

Eb =

2

'1' ∑= x

ME

'log' 2

2min2 ME

d=δ

De la ecuación anterior para P(e), sepuede ver que para mejorar el performance delsistema, se puede aumentar M', dmin, o Eb/No.Sin embargo, cuando se aumenta M', disminuyedmin, y disminuye E', dada la disminución de Eb.Esto en la practica es desalentador. Como unejemplo, si se compara un sistema no-codificado4-PSK y un modulador codificado 8-PSK conrazón de codificación 2/3. Ambos sistemastransmiten 2bit/sec/Hz. Si el sistema 4-PSKopera a P(e) = 10E-5, al mismo SNR, el 8-PSKexcederá 10E-2 debido al valor de dmindisminuido.

2.3.4 Particiones del conjunto.

Así, la manera correcta de mejorar elperformance del canal no es usar simplemente unalto-orden la constelación de la señales, encambio, la idea correcta viene de restringir lassecuencias transmitidas a un subconjunto de Omientras se incrementa M' a M, es decir, O'extendida a O. Este concepto es de significadocentral para un TCM, y se conoce como ParticiónFija. Dos ejemplos de partición de conjunto semuestran a continuación.

Fig. N°38. Partición de Conjunto de unaconstelación 8-PSK.

Fig. N°39. Partición de Conjunto de unacontelación 16-QAM

Con esta práctica, como se muestra en lasfiguras anteriores, se aumenta esencialmentedmin, la distancia mínima se llama dfree, que seobtiene de la ganancia de una distancia. Por otrolado, una pérdida de energía es asociada con unaumentó M'. El efecto total es un codificador conganancia asimtotica definido por:

EdEd

//

2min

2min=γ

En la implementación V.32, uncodificador con ganancia asimtótica de 4db seobtienen por el uso de un canal de códigoconvolucional propio.

2.3.5 Modulador TCM y la codificaciónconvolucional V.32.

Con la introducción de interdependenciasentre las señales y la expansión del conjuntoseñalado, se puede construir un modelo generalpara el sistema de Codificación ModulaciónTrellis. Un diagrama de un modelo semejante semuestra en figura a continuación.

Page 18: Codigo Trellis

Fundamentación del Código de Trellis

Comunicaciones de Datos 2001Prof.Merardo Retamal Encina

18

Fig. N°40. Modulador/Codificador UngerboeckTrellis

En este modelo, el x(n) a la salida almomento n no sólo depende de la entrada en lafuente a(n) en ese instante de tiempo, sinotambién de un número finito de fuentes de entradaprevios. Esto es lo que se conoce como un sistemafinito-memoria. Matemáticamente, estadependencia se expresa como:

x(n) = f(a(n),a(n-1),...,a(n-L))

Donde L es conocida como la memoriadel sistema.Definiendo la Variable de estado

s(n) = ( a(n-1), ... , a(n-L) ), entonces:x(n) = f(a(n), s(n))

Otra ecuación utilizada en este modelo esla ecuación que determina la variable de estado enel próximo instante n+1. Que es:

s(n+1) = g(a(n), s(n))

Estas dos ecuaciones junto con elconcepto de la partición de conjunto, describentotalmente el funcionamiento de un modeloencoder TCM. Una familia muy importante deTCM, es la referida como códigos de Ungerboeck,se explica más adelante. La actual recomendaciónV.32 utiliza este tipo de código de TCM paralograr una tasa de 9600bps sobre dos-alambre conel módem de Banda Vocal full-duplex. El canalcodificando se da en la figura anteriror. Se utilizaun encoder convolucional con tasa de codificaciónm'/m'+1.

Como se muestra en la figura siguiente,el encoder convolucional m'+1 determina lasubconstelacion desde donde la señal transmitidaes escogida. Y los digitos m'-m no codificadosseleccionan el signo de esta subconstelation.

Fig. N°41. Constelación de una señal 32 para uncanal TCM V.32.

La señal del conjunto O el codificadorUngerboeck es 2(m’+1), esto resulta exitoso y elesquema TCM de hoy todavía sigue estaaproximación.

El Código TCM V.32 utiliza:

- m=4 símbolos de salida binarios, tiene unconjunto de señales 2(m+1)=32 vectores deseñales en la constelación (ver figura 6).

- Un encoder convolucional con m’=2entradas, m’+1=3 salidas, e implementadamemoria v=3. Este es un encoder no-lineal, elcódigo es invariante a una rotación de 90°mientras mantenga la misma ganancia decódigo de 4db. Ver la figura 7 para un detallede la implementación de un canal de códigoconvolucional.

Fig. N°42. Canal TCM para coded CCITT modem9.6kbps.

2.3.6 Decodificador TCM

Existen varios métodos populares paradescifrar códigos convolucionales. Entre ellos eldecodificador feedback, decodificador secuencial,decodificador del síndrome y decodificador deViterbi.

El decodificador Viterbi es usualmenteusado en la modulación de Trellis. Como seexplicó en una sección anterior el procedimientoinvolucra 2 pasos:

Page 19: Codigo Trellis

Fundamentación del Código de Trellis

Comunicaciones de Datos 2001Prof.Merardo Retamal Encina

19

- Basado en el diagrama de Trellis, computar ladistancia para cada una de las ramas que seconectan a cada estado en el diagrama;

- Evaluar el camino o distancia mínima.

Asumiendo que se quiere transmitir unasucesión de símbolos M-ario:

x = (x(0), x(1), ..., x(K-1))

Debido al ruido agregado durante latransmisión, se recibe:

y = (y(0), y(1), ..., y(K-1))

Ahora el demodulador decidirá unasucesión X, como la mejor estimación de lasecuencia transmitida X. Esto es hecho a travésdel cálculo de una probabilidad condicional, queescoge el x con el máximo P[y(t)|x]:

Para un canal AWGN (Canal con ruidoBlanco Gaussiano Adicionado), esto terminarácon el cálculo de una distancia asociada con y(t).no se da el detalle de este cálculo aquí.

En el próximo paso, se utiliza unaalgoritmo de Viterbi para encontrar el distanciamínimo, este paso se muestra a través de dosejemplos abajo (fue analizado detenidamente enuna sección anterior):

En la figura abajo, la distancia de ramaesta dada, el camino métrico parcial mostrado esacumulado desde el punto de la profundidad deTrellis, un paso más de Trellis dará un mínimo de-2.0, para que el camino de fondo sea el caminodel sobreviviente o el más adecuado.

Fig. N°43. Decodificador TCM para un pasoúnico de Trellis.

En este segundo ejemplo , el Trellisoriginal se da a lo largo de todas las ramasmétricas. Desde el principio de el estado k=0hasta el final el estado k=4, el camino mínimo secierne fuera y se muestra al fondo.

Fig. N°44. Decodificador TCM.

3 Resultados

El resultado más relevante logrado con lacodificación Trellis es la ganancia de código quese obtiene frente a un esquema no codificado.Como ejemplo, se compara la codificación PAM4-aria con la codificación Trellis en la siguientetabla:

Numero deestados de

TrellisK

Ganancia depotencia

promedio (dB)4 3 3.318 4 3.7716 5 4.1832 6 4.5664 7 5.23

128 8 5.23256 9 5.83

4 Conclusiones

La codificación M-aria permite unincremento sustantivo en la capacidad del canalsin aumentar el ancho de banda, sin embargo enestos momentos la codificación Trellis es la quemás se acerca al límite establecido por la Ley deShannon, la cual está regida principalmente por larazón señal a ruido propia del canal.

Las constelaciones son también objeto deestudio con el fin de lograr cada vez mayoresdesempeños en el error para una razón señal aruido dada.

Page 20: Codigo Trellis

Fundamentación del Código de Trellis

Comunicaciones de Datos 2001Prof.Merardo Retamal Encina

20

La distancia Euclidiana es la mínimadistancia entre puntos pertenecientes a unaconstelación, la que cuando disminuye aumenta laprobabilidad de error ya que la constelación sehace más compleja y el receptor tiene más trabajopara ubicar el punto correcto.

La modulación con código de Trellislogra disminuir la probabilidad de errores en unatransmisión sin aumentar el ancho de banda delcanal, lo que la hace muy importante para canalesde ancho de banda limitado como el telefónico.

Al aumentar los estados de Trellis sedisminuye aún más la probabilidad de errores,esto con la desventaja de que se aumentaconsiderablemente la complejidad de ladecodificación, es decir, se necesitandecodificadores difíciles de implementar.

Existen otras técnicas de modulación quepermiten una disminución del error en latransmisión, pero Trellis es la más usada debido aque ésta permite la decodificación con lealgoritmo de Viterbi.

Se presentó una análisis del diagrama deTrellis, explicando la forma de obtención de estosdiagramas, para ello se hizo uso de los métodosgráficos normales como lo es el árbol del código,con el ejemplo analizado se comprobó la formade obtención del diagrama de Trellis. Los métodográficos son necesarios al evaluar código deTrellis, debido a que este es un códigoconvolucional que requiere memoria.

Para la decodificación de código Trellisse precisa encontrar o buscar un camino en eldiagrama de Trellis (o en el árbol del código) demanera tal de encontrar una secuencia de bits másprobable, de no haber errores en la transmisión,entonces la decodificación encontrará la secuenciaexacta transmitida.

La capacidad correctora de los códigosconvolucionales como Trellis se debe a que loscodificadores convolucionales añaden unaestructura a la secuencia de bits. Para ladecodificación en Trellis se utiliza el Algoritmodenominado Viterbi, este algoritmo se basa en elprincipio de la optimabilidad , lo que implica queel mejor camino a través del diagrama de Trellisque pasa por un determinado nodo,necesariamente incluye el mejor camino desde elprincipio del diagrama de Trellis hasta este nodo,

esto permite la eliminación de algunas posiblesrutas o caminos innecesarias. Por lo tanto elalgoritmo de Viterbi se procede mediante elcálculo reiterados de distancias, para distintosniveles, eligiéndose el de distancia más corta.

Como muestra de una aplicación decódigo Trellis se analizó el módem V.32 de 9.600bps, este módem utiliza un esquema codificadorTCM con una ganancia de 4dB; este código seutiliza para obtener una mayor inmunidad al ruidosobre una transmisión codificada en otros códigoso no-codificada. Debido a los procesoscombinados de decodificación y demodulación enel módem, el parámetro que regula el performancede la transmisión es la distancia Euclidiana Librey no la Distancia de Hamming Libre como en lossistemas tradicionales. La teoría de decisióninvolucrada es suave, es decir las señales recibidasse procesan antes de que la decisión se hagacuando los símbolos que se estén transmitiendocorrespondan.

La manera correcta de mejorar elperformance del canal, no es simplementeaumentar el orden de la constelación, si no másbien restringir las secuencias trasmitidas a unsubconjunto menor que el conjunto completomientras se incrementa los estados de laconstelación , este concepto se conoce comopartición fija; sin embargo un aumento de losestados de la constelación implica una pérdida deenergía. El código TCM V.32 utiliza m=4símbolos de salida binarios, tiene un conjunto deseñales 2(m+1)=32 vectores de señales en lacostelación ; también utiliza un encoder no-lineal(es decir que el código es invariante a unarotación de 90° mientras mantenga la mismaganancia de código de 4db) convolucional con 2entradas 3 salidas e implementada una memoriav=3.

Un modelo encoder TCM se describecompletamente haciendo uso de la variable deestado de un modelo de Modulacion/CodificaciónUngerboeck (que es una familia muy importantede TCM), tanto para el instante actual, como parael estado siguiente y de la salida en el instanteconsiderado; unido al concepto de partición deconjunto.

Page 21: Codigo Trellis

Fundamentación del Código de Trellis

Comunicaciones de Datos 2001Prof.Merardo Retamal Encina

21

5. Bibliografía

[Vit74] A. J. Viterbi and J. K. Omura, “TrellisEncoding of Memoryless Discrete-TimeSources with a Fidelity Criterion”, IEEETrans, on Inform. Theory, vol. IT-20, pp.325-332, May. 1974.

[Cal84] R. Calderbank and J. Mazo, “A NewDescription of Trellis Codes”, IEEETrans. On Inform. Theory, vol IT-30, pp.784-791, Nov. 1984.

[Mul84] M. Mulligan and S. Wilson, “AnImproved Algorithm for EvaluatingTrellis Phase Codes”, IEE Trans. OnInform, Theor, vol IT-30, pp. 846-851,Nov. 1984.

[Rod88] M. Roden, “Digital CommunicationSystems Design”, Prentice-Hall.

[Skl88] B. Sklar, “Digital Communications”,Prentice Hall.

http://www2.ing.puc.cl/~iee3552/Pagina del Curso de Comunicaciones Digitales deLa Facultad de Ingeniería de UniversidadCatólica, en los links de Apuntes relativos alcurso, se muestra información teórica en formatoPDF sobre distintos tipos de Codificacionesexistentes, entre ellas TCM. Ult. Visita 12-10-2001.

http://www.gr.ssr.upm.es/rcii/listatps.htmEste link muestra información breve sobre variostópicos en Telecomunicaciones, destacan para eltema del presente trabajo los siguientes temas:

§ Diagrama de Trellis§ Modulación codificada Trellis TCM

Ult. Visita 12-10-2001.

http://fiee.uni.edu.pe/publicaciones/TecniaEsp/10art/Este link expone una descripción de laSimulación e Implementación de un esquema deModulación Trellis-Coded y de un decodificadorde Viterbi en un DSP. Ult. Visita 12-10-2001.

http://ceres.ugr.es/~alumnos/alonso/p3.htmlEste Link abarca topicos de comunicacionescomo:

Codificación del Canal

Chequeo de Redundancia Cíclica (CRC)Códigos ConvolucionalesEntrelazado ("Interleaving")Codificación del Canal en GSMCRC en GSMCódigo convolucional en GSMProyección en una ráfaga físicaModulación Digital en GSMModulación GMSK ("Gaussian Minimum ShiftKeying")

En la sección de Códigos Convolucionales, sehace una descricpción del código de Trellis. Ult.Visita 12-10-2001.

http://www.isa.cie.uva.es/proyectos/codec/teoria4.htmlEsta página Analiza el tema de Códigos decodificación del canal, se detallan en forma brevevariados tipos de codificación, entre ellos Códigosde paridad, Códigos m entre n, Códigos de bloquelineales sistemáticos, Código de Hamming,Códigos cíclicos, Códigos de redundancia cíclica(CRC), Códigos convolucionales. Ult. Visita 12-10-2001.

http://www.sset.com/span/pdf/spsm4000.pdfEste link muestra las características de un modemDigital por satélite de velocidad VariableIDR/IBS, que trabaja con código de Trellis 8PSK.Ult. Visita 12-10-2001.

http://www.students.tut.fi/~best/sc/sc95/wernermodem.htmlEste link analiza el código Trellis. En particulardestacan algunas consideraciones de error a la quehace alusión el contenido de la página. Ult. Visita12-10-2001.

http://www.comm.utoronto.ca/~frank/nobots/papers/Trellis/abstract.htmlMuestra un paper realizado Frank R. Kschischangand Vladislav Sorokine del Departamento deIngeniería Eléctrica y Computacion de laUniversidad de Toronto Sobre el tema de“Estructura Trellis de Código de bloques”. Ult.Visita 12-10-2001.

http://www.ece.wpi.edu/courses/ee535/hwk96/hwk4cd96/li/li.htmlEste link analiza La modulación del código Trellisaplicado a la norma V.32. Ult. Visita 12-10-2001.

Page 22: Codigo Trellis

Fundamentación del Código de Trellis

Comunicaciones de Datos 2001Prof.Merardo Retamal Encina

22

http://www.ece.wpi.edu/courses/ee535/hwk97/hwk3cd97/bad/theory.htmlEste link analiza la teoría del Código de Trellis, deforma descriptiva y matemática. Ult. Visita 12-10-2001.

http://galaxy.ucsd.edu/welcome.htmEn este link se puede encontrar índices deTransaccion IEEE de diversos tópicosrelacionados con ingeniería Eléctrica. Ult. Visita12-10-2001.