Está en la página 1de 31

ELETRÔNICA

DIGITAL
AULA 18 - GERADORES E VERIFICADORES DE PARIDADE
PROFESSORA: EMMANUELLY DIÓGENES
ATENÇÃO

INFORMATIVOS

● Às aulas ficarão disponíveis no


Classroom.
● Fiquem á vontade para tirar dúvidas.
01
GERADORES E
VERIFICADORES DE
PARIDADE
Código Detectores de Erros
● Problema de transmissão de dados binários em canais de comunicações:

1. Devido às interferências do canal de comunicações (e.g ruído), a


sequência binária transmitida pode não ser igual a sequência binária
recebida;
2. Deseja-se um meio de detectar erros;
a. Código de paridade
b. Código de Hamming;
c. Outros códigos.
Código Detectores de Erros: Código de paridade
● O código de paridade consiste em adicionar um bit extra (bit de
paridade), na sequência transmitida;

● Existem dois tipos de paridade:

1. Paridade PAR
a. Quantidade de bits 1 ímpar -> Bit de paridade 1;
b. Quantidade de bits 1 par -> Bit de paridade 0;

2. Paridade ÍMPAR: INVERSO

● O bit de paridade é apendado a sequência original geralmente no final.


Número Paridade ímpar Paridade par
Código de paridade 0000
0001
0010
0011
0100
0101
1. Paridade PAR 0110
a. Quantidade de bits 1
ímpar -> Bit de paridade 0111
1;
1000
b. Quantidade de bits 1 par
-> Bit de paridade 0; 1001
2. Paridade ÍMPAR: INVERSO 1010
1011
1100
1101
1110
1111
Número Paridade ímpar Paridade par
Código de paridade 0000 1 0
0001
0010
0011
0100
0101
1. Paridade PAR 0110
a. Quantidade de bits 1
ímpar -> Bit de paridade 0111
1;
1000
b. Quantidade de bits 1 par
-> Bit de paridade 0; 1001
2. Paridade ÍMPAR: INVERSO 1010
1011
1100
1101
1110
1111
Número Paridade ímpar Paridade par
Código de paridade 0000 1 0
0001 0 1
0010
0011
0100
0101
1. Paridade PAR 0110
a. Quantidade de bits 1
ímpar -> Bit de paridade 0111
1;
1000
b. Quantidade de bits 1 par
-> Bit de paridade 0; 1001
2. Paridade ÍMPAR: INVERSO 1010
1011
1100
1101
1110
1111
Número Paridade ímpar Paridade par
Código de paridade 0000 1 0
0001 0 1
0010 0 1
0011
0100
0101
1. Paridade PAR 0110
a. Quantidade de bits 1
ímpar -> Bit de paridade 0111
1;
b. Quantidade de bits 1 par 1000
-> Bit de paridade 0; 1001
2. Paridade ÍMPAR: INVERSO 1010
1011
1100
1101
1110
1111
Número Paridade ímpar Paridade par
Código de paridade 0000 1 0
0001 0 1
0010 0 1
0011 1 0
0100
0101
1. Paridade PAR 0110
a. Quantidade de bits 1
ímpar -> Bit de paridade 0111
1;
1000
b. Quantidade de bits 1 par
-> Bit de paridade 0; 1001
2. Paridade ÍMPAR: INVERSO 1010
1011
1100
1101
1110
1111
Número Paridade ímpar Paridade par
Código de paridade 0000 1 0
0001 0 1
0010 0 1
0011 1 0
0100 0 1
0101
1. Paridade PAR
0110
a. Quantidade de bits 1
ímpar -> Bit de paridade 0111
1;
b. Quantidade de bits 1 par 1000
-> Bit de paridade 0;
1001
2. Paridade ÍMPAR: INVERSO 1010
1011
1100
1101
1110
1111
Número Paridade ímpar Paridade par
Código de paridade 0000 1 0
0001 0 1
0010 0 1
0011 1 0
0100 0 1
0101 1 0
1. Paridade PAR 0110
a. Quantidade de bits 1
ímpar -> Bit de paridade 0111
1;
b. Quantidade de bits 1 par 1000
-> Bit de paridade 0;
1001
2. Paridade ÍMPAR: INVERSO 1010
1011
1100
1101
1110
1111
Número Paridade ímpar Paridade par
Código de paridade 0000 1 0
0001 0 1
0010 0 1
0011 1 0
0100 0 1
0101 1 0
1. Paridade PAR 0110 1 0
a. Quantidade de bits 1
ímpar -> Bit de paridade 0111
1;
b. Quantidade de bits 1 par 1000
-> Bit de paridade 0; 1001
2. Paridade ÍMPAR: INVERSO 1010
1011
1100
1101
1110
1111
Número Paridade ímpar Paridade par
Código de paridade 0000 1 0
0001 0 1
0010 0 1
0011 1 0
0100 0 1
0101 1 0
1. Paridade PAR 0110 1 0
a. Quantidade de bits 1
ímpar -> Bit de paridade 0111 0 1
1;
b. Quantidade de bits 1 par 1000
-> Bit de paridade 0; 1001
2. Paridade ÍMPAR: INVERSO 1010
1011
1100
1101
1110
1111
Número Paridade ímpar Paridade par
Código de paridade 0000 1 0
0001 0 1
0010 0 1
0011 1 0
0100 0 1
0101 1 0
1. Paridade PAR 0110 1 0
a. Quantidade de bits 1
ímpar -> Bit de paridade 0111 0 1
1;
1000 0 1
b. Quantidade de bits 1 par
-> Bit de paridade 0; 1001
2. Paridade ÍMPAR: INVERSO 1010
1011
1100
1101
1110
1111
Número Paridade ímpar Paridade par
Código de paridade 0000 1 0
0001 0 1
0010 0 1
0011 1 0
0100 0 1
0101 1 0
1. Paridade PAR 0110 1 0
a. Quantidade de bits 1
ímpar -> Bit de paridade 0111 0 1
1;
1000 0 1
b. Quantidade de bits 1 par
-> Bit de paridade 0; 1001 1 0
2. Paridade ÍMPAR: INVERSO 1010
1011
1100
1101
1110
1111
Número Paridade ímpar Paridade par
Código de paridade 0000 1 0
0001 0 1
0010 0 1
0011 1 0
0100 0 1
0101 1 0
1. Paridade PAR 0110 1 0
a. Quantidade de bits 1
ímpar -> Bit de paridade 0111 0 1
1;
1000 0 1
b. Quantidade de bits 1 par
-> Bit de paridade 0; 1001 1 0
2. Paridade ÍMPAR: INVERSO 1010 1 0
1011
1100
1101
1110
1111
Número Paridade ímpar Paridade par
Código de paridade 0000 1 0
0001 0 1
0010 0 1
0011 1 0
0100 0 1
0101 1 0
1. Paridade PAR 0110 1 0
a. Quantidade de bits 1
ímpar -> Bit de paridade 0111 0 1
1;
1000 0 1
b. Quantidade de bits 1 par
-> Bit de paridade 0; 1001 1 0
2. Paridade ÍMPAR: INVERSO 1010 1 0
1011 0 1
1100
1101
1110
1111
Número Paridade ímpar Paridade par
Código de paridade 0000 1 0
0001 0 1
0010 0 1
0011 1 0
0100 0 1
0101 1 0
1. Paridade PAR 0110 1 0
a. Quantidade de bits 1
ímpar -> Bit de paridade 0111 0 1
1;
1000 0 1
b. Quantidade de bits 1 par
-> Bit de paridade 0; 1001 1 0
2. Paridade ÍMPAR: INVERSO 1010 1 0
1011 0 1
1100 1 0
1101
1110
1111
Número Paridade ímpar Paridade par
Código de paridade 0000 1 0
0001 0 1
0010 0 1
0011 1 0
0100 0 1
0101 1 0
1. Paridade PAR 0110 1 0
a. Quantidade de bits 1
ímpar -> Bit de paridade 0111 0 1
1;
1000 0 1
b. Quantidade de bits 1 par
-> Bit de paridade 0; 1001 1 0
2. Paridade ÍMPAR: INVERSO 1010 1 0
1011 0 1
1100 1 0
1101 0 1
1110
1111
Número Paridade ímpar Paridade par
Código de paridade 0000 1 0
0001 0 1
0010 0 1
0011 1 0
0100 0 1
0101 1 0
1. Paridade PAR 0110 1 0
a. Quantidade de bits 1
ímpar -> Bit de paridade 0111 0 1
1;
1000 0 1
b. Quantidade de bits 1 par
-> Bit de paridade 0; 1001 1 0
2. Paridade ÍMPAR: INVERSO 1010 1 0
1011 0 1
1100 1 0
1101 0 1
1110 0 1
1111
Número Paridade ímpar Paridade par
Código de paridade 0000 1 0
0001 0 1
0010 0 1
0011 1 0
0100 0 1
0101 1 0
1. Paridade PAR 0110 1 0
a. Quantidade de bits 1
ímpar -> Bit de paridade 0111 0 1
1;
1000 0 1
b. Quantidade de bits 1 par
-> Bit de paridade 0; 1001 1 0
2. Paridade ÍMPAR: INVERSO 1010 1 0
1011 0 1
1100 1 0
1101 0 1
1110 0 1
1111 1 0
Código de paridade

P = Ē3 Ē2 Ē1 E0 + Ē3 Ē2 E1 Ē0 + Ē3 E2 Ē1 Ē0 + Ē3 E2 E1 E0 +

E3 Ē2 Ē1 Ē0 + E3 Ē2 E1 E0 + E3 E2 Ē1 E0 + E3 E2 E1 Ē0

P = Ē3 Ē2 (Ē1 E0 + E1 Ē0)
Ē3 E2 (Ē1 Ē0 + E1 E0)+
+
E3 Ē2 (Ē1 Ē0 + E1 E0) + E3 E2 (Ē1 E0+ E1 Ē0)
______
P = Ē3 Ē2 (E1 ⊕ E0) + Ē3 E2 (E1 ⊕ E0) +
_______
E3 Ē2 (E1⊕ E0) + E3 E2 (E1 ⊕ E0)

________
P = (E1 ⊕ E0) (Ē3 Ē2 + E3 E2) + (E1 ⊕ E0) (Ē3 E2 + E3 Ē2)
Código de paridade

P = Ē3 Ē2 Ē1 E0 + Ē3 Ē2 E1 Ē0 + Ē3 E2 Ē1 Ē0 + Ē3 E2 E1 E0 +

E3 Ē2 Ē1 Ē0 + E3 Ē2 E1 E0 + E3 E2 Ē1 E0 + E3 E2 E1 Ē0

P = Ē3 Ē2 (Ē1 E0 + E1 Ē0)
Ē3 E2 (Ē1 Ē0 + E1 E0)+
+
E3 Ē2 (Ē1 Ē0 + E1 E0) + E3 E2 (Ē1 E0+ E1 Ē0)
______
P = Ē3 Ē2 (E1 ⊕ E0) + Ē3 E2 (E1 ⊕ E0) +
_______
E3 Ē2 (E1⊕ E0) + E3 E2 (E1 ⊕ E0)

________
P = (E1 ⊕ E0) (Ē3 Ē2 + E3 E2) + (E1 ⊕ E0) (Ē3 E2 + E3 Ē2)
Código de paridade
________
P = (E1 ⊕ E0) (Ē3 Ē2 + E3 E2) + (E1 ⊕ E0) (Ē3 E2 + E3 Ē2)

_______ _______
P = (E1 ⊕ E0) (E3⊕E2) + (E1 ⊕ E0) (E3⊕ E2)

Chamando: x = E1 ⊕ E0
Y = E3 ⊕ E2

_ _
P = xy + xy = x ⊕ y
P = (E3 ⊕ E2) ⊕ (E1 ⊕ E0)
Código de paridade

● Diagrama de circuito lógico:

E3
E2

E1

E0
Código de paridade

Como o código de paridade pode ser usado para detectar erros?


● No receptor, existe outro gerador de paridade;
● “Pega-se“ os N-1 bits recebidos e gera-se a paridade;
● Compara-se a paridade gerada no receptor com a paridade
transmitida.
● Se forem diferentes, ocorreu um erro na transmissão.

E3
E2
E1
E0
Código de paridade

● Projeto de um verificador de Paridade (Par):

E3

EE2
2

E1

E0

P
Código de paridade

● Limitações:
● Se houver a permuta de uma quantidade par de bits, o verificador
de paridade não é capaz de identificar o erro;
● O bit de paridade é enviado pelo canal, e por isso, pode sofrer com
erros.
AVISO
Os slides serão disponibilizados no
Classroom!

Dúvidas?

También podría gustarte