TÉCNICAS DE CODIFICAÇÃO DE SINAIS

Slides:



Advertisements
Apresentações semelhantes
Contadores e Registradores
Advertisements

Parte 1: Organização de Computadores
Resolução de equações não lineares
Fluxo em Redes Prof. Ricardo R. Santos.
Planos cristalinos e índices de Miller
Representação de Números
Sistemas Realimentados
Arquitetura de Computadores
Controle de Processos por Computador
Lógica Booleana A álgebra booleana é baseada totalmente na lógica. Desta forma, os circuitos lógicos executam expressões booleanas. As expressões booleanas.
Teorema de Pitágoras. Áreas. Semelhança de triângulos.
Capítulo 2 - Derivadas No final do capítulo 1, já definimos o coeficiente angular de uma curva y = f(x) no ponto onde x = x0. Chamamos esse limite, quando.
Derivadas Já definimos o coeficiente angular de uma curva y = f(x) no ponto onde x = x0. Chamamos esse limite, quando ele existia, de derivada de f em.
Sinais e Sistemas – Capítulo 4
Linguagens Livres de Contexto
POLINÔMIOS.
Planos cristalinos e índices de Miller
O que você deve saber sobre
EQUAÇÕES POLINOMIAIS Prof. Marlon.
CÓDIGOS CORRETORES DE ERROS
CÓDIGOS CORRETORES DE ERROS
Lógica de Programação Módulo II
MODULAÇÃO Conceito de Modulação
Camada de Enlace - LLC.
Universidade Estadual de Mato Grosso do Sul
Formulário de Matemática
Formulário de matemática
Formulário de Matemática
Algoritmos e Programação
G R U P O S - III.
Espaço Vetorial Introdução Definição de Espaço Vetorial Subespaço
Sistemas de Numeração Sistemas Numéricos de Interesse
Sinais e Sistemas Introdução 1. Definição 2. Classificação de Sinais
Sistemas Numéricos Sistemas Numéricos de Interesse
Índice SUMÁRIO Introdução ao projeto de lógica seqüencial.
Introdução à Álgebra Linear
Professora: Ana Cristina G. e Silva Natal-RN
SISTEMAS LINEARES.
G R U P O S.
Conceitos de Lógica Digital
Cálculo Numérico / Métodos Numéricos
Polinômios Profª.: Juliana Santos.
Integração Numérica Integração Numérica
EQUAÇÕES POLINOMIAIS Dorta.
Interpolação.
Campus de Caraguatatuba Aula 8: Noções Básicas sobre Erros (2)
MATEMÁTICA APLICADA REVISÃO BÁSICA.
Códigos de Detecção e Correcção de erros
Máquina de Turing Universal
1.2- Propriedades dos Limites
Análise por Variáveis de Estado (4a parte). Equação Característica, Autovalor e Auto Vetor Autovalores:definição - são as raízes da equação característica.
Equações diferenciais ordinárias de segunda ordem
Espaços e Subespaços Vetoriais
DCC 001 Programação de Computadores
Polinômios e equações algébricas
Reed-Solomon Error Correction
Espaços Vetoriais Em álgebra temos várias estruturas diferentes, por exemplo: Grupos Anéis Corpos Espaços Vetoriais Este é o objeto principal do nosso.
CONJUNTO DOS NÚMEROS INTEIROS
POLINÔMIOS.
TÉCNICAS DE CODIFICAÇÃO DE SINAIS INTRODUÇÃO À ÁLGEBRA Evelio M. G. Fernández
Potenciação an = a . a . a a (a ≠ 0) n fatores onde: a: base
INTRODUÇÃO AOS MÉTODOS NUMÉRICOS Professor: Dr. Edwin B. Mitacc Meza
DIVISÃO INTEIRA DE POLINÓMIOS
1.3 - Propriedades dos Limites
PUCC 1 Agenda Memória Correção de Erros. PUCC 2 Tipos de Erros Graves: –Defeito físico permanente. Células perdem a capacidade de armazenar dados com.
POLO MG_09 Encontro 7 – Polinômios Prof. Luciano.
Produtos Notáveis.
Prof. Ivair Teixeira Redes de Computadores.
Regra de Cramer x + 2y – z =2 2x – y + z = 3
Matemática Básica Fonte: Prof Msc SANDRO FABIAN FRANCILIO DORNELLES
Transcrição da apresentação:

TÉCNICAS DE CODIFICAÇÃO DE SINAIS CÓDIGOS CÍCLICOS Evelio M. G. Fernández - 2010

Códigos Cíclicos: Definição Um código de bloco linear é um código cíclico se cada deslocamento cíclico das palavras-código é também uma palavra-código. Vantagens: Descrição algébrica elegante c(x) = m(x)g(x), g(x)  polinômio gerador c(x)h(x) = 0 mod (xn  1)  h(x) polinômio de verificação de paridade c(β1) = 0, ..., c(βt) = 0, onde βi  GF(pm) Codificação e cálculo de síndromes utilizando registradores de deslocamento Correção de surtos de erros Correção de erros aleatórios através da solução de equações de polinômios

Deslocamentos Cíclicos de n-uplas e Polinômios

Deslocamentos Cíclicos de n-uplas e Polinômios

Corpos Finitos Um corpo finito com q elementos é chamado de GF(q) (Galois Field) GF(p) = inteiros com aritmética módulo um número primo, p GF(pm) = polinômios sobre GF(p) com aritmética módulo um polinômio primo de grau m (extension field) Todo corpo finito é o espaço vetorial de m-uplas sobre o corpo GF(p) de inteiros com aritmética módulo um número primo p. Portanto, GF(q) = GF(pm)

Corpos Finitos Teorema: A característica, λ, de um corpo finito é um número primo Teorema: Seja a um elemento diferente de zero em GF(q). Então, a(q1) = 1 Teorema: Seja a um elemento diferente de zero em GF(q). Seja n a ordem de a. Então, n divide q1 Resultado: Se a ordem de a for q1, então a é um elemento primitivo de GF(q)

Aritmética de Corpos Finitos Polinômios com uma variável X e coeficientes em um corpo F (denotados por F[x]), são expressões da forma O grau de f(X) é a maior potência de X (com coeficiente de X ≠ 0) Polinômio mônico: O coeficiente da maior potência de X é 1  Todos os polinômios diferentes de zero sobre GF(2) são mônicos Para qualquer dividendo f(X)  F[x] e divisor diferente de zero, g(X)  F[x] existirão um par de polinômios únicos q(X), cociente e r(X), resto, tal que

Aritmética de Corpos Finitos Definição: Seja p(X) um polinômio de grau m sobre GF(2). Se p(X) não for divisível por nenhum polinômio sobre GF(2) de grau m – 1 ou menos, então p(X) é irredutível sobre GF(2). Resultado: Qualquer polinômio irredutível sobre GF(2) de grau m divide

Aritmética de Corpos Finitos Definição: Seja p(X) um polinômio irredutível de grau m sobre GF(2); então, p(X) divide Xn + 1 para n = 2m – 1. Se este valor de n for o menor inteiro positivo para o qual p(X) divide xn + 1, então p(X) é um polinômio primitivo de grau m sobre GF(2)

Soma Módulo-8 Produto Módulo-8 + 1 2 3 4 5 6 7  1 2 3 4 5 6 7

Soma Módulo-2 (Bit-a-Bit) 000 001 010 011 100 101 110 111

Operação de “Multiplicação” das 3-uplas 001 010 011 100 101 110 111

Representação

Construção de GF(2m) Definição: Um elemento de GF(2m) de ordem 2m – 1 é um elemento primitivo.  se  é um elemento primitivo em GF(2m), então as potências distintas de  geram todos os elementos (diferentes de zero) de GF(2m). Definição: Um polinômio irredutível, p(x), de grau m sobre GF(2) é um polinômio primitivo se tiver como raiz um elemento primitivo de GF(2m)

Propriedades de GF(2m) Teorema: Seja f(X) um polinômio com coeficientes em GF(2). Seja  um elemento de GF(2m). Se  é uma raiz de f(X), então para qualquer l ≥ 0 , é também uma raiz de f(X) O elemento é chamado de conjugado de .

Propriedades de GF(2m) Teorema: Os 2m – 1 elementos diferentes de zero de GF(2m) compõem todas as raízes de  O elemento 0 de GF(2m) é a raiz de X. Portanto, Corolário: Os elementos de GF(2m) compõem todas as raízes de  β pode ser uma raiz de um polinômio sobre GF(2) de grau menor que 2m

Propriedades de GF(2m) Definição: Seja  um elemento de GF(2m). O polinômio minimal, (X), de  é o polinômio de menor grau com coeficientes em GF(2) tal que () = 0. Teorema: Sejam (X) o polinômio minimal de um elemento  em GF(2m) e e o menor inteiro tal que . Então:

Polinômio Gerador Seja C um código cíclico (n, k) sobre GF(q) Existe um polinômio mônico g(x), chamado de polinômio gerador, tal que uma n-upla c(x) é uma palavra-código se e somente se g(x) for um divisor de c(x). O polinômio gerador é único. O grau do polinômio gerador é n  k. g(x) é o polinômio código de menor grau entre todos os polinômios código. O polinômio gerador é um divisor de xn  1.

Polinômio Gerador

Matriz Geradora não Sistemática Código cíclico C: (n, k) gerado por g(x) de grau r = n  k

Código Cíclico Sistemático

Procedimento para Codificação Sistemática

Polinômio de Verificação de Paridade

Codificador de um Código Cíclico (n, k) b0 b1 b2 bn-k-1 bn-k-2

Codificador do Código Cíclico (7, 4)

Circuito de Cálculo das Síndromes sn-k-1 r(x)

Cálculo de Síndromes Código (7, 4)

Capacidade de Detecção de Erros Um código cíclico (n, k) é capaz de detectar qualquer surto de erros de comprimento n  k ou menor, incluindo surtos do tipo end-around. A fração de surtos não detectáveis de comprimento n  k +1 é 2  (n  k  1) Para l > n  k +1, a fração de surtos não detectáveis de comprimento l é 2  (n  k)

Decodificação de Códigos Cíclicos

Decodificação de Códigos Cíclicos Passo 1: Calcular a síndrome de r(x) e armazenar r(x) no registrador Passo 2: Determinar padrão de erro. A saída do detector é 1 se e somente se a síndrome no registrador corresponde a um padrão de erro corrigível contendo um erro na posição xn  1 Passo 3: O buffer e o registrador de síndrome são deslocados uma posição à direita. A saída do detector faz a correção do primeiro símbolo (se en  1 = 1) e também é realimentada no registrador de síndrome. Nova síndrome corresponde à r(x) deslocado Passo 4: Detectar se xn  2 (agora na última posição) é um símbolo errado. Repetir passos 2 e 3. O segundo símbolo é corrigido da mesma forma que o anterior. Passo 5: Decodificar o vetor recebido símbolo a símbolo da forma descrita anteriormente

Decodificador de Meggitt para o Código Cíclico (7, 4)

Processo de Correção de Erros

Códigos Cíclicos Binários vistos a partir de GF(2m) Teorema: Seja g(x) o polinômio gerador de um código cíclico binário de comprimento n = 2m  1 com zeros 1,..., r em GF(2m). O polinômio c(x) sobre GF(2) é um polinômio código se e somente se c(1) = c(2) = ··· = c(r) = 0 onde c(i) é avaliado em GF(2m)

BCH bound Se um código cíclico linear é construído de forma que: Cada palavra-código tem n bits;  é um elemento de ordem n em GF(2m); O polinômio gerador do código, g(x), inclui, entre suas raízes, ( - 1) potências consecutivas de . Então, É garantido que o código tem distância mínima igual a  ou maior.

Construção de Códigos BCH Para cada raiz r incluída em g(x), existe um polinômio minimal f(r)(x) que tem r como raiz [i.e., f(r)(r) = 0] e com coeficientes em GF(2). O polinômio gerador, com coeficientes binários, que contém todas as raízes necessárias pode ser obtido como sendo o mínimo comum múltiplo (LCM) de todos os polinômios minimais correspondentes às raízes utilizadas: g(x) = LCM{f(b+1)(x), f(b+2)(x), ..., f(b+-1)(x)}

Tipos de Códigos BCH Se  é um elemento primitivo de GF(2m), o código BCH resultante é chamado de código BCH primitivo e as suas palavras-código têm comprimento 2m – 1 bits. Se  não é um elemento primitivo de GF(2m), o código BCH resultante é chamado de código BCH não primitivo e as suas palavras-código têm comprimento igual à ordem de . Se b = 0, a primeira das ( - 1) potências de  será 1 = ,  código BCH no sentido estrito. Se b  0,  código BCH no sentido amplo.

Códigos BCH Binários Primitivos Para qualquer m  3 e t  2m  1, existe um código BCH com os seguinte parâmetros: n = 2m  1, n  k  mt, dmin  2t + 1 O polinômio gerador do código, g(x), é o polinômio de menor grau sobre GF(2) contendo como raízes, onde α é um elemento primitivo de GF(2m)

Elementos de GF(24)

Decodificação de Códigos BCH Computar as síndromes S = (S1, S2, ..., S2t) a partir de r(x) Determinar σ(x) a partir de S1, S2, ..., S2t Determinar as localizações dos erros, 1, 2, ..., υ encontrando as raízes de σ(x) e corrigir os erros em r(x)

Códigos BCH Primitivos sobre GF(q) Seja α um elemento primitivo em GF(qm ). O polinômio gerador, g(x), de um código BCH q-ário primitivo corretor de t erros é o polinômio de menor grau sobre GF(q) contendo como raízes. Seja i(x) o polinômio minimal de αi, 1  i  2t. Então, g(x) = LCM{1(x), 2(x), ..., 2t(x)}

Códigos de Reed-Solomon Um código de Reed-Solomon (ou código RS) é um código BCH primitivo (não binário) de comprimento n = q – 1 sobre GF(q). O polinômio gerador desse código tem a forma onde  é um elemento primitivo de GF(q), d é a distância mínima do código e gi  GF(q)

Desempenho de Códigos RS sobre GF(26) com n = 31, considerando modulação 32-FSK

Desempenho de Códigos RS sobre GF(26) com n = 31, considerando modulação 32-FSK

Desempenho de Códigos RS com R = 7/8

Desempenho de Códigos RS com n = 64

Desempenho de Códigos RS com n = 31 e Modulação BPSK

Decodificador de Códigos BCH q-ários

Desempenho de Códigos de Reed-Solomon