Códigos de detecção e correção de erro

Documentos relacionados
codeword. Arquitectura de Computadores (2008/2009): Memória 592

PCS Sistemas Digitais I. Códigos para Detecção e Correção de Erros. Prof. Dr. Marcos A. Simplicio Jr. versão: 3.0 (Jan/2016)

Organização e Arquitetura de Computadores I

Redes de Computadores

Detecção e Correção de Erros. 13/07/16 Departamento de Ciência da Computação

Objetivo. Sistemas de Numeração e Códigos. Apresentar técnicas de representação e converção de números em diversos sistemas de numeração.

COM29008 LISTA DE EXERCÍCIOS #

UFSM-CTISM. Comunicação de Dados Aula-17

Big Endian é uma ordenação usada em sistemas do tipo Unix (arquiteturas SPARC, IBM Mainframe).

Acrescenta um bit 1 ou um bit 0 às mensagem para que o número total de bits 1 seja par

BC-0504 Natureza da Informação

Fundamentos de Telecomunicações

Correção de Erros. Erros de memória de semicondutores podem ser:

Camada de Enlace de Dados

III-1 Códigos detectores e correctores de erros

Códigos de bloco. Luis Henrique Assumpção Lolis. 1 de novembro de Luis Henrique Assumpção Lolis Códigos de bloco 1

Arquitetura e Organização de Computadores

Memória Interna. Prof. Leonardo Barreto Campos 1

S. W. Song. MAC Organização de Computadores

Camada de Enlace de Dados

PEL/FEN Redes de Computadores 2018/1 Terceira Lista de Exercícios Prof. Marcelo Gonçalves Rubinstein

Fundamentos de Telecomunicações

EET-61 Introdução a Teoria da Informação

Organização e Arquitetura de Computadores I

ELE32 Introdução a Comunicações Codificação de Canal. ITA 2º. Semestre de 2017

Organização e Arquitetura de Computadores I

PCS 3115 (PCS2215) Sistemas Digitais I. Módulo - Códigos. Prof. Dr. Edison Spina. sobre o material do Prof. Dr. Marcos A. Simplicio Jr.

A camada de enlace de dados executa diversas funções específicas. Dentre elas

Aula 3- Codificação de Canal. October 18, 2017

28/8/13. Processadores. Introdução

1ª Lista de Arquitetura de Computadores

ELE32 Introdução a Comunicações Codificação de Canal Códigos cíclicos. ITA 2º. Semestre de 2017

O L A Representação de Informação. Representação de Informação. -- Texto -- Tabela de ASCII (7 bits) Representação de Caracteres

Códigos de blocos lineares. Outubro de 2017

Hierarquia de Memória

REDES DE COMPUTADORES

Nível de Enlace. Nível de Enlace. Serviços. Serviços oferecidos os nível de rede

Erros e Protocolos de Recuperação Códigos detectores e correctores de erros.

Detecção e correcção de erros

TRANSMISSÃO DE DADOS PROTEGIDOS POR CÓDIGOS CORRETORES DE ERRO

Nível de Enlace. Nível de Enlace. Serviços. Serviços. Serviços. Serviços. Serviços oferecidos os nível de rede

PTC TEORIA DAS COMUNICAÇÕES II - 25/08/ PJEJ EXERCÍCIOS RESOLVIDOS

Memória interna. MAC Arquitetura de Computadores Prof. Siang Wun Song

Técnicas de Detecção e Correção de Erros

Teste das portas de cobre em portas de Ethernet Gigabit no Switches ESW2-350G

CODIFICAÇÃO PARA CONTROLO DE ERROS

1 Exercícios da Parte 3 Camada de Enlace de Dados. 2. Qual a importância da tarefa de enquadramento em uma transmissão de dados?

III-1 Códigos detetores e corretores de erros

Camada de Enlace. Prof. Leonardo Barreto Campos. 1/26

XXIII Curso de Especialização em Teleinformática e Redes de Computadores

Memória. Arquitetura de Computadores I. DCC-IM/UFRJ Prof. Gabriel P. Silva

Aula 01 Apresentação Disciplina

Códigos de Detecção de Erros 2ª. parte. Prof. Ricardo de O. Duarte DECOM - UFOP

Lista de Exercícios. Camada de Enlace de Dados

CIRCUITOS DIGITAIS. Circuitos Combinacionais e Técnicas de Simplificação

PROJETOS ELÉTRICOS EBOOK

Códigos cíclicos - Parte 2

PCS 3115 Sistemas Digitais I Códigos Prof. Dr. Marcos A. Simplicio Jr.

III-1 Códigos detetores e corretores de erros

GABARITO DA OITAVA LISTA DE EXERCÍCIOS DE PTC TEORIA DA INFORMAÇÃO E CODIFICAÇÃO

III-1 Códigos detetores e corretores de erros

Noções de Exatidão, Precisão e Resolução

A Mágica de virar as cartas Detecção e Correção de Erros

Sistemas de Telecomunicações 1

Universidade de Pernambuco Escola Politécnica de Pernambuco

Circuitos Lógicos Combinacionais (parte 3) Sistemas de Informação CPCX UFMS Slides: Prof. Renato F. dos Santos Adaptação: Fernando Maia da Mota

Capítulo 3. A camada de enlace de dados

PCS 3115 (PCS2215) Conteúdo

Códigos de controle de erros: introdução

Aula 20 Testes 3. Alessandro Garcia Leonardo da Silva Sousa OPUS Group/LES/DI/PUC-Rio Dezembro 2016

4 Testes e experimentos realizados 4.1. Implementação e banco de dados

REFERENCIAIS DO CURSO CERTIFICADO DE NÍVEL 4 ELECTRÓNICA DIGITAL (75 H)

Códigos de bloco. Instituto Federal de Santa Catarina Curso superior de tecnologia em sistemas de telecomunicação Comunicações móveis 2

Gerência de Projetos e Qualidade de Software. Prof. Walter Gima

Organização de Computadores

CURSO TÉCNICO EM INFORMÁTICA. Montagem e Manutenção de Computadores

Manutenção de Computadores Manuseio, cuidados e montagem de microcomputadores. Professor: Francisco Ary

Sistemas de Numeração. Professor Msc. Rodolfo Lauro Weinert Joinville, 26 de fevereiro de 2018

PARTE I I: ARITMÉTICA COMPUTACIONAL ARQUITETURA DE COMPUTADORES ANTONIO RAMOS DE CARVALHO JÚNIOR

LICENCIATURA EM ENGENHARIA INFORMÁTICA E COMPUTAÇÃO EIC1208 MATEMÁTICA DISCRETA

Capítulo II Álgebra Booleana e Minimização Lógica

Sequência 17 Organização e Hierarquia de Memória

Codificação de Informação

MEMÓRIA CACHE FELIPE G. TORRES

Estatística Básica. Variáveis Aleatórias Contínuas. Renato Dourado Maia. Instituto de Ciências Agrárias. Universidade Federal de Minas Gerais

Redes de Computadores. Prof. André Y. Kusumoto

Memória virtual. Sistemas de Computação

Sistemas Operacionais

Introdução à Programação Aula 17 Deteção e correção de erros

Sistema Supervisório - IHM

Organização Básica de Computadores

Codificadores e Decodificadores Prof. Rômulo Calado Pantaleão Camara

Universidade Federal do Estado de Santa Catarina. Departamento de Física. Física Geral IV. Professora: Natalia Vale Asari

Sistemas de Memória II

FORMAÇÃO CONTINUADA EM MATEMÁTICA FUNDAÇÃO CERCIERJ CONSÓRCIO CEDERJ MATEMÁTICA 1 ANO - 4 BIMESTRE PLANO DE TRABALHO

Redes de Computadores

ESTATÍSTICA Amostragem. Lucas Schmidt

Problemas de Fundamentos de Telecomunicações 1ª Parte: Codificação de Fonte e Codificação de Canal

Sistemas Operacionais. Prof. André Y. Kusumoto

Transcrição:

Códigos de detecção e correção de erro Raul Queiroz Feitosa Conteúdo Motivação Idéia Básica Definições Deteção de Erro Correção de Erros Código de Hamming Exercícios Códigos 2 1

Motivação Erros ocorrem: 0 s se transformam em 1 s devido a causas espúrias em dispositivos de memória, em sistemas de comunicação, etc. Objetivo: Procurar mecanismos que sejam capazes de detectar ou, melhor ainda, corrigir este erros. Códigos 3 Idéia Básica Para representar 2 m palavras utilizam-se n=r+m bits (r bits mais do que o necessário!) Entre as 2 m+r palavras possíveis 2 m palavras são válidas e 2 m (2 r -1) são inválidas. O sistema só gera palavras válidas. Logo, se surgir alguma palavra inválida, trata-se de um erro! Códigos 4 2

Definições Código é o conjunto de palavras válidas. Erro simples é a alteração de uma palavra válida numa única posição (bit). Códigos 5 Definições Distância de Hamming entre palavras é o número de posições (bits) em que as palavras diferem. Exemplo: p 1 = 1 0 0 0 1 0 0 1 h(p 1,p 2 )=3 p 2 = 1 0 1 1 0 0 0 1 xor(p 1,p 2 ) = 0 0 1 1 1 0 0 0 Códigos 6 3

Definições Distância de Hamming de um código é menor distância de Hamming entre 2 palavras do código. Exemplo: H=2 1 0 1 1 0 0 0 1 1 0 1 1 1 1 1 0 7 0 0 0 0 0 0 0 1 4 4 1 1 1 1 0 0 1 1 2 3 5 Códigos 7 Detecção de erro Para que uma palavra (válida) de um código com H=d se transforme numa outra palavra (válida) do mesmo código, deverão ocorrer pelo menos d erros simples. Logo, um código capaz de detectar d erros simples deve ter H d+1 Códigos 8 4

Detecção de erro Exemplo: bit de paridade 0 0 0 0 0 0 1 1 0 1 0 1 0 1 1 0 1 0 0 1 1 0 1 0 1 1 0 0 1 1 1 1 Códigos 9 Correção de erro Idéia básica: Qualquer palavra inválida é substituída pela válida mais próxima (em termos de distância de Hamming) logo, um código será capaz de corrigir até c erros simples, se e somente se H 2c+1 Códigos 10 5

Correção de erro Problema: Suponha que se deseja construir um código contendo 2 m palavras válidas, capaz de corrigir até 1 erro simples. Quantos bits extra serão necessários (r=?) Códigos 11 Correção de erro Solução: 2 m+r total 2 m válidas (m+r)2 m inválidas a uma distância 1 de uma válida Portanto, m+r+1 2 r Códigos 12 6

Correção de erro Pela relação anterior m r m+r overhead (%) 8 4 12 50 16 5 21 31 32 6 38 19 64 7 71 11 128 8 136 6 256 9 265 4 512 10 522 2 Códigos 13 Código de Hamming Construindo um código de correção de 1 erro simples para 2 m palavras Acrescentam-se r bits de paridade (vide slide anterior): total de m+r bits por palavra Bits são numerados de 1 a m+r Posições potência inteira de 2 têm os bits de paridade, cf. próximo slide Códigos 14 7

Código de Hamming Construindo um código de correção de 1 erro simples para 2 m palavras 10100111 1 1 1 1 0 1 0 0 0 1 1 1 1 2 3 4 5 6 7 8 9 10 11 12 Bit 1 1, 3, 5, 7, 9, 11 Bit 2 2, 3, 6, 7, 10, 11 Bit 4 4, 5, 6, 7, 12 Bit 8 8, 9, 10, 11, 12 Códigos 15 Exercícios 1. Deseja-se construir um código composto de 3 palavras código de 8 bits cada uma. As palavras código devem ser escolhidas de modo a maximizar o número de erros simples que se poderá detectar. Pergunta-se quantos erros simples se poderá corrigir com tal código? Códigos 16 8

Exercícios 2. Derive uma relação que forneça um limite inferior para o número de bits de verificação (r) necessários para se montar um código de correção de até 2 erros simples para 2 m palavras válidas distintas. Códigos 17 Exercícios 3. Seja o código formado pelas palavras código abaixo: 10100110-11111111 - 01011001-10000101 Qual é a distância de Hamming do Código? Qual é o número máximo de erros simples que se pode detectar neste código? Qual é o número máximo de erros simples que se pode corrigir neste código? Códigos 18 9

Exercícios 4. Qual é o código completo contendo 12 bits produzido pelo código de Hamming derivado palavra de 8 bits abaixo? 1 0 1 0 0 1 0 1 5. Altere aleatoriamente um dos bits do resultado à questão anterior e verifique se você consegue identificar o bit alterado, e portanto, corrigí-lo. Códigos 19 FIM Códigos 20 10