SlideShare uma empresa Scribd logo
REDES DE
COMUNICAÇÃO
MÓDULO 1
CURSO PROFISSIONAL DE TÉCNICO DE GESTÃO E
PROGAMAÇÃO DE SISTEMAS INFORMÁTICOS
AGRUPAMENTO DE ESCOLAS DA BATALHA
160301
Professor: @ffaísca RC: M6 2015/2016
Nas transmissões de dados, fenómenos como o ruído e as
interferências que ocorrem podendo deturpar a mensagem
original.
Devido a este problema são aplicados códigos de deteção e
correção de transmissões.
2
 Características dos Erros
 Possíveis Abordagens
 Códigos de Detecção de Erros:
 Paridade,Checksum, CRC (Cyclic Redundancy Check)
 Códigos de Detecção eCorrecçãode Erros
 Correção de erros isolados: Código deHamming
 Correção de erros em “rajada”(burst): BCH,Reed-Solomon,Reed-
Muller,Golay
3
 Um sistema de computação funciona em função da transferência de
informação desde o nível de circuito integrados até aos níveis mais
altos, como por exemplo gravação no disco ou comunicação entre
computadores.
 Está sujeito a diversos erros, como os causados por interferências
eletromagnéticas, envelhecimento de componentes, curto-circuitos,
...
4
Características dos erros
1. São inevitáveis em qualquer sistema de comunicação real;
2. A distribuição dos erros não é homogénea: bits isolados ou em
“rajadas”(bursts) de erros, com 8 ou mais bits sucessivos errados;
3. Deve-se levar em conta o meio físico de transmissão de dados, para
incluir maior ou menor redundância na transmissão, a fim de
garantir que a informação recebida seja confiável.
5
Possíveis abordagens no tratamento de erros:
1. Ignorar o erro;
2. Eco (transmissão à origem de reflexos dos dados recebidos);
3. Sinalizar o erro;
4. Detetar e solicitar a retransmissão em caso de erro;
5. Detetar e corrigir os erros na receção de forma automática.
6
Códigos de Deteção de Erros
1. Detetar um erro é uma tarefa mais simples do que detetar e
corrigir;
2. Nem sempre é possível solicitar uma retransmissão;
3. Todos os métodos utilizam a inserção de bits extras;
4. (Esses bits podem ser obtidos a partir da informação original e o
recetor recalcula os bits extras)
5. Um método ineficiente mas muito utilizado para detetar erros é a
Paridade;
6. Um método mais eficiente éo uso de um código polinomial ou CRC
(Cyclic Redundancy Check);
7
PARIDADE
 Consiste basicamente no ato do transmissor adicionar um bit de
redundância após um determinado número de bits (normalmente
um byte):
 N.º par de 1’s  paridade par
 N.º impar de 1’s  paridade impar
 000, 011, 101, 110  são mensagens transmitidas sem erro, tendo
em conta que o último bit é o de paridade
8
PARIDADE
Exemplo1:
 O caracter A no código ASCII é representado por 1000001
 O bit P de paridade é calculado e transmitido:
 1000001P  n.º par de 1’s  P =0 (paridade par ), logo transmite-se
10000010
 O recetor calcula a paridade da mensagem e compara-a com o bit P
recebido: P = paridade  transmissão correta
9
PARIDADE
Este processo pode ser vulnerável se houver mais do que
um erro, permitindo assim que este passe até ao destino
sem ser identificado.
Exemplo: 11010010 –devolve valor 0 mas existe erro
Usada em muitas aplicações de hardware (onde uma
operação pode ser repetida em caso de dificuldade, ou onde
é útil a simples deteção de erros). Exemplo: Bus PCI e
SCSI.
10
CHECKSUM
 Consiste na transmissão de todas as palavras juntamente com o
resultado da sua soma binária.
 Inclui o bit de transporte.
 Inversão do valor dos bits do checksum.
11
A B SOMA TRANSPORTE
0 0 0
0 1 1
1 0 1
1 1 0 1
CHECKSUM
12
Exemplo: checksum de 2 palavras de 8 bits
 Dados iniciais: 00111101 00001101
 Checksum é:
 01001010
 Checksum invertido:
 10110101
CHECKSUM
Dados enviados:
 00111101
 00001101
 10110101 (checksum –invertido)
 No recetor, as palavras são novamente somadas e comparadas com o
checksum enviado:
 Se qualquer um dos dados transmitidos, incluindo o checksum, sofrerem
algum erro então, a soma do novo checksum com o checksum enviado, será
diferente de 1.
0 1 0 0 1 0 1 0  novo checksum (das palavras iniciais recebidas)
1 0 1 1 0 1 0 1  checksum enviado
1 1 1 1 1 1 1 1  sem erro
13
CHECKSUM
Exemplo com erro:
0 0 1 1 0 0 0 1
0 0 0 0 1 1 0 1
0 0 1 1 0 1 1 0  novo checksum
1 0 1 1 0 1 0 1  checksum enviado
1 1 1 01 01 1≠1 1 1 1 1 1 1 1
 valor recebido incorretamente, com erro no 3ºou 5ºbit (de qualquer
uma das palavras enviadas, incluindo o checksum)
14
CHECKSUM - FALHAS
Poderão não ser detetados erros se:
 os bits não estiverem ordenados;
 tiverem sido inseridos bits nulos;
 ocorram múltiplos erros que se anulem entre si.
15
CRC (CYCLIC
REDUNDANCY CHECK)
16
 É uma técnica usada para deteção de erros na transmissão de dados
digitais. No método CRC são adicionados check bits (FCS –Frame
Check Sequence) à mensagem que irá ser transmitida.
 Os bits FCS são calculados através da seguinte expressão:
 FCS(x) é igual ao resto da divisão inteira entre duas funções
polinomiais M(x) e G(x) onde M(x) é a nossa mensagem original sem
código de erros e G(x) o polinómio gerado pré-definido (chave da
nossa codificação).
CRC (CYCLIC
REDUNDANCY CHECK)
Esquema mais eficiente
 Emissor/recetor concordam num polinómio gerador G(x), em que
quanto maior for o seu grau maior será a capacidade de deteção de
erros
 Neste polinómio tanto o bit de maior ordem quanto o de menor
ordem devem ser iguais a 1
 Palavra inicial de k bits é representado por um polinómio de X de
ordem k-1
 palavra inicial = 10110001
 polinómio M(x) = 1𝑥7+0𝑥6+1𝑥5+1𝑥4+0𝑥3+0𝑥2+0𝑥1+1𝑥0
 polinómio M(x) = x7+x5+x4+1
17
CRC (CYCLIC
REDUNDANCY CHECK)
Execução:
 o polinómio M(x) é representado pela palavra inicial somada aos bits
de paridade e deve ser divisível por G(x);
 O recetor tenta dividir M(x) por G(x). Se houver resto ≠0, houve um
erro de transmissão;
 Se houver um erro, em vez de se receber o polinómio T(x), recebe-se
T(x)+E(x);
 Cada bit 1 em E(x) corresponde a um bit invertido;
 T(x)/G(x) é sempre zero, logo o resultado é E(x)/G(x).
18
CRC (CYCLIC
REDUNDANCY CHECK)
Exemplo:
 Mensagem a transmitir:10111011
 Polinómio gerador G(X) = x4+x+1  10011
 Acrescenta-se à mensagem inicial, a quantidade de zeros
equivalentes ao grau de G(x), ficando:
 10111011 0000
 Seguidamente divide-se a mensagem (ponto anterior) pelo polinómio
gerador
 Quando 1º bit do resultado da divisão for 1, volta-se a dividir pelo
polinómio gerador, se for 0 (zero) divide-se por zero (todos os bits do
polinómio gerador a 0 (zero))
 A divisão de dois polinómios (na sua forma binária) é feita
recorrendo à operação XOR (⊕) 19
A B XOR (⊕)
0 0 0
0 1 1
1 0 1
1 1 0
CRC (CYCLIC
REDUNDANCY CHECK)
1 0 1 1 1 0 1 1 0 0 0 0
1 0 0 1 1
0 1 0 0 0
0 0 0 0 0
1 0 0 0 1
1 0 0 1 1
0 0 1 0 1
0 0 0 0 0
0 1 0 1 0
0 0 0 0 0
1 0 1 0 0
1 0 0 1 1
0 1 1 1 0
0 0 0 0 0
1 1 1 0 0
1 0 0 1 1
1 1 1 1  Resto da divisão 20
O resto que da divisão é finalmente
adicionado à mensagem original, pelo
que a mensagem transmitida será:
10111011 1111
A B XOR (⊕)
0 0 0
0 1 1
1 0 1
1 1 0
CRC (CYCLIC
REDUNDANCY CHECK)
1 0 1 1 1 0 1 1 1 1 1 1
1 0 0 1 1
0 1 0 0 0
0 0 0 0 0
1 0 0 0 1
1 0 0 1 1
0 0 1 0 1
0 0 0 0 0
0 1 0 1 1
0 0 0 0 0
1 0 1 1 1
1 0 0 1 1
0 1 0 0 1
0 0 0 0 0
1 0 0 1 1
1 0 0 1 1
0 0 0 0  Resto da divisão 21
A mensagem transmitida foi:
10111011 0000 (correta)
A B XOR (⊕)
0 0 0
0 1 1
1 0 1
1 1 0
CRC (CYCLIC
REDUNDANCY CHECK)
1 0 1 1 1 0 0 1 1 1 1 1
1 0 0 1 1
0 1 0 0 0
0 0 0 0 0
1 0 0 0 0
1 0 0 1 1
0 0 1 1 1
0 0 0 0 0
0 1 1 1 1
0 0 0 0 0
1 1 1 1 1
1 0 0 1 1
1 1 0 0 1
1 0 0 1 1
1 0 1 0 1
1 0 0 1 1
0 1 1 0  Resto da divisão  ≠0, logo a mensagem foi
recebida com erro
22
A mensagem transmitida foi:
10111011 0110 (incorreta)
A B XOR (⊕)
0 0 0
0 1 1
1 0 1
1 1 0
Códigos de correção podem recuperar o dado original a
partir do código com erros;
Consistem na criação de códigos extras que detetam
situações inválidas mas que mantém a identidade do dado
original;
O conceito mais básico e mais importante desses códigos é
a distância de Hamming, utilizada para a criação de
códigos de correção.
23
HAMMING
24
A distância de Hamming é calculada entre a diferença entre
a mensagem enviada e recebida.
Exemplo:
10001110 e 00111000 a distância é 5, visto que existem 5
bits diferentes entre as duas sequências.
HAMMING
25
Dependendo desta distância (m) o código de Hamming
permite:
 Detetar até m-1 bits errados;
 Corrigir até
𝑚−1
2
(arredondado para baixo) bits errados.
Assim, se a distância de Hamming for 5 detetam-se até 4
bits errados e corrigem-se até 2 bits errados.
HAMMING
26
Qual a sequência de Hamming para 1101001 ?
Calcular o menor n que satisfaz: 2 𝑛 − 1 ≥ 𝑛 + 𝑐𝑜𝑚𝑝
 Neste caso n=4 (24 − 1 ≥ 4 + 7) 15 ≥11)
 As posições correspondentes às 4 primeiras potências de 2𝑛
vão ser utilizados com os bits de Hamming 1, 2, 4 e 8 e as
restantes com os valores da sequência dada.
HAMMING
27
Efetuar o XOR (em binário) da posição correspondente aos
bits com 1.
Efetuando todos os xor, obtemos: 1010.
Trocando a ordem dos bits, colocamos: 0101
HAMMING
28
 Erros isolados
 Códigos de Hamming -Codificação:
1. Os bits da palavra de código são numerados a partir da esquerda, começando
por 1;
2. É acrescentada informação redundante em posições pré-definidas, ou seja, os
bits que são potência de 2 vão ser bits de controlo (2n);
3. Os restantes são preenchidos com k bits de dados conhecidos, isto é, com a
mensagem a transmitir;
Mensagem: 1001
1=20 2=21 3 4=22 5 6 7
1º Passo 1 0 0 1
2º Passo ? ? ?
3º Passo ? ? 1 ? 0 0 1
HAMMING
29
4. Cálculo dos bits de controlo, isto é, conversão para binário das posições ≠ 2n e
valor = 1;
3 – 011
7 – 111
5. Aplicação do OR Exculsivo (XOR - ⊕) aos valores obtido no ponto anterior
0 1 1
1 1 1
1 0 0
3ª 2ª 1ª inversão do número calculado: 0 0 1 (bits de controlo)
HAMMING
30
6. Inserção dos valores obtidos nas respetivas posições do bits de
paridade (ponto 2.)
7. Mensagem a transmitir: 0011001
1=20 2=21 3 4=22 5 6 7
1º Passo 1 0 1 0
2º Passo ? ? ?
3º Passo ? ? 1 ? 0 0 1
6º Passo 0 0 1 1 0 0 1
HAMMING
31
Códigos de Hamming -Descodificação: Correção de erros:
1. Calculamos o XOR correspondente à posição de todos os bits 1.
2. Se todos estiverem corretos obtemos todos os bits zero e não é
detetado erro.
3. Caso contrário o bit equivalente à soma (XOR) está errado.
HAMMING
32
Códigos de Hamming -Descodificação:
1. Conversão para binário das posições = 1;
2. Aplicação do OR Exculsivo (XOR - ⊕) aos valores obtido no ponto
anterior:
 Se o resultado for = 0, não houve erros na transmissão
 Se for ≠0, o resultado obtido convertido para decimal é igual à posição do erro
HAMMING
33
 Sem erro: 0 0 1 1 0 0 1
3ª 4ª 7ª
 Com erro: 0 0 0 1 0 0 1
4ª 7ª
 ⇒Código Correto: 0011001

Mais conteúdo relacionado

Mais procurados (10)

Coarctation Aortique
Coarctation AortiqueCoarctation Aortique
Coarctation Aortique
 
Đề Thi HK2 Toán 8 - THCS Nguyễn Du
Đề Thi HK2 Toán 8 - THCS Nguyễn DuĐề Thi HK2 Toán 8 - THCS Nguyễn Du
Đề Thi HK2 Toán 8 - THCS Nguyễn Du
 
Tuberculose extra-pulmonaire
Tuberculose extra-pulmonaireTuberculose extra-pulmonaire
Tuberculose extra-pulmonaire
 
Đố Vui Về Chất Khí (Thơ Vui Hóa Học)
Đố Vui Về Chất Khí (Thơ Vui Hóa Học)Đố Vui Về Chất Khí (Thơ Vui Hóa Học)
Đố Vui Về Chất Khí (Thơ Vui Hóa Học)
 
Transmission du BK chez l'homme et dans la collectivité
Transmission du BK chez l'homme et dans la collectivitéTransmission du BK chez l'homme et dans la collectivité
Transmission du BK chez l'homme et dans la collectivité
 
Tug ppt
Tug pptTug ppt
Tug ppt
 
Đề Thi HK2 Toán 8 - THCS - THPT Hoa Lư
Đề Thi HK2 Toán 8 - THCS - THPT Hoa LưĐề Thi HK2 Toán 8 - THCS - THPT Hoa Lư
Đề Thi HK2 Toán 8 - THCS - THPT Hoa Lư
 
La tuberculose urogénitale difficultés diagnostiques
La tuberculose urogénitale difficultés diagnostiquesLa tuberculose urogénitale difficultés diagnostiques
La tuberculose urogénitale difficultés diagnostiques
 
Embolie pulmonaire
Embolie pulmonaire Embolie pulmonaire
Embolie pulmonaire
 
Đề Thi HK2 Toán 6 - THCS Tân Tạo
Đề Thi HK2 Toán 6 - THCS Tân TạoĐề Thi HK2 Toán 6 - THCS Tân Tạo
Đề Thi HK2 Toán 6 - THCS Tân Tạo
 

Semelhante a Códigos de Detecção.pptx

Redes de Comunicação - Técnicas de deteção e correção de erros em transm...
Redes de Comunicação - Técnicas de deteção e correção de erros em transm...Redes de Comunicação - Técnicas de deteção e correção de erros em transm...
Redes de Comunicação - Técnicas de deteção e correção de erros em transm...
Filipe Martins
 
Actividade - Números Binários
Actividade - Números BináriosActividade - Números Binários
Actividade - Números Binários
Mário Ferreira
 
Capítulo 10 detecção e correção de erros
Capítulo 10   detecção e correção de errosCapítulo 10   detecção e correção de erros
Capítulo 10 detecção e correção de erros
Faculdade Mater Christi
 
Sistemas de numeração
Sistemas de numeraçãoSistemas de numeração
Sistemas de numeração
Jordan Miguel
 
C:\Fakepath\Sistemasnumeracaobinariaedecimal
C:\Fakepath\SistemasnumeracaobinariaedecimalC:\Fakepath\Sistemasnumeracaobinariaedecimal
C:\Fakepath\Sistemasnumeracaobinariaedecimal
José Mortágua
 
Apostila digital cefetes
Apostila digital cefetesApostila digital cefetes
Apostila digital cefetes
Pedro Maximo
 

Semelhante a Códigos de Detecção.pptx (20)

codigos de detecao e correcao de erros_manuela
codigos de detecao e correcao de erros_manuelacodigos de detecao e correcao de erros_manuela
codigos de detecao e correcao de erros_manuela
 
Tk codigos erros_manuela
Tk codigos erros_manuelaTk codigos erros_manuela
Tk codigos erros_manuela
 
Redes de Comunicação - Técnicas de deteção e correção de erros em transm...
Redes de Comunicação - Técnicas de deteção e correção de erros em transm...Redes de Comunicação - Técnicas de deteção e correção de erros em transm...
Redes de Comunicação - Técnicas de deteção e correção de erros em transm...
 
Actividade - Números Binários
Actividade - Números BináriosActividade - Números Binários
Actividade - Números Binários
 
Apostila digital cefetes
Apostila digital cefetesApostila digital cefetes
Apostila digital cefetes
 
Sistema de numeração
Sistema de numeraçãoSistema de numeração
Sistema de numeração
 
Sistema de numeração
Sistema de numeraçãoSistema de numeração
Sistema de numeração
 
Capítulo 10 detecção e correção de erros
Capítulo 10   detecção e correção de errosCapítulo 10   detecção e correção de erros
Capítulo 10 detecção e correção de erros
 
SISTEMAS digitais SISTEMAS DE NUMERAÇÃO
SISTEMAS digitais SISTEMAS DE NUMERAÇÃOSISTEMAS digitais SISTEMAS DE NUMERAÇÃO
SISTEMAS digitais SISTEMAS DE NUMERAÇÃO
 
Aula_Zegonc_Ponto_Flutuante_NEW.pdf
Aula_Zegonc_Ponto_Flutuante_NEW.pdfAula_Zegonc_Ponto_Flutuante_NEW.pdf
Aula_Zegonc_Ponto_Flutuante_NEW.pdf
 
Apostila de eletronica_digital
Apostila de eletronica_digitalApostila de eletronica_digital
Apostila de eletronica_digital
 
Sistemas de numeração
Sistemas de numeraçãoSistemas de numeração
Sistemas de numeração
 
C:\Fakepath\Sistemasnumeracaobinariaedecimal
C:\Fakepath\SistemasnumeracaobinariaedecimalC:\Fakepath\Sistemasnumeracaobinariaedecimal
C:\Fakepath\Sistemasnumeracaobinariaedecimal
 
Apostila digital cefetes
Apostila digital cefetesApostila digital cefetes
Apostila digital cefetes
 
PPT_01_CalculoNumerico.pptx.pdf
PPT_01_CalculoNumerico.pptx.pdfPPT_01_CalculoNumerico.pptx.pdf
PPT_01_CalculoNumerico.pptx.pdf
 
Tp representação de informação
Tp   representação de informaçãoTp   representação de informação
Tp representação de informação
 
Edg cap01
Edg cap01Edg cap01
Edg cap01
 
Tecnicas de conversão e compressão; Redes de comunicação 1º Módulo
Tecnicas de conversão e compressão; Redes de comunicação 1º MóduloTecnicas de conversão e compressão; Redes de comunicação 1º Módulo
Tecnicas de conversão e compressão; Redes de comunicação 1º Módulo
 
Códigos de hamming
Códigos de hammingCódigos de hamming
Códigos de hamming
 
Circuitos de portas logicas - Conversão de sistemas binarios e decimais
Circuitos de portas logicas - Conversão de sistemas binarios e decimaisCircuitos de portas logicas - Conversão de sistemas binarios e decimais
Circuitos de portas logicas - Conversão de sistemas binarios e decimais
 

Mais de riodurval

Redes de Comunicação ensino profissional m4
Redes de Comunicação ensino profissional m4Redes de Comunicação ensino profissional m4
Redes de Comunicação ensino profissional m4
riodurval
 
Redes de Comunicação ensino profissional AC1
Redes de Comunicação ensino profissional AC1Redes de Comunicação ensino profissional AC1
Redes de Comunicação ensino profissional AC1
riodurval
 
Redes de Comunicação ensino profissional AC
Redes de Comunicação ensino profissional ACRedes de Comunicação ensino profissional AC
Redes de Comunicação ensino profissional AC
riodurval
 
Redes de Comunicação ensino profissional
Redes de Comunicação ensino profissionalRedes de Comunicação ensino profissional
Redes de Comunicação ensino profissional
riodurval
 
Álgebra de Boole - Portas And Or Not.pptx
Álgebra de Boole - Portas And Or Not.pptxÁlgebra de Boole - Portas And Or Not.pptx
Álgebra de Boole - Portas And Or Not.pptx
riodurval
 
Arquitectura de Computadores3.pptx
Arquitectura de Computadores3.pptxArquitectura de Computadores3.pptx
Arquitectura de Computadores3.pptx
riodurval
 
TrabalhoFQ1.pptx
TrabalhoFQ1.pptxTrabalhoFQ1.pptx
TrabalhoFQ1.pptx
riodurval
 
Aula 9 - Operações Digitais.pptx
Aula 9 - Operações Digitais.pptxAula 9 - Operações Digitais.pptx
Aula 9 - Operações Digitais.pptx
riodurval
 
Aula 10 - Códigos BCD.pptx
Aula 10 - Códigos BCD.pptxAula 10 - Códigos BCD.pptx
Aula 10 - Códigos BCD.pptx
riodurval
 
Recurso Educativo e de Avaliação.pptx
Recurso Educativo e de Avaliação.pptxRecurso Educativo e de Avaliação.pptx
Recurso Educativo e de Avaliação.pptx
riodurval
 
Módulo 1 - Comunicação de Dados.pptx
Módulo 1 - Comunicação de Dados.pptxMódulo 1 - Comunicação de Dados.pptx
Módulo 1 - Comunicação de Dados.pptx
riodurval
 
Guião - Sessão 5 - Programacao com Arduinos.pdf
Guião - Sessão 5 - Programacao com Arduinos.pdfGuião - Sessão 5 - Programacao com Arduinos.pdf
Guião - Sessão 5 - Programacao com Arduinos.pdf
riodurval
 

Mais de riodurval (18)

Redes de Comunicação ensino profissional m4
Redes de Comunicação ensino profissional m4Redes de Comunicação ensino profissional m4
Redes de Comunicação ensino profissional m4
 
Redes de Comunicação ensino profissional AC1
Redes de Comunicação ensino profissional AC1Redes de Comunicação ensino profissional AC1
Redes de Comunicação ensino profissional AC1
 
Redes de Comunicação ensino profissional AC
Redes de Comunicação ensino profissional ACRedes de Comunicação ensino profissional AC
Redes de Comunicação ensino profissional AC
 
Redes de Comunicação ensino profissional
Redes de Comunicação ensino profissionalRedes de Comunicação ensino profissional
Redes de Comunicação ensino profissional
 
Álgebra de Boole - Portas And Or Not.pptx
Álgebra de Boole - Portas And Or Not.pptxÁlgebra de Boole - Portas And Or Not.pptx
Álgebra de Boole - Portas And Or Not.pptx
 
Arquitectura de Computadores3.pptx
Arquitectura de Computadores3.pptxArquitectura de Computadores3.pptx
Arquitectura de Computadores3.pptx
 
TrabalhoFQ1.pptx
TrabalhoFQ1.pptxTrabalhoFQ1.pptx
TrabalhoFQ1.pptx
 
Coop.pptx
Coop.pptxCoop.pptx
Coop.pptx
 
Aula 9 - Operações Digitais.pptx
Aula 9 - Operações Digitais.pptxAula 9 - Operações Digitais.pptx
Aula 9 - Operações Digitais.pptx
 
Aula 10 - Códigos BCD.pptx
Aula 10 - Códigos BCD.pptxAula 10 - Códigos BCD.pptx
Aula 10 - Códigos BCD.pptx
 
Recurso Educativo e de Avaliação.pptx
Recurso Educativo e de Avaliação.pptxRecurso Educativo e de Avaliação.pptx
Recurso Educativo e de Avaliação.pptx
 
gctic7_ppt_a2.pptx
gctic7_ppt_a2.pptxgctic7_ppt_a2.pptx
gctic7_ppt_a2.pptx
 
Módulo 1 - Comunicação de Dados.pptx
Módulo 1 - Comunicação de Dados.pptxMódulo 1 - Comunicação de Dados.pptx
Módulo 1 - Comunicação de Dados.pptx
 
guerra-colonial-175.pdf
guerra-colonial-175.pdfguerra-colonial-175.pdf
guerra-colonial-175.pdf
 
relações bioticas.pptx
relações bioticas.pptxrelações bioticas.pptx
relações bioticas.pptx
 
Guião - Sessão 5 - Programacao com Arduinos.pdf
Guião - Sessão 5 - Programacao com Arduinos.pdfGuião - Sessão 5 - Programacao com Arduinos.pdf
Guião - Sessão 5 - Programacao com Arduinos.pdf
 
Auxiliares de comunicação
Auxiliares de comunicaçãoAuxiliares de comunicação
Auxiliares de comunicação
 
Spc mestrado
Spc mestradoSpc mestrado
Spc mestrado
 

Último

05_Caderno_Algebra_Funcao_Logaritmica_Progressoes_2012 - 340 IMPRESSOS.pdf
05_Caderno_Algebra_Funcao_Logaritmica_Progressoes_2012 - 340 IMPRESSOS.pdf05_Caderno_Algebra_Funcao_Logaritmica_Progressoes_2012 - 340 IMPRESSOS.pdf
05_Caderno_Algebra_Funcao_Logaritmica_Progressoes_2012 - 340 IMPRESSOS.pdf
miguelfisica8479
 
PERFIL M DO LUBANGO e da Administraçao_041137.pptx
PERFIL M DO LUBANGO e da Administraçao_041137.pptxPERFIL M DO LUBANGO e da Administraçao_041137.pptx
PERFIL M DO LUBANGO e da Administraçao_041137.pptx
tchingando6
 
direito-administrativo-28c2aa-ed-2015-josc3a9-dos-santos-carvalho-filho.pdf
direito-administrativo-28c2aa-ed-2015-josc3a9-dos-santos-carvalho-filho.pdfdireito-administrativo-28c2aa-ed-2015-josc3a9-dos-santos-carvalho-filho.pdf
direito-administrativo-28c2aa-ed-2015-josc3a9-dos-santos-carvalho-filho.pdf
LeandroTelesRocha2
 

Último (20)

Hans Kelsen - Teoria Pura do Direito - Obra completa.pdf
Hans Kelsen - Teoria Pura do Direito - Obra completa.pdfHans Kelsen - Teoria Pura do Direito - Obra completa.pdf
Hans Kelsen - Teoria Pura do Direito - Obra completa.pdf
 
Manual de Direito do Trabalho - Adriana Calvo - 2020.pdf
Manual de Direito do Trabalho - Adriana Calvo - 2020.pdfManual de Direito do Trabalho - Adriana Calvo - 2020.pdf
Manual de Direito do Trabalho - Adriana Calvo - 2020.pdf
 
Slides Lição 9, CPAD, Resistindo à Tentação no Caminho, 2Tr24.pptx
Slides Lição 9, CPAD, Resistindo à Tentação no Caminho, 2Tr24.pptxSlides Lição 9, CPAD, Resistindo à Tentação no Caminho, 2Tr24.pptx
Slides Lição 9, CPAD, Resistindo à Tentação no Caminho, 2Tr24.pptx
 
História do Brasil e Geral - Cláudio Vicentino
História do Brasil e Geral - Cláudio VicentinoHistória do Brasil e Geral - Cláudio Vicentino
História do Brasil e Geral - Cláudio Vicentino
 
05_Caderno_Algebra_Funcao_Logaritmica_Progressoes_2012 - 340 IMPRESSOS.pdf
05_Caderno_Algebra_Funcao_Logaritmica_Progressoes_2012 - 340 IMPRESSOS.pdf05_Caderno_Algebra_Funcao_Logaritmica_Progressoes_2012 - 340 IMPRESSOS.pdf
05_Caderno_Algebra_Funcao_Logaritmica_Progressoes_2012 - 340 IMPRESSOS.pdf
 
Fotossíntese para o Ensino médio primeiros anos
Fotossíntese para o Ensino médio primeiros anosFotossíntese para o Ensino médio primeiros anos
Fotossíntese para o Ensino médio primeiros anos
 
Apresentação de vocabulário fundamental em contexto de atendimento
Apresentação de vocabulário fundamental em contexto de atendimentoApresentação de vocabulário fundamental em contexto de atendimento
Apresentação de vocabulário fundamental em contexto de atendimento
 
Atividade - Letra da música Xote da Alegria - Falamansa
Atividade  - Letra da  música Xote  da  Alegria    -   FalamansaAtividade  - Letra da  música Xote  da  Alegria    -   Falamansa
Atividade - Letra da música Xote da Alegria - Falamansa
 
Conteúdo sobre a formação e expansão persa
Conteúdo sobre a formação e expansão persaConteúdo sobre a formação e expansão persa
Conteúdo sobre a formação e expansão persa
 
Eurodeputados Portugueses 2019-2024 (nova atualização)
Eurodeputados Portugueses 2019-2024 (nova atualização)Eurodeputados Portugueses 2019-2024 (nova atualização)
Eurodeputados Portugueses 2019-2024 (nova atualização)
 
PERFIL M DO LUBANGO e da Administraçao_041137.pptx
PERFIL M DO LUBANGO e da Administraçao_041137.pptxPERFIL M DO LUBANGO e da Administraçao_041137.pptx
PERFIL M DO LUBANGO e da Administraçao_041137.pptx
 
Caderno de Estudo Orientado para Ensino Médio
Caderno de Estudo Orientado para Ensino MédioCaderno de Estudo Orientado para Ensino Médio
Caderno de Estudo Orientado para Ensino Médio
 
curso-de-direito-constitucional-gilmar-mendes.pdf
curso-de-direito-constitucional-gilmar-mendes.pdfcurso-de-direito-constitucional-gilmar-mendes.pdf
curso-de-direito-constitucional-gilmar-mendes.pdf
 
Junho Violeta - Sugestão de Ações na Igreja
Junho Violeta - Sugestão de Ações na IgrejaJunho Violeta - Sugestão de Ações na Igreja
Junho Violeta - Sugestão de Ações na Igreja
 
Os Padres de Assaré - CE. Prof. Francisco Leite
Os Padres de Assaré - CE. Prof. Francisco LeiteOs Padres de Assaré - CE. Prof. Francisco Leite
Os Padres de Assaré - CE. Prof. Francisco Leite
 
Desastres ambientais e vulnerabilidadess
Desastres ambientais e vulnerabilidadessDesastres ambientais e vulnerabilidadess
Desastres ambientais e vulnerabilidadess
 
DIFERENÇA DO INGLES BRITANICO E AMERICANO.pptx
DIFERENÇA DO INGLES BRITANICO E AMERICANO.pptxDIFERENÇA DO INGLES BRITANICO E AMERICANO.pptx
DIFERENÇA DO INGLES BRITANICO E AMERICANO.pptx
 
Exercícios de Queda Livre e Lançamento Vertical.pptx
Exercícios de Queda Livre e Lançamento Vertical.pptxExercícios de Queda Livre e Lançamento Vertical.pptx
Exercícios de Queda Livre e Lançamento Vertical.pptx
 
"Está o lascivo e doce passarinho " de Luís Vaz de Camões
"Está o lascivo e   doce passarinho " de Luís Vaz de Camões"Está o lascivo e   doce passarinho " de Luís Vaz de Camões
"Está o lascivo e doce passarinho " de Luís Vaz de Camões
 
direito-administrativo-28c2aa-ed-2015-josc3a9-dos-santos-carvalho-filho.pdf
direito-administrativo-28c2aa-ed-2015-josc3a9-dos-santos-carvalho-filho.pdfdireito-administrativo-28c2aa-ed-2015-josc3a9-dos-santos-carvalho-filho.pdf
direito-administrativo-28c2aa-ed-2015-josc3a9-dos-santos-carvalho-filho.pdf
 

Códigos de Detecção.pptx

  • 1. REDES DE COMUNICAÇÃO MÓDULO 1 CURSO PROFISSIONAL DE TÉCNICO DE GESTÃO E PROGAMAÇÃO DE SISTEMAS INFORMÁTICOS AGRUPAMENTO DE ESCOLAS DA BATALHA 160301 Professor: @ffaísca RC: M6 2015/2016
  • 2. Nas transmissões de dados, fenómenos como o ruído e as interferências que ocorrem podendo deturpar a mensagem original. Devido a este problema são aplicados códigos de deteção e correção de transmissões. 2
  • 3.  Características dos Erros  Possíveis Abordagens  Códigos de Detecção de Erros:  Paridade,Checksum, CRC (Cyclic Redundancy Check)  Códigos de Detecção eCorrecçãode Erros  Correção de erros isolados: Código deHamming  Correção de erros em “rajada”(burst): BCH,Reed-Solomon,Reed- Muller,Golay 3
  • 4.  Um sistema de computação funciona em função da transferência de informação desde o nível de circuito integrados até aos níveis mais altos, como por exemplo gravação no disco ou comunicação entre computadores.  Está sujeito a diversos erros, como os causados por interferências eletromagnéticas, envelhecimento de componentes, curto-circuitos, ... 4
  • 5. Características dos erros 1. São inevitáveis em qualquer sistema de comunicação real; 2. A distribuição dos erros não é homogénea: bits isolados ou em “rajadas”(bursts) de erros, com 8 ou mais bits sucessivos errados; 3. Deve-se levar em conta o meio físico de transmissão de dados, para incluir maior ou menor redundância na transmissão, a fim de garantir que a informação recebida seja confiável. 5
  • 6. Possíveis abordagens no tratamento de erros: 1. Ignorar o erro; 2. Eco (transmissão à origem de reflexos dos dados recebidos); 3. Sinalizar o erro; 4. Detetar e solicitar a retransmissão em caso de erro; 5. Detetar e corrigir os erros na receção de forma automática. 6
  • 7. Códigos de Deteção de Erros 1. Detetar um erro é uma tarefa mais simples do que detetar e corrigir; 2. Nem sempre é possível solicitar uma retransmissão; 3. Todos os métodos utilizam a inserção de bits extras; 4. (Esses bits podem ser obtidos a partir da informação original e o recetor recalcula os bits extras) 5. Um método ineficiente mas muito utilizado para detetar erros é a Paridade; 6. Um método mais eficiente éo uso de um código polinomial ou CRC (Cyclic Redundancy Check); 7
  • 8. PARIDADE  Consiste basicamente no ato do transmissor adicionar um bit de redundância após um determinado número de bits (normalmente um byte):  N.º par de 1’s  paridade par  N.º impar de 1’s  paridade impar  000, 011, 101, 110  são mensagens transmitidas sem erro, tendo em conta que o último bit é o de paridade 8
  • 9. PARIDADE Exemplo1:  O caracter A no código ASCII é representado por 1000001  O bit P de paridade é calculado e transmitido:  1000001P  n.º par de 1’s  P =0 (paridade par ), logo transmite-se 10000010  O recetor calcula a paridade da mensagem e compara-a com o bit P recebido: P = paridade  transmissão correta 9
  • 10. PARIDADE Este processo pode ser vulnerável se houver mais do que um erro, permitindo assim que este passe até ao destino sem ser identificado. Exemplo: 11010010 –devolve valor 0 mas existe erro Usada em muitas aplicações de hardware (onde uma operação pode ser repetida em caso de dificuldade, ou onde é útil a simples deteção de erros). Exemplo: Bus PCI e SCSI. 10
  • 11. CHECKSUM  Consiste na transmissão de todas as palavras juntamente com o resultado da sua soma binária.  Inclui o bit de transporte.  Inversão do valor dos bits do checksum. 11 A B SOMA TRANSPORTE 0 0 0 0 1 1 1 0 1 1 1 0 1
  • 12. CHECKSUM 12 Exemplo: checksum de 2 palavras de 8 bits  Dados iniciais: 00111101 00001101  Checksum é:  01001010  Checksum invertido:  10110101
  • 13. CHECKSUM Dados enviados:  00111101  00001101  10110101 (checksum –invertido)  No recetor, as palavras são novamente somadas e comparadas com o checksum enviado:  Se qualquer um dos dados transmitidos, incluindo o checksum, sofrerem algum erro então, a soma do novo checksum com o checksum enviado, será diferente de 1. 0 1 0 0 1 0 1 0  novo checksum (das palavras iniciais recebidas) 1 0 1 1 0 1 0 1  checksum enviado 1 1 1 1 1 1 1 1  sem erro 13
  • 14. CHECKSUM Exemplo com erro: 0 0 1 1 0 0 0 1 0 0 0 0 1 1 0 1 0 0 1 1 0 1 1 0  novo checksum 1 0 1 1 0 1 0 1  checksum enviado 1 1 1 01 01 1≠1 1 1 1 1 1 1 1  valor recebido incorretamente, com erro no 3ºou 5ºbit (de qualquer uma das palavras enviadas, incluindo o checksum) 14
  • 15. CHECKSUM - FALHAS Poderão não ser detetados erros se:  os bits não estiverem ordenados;  tiverem sido inseridos bits nulos;  ocorram múltiplos erros que se anulem entre si. 15
  • 16. CRC (CYCLIC REDUNDANCY CHECK) 16  É uma técnica usada para deteção de erros na transmissão de dados digitais. No método CRC são adicionados check bits (FCS –Frame Check Sequence) à mensagem que irá ser transmitida.  Os bits FCS são calculados através da seguinte expressão:  FCS(x) é igual ao resto da divisão inteira entre duas funções polinomiais M(x) e G(x) onde M(x) é a nossa mensagem original sem código de erros e G(x) o polinómio gerado pré-definido (chave da nossa codificação).
  • 17. CRC (CYCLIC REDUNDANCY CHECK) Esquema mais eficiente  Emissor/recetor concordam num polinómio gerador G(x), em que quanto maior for o seu grau maior será a capacidade de deteção de erros  Neste polinómio tanto o bit de maior ordem quanto o de menor ordem devem ser iguais a 1  Palavra inicial de k bits é representado por um polinómio de X de ordem k-1  palavra inicial = 10110001  polinómio M(x) = 1𝑥7+0𝑥6+1𝑥5+1𝑥4+0𝑥3+0𝑥2+0𝑥1+1𝑥0  polinómio M(x) = x7+x5+x4+1 17
  • 18. CRC (CYCLIC REDUNDANCY CHECK) Execução:  o polinómio M(x) é representado pela palavra inicial somada aos bits de paridade e deve ser divisível por G(x);  O recetor tenta dividir M(x) por G(x). Se houver resto ≠0, houve um erro de transmissão;  Se houver um erro, em vez de se receber o polinómio T(x), recebe-se T(x)+E(x);  Cada bit 1 em E(x) corresponde a um bit invertido;  T(x)/G(x) é sempre zero, logo o resultado é E(x)/G(x). 18
  • 19. CRC (CYCLIC REDUNDANCY CHECK) Exemplo:  Mensagem a transmitir:10111011  Polinómio gerador G(X) = x4+x+1  10011  Acrescenta-se à mensagem inicial, a quantidade de zeros equivalentes ao grau de G(x), ficando:  10111011 0000  Seguidamente divide-se a mensagem (ponto anterior) pelo polinómio gerador  Quando 1º bit do resultado da divisão for 1, volta-se a dividir pelo polinómio gerador, se for 0 (zero) divide-se por zero (todos os bits do polinómio gerador a 0 (zero))  A divisão de dois polinómios (na sua forma binária) é feita recorrendo à operação XOR (⊕) 19 A B XOR (⊕) 0 0 0 0 1 1 1 0 1 1 1 0
  • 20. CRC (CYCLIC REDUNDANCY CHECK) 1 0 1 1 1 0 1 1 0 0 0 0 1 0 0 1 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0 1 1 0 0 1 1 0 0 1 0 1 0 0 0 0 0 0 1 0 1 0 0 0 0 0 0 1 0 1 0 0 1 0 0 1 1 0 1 1 1 0 0 0 0 0 0 1 1 1 0 0 1 0 0 1 1 1 1 1 1  Resto da divisão 20 O resto que da divisão é finalmente adicionado à mensagem original, pelo que a mensagem transmitida será: 10111011 1111 A B XOR (⊕) 0 0 0 0 1 1 1 0 1 1 1 0
  • 21. CRC (CYCLIC REDUNDANCY CHECK) 1 0 1 1 1 0 1 1 1 1 1 1 1 0 0 1 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0 1 1 0 0 1 1 0 0 1 0 1 0 0 0 0 0 0 1 0 1 1 0 0 0 0 0 1 0 1 1 1 1 0 0 1 1 0 1 0 0 1 0 0 0 0 0 1 0 0 1 1 1 0 0 1 1 0 0 0 0  Resto da divisão 21 A mensagem transmitida foi: 10111011 0000 (correta) A B XOR (⊕) 0 0 0 0 1 1 1 0 1 1 1 0
  • 22. CRC (CYCLIC REDUNDANCY CHECK) 1 0 1 1 1 0 0 1 1 1 1 1 1 0 0 1 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0 0 1 0 0 1 1 0 0 1 1 1 0 0 0 0 0 0 1 1 1 1 0 0 0 0 0 1 1 1 1 1 1 0 0 1 1 1 1 0 0 1 1 0 0 1 1 1 0 1 0 1 1 0 0 1 1 0 1 1 0  Resto da divisão  ≠0, logo a mensagem foi recebida com erro 22 A mensagem transmitida foi: 10111011 0110 (incorreta) A B XOR (⊕) 0 0 0 0 1 1 1 0 1 1 1 0
  • 23. Códigos de correção podem recuperar o dado original a partir do código com erros; Consistem na criação de códigos extras que detetam situações inválidas mas que mantém a identidade do dado original; O conceito mais básico e mais importante desses códigos é a distância de Hamming, utilizada para a criação de códigos de correção. 23
  • 24. HAMMING 24 A distância de Hamming é calculada entre a diferença entre a mensagem enviada e recebida. Exemplo: 10001110 e 00111000 a distância é 5, visto que existem 5 bits diferentes entre as duas sequências.
  • 25. HAMMING 25 Dependendo desta distância (m) o código de Hamming permite:  Detetar até m-1 bits errados;  Corrigir até 𝑚−1 2 (arredondado para baixo) bits errados. Assim, se a distância de Hamming for 5 detetam-se até 4 bits errados e corrigem-se até 2 bits errados.
  • 26. HAMMING 26 Qual a sequência de Hamming para 1101001 ? Calcular o menor n que satisfaz: 2 𝑛 − 1 ≥ 𝑛 + 𝑐𝑜𝑚𝑝  Neste caso n=4 (24 − 1 ≥ 4 + 7) 15 ≥11)  As posições correspondentes às 4 primeiras potências de 2𝑛 vão ser utilizados com os bits de Hamming 1, 2, 4 e 8 e as restantes com os valores da sequência dada.
  • 27. HAMMING 27 Efetuar o XOR (em binário) da posição correspondente aos bits com 1. Efetuando todos os xor, obtemos: 1010. Trocando a ordem dos bits, colocamos: 0101
  • 28. HAMMING 28  Erros isolados  Códigos de Hamming -Codificação: 1. Os bits da palavra de código são numerados a partir da esquerda, começando por 1; 2. É acrescentada informação redundante em posições pré-definidas, ou seja, os bits que são potência de 2 vão ser bits de controlo (2n); 3. Os restantes são preenchidos com k bits de dados conhecidos, isto é, com a mensagem a transmitir; Mensagem: 1001 1=20 2=21 3 4=22 5 6 7 1º Passo 1 0 0 1 2º Passo ? ? ? 3º Passo ? ? 1 ? 0 0 1
  • 29. HAMMING 29 4. Cálculo dos bits de controlo, isto é, conversão para binário das posições ≠ 2n e valor = 1; 3 – 011 7 – 111 5. Aplicação do OR Exculsivo (XOR - ⊕) aos valores obtido no ponto anterior 0 1 1 1 1 1 1 0 0 3ª 2ª 1ª inversão do número calculado: 0 0 1 (bits de controlo)
  • 30. HAMMING 30 6. Inserção dos valores obtidos nas respetivas posições do bits de paridade (ponto 2.) 7. Mensagem a transmitir: 0011001 1=20 2=21 3 4=22 5 6 7 1º Passo 1 0 1 0 2º Passo ? ? ? 3º Passo ? ? 1 ? 0 0 1 6º Passo 0 0 1 1 0 0 1
  • 31. HAMMING 31 Códigos de Hamming -Descodificação: Correção de erros: 1. Calculamos o XOR correspondente à posição de todos os bits 1. 2. Se todos estiverem corretos obtemos todos os bits zero e não é detetado erro. 3. Caso contrário o bit equivalente à soma (XOR) está errado.
  • 32. HAMMING 32 Códigos de Hamming -Descodificação: 1. Conversão para binário das posições = 1; 2. Aplicação do OR Exculsivo (XOR - ⊕) aos valores obtido no ponto anterior:  Se o resultado for = 0, não houve erros na transmissão  Se for ≠0, o resultado obtido convertido para decimal é igual à posição do erro
  • 33. HAMMING 33  Sem erro: 0 0 1 1 0 0 1 3ª 4ª 7ª  Com erro: 0 0 0 1 0 0 1 4ª 7ª  ⇒Código Correto: 0011001