Professional Documents
Culture Documents
Introduo
Este relatrio tem o objetivo de explicar a prtica referente ao cdigo de Hamming, primeiramente dando uma nfase referente ao cdigo propriamente dito, suas matrizes e equaes e por ltimo conhecidos esses parmetros passamos implementao propriamente dita com o uso das portas lgicas adequadas para cada fim. Tentamos na explicao da implementao fazer, na medida do possvel, uma relao com a teoria dos cdigos corretores de erro, seja pelo relacionando as sadas das portas lgicas com as sndromes (colunas da matriz H), seja pelo uso das propriedades das portas lgicas, de modo a ter a maior relao possvel entre teoria e prtica.
UFPE Universidade Federal de Pernambuco Tcnicas Digitais Engenharia Eletrnica 2008.1 Alunos: Paulino Jos de A. Neto / Thiago Pereira Viana Relatrio Prtica 4
Dada a matriz G ao lado, podemos por observao chegar concluso que podemos obter as equaes de paridade do cdigo descritas abaixo:
P2 = d 3 d 2 d 0 P1 = d 3 d 1 d 0 Po = d 2 d 1 d 0
Dada a matriz G ,ao lado podemos adapt-la de modo a t-la de uma forma equivalente como abaixo:,
1 0 0 0 1 1 0 G' = 0 1 0 0 1 0 1 0 0 1 0 0 1 1 0 0 0 1 1 1 1
(II)
(III)
Com essa nova matriz podemos achar a matriz verificadora de paridade, matriz H, o do algoritmo pratico de pegar a matriz transposta das equaes de paridade e justapor a mesma uma matriz identidade de ordem (n-K),no caso ordem 3,como vemos a baixo:
1 1 0 1 1 0 0 H =1 0 1 1 0 1 0 0 1 1 1 0 0 1 (IV)
A partir da matriz acima podemos pegar cada uma das sete colunas e formar um vetor coluna( hi , onde i varia de 1 7), dessa forma temos: 1 h1 = 1 0 1 h2 = 0 1 0 h3 = 1 1 1 h4 = 1 1 1 h5 = 0 0 0 h6 = 1 0 0 h7 = 0 1 (V)
Sabemos que cada uma das matizes coluna acima representa uma sndrome de uma palavra do cdigo.
Partindo das equaes de paridade e supondo que haja apenas um erro por vez em cada digito de informao, podemos ter erros em : d 0 , d 1 , d 2 , d 3 .
P2 = d 3 d 2 d 0 P1 = d 3 d 1 d 0 Po = d 2 d 1 d 0
Se usarmos um artifcio de gerarmos paridades G2,G1,G0 de modo similar P2,P1,P0, , onde G2,G1,G0 so paridades geradas e P2,P1,P0 so paridades recebidas
G2 G1
= d3 d2 d0
= d 3 d1 d 0 Go = d 2 d 1 d 0
G0 P0
Para um erro em d1: G1 P1
Se agora comparamos P2 com G2, G1 com P1 e G0 com P0 termos que essas comparaes sero todas iguais se a palavra binria no tiver erros(supondo que s haja no mximo um erro, j que esse cdigo s detecta dois erro e corrigi um erros no simultaneamente ). Agora supondo um erro em d 1 teremos que apenas as h paridades que tiverem o bit d1 seram diferentes das paridades recebidas dessa forma teremos :
G2 = P2
Admitindo que as diferenas sejam tratadas como sendo um e as igualdades sendo zero e 1 fazendo a matriz coluna dos resultados acima teremos: para erro em d0 = 1 h 4 , 1
d1 = 1 h1 , d 2 = 0 h 2 , d 3 = 1 h3 , P0 = 0 h5 , P1 = 1 h6 , P 2 = 0 h7 0 1 1 0 0 1
Com o uso de portas and, poderemos identificar se duas ou trs comparaes derem diferentes ao mesmo tempo: Se (G1 P1 e Go Po ) h1 houve erro em d1 Se (G2 P2 e Go Po e G1 P1) h4 houve erro s em do Se ( G2 P2 e Go Po) h2 houve erro em d2 Se (G2 P2 e G1 P1) h3 houve erro em d3 Se (G2 = P2 e Go Po e G1 = P1) h5 no houve erro nos 4bits de informao Se (G2 = P2 e Go = Po e G1 P1) h6 no houve erro nos 4bits de informao Se (G2 P2 e Go = Po e G1 = P1) h7 no houve erro nos 4bits de informao Finalmente com conhecimento de que a porta lgica ou exclusivo tem como sada 1 se as entradas forem diferentes e zero se forem iguais ,alm de que elas geram a paridade das entradas e que erros nas paridades recebidas significam que os 4 bits de informao esto corretos, estamos pronto para a partir disso projetar o circuito codificador e decodificador de Hamming.
Codificador de Hamming
Com uso das equaes de paridade j encontrada anteriormente e usando portas xor conforme j U1B explicado teremos o seguinte circuito codificador:
4I 5I O6
P2
d3
9I
U1C
O8
12 I 13 I
U1D
O 11
P1
10 I
d2
1I
U2A
O3
P0
d1
1I
2I
U1A
O3
d0
2I
Nesse circuito um apalavra binrio de 4 bits entra e produz trs bits de paridades que sero acrescido aos quatro bits originais resultando numa palavra binria de sete bits,ou seja, palavra codificada.
Decodificador de Hamming
L18
G1
U1C
9I 10 I O8
U1B
12 I 13 I O 11
d3
V7 0V
1
U2A
L17
G2
1I 2I
O3
d2
V1 0V
1
L16
1
d1
V2 0V
1
CODIFICADOR(GERADOR DE PARIDADES)
U1D U1A
1I 2I O3 4I 5I O6
L15
d0
V3 5V
1 1
G0
L14
1
p2 p1
V4 5V
1
L13 V5 5V
1 1
COMPARAO G1 P1
I9 I 10
L12
8O
U3D
I4 I5 6O I 10 I9 8O I 13 I 12
p0
V6 5V
I 12 I 13 1 1
U4C
COMPARAO G2 P2
U2B
COMPARAO G0 P0
11 O
h6
I2 I1
h7
I5 I4
h5
U5A
3O
U5B
6O
U5C
h6 h5 = h1
U7B
controle
I2 I1
3O
I2 I1
h7 h5 = h3
d1 "CORRIGIDO"
3O
U4D U6D
3O I2 I1
h7 h6 = h3
U5D
d0 "CORRIGIDO"
I2 I1
h7 h6 h5 = h4
U6A
3O
controle controle
U7A
I5 I4
d3 "CORRIGIDO"
I 13 I 12
6O
U6B
11 O I 10 I9
d2"CORRIGIDO"
controle
U6C
L4
1
L3
1
L2
1
L1
1
8O
11 O
Na figura acima est descrito o circuito decodificador de Hamming onde as 5 primeiras portas XOR so responsveis por calcular as paridades geradas, as 3 portas posteriores comparam as paridades geradas com as recebidas, o grupo de portas and responsvel por fazer a combinao das comparaes entre paridades , as trs portas seguinte ao grupo de and tem como funo modificar o resultado das combinaes feitas nas trs primeiras and caso a ultima and tenha como sada um, pelo fato de que se a ultima and tiver como sada um as demais tambm tero ento necessrio alterar as informaes das outras sadas das and para evitar que haja correo em mais posies alm de d0, o grupo final de Xor(portas ligadas ao led) tem a finalidade de caso a de controle entrada seja 0 ela deve manter o a informao caso contrrio ela inverte, em outras palavras ela corrige o bit de entra se o sinal de controle, vindo do circuito for 1, e mantm admitindo que no h erros nos bits de entrada se o controle for 0.
Materiais Usados
Foi usado nesta prtica o seguinte material: 3 CIs XOR 7486 1 CI AND 7408
Portas XOR
Portas AND