c 002y-codigo distancia
DESCRIPTION
códigos digitales!TRANSCRIPT
-
CODIGOSSE ESTABLECE UN CDIGO, CUANDO SE HA DEFINIDO UNA CORRESPONDENCIA UNO A UNO ENTRE ELEMENTOS DE DOS CONJUNTOS
INFORMACIONES COMBINACIONESDE UNOS Y CEROS
CODIGOSBINARIOS
PONDERADOSBCD
BCDNATURAL
LIBRES DETECTORES CORECCTORES
ALFANUMERICOS
EXCESO TRES
BCD CON BITDE PARIDAD
AIKENAUTOCOMPL
PROGRESIVO HAMMING
5, 4, 2, 1 PROGRESIVOCICLICO
-
CODIGOS PONDERADOS BCD
DIGITODECIMAL
NATURALBCD 5 4 2 1
AIKEN2 4 2 1
0 0 0 0 0 0 0 0 0 0 0 0 0
1 0 0 0 1 0 0 0 1 0 0 0 1
2 0 0 1 0 0 0 1 0 0 0 1 0
3 0 0 1 1 0 0 1 1 0 0 1 1
4 0 1 0 0 0 1 0 0 0 1 0 0
5 0 1 0 1 1 0 0 0 1 0 1 1
6 0 1 1 0 1 0 0 1 1 1 0 0
7 0 1 1 1 1 0 1 0 1 1 0 1
8 1 0 0 0 1 0 1 1 1 1 1 0
9 1 0 0 1 1 1 0 0 1 1 1 1
LINEA DESEMETRIA
LA SUMA DE DOS COMBINACIONES SIMETRICASES SIEMPRE NUEVE (9)
-
01
0
1
1
0
0 0
0 1
1 1
1 0
1 0
1 1
0 1
0 0
0
0
0
0
1
1
1
1
0 0
0 1
1 1
1 0
DOSBITS
TRESBITS
CODIGO DE GRAY (CICLICO)
AB
01
11
10
00
10C
X X
X X
X X
X X
SE DICE QUE UN CDIGO ES PROGRESIVO (CONTINUO) SI LAS COMBINACIONES CORRESPONDIENTES A NUMEROS DECIMALES CONSECUTIVOS SON ADYACENTES(CAMBIA UN SOLO BIT) Y ES CICLICO SI LA PRIMERA Y LA ULTIMA SON ADYACENTES
CODIGOS LIBRES CODIGO PROGRESIVOS
-
CONVERSION DE CDIGOSN BINARIO
B2 B1 B0GRAY
G2 G1 G0 0 0 0 0 0 0 0
1 0 0 1 0 0 1
2 0 1 0 0 1 1
3 0 1 1 0 1 0
4 1 0 0 1 1 0
5 1 0 1 1 1 1
6 1 1 0 1 0 1
7 1 1 1 1 0 0
B2B1
01
11
10
00
10B0
1
11
1
B2B1
01
11
10
00
10B0
1
1
1
1
B2B1
01
11
10
00
10B0
1
11
1
G2 = B2 G1=B2B1+B2B1
G1=B2 B1
G0=B1B0+B1B0
G0 = B1 B0G2 = 4,5,6,7
G1 = 2,3,4,5
G0 = 1,2,5,6
G0
G2
G1
B0B1
B2
CIRCUITO DE CONVERSIN
-
DISCO DE GRAYDISCO GRAY
-
DETECCCIN Y CORRECCIN DE ERRORES
10
11
01
oo00
10110100AB
CD
10
11
01
oo00
10110100AB
CD
10
11
o01
o00
10110100AB
CD
dm = 1 dm = 2 dm = 3
4 VARIABLES
dm = 2
oo10
oo11
oo01
oo00
10110100AB
CD
CODIGO DE 3 BITS
I7I6I5I41
I3I2I1I00
10110100A
BC
TODAS LAS COMBINACIONES SON ADYACENTES - NO SE PUEDEN DETECTAR ERRORES
10
11
001
000
10011001000AB
CDE
100101111110
5 VARIABLES
dm = 3
-
CDIGOS DETECTORES DE ERROR
DISTANCIA: N BITS A SER MODIFICADOSEJ.: EN EL CDIGO BCD 8421
TOMEMOS LOS 3 BITS MENOS SIGNIFICATIVOS
PP = 1, 2, 4, 7_ _ _ _ _ _
PP = A B C + A B C + A B C + A B C
_ _ _ _ _ PP = A ( B C + B C ) + A ( B C + B C )
_ _____ PP = A ( B C ) + A ( B C ) PP = A B C
B C D BIT PARIDADN A B C PAR
PPIMPAR
PI0 0 0 0 0 11 0 0 1 1 02 0 1 0 1 03 0 1 1 0 14 1 0 0 1 05 1 0 1 0 16 1 1 0 0 17 1 1 1 1 0
7 1 1 1D = 3
0 0 0 0
DISTANCIA MNIMA DM
1 0 0 1DM = 1
3 0 1 1
-
Ej. Para un cdigo BCD, m = 4 tenemos k = 3 bits de paridad por lo que habr que formar al menos 3 grupos de bits y habr 3 controladores de grupo
Este codigo utiliza control de paridad, pero no sobre la palabra completa que se va a transmitir, sino por grupos de bits. Cada grupo posee un bit de paridad, al existir varios grupos hay varios bits de paridad que deben agregarse a la palabra cdigo para formar la palabra de transmisin.
m + k = T
CODIGO DE HAMMING
m: bits de la palabra cdigo
k: bits de paridad
T: bits de la palabra de transmisin
Segn Hamming se debe cumplir la siguiente inigualdad:
2k = > m + k + 1
-
b0 b1 b2 b3 b4 b5 b6 b7
G2 0 0 0 0 1 1 1 1
G1 0 0 1 1 0 0 1 1
G0 0 1 0 1 0 1 0 1
GRUPOS
= H , matriz deverificacin
de paridad
Otra representacin es la matricial haciendo el producto de la matriz de verificacion de paridad (H) y la de transmisin (T).
[H] [T] = 0
Haciendo b1=k1, b2=k2, b4=k4; b3=m3, b5=m5, b6=m6, b7=m7
REALICEMOS EL PRODUCTO MATRICIAL
Observemos la paridad de los grupos:
G0 b1 b3 b5 b7=0G1 b2 b3 b6 b7=0G2 b4 b5 b6 b7=0
-
=
=======
000
07
16
05
14
13
02
11
101110111765
0101011010004321
mmmkmkk
mmmkmkk
PARIDAD VISUALIZADA EN DIAGRAMA DE CIRCULOS
Si la palabra recibida la representamos por crculos que se interceptan indicando los bits comunes a cada grupo, podemos apreciar que b7 es comun a los tres grupos, que b4 solo esta en el grupo G2 y as sucesivamente.-
PRODUCTO MATRICIAL
A cada termino de la matriz H se le realiza el producto lgico con un termino de la matriz T y luego se realiza la operacin O-Exclusiva entre ellos.EJEMPLO:
0.10.00.11.11.01.11.0 = 0 (Primer fila de H por columna de T)
-
En cada grupo la paridad debe ser parAsi asignamos a los bits b1, b2, y b4 como los bits de paridad (k1, k2, y k4 ) respectivamente, y al resto los bits de informacin (m7, m6, m5, m3).
G0
b6
b7
b1
b3
b2
b5
b4G1 G2
Recordemos la paridad de los grupos:
G0 b1 b3 b5 b7=0G1 b2 b3 b6 b7=0G2 b4 b5 b6 b7=0
-
G0 b1 b3 b5 b7=0 , b1 1 0 0 = 0 , b1 = k1 = 1G1 b2 b3 b6 b7=0 , b2 1 1 0 = 0 , b2 = k2 = 0G2 b4 b5 b6 b7=0 , b4 0 1 0 = 0 , b4 = k4 = 1
A continuacin proponemos el sgte. Ejemplo. Suponemos que la palabra a transmitir es :
0 1 0 1m7 m6 m5 m3
Debemos determinar cual sera el valor de los bits de paridad (k4, k2, k1), para lo cual aplicamos la paridad de los grupos
Entonces la palabra a transmitir estar formada por los mi + ki con lo que:
0 1 0 1 1 0 1m7 m6 m5 k4 m3 k2 k1
Veremos que sucede con esta palabra si se produce un error en la transmisin , y como realizamos la verificacin. Supongamos que el error se produce en m3, y recibimos la siguiente palabra:
-
0 1 0 1 0 0 1m7 m6 m5 k4 m3 k2 k1
Realicemos la paridad por grupos:
G2 k4 m5 m6 m7=0 , 1 0 1 0 = 0 bits correctosG1 k2 m3 m6 m7=0 , 0 0 1 0 = 1 hay un bit incorrectoG0 k1 m3 m5 m7=0 , 1 0 0 0 = 1 hay un bit incorrecto
El bit incorrecto tiene que estar compartido por dos grupos, con lo que los unicos compartidos son m3 y m7. Pero m7 no puede ser pues esta correcto en el grupo 2 (G2)
Por lo tanto es m3. Si le asignamos peso binario a la paridad de los grupos vemos que obtenemos el valor de 0 1 1 = 3
DISEAR UN HAMMING PARA CODIFICAR CINCO BITS DE INFORMACIN (m = 5)
Ejemplo 1:Se necesitan cuatro bits de verificacin (k = 4), ya que para un k = 3, m= 23 3 1 = 4 < 5 . Sin embargo, para k = 4, m = 24 4 1 = 11 > 5.
-
(Podemos obtener un codigo 9,5 ( m + k = 9) eliminando 6 columnas cualesquieras de una matriz de 4x15)
G3 1 1 1 1 1 1 1 0 0 0 0 1 0 0 0
G2 1 1 1 1 0 0 0 1 1 1 0 0 1 0 0
G1 1 1 0 0 1 1 0 1 1 0 1 0 0 1 0
G0 1 0 1 0 1 0 1 1 0 1 1 0 0 0 1
m15 m14 m13 m12 m11 m10 m9 m7 m6 m5 m3 k8 k 4 k 2 k 1
La ultima fila corresponde a la codificacin de cada columna. El bit de menorpeso de la columna es el de la ultima fila (G0)
Determinemos los bits de paridad ( k8, k4, k2, k1) utilizando el producto matricial, en la cual hemos eliminado los columnas de m3, m5, m6, m7, m9, m10
-
1 1 1 1 1 1 0 0 0
1 1 1 1 0 0 1 0 0
1 1 0 0 1 0 0 1 0
1 0 1 0 1 0 0 0 1
1
0
0
1
0
k8k4k2k1
0
0
0
0
=
1.1 1.0 1.0 1.1 1.0 1.k8 = 0 , por lo que k8 = 01.1 1.0 1.0 1.1 0.0 1.k4 = 0 , por lo que k4 = 01.1 1.0 0.0 0.1 1.0 1.k2 = 0 , por lo que k2 = 11.1 0.0 1.0 0.1 1.0 1.k1 = 0 , por lo que k1 = 1
Observamos que los bits de paridad son : 0 0 1 1
-
Supongamos que se produce un error en la transmisin en el bit m14m15 m14 m13 m12 m11 k8 k4 k2 k1
1 1 0 1 0 0 0 1 1
1 1 1 1 1 1 0 0 0
1 1 1 1 0 0 1 0 0
1 1 0 0 1 0 0 1 0
1 0 1 0 1 0 0 0 1
1
1
0
1
0
0
0
1
1
1
1
1
0
=
VERIFICACION
1.1 1.1 1.0 1.1 1.0 1.0 = 11.1 1.1 1.0 1.1 0.0 1.0 = 11.1 1.1 0.0 0.1 1.0 1.1 = 11.1 0.1 1.0 0.1 1.0 1.1 = 0
Observe que hay tres grupos endonde hay error, y son G3 , G2 , y G1 por lo tanto el error debe ser comun a los tres y el unico bitcomun a los tres es: m14Codifiquemos el resultado de la verificacion = 1 1 1 0 = 14
-
PRACTICOS DE HAMMING
000000011111111G4000111100001111G3011001100110011G2101010101010101G1b1b2b3b4b5b6b7b8b9b10b11b12b13b14b15
CODIGO 9:5
TOMEMOS LOS MENOS SIGNIFICATIVOS: b9, b8, b7, b6, b5,b4,b3, b2,b1
DETERMINEMOS PARIDADES:
000000011111111G4000111100001111G3011001100110011G2101010101010101G1b1b2b3b4b5b6b7b8b9b10b11b12b13b14b15
G1: b9 b7 b5 b3 b1 = 1G2 : b7 b6 b3 b2 = 0G3 : b7 b6 b5 b4 = 0G4 : b9 b8 = 0INTRODUCIR UN ERROR EN b3 Y COMPROBAR
-
000000011111111G4000111100001111G3011001100110011G2101010101010101G1b1b2b3b4b5b6b7b8b9b10b11b12b13b14b15
DETERMINACION DE LOS BIT DE PARIDAD
b1 = 0 , b2 = 0, b4 = 1, b8 = 1
INTRODUCIR UN ERROR EN b11 Y COMPROBAR
REALIZAREMOS OTRA TRANSMISION CON LA MISMA INFORMACION, PERO CON OTRA MATRIZ DE VERIFICACION DE PARIDAD, ELEJIMOS LO SGTE.
INFORMACION A TRANSMITIR : 1 0 0 1 1DETERMINACION DE LOS BIT DE PARIDAD
b1 = 1 , b2 = 1, b4 = 1, b8 = 1
b9 b7 b6 b5 b3
-
IMPLEMENTACION GENERADOR
IMPLEMENTACION GENERADOR M7 M6 M5 K4 M3 K2 K1
K4 = M5 M6 M7
K2 = M3 M6 M7
K1 = M3 M5 M7
DEMOSTRACION
K1 M3 M5 M7 = 0
K1 (K1 M3 M5 M7) = 0 K1
0 M3 M5 M7 = K1
M3 M5 M7 = K1
K1
K2
K4
M7
M6
M5
M7
M6
M3
M7
M5
M3
GENERADOR
DE
INFORMACION
M7
M6
M5
M3