TEMA 5 TÉCNICAS DE PROTECCIÓN FRENTE A ERRORES (CÓDIGOS CONVOLUCIONALES) MMC (UC3M) Comunicaciones Digitales Codificación de Canal / 7 Códigos convolucionales Introducción de la redundancia mediante filtrado Introducción de memoria Tasa R = k/n: Banco de filtros con k entradas n salidas B () [l] D D D C () [l] C () [l] Notación: Entradas: B (i) [l], con i =,,, k Salidas: C (j) [l], con j =,,, n MMC (UC3M) Comunicaciones Digitales Codificación de Canal / 7
Representaciones Esquemática B () [l] D D D C () [l] C () [l] Relación entrada salidas C () [l] =B () [l]+b () [l ]+B () [l 3] C () [l] =B () [l]+b () [l ]+B () [l ]+B () [l 3] Notación mediante polinomios en D B (i) (D) = l B (i) [l] D l Propiedad B (i) [l d] B (i) (D) D d MMC (UC3M) Comunicaciones Digitales Codificación de Canal 3 / 7 Representaciones (II) Notación mediante polinomios en D C () (D) =B () (D) { + D + D 3} C () (D) =B () (D) { + D + D + D 3} Notación matricial (polinomios): C(D) n = B(D) k G(D) k n Matriz generadora de tamaño k n Elemento fila i columna j: contribución a la salida j-ésima de la entrada i-ésima Ejemplos Ejemplo anterior (A): k =, n = G(D) = [ + D + D 3, + D + D + D 3] Otro ejemplo (B): k =, G(D) = [ + D D D D D ] 3 MMC (UC3M) Comunicaciones Digitales Codificación de Canal 4 / 7
Paso a representación esqumática - Ejemplo B G(D) = [ + D D D D D ] 3 Número de entradas: k = Número de salidas: n = 3 B () [l] B () [l] D D C () [l] C () [l] C () [l] MMC (UC3M) Comunicaciones Digitales Codificación de Canal 5 / 7 Parámetros de interés Memoria total del código: M t Número total de unidades de retardo (memorias) M t = k i= M (i) Memoria de la entrada i-ésima: M (i) = máx grado(g i,j (D)) j Longitud de restricción: K Máxima longitud de la respuesta al impulso del codificador (máximo número de instantes de tiempo en los que un bit afecta a la salida del codificador) K = + máx i,j grado(g i,j (D)) En general las prestaciones aumentan con K MMC (UC3M) Comunicaciones Digitales Codificación de Canal 6 / 7
Códigos sistemáticos Matriz de generación G(D) = [I k P(D)] Las entradas se copian en algunas de las salidas Ejemplo (C) G(D) = [, + D + D ] C () [l] B () [l] D D C () [l] MMC (UC3M) Comunicaciones Digitales Codificación de Canal 7 / 7 Diagrama de rejilla Definición del estado Contenido de las memorias del codificador ψ[l] = [B () [l ],, B () [l M () ],, B (k ) [l ],, B (k ) [l M (k ) ]] Etiquetado de la rejilla Bits a la entrada del codificador Bits a la salida del codificador B () [l], B () [l], B (k ) [l] C() [l], C () [l], C (n ) [l] MMC (UC3M) Comunicaciones Digitales Codificación de Canal 8 / 7
Ejemplo - Convolucional D Estado: ψ[l] = [ B () [l ], B () [l ] ] Estados: =[, ], ψ =[, ], ψ =[, ], =[, ] B () [l] D D C () [l] C () [l] ψ ψ ψ[n] ψ[n + ] MMC (UC3M) Comunicaciones Digitales Codificación de Canal 9 / 7 Ejemplo - Convolucional E Estado: ψ[l] = [ B () [l ], B () [l ] ] Estados: =[, ], ψ =[, ], ψ =[, ], =[, ] B () [l] D D C () [l] C () [l] ψ ψ ψ[n] ψ[n + ] MMC (UC3M) Comunicaciones Digitales Codificación de Canal / 7
Secuencia de bits - Camino a través de la rejilla Secuencia de datos: B () [l] = [] Estado inicial: (Se fija con el envío de una cabecera de bits) ψ ψ ψ[] ψ[] ψ[] ψ[3] ψ[4] ψ[5] Secuencia codificada: C[k] = [ ] MMC (UC3M) Comunicaciones Digitales Codificación de Canal / 7 Decodificación - Algoritmo de Viterbi Recuperación de la secuencia más verosímil Estados inicial/final Cabecera de referencia (habitualmente ceros bit flushing ) Salida dura: observación de bits decididos Secuencia con el menor número de bits codificados distintos a la observación Métrica de rama: distancia de Hamming con la observación Salida dura: observación de q[n] Secuencia cuyos símbolos asociados están a la menor distancia euclídea de la observación Métrica de rama: q[n] A[n] Hay que tener en cuenta la constelación que se utiliza para hacer la conversión de las etiquetas de la rejilla básica a símbolos de la constelación (A[n]) Mejores prestaciones que con salida blanda MMC (UC3M) Comunicaciones Digitales Codificación de Canal / 7
Métricas de rama - Salida dura Secuencia recibida: R[k] =[ ] ψ ψ ψ[n] ψ[n + ] ψ ψ ψ[] ψ[] ψ[] ψ[3] ψ[4] ψ[5] MMC (UC3M) Comunicaciones Digitales Codificación de Canal 3 / 7 Métricas acumuladas en cada estado (Viterbi) ψ[] ψ[] ψ[3] ψ[4] ψ[5] /3 3/4 3/ ψ /5 3/4 / ψ 3 3/4 /5 4/3 3 3/4 /3 4/3 Si no hay errores: camino con métrica acumulada nula MMC (UC3M) Comunicaciones Digitales Codificación de Canal 4 / 7
Métricas de rama - Salida blanda [ ][ Secuencia recibida: q[n] =,,9,,8 ][,75,6 ][,, ][ ],7, ψ ψ, 3,6 3,6 8, 4,4, ψ ψ 4,4 ψ[n] ψ[n + ] 3,5,5,5 4,45 7,65 3,5 7,65,6,, 3, 5,6,6 5,6 ψ[] 8, ψ[] 4,45 ψ[] 3, ψ[3],5 ψ[4] 4,93 ψ[5] + 9,5 4,85 4,85,5 4,45 9,5 4,45 +,93 7,73 7,73 4,93,3,93,3 MMC (UC3M) Comunicaciones Digitales Codificación de Canal 5 / 7 Métricas acumuladas en cada estado (Viterbi) ψ[] ψ[] ψ[3] ψ[4] ψ[5],7 5,69/,49,4/5,74,7/8,7 ψ 7,67,9/6,89,54/5,34 7,87/,47 ψ,,7,89/5,9,34/9,54 5,47/,47 8,,47,9/5,69 9,54/,34 3,47/4,47 MMC (UC3M) Comunicaciones Digitales Codificación de Canal 6 / 7
Prestaciones Salida dura Pe c n z i=t ( ) n z ε i ( ε) n z i i D H min :mínima distancia de Hamming entre salidas para secuencias distintas z: longitud del evento erróneo de distancia mínima t = D H min (capacidad de corrección sobre n z bits) ε: probabilidad de error de bit del sistema (BER) Salida blanda ( ) D e min P e c Q N / D e min :mínima distancia euclídea entre salidas para secuencias distintas MMC (UC3M) Comunicaciones Digitales Codificación de Canal 7 / 7 Calculo de D H min Comparación con la secuencia de todo ceros ψ ψ ψ ψ[n] ψ[n + ] 3 3 4 4 D H min = 5 ψ 3 z = 3 5 MMC (UC3M) Comunicaciones Digitales Codificación de Canal 8 / 7
TEMA 5 TÉCNICAS DE PROTECCIÓN FRENTE A ERRORES (CÓDIGOS DE REJILLA (TCM)) MMC (UC3M) Comunicaciones Digitales Codificación de Canal 9 / 7 Códigos de rejilla Conocidos también como códigos TCM Trellis Coded Modulation Diseño conjunto de códigos convolucionales y del codificador del transmisor Uso eficiente del ancho de banda de un canal La redundancia se introduce aumentando el orden de la constelación Orden de la constelación acorde al tamaño de la salida codificada Posibilidad de tasas relativamente altas mediante las transiciones paralelo MMC (UC3M) Comunicaciones Digitales Codificación de Canal / 7
Códigos de rejilla - Definiciones k p n p Constelación k np Convolucional k np, n np n np n = n p + n np bits/símbolo k entradas k p transiciones paralelo (sin proteger) k np transiciones no paralelo (protegidas) n salidas n p = k p transiciones paralelo (sin proteger) n np transiciones no paralelo (protegidas) Constelación: n símbolos (n = n p + n np bits/símbolo) MMC (UC3M) Comunicaciones Digitales Codificación de Canal / 7 Códigos de rejilla - Asignación de bits Reglas de diseño: reglas de Ungerboeck Asignación para minimizar la probabilidad de error División de la constelación + asignación de bits División de la constelación en subconstelaciones División sucesiva aumentando la distancia mínima Símbolos por subconstelación: n p Número de subconstelaciones: n np Asignación de bits Transiciones paralelo: selección de un símbolo dentro de la subconstelación Protección física sobre la constelación (Gray) Transiciones no paralelo: selección de una subconstelación Protección mediante código convolucional Máxima distancia: ramas que salen de o llegan a un mismo estado Equiprobabilidad en la asignación de símbolos MMC (UC3M) Comunicaciones Digitales Codificación de Canal / 7
Ejemplo: k p =, k np =, n np =, 8-PSK Código de tasa /3 Una transición en paralelo Convolucional de tasa / (Convolucional Ejemplo D) Convolucional / Constelación 3 bits/símbolo ψ ψ Constelación con 3 bits por símbolo: 8 símbolos 8-PSK ψ[n] ψ[n + ] MMC (UC3M) Comunicaciones Digitales Codificación de Canal 3 / 7 Ejemplo: División de la constelación B B C C C C 3 MMC (UC3M) Comunicaciones Digitales Codificación de Canal 4 / 7
Ejemplo: Asignación de las transiciones no paralelo C ψ C 3 C ψ C C 3 C C C ψ[n] ψ[n + ] MMC (UC3M) Comunicaciones Digitales Codificación de Canal 5 / 7 Asignación (convolucional D) ψ ψ ψ ψ C C 3 C 3 C C C C ψ[n] ψ[n + ] C ψ[n] ψ[n + ] MMC (UC3M) Comunicaciones Digitales Codificación de Canal 6 / 7
Prestaciones Distancia mínima del código - La mínima de: Distancia mínima paralelo Ejemplo anterior (constelación normalizada): d p = Mínima distancia entre puntos de las subconstelaciones Distancia mínima no paralelo Distancia del convolucional medida sobre las subconstelaciones Ejemplo anterior d np = d (C, C )+d (C, C )+d (C, C )=,4 Ganancia de codificación Comparación con la constelación equivalente sin codificar (misma velocidad de transmisión efectiva) Ejemplo anterior: 4-PSK G = ESC b Eb TCM ( d TCM min ) ( d SC min ) = (3 db) MMC (UC3M) Comunicaciones Digitales Codificación de Canal 7 / 7