Está en la página 1de 40

Universidad Nacional Tecnolgica de Lima Sur

Carrera Profesional de Ingeniera Electrnica y Telecomunicaciones

TELECOMUNICACIONES III
Clase 06
Cdigos de control de errores
Parte 2

Edgard Oporto
eoporto@untecs.edu.pe
Villa El Salvador, enero de 2017
Requisitos de las telecomunicaciones

Las telecomunicaciones deben ser:

a) Eficientes en el uso de recursos


- Espectro de frecuencias
- Potencia
- Costo

b) Seguras
No deben ser factible alterar (adrede) la
informacin transmitida

c) Confiable
- Sin errores por ruido
- Minimizacin de errores de bits
2
Errores de datos

a) Alteracin de los bits de informacin por el


ruido.

b) Depende de la relacin S/N en el canal de


transmisin.

3
Errores de datos

a) S/N del canal: BAJA O VARIABLE

Probabilidad de errores: Alta

SOLUCION: Emplear codificacin para


control de errores de alta efectividad

b) S/N del canal: ALTA O CONTROLABLE

Probabilidad de errores: Baja

Se puede emplear control de errores


simple.
4
Errores de datos

Tipos de errores

5
Codificacin para control de errores

Consiste en agregar bits adicionales a cada


unidad de informacin transmitida.

6
Codificacin para control de errores

El control de errores tiene dos objetivos:

a) Deteccin de errores

- Solo detecta errores, no corrige.


- Emplea algoritmos simples.
- Menor sobrecarga.
- Empleado cuando es posibles la
retransmisin (por ejemplo, Internet).
Implica retardos tolerables por los usuarios.
- Empleado con la estrategia ARQ.

ARQ: Automatic Repeat Request


(Solicitud automtica de reenvo)
7
Codificacin para control de errores

El control de errores tiene dos objetivos:

b) Correccin de errores

- Detecta y corrige errores de bits.


- Emplea algoritmos ms complejos.
- Mayor sobrecarga.
- Empleado cuando no es posibles la retransmisin
(por ejemplo, vdeo en vivo).
Implica retardos no tolerables por los usuarios.
- Empleado con la estrategia FEC.

FEC: Forward Error Correction


(Correccin automtica de errores)
8
Codificacin para control de errores

En general, podemos tener dos tipos de codificacin


o cdigos de control de errores:

9
Codificacin para control de errores

En general, podemos tener dos tipos de codificacin


o cdigos de control de errores:

10
Datos no codificados

a) No emplean redundancia.

La redundancia implica control de errores.

b) Si los datos transmitidos sufren alteracin en su


trayecto:

- Los errores de datos no son detectados


- Los datos errnes no son corregidos

c) Constan de una secuencia de unidades de


informacin transmitidas una tras otra.

Las unidades de informacin se suelen llamar:


PALABRAS DE DATOS, TRAMAS o PAQUETES 11
Palabra de dato

La informacin no codificada consta o se transmite


en unidades denominadas palabras de datos.

Dato Dato Dato Dato Dato

Palabra de datos

12
Palabra de cdigo

a) Se agregan bits adicionales a cada unidad de


informacin.
Palabra de dato

- Bits de control de errores o


- Bits de redundancia

Dato CTRL Dato CTRL Dato CTRL Dato CTRL

Palabra de cdigo

13
Palabra de cdigo

a) Se agregan bits adicionales a cada unidad de


informacin.

b) Estos bits adicionales permiten el control de


errores:

Deteccin y/o correccin

c) Aumenta la inmunidad al ruido

14
Tipos de cdigos para control de errores

Existen dos grandes grupos:

a) Cdigos convolucionales
- Son complejos
- Adecuados para canales ruidosos
- Alta capacidad de correccin de errores
- Corrige tomando en cuenta datos actuales y
datos previamente recibidos.

b) Cdigos de bloques
- Son ms simples
- Empleados en canales de bajo ruido
- Limitada capacidad de correccin de errores
- Corrige tomando en cuenta solo datos
actuales 15
Cdigos de bloques

Existen dos grandes grupos:

Codifica cada k bits de la palaba de datos a n bits en


la palabra de cdigo.

Es decir, se agregan (n-k) bits de control de errores.


Palabra de dato: k bits

- Bits de control: (n-k) bits

Dato CTRL Dato CTRL Dato CTRL Dato CTRL

Palabra de cdigo 16
Cdigos de bloques

Se denominan tambin:

Cdigos (n, k)

Transmiten k bits empleando n bits.

k<n

17
Cdigos de bloques

Cdigos vlidos e invlidos

Sea el cdigo de bloques (n, k):

Codificador
Dato para control de Cdigo
errores

k bits n bits

Datos posibles Cdigos posibles


2 2

Cada dato se transmite mediante un nico cdigo.


Luego:
Existen 2 2 palabras de cdigo no empleados para Tx

18
Cdigos de bloques

Cdigos vlidos e invlidos


Ejemplo

Sea: (n, k) = (8, 5)

Luego:
2 2 = 28 25 = 256 32 = 224

224 Palabras de cdigos no empleados durante Tx


32 Palabras de datos
256 Palabras de cdigos

19
Cdigos de bloques

Cdigos vlidos e invlidos


Sea el cdigo de bloques (n, k) = (3, 2)

Dato Cdigo transmitido Canal de Tx Cdigo recibido


Codificador
para control
de errores

0 0 0 0 0 0 0 0 CV
0 1 0 1 0 Ruido y perturbaciones 0 0 1 CI
1 0 1 0 0 0 1 0 CV
1 1 1 1 0 0 1 1 CI

Cada dato se transmite Los CV pueden alterarse


1 0 0 CV
mediante un nico Cdigos vlidos y convertirse en cdigos 1 0 1 CI
cdigo (CV) (CV) invlidos (CI)
1 1 0 CV
1 1 1 CI

Tx side Rx side
CI: Cdigo invlido
20
Cdigos de bloques

Cdigos vlidos e invlidos

Codificador
para control
Este bloque es un algoritmo que realiza
de errores la codificacin para control de errores.

a) Cada dato o palabra de dato tiene asociada o le


corresponde un cdigo o palabra de cdigo.

b) A estos cdigos se les llama cdigos vlidos (CV).

c) CV: Son palabras de cdigos asociados a palabras


de datos. Son transmitibles.

d) El ruido por el canal afecta a los CVs y los puede


convertir en CIs o en otros CVs. 21
Cdigos de bloques

Cdigos vlidos e invlidos


Rx side

- Mismo CV
Tx side
(Ruido no afect)

Cdigo
Canal de Tx - Otro CV
vlido
(Ruido afect)
Ruido y perturbaciones
- Un CI
(Ruido afect)

Los CIs nunca son El ruido puede hacer que lo


transmitidos, pero si
pueden ser recibidos en
que se transmite no sea
el lado receptor igual a lo que se reciba
22
Cdigos de bloques

Eficacia de un cdigo de bloques


Se caracteriza mediante dos parmetros:

a) Cantidad mxima de bits errneos que el


algoritmo de control de errores (o simplemente el
cdigo o cdigo de bloques) puede detectar en
cada palabra de cdigo recibida.

b) Cantidad mxima de bits errneos que el


algoritmo de control de errores (o simplemente el
cdigo o cdigo de bloques) puede corregir en
cada palabra de cdigo recibida.

23
Cdigos de bloques

Ejemplo
Sea el algoritmo de control de errores denominado
regla de mayora.
Consiste en repetir el dato a transmitir n veces.
La codificacin se
Dado (n, k) = (3, 1) realiza mediante
repeticin.
Dato Tx Cdigo Tx Cdigo recibido Bits errneos Cdigo corregido Dato recibido
000 0 000 0 La correccin se
001 1 000 0 realiza por la
010 1 000 0
regla de mayora.
011 2 111 1
0 000
100 1 000 0
Bits errneos:
101 2 111 1
110 2 111 1
0: Rx Ok, no errores
111 3 111 1 1: Detecta y corrige Ok
000 3 000 0 2: Detecta, no corrige
001 2 000 0 3: No detecta ni corrige
010 2 000 0 nada
011 1 111 1
1 111
100 2 000 0 Luego:
101 1 111 1
= 2
110 1 111 1
= 1 24
Cdigos de bloques

Ejemplo
Sea el algoritmo de control de errores denominado
regla de mayora.
= 2 Detecta hasta 2 bits errneos en las palabras de cdigo recibidas
= 1 Corrige hasta 1 bit errneo en las palabras de cdigo recibidas

No detecta, ni corrige, tres bits errneos.

Dato Tx Cdigo Tx Cdigo recibido Bits errneos Cdigo corregido Dato recibido Bits errneos:
000 0 000 0 0: Rx Ok, no errores
001 1 000 0 1: Detecta y corrige
010 1 000 0 2: Detecta, no corrige
0 000
011 2 111 1 3: No detecta, no corrige
100 1 000 0
101 2 111 1
110 2 111 1
111 3 111 1
000 3 000 0
001 2 000 0
010 2 000 0
011 1 111 1
1 111
100 2 000 0
101 1 111 1
110 1 111 1
25
Cdigos de bloques

Hipercubos y vectores de cdigo


Una palabra de cdigo de n bits se toma como
vector y se grfica en un espacio n dimensional.

Ejemplo 1
Sea (n, k) = (2, 1)
Las palabras de cdigo se forma mediante repeticin
doble:
2 = Total de vrtices = Total de cdigos
x y 2 = Total de cdigos vlidos
(0, 0) CV
(0, 1) CI
(1, 0) CI
(1, 1) CV
26
Cdigos de bloques

Hipercubos y vectores de cdigo


Ejemplo 2
Sea (n, k) = (1, 1)
Las palabras de cdigo se forma mediante repeticin
triple:

x y
(0, 0, 0) CV
(0, 0, 1) CI 2 = 23 = Total de vrtices = Total de cdigos
(0, 1, 0) CI 2 = 21= Total de cdigos vlidos
(0, 1, 1) CI Uno por cada palabra de datos

(1, 0, 0) CI 2 2 = 23 - 21 = Total de cdigos invlidos

(1, 0, 1) CI
(1, 1, 0) CI
(1, 1, 1) CV 27
Cdigos de bloques

Hipercubos y vectores de cdigo


Alrededor de cada cdigo VALIDO (A y B),
existen:

a) Cdigos invlidos ms prximos


b) Cdigos invlidos ms lejanos

En el lado Rx:
Los CIs ms prximos a un CV se asocian o
corrigen a ese CV.

Por ello, los CVs deben estar distantes entre s


para evitar ambigedad en la correccin.

28
Cdigos de bloques

Distancia de Hamming
Es un parmetro que:

a) Mide la separacin entre dos vrtices


del hipercubo.
b) Mide la separacin entre dos cdigos o
palabras de cdigo.
c) Es igual al nmero de bits distintos
entre dos palabras de cdigo.

Para el hipercubo mostrado (n, k) = (3, 1):

Distancia de Hamming entre A y B = d(A, B) = 3


d([0, 0, 0],[1, 0, 0]) = 1 Difieren en un bit
d([1, 0, 1],[1, 1, 0]) = 2 Difieren en dos bits

Cunto ms bits sean distintos entre dos vectores, la


29
separacin o distancia de Hamming entre ellos ser mayor.
Cdigos de bloques

Distancia de Hamming

Cj C j
Fuente
de Codificador CANAL Decodificador
datos

Tx side Rx side

C j y C j pueden ser distintos en 0, 1, 2, , n bits


El receptor asigna como cdigo vlido:
- El que sea ms parecido
- El que difiera en menos bits
- El que est ms prximo
(menor distancia de Hamming)

Las tres afirmaciones son equivalentes (ver diapositivas 24 y 25).


30
Cdigos de bloques

Esferas de Hamming
Alrededor de cada cdigo vlido se definen ESFERAS
de radio t tal que no se traslapen entre ellas.

Cada esfera contendr:


- Un cdigo vlido (como centro de la esfera)
- Cierta cantidad de cdigos invlidos prximos
Un CI de la esfera difiere hasta en t bits de su
cdigo vlido asociado.

En un sistema de telecomunicaciones, al recibirse


cdigos invlidos:
=> El Rx los asocia o corrige al CV de su esfera
correspondiente.
31
Cdigos de bloques

Esferas de Hamming
Ejemplo
Sea el cdigo (n, k) = (5, 1), de cinco repeticiones.
Se emplea un hipercubo de 5 dimensiones con 25 =
32 vrtices.
Solo existen dos cdigos vlidos:
00000 y 11111
La distancia de Hamming entre ambos es de 5.

La esfera alrededor de cada CV debe tener radio 2 para evitar traslape


con otra esfera.
Si el ruido altera 0, 1 o 2 bits => puede ser corregido.
Si tiene 4, se detecta; se corrige errneamente.
Si tiene 5, no se detecta ni corrige.
Si tiene 3, se detecta, no se corrige (indefinido, esta justo entre dos
esferas).

Cunto ms vrtices contenga la esfera: menor probabilidad de error y mayor sobrecarga.32


Cdigos de bloques

Deduccin de l y t
Extendemos el hipercubo, los desglosamos.

Ejemplo 1
Para el cdigo de bloques (2, 1)
Tx 00 11 Cdigos vlidos transmitidos

Canal Canal y ruido

Rx 00 01 11 Cdigos vlidos e invlidos recibidos


10

Cdigo vlido Tx sin error


Cdigo invlido Tx con error, de CV a CV distinto
Tx con error, de CV a CI 33
Cdigos de bloques

Deduccin de l y t
Ejemplo 1
Para el cdigo de bloques (2, 1)
Tx 00 11 Cdigos vlidos transmitidos

2 2
Canal 0 1 0 Canal y ruido
1

Rx 00 01 11 Cdigos vlidos e invlidos recibidos


10

De la grfica:
l = # bits errneos mximo que detecta = 1
t = # bits errneos mximo que corrige = 0
No detecta ni corrige errores de 2 bits
34
SE DETECTA ERROR AL RECIBIR UN CODIGO INVALIDO.
Cdigos de bloques

Deduccin de l y t
Ejemplo 2
Para el cdigo de bloques (3, 1)
Tx 000 111 Cdigos vlidos transmitidos

3 3
Canal 1 2 2 Canal y ruido
0 1 0

Rx 000 001 111 Cdigos vlidos e invlidos recibidos


110
010 101
100 011

De la grfica:
l = # bits errneos mximo que detecta = 2
t = # bits errneos mximo que corrige = 1
No detecta ni corrige errores de 3 bits
35
SE DETECTA ERROR AL RECIBIR UN CODIGO INVALIDO.
Cdigos de bloques

Deduccin de l y t
Ejemplo 2
Para el cdigo de bloques (3, 1)
Tx 000 111 Cdigos vlidos transmitidos

3 3
Canal 1 2 2 Canal y ruido
0 1 0

Rx 000 001 111 Cdigos vlidos e invlidos recibidos


110
010 101
d=1 100 011 d=1
d=2
d=3 d: distancia de Hamming
d=2

De la grfica:
l = # bits errneos mximo que detecta = 2
t = # bits errneos mximo que corrige = 1
No detecta ni corrige errores de 3 bits
36
SE DETECTA ERROR AL RECIBIR UN CODIGO INVALIDO.
Cdigos de bloques

Deduccin de l y t
Ejemplo 3
Para el cdigo de bloques (n, k)
Tx B
A

Canal
0 1 2 3 0
l+1 l 3 2 1

Rx d=1

A B
0 1 2 3 t
Esfera de Hamming Esfera de Hamming

d = dmn = 2t +1

dmn # de bits mnimo que deben alterarse para convertir un CV en otro CV distinto
Es la menor distancia entre dos CV
De la grfica:
- Se corrigen hasta t errores de bits = 1
- Se detectan hasta l errores de bits
- dmn = l + 1 1
t= 37
- l = 2t 2
Cdigos de bloques

Deduccin de l y t
Ejemplo 3
Para el cdigo de bloques (n, k)
Tx B
A

Canal
0 1 2 3 0
l+1 l 3 2 1

Rx d=1

A B
0 1 2 3 t
Esfera de Hamming Esfera de Hamming

d = dmn = 2t +1

Deteccin posible cuando:


# bits errneos < dmn
Caso contrario:
La palabra de cdigo recibida se asocia a otro CV que no le corresponde. No se detecta error.
38
Cdigos de bloques

Deduccin de l y t
Efectividad de un cdigo de bloques depende
de dmn.

A mayor dmn, menor posibilidad de error de decodificacin.


Ejemplo
Cdigo (2, 1) de doble repeticin
dmn = 2
l = dmn 1 = 2 1 = 1
t = (dmn 1)/2 = 0.5 0

No corrige nada.
Detecta errores de 1 bits.

39
Cdigos de bloques

Deduccin de l y t
Efectividad de un cdigo de bloques depende
de dmn.

A mayor dmn, menor posibilidad de error de decodificacin.


Ejemplo
Cdigo (3, 1) de triple repeticin
dmn = 3
l = dmn 1 = 3 1 = 2
t = (dmn 1)/2 = 1

Corrige errores de 1 bit.


Detecta errores de hasta 2 bits.

40

También podría gustarte