Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.
Códigos de Detecção e
Correcção de Erros
Sistemas Distribuídos e Tolerância a Falhas
Manuela Rodrigues M1379
Detecção e Correcção de Erros
Características dos Erros
Possíveis Abordagens
Códigos de Detecção de Erros:
Paridade, Check...
Erros (1)
Um sistema de computação funciona em função da
transferência de informação desde o nível de circuito
integrados ...
Erros (2)
Características dos erros
1. São inevitáveis em qualquer sistema de comunicação
real;
2. A distribuição dos erro...
Erros (3)
Possíveis abordagens no tratamento de erros:
1. Ignorar o erro;
2. Eco (transmissão à origem de reflexos dos dad...
Códigos de Detecção de Erros
Códigos de Detecção de Erros
Detectar um erro é uma tarefa mais simples do que
detectar e cor...
Detecção de Erros – Paridade (1)
Paridade
Consiste basicamente no acto do transmissor adicionar
um bit de redundância após...
Detecção de Erros – Paridade (2)
Exemplo1:
O caracter A no código ASCII é representado por
1000001
O bit P de paridade é c...
Detecção de Erros – Paridade (4)
Este processo pode ser vulnerável se houver mais do que
um erro, permitindo assim que est...
Detecção de Erros – Checksum
(1)
Checksum
Consiste na transmissão de todas as palavras juntamente
com o resultado da sua s...
Detecção de Erros – Checksum
(2)
Exemplo:
checksum de 2 palavras de 8 bits
Dados iniciais: 00111101 00001101
Checksum é:
0...
Detecção de Erros – Checksum
(3)
Dados enviados:
00111101
00001101
10110101 (checksum – invertido)
No receptor, as palavra...
Detecção de Erros – Checksum
(3)
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...
Detecção de Erros – CRC (1)
CRC (Cyclic Redundancy Check)
Esquema mais eficiente
Emissor/receptor concordam num polinómio ...
Detecção de Erros – CRC (2)
Execução: o polinómio p(x) é representado pela palavra
inicial somada aos bits de paridade e d...
Detecção de Erros – CRC (3)
Exemplo:
Mensagem a transmitir:10111011
Polinómio gerador G(X) = x4+x+1 10011
Acrescenta-se à ...
Detecção de Erros – CRC (4)
1 0 1 1 1 0 1 1 0 0 0 0
1 0 0 1 1
0 0 1 0 0 0 1
1 0 0 1 1
0 0 0 1 0 1 0 0
1 0 0 1 1
0 0 1 1 1 ...
Detecção de Erros – CRC (5)
Para descodificar a mensagem, o procedimento deve ser
repetido.
1 0 1 1 1 0 0 1 1 1 1 1
1 0 0 ...
Códigos de Detecção e
Correcção de Erros
Códigos de Correcção de Erros
Códigos de correcção podem recuperar o dado origina...
Detecção e Correcção de Erros -
Hamming (1)
Erros isolados
Códigos de Hamming - Codificação:
1. Os bits da palavra de códi...
Detecção e Correcção de Erros -
Hamming (2)
4. Cálculo dos bits de controlo, isto é, conversão para binário
das posições ≠...
Detecção e Correcção de Erros -
Hamming (3)
6. Inserção dos valores obtidos nas respectivas posições
do bits de paridade (...
Detecção e Correcção de Erros -
Hamming (4)
Códigos de Hamming - Descodificação:
1. Conversão para binário das posições = ...
Detecção e Correcção de Erros -
Hamming (5)
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 Correc...
Detecção e Correcção de Erros –
Burst errors
Erros em rajada – Burst Errors
Conjunto de símbolos, recebidos sobre um canal...
Detecção e Correcção de Erros -
BCH
Códigos BCH (Bose - Chaudhuri - Hocquenghem):
Um código BCH é um código polinomial, cí...
Detecção e Correcção de Erros–
Reed-Solomon
Códigos Reed-Solomon:
Os Códigos Reed-Solomon constituem uma sub-classe
dos Có...
Detecção e Correcção de Erros–
Reed-Muller
Códigos Reed-Muller:
Os códigos Reed-Muller fazem parte dos códigos de
correcçã...
Detecção e Correcção de Erros–
Golay
Códigos Golay:
O código Golay é um código perfeito linear de correcção
de erros.
Apli...
Upcoming SlideShare
Loading in …5
×

Tk codigos erros_manuela

327 views

Published on

material de apoio

Published in: Investor Relations
  • DOWNLOAD THIS BOOKS INTO AVAILABLE FORMAT (2019 Update) ......................................................................................................................... ......................................................................................................................... Download Full PDF EBOOK here { https://soo.gd/irt2 } ......................................................................................................................... Download Full EPUB Ebook here { https://soo.gd/irt2 } ......................................................................................................................... Download Full doc Ebook here { https://soo.gd/irt2 } ......................................................................................................................... Download PDF EBOOK here { https://soo.gd/irt2 } ......................................................................................................................... Download EPUB Ebook here { https://soo.gd/irt2 } ......................................................................................................................... Download doc Ebook here { https://soo.gd/irt2 } ......................................................................................................................... ......................................................................................................................... ................................................................................................................................... eBook is an electronic version of a traditional print book THIS can be read by using a personal computer or by using an eBook reader. (An eBook reader can be a software application for use on a computer such as Microsoft's free Reader application, or a book-sized computer THIS is used solely as a reading device such as Nuvomedia's Rocket eBook.) Users can purchase an eBook on diskette or CD, but the most popular method of getting an eBook is to purchase a downloadable file of the eBook (or other reading material) from a Web site (such as Barnes and Noble) to be read from the user's computer or reading device. Generally, an eBook can be downloaded in five minutes or less ......................................................................................................................... .............. Browse by Genre Available eBooks .............................................................................................................................. Art, Biography, Business, Chick Lit, Children's, Christian, Classics, Comics, Contemporary, Cookbooks, Manga, Memoir, Music, Mystery, Non Fiction, Paranormal, Philosophy, Poetry, Psychology, Religion, Romance, Science, Science Fiction, Self Help, Suspense, Spirituality, Sports, Thriller, Travel, Young Adult, Crime, Ebooks, Fantasy, Fiction, Graphic Novels, Historical Fiction, History, Horror, Humor And Comedy, ......................................................................................................................... ......................................................................................................................... .....BEST SELLER FOR EBOOK RECOMMEND............................................................. ......................................................................................................................... Blowout: Corrupted Democracy, Rogue State Russia, and the Richest, Most Destructive Industry on Earth,-- The Ride of a Lifetime: Lessons Learned from 15 Years as CEO of the Walt Disney Company,-- Call Sign Chaos: Learning to Lead,-- StrengthsFinder 2.0,-- Stillness Is the Key,-- She Said: Breaking the Sexual Harassment Story THIS Helped Ignite a Movement,-- Atomic Habits: An Easy & Proven Way to Build Good Habits & Break Bad Ones,-- Everything Is Figureoutable,-- What It Takes: Lessons in the Pursuit of Excellence,-- Rich Dad Poor Dad: What the Rich Teach Their Kids About Money THIS the Poor and Middle Class Do Not!,-- The Total Money Makeover: Classic Edition: A Proven Plan for Financial Fitness,-- Shut Up and Listen!: Hard Business Truths THIS Will Help You Succeed, ......................................................................................................................... .........................................................................................................................
       Reply 
    Are you sure you want to  Yes  No
    Your message goes here
  • DOWNLOAD THIS BOOKS INTO AVAILABLE FORMAT (Unlimited) ......................................................................................................................... ......................................................................................................................... Download Full PDF EBOOK here { https://tinyurl.com/y6a5rkg5 } ......................................................................................................................... Download Full EPUB Ebook here { https://tinyurl.com/y6a5rkg5 } ......................................................................................................................... ACCESS WEBSITE for All Ebooks ......................................................................................................................... Download Full PDF EBOOK here { https://tinyurl.com/y6a5rkg5 } ......................................................................................................................... Download EPUB Ebook here { https://tinyurl.com/y6a5rkg5 } ......................................................................................................................... Download doc Ebook here { https://tinyurl.com/y6a5rkg5 } ......................................................................................................................... ......................................................................................................................... ......................................................................................................................... .............. Browse by Genre Available eBooks ......................................................................................................................... Art, Biography, Business, Chick Lit, Children's, Christian, Classics, Comics, Contemporary, Cookbooks, Crime, Ebooks, Fantasy, Fiction, Graphic Novels, Historical Fiction, History, Horror, Humor And Comedy, Manga, Memoir, Music, Mystery, Non Fiction, Paranormal, Philosophy, Poetry, Psychology, Religion, Romance, Science, Science Fiction, Self Help, Suspense, Spirituality, Sports, Thriller, Travel, Young Adult,
       Reply 
    Are you sure you want to  Yes  No
    Your message goes here
  • Be the first to like this

Tk codigos erros_manuela

  1. 1. Códigos de Detecção e Correcção de Erros Sistemas Distribuídos e Tolerância a Falhas Manuela Rodrigues M1379
  2. 2. Detecção e Correcção de Erros 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 e Correcção de Erros Correção de erros isolados: Código de Hamming Correção de erros em “rajada” (burst): BCH, Reed- Solomon, Reed-Muller, Golay
  3. 3. Erros (1) 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 electromagnéticas, envelhecimento de componentes, curto-circuitos, ...
  4. 4. Erros (2) 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. 5. Erros (3) 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. Detectar e solicitar a retransmissão em caso de erro; 5. Detectar e corrigir os erros na recepção de forma automática.
  6. 6. Códigos de Detecção de Erros Códigos de Detecção de Erros Detectar um erro é uma tarefa mais simples do que detectar e corrigir; Nem sempre é possível solicitar uma retransmissão; Todos os métodos utilizam a inserção de bits extras; (Esses bits podem ser obtidos a partir da informação original e o receptor recalcula os bits extras) Um método ineficiente mas muito utilizado para detectar erros é a Paridade; Um método mais eficiente é o uso de um código polinomial ou CRC (Cyclic Redundancy Check);
  7. 7. Detecção de Erros – Paridade (1) Paridade Consiste basicamente no acto 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. 8. Detecção de Erros – Paridade (2) 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 receptor calcula a paridade da mensagem e compara-a com o bit P recebido: P = paridade transmissão correcta
  9. 9. Detecção de Erros – Paridade (4) 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 detecção de erros). Exemplo: Bus PCI e SCSI.
  10. 10. Detecção de Erros – Checksum (1) 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. A B Soma Transporte 0 0 0 0 0 1 1 0 1 0 1 0 1 1 0 1
  11. 11. Detecção de Erros – Checksum (2) Exemplo: checksum de 2 palavras de 8 bits Dados iniciais: 00111101 00001101 Checksum é: 01001010 Checksum invertido: 10110101
  12. 12. Detecção de Erros – Checksum (3) Dados enviados: 00111101 00001101 10110101 (checksum – invertido) No receptor, 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. 13. Detecção de Erros – Checksum (3) 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 0 1 0 1 1 ≠ 1 1 1 1 1 1 1 1 valor recebido incorrectamente, com erro no 3º ou 5º bit (de qualquer uma das palavras enviadas, incluindo o checksum)
  14. 14. Detecção de Erros – CRC (1) CRC (Cyclic Redundancy Check) Esquema mais eficiente Emissor/receptor concordam num polinómio gerador G(x), em que quanto maior for o seu grau maior será a capacidade de detecçã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 = X7+X5+x4+1
  15. 15. Detecção de Erros – CRC (2) Execução: o polinómio p(x) é representado pela palavra inicial somada aos bits de paridade e deve ser divisível por G(x); O receptor tenta dividir p(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).
  16. 16. Detecção de Erros – CRC (3) 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 A divisão de dois polinómios (na sua forma binária) é feita recorrendo à operação XOR (⊕)
  17. 17. Detecção de Erros – CRC (4) 1 0 1 1 1 0 1 1 0 0 0 0 1 0 0 1 1 0 0 1 0 0 0 1 1 0 0 1 1 0 0 0 1 0 1 0 0 1 0 0 1 1 0 0 1 1 1 0 0 1 0 0 1 1 0 1 1 1 1 Resto da Divisão O resto que da divisão é finalmente adicionado à mensagem original, pelo que a mensagem transmitida será: 101110111111
  18. 18. Detecção de Erros – CRC (5) Para descodificar a mensagem, o procedimento deve ser repetido. 1 0 1 1 1 0 0 1 1 1 1 1 1 0 0 1 1 0 0 1 0 0 0 0 1 0 0 1 1 0 0 0 1 1 1 1 1 1 0 0 1 1 0 1 1 0 0 1 1 0 0 1 1 0 1 0 1 0 1 1 0 0 1 1 0 0 1 1 0 ≠ 0, logo a mensagem foi recebida com erro
  19. 19. Códigos de Detecção e Correcção de Erros Códigos de Correcção de Erros Códigos de correcção podem recuperar o dado original a partir do código com erros; Consistem na criação de códigos extras que detectam 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 correcção.
  20. 20. Detecção e Correcção de Erros - Hamming (1) 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: 10011=20 2=21 3 4=22 5 6 7 1º passo 1 0 0 1 2º passo ? ? ? 3º passo ? ? 1 ? 0 0 1
  21. 21. Detecção e Correcção de Erros - Hamming (2) 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ª
  22. 22. Detecção e Correcção de Erros - Hamming (3) 6. Inserção dos valores obtidos nas respectivas 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
  23. 23. Detecção e Correcção de Erros - Hamming (4) 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
  24. 24. Detecção e Correcção de Erros - Hamming (5) 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 Correcto: 0011001
  25. 25. Detecção e Correcção de Erros – Burst errors Erros em rajada – Burst Errors Conjunto de símbolos, recebidos sobre um canal de transmissão de dados, em que o primeiro e último símbolo são erros, e entre eles existe uma sequência de símbolos correctamente recebidos. O tamanho da “rajada” (burst) de erros é definida pelo nº de bits, desde o 1º erro até ao último (inclusive). O vector de erros B = (0 0 0 0 1 0 1 1 0 1 0 0 0 0 0) tem tamanho 6
  26. 26. Detecção e Correcção de Erros - BCH Códigos BCH (Bose - Chaudhuri - Hocquenghem): Um código BCH é um código polinomial, cíclico, detector e corrector de erros de tamanho variável. Estes códigos são a generalização dos códigos de Hamming, ou seja, t ≥1 Aplicações: Telefone VoIP, Modems Digitais Referências: Farrel, Patrick Guy – Essentials of Error – Control Coding Purser, Michael – Introduction to Error Correcting Codes Wallace, Hank – Error Detection and Correction Using the BCH Code
  27. 27. Detecção e Correcção de Erros– Reed-Solomon Códigos Reed-Solomon: Os Códigos Reed-Solomon constituem uma sub-classe dos Códigos BCH. Aplicações: Gravação de CD’s e DVD’s, Modems de alta velocidade (ADSL), Televisão digital (DVB) Referências: Farrel, Patrick Guy – Essentials of Error – Control Coding Purser, Michael – Introduction to Error Correcting Codes
  28. 28. Detecção e Correcção de Erros– Reed-Muller Códigos Reed-Muller: Os códigos Reed-Muller fazem parte dos códigos de correcção de erros mais antigos. Aplicações: Inventados em 1954 e utilizados em 1972 pelo Mariner 9 para transmitir fotografias, a preto e branco, de Marte. Referências: http://www-math.mit.edu/phase2/UJM/vol1/COOKE7FF.PDF http://ocw.usu.edu/Electrical_and_Computer_Engineering/Error_ Control_Coding/lecture9.pdf
  29. 29. Detecção e Correcção de Erros– Golay Códigos Golay: O código Golay é um código perfeito linear de correcção de erros. Aplicações: Voyager 1 (1979) e 2 (1980), que precisavam de transmitir centenas de fotografias a cores de Júpiter e Saturno, com telecomunicações de largura de banda muito restritas. Referências: http://www.quadibloc.com/crypto/mi0602.htm http://mathworld.wolfram.com/GolayCode.html

×