105
T EMA 5 T ´ ECNICAS DE PROTECCI ´ ON FRENTE A ERRORES (C ODIFICACI ´ ON DE C ANAL ) MMC (UC3M) Comunicaciones Digitales Codificaci ´ on de Canal 1 / 99

ECNICAS DE PROTECCI´ ON FRENTE A ERRORES (C ´ Ctsc.uc3m.es/~fernando/Codificacion_canal.pdf · Codigos perfectos´ Codigos de repetici´ on (decisi´ on por mayor´ ´ıa) n impar,

  • Upload
    others

  • View
    9

  • Download
    0

Embed Size (px)

Citation preview

Page 1: ECNICAS DE PROTECCI´ ON FRENTE A ERRORES (C ´ Ctsc.uc3m.es/~fernando/Codificacion_canal.pdf · Codigos perfectos´ Codigos de repetici´ on (decisi´ on por mayor´ ´ıa) n impar,

TEMA 5

TECNICAS DE PROTECCION FRENTE A ERRORES

(CODIFICACION DE CANAL)

MMC (UC3M) Comunicaciones Digitales Codificacion de Canal 1 / 99

Page 2: ECNICAS DE PROTECCI´ ON FRENTE A ERRORES (C ´ Ctsc.uc3m.es/~fernando/Codificacion_canal.pdf · Codigos perfectos´ Codigos de repetici´ on (decisi´ on por mayor´ ´ıa) n impar,

Indice

Introduccion y definicionesCodigos bloque linealesCodigos convolucionalesCodigos de rejillaCodigos BCH y codigos RSProteccion frente a ruido impulsivo: intercalado yconcatenacion de codigosEsquemas avanzados de codificacion

Turbo codificacionCodigos LDPC

MMC (UC3M) Comunicaciones Digitales Codificacion de Canal 2 / 99

Page 3: ECNICAS DE PROTECCI´ ON FRENTE A ERRORES (C ´ Ctsc.uc3m.es/~fernando/Codificacion_canal.pdf · Codigos perfectos´ Codigos de repetici´ on (decisi´ on por mayor´ ´ıa) n impar,

Introduccion

Los sistemas de comunicaciones comenten erroresObjetivo de un sistema de comunicaciones

BER < CalidadAlternativas para reduccion de los errores

Aumentar la energıa de la senalLimitaciones: Econonicas, fısicas, legales, interferencias, ...

Teorema de codificacion de canales con ruido (Shannon)Introduccion de bits de redundanciaTasa de codificacion: R (bits de datos/bits transmitidos)Capacidad del canal: C (bits/uso)Posibilidad de reduccion de la BER de forma arbitraria

R < C

MMC (UC3M) Comunicaciones Digitales Codificacion de Canal 3 / 99

Page 4: ECNICAS DE PROTECCI´ ON FRENTE A ERRORES (C ´ Ctsc.uc3m.es/~fernando/Codificacion_canal.pdf · Codigos perfectos´ Codigos de repetici´ on (decisi´ on por mayor´ ´ıa) n impar,

Capacidad de canal - Canales digitales

Modelo de canal discreto sin memoria (DMC)Entrada y salida: variables aleatorias X e YProbabilidades de transicion pY|X(yj|xi)

Capacidad de canal

C = maxpX(xi)

I(X,Y) bits/uso

Ejemplo: Canal binario simetrico (BER=ε)

-

-

*

HHHHHH

HHHHHH

HHHHHH

HHHj

s

s

s

sx0

x1

y0

y11− ε

1− ε

ε

ε

C = 1− Hb(ε) bits/uso

MMC (UC3M) Comunicaciones Digitales Codificacion de Canal 4 / 99

Page 5: ECNICAS DE PROTECCI´ ON FRENTE A ERRORES (C ´ Ctsc.uc3m.es/~fernando/Codificacion_canal.pdf · Codigos perfectos´ Codigos de repetici´ on (decisi´ on por mayor´ ´ıa) n impar,

Entropıa binaria Hb(p)

Entropıa de una v.a. binaria con pX(x0) = p y pX(x1) = 1− p

Hb(p) = −p · log2(p)− (1− p) log2(1− p)

0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 10

0.10.20.30.40.50.60.70.80.91

.

...................................................................................................

.

..................................................................

.

.....................................................

..............................................

....................................

................................

...........................

. .......................... . ........................ . ....................... . ....................... . ........................ . .......................... ..........................

...

..............................

....................

..................

......................................

.......

....................................

.................

.

..................................................................

.

...................................................................................................

Probabilidad p

Ent

ropi

abi

naria

Hb(

p)

MMC (UC3M) Comunicaciones Digitales Codificacion de Canal 5 / 99

Page 6: ECNICAS DE PROTECCI´ ON FRENTE A ERRORES (C ´ Ctsc.uc3m.es/~fernando/Codificacion_canal.pdf · Codigos perfectos´ Codigos de repetici´ on (decisi´ on por mayor´ ´ıa) n impar,

Capacidad de canal - Canal gausiano

Capacidad sobre canal gausiano en las siguientescondiciones:

Potencia transmitida: P watt.Potencia de ruido: PN watt.Ancho de banda: B Hz

C =1n

log M =12

log(

1 +P

PN

)PN =

∫ B

−B

No

2df = NoB

C =12· log

(1 +

PNoB

)bits/uso

C = B · log (1 + SNR) bits/s

MMC (UC3M) Comunicaciones Digitales Codificacion de Canal 6 / 99

Page 7: ECNICAS DE PROTECCI´ ON FRENTE A ERRORES (C ´ Ctsc.uc3m.es/~fernando/Codificacion_canal.pdf · Codigos perfectos´ Codigos de repetici´ on (decisi´ on por mayor´ ´ıa) n impar,

Cotas

Capacidad en funcion de B

lımB→∞

C =PNo

log2(e) = 1,44 · PNo

Sistema de comunicaciones practico

Rb < B · log (1 + SNR) bits/s

Tasa binaria (eficiencia) espectral: η = RbB bits/s/Hz

Energıa media por bit - Eb = PRb

Relacion Eb/N0 = SNRη

η < log (1 + SNR) , η < log(

1 + η · Eb

No

)SNR > 2η − 1,

Eb

No>

2η − 1η

Cuando η → 0 EbNo

= ln2 = 0,693 ≈ −1,6 dBMMC (UC3M) Comunicaciones Digitales Codificacion de Canal 7 / 99

Page 8: ECNICAS DE PROTECCI´ ON FRENTE A ERRORES (C ´ Ctsc.uc3m.es/~fernando/Codificacion_canal.pdf · Codigos perfectos´ Codigos de repetici´ on (decisi´ on por mayor´ ´ıa) n impar,

Tasa binaria (eficiencia) espectral frente a Eb/N0

-

6

........................................................................................................................................................

.......... ........ ............................

......... ........... ............. ........ .......... ........... ............ ............ .............. ............... ............ .............. ................ ............. .............. ................ ............. ............... ................ .............. ............... ................ ............................................101

10−1

1

0 5 10 15 20 EbNo

dB

η = RbB

−1,592

..........

..........

..........

..........

..........

..........

..........

..........

..........

..........

..........

..........

..........

..........

..........

..........

..........

..........

..........

..........

..........

.....

MMC (UC3M) Comunicaciones Digitales Codificacion de Canal 8 / 99

Page 9: ECNICAS DE PROTECCI´ ON FRENTE A ERRORES (C ´ Ctsc.uc3m.es/~fernando/Codificacion_canal.pdf · Codigos perfectos´ Codigos de repetici´ on (decisi´ on por mayor´ ´ıa) n impar,

Relacion senal a ruido normalizada

Cota inferior para SNR

SNR > 2η − 1

Definicion de SNR normalizada

SNRnorm =SNR

2η − 1

Cota inferior sobre SNRnorm

SNRnorm > 1 (0 dB)

MMC (UC3M) Comunicaciones Digitales Codificacion de Canal 9 / 99

Page 10: ECNICAS DE PROTECCI´ ON FRENTE A ERRORES (C ´ Ctsc.uc3m.es/~fernando/Codificacion_canal.pdf · Codigos perfectos´ Codigos de repetici´ on (decisi´ on por mayor´ ´ıa) n impar,

Tipos de codigos

Capacidad del codigoCodigos de deteccion de erroresCodigos de correccion de errores

Mecanismo de introduccion de la redundanciaCodigos bloque

Bloques de k bits se codifican de forma independienteConcepto clave: distancia entre palabras codigo

Codigos convolucionalesCodificacion continua mediante filtrado digital

Estadıstico para la decisionSalida dura: decodificacion a partir de los bits decididos B[`]Salida blanda: decodificacion a partir de la salida deldemodulador q[n]

Mejores prestaciones pero mayor complejidad

Borrado de bits: se “marcan” los bits/sımbolos dudosos

MMC (UC3M) Comunicaciones Digitales Codificacion de Canal 10 / 99

Page 11: ECNICAS DE PROTECCI´ ON FRENTE A ERRORES (C ´ Ctsc.uc3m.es/~fernando/Codificacion_canal.pdf · Codigos perfectos´ Codigos de repetici´ on (decisi´ on por mayor´ ´ıa) n impar,

Ganancia de codificacion

Definicion: diferencia en decibelios entre las relacionesEb/N0 necesarias para alcanzar una determinada BER sincodificar y utilizando la codificacionPermite comparar las prestaciones de distintos codigosDepende de la BER (o de Eb/N0)Puede ser positiva a partir de un cierto valor de Eb/N0

MMC (UC3M) Comunicaciones Digitales Codificacion de Canal 11 / 99

Page 12: ECNICAS DE PROTECCI´ ON FRENTE A ERRORES (C ´ Ctsc.uc3m.es/~fernando/Codificacion_canal.pdf · Codigos perfectos´ Codigos de repetici´ on (decisi´ on por mayor´ ´ıa) n impar,

Codigos bloque - Definiciones

Codificacion independiente de bloques de k bitsConversion en bloques de n bits→ Tasa R = k/n

Definiciones para los bloques de bitsInformacion: bi = [bi[0], bi[1], · · · , bi[k− 1]], i = 0, 1, · · · , 2k − 1Codificados: ci = [ci[0], ci[1], · · · , ci[n− 1]], i = 0, 1, · · · , 2k − 1Codificacion: bi → ci

Diccionario del codigo: mensaje→ palabra codigoPeso de una palabra codigo w(ci)

Numero de unos de la palabraDistancia de Hamming entre dos palabras codigo dH(ci, cj)

Numero de bits diferentes entre ambas palabrasDistancia mınima del codigo: dmin

Mınima distancia de Hamming entre dos palabras codigodistintas

MMC (UC3M) Comunicaciones Digitales Codificacion de Canal 12 / 99

Page 13: ECNICAS DE PROTECCI´ ON FRENTE A ERRORES (C ´ Ctsc.uc3m.es/~fernando/Codificacion_canal.pdf · Codigos perfectos´ Codigos de repetici´ on (decisi´ on por mayor´ ´ıa) n impar,

Estimador optimo - Salida dura

Observacion condicionada a la transmision de ci

r = ci + e, e = [e[0], e[1], · · · , e[n− 1]]

Modelo probabilıstico del patron de error (BER = ε)

pE(e[j]) = εe[j] · (1− ε)1−e[j] =

ε, e[j] = 11− ε, e[j] = 0

Verosimilitud

pr|c(r|ci) =n−1∏j=0

εr[j]−ci[j] · (1− ε)1−(r[j]−ci[j])

Estimador de maxima verosimilitud (ML)

ci = arg mınci

dH(r, ci)

MMC (UC3M) Comunicaciones Digitales Codificacion de Canal 13 / 99

Page 14: ECNICAS DE PROTECCI´ ON FRENTE A ERRORES (C ´ Ctsc.uc3m.es/~fernando/Codificacion_canal.pdf · Codigos perfectos´ Codigos de repetici´ on (decisi´ on por mayor´ ´ıa) n impar,

Capacidades de deteccion y correccion con salida dura

Distancia mınima del codigo: dmin

Capacidad de deteccion: d = dmin − 1 erroresCapacidad de correccion:

t =

⌊dmin − 1

2

⌋errores

MMC (UC3M) Comunicaciones Digitales Codificacion de Canal 14 / 99

Page 15: ECNICAS DE PROTECCI´ ON FRENTE A ERRORES (C ´ Ctsc.uc3m.es/~fernando/Codificacion_canal.pdf · Codigos perfectos´ Codigos de repetici´ on (decisi´ on por mayor´ ´ıa) n impar,

Estimador optimo - Salida blanda

Constelacion: M sımbolos (m = log2(M) bits/sımboloSecuencia de sımbolos para una palabra codigo

ci → Ai = [Ai[0],Ai[1], · · · ,Ai[n′ − 1]], n′ =nm

Modelo de la observacion condicionada a ci

q = Ai + e, e = [e[0], e[1], · · · , e[n′ − 1]]

Modelo probabilıstico del error: fE(e[j]) = N(0, σ2z )

Verosimilitud: fq|A(q|Ai) = N(Ai, σ2z )

Estimador de maxima verosimilitud

c = arg mıni

de(q,Ai)

MMC (UC3M) Comunicaciones Digitales Codificacion de Canal 15 / 99

Page 16: ECNICAS DE PROTECCI´ ON FRENTE A ERRORES (C ´ Ctsc.uc3m.es/~fernando/Codificacion_canal.pdf · Codigos perfectos´ Codigos de repetici´ on (decisi´ on por mayor´ ´ıa) n impar,

Codigos bloque lineales

Codigo C(k, n)

Base del codigo: k palabras codigo linealmenteindependientes

g0, g1, · · · , gk−1gi = [gi[0], gi[1], · · · , gi[n− 1]]

Palabra codigo: combinacion lineal de las k bases

ci = bi[0] · g0 + bi[1] · g1 + · · ·+ bi[k − 1] · gk−1

Propiedadesc0 = 0 = [0, 0, · · · , 0] pertenece al codigoTodos los elementos de la base pertenencen al codigoToda combinacion lineal de palabras codigo ∈ C(k, n)Todas las palabra tienen a otra palabra a distancia dmin

dmin = mınci 6=c0

w(ci)

MMC (UC3M) Comunicaciones Digitales Codificacion de Canal 16 / 99

Page 17: ECNICAS DE PROTECCI´ ON FRENTE A ERRORES (C ´ Ctsc.uc3m.es/~fernando/Codificacion_canal.pdf · Codigos perfectos´ Codigos de repetici´ on (decisi´ on por mayor´ ´ıa) n impar,

Matriz generadora del codigo

Agrupacion de la base en una matriz k × n

G =

g0g1...

gk−1

=

g0[0] g0[1] · · · g0[n− 1]g1[0] g1[1] · · · g1[n− 1]

...... . . . ...

gk−1[0] gk−1[1] · · · gk−1[n− 1]

Obtencion de las palabras codigo

ci = bi · G

Codigos sistematicos: el mensaje bi forma parte de ci

ci = [bi|pi] → G = [Ik|P]

ci = [pi|bi] → G = [P|Ik]

MMC (UC3M) Comunicaciones Digitales Codificacion de Canal 17 / 99

Page 18: ECNICAS DE PROTECCI´ ON FRENTE A ERRORES (C ´ Ctsc.uc3m.es/~fernando/Codificacion_canal.pdf · Codigos perfectos´ Codigos de repetici´ on (decisi´ on por mayor´ ´ıa) n impar,

Matriz generadora del codigo - Ejemplo

Codigo C(2, 5)

G =

[0 1 1 1 01 0 1 0 1

]Palabras codigo

bi ci

0 0 0 0 0 0 00 1 1 0 1 0 11 0 0 1 1 1 01 1 1 1 0 1 1

Codigo sistematicoDistancia mınima del codigo: dmin = 3

Detecta 2 erroresCorrige 1 error

MMC (UC3M) Comunicaciones Digitales Codificacion de Canal 18 / 99

Page 19: ECNICAS DE PROTECCI´ ON FRENTE A ERRORES (C ´ Ctsc.uc3m.es/~fernando/Codificacion_canal.pdf · Codigos perfectos´ Codigos de repetici´ on (decisi´ on por mayor´ ´ıa) n impar,

Matriz de chequeo de paridad

Matriz (n− k)× n: complemento ortogonal de G

G ·HT = 0 matriz de k × (n− k) ceros

Codigos sistematicos

G = [Ik|P] → H = [PT |In−k]

G = [P|Ik] → H = [In−k|PT ]

Identificacion de palabras codigo

ci ·HT = bi · G ·HT = 0 vector de n− k ceros

Decodificacion mediante sındromeModelo de transmision: r = ci + e (e: patron de error)Sındrome

s = r ·HT = (ci + e) ·HT = e ·HT

Decodificacion: Tabla de sındromesMMC (UC3M) Comunicaciones Digitales Codificacion de Canal 19 / 99

Page 20: ECNICAS DE PROTECCI´ ON FRENTE A ERRORES (C ´ Ctsc.uc3m.es/~fernando/Codificacion_canal.pdf · Codigos perfectos´ Codigos de repetici´ on (decisi´ on por mayor´ ´ıa) n impar,

Matriz de chequeo de paridad - Ejemplo

G =

[0 1 11 0 1

∣∣∣∣ 1 00 1

]→ H =

1 0 00 1 00 0 1

∣∣∣∣∣∣0 11 01 1

Tabla de sındromes

e s0 0 0 0 0 0 0 01 0 0 0 0 1 0 00 1 0 0 0 0 1 00 0 1 0 0 0 0 10 0 0 1 0 0 1 10 0 0 0 1 1 0 1

¿? 1 1 0¿? 1 1 1

110→ e1 = 11000, e2 = 00011, e3 = 10110, e4 = 01101Posibilidad: elegir uno de los dos patrones de dos errores

MMC (UC3M) Comunicaciones Digitales Codificacion de Canal 20 / 99

Page 21: ECNICAS DE PROTECCI´ ON FRENTE A ERRORES (C ´ Ctsc.uc3m.es/~fernando/Codificacion_canal.pdf · Codigos perfectos´ Codigos de repetici´ on (decisi´ on por mayor´ ´ıa) n impar,

Ventaja de trabajar con G y H

Numero de palabras del codigo: 2k

k = 2, n = 5: 4 palabrask = 247, n = 255: 2247 ≈ 2,26 · 1074 palabras

Numero de sındromes posiblesk = 2, n = 5 (t = 1): 8 sındromesk = 247, n = 255 (t = 1): 256 sındromes

MMC (UC3M) Comunicaciones Digitales Codificacion de Canal 21 / 99

Page 22: ECNICAS DE PROTECCI´ ON FRENTE A ERRORES (C ´ Ctsc.uc3m.es/~fernando/Codificacion_canal.pdf · Codigos perfectos´ Codigos de repetici´ on (decisi´ on por mayor´ ´ıa) n impar,

Metodo de eliminacion - Ejemplo

Sustitucion de filas por combinaciones lineales de otras1a fila: 1a+2a filas2a fila: 1a fila

Codigo C(2, 5)

G =

[1 1 0 1 10 1 1 1 0

]Palabras codigo

bi ci

0 0 0 0 0 0 00 1 0 1 1 1 01 0 1 1 0 1 11 1 1 0 1 0 1

Mismas palabras codigos / distintas asignacionesLa misma matriz H es valida para generar la tabla desındromes

MMC (UC3M) Comunicaciones Digitales Codificacion de Canal 22 / 99

Page 23: ECNICAS DE PROTECCI´ ON FRENTE A ERRORES (C ´ Ctsc.uc3m.es/~fernando/Codificacion_canal.pdf · Codigos perfectos´ Codigos de repetici´ on (decisi´ on por mayor´ ´ıa) n impar,

Lımite de Hamming

Numero de sındromes con redundancia r = n− k:

2n−k = 2r

Lımite de Hamming para corregir t errores

r ≥ log2 V(n, t), V(n, t) =t∑

j=0

(nj

)

V(n, t): Esfera de Hamming de radio tInterpretacion con numero de sındromes disponibles(

00

)+

(n1

)+ · · ·+

(nt

)≤ 2r

Igualdad: Codigos perfectos

MMC (UC3M) Comunicaciones Digitales Codificacion de Canal 23 / 99

Page 24: ECNICAS DE PROTECCI´ ON FRENTE A ERRORES (C ´ Ctsc.uc3m.es/~fernando/Codificacion_canal.pdf · Codigos perfectos´ Codigos de repetici´ on (decisi´ on por mayor´ ´ıa) n impar,

Codigos perfectos

Codigos de repeticion (decision por mayorıa)n impar, k = 1, t = (n− 1)/2

Codigos de Hammingn = 2m − 1, k = 2m − m− 1, t = 1Matriz de chequeo: en las columnas aparecen todas lasposibles combinaciones binarias de (n− k) bits, excepto latodo ceros

Ejemplo: Codigo Hamming (4,7)

H =

1 0 0 0 1 1 10 1 0 1 0 1 10 0 1 1 1 0 1

Codigo de Golay

n = 23, k = 11, t = 3

MMC (UC3M) Comunicaciones Digitales Codificacion de Canal 24 / 99

Page 25: ECNICAS DE PROTECCI´ ON FRENTE A ERRORES (C ´ Ctsc.uc3m.es/~fernando/Codificacion_canal.pdf · Codigos perfectos´ Codigos de repetici´ on (decisi´ on por mayor´ ´ıa) n impar,

Prestaciones - Decodificacion dura

Probabilidad de error de bit (BER): εSe comenten errores cuando se excede la capacidad decorreccion del codigoCodigo de correccion de t errores

Pe =n∑

j=t+1

(nj

)· εj · (1− ε)n−j

Codigos que corrigen todos los patrones de t errores y apatrones de t + 1 errores

Pe =

[(n

t + 1

)− a]·εt+1 · (1−ε)n−t−1 +

n∑j=t+2

(nj

)·εj · (1−ε)n−j

Codificacion tipo Gray o pseudo-Gray

BER ≈ 1k

Pe

MMC (UC3M) Comunicaciones Digitales Codificacion de Canal 25 / 99

Page 26: ECNICAS DE PROTECCI´ ON FRENTE A ERRORES (C ´ Ctsc.uc3m.es/~fernando/Codificacion_canal.pdf · Codigos perfectos´ Codigos de repetici´ on (decisi´ on por mayor´ ´ıa) n impar,

Prestaciones - Decodificacion blanda

Probabilidad de error

Pe ≈ c · Q

(de

min

2√

N0/2

)de

min: mınima distancia euclıdea entre las secuencias desımbolos correspondientes a dos palabras codigodiferentesc: maximo numero de palabras de distancia mınima de unadada

Modulaciones binarias

de(ci, cj) = d(a0, a1)√

dH(ci, cj)

Pe ≈ c · Q

(d(a0, a1)

2√

N0/2

√dmin

)MMC (UC3M) Comunicaciones Digitales Codificacion de Canal 26 / 99

Page 27: ECNICAS DE PROTECCI´ ON FRENTE A ERRORES (C ´ Ctsc.uc3m.es/~fernando/Codificacion_canal.pdf · Codigos perfectos´ Codigos de repetici´ on (decisi´ on por mayor´ ´ıa) n impar,

Codigos cıclicos

Codigos bloque linealesDefinicion: si ci = [ci[0], ci[1], · · · , ci[n− 1]] ∈ C(k, n),entonces c′i = [ci[1], · · · , ci[n− 1], ci[0]] ∈ C(k, n)

Caracterizacion mediante un polinomio generador g(x)

Codificacion: multiplicacion por el polinomioDecodificacion: division por el polinomioImplementacion mediante registros de desplazamiento

MMC (UC3M) Comunicaciones Digitales Codificacion de Canal 27 / 99

Page 28: ECNICAS DE PROTECCI´ ON FRENTE A ERRORES (C ´ Ctsc.uc3m.es/~fernando/Codificacion_canal.pdf · Codigos perfectos´ Codigos de repetici´ on (decisi´ on por mayor´ ´ıa) n impar,

Codificacion/Decodificacion

Representaciones polinonicasPolinomio generador: g(x), grado n− kPolinomio de chequeo: h(x), tal que g(x)× h(x) = xn − 1Palabras mensaje: b(x), grado k − 1Palabras codigo y recibida: c(x), r(x), grado n− 1Sındrome: s(x), grado n− k − 1

Codificacion

c(x) = b(x)× g(x) mod xn − 1

Decodificacion

s(x) = r(x)× h(x) mod xn − 1

r(x) = a(x)× g(x) + s(x)

Division por g(x) y quedarse con el resto

MMC (UC3M) Comunicaciones Digitales Codificacion de Canal 28 / 99

Page 29: ECNICAS DE PROTECCI´ ON FRENTE A ERRORES (C ´ Ctsc.uc3m.es/~fernando/Codificacion_canal.pdf · Codigos perfectos´ Codigos de repetici´ on (decisi´ on por mayor´ ´ıa) n impar,

Ejemplo: codigo C(4, 7)

Polinomio generador: g(x) = x3 + x + 1Mensaje: b = [0 1 0 1]→ b(x) = x2 + 1Palabra codigo

c(x) = (x2 + 1)× (x3 + x + 1) = x5 + x2 + x + 1

c = [0 1 0 0 1 1 1]

MMC (UC3M) Comunicaciones Digitales Codificacion de Canal 29 / 99

Page 30: ECNICAS DE PROTECCI´ ON FRENTE A ERRORES (C ´ Ctsc.uc3m.es/~fernando/Codificacion_canal.pdf · Codigos perfectos´ Codigos de repetici´ on (decisi´ on por mayor´ ´ıa) n impar,

Codificacion mediante registros de desplazamiento

n registrosRamas con sumadores: indicadas por el polinomioSe introduce el mensaje bit a bitLa palabra codificada corresponde a los bits en losregistros al final del proceso

- - n?- - - n?- - - -

MMC (UC3M) Comunicaciones Digitales Codificacion de Canal 30 / 99

Page 31: ECNICAS DE PROTECCI´ ON FRENTE A ERRORES (C ´ Ctsc.uc3m.es/~fernando/Codificacion_canal.pdf · Codigos perfectos´ Codigos de repetici´ on (decisi´ on por mayor´ ´ıa) n impar,

Ejemplo b = [0101]

[0 1 0 1]

- 0 - k?- 0 - 0 - k?- 0 - 0 - 0 - 0

[0 1 0 1]

- 1 - k?- 1 - 0 - k?- 1 - 0 - 0 - 0

[0 1 0 1]

- 0 - k?- 1 - 1 - k?- 0 - 1 - 0 - 0

[0 1 0 1]

- 1 - k?- 1 - 1 - k?- 0 - 0 - 1 - 0

MMC (UC3M) Comunicaciones Digitales Codificacion de Canal 31 / 99

Page 32: ECNICAS DE PROTECCI´ ON FRENTE A ERRORES (C ´ Ctsc.uc3m.es/~fernando/Codificacion_canal.pdf · Codigos perfectos´ Codigos de repetici´ on (decisi´ on por mayor´ ´ıa) n impar,

Codigos de Hamming

Existen implementaciones cıclicasAlgunos ejemplos:

m = 3 (n = 7, k = 4): g(x) = x3 + x + 1m = 4 (n = 15, k = 11): g(x) = x4 + x + 1m = 5 (n = 31, k = 26): g(x) = x5 + x2 + 1m = 6 (n = 63, k = 57): g(x) = x6 + x + 1m = 7 (n = 127, k = 120): g(x) = x7 + x3 + 1m = 8 (n = 255, k = 247): g(x) = x8 + x4 + x3 + x2 + 1m = 9 (n = 511, k = 502): g(x) = x9 + x4 + 1m = 10 (n = 1023, k = 1013): g(x) = x10 + x3 + 1

MMC (UC3M) Comunicaciones Digitales Codificacion de Canal 32 / 99

Page 33: ECNICAS DE PROTECCI´ ON FRENTE A ERRORES (C ´ Ctsc.uc3m.es/~fernando/Codificacion_canal.pdf · Codigos perfectos´ Codigos de repetici´ on (decisi´ on por mayor´ ´ıa) n impar,

Codigos Golay

k = 12, n = 23, t = 3 (dmin = 7)Codigo cıclico

g1(x) = x11 + x10 + x6 + x5 + x4 + x2 + 1g2(x) = x11 + x9 + x7 + x4 + x3 + x2 + x + 1

Polinomios de chequeo de paridadh1(x) = x12 + x11 + x10 + x9 + x8 + x5 + x2 + 1h2(x) = x12 + x10 + x7 + x4 + x3 + x2 + x + 1

Codigo de Golay extendidoAnade un bit de paridadTasa 1/2 (facilidad de implementacion)Capacidad de corregir el 19 % de patrones de 4 errores

MMC (UC3M) Comunicaciones Digitales Codificacion de Canal 33 / 99

Page 34: ECNICAS DE PROTECCI´ ON FRENTE A ERRORES (C ´ Ctsc.uc3m.es/~fernando/Codificacion_canal.pdf · Codigos perfectos´ Codigos de repetici´ on (decisi´ on por mayor´ ´ıa) n impar,

Codigos cıclicos sistematicos

Definicion de la palabra codigo

c(x) = b(x)× xn−k + d(x)

d(x) = resto de(

b(x)× xn−k

g(x)

)Ejemplo: b(x)× x3 = x5 + x3

x5 + x3 = x2 × (x3 + x + 1) + x2 → d(x) = x2

c(x) = x5 + x3 + x2 → c = [0 1 0 1 1 0 0]

MMC (UC3M) Comunicaciones Digitales Codificacion de Canal 34 / 99

Page 35: ECNICAS DE PROTECCI´ ON FRENTE A ERRORES (C ´ Ctsc.uc3m.es/~fernando/Codificacion_canal.pdf · Codigos perfectos´ Codigos de repetici´ on (decisi´ on por mayor´ ´ıa) n impar,

Division con registros de desplazamiento

n− k registrosRamas con sumadores: indicadas por g(x)

Se introduce bit a bit b(x)× xn−k

El resto es el contenido final de los registros

- ?- - ?- - -

MMC (UC3M) Comunicaciones Digitales Codificacion de Canal 35 / 99

Page 36: ECNICAS DE PROTECCI´ ON FRENTE A ERRORES (C ´ Ctsc.uc3m.es/~fernando/Codificacion_canal.pdf · Codigos perfectos´ Codigos de repetici´ on (decisi´ on por mayor´ ´ıa) n impar,

Ejemplo b = [0101]

[0 1 0 1 0 0 0]

- ?0 - 0 - ?- 0 - 0 -0

MMC (UC3M) Comunicaciones Digitales Codificacion de Canal 36 / 99

Page 37: ECNICAS DE PROTECCI´ ON FRENTE A ERRORES (C ´ Ctsc.uc3m.es/~fernando/Codificacion_canal.pdf · Codigos perfectos´ Codigos de repetici´ on (decisi´ on por mayor´ ´ıa) n impar,

Ejemplo b = [0101]

[0 1 0 1 0 0 0]

- ?1 - 1 - ?- 0 - 0 -0

MMC (UC3M) Comunicaciones Digitales Codificacion de Canal 36 / 99

Page 38: ECNICAS DE PROTECCI´ ON FRENTE A ERRORES (C ´ Ctsc.uc3m.es/~fernando/Codificacion_canal.pdf · Codigos perfectos´ Codigos de repetici´ on (decisi´ on por mayor´ ´ıa) n impar,

Ejemplo b = [0101]

[0 1 0 1 0 0 0]

- ?0 - 0 - ?- 1 - 0 -0

MMC (UC3M) Comunicaciones Digitales Codificacion de Canal 36 / 99

Page 39: ECNICAS DE PROTECCI´ ON FRENTE A ERRORES (C ´ Ctsc.uc3m.es/~fernando/Codificacion_canal.pdf · Codigos perfectos´ Codigos de repetici´ on (decisi´ on por mayor´ ´ıa) n impar,

Ejemplo b = [0101]

[0 1 0 1 0 0 0]

- ?1 - 1 - ?- 0 - 1 -0

MMC (UC3M) Comunicaciones Digitales Codificacion de Canal 36 / 99

Page 40: ECNICAS DE PROTECCI´ ON FRENTE A ERRORES (C ´ Ctsc.uc3m.es/~fernando/Codificacion_canal.pdf · Codigos perfectos´ Codigos de repetici´ on (decisi´ on por mayor´ ´ıa) n impar,

Ejemplo b = [0101]

[0 1 0 1 0 0 0]

- ?0 - 1 - ?- 0 - 0 -1

MMC (UC3M) Comunicaciones Digitales Codificacion de Canal 36 / 99

Page 41: ECNICAS DE PROTECCI´ ON FRENTE A ERRORES (C ´ Ctsc.uc3m.es/~fernando/Codificacion_canal.pdf · Codigos perfectos´ Codigos de repetici´ on (decisi´ on por mayor´ ´ıa) n impar,

Ejemplo b = [0101]

[0 1 0 1 0 0 0]

- ?0 - 0 - ?- 1 - 0 -0

MMC (UC3M) Comunicaciones Digitales Codificacion de Canal 36 / 99

Page 42: ECNICAS DE PROTECCI´ ON FRENTE A ERRORES (C ´ Ctsc.uc3m.es/~fernando/Codificacion_canal.pdf · Codigos perfectos´ Codigos de repetici´ on (decisi´ on por mayor´ ´ıa) n impar,

Ejemplo b = [0101]

[0 1 0 1 0 0 0]

- ?0 - 0 - ?- 0 - 1 -0

Resto: d(x) = x2 (igual que antes)Reduccion de iteraciones: colocar en los registros los datoscorrespondientes a las k primeras iteraciones

MMC (UC3M) Comunicaciones Digitales Codificacion de Canal 36 / 99

Page 43: ECNICAS DE PROTECCI´ ON FRENTE A ERRORES (C ´ Ctsc.uc3m.es/~fernando/Codificacion_canal.pdf · Codigos perfectos´ Codigos de repetici´ on (decisi´ on por mayor´ ´ıa) n impar,

Decodificador codigos sistematicos

Tomar la parte sistematica y volverla a codificar: d′(x)

Definicion del sındrome

s(x) = d(x)− d′(x)

Generacion de tabla de sındromes para decodificacion

MMC (UC3M) Comunicaciones Digitales Codificacion de Canal 37 / 99

Page 44: ECNICAS DE PROTECCI´ ON FRENTE A ERRORES (C ´ Ctsc.uc3m.es/~fernando/Codificacion_canal.pdf · Codigos perfectos´ Codigos de repetici´ on (decisi´ on por mayor´ ´ıa) n impar,

Limitaciones de los codigos bloque

Tamano de la tabla de sındromes - Crecimientoexponencial

Ejemplo: n = 23, t = 1: 23 entradasEjemplo: n = 23, t = 2: 276 entradasEjemplo: n = 23, t = 3: 2047 entradas

Prestaciones relacionadas con la distancia mınimaSu calculo requiere conocer las palabras del codigoNo hay aproximaciones constructivas para obtener una dmin

MMC (UC3M) Comunicaciones Digitales Codificacion de Canal 38 / 99

Page 45: ECNICAS DE PROTECCI´ ON FRENTE A ERRORES (C ´ Ctsc.uc3m.es/~fernando/Codificacion_canal.pdf · Codigos perfectos´ Codigos de repetici´ on (decisi´ on por mayor´ ´ıa) n impar,

TEMA 5

TECNICAS DE PROTECCION FRENTE A ERRORES

(CODIGOS CONVOLUCIONALES)

MMC (UC3M) Comunicaciones Digitales Codificacion de Canal 39 / 99

Page 46: ECNICAS DE PROTECCI´ ON FRENTE A ERRORES (C ´ Ctsc.uc3m.es/~fernando/Codificacion_canal.pdf · Codigos perfectos´ Codigos de repetici´ on (decisi´ on por mayor´ ´ıa) n impar,

Codigos convolucionales

Introduccion de la redundancia mediante filtradoIntroduccion de memoria

Tasa R = k/n: Banco de filtros conk entradasn salidas

-B(0)[`]D - D - D

-C(0)[`]

-C(1)[`]

.

.......................................................................................................................................................................................................................................................................................................................................

.

........................................................................................................................................................................................................................................

................................................................................................

........................................................................................

........................................................................................

...............................

.

...................................................................................................

......................

......................

......................

......................

..........

Notacion:Entradas: B(i)[`], con i = 0, 1, · · · , k − 1Salidas: C(j)[`], con j = 0, 1, · · · , n− 1

MMC (UC3M) Comunicaciones Digitales Codificacion de Canal 40 / 99

Page 47: ECNICAS DE PROTECCI´ ON FRENTE A ERRORES (C ´ Ctsc.uc3m.es/~fernando/Codificacion_canal.pdf · Codigos perfectos´ Codigos de repetici´ on (decisi´ on por mayor´ ´ıa) n impar,

Representaciones

Esquematica

-B(0)[`]D - D - D

ii-C(0)[`]

-C(1)[`]

.....................................................................................................................................................................................................

.....................................................................................................................

.................................................................................

........................................................................................

....................................

.

............................................................

......................

......................

...............

Relacion entrada salidas

C(0)[`] = B(0)[`] + B(0)[`− 1] + B(0)[`− 3]

C(1)[`] = B(0)[`] + B(0)[`− 1] + B(0)[`− 2] + B(0)[`− 3]

Notacion mediante polinomios en D

B(i)(D) =∑`

B(i)[`] · D`

PropiedadB(i)[`− d]↔ B(i)(D) · Dd

MMC (UC3M) Comunicaciones Digitales Codificacion de Canal 41 / 99

Page 48: ECNICAS DE PROTECCI´ ON FRENTE A ERRORES (C ´ Ctsc.uc3m.es/~fernando/Codificacion_canal.pdf · Codigos perfectos´ Codigos de repetici´ on (decisi´ on por mayor´ ´ıa) n impar,

Representaciones (II)

Notacion mediante polinomios en D

C(0)(D) = B(0)(D)

1 + D + D3C(1)(D) = B(0)(D)

1 + D + D2 + D3

Notacion matricial (polinomios):

C(D)1×n = B(D)1×k · G(D)k×n

Matriz generadora de tamano k × nElemento fila i columna j: contribucion a la salida j-esima dela entrada i-esimaEjemplos

Ejemplo anterior (A): k = 1, n = 2

G(D) =[1 + D + D3, 1 + D + D2 + D3]

1×2

Otro ejemplo (B): k = 2,

G(D) =

[1 + D D D

D 1 D

]2×3

MMC (UC3M) Comunicaciones Digitales Codificacion de Canal 42 / 99

Page 49: ECNICAS DE PROTECCI´ ON FRENTE A ERRORES (C ´ Ctsc.uc3m.es/~fernando/Codificacion_canal.pdf · Codigos perfectos´ Codigos de repetici´ on (decisi´ on por mayor´ ´ıa) n impar,

Paso a representacion esqumatica - Ejemplo B

G(D) =

[1 + D D D

D 1 D

]2×3

Numero de entradas: k = 2Numero de salidas: n = 3

-B(0)[`]D

-B(1)[`]D

-C(0)[`]

-C(1)[`]

-C(2)[`]

.

.................................................................................................................

........................

........................

........................

........................

.................

.......................................................................................................................................................................................................................................................................................

.

........................................................................................................................................................................................................................................................................................

........................

........................

........................

........................

................

MMC (UC3M) Comunicaciones Digitales Codificacion de Canal 43 / 99

Page 50: ECNICAS DE PROTECCI´ ON FRENTE A ERRORES (C ´ Ctsc.uc3m.es/~fernando/Codificacion_canal.pdf · Codigos perfectos´ Codigos de repetici´ on (decisi´ on por mayor´ ´ıa) n impar,

Parametros de interes

Memoria total del codigo: Mt

Numero total de unidades de retardo (memorias)

Mt =

k−1∑i=0

M(i)

Memoria de la entrada i-esima: M(i) = maxj

grado(gi,j(D))

Longitud de restriccion: KMaxima longitud de la respuesta al impulso del codificador(maximo numero de instantes de tiempo en los que un bitafecta a la salida del codificador)

K = 1 + maxi,j

grado(gi,j(D))

En general las prestaciones aumentan con K

MMC (UC3M) Comunicaciones Digitales Codificacion de Canal 44 / 99

Page 51: ECNICAS DE PROTECCI´ ON FRENTE A ERRORES (C ´ Ctsc.uc3m.es/~fernando/Codificacion_canal.pdf · Codigos perfectos´ Codigos de repetici´ on (decisi´ on por mayor´ ´ıa) n impar,

Codigos sistematicos

Matriz de generacion

G(D) = [Ik P(D)]

Las entradas se “copian” en algunas de las salidasEjemplo (C)

G(D) =[1, 1 + D + D2]

-B(0)[`]D - D

-C(0)[`]

-C(1)[`].

..........................................................................................................................................................

................................................................

.

......................

......................

......................

......................

..........

MMC (UC3M) Comunicaciones Digitales Codificacion de Canal 45 / 99

Page 52: ECNICAS DE PROTECCI´ ON FRENTE A ERRORES (C ´ Ctsc.uc3m.es/~fernando/Codificacion_canal.pdf · Codigos perfectos´ Codigos de repetici´ on (decisi´ on por mayor´ ´ıa) n impar,

Diagrama de rejilla

Definicion del estadoContenido de las memorias del codificador

ψ[`] = [B(0)[`−1], · · · ,B(0)[`−M(0)], · · · ,B(k−1)[`−1], · · · ,B(k−1)[l−M(k−1)]]

Etiquetado de la rejillaBits a la entrada del codificadorBits a la salida del codificador

B(0)[`],B(1)[`], · · ·B(k−1)[`]

∣∣∣∣ C(0)[`],C(1)[`], · · ·C(n−1)[`]

MMC (UC3M) Comunicaciones Digitales Codificacion de Canal 46 / 99

Page 53: ECNICAS DE PROTECCI´ ON FRENTE A ERRORES (C ´ Ctsc.uc3m.es/~fernando/Codificacion_canal.pdf · Codigos perfectos´ Codigos de repetici´ on (decisi´ on por mayor´ ´ıa) n impar,

Ejemplo - Convolucional D

Estado: ψ[`] =[B(0)[`− 1],B(0)[`− 2]

]Estados: ψ0 = [0, 0], ψ1 = [1, 0], ψ2 = [0, 1], ψ3 = [1, 1]

- D - D

- k- k

-

?

-

B(0)[`]

C(0)[`]

C(1)[`]

rrrr

rrrr

. ......................................................................................................................................................................................................................................................................................................

..............................................................................................................................................................................................................................................................................................................................................

.

...............................................................................................................................................................................................................................................................................................................................................

.......................................................................................................................................................................................................................................................................................................................................................................................

.

..................................................

..................................................

..................................................

..................................................

..................................................

..................................................

...................................

............................

............................

............................

............................

............................

............................

............................

............................

............................

............................

............................

............................

............................

...........

.

..................................................

..................................................

..................................................

..................................................

..................................................

..................................................

................................... .....................................................................................................................................................................................................................................................................................................

0|00

1|110|01

1|100|11

1|000|10

1|01

ψ[n] ψ[n + 1]ψ0

ψ1

ψ2

ψ3

MMC (UC3M) Comunicaciones Digitales Codificacion de Canal 47 / 99

Page 54: ECNICAS DE PROTECCI´ ON FRENTE A ERRORES (C ´ Ctsc.uc3m.es/~fernando/Codificacion_canal.pdf · Codigos perfectos´ Codigos de repetici´ on (decisi´ on por mayor´ ´ıa) n impar,

Ejemplo - Convolucional E

Estado: ψ[`] =[B(0)[`− 1],B(0)[`− 2]

]Estados: ψ0 = [0, 0], ψ1 = [1, 0], ψ2 = [0, 1], ψ3 = [1, 1]

-B(0)[`]D - D

- k-

-C(0)[`]

C(1)[`]

rrrr

rrrr

. ......................................................................................................................................................................................................................................................................................................

..............................................................................................................................................................................................................................................................................................................................................

.

...............................................................................................................................................................................................................................................................................................................................................

.......................................................................................................................................................................................................................................................................................................................................................................................

.

..................................................

..................................................

..................................................

..................................................

..................................................

..................................................

...................................

............................

............................

............................

............................

............................

............................

............................

............................

............................

............................

............................

............................

............................

...........

.

..................................................

..................................................

..................................................

..................................................

..................................................

..................................................

................................... .....................................................................................................................................................................................................................................................................................................

0|00

1|010|10

1|110|01

1|000|11

1|10

ψ[n] ψ[n + 1]ψ0

ψ1

ψ2

ψ3

MMC (UC3M) Comunicaciones Digitales Codificacion de Canal 48 / 99

Page 55: ECNICAS DE PROTECCI´ ON FRENTE A ERRORES (C ´ Ctsc.uc3m.es/~fernando/Codificacion_canal.pdf · Codigos perfectos´ Codigos de repetici´ on (decisi´ on por mayor´ ´ıa) n impar,

Secuencia de bits - Camino a traves de la rejilla

Secuencia de datos: B(0)[`] = [11010]

Estado inicial: ψ0 (Se fija con el envıo de una cabecera debits)

ssss

ssss

. .........................................................................................................................................................................

....................................................................................................................................................................................................

.

.....................................................................................................................................................................................................

................................................................................................................................................................................................................................

.

..........................................

..........................................

..........................................

..........................................

.............................

........................

........................

........................

........................

........................

........................

........................

........................

........................

........

.

..........................................

..........................................

..........................................

..........................................

............................. ........................................................................................................................................................................

0|00

1|110|01

1|100|11

1|000|10

1|01

ssss

ssss

. .........................................................................................................................................................................

....................................................................................................................................................................................................

.

.....................................................................................................................................................................................................

................................................................................................................................................................................................................................

.

..........................................

..........................................

..........................................

..........................................

.............................

........................

........................

........................

........................

........................

........................

........................

........................

........................

........

.

..........................................

..........................................

..........................................

..........................................

............................. ........................................................................................................................................................................

0|00

1|110|01

1|100|11

1|000|10

1|01

ssss

ssss

. .........................................................................................................................................................................

....................................................................................................................................................................................................

.

.....................................................................................................................................................................................................

................................................................................................................................................................................................................................

.

..........................................

..........................................

..........................................

..........................................

.............................

........................

........................

........................

........................

........................

........................

........................

........................

........................

........

.

..........................................

..........................................

..........................................

..........................................

............................. ........................................................................................................................................................................

0|00

1|110|01

1|100|11

1|000|10

1|01

ssss

ssss

. .........................................................................................................................................................................

....................................................................................................................................................................................................

.

.....................................................................................................................................................................................................

................................................................................................................................................................................................................................

.

..........................................

..........................................

..........................................

..........................................

.............................

........................

........................

........................

........................

........................

........................

........................

........................

........................

........

.

..........................................

..........................................

..........................................

..........................................

............................. ........................................................................................................................................................................

0|00

1|110|01

1|100|11

1|000|10

1|01

ssss

ssss

. .........................................................................................................................................................................

....................................................................................................................................................................................................

.

.....................................................................................................................................................................................................

................................................................................................................................................................................................................................

.

..........................................

..........................................

..........................................

..........................................

.............................

........................

........................

........................

........................

........................

........................

........................

........................

........................

........

.

..........................................

..........................................

..........................................

..........................................

............................. ........................................................................................................................................................................

0|00

1|110|01

1|100|11

1|000|10

1|01

ψ[0] ψ[1] ψ[2] ψ[3] ψ[4] ψ[5]

ψ0

ψ1

ψ2

ψ3

qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq

qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq

qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq

qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq

qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq

Secuencia codificada: C[k] = [11 10 10 00 01]

MMC (UC3M) Comunicaciones Digitales Codificacion de Canal 49 / 99

Page 56: ECNICAS DE PROTECCI´ ON FRENTE A ERRORES (C ´ Ctsc.uc3m.es/~fernando/Codificacion_canal.pdf · Codigos perfectos´ Codigos de repetici´ on (decisi´ on por mayor´ ´ıa) n impar,

Decodificacion - Algoritmo de Viterbi

Recuperacion de la secuencia mas verosımilEstados inicial/final

Cabecera de referencia (habitualmente ceros “bit flushing”)Salida dura: observacion de bits decididos

Secuencia con el menor numero de bits codificados distintosa la observacionMetrica de rama: distancia de Hamming con la observacion

Salida dura: observacion de q[n]

Secuencia cuyos sımbolos asociados estan a la menordistancia euclıdea de la observacionMetrica de rama: |q[n]− A[n]|2

Hay que tener en cuenta la constelacion que se utiliza parahacer la conversion de las etiquetas de la rejilla basica asımbolos de la constelacion (A[n])

Mejores prestaciones que con salida blanda

MMC (UC3M) Comunicaciones Digitales Codificacion de Canal 50 / 99

Page 57: ECNICAS DE PROTECCI´ ON FRENTE A ERRORES (C ´ Ctsc.uc3m.es/~fernando/Codificacion_canal.pdf · Codigos perfectos´ Codigos de repetici´ on (decisi´ on por mayor´ ´ıa) n impar,

Metricas de rama - Salida dura

Secuencia recibida: R[k] = [11 10 10 00 01]

ψ[n] ψ[n + 1]

ψ0

ψ1

ψ2

ψ3

ssss

ssss

. .........................................................................................................................................................................

...........................................................................................................................................................................................

.

............................................................................................................................................................................................

...............................................................................................................................................................................................................

.

..........................................................

..........................................................

..........................................................

..............

................................

................................

................................

................................

................................

................................

...............

.

..........................................................

..........................................................

..........................................................

.............. ........................................................................................................................................................................

0|00

1|110|01

1|100|11

1|000|10

1|01

ψ[0] ψ[1] ψ[2] ψ[3] ψ[4] ψ[5]

ψ0

ψ1

ψ2

ψ3

ssss

ssss

. .........................................................................................................................................................................

....................................................................................................................................................................................................

.

.....................................................................................................................................................................................................

................................................................................................................................................................................................................................

.

..........................................

..........................................

..........................................

..........................................

.............................

........................

........................

........................

........................

........................

........................

........................

........................

........................

........

.

..........................................

..........................................

..........................................

..........................................

............................. ........................................................................................................................................................................

2

01

10

21

1

ssss

ssss

. .........................................................................................................................................................................

....................................................................................................................................................................................................

.

.....................................................................................................................................................................................................

................................................................................................................................................................................................................................

.

..........................................

..........................................

..........................................

..........................................

.............................

........................

........................

........................

........................

........................

........................

........................

........................

........................

........

.

..........................................

..........................................

..........................................

..........................................

............................. ........................................................................................................................................................................

1

12

01

10

2

ssss

ssss

. .........................................................................................................................................................................

....................................................................................................................................................................................................

.

.....................................................................................................................................................................................................

................................................................................................................................................................................................................................

.

..........................................

..........................................

..........................................

..........................................

.............................

........................

........................

........................

........................

........................

........................

........................

........................

........................

........

.

..........................................

..........................................

..........................................

..........................................

............................. ........................................................................................................................................................................

1

12

01

10

2

ssss

ssss

. .........................................................................................................................................................................

....................................................................................................................................................................................................

.

.....................................................................................................................................................................................................

................................................................................................................................................................................................................................

.

..........................................

..........................................

..........................................

..........................................

.............................

........................

........................

........................

........................

........................

........................

........................

........................

........................

........

.

..........................................

..........................................

..........................................

..........................................

............................. ........................................................................................................................................................................

0

21

12

01

1

ssss

ssss

. .........................................................................................................................................................................

....................................................................................................................................................................................................

.

.....................................................................................................................................................................................................

................................................................................................................................................................................................................................

.

..........................................

..........................................

..........................................

..........................................

.............................

........................

........................

........................

........................

........................

........................

........................

........................

........................

........

.

..........................................

..........................................

..........................................

..........................................

............................. ........................................................................................................................................................................

1

10

21

12

0

qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq

qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq

qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq

qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq

qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq

MMC (UC3M) Comunicaciones Digitales Codificacion de Canal 51 / 99

Page 58: ECNICAS DE PROTECCI´ ON FRENTE A ERRORES (C ´ Ctsc.uc3m.es/~fernando/Codificacion_canal.pdf · Codigos perfectos´ Codigos de repetici´ on (decisi´ on por mayor´ ´ıa) n impar,

Metricas acumuladas en cada estado (Viterbi)

ψ[1] ψ[2] ψ[3] ψ[4] ψ[5]ψ3 – 0 2/3 3/4 3/2ψ2 – 2 0/5 3/4 0/0ψ1 0 3 3/4 0/5 4/3ψ0 2 3 3/4 2/3 4/3

Si no hay errores: camino con metrica acumulada nula

MMC (UC3M) Comunicaciones Digitales Codificacion de Canal 52 / 99

Page 59: ECNICAS DE PROTECCI´ ON FRENTE A ERRORES (C ´ Ctsc.uc3m.es/~fernando/Codificacion_canal.pdf · Codigos perfectos´ Codigos de repetici´ on (decisi´ on por mayor´ ´ıa) n impar,

Metricas de rama - Salida blanda

Secuencia recibida: q[n] =[

1,10,9

] [1,1−0,8

] [0,75−0,6

] [−1,2−1,1

] [−0,71,2

]

ψ[n] ψ[n + 1]

ψ0

ψ1

ψ2

ψ3

ssss

ssss

. .........................................................................................................................................................................

...........................................................................................................................................................................................

.

............................................................................................................................................................................................

...............................................................................................................................................................................................................

.

..........................................................

..........................................................

..........................................................

..............

................................

................................

................................

................................

................................

................................

...............

.

..........................................................

..........................................................

..........................................................

.............. ........................................................................................................................................................................

0|00

1|110|01

1|100|11

1|000|10

1|01

s

s

s

s+1−1

+1

−1

00

01

10

11

ψ[0] ψ[1] ψ[2] ψ[3] ψ[4] ψ[5]

ψ0

ψ1

ψ2

ψ3

ssss

ssss

. .........................................................................................................................................................................

....................................................................................................................................................................................................

.

.....................................................................................................................................................................................................

................................................................................................................................................................................................................................

.

..........................................

..........................................

..........................................

..........................................

.............................

........................

........................

........................

........................

........................

........................

........................

........................

........................

........

.

..........................................

..........................................

..........................................

..........................................

............................. ........................................................................................................................................................................

8,02

0,024,42

3,620,02

8,023,62

4,42

ssss

ssss

. .........................................................................................................................................................................

....................................................................................................................................................................................................

.

.....................................................................................................................................................................................................

................................................................................................................................................................................................................................

.

..........................................

..........................................

..........................................

..........................................

.............................

........................

........................

........................

........................

........................

........................

........................

........................

........................

........

.

..........................................

..........................................

..........................................

..........................................

............................. ........................................................................................................................................................................

4,45

3,257,65

0,053,25

4,450,05

7,65

ssss

ssss

. .........................................................................................................................................................................

....................................................................................................................................................................................................

.

.....................................................................................................................................................................................................

................................................................................................................................................................................................................................

.

..........................................

..........................................

..........................................

..........................................

.............................

........................

........................

........................

........................

........................

........................

........................

........................

........................

........

.

..........................................

..........................................

..........................................

..........................................

............................. ........................................................................................................................................................................

3,22

2,625,62

0,222,62

3,220,22

5,62

ssss

ssss

. .........................................................................................................................................................................

....................................................................................................................................................................................................

.

.....................................................................................................................................................................................................

................................................................................................................................................................................................................................

.

..........................................

..........................................

..........................................

..........................................

.............................

........................

........................

........................

........................

........................

........................

........................

........................

........................

........

.

..........................................

..........................................

..........................................

..........................................

............................. ........................................................................................................................................................................

0,05

9,254,45

4,859,25

0,054,85

4,45

ssss

ssss

. .........................................................................................................................................................................

....................................................................................................................................................................................................

.

.....................................................................................................................................................................................................

................................................................................................................................................................................................................................

.

..........................................

..........................................

..........................................

..........................................

.............................

........................

........................

........................

........................

........................

........................

........................

........................

........................

........

.

..........................................

..........................................

..........................................

..........................................

............................. ........................................................................................................................................................................

4,93

2,930,13

7,732,93

4,937,73

0,13

qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq

qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq

qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq

qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq

qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq

MMC (UC3M) Comunicaciones Digitales Codificacion de Canal 53 / 99

Page 60: ECNICAS DE PROTECCI´ ON FRENTE A ERRORES (C ´ Ctsc.uc3m.es/~fernando/Codificacion_canal.pdf · Codigos perfectos´ Codigos de repetici´ on (decisi´ on por mayor´ ´ıa) n impar,

Metricas acumuladas en cada estado (Viterbi)

ψ[1] ψ[2] ψ[3] ψ[4] ψ[5]ψ3 – 0,07 5,69/11,49 10,14/15,74 10,27/8,07ψ2 – 7,67 0,29/16,89 10,54/15,34 17,87/0,47ψ1 0,02 11,27 10,89/15,09 0,34/19,54 15,47/12,47ψ0 8,02 12,47 10,29/15,69 9,54/10,34 13,47/14,47

MMC (UC3M) Comunicaciones Digitales Codificacion de Canal 54 / 99

Page 61: ECNICAS DE PROTECCI´ ON FRENTE A ERRORES (C ´ Ctsc.uc3m.es/~fernando/Codificacion_canal.pdf · Codigos perfectos´ Codigos de repetici´ on (decisi´ on por mayor´ ´ıa) n impar,

Prestaciones

Salida dura

Pe ≈ c ·n·z∑i=t

(n · z

i

)· εi · (1− ε)n·z−i

DHmin: mınima distancia de Hamming entre salidas para

secuencias distintasz: longitud del evento erroneo de distancia mınimat =

⌊DH

min−12

⌋(capacidad de correccion sobre n · z bits)

ε: probabilidad de error de bit del sistema (BER)Salida blanda

Pe ≈ c · Q

(De

min

2√

N0/2

)De

min: mınima distancia euclıdea entre salidas parasecuencias distintas

MMC (UC3M) Comunicaciones Digitales Codificacion de Canal 55 / 99

Page 62: ECNICAS DE PROTECCI´ ON FRENTE A ERRORES (C ´ Ctsc.uc3m.es/~fernando/Codificacion_canal.pdf · Codigos perfectos´ Codigos de repetici´ on (decisi´ on por mayor´ ´ıa) n impar,

Calculo de DHmin

Comparacion con la secuencia de todo ceros

ψ[n] ψ[n + 1]

ψ0

ψ1

ψ2

ψ3

ssss

ssss

. .........................................................................................................................................................................

...........................................................................................................................................................................................

.

............................................................................................................................................................................................

...............................................................................................................................................................................................................

.

..........................................................

..........................................................

..........................................................

..............

................................

................................

................................

................................

................................

................................

...............

.

..........................................................

..........................................................

..........................................................

.............. ........................................................................................................................................................................

0|00

1|110|01

1|100|11

1|000|10

1|01

ψ0

ψ1

ψ2

ψ3

rrrr

rrrr

.

..........................................................................................................................................................

2

2

rrrr

.

...........................................................................................................................................................

..................................................................................................................................................................................................................

1

1

3

3

rrrr. ...............................................................................................................................

..................................

..................................

..................................

..................................

..................

.

..................................

..................................

..................................

..................................

...................

........................

........................

........................

........................

........................

........................

........................

........................

..................

1

1

0

2

4

4

3

5

DHmin = 5

z = 3

MMC (UC3M) Comunicaciones Digitales Codificacion de Canal 56 / 99

Page 63: ECNICAS DE PROTECCI´ ON FRENTE A ERRORES (C ´ Ctsc.uc3m.es/~fernando/Codificacion_canal.pdf · Codigos perfectos´ Codigos de repetici´ on (decisi´ on por mayor´ ´ıa) n impar,

TEMA 5

TECNICAS DE PROTECCION FRENTE A ERRORES

(CODIGOS DE REJILLA (TCM))

MMC (UC3M) Comunicaciones Digitales Codificacion de Canal 57 / 99

Page 64: ECNICAS DE PROTECCI´ ON FRENTE A ERRORES (C ´ Ctsc.uc3m.es/~fernando/Codificacion_canal.pdf · Codigos perfectos´ Codigos de repetici´ on (decisi´ on por mayor´ ´ıa) n impar,

Codigos de rejilla

Conocidos tambien como codigos TCMTrellis Coded Modulation

Diseno conjunto de codigos convolucionales y delcodificador del transmisorUso eficiente del ancho de banda de un canal

La redundancia se introduce aumentando el orden de laconstelacion

Orden de la constelacion acorde al tamano de la salidacodificada

Posibilidad de tasas relativamente altas mediante las“transiciones paralelo”

MMC (UC3M) Comunicaciones Digitales Codificacion de Canal 58 / 99

Page 65: ECNICAS DE PROTECCI´ ON FRENTE A ERRORES (C ´ Ctsc.uc3m.es/~fernando/Codificacion_canal.pdf · Codigos perfectos´ Codigos de repetici´ on (decisi´ on por mayor´ ´ıa) n impar,

Codigos de rejilla - Definiciones

Convolucionalknp, nnp

...knp ... nnp

...kp np

Constelacionn = np + nnp

bits/sımbolo

k entradaskp transiciones “paralelo” (sin proteger)knp transiciones “no paralelo” (protegidas)

n salidasnp = kp transiciones “paralelo” (sin proteger)nnp transiciones “no paralelo” (protegidas)

Constelacion: 2n sımbolos (n = np + nnp bits/sımbolo)MMC (UC3M) Comunicaciones Digitales Codificacion de Canal 59 / 99

Page 66: ECNICAS DE PROTECCI´ ON FRENTE A ERRORES (C ´ Ctsc.uc3m.es/~fernando/Codificacion_canal.pdf · Codigos perfectos´ Codigos de repetici´ on (decisi´ on por mayor´ ´ıa) n impar,

Codigos de rejilla - Asignacion de bits

Reglas de diseno: reglas de UngerboeckAsignacion para minimizar la probabilidad de errorDivision de la constelacion + asignacion de bits

Division de la constelacion en subconstelacionesDivision sucesiva aumentando la distancia mınimaSımbolos por subconstelacion: 2np

Numero de subconstelaciones: 2nnp

Asignacion de bitsTransiciones paralelo: seleccion de un sımbolo dentro de lasubconstelacion

Proteccion “fısica” sobre la constelacion (Gray)Transiciones no paralelo: seleccion de una subconstelacion

Proteccion mediante codigo convolucionalMaxima distancia: ramas que salen de o llegan a un mismoestadoEquiprobabilidad en la asignacion de sımbolos

MMC (UC3M) Comunicaciones Digitales Codificacion de Canal 60 / 99

Page 67: ECNICAS DE PROTECCI´ ON FRENTE A ERRORES (C ´ Ctsc.uc3m.es/~fernando/Codificacion_canal.pdf · Codigos perfectos´ Codigos de repetici´ on (decisi´ on por mayor´ ´ıa) n impar,

Ejemplo: kp = 1, knp = 1, nnp = 2, 8-PSK

Codigo de tasa 2/3Una transicion en paraleloConvolucional de tasa 1/2 (Convolucional Ejemplo D)

Convolucional1/2

Constelacion3 bits/sımbolo

ψ[n] ψ[n + 1]

ψ0

ψ1

ψ2

ψ3

ssss

ssss

. .........................................................................................................................................................................

...........................................................................................................................................................................................

.

............................................................................................................................................................................................

...............................................................................................................................................................................................................

.

..........................................................

..........................................................

..........................................................

..............

................................

................................

................................

................................

................................

................................

...............

.

..........................................................

..........................................................

..........................................................

.............. ........................................................................................................................................................................

0|00

1|110|01

1|100|11

1|000|10

1|01

Constelacion con 3 bits por sımbolo: 8 sımbolos8-PSK

MMC (UC3M) Comunicaciones Digitales Codificacion de Canal 61 / 99

Page 68: ECNICAS DE PROTECCI´ ON FRENTE A ERRORES (C ´ Ctsc.uc3m.es/~fernando/Codificacion_canal.pdf · Codigos perfectos´ Codigos de repetici´ on (decisi´ on por mayor´ ´ıa) n impar,

Ejemplo: Division de la constelacion

s s sssss s

s c scscs c

B0 c s cscsc s

B1

s c ccscc c

C0 c c scccs c

C1 c s cccsc c

C2 c c csccc s

C3

MMC (UC3M) Comunicaciones Digitales Codificacion de Canal 62 / 99

Page 69: ECNICAS DE PROTECCI´ ON FRENTE A ERRORES (C ´ Ctsc.uc3m.es/~fernando/Codificacion_canal.pdf · Codigos perfectos´ Codigos de repetici´ on (decisi´ on por mayor´ ´ıa) n impar,

Ejemplo: Asignacion de las transiciones no paralelo

ψ[n] ψ[n + 1]

ψ0

ψ1

ψ2

ψ3

xxxx

xxxx

. ................................................................................................................................................................................................................................................................................................................................................

......................................................................................................................................................................................................................................................................................................................................................................................

.

.......................................................................................................................................................................................................................................................................................................................................................................................

.............................................................................................................................................................................................................................................................................................................................................................................................................................

.

..........................................................

..........................................................

..........................................................

..........................................................

..........................................................

..........................................................

...........................

................................

................................

................................

................................

................................

................................

................................

................................

................................

................................

................................

................................

.............................

.

..........................................................

..........................................................

..........................................................

..........................................................

..........................................................

..........................................................

........................... ...............................................................................................................................................................................................................................................................................................................................................

C0

C1

C2

C3

C1

C0

C3

C2

MMC (UC3M) Comunicaciones Digitales Codificacion de Canal 63 / 99

Page 70: ECNICAS DE PROTECCI´ ON FRENTE A ERRORES (C ´ Ctsc.uc3m.es/~fernando/Codificacion_canal.pdf · Codigos perfectos´ Codigos de repetici´ on (decisi´ on por mayor´ ´ıa) n impar,

Asignacion (convolucional D)

ψ[n] ψ[n + 1]

ψ0

ψ1

ψ2

ψ3

ssss

ssss

. .........................................................................................................................................................................

...........................................................................................................................................................................................

.

............................................................................................................................................................................................

...............................................................................................................................................................................................................

.

..........................................................

..........................................................

..........................................................

..............

................................

................................

................................

................................

................................

................................

...............

.

..........................................................

..........................................................

..........................................................

.............. ........................................................................................................................................................................

0|00

1|110|01

1|100|11

1|000|10

1|01

ψ[n] ψ[n + 1]

ψ0

ψ1

ψ2

ψ3

ssss

ssss

. .........................................................................................................................................................................

...........................................................................................................................................................................................

.

............................................................................................................................................................................................

...............................................................................................................................................................................................................

.

..........................................................

..........................................................

..........................................................

..............

................................

................................

................................

................................

................................

................................

...............

.

..........................................................

..........................................................

..........................................................

.............. ........................................................................................................................................................................

C0

C1C2

C3C1

C0C3

C2

s sssss

ss 0|00

1|01

0|10

0|11

1|10

0|11

1|000|01

MMC (UC3M) Comunicaciones Digitales Codificacion de Canal 64 / 99

Page 71: ECNICAS DE PROTECCI´ ON FRENTE A ERRORES (C ´ Ctsc.uc3m.es/~fernando/Codificacion_canal.pdf · Codigos perfectos´ Codigos de repetici´ on (decisi´ on por mayor´ ´ıa) n impar,

Prestaciones

Distancia mınima del codigo - La mınima de:Distancia mınima paraleloEjemplo anterior (constelacion normalizada): dp = 2

Mınima distancia entre puntos de las subconstelacionesDistancia mınima no paralelo

Distancia del convolucional medida sobre lassubconstelacionesEjemplo anterior

dnp =√

d2(C0,C1) + d2(C0,C2) + d2(C0,C1) = 2,14

Ganancia de codificacionComparacion con la constelacion equivalente sin codificar(misma velocidad de transmision efectiva)Ejemplo anterior: 4-PSK

G =ESC

b

ETCMb·(dTCM

min

)2(dSC

min

)2 = 2 (3 dB)

MMC (UC3M) Comunicaciones Digitales Codificacion de Canal 65 / 99

Page 72: ECNICAS DE PROTECCI´ ON FRENTE A ERRORES (C ´ Ctsc.uc3m.es/~fernando/Codificacion_canal.pdf · Codigos perfectos´ Codigos de repetici´ on (decisi´ on por mayor´ ´ıa) n impar,

TEMA 5

TECNICAS DE PROTECCION FRENTE A ERRORES

(CODIGOS BCH)

MMC (UC3M) Comunicaciones Digitales Codificacion de Canal 66 / 99

Page 73: ECNICAS DE PROTECCI´ ON FRENTE A ERRORES (C ´ Ctsc.uc3m.es/~fernando/Codificacion_canal.pdf · Codigos perfectos´ Codigos de repetici´ on (decisi´ on por mayor´ ´ıa) n impar,

Campos finitos (Campos de Galois)

Definicion de campoConjunto de elementos sobre el que es posible definir dosoperaciones, suma (resta) y producto (division, excepto porel elemento nulo), y dos elementos distinguidos, elementonulo (0), elemento unidad (1), que cumplen las siguientespropiedades:

AsociativaConmutativaDistributiva

Campo finitoNumero finito, q, de elementos del campo: Orden q, GF(q)Orden primo: pn con p primo y n enteroConstruccion:

Polinomio irreducible de grado n y coeficientes en GF(p)

MMC (UC3M) Comunicaciones Digitales Codificacion de Canal 67 / 99

Page 74: ECNICAS DE PROTECCI´ ON FRENTE A ERRORES (C ´ Ctsc.uc3m.es/~fernando/Codificacion_canal.pdf · Codigos perfectos´ Codigos de repetici´ on (decisi´ on por mayor´ ´ıa) n impar,

Campos finitos GF(2m)

Modelo para grupos de m bits (m-tuplas)Representaciones de los miembros del campo

Polinomios en α de grado m− 1Tupla Polinomio000 0001 1010 α011 α+ 1

Tupla Polinomio100 α2

101 α2 + 1110 α2 + α111 α2 + α+ 1

Potencia de α (αj, para j = −∞, 0, 1, · · · ,m− 2)Restriccion sobre αm para el producto (consistencia)

Polinomio generadorCoeficientes binarios (p = 2)Ejemplo: p(x) = x3 + x + 1Restriccion: α3 = α+ 1

MMC (UC3M) Comunicaciones Digitales Codificacion de Canal 68 / 99

Page 75: ECNICAS DE PROTECCI´ ON FRENTE A ERRORES (C ´ Ctsc.uc3m.es/~fernando/Codificacion_canal.pdf · Codigos perfectos´ Codigos de repetici´ on (decisi´ on por mayor´ ´ıa) n impar,

Definiciones

Polinomio irreduciblePolinomio que no se puede factorizar

Polinomio primitivop(x) de grado m es primitivo si el menor entero n para el quep(x) divide a xn − 1 es n = 2m − 1

Polinomio minimal de αi

Polinomio de menor grado con αi como raız (polinomio concoeficientes binarios)

MMC (UC3M) Comunicaciones Digitales Codificacion de Canal 69 / 99

Page 76: ECNICAS DE PROTECCI´ ON FRENTE A ERRORES (C ´ Ctsc.uc3m.es/~fernando/Codificacion_canal.pdf · Codigos perfectos´ Codigos de repetici´ on (decisi´ on por mayor´ ´ıa) n impar,

Polinomio generador

Polinomio irreduciblePolinomio primitivoPolinomio de grado mα es una raız del polinomio→ restriccion sobre αm

p(α) = α3 + α + 1 = 0→ α3 = α + 1

Polinomio primitivo→ restriccion de periodicidadp(x) divide a xn − 1 (con n = 2m − 1)αn = 1 = α0

Periodicidad exponencial de perıodo nElementos del campo

Resto del cociente con p(α) (polinomio)Ejemplo: α3 + α2 + α+ 1 = (α+ 1) + α2 + α+ 1 = α2

α3 + α2 + α + 1 = (α3 + α + 1)× 1 + α2

MMC (UC3M) Comunicaciones Digitales Codificacion de Canal 70 / 99

Page 77: ECNICAS DE PROTECCI´ ON FRENTE A ERRORES (C ´ Ctsc.uc3m.es/~fernando/Codificacion_canal.pdf · Codigos perfectos´ Codigos de repetici´ on (decisi´ on por mayor´ ´ıa) n impar,

Adjudicacion de αj a una tupla

Utilizacion de la restriccion del polinomio generador

αj Polinomio Tuplaα−∞ = 0 0 000α0 = 1 1 001α1 α 010α2 α2 100α3 α + 1 011α4 α · (α3) = α2 + α 110α5 α3 + α2 = α2 + α + 1 111α6 α3 + α2 + α = α + 1 + α2 + α = α2 + 1 101α7 α3 + α = α + 1 + α = 1

Periodicidad de perıodo n = 2m − 1:

αn = α0 ←(αk = αk %n)

MMC (UC3M) Comunicaciones Digitales Codificacion de Canal 71 / 99

Page 78: ECNICAS DE PROTECCI´ ON FRENTE A ERRORES (C ´ Ctsc.uc3m.es/~fernando/Codificacion_canal.pdf · Codigos perfectos´ Codigos de repetici´ on (decisi´ on por mayor´ ´ıa) n impar,

Polinomios minimales - Cosets ciclotomicos

Coset ciclotomicoConjunto que agrupa a las raices que comparten lospolinomios minimalesExponentes de las raices agrupadas en el coset Ci

i, 2i, 22i, · · · , 2zi−1izi: mınimo valor que cumple α2zi i = αi

Raıces Polinomio minimal0 x

C0 = 1 x + 1C1 = α, α2, α4 x3 + x + 1C3 = α3, α6, α5 x3 + x2 + 1

Raıces de xn − 1: α0 (1),α, α2, · · · , αn−1

x7 − 1 = (x− 1) · (x− α) · · · (x− α6)

Producto de los polinomios minimales de los cosetsx7 − 1 = (x + 1) · (x3 + x + 1) · (x3 + x2 + 1)

MMC (UC3M) Comunicaciones Digitales Codificacion de Canal 72 / 99

Page 79: ECNICAS DE PROTECCI´ ON FRENTE A ERRORES (C ´ Ctsc.uc3m.es/~fernando/Codificacion_canal.pdf · Codigos perfectos´ Codigos de repetici´ on (decisi´ on por mayor´ ´ıa) n impar,

Formacion de los cosets (ejemplo)

Coset C0

C0 = 1, 12 = 1

Coset C1

C1 =α, α2, α4 , α8 = α

Coset C2: α2 ya esta incluido en C1

Coset C3

C3 =α3, α6, α12 = α5 , α24 = α3

MMC (UC3M) Comunicaciones Digitales Codificacion de Canal 73 / 99

Page 80: ECNICAS DE PROTECCI´ ON FRENTE A ERRORES (C ´ Ctsc.uc3m.es/~fernando/Codificacion_canal.pdf · Codigos perfectos´ Codigos de repetici´ on (decisi´ on por mayor´ ´ıa) n impar,

Formacion de los polinomios binarios

Agrupamiento de raıces distintas a todas las de un coset

p(x) = (x− α) · (x− α2) = x2 − (α + α2) · x + α3

Polinomio con coeficientes no binariosPolinomio minimal de C1

p1(x) =(x− α) · (x− α2) · (x− α4)

=(x2 − (α + α2) · x + α3) · (x− α4)

=x3 − (α + α2 + α4) · x2 + (α3 + α5 + α6) · x− α7

=x3 + (α + α2 + α2 + α) · x2

+ (α + 1 + α2 + α + 1 + α2 + 1) · x− 1

=x3 + x + 1

MMC (UC3M) Comunicaciones Digitales Codificacion de Canal 74 / 99

Page 81: ECNICAS DE PROTECCI´ ON FRENTE A ERRORES (C ´ Ctsc.uc3m.es/~fernando/Codificacion_canal.pdf · Codigos perfectos´ Codigos de repetici´ on (decisi´ on por mayor´ ´ıa) n impar,

Codigos BCH

Acronimo de Bose, Chaudhuri y HocquenghemCodigos versatiles y constructivos

Cualquier distancia mınimaCualquier longitud de codigo impar (n impar)Permite el diseno de codigos no binariosCasos particulares interesantes

HammingGolayReed Solomon (no binario)

Algoritmo eficiente de decodificacionPrincipio basico para su diseno

Teorema BCH

MMC (UC3M) Comunicaciones Digitales Codificacion de Canal 75 / 99

Page 82: ECNICAS DE PROTECCI´ ON FRENTE A ERRORES (C ´ Ctsc.uc3m.es/~fernando/Codificacion_canal.pdf · Codigos perfectos´ Codigos de repetici´ on (decisi´ on por mayor´ ´ıa) n impar,

Teorema BCH (simplificado) - Diseno de codigos BCH

Un codigo cıclico C(k, n) con un polinimio generador g(x)que tiene δ − 1 raıces consecutivas en un campo GF(2m),con el menor m tal que 2m − 1 sea multiplo de n, es uncodigo cıclico que garantiza un distancia mınima δ

dmin ≥ δ

Codigo con capacidad de correccion de t erroresDistancia mınima dmin ≥ 2 · t + 1Buscar un entero m tal que n = 2m − 1 (o n divisor de 2m − 1)Agrupar dmin − 1 raıces consecutivas en GF(2m)

Obtencion del polinomio generador g(x)Utilizacion de los polinomios minimales→ coeficientes binariosTamano del codigo: grado(g(x))=n− k

MMC (UC3M) Comunicaciones Digitales Codificacion de Canal 76 / 99

Page 83: ECNICAS DE PROTECCI´ ON FRENTE A ERRORES (C ´ Ctsc.uc3m.es/~fernando/Codificacion_canal.pdf · Codigos perfectos´ Codigos de repetici´ on (decisi´ on por mayor´ ´ıa) n impar,

Ejemplo: n = 63

m = 6Polinomio generador p(x) = x6 + x + 1Cosets y polinomios minimales

Elementos del coset Polinomio minimal

C0 =α0 = 1

p0(x) = x + 1

C1 =α1, α2, α4, α8, α16, α32

p1(x) = x6 + x + 1

C3 =α3, α6, α12, α24, α33, α48

p3(x) = x6 + x4 + x2 + x + 1

C5 =α5, α10, α17, α20, α34, α40

p5(x) = x6 + x5 + x2 + x + 1

C7 =α7, α14, α28, α35, α49, α56

p7(x) = x6 + x3 + 1

C9 =α9, α18, α36

p9(x) = x3 + x21

C11 =α11, α22, α25, α37, α44, α50

p11(x) = x6 + x5 + x3 + x2 + 1

C13 =α13, α19, α26, α38, α41, α52

p13(x) = x6 + x4 + x3 + x + 1

C15 =α15, α30, α39, α51, α57, α60

p15(x) = x6 + x5 + x4 + x2 + 1

C21 =α21, α42

p21(x) = x2 + x + 1

C23 =α23, α29, α43, α46, α53, α58

p23(x) = x6 + x5 + x4 + x + 1

C27 =α27, α45, α54

p27(x) = x3 + x + 1

C31 =α31, α47, α55, α59, α61, α62

p31(x) = x6 + x5 + 1

MMC (UC3M) Comunicaciones Digitales Codificacion de Canal 77 / 99

Page 84: ECNICAS DE PROTECCI´ ON FRENTE A ERRORES (C ´ Ctsc.uc3m.es/~fernando/Codificacion_canal.pdf · Codigos perfectos´ Codigos de repetici´ on (decisi´ on por mayor´ ´ıa) n impar,

Polinomio generador para t = 3 errores

Distancia mınima: dmin = 7Raıces necesarias: 6 raıces consecutivas

α, α2, α3, α4, α5 y α6

Polinomios minimales necesariosp1(x) (α, α2, α4), p3(x) (α3, α6), p5(x) (α5)

Polinomio generador g(x)

p(x) =p1(x) · p3(x) · p5(x)

=x18 + x17 + x16 + x15 + x9 + x7 + x6 + x3 + x2 + x + 1

Caracterısticas del codigok = 63− 18 = 45Redundancia r = n− k = 18 (numero de raıces)6 raıces “utiles”12 raıces “no utiles”

MMC (UC3M) Comunicaciones Digitales Codificacion de Canal 78 / 99

Page 85: ECNICAS DE PROTECCI´ ON FRENTE A ERRORES (C ´ Ctsc.uc3m.es/~fernando/Codificacion_canal.pdf · Codigos perfectos´ Codigos de repetici´ on (decisi´ on por mayor´ ´ıa) n impar,

Diseno para n 6= 2m − 1

Se puede disenar el codigo si n es un divisor de 2m − 1Ejemplo: n = 21→ 2m−1

n = 3 (para m = 6)n raıces de xn − 1 entre las 2m − 1 raıces de x2m−1 − 1

Cosets Ci tales que i · n2m−1 ∈ Z

Elementos del coset Polinomio minimal

C0 =α0 = 1

p0(x) = x + 1

C1 =α1, α2, α4, α8, α16, α32

p1(x) = x6 + x + 1

C3 =α3, α6, α12, α24, α33, α48

p3(x) = x6 + x4 + x2 + x + 1

C5 =α5, α10, α17, α20, α34, α40

p5(x) = x6 + x5 + x2 + x + 1

C7 =α7, α14, α28, α35, α49, α56

p7(x) = x6 + x3 + 1

C9 =α9, α18, α36

p9(x) = x3 + x2 + 1

C11 =α11, α22, α25, α37, α44, α50

p11(x) = x6 + x5 + x3 + x2 + 1

C13 =α13, α19, α26, α38, α41, α52

p13(x) = x6 + x4 + x3 + x + 1

C15 =α15, α30, α39, α51, α57, α60

p15(x) = x6 + x5 + x4 + x2 + 1

C21 =α21, α42

p21(x) = x2 + x + 1

C23 =α23, α29, α43, α46, α53, α58

p23(x) = x6 + x5 + x4 + x + 1

C27 =α27, α45, α54

p27(x) = x3 + x + 1

C31 =α31, α47, α55, α59, α61, α62

p31(x) = x6 + x5 + 1

MMC (UC3M) Comunicaciones Digitales Codificacion de Canal 79 / 99

Page 86: ECNICAS DE PROTECCI´ ON FRENTE A ERRORES (C ´ Ctsc.uc3m.es/~fernando/Codificacion_canal.pdf · Codigos perfectos´ Codigos de repetici´ on (decisi´ on por mayor´ ´ıa) n impar,

Diseno para n 6= 2m − 1 - Cosets para n

Nuevos cosets C′i a partir de Cj

Dividir los exponentes por 2m−1n

Polinomios par las nuevas raıces

Elementos del coset Polinomio minimalC′0 =

α0 = 1

p′0(x) = x + 1

C′1 =α1, α2, α4, α8, α11, α16

p′1(x) = x6 + x4 + x2 + x + 1

C′3 =α3, α6, α12

p′3(x) = x3 + x2 + 1

C′5 =α5, α10, α13, α17, α19, α20

p′5(x) = x6 + x5 + x4 + x2 + 1

C′7 =α7, α14

p′7(x) = x2 + x + 1

C′9 =α9, α15, α18

p′9(x) = x3 + x + 1

Menos eficiencia que para n = 2m − 1

MMC (UC3M) Comunicaciones Digitales Codificacion de Canal 80 / 99

Page 87: ECNICAS DE PROTECCI´ ON FRENTE A ERRORES (C ´ Ctsc.uc3m.es/~fernando/Codificacion_canal.pdf · Codigos perfectos´ Codigos de repetici´ on (decisi´ on por mayor´ ´ıa) n impar,

Decodificacion de codigos BCH binarios

Decodificacion en tres pasosObtencion del sındromeObtencion del polinomio localizador de errores Λ(x)Encontrar las raıces de Λ(x)

Dos implementaciones algorıtmicasAlgoritmo de Peterson (1960)

Complejidad escala con t2

Algoritmo de Berlekamp (1967)Complejidad escala con t

MMC (UC3M) Comunicaciones Digitales Codificacion de Canal 81 / 99

Page 88: ECNICAS DE PROTECCI´ ON FRENTE A ERRORES (C ´ Ctsc.uc3m.es/~fernando/Codificacion_canal.pdf · Codigos perfectos´ Codigos de repetici´ on (decisi´ on por mayor´ ´ıa) n impar,

Obtencion del sındromeConstruccion del codigo: 2t raıces consecutivas

g(αa) = g(αa+1) = · · · = g(αa+2t−1) = 0

Representacion de la palabra codificada: c(x) = b(x) · g(x)

Para las palabras codigo

c(αa) = c(αa+1) = · · · = c(αa+2t−1) = 0

Representacion polinomica de la palabra recibida

r(x) = r[0] · xn−1 + r[1] · xn−2 + · · ·+ r[n− 1] · 1 =n∑

i=1

r[i− 1] · xn−i

Sındrome j (para la raız αj)

sj = r(αj) =

n∑i=1

r[i− 1] · (αj)n−i =

n∑i=1

e[i− 1] · (αj)n−i = αbj

Polinomio de sındrome

s(x) = sa · x + sa+1 · x2 + · · ·+ sa+2t−1 · x2t

MMC (UC3M) Comunicaciones Digitales Codificacion de Canal 82 / 99

Page 89: ECNICAS DE PROTECCI´ ON FRENTE A ERRORES (C ´ Ctsc.uc3m.es/~fernando/Codificacion_canal.pdf · Codigos perfectos´ Codigos de repetici´ on (decisi´ on por mayor´ ´ıa) n impar,

Ejemplo

Codigo n = 31, k = 21, t = 2 errores

g(x) = x10 + x9 + x8 + x6 + x5 + x3 + 1

Palabra recibidar(x) = x12 + x11 + x8 + x7 + x2

Calculo de los sındromes

s1 = r(α) = α12 + α11 + α8 + α7 + α2 = α7

s2 = r(α2) = (α2)12 + (α2)11 + (α2)8 + (α2)7 + (α2)2 = α14

s3 = r(α3) = (α3)12 + (α3)11 + (α3)8 + (α3)7 + (α3)2 = α8

s4 = r(α4) = (α4)12 + (α4)11 + (α4)8 + (α4)7 + (α4)2 = α28

Polinomio de sındrome

s(x) = α7 · x + α14 · x2 + α8 · x3 + α28 · x4

MMC (UC3M) Comunicaciones Digitales Codificacion de Canal 83 / 99

Page 90: ECNICAS DE PROTECCI´ ON FRENTE A ERRORES (C ´ Ctsc.uc3m.es/~fernando/Codificacion_canal.pdf · Codigos perfectos´ Codigos de repetici´ on (decisi´ on por mayor´ ´ıa) n impar,

Calculo de sındrome mediante matriz de paridad

Calculo de sındromes de ındice impar

s = Hr =

αn−1 αn−2 · · · α 1α3(n−1) α3(n−2) · · · α3 1

...... . . . ...

...αb(n−1) αb(n−2) · · · αb 1

·

r[0]r[1]

...r[n− 1]

b = 2t − 1

Calculo de los sındromes de ındice par

s2·i = (si)2

MMC (UC3M) Comunicaciones Digitales Codificacion de Canal 84 / 99

Page 91: ECNICAS DE PROTECCI´ ON FRENTE A ERRORES (C ´ Ctsc.uc3m.es/~fernando/Codificacion_canal.pdf · Codigos perfectos´ Codigos de repetici´ on (decisi´ on por mayor´ ´ıa) n impar,

Calculo del sındrome mediante division

Factorizacion de g(x) mediante polinomios minimales

g(x) = pa(x) · pb(x) · · · pc(x) = pa(x) · q(x)

Representacion de la palabra recibida

r(x) = c(x) · q(x) · pa(x) + R(x)

Sındrome si (Notacion: pa(x) polinomio minimal de αi)

si = r(αi) = R(αi)

Resto de la division con pa(x) evaluado en αi

Evaluacion eficiente mediante registros de desplazamiento

MMC (UC3M) Comunicaciones Digitales Codificacion de Canal 85 / 99

Page 92: ECNICAS DE PROTECCI´ ON FRENTE A ERRORES (C ´ Ctsc.uc3m.es/~fernando/Codificacion_canal.pdf · Codigos perfectos´ Codigos de repetici´ on (decisi´ on por mayor´ ´ıa) n impar,

Polinomio localizador de error

Polinomio cuyas raices identifican las posiciones de loserroresPosiciones de los errores: i1, i2, ·iv con (v ≤ t)Polinomio localizador de error

Λ(x) =v∏

j=1

(1− αij · x

)= Λv · xv + Λv−1 · xv−1 + · · ·Λ1 · x + 1

Calculo de los coeficientes del polinomioAlgoritmo de Peterson (solucion matricial)Algoritmo de Berlekamp (solucion iterativa)

MMC (UC3M) Comunicaciones Digitales Codificacion de Canal 86 / 99

Page 93: ECNICAS DE PROTECCI´ ON FRENTE A ERRORES (C ´ Ctsc.uc3m.es/~fernando/Codificacion_canal.pdf · Codigos perfectos´ Codigos de repetici´ on (decisi´ on por mayor´ ´ıa) n impar,

Algoritmo de Peterson

Sistema matricial de ecuacioness1 s2 s3 · · · st

s2 s3 s4 · · · st+1

s3 s4 s5 · · · st+2...

...... . . . ...

st st+1 st+2 · · · s2t−1

·

Λt

Λt−1

Λt−2...

Λ1

=

st+1

st+2

st+3...

s2t

Obtencion de los coeficientes mediante la inversion de lamatrizSi el determinante es nulo

Quitar una fila y una columna (t − 1 errores)Repetir hasta que el determinante sea no nulo

MMC (UC3M) Comunicaciones Digitales Codificacion de Canal 87 / 99

Page 94: ECNICAS DE PROTECCI´ ON FRENTE A ERRORES (C ´ Ctsc.uc3m.es/~fernando/Codificacion_canal.pdf · Codigos perfectos´ Codigos de repetici´ on (decisi´ on por mayor´ ´ıa) n impar,

Algoritmo de Berlekamp

Solucion recursiva al sistema de ecuaciones

st+k =t∑

j=1

Λj · st+k−j

Calculo mas eficiente del polinomioAlgoritmo con t iteraciones

1 Inicializacion: k = 0, Λ(0)(x) = 1, T(0)(x) = 12 Z(k) = coeficiente de x2k+1 de Λ(k)(x) · [1 + s(x)]3 Λ(k+1)(x) = Λ(k)(x) + Z(k) · [xT(k)(x)]4 Actualizar T(k+1)(x)

T(k+1)(x) = x2 · T(k)(x) si Z(k) = 0 o grado(Λ(k)(x)) > kT(k+1)(x) = x · T(k)(x)/Z(k) si Z(k) 6= 0 y grado(Λ(k)(x)) ≤ k

5 k = k + 1. Si k < t volver a 2

MMC (UC3M) Comunicaciones Digitales Codificacion de Canal 88 / 99

Page 95: ECNICAS DE PROTECCI´ ON FRENTE A ERRORES (C ´ Ctsc.uc3m.es/~fernando/Codificacion_canal.pdf · Codigos perfectos´ Codigos de repetici´ on (decisi´ on por mayor´ ´ıa) n impar,

Busqueda de las raıces de Λ(x)

Para un error en la posicion i-esima

Λ(α−i) = 0

Busqueda de Chien: probar con todas las posiciones in− 1→ Λ(α−(n−1)) = 0→ Λ(α) = 0n− 2→ Λ(α−(n−2)) = 0→ Λ(α2) = 0n− j→ Λ(α−(n−j)) = 0→ Λ(αj) = 0

MMC (UC3M) Comunicaciones Digitales Codificacion de Canal 89 / 99

Page 96: ECNICAS DE PROTECCI´ ON FRENTE A ERRORES (C ´ Ctsc.uc3m.es/~fernando/Codificacion_canal.pdf · Codigos perfectos´ Codigos de repetici´ on (decisi´ on por mayor´ ´ıa) n impar,

Codigos Reed Solomon (RS)

Variante no binaria de los codigos BCHCodigos definidos sobre sımbolos de GF(pm)

k→ n sımbolos Reed Solomon (m-tuplas de bits)

Longitud del codigo n = pm − 1Son codigos de distancia mınima dmin = n− k + 1

Valor maximo posible (lımite de Singleton)Diseno del codigo para corregir t errores

Obtencion del polinomio generador g(x) agrupando 2t raıces

g(x) = (x− α) · (x− α2) · · · (x− α2t)

Coeficientes de g(x) en GF(2m) (no binarios)Sımbolos Reed Solomon

No hay raıces inutiles: mınima redundancia

MMC (UC3M) Comunicaciones Digitales Codificacion de Canal 90 / 99

Page 97: ECNICAS DE PROTECCI´ ON FRENTE A ERRORES (C ´ Ctsc.uc3m.es/~fernando/Codificacion_canal.pdf · Codigos perfectos´ Codigos de repetici´ on (decisi´ on por mayor´ ´ıa) n impar,

Codificacion

Mensaje a codificarBloque de k sımbolos RS (m-tuplas de bits)Representacion polinomica b(x)

Grado k − 1Coeficientes en GF(2m) (no binarios)

Palabra codificadaBloque de n sımbolos RSRepresentacion polinomica c(x)

Grado n− 1Coeficientes en GF(2m) (no binarios)

Codificacionc(x) = b(x) · g(x)

MMC (UC3M) Comunicaciones Digitales Codificacion de Canal 91 / 99

Page 98: ECNICAS DE PROTECCI´ ON FRENTE A ERRORES (C ´ Ctsc.uc3m.es/~fernando/Codificacion_canal.pdf · Codigos perfectos´ Codigos de repetici´ on (decisi´ on por mayor´ ´ıa) n impar,

Ejemplo - Codigo RS(5, 7) - t = 1 error

Sımbolos sobre GF(23)(n = 2m − 1, m = 3)

αj Polinomio Tuplaα−∞ = 0 0 000

α0 1 001α1 α 010α2 α2 100α3 α + 1 011α4 α2 + α 110α5 α2 + α + 1 111α6 α2 + 1 101

Polinomio generador

g(x) =(x− α) · (x− α2)

=x2 + (α2 + α) · x + (α + 1)

=x2 + α4 · x + α3

Palabra mensaje b = 110 001 011 010 101

b(x) =(α2 + α) · x4 + 1 · x3 + (α + 1) · x2 + α · x + (α2 + 1) · 1=α4 · x4 + x3 + α3 · x2 + α · x + α6

Codificacion c = 110 011 110 000 111 101 100

c(x) = b(x) · g(x) = α4 · x6 +α3 · x5 +α4 · x4 +α5 · x2 +α6 · x +α2

MMC (UC3M) Comunicaciones Digitales Codificacion de Canal 92 / 99

Page 99: ECNICAS DE PROTECCI´ ON FRENTE A ERRORES (C ´ Ctsc.uc3m.es/~fernando/Codificacion_canal.pdf · Codigos perfectos´ Codigos de repetici´ on (decisi´ on por mayor´ ´ıa) n impar,

Lımite de singleton

Maxima distancia mınima para un cosigo C(k, n)

dmin ≤ n− k + 1

Para codigos RS

dmin = 2t + 1 = grado(g(x)) + 1

Redundancia del codigo

n− k = grado(g(x)) = dmin − 1

Distancia mınimadmin = n− k + 1

MMC (UC3M) Comunicaciones Digitales Codificacion de Canal 93 / 99

Page 100: ECNICAS DE PROTECCI´ ON FRENTE A ERRORES (C ´ Ctsc.uc3m.es/~fernando/Codificacion_canal.pdf · Codigos perfectos´ Codigos de repetici´ on (decisi´ on por mayor´ ´ıa) n impar,

Decodificacion de codigos Reed Solomon

Decodificacion similar a codigos BCH binariosDecodificacion en cuatro pasos

Obtencion del sındromeObtencion del polinomio localizador de errores Λ(x)Encontrar las raıces de Λ(x)Obtencion del polinomio de error e(x)

Implementaciones algorıtmicasAlgoritmo de Peterson-Gorenstein-Zierler

Complejidad escala con t2

Algoritmo de Berlekamp-MasseyComplejidad escala con t

Algoritmo de Forney para magnitudes de error

MMC (UC3M) Comunicaciones Digitales Codificacion de Canal 94 / 99

Page 101: ECNICAS DE PROTECCI´ ON FRENTE A ERRORES (C ´ Ctsc.uc3m.es/~fernando/Codificacion_canal.pdf · Codigos perfectos´ Codigos de repetici´ on (decisi´ on por mayor´ ´ıa) n impar,

Obtencion del sındromeConstruccion del codigo: 2t raıces consecutivas

g(αa) = g(αa+1) = · · · = g(αa+2t−1) = 0

Representacion de la palabra codificada: c(x) = b(x) · g(x)

Para las palabras codigo

c(αa) = c(αa+1) = · · · = c(αa+2t−1) = 0

Representacion polinomica de la palabra recibida

r(x) = r[0] · xn−1 + r[1] · xn−2 + · · ·+ r[n− 1] · 1 =n∑

i=1

r[i− 1] · xn−i

Sındrome j (para la raız αj)

sj = r(αj) =

n∑i=1

r[i− 1] · (αj)n−i =

n∑i=1

e[i− 1] · (αj)n−i = αbj

Polinomio de sındrome

s(x) = sa · x + sa+1 · x2 + · · ·+ sa+2t−1 · x2t

MMC (UC3M) Comunicaciones Digitales Codificacion de Canal 95 / 99

Page 102: ECNICAS DE PROTECCI´ ON FRENTE A ERRORES (C ´ Ctsc.uc3m.es/~fernando/Codificacion_canal.pdf · Codigos perfectos´ Codigos de repetici´ on (decisi´ on por mayor´ ´ıa) n impar,

Polinomio localizador de error

Polinomio cuyas raices identifican las posiciones de loserroresPosiciones de los errores: i1, i2, ·iv con (v ≤ t)Polinomio localizador de error

Λ(x) =v∏

j=1

(1− αij · x

)= Λv · xv + Λv−1 · xv−1 + · · ·Λ1 · x + 1

Polinomio de error: magnitud de los errores

e(x) = ei1 · xi1 + ei2 · xi2 + · · ·+ eit · xit

Calculo de los coeficientes de los polinomiosAlgoritmo de Peterson-Gorensten-Zierler (solucion matricial)Algoritmo de Berlekamp-Massey (solucion iterativa)Algoritmo de Forney (solucion iterativa)

MMC (UC3M) Comunicaciones Digitales Codificacion de Canal 96 / 99

Page 103: ECNICAS DE PROTECCI´ ON FRENTE A ERRORES (C ´ Ctsc.uc3m.es/~fernando/Codificacion_canal.pdf · Codigos perfectos´ Codigos de repetici´ on (decisi´ on por mayor´ ´ıa) n impar,

Algoritmo de Peterson-Gorenstein-Zierler

Sistema matricial de ecuacioness1 s2 s3 · · · st

s2 s3 s4 · · · st+1

s3 s4 s5 · · · st+2...

...... . . . ...

st st+1 st+2 · · · s2t−1

·

Λt

Λt−1

Λt−2...

Λ1

=

st+1

st+2

st+3...

s2t

αi1 αi2 αi3 · · · αiv

(αi1)2

(αi2)2

(αi3)2 · · · (αiv)

2

......

... . . . ...(αi1)

v(αi2)

v(αi3)

v · · · (αiv)v

·

ei1ei2...

eiv

=

s1

s2...sv

MMC (UC3M) Comunicaciones Digitales Codificacion de Canal 97 / 99

Page 104: ECNICAS DE PROTECCI´ ON FRENTE A ERRORES (C ´ Ctsc.uc3m.es/~fernando/Codificacion_canal.pdf · Codigos perfectos´ Codigos de repetici´ on (decisi´ on por mayor´ ´ıa) n impar,

Algoritmo de Berlekamp-Massey

Calculo mas eficiente del polinomio localizador Λ(x)

Algoritmo con t iteraciones1 Inicializacion: k = 0, Λ(0)(x) = 1, T(0)(x) = 1, L(0) = 0

2 k = k + 1 y Z(k) = sk −L∑

i=1

Λ(k−1)i sk−1

3 Si Z(k) = 0, ir a 74 Λ(k)(x) = Λ(k−1)(x) + Z(k) · [T(k)(x)]5 Si 2L ≥ k, ir a 76 L = k − L y T(k)(x) = Λ(k−1)(x)/Z(k)

7 T(k)(x) = x · T(k)(x)8 Si k < t volver a 2

MMC (UC3M) Comunicaciones Digitales Codificacion de Canal 98 / 99

Page 105: ECNICAS DE PROTECCI´ ON FRENTE A ERRORES (C ´ Ctsc.uc3m.es/~fernando/Codificacion_canal.pdf · Codigos perfectos´ Codigos de repetici´ on (decisi´ on por mayor´ ´ıa) n impar,

Algoritmo de Forney

Calculo de los coeficientes del polinomio de error e(x)

Mas eficiente que la solucion matricialObtencion mediante division de polinomios

eik =αik · Ω(α−ik)

Λ′(α−ik)

Polinomio Ω(x)

Ω(x) = Λ(x) · [1 + s(x)]

Polinomio Λ′(x)

Derivada de Λ(x)

MMC (UC3M) Comunicaciones Digitales Codificacion de Canal 99 / 99