Crc(cyclic redundance code)

Disponível somente no TrabalhosFeitos
  • Páginas : 27 (6539 palavras )
  • Download(s) : 0
  • Publicado : 6 de maio de 2011
Ler documento completo
Amostra do texto
Capítulo

1
Detecção de Erros
Errar é humano. Perdoar não é a política da empresa (As 100 melhores leis de Murphy)

Autor: Constantino Seixas Filho UFMG – Departamento de Engenharia Eletrônica

1

Detecção de Erros
Erros de transmissão de dados podem ter diversas causas: Ruído Distorções • • • • • Branco Impulsivo Atenuação em amplitude Retardo de fase Deslocamento de freqüênciaRuídos em geral ocorrem em rajadas (bursts): Imagine uma rajada de 10 ms sobre uma comunicação de 9600 bps: 96 bits de dados serão atingidos. A natureza de erros em rajada é muito importante para a detecção de erros.

Técnicas Primitivas de detecção: Paridade simples ou paridade vertical ou TRC (Transverse Redundancy Check)
A cada caracter adicionamos um bit de paridade. Paridade par Paridadeímpar O número total de 1’s na palavra considerando-se o bit de paridade é par. O número total de 1’s na palavra considerando-se o bit de paridade é ímpar.

Seja o caracter: 01001100 Vamos calcular o bit de paridade ímpar: 0 1 0 0 1 1 0 0 0

Determine a expressão para cálculo do bit de paridade ímpar em uma palavra de 8 bits:

Pi =
Determine a expressão para cálculo do bit de paridade par em umapalavra de 8 bits:

Pp =
2
CRC – UFMG - Constantino Seixas Filho

Vamos calcular a eficiência de utilização de bits para este código:

e=

8 8+1

= 88.8%

Em geral este bit é calculado pelo hardware de transmissão de dados (USART) e é recebido, verificado e retirado pelo hardware de recepção. Qual a capacidade de detecção de erros deste algoritmo ? Apenas erros em um número ímparde bits são detectados.
Exemplo1:

Caracter transmitido: 0 1 0 0 1 1 0 0 0

Caracter recebido: 0 1 1 0 1 1 0 0 0

A paridade calculada na recepção é 1 o que contraria o valor do último bit da palavra e o erro é detectado.
Exemplo2:

Caracter transmitido: 0 1 0 0 1 1 0 0 0

Caracter recebido: 0 1 1 0 1 0 0 0 0

Existem dois bits trocados. O valor do bit de paridade calculado narecepção é 0. Como o último bit da palavra que corresponde ao bit de paridade recebido também é 1, o erro não é detectado.

CRC – UFMG - Constantino Seixas Filho

3

Paridade Horizontal ou LRC (Longitudinal Redundancy Check)
Considere o bloco de dados a serem transmitidos: 1 1 0 1 1 1 0 1 0 1 0 1 1 0 1 1 0 0 1 1 1 1 0 1 0 0 1 0 1 1 1 1 0 0 0 1 1 1 1 0 1 1 0 1 0 1 1 0 0 1 1 0 1 0 Caracter 1 Caracter2 Caracter 3 Caracter 4 Caracter 5 Caracter de checagem

O último caracter representa a paridade dos caracteres anteriores calculada na vertical bit a bit. Eficiência de utilização de bits para este código: Supondo um bloco de 5 caracteres:

e=

8* 5 9*6

= 74.1%

A eficiência aumenta quando aumentamos o tamanho do bloco. Dois erros em caracter são detectados. Dois erros em bits demesma ordem em dois caracteres não são detectados. Outros códigos de detecção longitudinal de erros são normalmente implementados em automação. A maior parte não usa bits de paridade, mas uma palavra gerada pela soma de todos as demais palavras da mensagem. Esses códigos são conhecidos pelo nome genéricos de Checksum.

4

CRC – UFMG - Constantino Seixas Filho

Códigos Cíclicos de Detecção deErros: CRC – Cyclic Redundancy Code
• São capazes de detectar uma grande faixa de erros de transmissão, isolados ou em rajadas. • Possuem algoritmo de cálculo mais complexos. • Podem ser calculados por hardware ou software.

Princípio:
1. Cada bit da mensagem m codificada em binário, é considerado como um coeficiente de um polinômio M(X) base 2. 2. A mensagem é deslocada para a esquerda de rposições, onde r é o número de bits do CRC (ordem do polinômio verificador = número de bits da representação do polinômio verificador – 1). 3. A mensagem deslocada é dividida por um polinômio característico G(X). 4. O resto da divisão é somado à mensagem deslocada para formar a mensagem composta T(X). 5. T(X) é transmitida. 6. O receptor divide T(X) por G(X). 7. Se o resultado for 0, existe...
tracking img