codificación de canal

27
Comunicaciones Digitales Codificación de Canal Codificación de Canal 10 10

Transcript of codificación de canal

Page 1: codificación de canal

Comunicaciones Digitales

Comunicaciones Digitales

Codificación de CanalCodificación de Canal1010

Page 2: codificación de canal

IntroducciónIntroducción

- Usualmente el objetivo es reducir PB o el requerimiento en la relación Eb/No.

Page 3: codificación de canal

IntroducciónIntroducción

Page 4: codificación de canal

Tipos de Codificación de CanalTipos de Codificación de Canal• CODIFICACIÓN DE LA FORMA DE ONDA:

- Se transforman las formas de onda en mejores formas de onda para que el proceso de detección sea menos propenso a errores.

• SECUENCIAS ESTRUCTURADAS

- Se transforman las secuencias de datos en mejores secuencias de datos mediante el uso de redundancia estructurada (bits redundantes).

• ¿Por qué usar codificación?

• Desempeño de error vs. ancho de banda

• Potencia vs. ancho de banda

• Tasa de datos vs. ancho de banda

• Capacidad vs. ancho de banda

Page 5: codificación de canal

Técnicas de Control de ErroresTécnicas de Control de Errores• DETECCIÓN DE ERROR Y RETRANSMISIÓN - ARQ (Automatic Repeat Request)

– Conexión Full-duplex, códigos de detección de errores.

– El receptor envía una señal al transmisor, indicando si se detectó o no errores en los datos recibidos (Not-Acknowledgement (NACK) y Acknowledgement (ACK), Respectivamente).

– El transmisor retransmite los datos si recibe un NACK.

• CORRECCIÓN – FEC (Forward Error Correction)

– Conexión Simplex, códigos correctores de error

– El receptor trata de corregir algunos errores

• ARQ HÍBRIDO (ARQ + FEC)

– Full-duplex, códigos de detección y corrección de errores

Page 6: codificación de canal

Técnicas de Control de ErroresTécnicas de Control de Errores

Page 7: codificación de canal

Petición de Retransmisión Petición de Retransmisión Automática (ARQ)Automática (ARQ)

• PARE Y ESPERE

– Requiere una conexión half-duplex.

– El transmisor espera por un reconocimiento de cada transmisión antes de continuar con la siguiente.

Page 8: codificación de canal

Petición de Retransmisión Petición de Retransmisión Automática (ARQ)Automática (ARQ)

• ARQ CONTINUO CON RETROCESO (pullback)

– Requiere una conexión full-duplex.

– El transmisor envía el mensaje con un número de secuencia y, a medida que los mensajes llegan el destino, el receptor envía los datos de reconocimiento (ACK y NACK) que deben hacer una referencia al Número de secuencia.

Page 9: codificación de canal

Petición de Retransmisión Petición de Retransmisión Automática (ARQ)Automática (ARQ)

• ARQ CONTINUO CON REPETICIÓN SELECTIVA

– Requiere una conexión full-duplex.

Page 10: codificación de canal

Modelos de CanalModelos de Canal•CANAL SIN MEMORIA DISCRETO (DMC)

– Se caracteriza por un alfabeto de entrada discreto, un alfabeto de salida discreto y un conjunto de probabilidades condicionales P(j | i).

•CANAL SIMÉTRICO BINARIO (BSC)

– Los alfabetos de entrada y salida consisten de los elementos binarios y las probabilidades condicionales son simétricas.

1)0|0()1|1()0|1(1|0 PPPP

•CANAL GAUSSIANO

– Es un ejemplo de una generalización de los canales DMC para alfabetos no discretos. El canal adiciona ruido a los símbolos. Tiene como entrada un alfabeto discreto y como salida un alfabeto continuo sobre el rango de (-∞ a + ∞)

Page 11: codificación de canal

Redundancia en la Codificación Redundancia en la Codificación de Canalde Canal

• RATA DE CÓDIGO Y REDUNDANCIA

Redundancia del código

Para implementar la codificación de canal, debe introducirse redundancia en los mensajes, lo cual implica tener un mayor ancho de banda de transmisión.

El uso de códigos de estos códigos también aumenta la complejidad del sistema.

k

kn )(

Rata de código n

k

Rata de datos del canal so R

k

nR

rata de bit de la fuentesR

Page 12: codificación de canal

Clasificación de Introducción Clasificación de Introducción de la Redundanciade la Redundancia

• CÓDIGOS CONVOLUCIONALES

– De forma continua a medida que llega la información al codificador.

• CÓDIGOS DE BLOQUE

– Asociada a bloques de información

Page 13: codificación de canal

Códigos de Bloque (n,k)Códigos de Bloque (n,k)– Los datos se dividen en bloques de k bits (k-tupla) y el codificador transforma cada uno

de estos bloques en un bloque más grande de n bits (palabra de código).

Page 14: codificación de canal

Códigos de Bloque (n,k)Códigos de Bloque (n,k)

– Los bits codificados se modulan y envían por el canal.

– El proceso inverso se ejecuta en el receptor.

Page 15: codificación de canal

Códigos de Chequeo de Códigos de Chequeo de ParidadParidad

•CÓDIGO DE COMPROBACIÓN DE PARIDAD SIMPLE

– Se construye agregando un solo bit de paridad a un bloque de bits de datos.

– El bit asume el valor de 1 ó 0 según se necesite para asegurar que la suma (módulo 2) de todos los bits en la palabra de código sea par o impar.

– Ejemplo:k-tuplas: 0 1 0 1 0 0 0 1 1 1n-tuplas: 0 0 1 0 1 0 1 0 0 1 1 1

– Propiedades:

• Rata de código: k/(k+1)

• No puede corregir errores

• Sólo puede detectar un número impar de bits en error

k-tupla: 0 1 0 1 0n-tupla: 0 0 1 0 1 01 error: 1 0 1 0 1 02 errores: 1 1 1 0 1 03 errores: 1 1 0 0 1 04 errores: 1 1 0 1 1 0

Page 16: codificación de canal

Códigos de Chequeo de Códigos de Chequeo de ParidadParidad

•CÓDIGO RECTANGULAR

– Se forma un rectángulo de M filas y N columnas con los bits de mensaje y se agrega un bit de comprobación de paridad por cada fila y uno por cada columna.

1 1 0 1 0 11 0 0 0 0 10 1 1 0 0 00 0 0 0 1 11 1 0 0 1 11 1 1 1 0 0

Page 17: codificación de canal

Códigos de Bloque LinealCódigos de Bloque Lineal

Page 18: codificación de canal

Modelo de CanalModelo de Canal•CANAL SIMÉTRICO BINARIO (BSC)

Page 19: codificación de canal

Capacidad Correctora y Capacidad Correctora y Detectora de un CódigoDetectora de un Código

Page 20: codificación de canal

Redundancia y Probabilidad de Redundancia y Probabilidad de Error ResidualError Residual

Page 21: codificación de canal

Códigos de HammingCódigos de Hamming– Los códigos Hamming son una subclase de los códigos de bloque lineal y pertenecen a

la categoría de los códigos perfectos

– Se expresan como una función de un entero m>=2

Page 22: codificación de canal

Códigos (7,4) de HammingCódigos (7,4) de Hamming– Hoy el código de Hamming se refiere al (7,4) que Hamming introdujo en 1950.

– El código de Hamming agrega tres bits adicionales de comprobación por cada cuatro bits de datos del mensaje.

– El algoritmo de Hamming (7,4) puede corregir cualquier error de un solo bit, pero cuando hay errores en más de un bit, la palabra transmitida se confunde con otra con error en un sólo bit, siendo corregida, pero de forma incorrecta, es decir que la palabra que se corrige es otra distinta a la original, y el mensaje final será incorrecto sin saberlo.

– Los tres bits de comprobación se ubican en las posiciones de la palabra a transmitir que correspondan a potencias de dos, es decir, las posiciones 1, 2, 4, 8,…

– Los bits de información serán los restantes:

Page 23: codificación de canal

Códigos (7,4) de HammingCódigos (7,4) de Hamming– Para el cálculo de cada uno de los bits de paridad, se verifican los bits ubicados en

posiciones específicas.

– El cálculo será así:– Para el bit de paridad 1:

– Para el bit de paridad 1:

Page 24: codificación de canal

Códigos (7,4) de HammingCódigos (7,4) de Hamming– Para el cálculo de cada uno de los bits de paridad, se verifican los bits ubicados en

posiciones específicas.

– El cálculo será así:– Para el bit de paridad 4:

– Para el bit de paridad 8:

Page 25: codificación de canal

Códigos (7,4) de HammingCódigos (7,4) de HammingEJERCICIO

– Consideremos la palabra de datos de 7 bits "01101011".

Page 26: codificación de canal

Códigos (7,4) de HammingCódigos (7,4) de HammingEJERCICIO

– Consideremos ahora que el bit de la derecha, por error, cambia de 1 a 0.

– El paso final es evaluar los bits de paridad:

– Es decir el error está en la posición 12 que corresponde al bit b7

Page 27: codificación de canal

Pb vs SNR para codificaciónPb vs SNR para codificación