Índice

Autora: Sofía Martín González
Departamento de Señales y Comunicaciones - ULPGC

1. INTRODUCCIÓN
2. TIPOS DE CONTROL DE ERRORES (ARQ y FEC)
3. TÉCNICAS ARQ: SOLICITUD DE REPETICIÓN AUTOMÁTICA
4. TÉCNICAS FEC: CODIFICACIÓN PARA LA DETECCIÓN Y
CORRECCIÓN DE ERRORES
4.1 Codificación de bloques
4.1.1 Códigos cíclicos
4.2 Codificación convolucional (no lo daremos en Audio Digital)
4.3 Entrelazado y códigos concatenados
4.4 Aplicaciones prácticas

Técnicas de control de errores

2.Tipos de control de errores

HOOLLA!!
AUTOMATIC
REPEAT
REQUEST
¿QUÉ?

HOOLLA!!
FORWARD
ERROR
CONTROL

Técnicas de control de errores

2. Tipos de control de errores

Errores
Emisor Receptor
Mensaje
Error detectado
ARQ Petición de retransmisión

Retransmisión del mensaje

Emisor Errores Receptor
FEC
Mensaje
...
Error detectado Error corregido

Técnicas de control de errores

Técnicas ARQ a) ARQ de parada Transmisor 1 2 3 4 5 y espera Transmisión … ACK ACK ACK ACK Receptor 1 2 3 4 5 Transmisor 1 2 3 4 5 6 7 8 4 5 6 7 8 b) ARQ continuo … Transmisión con vuelta atrás Receptor 1 2 3 44 5 6 7 8 4 5 6 7 8 ACK NACK c) ARQ continuo Transmisor 1 2 3 4 5 6 7 8 4 9 10 11 12 con repetición Transmisión … selectiva Receptor 1 2 3 44 5 6 7 8 4 9 10 11 12 ACK NACK Técnicas de control de errores . 3.

3. Técnicas ARQ • Bit de paridad Bit de paridad 1 0 1 1 0 1 0 0 Paridad par 1 0 1 0 0 1 0 1 Paridad par 1 0 1 1 0 1 0 1 Paridad impar Técnicas de control de errores .

Técnicas FEC Forward Error Correction (FEC) • Codificación de bloques (Codificador sin memoria) 0110001 0001011 1001011 010010110100 000010110101 101101000010 • Codificación convolucional (Codificador con memoria) 1001011010001 1011010000100011010 Técnicas de control de errores . 4.

Técnicas FEC Información Bits de la fuente CAD analógica M Información de Codificador U Modulador Transmisor caracteres de caracteres X Información digital Canal Información D analógica DAC E M Información de Decodificador U Receptor Demodulador caracteres de caracteres X Infromación digital Bits de la fuente Bits codificados Fuente de Codificador Modulador Transmisor información de canal Canal Destino de Decodificador Demodulador Receptor información de canal Técnicas de control de errores . 4.

1 Codificación de bloques A) Conceptos generales B) Estructura algebraica de los códigos de bloque – Matriz generadora – Matriz para la comprobación de la paridad – Detección y corrección de errores: Síndrome Técnicas de control de errores . 4.

k) Ej: Tasa de código = 1/2 •Tasa del código: R = k / n Redundancia del 100% •Redundancia del código: ( n .k ) / k Ancho de banda: Doble •Incremento del ancho de banda Técnicas de control de errores . 4.1 Codificación de bloques 0110001 Bloques de k bits 0001011 1001011 010010110100 Bloques 000010110101 de n bits 101101000010 n>k •Código (n.

4.1 Codificación de bloques Datos + Mensaje ≡ Palabra del código Redundancia Conjunto de palabras del Código código Técnicas de control de errores .

1 Codificación de bloques k bits ⇒ n bits ⇒ 2k secuencias distintas 2n secuencias distintas 3 bits ⇒ 8 secuencias distintas 4 bits ⇒ 16 secuencias distintas Técnicas de control de errores . 4.

Ej: 000 y 111 → d = 3 Ej: 010 y 011 → d = 1 Aplicación de este concepto a los códigos de bloques: Información Palabra código 000 0000 001 0011 010 0101 Distancia mínima (dmin): 011 0110 100 1001 dmin = 2 101 1010 110 1100 111 1111 Técnicas de control de errores . 4.1 Codificación de bloques Distancia Hamming (d): Nº de posiciones en las que dos palabras difieren.

Técnicas de control de errores .1 Codificación de bloques Código con distancia mínima dmin = 3: 1 1 1 CAPACIDAD DE DETECCIÓN O CORRECCIÓN DE ERRORES EN FUNCIÓN DE LA DISTANCIA MÍNIMA DEL CÓDIGO: • Detección de hasta dmin .2) / 2 errores. si dmin es impar. si dmin es par. 4.1 errores. • Corrección de (dmin . • Corrección de (dmin .1) / 2 errores.

92).up .salida lineal: • Dos palabras de código sumadas en aritmética módulo dos dan como resultado otra palabra del código. problema) • Generación de la salida a partir de la entrada.1 Codificación de bloques ESTRUCTURA ALGEBRAICA DE LOS CÓDIGOS DE BLOQUES: ¿Cómo hacemos la asignación entrada . • El vector todos ceros forma parte del código.salida ? • Mediante una look .) Suma módulo 2 ≡ OR-exclusiva Multiplicación módulo 2 ≡ AND 0+0=0 0x0=0 Recordatorio 0+1=1 0x1=0 1+0=1 1x0=0 1+1=0 1x1=1 Técnicas de control de errores .table. 4.(Código (127.(Matriz generadora) (Relación entrada .

[P ] Matriz [ k x (n .1 Codificación de bloques MATRIZ GENERADORA: código lineal (n. [G ] = [P M I k ] [I ] Matriz identidad [ k x k ] . [G ] Matriz [ k x n ] generadora. 4. k Técnicas de control de errores . v Vector [ 1 x n ] que representa la palabra del código.k) ] que contiene los coeficientes de paridad.k) Códigos sistemáticos: c1 c2 … cm u1 u2 … uk m bits redundantes k bits de información u v = u[G ] Vector [ 1 x k ] que representa la información.

1111 1111111 Técnicas de control de errores . 1011 1001011 • Contiene el vector todo ceros. 4): 0000 0000000 0001 1010001 1 1 0 1 0 0 0 0010 1110010 0 1 1 0 1 0 0 0011 0100011 [G ] =   0100 0110100 1 1 1 0 0 1 0 0101 1100101   1 0 1 0 0 0 1 0110 1000110 0111 0010111 1000 1101000 1001 0111001 Observaciones : 1010 0011010 • Código sistemático.1 Codificación de bloques EJEMPLO DE GENERACIÓN DE Información Palabra código CÓDIGO DE BLOQUES LINEAL (7. 1110 0101110 • Bits de paridad. 1100 1011100 • La suma de dos vectores cualesquiera Código lineal 1101 0001101 también pertenece al código. 4.

dmin = 3 Técnicas de control de errores .1 Codificación de bloques EJEMPLO DE GENERACIÓN DE CÓDIGO DE BLOQUES LINEAL (7. y ) = W ( x + y ) 0011 0100011 0100 0110100 0101 1100101 Distancia entre dos palabras = Peso de su suma (OR-exclusiva) 0110 1000110 0111 0010111 La suma de dos palabras del código es otra palabra válida 1000 1101000 1001 0111001 ⇒ Distancia mínima = 1010 0011010 1011 1001011 1100 1011100 Mínimo peso de entre todas las 1101 0001101 1110 0101110 palabras distintas de la de todo 1111 1111111 ceros. 4. 4): Información Palabra código 0000 0000000 0001 1010001 ¿Cuál es la distancia mínima de este código ? 0010 1110010 + D ( x.

.   P  [G ] Matriz [ k x n ] generadora. [H ] = 0 1 0 1 1 1 0 [H ]T  = 1 1 0  1 1 0 1 0 0 0 0 1 1 0 0 0 1 0 1 1 1    1 1 0 1 0 0 1 1 1 [G ] =   1 1 1 1 0 0 1 0  0 1   1 0 1 0 0 0 1 Técnicas de control de errores .1 Codificación de bloques MATRIZ PARA LA COMPROBACIÓN DE LA PARIDAD:  I n−k  [G ] = [P M I ] k [H ] = [I n −k MP T ] [H ] T =  . 4. [I ] Matriz identidad [ k x k ] .k) ] que 0  1 0 contiene los coeficientes de 1 0 0 1 0 1 1  0 0 1 paridad.. k 1 0 0 [P ] Matriz [ k x (n .

1 Codificación de bloques MATRIZ PARA LA COMPROBACIÓN DE LA PARIDAD: 1 0 0   0 1 0 0 0 1 v[H ] = 0 [1 0 0 1 0 1 1] 1  T 1 0 = [0 0 0] 0 1 1   1 1 1 1 0 1   Matriz Vector del mensaje Vector del código generadora G Matriz para la Vector del código Vector todo ceros comprobación de la paridad H Técnicas de control de errores . 4.

4.1 Codificación de bloques DETECCIÓN Y CORRECCIÓN DE ERRORES: SÍNDROME Vector error: [e ] = [0 0 0 1 0 0 0 ] v [H ] = 0 T [r ][H ] = [v + e ][H ] T T = v[H ] + e[H ] = e[H ] T T T 1 0 0 1 0 0 0 1 0 0 1 0   0 0 1 0 0 1 [1 0 0 0 0 1 1] 1  1 0 = [1 1 0 ] ≡ [0 0 0 1 0 0 0] 1  1 0 = [1 1 0] 0 1 1 0 1 1     1 1 1 1 1 1 1 0 1 1 0 1   Técnicas de control de errores .

1 Códigos cíclicos CÓDIGOS CÍCLICOS: Subclase importante dentro de los códigos de bloques lineales. Características: * Un desplazamiento cíclico de una palabra del código da como resultado otra palabra del código. v1 .1. v1 . K. v n− 2 ] * Pueden ser implementados fácilmente con registros de desplazamiento con realimentación.K. vn −1 ] V (1) = [vn −1 . * El cálculo del síndrome también puede ser realizado fácilmente con registros de desplazamiento. Técnicas de control de errores . v 2 . 0100111 1010011 Desplazamiento cíclico a la derecha V = [v0 . 4. v 0 . v2 .

g0 y gn-k = 1 V (X ) Polinomio de grado n .1. 4.1 ó inferior V ( X ) = u( X ) ⋅ g ( X ) u( X ) Polinomio de los diferentes mensajes originales Técnicas de control de errores .1 Códigos cíclicos VECTOR: [1 0 1 1 1 0 1] POLINOMIO: 1× X 0 + 0 × X 1 + 1 × X 2 + 1 × X 3 + 1 × X 4 + 0 × X 5 + 1 × X 6 = =1+ X 2 + X 3 + X 4 + X 6 POLINOMIO GENERADOR: g ( X ) = g 0 + g1 X + g 2 X 2 + L + g n − k X n − k .

1. 4. 4 ) V ( X ) = u ( X ) ⋅ g ( X ) = ( X + X 3 ) ⋅ (1 + X + X 3 ) = = X + X2 +X4 +X3+X4+ X6 = v = [0111001] = X + X2 +X3+X6 Técnicas de control de errores .1 Códigos cíclicos [0101] MENSAJE u ( X ) = u0 + u1 X + u 2 X 2 + L + uk −1 X k −1 ORIGINAL (k = 4): u( X ) = X + X 3 [1101] POLINOMIO GENERADOR g ( X ) = g 0 + g1 X + g 2 X 2 + L + g n − k X n − k (n .k = 3): g(X ) = 1+ X + X 3 Código cíclico ( 7 .

Canal Rx. V ( X ) = u( X ) ⋅ g ( X ) Z ( X ) = V ( X ) + e( X ) ¿ Z (X ) ? Resto = 0 ⇒ No hay error g(X ) Resto ≠ 0 ⇒ Hay error Z ( X ) = q( X ) ⋅ g ( X ) + S ( X ) Síndrome Técnicas de control de errores .1. 4.1 Códigos cíclicos DETECCIÓN Y CORRECCIÓN DE ERRORES: Tx.

2 dB Eb / N0 (dB) Técnicas de control de errores .12) Ganancia de codificación = 2.4.1 Codificación de bloques Sistema ideal de BPSK sin Shannon con codificación codificación Probabilidad de error de bit.33 dB BPSK con codificación Golay (23.15 dB Ganancia de codificación ideal = 11. P B Ganancia de codificación = 1.

4.26). t = 1 Probabilidad de error de bit.64). P B Hamming (31.4).12).1 Codificación de bloques Sin codificar Hamming (7. t = 15 BCH (127.11). t = 1 Golay extendido (24. t = 10 Eb / N0 (dB) Técnicas de control de errores . t = 1 Hamming (15. t = 3 BCH (127.36).

4.3 Entrelazado y códigos concatenados ENTRELAZADO (Interleaving): Convertir ráfagas de errores en errores aleatorios A B C D A1 A2 A3 A4 B1 B2 B3 B4 C1 C2 C3 C4 D1 D2 D3 D4 1 2 3 4 A1 B1 C1 D1 A2 B2 C2 D2 A3 B3 C3 D3 A4 B4 C4 D4 X X X X ← Ráfaga de errores Técnicas de control de errores .

3 Entrelazado y códigos concatenados ENTRELAZADO POR BLOQUES: Desde el codificador 1 5 9 13 17 21 Al modulador 2 6 10 14 18 22 3 7 11 15 19 23 4 8 12 16 20 24 Técnicas de control de errores .4.

2J . decodificador . Al Canal codificador .3 Entrelazado y códigos concatenados ENTRELAZADO CONVOLUCIONAL: (N – 1)J J (N – 2)J . . 2J (N – 2)J J (N – 1)J Sistema que realiza el entrelazado Sistema que realiza el proceso contrario al entrelazado Técnicas de control de errores .4. Del .

3 Entrelazado y códigos concatenados Desde el Al ENTRELAZADO codificador Conmutadores decodificador CONVOLUCIONAL: 1 1 1 x Ejemplo 2 2 x x 3 3 x x 4 4 x x 5 5 5 1 x 6 6 2 2 x 7 7 3 x x 8 8 4 x x 9 9 9 5 1 x 10 10 6 6 2 x 11 11 7 3 x 3 12 12 8 4 x x 13 13 13 9 5 1 14 14 10 10 6 2 15 15 11 7 7 3 16 16 12 8 4 4 Técnicas de control de errores . 4.

4.Solomon Técnicas de control de errores .3 Entrelazado y códigos concatenados CÓDIGOS CONCATENADOS: Datos de Codificación Entrelazado Codificación Modulación entrada exterior interior Interferencia y Canal ruido Datos Decodificación Entrelazado-1 Decodificación Demodulación decodificados exterior interior Código interior: Código convolucional (decodificación de Viterbi) Asociación frecuente (P B = 10-5 con Eb / N0 = 2 – 2.5 dB) Código exterior: Código Reed .

4.4 Aplicaciones prácticas Ejemplo: Compact Disc (CD) Entrada del Entrelazado Codificación Entrelazado Codificación Entrelazado codificador C2 C1 Salida del codificador M Entrada del decodificador Salida del Entrelazado-1 Decodificación Entrelazado-1 Decodificación Entrelazado-1 decodificador C2 C1 CIRC (Cross – Interleave Reed – Solomon Code) Técnicas de control de errores .