Prévia do material em texto
INSTITUTO SUPERIOR DE ENGENHARIA DE LISBOA
LICENCIATURA EM ENGENHARIA DE ELETRÓNICA E
TELECOMUNICAÇÕES E DE COMPUTADORES
GRUPO DISCIPLINAR DE TELECOMUNICAÇÕES
Sistemas de Comunicação Digital
CARLOS EDUARDO DE MENESES RIBEIRO
Julho de 2014
Índice
1 INTRODUÇÃO .................................................................................................. 1
PRIMEIRA PARTE
MODULAÇÃO DE PULSOS
2 INTRODUÇÃO AOS CODIFICADORES DE SINAL ....................................11
2.1 MÉTODOS DE CODIFICAÇÃO DE SINAL ................................................................................... 11
2.2 ATRIBUTOS DOS CODIFICADORES DE SINAL ........................................................................... 11
3 CONVERSÃO ANALÓGICO-DIGITAL ........................................................15
3.1 AMOSTRAGEM ..................................................................................................................... 15
3.2 REPRESENTAÇÃO DISCRETA.................................................................................................. 19
3.3 QUANTIFICAÇÃO .................................................................................................................. 19
3.4 CODIFICAÇÃO ...................................................................................................................... 22
3.5 RELAÇÃO SINAL-RUÍDO EM QUANTIFICAÇÃO UNIFORME ........................................................ 23
3.6 DESEMPENHO E COMPROMISSO ENTRE OS ATRIBUTOS ............................................................ 26
4 QUANTIFICAÇÃO NÃO UNIFORME ...........................................................29
4.1 RELAÇÃO SINAL-RUÍDO EM QUANTIFICAÇÃO NÃO UNIFORME ................................................. 32
4.2 PCM COMPANDING............................................................................................................... 34
4.3 QUANTIFICAÇÃO ÓTIMA ...................................................................................................... 38
5 CODIFICAÇÃO PREDITIVA .........................................................................41
5.1 MODULAÇÃO POR CÓDIGO DE PULSO DIFERENCIAL ................................................................ 42
5.2 MODULAÇÃO DELTA............................................................................................................ 55
6 COMPARAÇÃO ENTRE CODIFICADORES DE SINAL ............................61
SEGUNDA PARTE
COMUNICAÇÃO DE DADOS
7 INTRODUÇÃO À TRANSMISSÃO DE DADOS............................................67
7.1 LIMITAÇÕES DOS SISTEMAS DE COMUNICAÇÃO ...................................................................... 67
7.2 MODELO DE REFERÊNCIA OSI .............................................................................................. 68
8 CÓDIGOS DE LINHA BINÁRIOS ..................................................................73
8.1 ATRIBUTOS DOS CÓDIGOS DE LINHA ...................................................................................... 73
8.2 FORMATOS DOS CÓDIGOS DE LINHA ...................................................................................... 77
8.3 BIT DE ENCHIMENTO ............................................................................................................ 84
8.4 MODO DE TRANSMISSÃO ASSÍNCRONO .................................................................................. 85
9 CANAL DE COMUNICAÇÃO ........................................................................87
9.1 CANAL AWGN DE BANDA LIMITADA .................................................................................... 87
9.2 RELAÇÃO SINAL-RUÍDO NO CANAL........................................................................................ 88
9.3 CANAL SEM DISTORÇÃO ....................................................................................................... 88
9.4 ATENUAÇÃO ........................................................................................................................ 90
9.5 ATRASO............................................................................................................................... 91
9.6 MEIOS DE TRANSMISSÃO ...................................................................................................... 92
10 LARGURA DE BANDA....................................................................................95
10.1 INTERFERÊNCIA INTERSIMBÓLICA ......................................................................................... 95
10.2 CRITÉRIO DO PRIMEIRO ZERO ESPETRAL ................................................................................ 96
10.3 CRITÉRIO DE NYQUIST ......................................................................................................... 96
10.4 PADRÃO DE OLHO .............................................................................................................. 103
11 RECETOR ÓTIMO ........................................................................................ 109
11.1 DESCODIFICADOR DE MÁXIMO A POSTERIORI ....................................................................... 109
11.2 DESCODIFICADOR DE MÁXIMA VEROSIMILHANÇA ................................................................ 111
11.3 PROBABILIDADE DE ERRO DE BIT ........................................................................................ 112
11.4 FILTRO ADAPTADO ............................................................................................................. 115
11.5 FILTRO ADAPTADO NORMADO ............................................................................................ 118
11.6 BER EM CÓDIGOS DE LINHA BINÁRIOS ................................................................................. 119
11.7 COMPARAÇÃO DO DESEMPENHO ......................................................................................... 127
12 TRANSMISSÃO M-ÁRIA EM BANDA DE BASE ....................................... 129
12.1 PAM DIGITAL – MODULAÇÃO POR AMPLITUDE DE IMPULSOS DIGITAL ................................. 129
12.2 ENERGIA MÉDIA POR SÍMBOLO ............................................................................................ 130
12.3 LARGURA DE BANDA .......................................................................................................... 130
12.4 PROBABILIDADE DE ERRO DE SÍMBOLO................................................................................ 131
12.5 PROBABILIDADE DE ERRO DE BIT ........................................................................................ 132
12.6 CÓDIGO 2B1Q ................................................................................................................... 134
12.7 COMPARAÇÃO DO DESEMPENHO ......................................................................................... 136
12.8 REGENERAÇÃO DO SINAL ................................................................................................... 137
12.9 CAPACIDADE DE CANAL ..................................................................................................... 137
13 CODIFICAÇÃO PARA CONTROLO DE ERROS ...................................... 139
13.1 ATRIBUTOS DOS CÓDIGOS DE CONTROLO DE ERROS ............................................................. 139
13.2 PROBABILIDADE DE ERRO DE BLOCO ................................................................................... 142
13.3 CÓDIGO DE PARIDADE ........................................................................................................ 143
13.4 CARÁCTER DE VERIFICAÇÃO DE BLOCO (BCC) .................................................................... 145
13.5 DISTÂNCIA DE HAMMING E CAPACIDADE DE DETEÇÃO E CORREÇÃO..................................... 146
13.6 CÓDIGOS LINEARES ............................................................................................................149
13.7 CÓDIGO DE REPETIÇÃO ....................................................................................................... 150
13.8 CÓDIGO DE HAMMING ........................................................................................................ 152
13.9 MATRIZ GERADORA ........................................................................................................... 156
13.10 CÓDIGOS CÍCLICOS ............................................................................................................. 161
13.11 IP CHECKSUM .................................................................................................................... 166
13.12 INTERLEAVING .................................................................................................................... 167
14 DISCUSSÃO SOBRE TRANSMISSÃO DE DADOS .................................... 169
APÊNDICES .......................................................................................................... 171
APÊNDICE 1 – ESTIMAÇÃO ESTATÍSTICA DA POTÊNCIA DE UM SINAL ................................................ 172
APÊNDICE 2 – DECIBÉIS ................................................................................................................. 174
APÊNDICE 3 – ALGORITMO DE QUANTIFICAÇÃO ÓTIMA ................................................................... 176
APÊNDICE 4 – SINUSOIDE COM PREDITOR UNITÁRIO ........................................................................ 177
APÊNDICE 5 – FUNÇÃO DE AUTOCORRELAÇÃO................................................................................ 178
APÊNDICE 6 – FUNÇÕES DENSIDADE ESPETRAL DE POTÊNCIA EM CÓDIGOS DE LINHA ........................ 179
APÊNDICE 7 – FUNÇÃO COMPLEMENTAR DE ERRO ........................................................................... 180
APÊNDICE 8 – BER COM CRITÉRIO MAP ......................................................................................... 182
APÊNDICE 9 – LARGURA DE BANDA EQUIVALENTE DO RUÍDO .......................................................... 184
APÊNDICE 10 – BER EM SISTEMAS DISCRETOS ................................................................................ 186
APÊNDICE 11 – DISTRIBUIÇÃO DE PROBABILIDADE BINOMIAL ......................................................... 188
PRINCIPAIS EQUAÇÕES ................................................................................... 191
MODULAÇÃO DE PULSOS ............................................................................................................... 191
TRANSMISSÃO BINÁRIA ................................................................................................................. 194
TRANSMISSÃO M-ÁRIA .................................................................................................................. 197
CODIFICAÇÃO PARA CONTROLO DE ERROS ...................................................................................... 199
PERGUNTAS TEÓRICAS.................................................................................... 201
EXERCÍCIOS RESOLVIDOS .............................................................................. 203
EXERCÍCIOS PROPOSTOS ................................................................................ 239
EXERCÍCIOS PROPOSTOS EM MATLAB ....................................................... 253
PCM – MODULAÇÃO POR CÓDIGO DE PULSO .................................................................................. 253
DPCM E DM – CODIFICAÇÃO PREDITIVA ....................................................................................... 257
TRANSMISSÃO NUM CANAL AWGN ............................................................................................... 260
CODIFICAÇÃO PARA CONTROLO DE ERROS ...................................................................................... 263
PROJETO DE TRANSMISSÃO DIGITAL DE SINAIS .............................................................................. 265
GLOSSÁRIO ......................................................................................................... 267
BIBLIOGRAFIA ................................................................................................... 269
Mais uma vez, com entusiasmo!!!
Introdução 1
1 Introdução
Por telecomunicações entende-se comunicação à distância de informação,
utilizando sinais eletromagnéticos, através de fios, sistemas óticos ou radio. As
telecomunicações fazem parte do nosso dia-a-dia, aproximando pessoas e empresas e
contribuindo decisivamente para o bem-estar das populações e para o desenvolvimento
da economia. Cada vez mais temos o telefone à mão, o acesso à Internet em múltiplos
dispositivos, as redes sociais, o rádio nos automóveis, a televisão de alta definição, em
direto pré-gravada ou através de vídeos encontrados na Internet. Mas as
telecomunicações não envolvem apenas a comunicação humana, mas também o envio
de ficheiros de computador, a troca de correio eletrónico, a navegação por satélite, etc..
A informação, como os sinais de fala, a música, as imagens e o vídeo, é do tipo
analógica, ou seja, a sua representação por sinais elétricos tem uma variação análoga à
variação da grandeza física que se quer representar, tendo geralmente uma variação
contínua. Na comunicação analógica os sinais analógicos alteram continuamente a
amplitude ou frequência de uma onda sinusoidal, denominada portadora.
Um sinal digital é composto por um conjunto de símbolos. Num sistema digital
binário, por exemplo, existem apenas dois símbolos, vulgarmente designados por
símbolos lógicos “1” e “0”. Para transmitir sinais analógicos em sistemas digitais, os
sinais analógicos têm que ser previamente convertidos numa sequência de símbolos.
Estes símbolos são transmitidos através de um número finito de formas de onda.
Vivemos cada vez mais num mundo digital, estando a transmissão de modo
analógico de sinais de fala áudio e vídeo a ser gradualmente substituída por tecnologias
digitais, com algumas vantagens, tais como:
Os sistemas de transmissão digital são menos sensíveis ao ruído do canal de
transmissão que os analógicos. Para canais de maior dimensão os sinais digitais
podem ser regenerados em pontos intermédios do canal, virtualmente sem erros;
O desenvolvimento das tecnologias digitais tem vindo a criar novos tipos de
serviços, utilizando nomeadamente plataformas como a Internet e o telefone
2 Introdução Carlos Meneses
móvel. Tendo a primeira começado por transmitir apenas texto e a segunda
apenas sinais de fala, estas estão a fundir-se e a partilhar também áudio e
televisão, naquilo a que se designa de convergência das telecomunicações;
Utilizando métodos de codificação de fonte eficazes e codificações M-ária que
são espetralmente mais eficientes (maior número de bits transmitidos em relação
à largura de banda ocupada) que as binárias, a utilização de transmissão digital
pode ocupar menor largura de banda que a transmissão analógica;
Os sinais digitais são mais fáceis de encriptar e portanto de realizar transmissões
privadas e seguras;
O acesso, armazenamento e cópia no formato digital é mais simples e acessível
que os mesmos processos em formato analógico.
Em 1837, Samuel Morse, pintor Americano, inventa o telégrafo, dando início às
telecomunicações com um sistema em tempo real. As mensagens eram transmitidas
através do código Morse. Este é de facto digital, com dois símbolos correspondentes à
presença do sinal (também designado por mark, uma vez que para descodificar a
mensagem no recetor, se traçava uma marca num papel) ou à interrupção (também
designada por space, uma vez que se deixava um espaço em branco entre marcas). Por
analogia com este código, o nível lógico “1” é por vezes designado de mark, e o nível
lógico “0” por space. A presença do sinal pode ser de curtaduração (ponto) ou de longa
duração (traço) e as interrupções de duração diferente correspondente à separação entre
pontos e traços, letras, palavras e frases. Até aos nossos dias muitos outros
acontecimentos marcaram a evolução das telecomunicações, sendo apresentados
seguidamente alguns dos mais importantes:
1850 – Pela primeira vez instalado um cabo submarino no Canal da Mancha,
entre o sul de Inglaterra e ao norte de França, para transmissão de sinais telegráficos. O
primeiro lançamento de um cabo submarino intercontinental com sucesso deu-se em
1856, entre os EUA e a Inglaterra, embora a um débito de apenas 2 palavras por minuto;
Introdução 3
1860 – António Meucci, Italiano, inventou o telefone por volta de 1860. No
entanto durante muitos anos o inventor do telefone foi considerado Alexander Graham
Bell, Escocês, que o patenteou em 1876. Por coincidência, Elisha Gray, Americano,
tentou patentear um sistema idêntico poucas horas depois de Bell;
1864 – James Clerck Maxwell, Britânico, formulou a teoria eletromagnética e
previu a existência de ondas de rádio. A existência destas ondas ficou
experimentalmente provada em 1887, por Heinrich Rudolf Hertz, Alemão;
1893 – Roberto Landell de Moura, Padre Brasileiro, efetuou, supostamente, a
primeira transmissão de fala via rádio, em Portalegre, Brasil. Só no entanto em 1920, na
Argentina e EUA, começaram as transmissões para entretinimento;
1896 – Guglielmo Marconi, Italiano, patenteou a telegrafia sem fios (TSF), que
transmitia sinais telegráficos via rádio;
1904 – John Ambrose Fleming, Britânico, inventou o díodo e deu origem ao
desenvolvimento da eletrónica moderna;
1923 – Vladimir Zworykin, Russo e Americano, registrou a patente do tubo de
raios catódicos, dando origem a que em 1927, John Logie Baird, Escocês, e Philo
Taylor Farnsworth, Americano, demonstrassem um sistema completo de televisão;
1928 – John B. Johnson, Americano, mediu pela primeira vez o ruído térmico,
uma das principais causas da degradação de qualidade das comunicações.
1928 – Harry Nyquist, Americano, publica o teorema da amostragem no artigo
“Certain Topics in Telegraph Transmission Theory” e explica o ruído térmico;
1945 – Arthur Clarke, Britânico, apresentou o conceito de satélite
geoestacionário, no seu artigo “Can Rocket Stations Give Worldwide Radio
Coverage?”, publicado na revista Wireless World;
1946 – J. Presper Eckert Jr., John W. Mauchly, Americanos, da Universidade de
Pensilvânia, EUA, criaram o ENIAC, primeiro computador eletrónico digital;
4 Introdução Carlos Meneses
1948 – Claude Shannon, Americano, apresentou o seu artigo intitulado “A
Mathematical Theory of Communication”, que lançou as bases da teoria da
comunicação, ainda hoje atual;
1950 – Richard W. Hamming, Americano, publica “Error detecting and error
correcting codes”, base da codificação para controlo de erros;
1956 – A empresa Ericsson desenvolveu o primeiro telefone móvel para
automóvel, que pesava 40 kg. Utilizava um conjunto de antenas interligadas (células) e
conseguia escolher automaticamente o canal rádio (frequência da portadora) de modo a
evitar interferências;
1957 – A URSS lançou o Sputnik I, o primeiro satélite artificial da Terra. Uma
forma esférica de 50 cm e pesava 83,6 kg. Transmitia um sinal rádio do tipo “beep” nas
frequências 20 MHz e 40 MHz, capaz de ser recebido na terra por qualquer recetor.
Funcionou 22 dias, até que as baterias se esgotaram. Orbitou a terra durante 3 meses;
1969 – Foi criada a primeira rede de computadores, designada de ARPANET
(Advanced Research Project Agency), com transmissão de pacotes entre computadores.
Ligava a Universidade da Califórnia – Los Angeles, SRI – Stanford Research Institute,
Universidade da Califórnia – Santa Bárbara e a Universidade de Utah. Considerado o
primeiro troço da Internet.
1973 – A empresa Motorola apresentou o primeiro telefone móvel pessoal,
o Motorola Dynatac 8000X. Com 25 cm de comprimento e 7 cm de largura, pesava
cerca de 1 kg. A primeira ligação foi realizada por Martin Cooper, diretor de sistemas
de operações da empresa. Só contudo em 1979 o telefone móvel entrou em
funcionamento generalizado na Suécia e no Japão;
Em Portugal, o serviço de telégrafo iniciou-se em 1855, com uma ligação entre o
Terreiro do Paço, Palácio de S. Bento, Palácio das Necessidades e o Palácio de Sintra,
aonde normalmente o Rei se encontrava. Ainda em 1855, o primeiro cabo submarino foi
Introdução 5
lançado entre Lisboa e os Açores. Em 1857 o serviço de telégrafo chegou ao grande
público. Em 1902 inauguraram-se as primeiras estações de telegrafia sem fios.
Em 1877 começaram as primeiras experiências de instalação do telefone entre
Lisboa e Carcavelos, que deram origem em 1882 à exploração do serviço telefónico em
Lisboa e Porto. Em 1914 foi efetuada a primeira transmissão rádio com áudio em
Portugal, por Fernando Medeiros, tendo sido ouvido apenas por um operador de
telegrafia sem fios a 100 m de distância. Desde aí foram efetuados várias emissões
esporádicas, mas só em 1925 a estação “P1AA – Rádio Portugal” (futura CT1AA)
iniciou emissões regulares. A primeira emissão de televisão em Portugal data do ano de
1956, ainda experimental e a preto e banco. A primeira emissão da televisão a cores
deu-se em 1976.
Em 1985, docentes da Universidade do Minho estabelecem a primeira ligação
Internet em Portugal com a Universidade de Manchester. O primeiro operador de
Internet no país começou a operar em 1994, através de modems de 28,8 kbit/s,
utilizando linhas telefónicas tradicionais.
A comunicação digital pode ser considerada como a arte da codificação: (1)
codificação de sinais que representa em formato digital o sinal analógico; (2)
codificação de linha que representa em formas de onda a sequência digital; (3) e a
codificação para controlo de erros que codifica a sequência a transmitir de modo a que
no recetor se possa detetar ou corrigir erros devido aos efeitos do canal de transmissão
(em particular o ruído do canal).
Dada a cada vez maior importância da comunicação digital, uma introdução a
este tema deve corresponder ao primeiro contacto dos estudantes com as
telecomunicações. Este texto foi escrito neste sentido e pretende dar uma introdução
sobre a transmissão digital entre dois pontos, através de um canal de comunicação. Na
figura 1.1 são apresentados os blocos constituintes deste sistema de comunicação,
conjuntamente com as principais medidas de qualidade: relação sinal ruído (SNR –
Signal-to-noise ratio); e probabilidade de erro (BER – bit error rate). A primeira mede a
qualidade de um sinal analógico afetado por ruído e a segunda a qualidade de uma
6 Introdução Carlos Meneses
transmissão digital na presença de erros de bit. O texto apresenta os conceitos e discute
os compromissos entre os recursos disponíveis, nomeadamente dois dos mais
importantes, a energia disponível no transmissor e a largura de banda disponível no
canal de comunicação. Um das principais dificuldades encontradas em projeto de
telecomunicações é a otimização do sistema de modo a que este tenha a melhor
qualidade tendo em conta os recursos disponíveis.
Figura 1.1
Sistema de comunicação digital entre dois pontos.
Os blocos em cima correspondem aos blocos constituintes do transmissor e em
baixo do recetor, separados pelo canal de comunicação.
O texto compreende duas partes distintas: A primeira parte apresenta uma
introdução à codificação de sinais (codificação de fonte) através da modulação de
pulsos; a segunda parte apresenta uma introdução à transmissão de dados. Estas duas
partes podem ser encaradas de um modo independente, mas complementam-se numa
introdução à comunicação digital. Para compreensão do texto os leitores devem ter
conhecimentos a nível introdutório sobre estatística e probabilidades, sinais e análise de
Fourier e sobresistemas analógicos e digitais.
A primeira parte, sobre codificação de sinais utilizando modulação de pulsos,
compreende as secções 2 a 6 e é organizada do modo seguinte: A secção 2 introduz os
métodos e atributos dos codificadores de sinal; A secção 3 apresenta a conversão
Introdução 7
analógico-digital e codificação amostra a amostra (PCM – Pulse code modulation) com
quantificação uniforme, estabelecendo-se um sistema mínimo de codificação de sinais;
A secção 4 descreve a quantificação PCM não uniforme que tira partido da distribuição
de amplitudes do sinal; A secção 5 apresenta os conceitos básicos da codificação
preditiva, que tira partido da correlação entre amostras consecutivas. De modo a que o
codificador se ajuste às caraterísticas do sinal de entrada, descrevem-se ainda métodos
de predição e quantificação adaptada; A secção 6 sintetiza as principais conclusões
sobre os codificadores de sinais apresentados, comparando-os numa perspetiva de
compromisso em relação aos seus atributos.
A segunda parte, sobre transmissão de dados, compreende as secções 7 a 14 e é
organizada do modo seguinte: A secção 7 introduz a transmissão de dado e enquadra os
diversos blocos no modelo OSI (International System Intercommunication). A secção 8
começa por descrever os atributos dos códigos de linha, que correspondem aos sinais a
serem transmitidos em banda de base, ou seja, em canais do tipo “passa-baixo”.
Apresenta seguidamente os principais códigos de linha binários. Termina com um
exemplo de transmissão assíncrona, utilizada especialmente quando a geração da
informação é aleatória, em pequena quantidade e para distâncias curtas; A secção 9
apresenta o modelo AWGN (Additive white Gaussian noise) do canal de comunicação e
suas limitações: largura de banda, ruído, atenuação e distorção na banda; A secção 10
apresenta a solução do problema da interferência intersimbólica que advém da limitação
da largura de banda do canal de comunicação, ao mesmo tempo que se limita a largura
de banda ocupada. A secção 11 é dedicada a outra das limitações do canal de
comunicação, a introdução de ruído aditivo, gaussiano e branco. É apresentado o recetor
ótimo e estimada a probabilidade de erro de bit, para todos os códigos de linha
mencionados na secção 8; A secção 12 introduz o conceito de transmissão M-ária,
essencial para melhorar a eficiência espetral. É abordada a Lei de Hartley-Shannon
sobre capacidade de canal em canais com ruído aditivo e gaussiano, correspondendo ao
débito binário máximo possível de transmitir, virtualmente sem erros, para determinada
relação sinal-ruído e largura de banda do canal; A secção 13 dedica-se à codificação
para controlo de erros. Havendo erros na comunicação entre o transmissor e o recetor é
8 Introdução Carlos Meneses
possível introduzir informação redundante de modo a os detetar ou corrigir; A secção 14
sintetiza as principais conclusões e compara os diversos códigos apresentados, tendo em
atenção os compromissos envolvidos nos atributos quer dos códigos de linha quer dos
códigos de correção.
As secções 7 a 11 devem ser vistas de modo sequencial e constituem um todo
coerente, obrigatório numa introdução mínima sobre comunicação de dados. Note-se
contudo que a secção 12 introduz o conceito de M-ária, base da eficiência espetral. A
secção 13 pode ser excluída ou ser abordada logo a seguir à secção 11. Num contexto
por exemplo de redes de computadores pode mesmo ser abordada independentemente
do resto do texto, bastando para tal assumir que numa transmissão existem erros de bit
devido às limitações do canal de comunicação;
Seguidamente apresentam-se vários apêndices que correspondem a temas de
dois níveis: (1) temas que devem ser conhecidos, como conceitos de estatística e
probabilidades e de sinais e sistemas, mas que devido à sua importância para a
compreensão deste texto aqui se recordam; (2) temas aprofundando alguns assuntos,
que não são essenciais para a compreensão deste texto mas que podem ser do interesse
dos leitores.
Após uma compilação das principais equações deduzidas ao longo do texto, para
que os estudantes possam consolidar os seus conhecimentos são ainda propostas
atividades com âmbitos distintos: perguntas teóricas; exercícios resolvidos; exercícios
propostos com soluções; e exercícios a resolver recorrendo ao ambiente de programação
MATLAB (ou qualquer outro), sendo necessários conhecimentos de programação pelo
menos a nível introdutório. Está indicado em cada exercício a secção até à qual são
necessários conhecimentos para o resolver.
Juntamente com a escrita deste texto foi desenvolvido em MATLAB um
simulador intitulado ICDigital (Introdução à comunicação digital), que simula a
generalidade dos sistemas apresentados e que pode contribuir para melhor expor e
consolidar os conceitos apresentados, sendo possível verificar experimentalmente os
valores obtidos pelas equações deduzidas teoricamente.
Primeira Parte
MODULAÇÃO DE PULSOS
(Introdução à codificação de sinais)
Em muitos sistemas de transmissão de dados, os sinais analógicos são primeiro
convertidos para a forma digital pelo transmissor, transmitidos na forma digital e finalmente
reconstruídos no recetor em sinais analógicos. O sinal resultante segue, normalmente, o sinal de
entrada mas não é exatamente o mesmo, uma vez que o quantificador, no transmissor, produz os
mesmos dígitos (código) para todos os valores que caem num mesmo intervalo, de um número
finito de intervalos.
O recetor deve fornecer, a cada combinação de dígitos, o mesmo valor correspondente ao
valor do sinal reconstruído, para todas os valores do sinal de entrada que caiam dentro de um
mesmo intervalo de quantificação.
A diferença entre o sinal de entrada e de saída, assumindo que não existe erro na
transmissão dos dígitos, é o ruído de quantificação. Uma vez que o débito de qualquer sistema de
transmissão digital é finito, deve-se utilizar um quantificador que mapeia a entrada num número
finito de intervalos.
Joel Max
Quantizing for Minimum Distortion, 1960
Introdução aos codificadores de sinal 11
2 Introdução aos codificadores de sinal
Num sistema de comunicação digital, quando o sinal a transmitir é analógico,
variando continuamente com o tempo, é necessário primeiro convertê-lo para formato
digital, ou seja, representa-lo (codificá-lo) digitalmente com um número finito de bits.
2.1 Métodos de codificação de sinal
Existem diversos métodos de codificação de sinais: codificação de forma de
onda; codificação paramétrica; e codificação híbrida. Serão apenas discutidos os
métodos de codificação de forma de onda utilizando modulação por código de pulso, de
débito binário mais elevado. É também dado especial realce à codificação de sinais de
fala, dando origem a aplicações que se encontram bastante difundidas. Embora com
estas limitações os conceitos apresentados são no entanto essenciais para uma
compreensão posterior dos outros métodos de codificação e para a codificação de outro
tipo de sinais, tais como áudio, imagens e vídeo.
2.2 Atributos dos codificadores de sinal
Nos critérios de escolha de um codificador para determinada aplicação, existem
alguns atributos que são decisivos, enquanto outros ou não têm influência ou algum
compromisso pode ser levado em consideração. Os atributos mais relevantes dos
codificadores são o débito binário, a qualidade, a complexidade dos algoritmos e a
quantidade de memória necessária, a sensibilidade a erros de canal e o atraso
introduzido. Seguidamente descrevem-se cada um destes atributos e abordam-se os
principais compromissos envolvidos.
2.2.1 Débito binário
Ao transmitir sinais, o débito binário de codificação da fonte, medido em
número de bits de codificação por segundo, é um fator importante na definição da
largura de banda requerida para o canal de transmissão. A codificaçãodigital é também
utilizada no armazenamento para utilização posterior. Neste contexto o débito binário
determina o espaço requerido na unidade de armazenamento. Para determinada
12 Modulação de pulsos Carlos Meneses
quantidade de memória disponível, quanto menor for o débito binário maior duração do
sinal pode ser armazenada.
A primeira motivação da codificação de sinais é pois a redução do débito binário
com vista a uma transmissão ou a um armazenamento mais eficientes. Para que este
sinal tenha uma alta qualidade e possa ser considerado como uma referência, é
tipicamente representado com uma resolução de pelo menos 16 bits de codificação por
amostra. É este sinal, já na sua forma digital, que é processado de modo a gerar um
conjunto de bits com um débito binário mais reduzido, para ser transmitido ou
armazenado. No recetor, este conjunto de bits constrói uma aproximação do sinal
original ainda na forma digital e converte-o posteriormente num sinal analógico.
2.2.2 Qualidade
A conversão de um sinal de analógico para digital envolve a conversão de um
valor contínuo num valor aproximado de entre um número finito de valores. A esta
conversão dá-se o nome de quantificação1. A quantificação provoca sempre distorção,
denominado de ruído de quantificação. Uma das medidas de qualidade mais utilizadas
para medir esta distorção é a relação entre a potência do sinal original e a potência do
ruído de quantificação (SNRq), sendo normalmente expressa em decibéis (dB). O
problema básico da quantificação/codificação é o de obter um mínimo de distorção para
determinado débito binário, ou manter a distorção aceitável ao menor débito binário
possível.
Para além da quantificação, a largura de banda dos sinais de entrada marca desde
logo a qualidade. Por exemplo os sinais de fala têm uma banda perceptualmente
importante até cerca dos 10.000 Hz, embora na denominada banda telefónica esta seja
limitada entre os 300 e os 3.400 Hz. Está também normalizada a banda dos 50 aos
7.000 Hz, sendo o sinal amostrado a 16.000 amostras por segundo, que denominaremos
por banda larga. Esta banda é utilizada em aplicações multimédia, em teleconferência e
no videotelefone.
1Termo usado em mecânica quântica para designar o facto de muitos dos parâmetros que descrevem um
sistema só poderem ter um conjunto discreto de valores permitidos.
Introdução aos codificadores de sinal 13
A relação sinal-ruído é um método objetivo de avaliação da qualidade, mas nem
sempre o melhor. Uma das alternativas à avaliação da qualidade é a avaliação subjetiva
ou percetual, por média da opinião (MOS – Mean Opinion Score), recomendação P.800
do ITU-T (International Telecommunication Union - Telecommunication
Standardisation Sector). Nesta, ouvintes são confrontados com frases processadas
através do codificador em teste, sendo-lhes pedido que classifiquem a sua qualidade
através de uma escala de 5 pontos (1 a 5), a que corresponde uma qualidade desde a má
à excelente (má, fraca, razoável, boa, excelente). Do valor médio das respostas
obtém-se a classificação final em termos percetuais.
2.2.3 Complexidade e memória necessária
Quanto maior complexidade apresentar o algoritmo de codificação e maior
quantidade de memória for necessária, mais os sistemas serão dispendiosos, volumosos
e com maior consumo de energia. O primeiro codificador a ser normalizado, a
recomendação G.711 do ITU-T a 64 kbit/s, que data de 1972, era então implementado
diretamente no conversor analógico-digital, devido à sua baixa complexidade e à
ausência de necessidade de memória. Com a vulgarização dos processadores digitais de
sinal (DSP – Digital signal processor) e o aumento da complexidade dos codificadores,
os sinais passaram a ser quantificados uniformemente, tipicamente com 16 bits por
amostra, e só depois codificados a débitos binários mais baixos. A complexidade é
normalmente aferida através do número de MIPS (milhões de instruções por segundo)
ou MFLOPS (milhões de instruções em virgula flutuante por segundo) necessários para
processar os algoritmos de codificação, enquanto a memória necessária é medida em
número de bytes.
2.2.4 Sensibilidade a erros de canal
Na transmissão do sinal codificado este fica sujeito a erros introduzidos pelo
canal, que podem ser de dois tipos: erros aleatórios independentes, causados pelo ruído
estacionário; e erros em rajada, limitados temporalmente, causados por interferências
eletromagnéticas nas imediações do canal. Estes erros afetam a qualidade do sinal,
degradando a relação sinal-ruído. O impacto na qualidade depende contudo do tipo de
14 Modulação de pulsos Carlos Meneses
codificador, sendo o impacto maior em codificadores que tiram partido da redundância
do sinal para diminuir o débito binário, tentando não perder muito em qualidade.
2.2.5 Atraso
O atraso em codificação de sinais é definido como o tempo máximo que medeia
entre o instante em que uma amostra é apresentada no transmissor e aquele em que a
amostra correspondente é gerada pelo recetor. Este tempo é medido estando o recetor
ligado diretamente ao transmissor, retirando portanto a contribuição dos equipamentos
de transmissão e receção e o tempo de propagação do sinal, mas não o tempo de
transmissão de cada bit.
Embora o atraso não seja importante em aplicações de armazenamento, na
conversação bidirecional, como por exemplo na comunicação telefónica, o atraso pode
tornar-se maçador e mesmo afetar a naturalidade da conversação. Limites para este
atraso poderão ir, nos casos mais permissivos, até cerca de 400 ms. Restrições mais
severas são aplicadas quando as redes de comunicações não incluem canceladores de
eco, pois o atraso é notado pelo próprio orador.
Conversão Analógico-Digital 15
3 Conversão Analógico-Digital
De modo a transmitir um sinal digitalmente é necessário convertê-lo numa
sequência binária. Na sua forma mais simples este processo corresponde à conversão
analógico-digital, ou seja, converter um sinal analógico, de variação contínua no
domínio do tempo (representando por exemplo variações de pressão produzidas por um
som quando captado através de um microfone) num conjunto finito de bits. A
dificuldade encontrada prende-se com o carácter contínuo e portanto com infinitas
possibilidades do sinal, quer ao longo do tempo quer em amplitude. Para resolver estes
problemas a conversão analógico-digital envolve três etapas que serão objeto de análise
no resto desta secção:
A amostragem, que tem como objetivo tornar o sinal discreto no domínio do
tempo e não envolve perda de informação desde que alguns pressupostos não
sejam quebrados (teorema da amostragem de Nyquist2-Shannon3);
A quantificação, que torna as amostras do sinal discretas na amplitude,
transformando uma variável contínua num número finito de valores;
A codificação, que atribui a cada amplitude discreta de cada pulso um código,
composto por um conjunto de bits. A esta codificação amostra-a-amostra dá-se o
nome de modulação por código de pulso (PCM – Pulse code modulation).
3.1 Amostragem
A amostragem tem como objetivo tornar o sinal discreto no domínio do tempo.
Pode ser descrita como a “observação” do valor do sinal analógico de entrada, m(t)
(m – message), a intervalos regulares. O sinal amostrado, m(t), é obtido (figura 3.1)
pelo produto entre o sinal de entrada e um trem de impulsos de dirac com período Ts
(sampling period). Dado que a amostragem corresponde a uma multiplicação no
domínio do tempo, o espetro do sinal amostrado corresponde à convolução do espetro
do sinal m(t), que se assume de banda limitada W, pela Transformada de Fourier do
2 Harry Nyquist, 1889-1976. Sueco-Americano, trabalhou na AT&T e nos Laboratórios Bell.
3 Claude Shannon, 1916-2001. Americano,trabalhou nos Laboratórios Bell e foi professor no MIT.
16 Modulação de pulsos Carlos Meneses
trem de impulsos de dirac, também um trem de impulsos de dirac com período e área
fs=1/Ts.
Figura 3.1
Interpretação da amostragem no domínio do tempo.
Em a) representa-se um exemplo de um sinal m(t) a amostrar. Em b) representa-se um trem
de impulsos de dirac de área unitária e período Ts, que multiplicado pelo sinal de entrada
produz o sinal amostrado representado em c).
A convolução é linear, o que implica que a convolução com um trem de
impulsos de dirac corresponde à soma das convoluções com cada um dos impulsos de
dirac. Convolver um sinal com um impulso de dirac corresponde a colocar esse sinal na
posição do impulso de dirac e afetá-lo em amplitude pela respetiva área.
Para reconstruir o sinal amostrado é necessário filtrá-lo passa-baixo (filtro
reconstrutor) com frequência de corte fs/2, e com ganho Ts para manter a amplitude
original do sinal. De modo a evitar a sobreposição espetral e a correspondente distorção
a que se dá o nome de aliasing, a frequência de amostragem tem que ser igual ou
superior a duas vezes o valor W da frequência máxima do sinal (teorema da amostragem
ou teorema de Nyquist-Shannon):
Wf s 2 . (3.1)
Conversão Analógico-Digital 17
Figura 3.2
Interpretação da amostragem no domínio da frequência.
a) Espetro de um sinal m(t), com banda limitada W.
b) Espetro do trem de impulsos de dirac (figura 3.1 b) que é também um trem de impulsos
de dirac. O espetro do sinal amostrado corresponde à convolução dos espetros em a) e b) e
é apresentado para dois casos, em c) e d). A reconstrução do sinal é possível sem distorção
para o exemplo em c) por filtragem passa-baixo com frequência de corte fs/2, pois W<fs/2.
Em d) não é possível recuperar o sinal sem erro uma vez que as repetições espetrais se
sobrepõem (aliasing), pois W>fs/2.
Teorema da Amostragem de Nyquist-Shannon
É possível amostrar e reconstruir, sem erro, um sinal com banda limitada W,
desde que a frequência de amostragem fs seja superior ao ritmo de Nyquist 2W. A
reconstrução sem distorção do sinal amostrado é obtida por filtragem passa-baixo à
frequência de Nyquist fs/2. Se fs for inferior a 2W o sinal reconstruído sofrerá uma
distorção por sobreposição dos espetros, a que se dá o nome de aliasing.
18 Modulação de pulsos Carlos Meneses
Quando não há certeza de se evitar o aliasing, antes da amostragem o sinal deve
ser previamente limitado à frequência fs/2, com um filtro passa-baixo (filtro
anti-aliasing). Na figura 3.3 é apresentado o diagrama de blocos de toda a cadeia
amostragem-reconstrução.
Figura 3.3
Cadeia amostragem-reconstrução.
Filtro anti-aliasing – amostragem – filtro reconstrutor.
O filtro anti-aliasing corta as frequências acima de fs/2.
O filtro reconstrutor faz interpolação do tipo sinc para converter o sinal em analógico.
O filtro anti-aliasing e reconstrutor são idênticos mas têm papel diferente na cadeia
amostragem-reconstrução.
À frequência mínima de amostragem, W2 , denomina-se ritmo de Nyquist. À
metade da frequência de amostragem, fs/2, denomina-se frequência de Nyquist.
Uma vez que o filtro reconstrutor é linear, a reconstrução pode ser interpretada
como a sobreposição de funções sinc (figura 3.4) devidas à resposta em frequência do
filtro, pesadas pelo valor da amostra correspondente e deslocadas para a respetiva
posição no tempo.
Para sinais de fala com qualidade telefónica está normalizada (POTS - plain old
telephone servisse; GSM - Group special mobile) uma frequência de amostragem de
8 kHz e uma filtragem passa-banda da entre os 300 Hz e os 3.300 Hz, denominada
banda telefónica. A frequência de amostragem superior à mínima exigida pelo teorema
da Nyquist-Shannon é justificada pela necessidade de uma banda de guarda, devida à
caraterística não ideal dos filtros realizáveis.
Conversão Analógico-Digital 19
Figura 3.4
Interpretação da reconstrução do sinal no domínio do tempo.
O sinal é reconstruído por sobreposição de funções sinc (resposta impulsiva do filtro de
reconstrução), pesadas pelos valores da amostra correspondente e deslocadas para a sua
posição. As funções tomam o valor zero no instante de todas as outras amostras.
3.2 Representação discreta
Como os sinais resultantes da amostragem tem valores não nulos apenas em
múltiplos do período de amostragem Ts, estes podem ser representados com vantagens
na sua versão discreta (utilizada em processamento digital de sinais) m[n], em que a
variável independente n toma apenas valores inteiros. A amostra m[n] é interpretada
como a amostra n correspondente ao tempo nTs. Note-se que poderá haver sinais
discretos cuja origem não é um sinal amostrado, interpretando-se neste apenas como a
amostra n.
3.3 Quantificação
Quantificação de um sinal é o processo que converte um sinal amostrado
(discreto no tempo), num sinal com valores também discretos em amplitude.
Considerando a gama dos sinais a quantificar entre o intervalo –V e V, (figura 3.5)
dividida em L intervalos de quantificação iguais e de dimensão q, a quantificação dá-se
20 Modulação de pulsos Carlos Meneses
pela aproximação do valor de uma amostra que pertença a determinado intervalo pelo
seu representante, denominado valor de quantificação vj do intervalo.
Figura 3.5
Quantificação de sinais.
Cada amostra do sinal amostrado m[n] é quantificada em um de L intervalos, por aproximação a
um seu representante, denominado valor de quantificação.
De modo a ser escolhido o valor mais próximo do valor do sinal de entrada
(menor ruído de quantificação), os valores de decisão tj que definem os intervalos de
quantificação devem estar equidistantes dos valores de quantificação vj:
2
1 jjj
vv
t . (3.2)
Devido à aproximação que se dá na quantificação, esta, ao invés da amostragem
quando dentro dos limites impostos pelo teorema da amostragem, introduz sempre
distorção. A quantificação é um processo irreversível, pois é impossível determinar,
dentro do intervalo de quantificação, qual o valor de entrada m[n] que produziu o valor
quantificado mq[n]. A esta distorção dá-se o nome de ruído de quantificação, definido
como a diferença entre o valor da amostra de entrada e o valor de quantificação:
nmnmnq q . (3.3)
Conversão Analógico-Digital 21
Quando os intervalos de quantificação são todos iguais, os quantificadores
denominam-se de uniformes. A dimensão de cada intervalo de quantificação vem, neste
caso:
L
V
q
2
, (3.4)
e o valor máximo do ruído de quantificação corresponde a metade do valor do intervalo
de quantificação q .
Existem dois tipos de quantificadores uniformes: midrise e midtread.
Os quantificadores midrise, apresentado um exemplo para 4 intervalos na figura
3.6, incluem o valor zero como valor de decisão. Nas zonas de ausência de sinal, devido
a pequenas variações causadas por ruído, este quantificador flutuará entre os dois
valores de quantificação em torno de 0 volts.
Figura 3.6
Quantificador uniforme midrise (4 intervalos).
O zero corresponde a um valor de decisão, sendo o quantificador simétrico.
Note-se que não existe um valor de quantificação coincidente com os extremos
de quantificação, –V e V, requisito vantajoso nalguns tipos de codificadores,
nomeadamente os codificadores DPCM (Differential pulse code modulation)
apresentados na secção 4. Para que isto aconteça os intervalos de quantificação
correspondem a:
1
2
L
V
q . (3.5)
22 Modulação de pulsos Carlos Meneses
Os quantificadores midtread, apresentado um exemplo para 4 intervalos na
figura 3.7, ao incluírem o 0 como valor de quantificação não sofrem da flutuação nas
zonas de silêncio, caraterística dos quantificadores midrise. Como é regra usar
quantificadores com um número par de valores de quantificação,a sua função
entrada-saída torna-se não simétrica pela inclusão num dos extremos de mais um valor
de quantificação.
Figura 3.7
Quantificador uniforme midtread (4 intervalos).
O zero corresponde a um valor de quantificação, tornando o quantificador não simétrico,
mas não sofrendo de flutuações nas zonas de silêncio.
3.4 Codificação
A codificação é a representação binária da sequência de valores de um sinal,
após amostragem e quantificação. Exprime-se pois cada um dos L valores de
quantificação possíveis através de um código. A esta codificação amostra-a-amostra
denomina-se modulação por código de pulso (PCM).
Na figura 3.8 é apresentado um código sequencial do valor de quantificação
mais pequeno para o mais alto. É ainda apresentada a sequência binária da sucessão de
amostras, sendo necessários 3 bits por amostra (L=8 níveis diferentes).
Utilizando um número L de valores de quantificação coincidente com uma
potência de 2, de modo a otimizar o número R de bits de codificação por amostra,
pode-se reescrever a equação 3.4, sendo o intervalo de quantificação dado por:
Rq
V
L
V
2
22
. (3.6)
Conversão Analógico-Digital 23
100 100 011 011 100 110 100 000 011
Figura 3.8
Amostragem e quantificação de sinais.
O sinal analógico m(t) é amostrado dando origem ao sinal m(t).
Cada amostra é quantificada, reconhecendo-se na figura L=8 valores de quantificação. Cada
valor de quantificação é codificado com um código binário sequencial de 3 bits.
O débito binário ou número de bits de codificação de cada segundo do sinal, Rb,
para uma frequência de amostragem fs vem:
sb fRR . (3.7)
3.5 Relação sinal-ruído em quantificação uniforme
Uma das medidas mais usadas para aferir a qualidade de codificadores é a
relação entre a potência do sinal a quantificar e a potência do ruído introduzido pela
quantificação.
Para uma sequência suficientemente longa de amostras, os valores do ruído
devido à quantificação podem ser considerados igualmente distribuídos no intervalo de
quantificação (distribuição uniforme), como ilustrado na figura 3.9. Esta aproximação é
válida quando se utiliza um número suficiente de valores de quantificação, digamos
para L32 (para melhor visualização a figura 3.9 apresenta apenas 4 valores de
quantificação).
24 Modulação de pulsos Carlos Meneses
A função densidade de probabilidade do ruído é, nestas condições, praticamente
uniforme à volta de cada valor de quantificação, sendo o valor máximo do ruído de
q uma vez que o valor de quantificação está a meio do respetivo intervalo. O sinal
de ruído de quantificação tem média nula e a sua potência (normalizada4) pode ser
estimada5 como a sua variância (Apêndice 1) 2q :
R
q
q
q
q
q
Vdqqdqqfq 2
22/
2/
2
222
2312
1)(
. (3.8)
Figura 3.9
Função densidade de probabilidade do ruído de quantificação.
Para um número razoável de intervalos de quantificação a função densidade de probabilidade do
ruído de quantificação aproxima-se de uma distribuição uniforme.
A potência do ruído de quantificação aumenta com o aumento do intervalo de
quantificação, ou seja com o aumento da gama de quantificação V, ou da diminuição de
L ou R. Estes valores são aproximados para quantificação midtread, podendo mesmo ser
inferior se o sinal contiver zonas de silêncio de grande duração. Nestas zonas os
quantificadores midrise têm ruído igual a q, o que para poucos bits de codificação
pode ser audível.
4 Assumindo um sinal de tensão ou corrente sobre uma carga de 1 Ω.
5 Assumindo quantificação midrise, sendo os cálculos aproximados para quantificação midtread.
Conversão Analógico-Digital 25
A relação entre a potência (normalizada) P do sinal e a potência (normalizada)
2
q do ruído é estimada através de:
2
2
2 23 V
PPSNR R
q
, (3.9)
ou em decibéis (Apêndice 2):
210
3log1002,6
V
PRSNRdB . (3.10)
A diminuição da amplitude para metade equivale a diminuir para metade o
intervalo de quantificação, a uma diminuição da potência do ruído para um quarto, a
quadruplicar a relação sinal-ruído, ou ao aumento de 6,02 dB da SNR. Contudo, a
amplitude do sinal, mmax, não deve ser superior ao valor máximo de quantificação, V.
Caso contrário produz-se ruído por saturação de amplitude, deixando as equações 3.8 a
3.10 de ser válidas. Deste modo, a tensão máxima de quantificação terá que respeitar a
inequação:
maxmV . (3.11)
Assumindo o caso ideal, ou seja, que a tensão máxima de quantificação, V,
corresponde à amplitude mmax do sinal de entrada, evitando assim a saturação de
amplitude mas minimizando o ruído de quantificação, a equação 3.10 pode ser reescrita
como,
ndB PRm
PRSNR 3log1002,63log1002,6 102
max
10
. (3.12)
A SNRq passa a ser função da potência normalizada pelo quadrado da amplitude,
sendo dada por,
2
maxm
PPn . (3.13)
26 Modulação de pulsos Carlos Meneses
3.6 Desempenho e compromisso entre os atributos
Através da equação 3.10, pode-se verificar que a qualidade depende de dois
fatores: da relação entre a potência do sinal de entrada e o quadrado do valor máximo de
quantificação; e do número de bits de codificação por amostra. Note-se ainda que a
qualidade não depende da frequência de amostragem, que deve por isso ser o ritmo de
Nyquist uma vez que minimiza o débito binário.
Na tabela 3.1 apresentam-se os valores da SNRq para codificação a 8 bits por
amostra e diversas potências normalizadas do sinal de entrada. Se para –3 dB de
potência normalizada (sinal sinusoidal (10log10(1/2)) o valor da SNRq de 50 dB é
bastante bom, o valor de apenas 7,9 dB para uma potência normalizada de –45 dB é
inaceitável. Muitos sinais, por exemplo sinais de fala, exibem esta gama de variações. A
grande dependência da qualidade em relação à potência do sinal de entrada é de facto
uma das principais desvantagens deste método.
Por cada bit de codificação por amostra a SNRq varia de 6,02 dB. Na figura 3.10
é apresentado o gráfico da SNRq em função da potência normalizada do sinal de entrada,
para diversos valores de número de bits por amostra.
Figura 3.10
Relação sinal-ruído em PCM uniforme.
Comparação para 7, 8, e 9 bits de codificação por amostra e para diversos valores de potência
normalizada (em Decibéis) do sinal de entrada.
Conversão Analógico-Digital 27
No exemplo da tabela 3.1, para garantir um valor mínimo da SNRq de
aproximadamente 32 dB para um sinal de entrada com –45 dB de potência normalizada,
seria necessário aumentar 24 dB na SNRq, ou seja utilizar mais 4 bits de codificação por
amostra, resultando num aumento eventualmente demasiado elevado do débito binário
(de 64 kbit/s para 96 kbit/s assumindo sinais de fala de banda telefónica), evidenciando
um compromisso entre o débito binário e a qualidade.
Pn dB Entrada SNRq dB
–45 7,9
–35 17,9
–25 27,9
–15 37,9
–4,77 Triangular ou distribuição uniforme 48,2
–3 Sinusoidal 49,9
0 Quadrada 52,9
Tabela 3.1
Valores da SNRq de quantificação, função da potência normalizada do sinal.
Comparação para 8 bits de codificação por amostra e para diversos valores de
potência normalizada do sinal de entrada.
Para além de aumentar o débito binário, a melhoria da qualidade através do
aumento do número de bits por amostra tem dois limites:
A complexidade dos conversores, que duplicam o número de intervalos de
quantificação por cada bit de codificação. Por exemplo para 16 bits de
codificação por amostra originam-se 216=65536 intervalos de quantificação;
O intervalo muito pequeno a descriminar. Por exemplo para 16 bits de
codificação por amostra e uma tensão máxima de quantificação de 1 V, o
intervalo de quantificação vale q = 2-15 = 30 V, que se pode confundircom o
ruído térmico nos sistemas eletrónicos. Para valores mais pequenos que estes, os
sistemas tornam-se demasiado caros ou mesmo impossíveis de realizar, sendo
necessário utilizar outro tipo de paradigma, como por exemplo a modulação
delta-sigma () que sai fora do contexto deste tema.
28 Modulação de pulsos Carlos Meneses
Esta secção descreveu o primeiro passo na comunicação digital, com a
conversão de sinais analógicos para uma sequência de bits utilizando modulação por
código de pulso, com quantificação uniforme. Este sistema afigura-se o mais simples
capaz de representar um sinal digitalmente. Nas próximas secções serão apresentados
métodos para diminuir o débito binário, tirando partido das caraterísticas do sinal, tendo
sempre em consideração o compromisso com os outros atributos dos codificadores de
sinais, particularmente a qualidade.
Quantificação não uniforme 29
4 Quantificação não uniforme
Na secção anterior discutiu-se a utilização da modulação por código de pulso
com quantificação uniforme e a estimativa da respetiva relação sinal-ruído de
quantificação, concluindo-se da dificuldade de manter uma elevada SNRq
nomeadamente para potências baixas do sinal de entrada, mas não à custa do aumento
do débito binário e à diminuição “excessiva” da dimensão do intervalo de quantificação.
Outra caraterística importante a ter em conta é a necessidade da SNRq ser independente
da tensão máxima de quantificação e das caraterísticas do sinal de entrada,
nomeadamente da sua potência. Estas caraterísticas podem ser observadas com a
utilização de quantificação não uniforme, ou seja, com um quantificador em que os
intervalos de quantificação não são todos iguais.
O histograma de um sinal de fala não é uniforme (figura 4.3), tendendo a ter
mais ocorrências para valores menores. Esta constatação levou à utilização de intervalos
de quantificação menores nas zonas de maior ocorrência, como mostrado na figura 4.1,
à custa do aumento do intervalo de quantificação nas zonas de menor ocorrência. O
ruído de quantificação torna-se mais pequeno na maioria das amostras, à custa de, em
algumas amostras menos prováveis, o ruído de quantificação aumentar. Sendo a
potência um valor médio quadrático, este procedimento faz diminuir a potência do ruído
de quantificação e, consequentemente faz aumentar a SNR.
Figura 4.1
Exemplo de um quantificador não uniforme.
São melhor quantificados os valores menores (em módulo) do que os
valores maiores. Para que este quantificador seja eficaz devem ser as
amplitudes mais baixas as mais prováveis.
30 Modulação de pulsos Carlos Meneses
Se o sinal de entrada apresentar uma função densidade de probabilidade das
amplitudes em que os valores mais altos forem os que tiverem maior ocorrência, então
devem ser estes a ser quantificados com intervalos menores, à custa do aumento dos
intervalos para valores mais pequenos. Na utilização destes quantificadores
pressupõem-se conhecida pelo menos uma estimativa da função densidade de
probabilidade das amplitudes do sinal de entrada, sob pena de se obter desempenhos
inferiores do que utilizando quantificadores uniformes.
Alternativamente à utilização de um quantificador não uniforme, pode-se aplicar
ao sinal analógico de entrada uma não linearidade g(m), como a mostrada na figura 4.2,
seguido de um quantificador uniforme.
Figura 4.2
Exemplo de não linearidade utilizada em quantificação não uniforme.
A não linearidade seguida de quantificação uniforme é equivalente à
quantificação não uniforme.
A figura 4.3 apresenta o esquema de blocos equivalente à cadeia de
quantificação não uniforme, implementada através da aplicação da não linearidade ao
sinal de entrada, seguida da quantificação uniforme. O tipo de não uniformidade é
dependente desta não linearidade. Comparando as distribuições de amplitudes antes e
após a não linearidade, pode-se verificar que o efeito da não linearidade é tornar a
distribuição mais uniforme e mais adequada a um quantificador uniforme.
Quantificação não uniforme 31
No recetor, após descodificação, aplica-se a caraterística inversa para regenerar
o sinal. A diferença entre o sinal original e o sinal descodificado é causada pela
quantificação.
Figura 4.3
Implementação alternativa da codificação PCM não uniforme.
No transmissor o sinal é aplicado a uma não linearidade seguida de quantificação
uniforme. A não linearidade torna a distribuição mais uniforme (exemplo para um
sinal de fala) e portanto mais adequada a um quantificador uniforme.
No recetor utiliza-se um descodificador uniforme seguido função inversa da não
linearidade, de modo a regenerar o sinal original. A diferença entre o sinal
original e o sinal descodificado é causada pela quantificação.
32 Modulação de pulsos Carlos Meneses
Note-se que, numa realização prática, a utilização direta do quantificador não
uniforme é menos complexa em relação à implementação do esquema apresentado na
figura 4.3. Quer os valores de decisão, necessários no transmissor, quer os valores de
quantificação, necessário no recetor, são obtidos por aplicação da função inversa da não
linearidade, dos respetivos valores do quantificador uniforme.
4.1 Relação sinal-ruído em quantificação não uniforme
Para se analisar o efeito da não linearidade g(m) e calcular a relação sinal ruído
de quantificação, verifique-se pela figura 4.2 que a relação entre a entrada e a saída da
não linearidade é dada aproximadamente por:
)(
2
j
j vgL
Vg
, (4.1)
em que g´(vj) é o valor da derivada da não linearidade à volta do j-ésimo valor de
quantificação vj. Se o sinal de entrada for aleatório mas com função densidade de
probabilidade f(m) conhecida, a potência do ruído de quantificação para o j-ésimo
intervalo é dada pela variância centrada no valor de quantificação vj:
1
)()( 2
j
j
t
t
jj dmmfvmN , (4.2)
sendo tj a tj+1 o intervalo de quantificação correspondente ao valor vj. Assumindo um
número elevado de valores, f(m) é aproximadamente constante no intervalo de
quantificação, ou seja todos os valores do sinal m no j-ésimo intervalo de quantificação
têm aproximadamente a mesma probabilidade que f(vj). Igualmente, se os intervalos de
quantificação adjacentes não tiverem dimensões muito diferentes, o valor de
quantificação encontra-se aproximadamente a meio do intervalo e o ruído está limitado
ao intervalo [–j/2;j/2]Nestas condições, a equação 4.2 pode ser reescrita como:
12
)(|
3
)()()()(
3
2/
2/
32/
2/
22
1
j
jjj
t
t
jjj vf
mvfdmmvfdmvmvfN j
j
j
j
j
j
. (4.3)
Quantificação não uniforme 33
Incluindo nesta equação a aproximação dada pela equação 4.1 vem:
jvg
vf
L
VgN
j
j
j 22
2
)(
)(
3
)( . (4.4)
A potência total do ruído é a soma do ruído em cada j-ésimo intervalo de
quantificação, que se aproxima de uma função contínua desde que seja utilizado um
número elevado de valores de quantificação, pelo que:
dm
mg
mf
L
Vg
vg
vf
L
VgN
m
m
L
j
j
j
j
L
j
jq
max
max
22
2
1
22
2
1
2
)(
)(
3
)(
)(
)(
3
)( , (4.5)
e a relação sinal-ruído de quantificação (não em decibéis) vem:
dm
mg
mfVg
PLPSNR
im
m
q
q
max
max
2
2
2
2
)(
)()(
3
. (4.6)
Para calcular a SNRq é necessário ser conhecida a derivada da não linearidade e a
função densidade de probabilidade do sinal de entrada.
Se g(m)=m, a quantificação transforma-se na quantificação uniforme. A derivada
da função vale 1 e a equação 4.6 reduz-se à equação 3.9. Esta conclusão é válida mesmo
para uma amplificação do sinal de entrada, g(m)=Km, pois valendo a derivada K=g(V)/V
e assumindo V=mmax, tem-se para o denominador da equação 4.6:
2max2max2max2
2
2
2
max
max
max
max
max
max
)( mdmmfmdmmfm
K
Kdm
mg
mfVg
m
m
m
m
m
m
. (4.7)
Conclui-se que um fator de escala (amplificação) aplicado ao sinal de entrada,
ao alterar simultaneamente a potência do sinal e a dimensão dos intervalos de
quantificação, não altera a relação sinal-ruído de quantificação.
34 Modulação de pulsos Carlos Meneses
4.2 PCM companding
Se a não linearidade for do tipo logarítmica, i.e., g(m)=ln(|m|), cuja derivada é
1/|m| e sabendo que o integral de m2f(m)dm (momento esperado de segunda ordem),
calculado no intervalo entre – mmax e mmax, é igual à potência, o valor da SNRq deixa de
ser dependente da potência do sinal de entrada para ser dependente apenas do número
de intervalos de quantificação:
2
max
2
0
22
2
)(
3
)()(2
3
max mg
L
dmmfmVg
PLSNR mq
. (4.8)
A função logarítmica não pode no entanto ser realizada, pois converte o
intervalo entre 0 e 1 no intervalo entre – e 0. Estão no entanto normalizadas pelo
ITU-T duas funções pseudo-logarítmicas, que convertem o intervalo entre 0 e 1 no
mesmo intervalo, tendo a função uma caraterística impar: A Lei-A utilizada na Europa e
a Lei- utilizada nos EUA e Japão, descritas na recomendação ITU-T G.711, que data
de 1972. Ambas utilizam 8 bits de codificação por amostra e, como normalizado para
sinais de fala em qualidade telefónica, uma frequência de amostragem de 8 kHz,
resultando num débito binário de 64 kbit/s. Se os valores de entrada estiverem
normalizados em relação à amplitude do sinal de entrada, ou seja V = 1, a Lei-A é
descrita por:
A
mm
A
Amg
m
AA
mA
mg
10
)ln(1
11
)ln(1
ln1
, (4.9)
cujo gráfico é apresentado na figura 4.4. O parâmetro A governa o grau de compressão,
sendo o valor normalizado na recomendação G.711 de 87,56 (embora de facto na norma
os valores de quantificação e decisão sejam uma aproximação da equação 4.9).
Para valores pequenos (m<A) a Lei-A tem um comportamento linear (g(m)=16m,
para A=87,56), enquanto para valores médios e altos tem um comportamento quase
Quantificação não uniforme 35
logarítmico. Esta não linearidade corresponde a comprimir o sinal de entrada. No
recetor, após descodificação, tem que se incluir a não linearidade inversa (figura 4.3) a
que corresponderá uma expansão. A esta técnica dá-se o nome de companding
(compressing-expanding). Como se verá adiante, a utilização do companding produz
uma relação sinal ruído de quantificação quase constante para uma larga gama de
potências do sinal de entrada, não tendo a dependência com esta grandeza do PCM
uniforme, muito bom para potências elevadas, mas insuficiente para médias e baixas
potências.
Figura 4.4
Não linearidade da Lei-A.
São ilustradas as funções não lineares Lei-A, que dão origem a uma quantificação não
uniforme. O valor normalizado pela recomendação ITU-T G.711 é A=87,56.
Só são apresentados valores positivos, tendo as curvas caraterísticas ímpares.
Para o desenvolvimento da equação 4.6, a derivada da equação 4.9
correspondente à Lei-A é dada por,
A
m
A
Amg
m
AmA
mg
10
)ln(1
111
))ln(1(
1
. (4.10)
Para potências médias e altas, ou seja, quando a potência normalizada do sinal
de entrada for razoavelmente superior a 1/A2, o termo superior da equação 4.9 é o termo
A=87,56
Uniforme
A=1
A=10
36 Modulação de pulsos Carlos Meneses
dominante, pelo que se pode desprezar o efeito da zona linear. Nestas circunstâncias a
SNRq vem, usando o valor normalizado para A de 87,56 e utilizando a equação 4.6:
2
2
2
1
1
22
2
1,0
)ln(1
3
)ln(1
3 L
A
L
dmmfmA
PLSNR
m
q
, (4.11)
ou, em decibéis:
1002,6 RSNRdB . (4.12)
A SNRq só depende do número de bits de codificação por amostra, deixando de
depender da potência do sinal de entrada. Para o codificador normalizado G.711, de
8 bits/amostra (64 kbit/s), o valor máximo da SNRq é de 38,16 dB e mantém-se
praticamente constante para uma variação apreciável de potência do sinal de entrada
(–40 dB). É esta caraterística quase constante do companding que o faz ter um
desempenho médio superior ao PCM uniforme. Contudo, para sinais de baixa potência,
ou seja quando a potência normalizada do sinal de entrada é inferior a 1/A2, o termo
dominante é o inferior da equação 4.9, com um comportamento linear, pelo que a SNRq
é dada pela equação 3.10.
Para a Lei-:
)1ln(
1ln
m
mg 10 m . (4.13)
O parâmetro governa o grau de compressão, sendo o valor normalizado de
255. Para valores pequenos esta Lei tem também um comportamento linear (figura 4.5),
dado que ln(1+|m|) |m| e para valores elevados um comportamento logarítmico,
dado que para |m|>>1, então ln(1+|m|) ln(|m|). A derivada desta função vale:
mmg
1)1ln(
. (4.14)
Quantificação não uniforme 37
A SNRq vem, com o valor normalizado =255, aplicando a equação 4.6 e após
alguma manipulação algébrica:
2
2
2
1,0
1ln
3 LLSNRq
. (4.15)
Para baixas potências esta aproximação não é válida, correspondendo como na
Lei-A à entrada na zona linear, fazendo diminuir a SNRq. Das equações 4.12 e 4.15
verifica-se que os desempenhos das duas Leis são idênticos.
Figura 4.5
Relação sinal ruído em PCM companding Lei-(255).
Comparação com PCM com quantificação uniforme, função da potência normalizada
do sinal de entrada, para 8 bit/amostra. De realçar a caraterística quase constante do
companding e o seu melhor desempenho em relação ao PCM uniforme para potências
normalizadas abaixo dos –14,77 dB.
A caraterística quase constante da SNRq em companding pode ser explicada do
modo seguinte: para sinais de baixa potência a probabilidade de amplitudes baixas é
maior, sendo melhor quantificadas e baixando a potência do ruído. Para sinais de
potência elevada, a probabilidade de amplitudes elevadas é maior, mas também são pior
quantificadas. Em ambos os casos a relação entre a potência do sinal e do ruído de
quantificação é quase constante.
-60 -55 -50 -45 -40 -35 -30 -25 -20 -15 -10 -5 0
uniforme -7,1 -2,1 2,9 7,9 12,9 17,9 22,9 27,9 32,9 37,9 42,9 47,9 52,9
Lei-u 24,6 28,5 31,7 34,1 35,7 36,7 37,3 37,6 37,8 37,9 38,0 38,0 38,0
0,0
10,0
20,0
30,0
40,0
50,0
SN
R
(d
B)
Potência Normalizada (dB)
Uniforme
Companding Lei-
38 Modulação de pulsos Carlos Meneses
4.3 Quantificação Ótima
Quando, no sinal a quantificar, existe maior probabilidade de ocorrência de
alguns dos valores do que de outros, deve-se diminuir a dimensão dos intervalos de
quantificação nas zonas mais prováveis, à custa do aumento da dimensão dos intervalos
nas zonas menos prováveis. Por exemplo, os sinais de fala têm uma função densidade
de probabilidade das amplitudes com maiores ocorrências para os valores mais
pequenos, pelo que o PCM companding é uma melhor alternativa em relação ao PCM
uniforme. No entanto a principal vantagem do PCM companding é a de tornar a SNRq
praticamente independente da potência do sinal de entrada. Para sinais de potência
razoável a utilização de PCM companding resulta numa diminuição da SNRq em relação
ao PCM uniforme, pelo que deve ser utilizado outro tipo de não linearidade.
Das equações 4.2 e 4.5, a potência do ruído de quantificação vem:
L
j
j
L
j
jq
t
t
dmmfvmN
j
j
1
2
1
2
1
)( . (4.16)
Os valores ótimos de decisão tj e de quantificação vj são estimados por
minimização da potência do ruído de quantificação 2q, ou seja, tomando as derivadas
parciais de Nj em ordem a tj e a vj. Contudo a resolução deste conjunto de equações não
é fácil. Descreve-se a seguir um algoritmo iterativo conhecido por Lloyd-Max
(apêndice 3) ilustrado na figura 4.6, para estimação dos valores ótimos de quantificação
e decisão, que tem como entrada o histograma do sinal a quantificar, estimando a
respetiva função densidade de probabilidade. O quantificadorresultante só terá o
mesmo desempenho quando for utilizado com sinais com a mesma função densidade de
probabilidade dos sinais que geraram o histograma de entrada do algoritmo,
denominado de corpus6 de treino. É pois necessário ser muito criterioso na escolha
deste corpus, devendo incluir diversos oradores do género masculino e feminino,
dizendo frases balanceadas foneticamente, ou seja, cujas ocorrências dos fonemas que
as compõem sejam o mais aproximado possível da respetiva ocorrência na linguagem
falada.
6 Corpus de sinais de fala: conjunto de sinais de fala. Termo utilizado em investigação.
Quantificação não uniforme 39
a) b)
c) d)
e)
Figura 4.6
Exemplo do algoritmo Lloyd-Max para sinal de fala.
Em a) É ilustrado o quantificador uniforme utilizado para inicializar o algoritmo.
Em b) são representados os novos valores de quantificação, obtidos pela média dos valores
de cada intervalo de quantificação, pesados pelos respetivos valores do histograma.
Em c) e d) é ilustrada a segunda iteração, partindo dos valores obtidos na iteração anterior.
Em e) são apresentados os
O - Valores de quantificação uniforme (SNR= –0,2 dB) e os
□ - Valores ótimos (SNR= 7,5 dB), obtidos após 9 iterações.
-1 -0.5 0 0.5 1
0
0.05
0.1
0.15
0.2
-1 -0.5 0 0.5 1
0
0.05
0.1
0.15
0.2
-1 -0.5 0 0.5 1
0
0.05
0.1
0.15
0.2
-1 -0.5 0 0.5 1
0
0.05
0.1
0.15
0.2
-1 -0.8 -0.6 -0.4 -0.2 0 0.2 0.4 0.6 0.8 1
0
0.05
0.1
0.15
0.2
40 Modulação de pulsos Carlos Meneses
Como inicialização do algoritmo, assume-se qualquer quantificador com L
valores de quantificação. No exemplo ilustrado na figura 4.6-a) assume-se um
quantificador uniforme com L=4, marcando sobre o histograma do sinal de entrada com
um │ os valores de decisão e com um □ os valores de quantificação.
Como iteração, calculam-se os valores médios pesados pelo respetivo
histograma, como mostrado na figura 4.6-b) marcado a x. Seguidamente substituem-se
os valores de quantificação por estes, e calculam-se os respetivos valores de decisão
através da equação 3.2, como na figura 4.6-c). Os valores de quantificação deslocam-se
para as zonas de maior probabilidade, diminuindo aí o ruído de quantificação, à custa do
aumento nas zonas de menor probabilidade. O procedimento anterior repete-se com
estes novos valores (figura 4.6-d), até não haver diferença entre duas iterações ou esta
ser menor que determinado critério de estabilidade. Na figura 4.6-e) são mostrados os
valores de quantificação iniciais (uniforme) e finais (ótimos). A potência do ruído
baixou 5,9 vezes, ou seja, foi produzido um aumento da SNRq de 7,7 dB. Estes valores
são obtidos após 9 iterações e o aumento da SNRq após a primeira iteração é de 1,9 dB.
Este algoritmo funciona para quantificar amostras de um sinal de fala ou
qualquer outro parâmetro, e.g., áudio, pontos de uma imagem ou letras de um texto.
Para um sinal sinusoidal, com uma função densidade de probabilidade que tenha
maiores ocorrências para amplitudes elevadas, por exemplo um sinusoide, como mostra
a figura 4.7, os valores de quantificação tenderão a deslocar-se para estas amplitudes.
Figura 4.7
Algoritmo Lloyd-Max aplicado a uma sinusoide.
O - Valores de quantificação uniforme (SNRq=12,8 dB)
□ - Valores de quantificação ótimos. (SNRq=13,8 dB), obtidos após 6 iterações.
-1 -0.8 -0.6 -0.4 -0.2 0 0.2 0.4 0.6 0.8 1
0
0.01
0.02
0.03
0.04
0.05
Codificação preditiva 41
5 Codificação preditiva
Nas secções anteriores estudou-se o efeito da quantificação individual das
amostras do sinal de entrada. Para sinais de fala, esta é possível com qualidade
codificando acima dos 8 bits por amostra (64 kbit/s para sinais de fala amostrados a
8 kHz). Abaixo deste débito é necessário tirar partido das redundâncias do sinal,
nomeadamente a grande semelhança entre amostras adjacentes existente nos sinais de
baixa frequência (quando comparado com a frequência de amostragem). Como
exemplo, a figura 5.1 apresenta um gráfico das amostras de um sinal de fala função da
respetiva amostra anterior. Estas exibem uma grande parecença, ou seja, apresentam-se
à volta de uma reta de declive unitário. A codificação preditiva tira partido desta
parecença para estimar (predizer) a próxima amostra do sinal, sendo objeto de estudo no
resto desta secção. Fora do contexto deste texto, existem codificadores de sinais de fala
que tiram partido não só da parecença entre amostras mas a parecença entre as últimas
amostras (e.g. codificador do GSM tira partido da parecença das últimas 10 amostras).
Figura 5.1
Semelhança entre amostras adjacentes em sinais de baixa frequência.
Amostras de um sinal de fala função das respetivas amostras anteriores. A
semelhança pode ser verificada pois esta função apresenta-se à volta de uma reta
de declive unitário.
-1 -0.8 -0.6 -0.4 -0.2 0 0.2 0.4 0.6 0.8 1
-1
-0.8
-0.6
-0.4
-0.2
0
0.2
0.4
0.6
0.8
1
m[n-1]
m
[n
]
42 Modulação de pulsos Carlos Meneses
5.1 Modulação por código de pulso diferencial
Tirando partido da semelhança entre amostras consecutivas, caraterística dos
sinais de baixa frequência (quando comparado com a frequência de amostragem),
consegue-se representar uma amostra à custa da amostra anterior, sendo transmitida em
PCM, entre o transmissor e o recetor, apenas a diferença entre amostras consecutivas.
Dada a necessidade de coerência entre os sinais nestes dois sistemas, a diferença não é
realizada sobre o sinal original mas, como mostra a figura 5.2, sobre o sinal de saída
quantificado, o único existente no recetor. Para produzir o sinal quantificado existe no
transmissor uma réplica do recetor. Este tipo de representação do sinal toma o nome de
modulação por código de pulso diferencial (DPCM – Differential pulse code
modulation).
a) Transmissor DPCM
b) Recetor DPCM
Figura 5.2
Modulação por código de pulso diferencial.
a) Esquema de blocos de um transmissor por modulação por código de pulso diferencial.
b) Respetivo recetor, correspondendo a parte do transmissor.
Codificação preditiva 43
O valor da amostra anterior pode ser interpretado como uma predição (mp[n]) do
valor da amostra atual, e a sua diferença interpretada como o resíduo ou erro de
predição. É assim quantificada e codificada a diferença entre a amostra que se quer
sintetizar e a amostra de saída anterior, eventualmente multiplicada por um coeficiente
de predição, a. O erro de predição deve ter uma menor variância (potência) que o sinal
original, sendo suscetível de uma melhor quantificação.
5.1.1 Relação sinal-ruído em DPCM
Da análise do esquema de blocos da figura 5.2 conclui-se que o ruído de
quantificação causado por este tipo de codificação é dado por:
nenenenmnenmnmnmnq qqppq , (5.1)
em que e[n] corresponde ao erro de predição, ou seja, à diferença entre a amostra atual e
a sua predição nm p . O ruído na codificação preditiva resulta unicamente da
quantificação, correspondendo ao ruído de quantificação em PCM do erro de predição,
dependendo dos valores dos intervalos de quantificação. Caso a quantificação seja
uniforme q depende apenas do valor máximo de quantificação, que denominaremos de
V1, e do número de intervalos de quantificação L. Através da equação 3.6, substituindo
V por V1, obtêm-se:
Rq
V
2
2 1 . (5.2)
A SNRq (em linear) do codificador DPCM, correspondente à relação entre a
potência do sinal de entrada e deste ruído, vem:
22
12
qq
q
PPSNR
, (5.3)
ou em decibéis, pela equação 3.10 com a mesma alteração de V por V1,
44 Modulação de pulsos Carlos Meneses
2
1
10
3log1002,6
V
PRSNRdB , (5.4)
2
1
2
210
3log1002,6V
V
V
PRSNRdB , (5.5)
2
1
2
10210 log10
3log1002,6
V
V
V
PRSNRdB . (5.6)
O aumento da SNRq em relação à codificação PCM é dado por,
1
102
1
2
10 log20log10 V
V
V
V
. (5.7)
Para que a SNRq aumente em relação aos codificadores PCM, assumindo o
mesmo número de bits de codificação, V1 deve ser menor que a amplitude do sinal de
entrada, ou seja, resultar do preditor e do esquema diferencial uma diminuição de
amplitude do sinal (erro de predição) a ser efetivamente quantificado. Se não houver
diminuição de V1 não existe qualquer vantagem em utilizar codificação DPCM. Pelo
contrário só há desvantagens, uma vez que a codificação DPCM é mais complexa (mais
cara) e como veremos adiante mais sensível a erros no canal de transmissão que a
codificação PCM.
5.1.2 Tipos de distorção
Conforme a equação 5.7, V1 é um parâmetro que atua diretamente no
desempenho do quantificador. Se este for demasiado elevado o desempenho diminui,
pois aumenta q e a potência do ruído de quantificação. Se for demasiado pequeno o
erro de predição pode excedê-lo, provocando saturação de declive (figura 5.3), o que
acontece (a=1, preditor de 1ª ordem unitário) quando a variação do sinal de entrada no
intervalo entre amostras for superior ao valor máximo de quantificação V1, sendo
evitada na condição,
ss Tt
tmTtmtmV
max
max1
. (5.8)
Codificação preditiva 45
Em zonas de muito pequeno declive um quantificador midrise oscila em torno
do sinal de entrada com salto q , provocando ruído denominado de ruído granular. Para
evitar o ruído granular deve ser minimizado q , o que pode provocar ruído de saturação
de declive. Caso seja utilizado um quantificador midtread, o ruído granular é evitado,
devido ao 0 como nível de quantificação.
Figura 5.3
Distorção de declive em codificação DPCM.
Em codificação DPCM não existe saturação de amplitude mas pode existir saturação de
declive (slope overload) e ruído granular. Exemplo para preditor unitário.
A saturação de declive é percetivamente incomodativa, pelo que deve evitada
utilizando a inequação 5.8. Para garantir no mínimo o valor exato de V1, deve-se utilizar
a equação 3.5 e não a equação 3.4. Por outro lado o ruído granular ocorre
essencialmente a metade da frequência de amostragem, sendo facilmente atenuado pelo
filtro reconstrutor.
Uma forma de diminuir todos os tipos de ruído na codificação DPCM é
aumentando a frequência de amostragem (equação 5.8), embora à custa do aumento no
débito binário (equação 3.7). O valor de V1 para evitar saturação de declive diminui,
diminuindo q e consequentemente diminuindo o ruído de quantificação (equação 5.6) e
o ruído granular. Contudo, é preferível diminuir q aumentando o número de bits de
codificação por amostra, pois a mesma qualidade é obtida com menor débito binário. De
facto apenas com 1 bit a mais por amostra V1 vai diminui para metade, sendo preciso
duplicar da frequência de amostragem para obter o mesmo efeito.
46 Modulação de pulsos Carlos Meneses
A codificação DPCM não sofre de saturação de amplitude, como em codificação
PCM. De facto é possível alcançar qualquer amplitude transmitindo consecutivamente o
código correspondente à tensão máxima de quantificação V1 (ou mínima –V1).
5.1.3 Ganho de predição e estimação do valor máximo de quantificação
Uma das principais dificuldades em DPCM é a estimação do valor máximo de
quantificação do erro de predição V1, de modo a evitar a saturação de declive mas
minimizando o ruído. Um método aproximado de estimar V1, apenas exato para sinais
sinusoidais (Apêndice 4), consiste em assumir que a relação entre as potências de pico
de m[n] e e[n] é igual à relação das respetivas potências, refletindo-se esta na gama dos
quantificadores, ou seja:
2
1
2
2
max
2
max
V
V
e
m
P
PG
e
p , (5.9)
em que Pe representa a potência do sinal de erro de predição, pelo que Gp, denominado
ganho de predição, dá informação da redução de variância do sinal de entrada em
relação ao erro de predição. O valor máximo de quantificação que evita a saturação de
declive vem, aproximadamente:
pG
VV
2
1 . (5.10)
Resulta do esquema diferencial um aumento da SNRq introduzido pelo ganho de
predição (equações 5.6 e 5.9),
nmSNRGp
V
PRGpSNR PCMdBdBdBdB
210
3log1002,6 . (5.11)
Esta equação só é válida na condição de ser utilizada a equação 5.10, sendo
também válida a equação 5.4 em que se obterá o mesmo valor de SNR. Aliás a equação
5.4 é sempre válida desde que não haja saturação de declive.
Codificação preditiva 47
O aumento do ganho de predição, para determinado sinal de entrada,
corresponde à diminuição da potência do erro de predição e consequentemente do seu
valor máximo. Se, contudo, não for diminuído em conformidade o valor máximo de
quantificação V1, por exemplo utilizando a equação 5.10, não há de facto aumento da
SNR. Para sinais de fala, a equação 5.10 subestima o valor de V1, dando origem a
alguma saturação de declive que pode ser percetivamente relevante. Contudo, como a
saturação não é frequente, a SNRq na verdade aumenta em relação à utilização do valor
máximo do erro de predição, pois é utilizado um intervalo de quantificação menor com
a consequente diminuição da potência do ruído de quantificação.
Para se calcular o ganho de predição repare-se que, desde que a quantificação se
faça com um número razoável de bits, a potência do ruído pode-se desprezar face à
potência do sinal, ou seja7:
PPP qmq 2 . (5.12)
Nestas circunstâncias a potência do erro de predição vem:
12112
1
12
1lim21
12
1lim
12
1lim
1
12
1lim
12
1lim
22
222
2
2
araPaRPaP
nmnm
N
anm
N
anm
N
namnm
N
ne
N
P
N
Nn
N
Nn
qNqN
N
NnN
N
Nn
qN
N
NnN
e
, (5.13)
sendo R[k] a função de autocorrelação (Apêndice 5) do sinal de entrada com atraso kTs
aproximadamente igual à correlação cruzada entre o sinal de entrada e o sinal
quantificado. r[k] corresponde à função de autocorrelação normalizada pela potência
P=R[0]. O ganho de predição (não em decibéis) vem:
121
1
2 araP
PGp
e
. (5.14)
7 A potência do sinal soma só é igual à soma das potências desde que os sinais sejam ortogonais. Para um
número suficiente de bits, pode-se considerar que o ruído de quantificação é ortogonal ao sinal de entrada.
48 Modulação de pulsos Carlos Meneses
Esta equação vem, para o caso particular do coeficiente de predição ser igual a 1
(a=1, preditor de 1ª ordem unitário), em decibéis:
112
1log10log10 1010 rP
PGp
e
dB . (5.15)
Na figura 5.4 é ilustrada a redução de gama dinâmica do erro de predição em
relação ao sinal de entrada, correspondendo a um ganho de predição maior que a
unidade.
Figura 5.4
Exemplo do desempenho de um preditor de 1ª ordem unitário.
Em cima representa-se 22,5 ms de um sinal de fala. Em baixo o respetivo erro de
predição. Estes dois sinais são apresentados na mesma escala, sendo visível a redução
na gama dinâmica.
O codificador DPCM com preditor unitário não terá nenhuma vantagem em
relação ao codificador PCM quando o ganho de predição for igual a 0 dB, ou seja
r[1]=0,5 (equação 5.15), sendo vantajoso apenas para correlações superiores a 0,5. Para
um valor de r[1] de 0,8 o ganho de predição é de 4 dB, chegando aos 12 dB para um
valor de 0,97. O codificador DPCM tem então no máximo um ganho de 2 bits de
codificação por amostra em relação ao codificador PCM.
5 10 15 20
-2
-1
0
1
x 10
4
t [ms]
A
m
pl
itu
de
Sinal de fala
2 4 6 8 10 12 14 16 18 20 22
-2
-1
01
x 104
t [ms]
A
m
pl
itu
de
Resíduo de predição - preditor de primeira ordem unitário
Codificação preditiva 49
5.1.4 Adaptação do preditor - preditor linear de primeira ordem
Supondo o esquema de blocos da figura 5.2 que contêm um preditor linear de
primeira ordem, o sinal predito8 é dado por:
1 namnm p . (5.16)
O coeficiente de predição ótimo, a, ou seja aquele que minimiza a potência do
erro de predição, corresponde a:
n n
n n ne
nmnm
N
nm
N
a
a
nmnm
N
anm
N
anm
N
a
P
01 12112
1 12111
2
222
, (5.17)
pelo que o valor ótimo do coeficiente de predição é dado por:
10
1
1
1
2 rR
R
nm
nm nm
a
n
n
. (5.18)
O coeficiente de predição é ótimo apenas para sinais com a mesma
autocorrelação (de 1ª ordem), pelo que o preditor está adaptado ao sinal de entrada.
Das equações 5.14 e 5.18 o ganho de predição vem:
210 11
1log10
r
GpdB . (5.19)
Como mostra a figura 5.5, o ganho de predição com preditor adaptado é sempre
maior ou igual a 0 dB, independentemente do valor da autocorrelação, o que não
acontece com preditor unitário de primeira ordem, em que o ganho de predição pode ser
negativo.
8 Assume-se a situação ideal da predição baseada na amostra anterior e não na amostra quantificada. No
caso genérico da predição com a amostra atrasada de k, substitui-se 1 por k (equações 4.13 a 4.19).
50 Modulação de pulsos Carlos Meneses
Figura 5.5
Ganho de predição função da autocorrelação normalizada de primeira
ordem para preditores de 1ª ordem unitário e adaptado.
Os preditores unitários têm ganho negativo abaixo de r[1]=0,5. Os preditores adaptados
têm sempre ganho positivo, a menos quando a correlação é 0 em que o ganho é 0.
O mesmo resultado é obtido por projeção do sinal de entrada sobre a sua versão
deslocada de uma amostra, como ilustrado na figura 5.6, assumindo a melhor
representação do primeiro sobre este último. De facto, a autocorrelação R[k] não é mais
do que o produto interno entre um sinal e a sua versão deslocada de k amostras,
correspondendo r[k] à respetiva projeção. À esquerda da figura exemplifica-se a
predição com coeficiente unitário, para 3 situações distintas. A predição coincide com a
amostra (quantificada) anterior, sendo o erro de predição a diferença entre este e o sinal
de entrada. O ganho de predição é de 0 dB quando a projeção do sinal de entrada sobre
a predição for de 0,5 (equação 5.15). Gp só é positivo à direita deste ponto.
Para o preditor unitário, Gp=0 dB quando a amostra faz um “ângulo” de /3 em
relação à predição. Para uma sinusoide como sinal de entrada em que r[1]=cos(2f/fs)
(Apêndice 5), então 2f/fs=/3. Para um sinal genérico pode-se definir a frequência,
'
maxf , que produz a derivada máxima, pelo que Gp é positivo desde que:
63
2 '
max
'
max s
s
f
f
f
f
. (5.20)
Para sinais de fala esta situação é quase sempre verdade quando este é
amostrado, como em qualidade telefónica, a 8 kHz ( 'maxf <1,333 kHz).
-10
0
10
20
30
-1 -0,5 0 0,5 1r (1)
Gp (dB)
Codificação preditiva 51
Figura 5.6
Interpretação vetorial da predição.
À esquerda, predição com coeficiente unitário. À direita, predição adaptada.
À direita da figura exemplifica-se a predição adaptada, para 4 situações distintas.
A predição corresponde à projeção sobre a amostra anterior, minimizando a energia
(norma do vetor) do erro de predição, que lhe é ortogonal. O ganho de predição é
sempre positivo (equação 5.19, com exceção da situação em que o sinal de entrada e a
sua projeção são ortogonais (a=r[1]=0), em que o erro de predição coincide com o sinal
de entrada e o codificador degenera num codificador PCM.
Note-se que a adaptação do preditor já não tem como objetivo tirar partido da
semelhança entre amostras, como no preditor unitário, mas sim tirar partido da
correlação entre amostras. Por exemplo se as amostras foram simétricas (muito
diferentes) a correlação normalizada é –1 mas, pela equação 5.19, o ganho de predição é
dB, o mesmo que se as amostras consecutivas forem todas iguais, a que corresponde
uma correlação normalizada de 1.
Os codificadores de fala recentemente normalizados utilizam predição de ordem
mais elevada, tipicamente com as 10 últimas amostras, de modo a melhorar o ganho de
predição. Os coeficientes são calculados no transmissor e enviados a intervalos
regulares. No codificador utilizado em GSM, por exemplo, a cada intervalo de 20 ms
são calculados e enviados 10 coeficientes de predição.
52 Modulação de pulsos Carlos Meneses
5.1.5 Adaptação do quantificador - memória de 1 amostra
A utilização de um quantificador de valores fixos leva, como ilustrado na figura
5.7, a que quando a variância do sinal à sua entrada é grande, se possa exceder o valor
máximo de quantificação e, por outro lado, para variâncias baixas, o ruído de
quantificação seja elevado.
Figura 5.7
Adaptação ao valor ótimo de quantificação.
São apresentados os valores ótimos do valor máximo de quantificação em função do tempo,
dependentes da potência e da autocorrelação do sinal, para um preditor de 1ª ordem unitário.
A potência do sinal de entrada do quantificador é dependente da potência
localizada e da autocorrelação do sinal de entrada e portanto do tempo, sendo possível
adaptar localmente a gama do quantificador, tirando partido das zonas quase
estacionárias do sinal (em que a potência e a autocorrelação variam lentamente,
nomeadamente para sinais de fala), dando origem a uma modulação por código de pulso
diferencial adaptativo9 (ADPCM – Adaptive differential pulse code modulation).
Os parâmetros de adaptação podem ser obtidos do sinal a quantificar, sendo esta
informação enviada para o recetor como informação lateral (AQF – Adaptive
quantization with forward estimation), o que contribui para o aumento do débito binário
mas oferece um aumento da qualidade. Através da equação 5.9 e conhecido o ganho de
predição através da equação 5.14, pode-se estimar o valor máximo de quantificação do
sinal de erro de predição.
9 Que se modifica para se adaptar às condições locais do sinal. Em contraste com adaptado, que realiza a
adaptação apenas uma vez e se mantêm fixo.
Codificação preditiva 53
Outro método de adaptação, que evita o aumento do débito binário, corresponde
a obter os parâmetros de adaptação através do índice de quantificação, representado
pelos bits de código, existentes no próprio recetor (AQB – Adaptive quantization with
backward estimation). Um exemplo bastante simples deste método foi proposto por
Jayant10 é baseado no raciocínio seguinte: se o valor de quantificação numa amostra for
próximo (em módulo) do valor máximo de quantificação 1V , há risco de distorção de
saturação de declive e, portanto, deve ser aumentado para quantificar a amostra
seguinte; se, por outro lado, o valor de quantificação for pequeno em relação ao valor
máximo de quantificação, este último pode ser diminuído de modo a diminuir o
intervalo de quantificação e consequentemente o ruído de quantificação. Como
mostrado na figura 5.8, o valor de 1V no instante n depende então do seu valor anterior e
do índice de quantificação na amostra anterior 1n , seguindo a regra:
1111 niMnVnV . (5.21)
Os valores de 1niM , apresentados na tabela 5.1, correspondem aos fatores
multiplicativo do índice i do quantificador na amostra anterior. Com o coeficiente de
predição igual a zero o codificador ADPCM transforma-se num codificador APCM
(PCM adaptativo).
R M(0) M(1) M(2) M(3) M(4) M(5) M(6) M(7) M(8) M(9) M(10) M(11) M(12) M(13)M(14) M(15)
2 1,6 0,9 0,9 1,6
3 1,7 1,25 0,9 0,9 0,9 0,9 1,25 1,7
4 2,4 2,0 1,6 1,2 0,9 0,9 0,9 0,9 0,9 0,9 0,9 0,9 1,2 1,6 2,0 2,4
Tabela 5.1
Fatores multiplicativos de adaptação de quantificadores.
M(1) corresponde ao valor mais pequeno de quantificação, correspondendo o aumento do índice a
um aumento do valor de quantificação.
Uma versão mais complexa do codificador ADPCM, com adaptação do preditor
e do quantificador foi adotada como recomendação G.726 (1990 unificação das Rec.
G.721 (1984) e G.723 (1988)) pelo ITU-T, para codificação de sinais de fala com
débitos binários de 16, 24, 32 e 40 kbit/s (2, 3, 4 e 5 bits por amostra). São utilizados
10 Nikil Jayant, 1949-. Indiano. Professor no Georgia Institute of Technology, Atlanta
54 Modulação de pulsos Carlos Meneses
32 kbit/s para duplicar o número de conversações em relação à recomendação G.711 em
canais telefónicos e na norma DECT de sistemas telefónicas de curto alcance.
a) Transmissor ADPCM
b) Recetor ADPCM
Figura 5.8
Modulação por código de pulso diferencial adaptativo.
Esquema de blocos do codificador ADPCM, com adaptação amostra a amostra dos níveis
de quantificação, baseado no índice de quantificação.
5.1.6 Propagação dos erros de canal de transmissão
Uma desvantagem da codificação DPCM em relação à codificação PCM
prende-se com a propagação de erros no canal de transmissão. Em PCM, um erro no
canal de transmissão afeta apenas a amostra correspondente, enquanto em DPCM este
erro é propagado às amostras posteriores, pois o sinal de saída é calculado através do
sistema linear representado por:
Codificação preditiva 55
nenamnenmnm qqqpq 1 . (5.22)
Se |a|< 1, então o erro é atenuado a cada iteração e tende para zero tão mais
rapidamente quanto menor for o valor de |a|. Se |a| = 1, então o erro nunca é atenuado,
enquanto para |a|> 1 o erro é aumentado a cada iteração.
Na presença de erros no canal de transmissão, para além da propagação de erros
comum ao DPCM, o ADPCM tem como grande desvantagem uma adaptação mal
realizada no recetor, o que conduz a que os quantificadores do recetor e do transmissor
sejam diferentes, levando a uma perda significativa de qualidade.
5.2 Modulação Delta
A modulação Delta (DM - Delta modulation) é um caso particular da modulação
DPCM utilizando um codificador de 1 bit por amostra. O esquema de blocos é
apresentado na figura 5.9. O bit de codificação apenas dá informação do sentido do sinal
diferença (se positivo ou se negativo), sendo o sinal de saída incrementado ou
decrementado de um passo fixo (quantificador midrise de 1 bit por amostra).
Figura 5.9
Modulação Delta (DM).
Esquema de blocos de um transmissor por Modulação Delta, representando o bit
de codificação se a diferença entre o sinal de entrada e a saída anterior é positiva
ou negativa. O recetor é igual ao do DPCM (Figura 5.2 b)), mas com um
descodificador de 1 bit (2 valores, ±).
Embora com estas restrições, e não se esperando de um codificador de 1 bit por
amostra uma grande qualidade, este tipo de codificação teve a sua época quando a
56 Modulação de pulsos Carlos Meneses
tecnologia digital ainda era de custo elevado, pois pode ser implementado com pequena
complexidade tendo como entrada o sinal analógico e utilizando componentes
analógicos (comparadores, integradores, S&H), como mostrado na figura 5.10.
Modulador DM Desmodulador DM
Figura 5.10
Implementação analógica da modulação Delta.
O valor de é dado por ATs/RC.
5.2.1 Tipos de distorção
Como em DPCM, existem dois tipos de distorções introduzidas em DM,
ilustradas na figura 5.11: a saturação de declive típico das zonas de variação rápida do
sinal de entrada; e o ruído granular típico das zonas de silêncio ou de pequena variação
do sinal de entrada, quando comparado com o passo de quantificação.
Figura 5.11
Tipos de distorção na Modulação Delta.
Há dois tipos de distorção na modulação delta: a distorção de saturação de declive, típico das
zonas de variação brusca do sinal em que o passo do quantificador é insuficiente; o ruído
granular, típico das zonas de pequena variação do sinal de entrada em que o passo do
quantificador é demasiado grande.
Codificação preditiva 57
Existe um compromisso entre estes dois tipos de ruído: aumentando o passo
de quantificação para se evitar a saturação de declive aumenta-se o ruído granular e
vice-versa. Em PCM e DPCM o ruído granular pode ser evitado com recurso a um
codificador midtread, o que não é possível em DM, por ser utilizado 1 bit de
codificação por amostra.
5.2.2 Relação sinal-ruído em DM
De modo a evitar completamente o ruído de saturação de declive o valor de
tem que de no mínimo ser igual à variação máxima do sinal no intervalo entre duas
amostras Ts=1/fs:
s
s f
mT
t
tm max'
max
, (5.24)
sendo max'm a derivada máxima do sinal de entrada. Quando o codificador DM funciona
sem saturação de declive pode-se assumir que a função densidade de probabilidade do
ruído é uniforme entre – e , e:
32
1 222 deeq . (5.25)
Repare-se que 2q, pelo que a expressão 5.25 coincide com a 4.10. A SNRq
de quantificação vem, com o valor mínimo de imposto pela equação 5.24:
P
m
fPPSNR s
q
q
2
'
max
22 3
3
. (5.26)
Para um sinal genérico, a derivada máxima é causada pela frequência máxima
do sinal. Contudo, para sinais de fala, a derivada máxima não se dá para a frequência
máxima do sinal, mas, dependendo do fonema pronunciado, para uma frequência de
58 Modulação de pulsos Carlos Meneses
cerca de 1.000 Hz. Definindo, como na equação 5.20, 'maxf como a frequência que
produz esta derivada máxima:
max
''
max 2 mfm . (5.27)
De 5.26 e 5.27 e isolando o termo (W/f’), tem-se que,
n
sss
q Pf
f
m
P
f
fP
mf
fSNR
2
'2
max
2
2
'2
2
max
' 4
3
4
3
2
3
, (5.28)
ou em decibéis:
11log10log20 10'10
n
s
dB Pf
fSNR . (5.29)
5.2.3 ADM - Modulação Delta adaptada
Os codificadores por modulação delta não são competitivos em relação ao PCM
ou ao DPCM devido ao forte compromisso entre o ruído granular e de saturação de
declive. É no entanto possível aumentar a qualidade adaptando o passo de
quantificação, dando origem à modulação delta adaptada (ADM – Adaptive delta
modulation).
O ruído de saturação de declive na modulação delta pode ser detetado através de
uma sequência de bits de saída com o mesmo nível lógico. Por outro lado, uma
sequência alternada de níveis lógicos indicia um sinal com frequência muito baixa e
portanto a predominância de ruído granular. A deteção de ambos os tipos de ruído pode
ser aproveitada para adaptar o valor do passo de quantificação.
Um método simples, mas eficaz, de adaptação amostra-a-amostra, seguindo o
princípio acima referido, devendo este ser aumentado quando se deteta ruído de
saturação de declive e diminuído quando se deteta ruído granular. tem a regra seguinte:
nb
nbnn 111 10 , (5.30)
Codificação preditiva 59
em que b[n] é o valor do nível lógico de saída do quantificador no instante n, neste caso
tomando os valores ±1 e gere o grau de adaptação. Por exemplo com =0,5 o passo
da amostra anterior é multiplicado por 1,5 caso se suspeite de saturação de declive e
dividido por 0,5 caso se suspeite de ruído granular. Este método é exemplificado na
figura 5.12.
Figura 5.12
Modulação Delta Adaptada.
O passo do modulador é adaptado de modo a diminuir a distorção, segundo o raciocínio
seguinte: uma sequência de bits de saída com o mesmo nível lógico indiciadistorção de
saturação de declive e o passo é aumentado; uma sequência de bits de saída com níveis
lógicos alternados indicia ruído granular e o passo é diminuído.
O princípio de adaptação ilustrado é utilizado em métodos mais complexos mas
também mais eficazes, para implementar codificadores de sinais de fala, tais como o
CVSD (Continuous variable slope delta), com débitos binários entre os 16 kbit/s e os
128 kbit/s. Para além da adaptação o aumento da qualidade é conseguido através do
aumento da frequência de amostragem (equação 5.29) e consequente aumento da
correlação entre amostras.
Como em ADPCM, devido à adaptação estes codificadores são menos robustos na
presença de erros de canal que as respetivas versões sem adaptação, já que a predição
está a ser efetuada com amostras descodificadas incorretas.
Comparação entre codificadores de sinal 61
6 Comparação entre codificadores de sinal
Nas secções 3 a 5 descreveram-se os métodos principais de codificação de
forma de onda, com ênfase para a codificação de sinais de fala. Foram deduzidas as
expressões da relação sinal-ruído de quantificação, medida objetiva da qualidade, para
os diversos métodos de codificação apresentados, tendo sido realçado o compromisso
com o débito binário produzido.
Na tabela 6.1 apresentam-se as vantagens/desvantagens dos codificadores
apresentados, em relação aos seus atributos.
PCM
uniforme
PCM
Companding
PCM
quantif.
ótimo
DPCM
preditor
unitário
DPCM
preditor
adaptado
ADPCM DM ADM
Débito binário
(mesmo SNRq) ↓↓ ↓ ↓ - ↑ ↑↑ ↑ ↑↑
Qualidade
(mesmo Rb) ↑ ↑ ↑↑ - - ↑↑ ↓ -
Complexidade ↑ ↑ ↓ ↓ ↓↓ ↑ ↓
Sensibilidade a
erros de canal ↑ ↑ ↑ ↓ - ↓↓ ↓ ↓↓
Dependência
do sinal de
entrada
↓ ↑ ↓↓ ↓ - ↑↑ ↓↓ -
Tabela 6.1
Comparação entre codificadores de sinal.
Codificadores de sinal com melhor (↑) e pior (↓) desempenho em
termos de atributos.
Os codificadores PCM (codificação por modelação de pulsos) diferenciam-se
pelo tipo de quantificador:
Quantificador uniforme – A SNRq é dependente da potência do sinal de entrada e da
tensão máxima de quantificação, sendo esta a sua principal desvantagem. Poderá
ser uma boa opção quando não é conhecida a distribuição do sinal de entrada.
Utilizado por exemplo em CD (compact disk) de áudio;
Quantificador companding – A SNRq é (praticamente) independente do sinal de entrada.
Também é independente da tensão máxima de quantificação. A SNRq tem uma
62 Modulação de pulsos Carlos Meneses
diminuição de apenas 2,5 dB (figura 6.1), para uma variação da potência do sinal
até aos –40 dB.
Acima dos –14,77 dB, valor impossível de atingir pelos sinais de fala, o PCM
uniforme tem um melhor desempenho. Por exemplo para sinusoides, cuja
potência normalizada é de –3 dB (tabela 3.1) e apresenta uma função de
probabilidade com maiores ocorrências para valores maiores, a SNRq
correspondente para 8 bits/amostra em PCM uniforme é de 50 dB, contrariamente
aos 38 dB obtidos pelo PCM companding.
Um outro fator importante obtido pelo PCM companding, particularmente
quando aplicado a sinais de fala, é o aumento da qualidade percetiva em relação
ao PCM uniforme. O aparelho auditivo, através de um processo de mascaramento
auditivo, é menos sensível ao ruído em zonas de maior potência. Também por
este facto se quantifica melhor os valores menores em detrimento de valores
maiores. Conclui-se do melhor desempenho objetivo (aumento da SNRq) e
subjetivo (melhoria da qualidade percetiva) para sinais de fala do PCM
companding em relação ao PCM uniforme, sendo utilizado em codificação na
transmissão telefónica em rede fixa;
Quantificador ótimo – Tira partido do conhecimento sobre a função densidade de
probabilidade das amplitudes dos sinais a quantificar. Os valores de quantificação
e decisão são adaptados (treinados) de modo a maximizar a relação sinal-ruído.
Como principal desvantagem, caso o sinal de entrada não mantiver a mesma
função densidade de probabilidade dos sinais que serviram para o treino dos
quantificadores, a SNRq pode descer para valores intoleráveis.
As codificações diferenciais, ao predizerem o valor de uma amostra tirando
partido da correlação entre amostras consecutivas, têm ainda uma melhoria na SNRq
devido à introdução do ganho de predição. No entanto, ao depender das amostras
passadas, a modulação diferencial perde robustez na presença de erros no canal de
transmissão. Foram ainda apresentados os princípios básicos da predição e da
quantificação adaptada, que se ajustam às caraterísticas dos sinais a codificar. Estes
Comparação entre codificadores de sinal 63
sistemas adaptativos são ainda menos robustos na presença de erros no canal, já que a
adaptação pode ser mal efetuada levando a diferenças entre os parâmetros adaptados no
transmissor e no recetor.
O melhor codificador é um conceito inexistente em codificação de fala. Para
determinada aplicação devem ser levados em conta os atributos mais relevantes,
possivelmente à custa de um pior desempenho em relação aos outros. Por exemplo, a
diminuição do débito binário só é possível correlacionando a informação entre
amostras, o que leva a um aumento da complexidade e atraso, e possivelmente leva à
diminuição da qualidade.
Segunda Parte
COMUNICAÇÃO DE DADOS
(Introdução)
(…) um sistema de comunicação (…) consiste essencialmente de cinco partes:
1. Uma fonte de informação que produz uma mensagem ou sequência de mensagens a serem
comunicadas ao terminal recetor. (…)
2. Um transmissor que opera sobre a mensagem de alguma forma para produzir um sinal
adequado à transmissão ao longo do canal. Na telefonia esta operação consiste simplesmente na
mudança de pressão sonora numa corrente elétrica proporcional. Em telegrafia temos um
processo de codificação que produz a sequência de pontos, traços e espaços sobre o canal
correspondente à mensagem. Num sistema multiplexado PCM os diferentes sinais de fala devem
ser amostrados, quantificados, codificados e, finalmente, intercalados adequadamente para
construir o sinal. Sistemas vocoder, televisão e de frequência modulada são outros exemplos de
operações complexas aplicadas à mensagem para obter o sinal.
3. O canal é meramente o meio utilizado para transmitir o sinal do transmissor ao recetor. Pode
ser um par de condutores, um cabo coaxial, uma banda de frequências de rádio, um feixe de luz,
etc..
4. O recetor normalmente executa a operação inversa da que fez o transmissor, reconstruindo a
mensagem a partir do sinal.
5. O destino é a pessoa (ou coisa), para quem a mensagem é proposta.
Claude E. Shannon
A Mathematical Theory of Communication, 1948
Introdução à transmissão de dados 67
7 Introdução à transmissão de dados
O problema da comunicação de dados prende-se com a transmissão de
informação digital entre dois equipamentos (computadores, telefones, etc.) através de
um canal de comunicação. São transmitidos sinais (elétricos, eletromagnéticos, óticos)
que correspondem a códigos representando a informação digital.
7.1 Limitações dos sistemas de comunicação
No canal de comunicação, os sinais são atenuados devido à resistência elétrica,
distorcidos devido à largura de banda, inseridos em ruído devido ao ruído térmico ou a
interferências eletromagnéticas e não são transmitidos instantaneamente. Os efeitos do
canal de comunicação levam o recetor a nem sempre conseguir discriminar a
informação recebida. Havendo erros entre o transmissor e o recetor, a qualidade da
transmissão é medida através da relação entre o número bits errados e a totalidade dos
bits transmitidos (BER – bit error rate), que é uma estimativa da probabilidade de erro
de bit (também denominada relação ou taxa de erro de bit).
A largurade banda do canal de comunicação é, a par da energia transmitida, um
recurso extremamente importante que interessa preservar. A eficiência espetral, medida
como a relação entre o débito binário (número de bits transmitidos por segundo) e a
largura de banda ocupada pelo sinal transmitido, serve de medida de qualidade em
relação a este atributo. A transmissão M-ária (em oposição à binária), ou seja, a
transmissão de símbolos com mais de duas formas de onda possíveis, faz diminuir o
débito de símbolos para o mesmo débito binário. A largura de banda é linearmente
dependente do débito de símbolos, sendo esta uma forma de melhorar a eficiência
espetral.
Aos bits de informação poderão ser introduzidos bits de redundância, de modo a
que bits errados sejam detetados ou mesmo corrigidos no recetor. Os códigos de
correção necessitam de mais redundância que os códigos de deteção, aumentando o
número de bits transmitidos. No entanto os códigos de deteção de erros necessitam de
68 Transmissão de dados Carlos Meneses
mecanismos que informem o transmissor destes erros de modo a que a informação
respetiva possa ser retransmitida.
Não é possível encontrar um método de transmitir a informação digital com total
eficácia, ou seja, com grande débito binário, grande eficiência espetral, pequena
probabilidade de erro de bit, pequena energia e com pequena complexidade dos
equipamentos transmissores e recetores. São discutidos nas próximas secções os
compromissos entre estes atributos e terá que ser encontrado, função dos recursos
disponíveis, o método que melhor se adequa a cada aplicação. Por exemplo, são
diferentes as soluções para ligar dois computadores numa mesma sala distanciados de
alguns metros, ou quando estes se encontram em qualquer parte de um país ou mesmo
do mundo. Chega-se ainda a soluções diferentes quando os utilizadores geram pouco
tráfego de baixa prioridade, como os utilizadores domésticos, ou muito tráfego de alta
prioridade, como numa empresa com diversos balcões interligados.
7.2 Modelo de referência OSI
Para interligar diversos equipamentos de diferentes fabricantes, cada um com a
sua arquitetura, formato de dados, sistema operativo, etc., a ISO (International
Organization for Standardization) normalizou em 1979 um modelo de referência
denominado de OSI (Open system interconnection). Este é um modelo abstrato baseado
em 7 camadas (física, ligação, rede, transporte, sessão, apresentação e aplicação),
esquematizado na figura 7.1. Cada camada apenas comunica com as camadas
imediatamente acima e abaixo, através de uma interface bem definida, e com a mesma
camada no equipamento destino, tornando os protocolos que implementam
independentes das outras camadas.
7.2.1 Camada física
A camada física define as especificações físicas (mecânicas e elétricas) dos
equipamentos, i.e., define a relação entre o equipamento e o meio físico. (e.g. tipo de
fichas, cabos, formas e tensões dos sinais elétricos, quantidade de bits transmitidos por
Introdução à transmissão de dados 69
unidade de tempo, tipo de sincronismo). Apenas tem a noção de bit ignorando as
estruturas definidas pelas camadas superiores.
Figura 7.1
Modelo de referência OSI.
Modelo de 7 camadas normalizado em 1979 pela ISO.
7.2.2 Camada de ligação
Como o seu nome (ligação) indica, esta camada preocupa-se essencialmente em
gerir a ligação entre dois ou mais equipamentos que comuniquem diretamente entre si,
recorrendo para tal à camada física. Oferece às camadas superiores uma forma de
transmitir aos equipamentos de destino os dados estruturados em tramas que possuem
um cabeçalho, uma zona de dados e uma cauda. O cabeçalho inclui campos de suporte
aos serviços disponibilizados e a cauda é usada para suporte da deteção de erros. Presta
serviços às camadas superiores (rede) e socorre-se dos serviços da camada inferior
(física) para fazer chegar as tramas aos outros equipamentos. Pode prestar vários tipos
de serviços como, por exemplo, fiáveis, não fiáveis, ponto-a-ponto, ponto-multiponto,
com controlo de fluxo, sem controlo de fluxo. Por exemplo, um trânsito fiável de dados
nas ligações físicas da rede implica o uso de um algoritmo de correção de erros através
70 Transmissão de dados Carlos Meneses
de códigos apropriados, ou a utilização de protocolos que promovem a retransmissão da
trama em falha (correção por retransmissão). Poderá igualmente ser não fiável,
deixando neste caso a tarefa da correção de erros, sequenciação, etc. às camadas
superiores, se assim for pretendido.
7.2.3 Camada de rede
A camada de rede procede ao encaminhamento da informação pela rede,
organizando-a em pacotes, gerindo o endereçamento, podendo ter em consideração
fatores como a quantidade de tráfego na rede, a capacidade em termos de débito
máximo possível e a prioridade segundo o tipo de serviço requerido.
Ao contrário dos endereços da camada de ligação, de quem esta camada se
socorre para transmitir entre equipamentos vizinhos os seus dados estruturados em
pacotes, a noção de endereço nesta camada está associado ao conceito de morada e de
encaminhamento. Implica encaminhamento ao longo de redes mais ou menos
complexas até atingir o destino (morada) que pode ser remoto.
Dependendo do protocolo usado e dos objetivos pretendidos esta camada pode
ou não realizar serviços como, por exemplo, a segmentação de dados e a correção de
erros. A implementação desta camada é realizada normalmente pelo protocolo IP
(Internet protocol).
7.2.4 Camada de transporte
A camada de transporte é uma camada que permite a oferta de um conjunto de
serviços independente do protocolo de rede, tornando assim as camadas acima
independentes da rede utilizada.
Os serviços prestados por esta camada podem ser tão simples como apenas
realizar multiplexagem dos protocolos superiores sobre a mesma camada de rede
(múltiplos protocolos superiores transportados sobre o mesmo protocolo de rede para o
mesmo equipamento destino mas para aplicações distintas no destino), caso, por
exemplo, do protocolo UDP (User datagram protocol), ou complexa o suficiente para
Introdução à transmissão de dados 71
disponibilizar, para além da multiplexagem antes referida, serviços de transferência de
dados com garantia de entrega sem erro, possibilitando nomeadamente o controlo de
fluxo e a garantia da sequência correta dos dados transportados nos vários segmentos
formados nesta camada, caso, por exemplo, do protocolo TCP (Transmission control
protocol).
7.2.5 Camadas orientadas à aplicação
As camadas orientadas à aplicação (sessão, apresentação, aplicação) são
responsáveis pela comunicação entre aplicações a correr em dois equipamentos, pela
compatibilidade entre formatos e pela interface com os utilizadores.
7.2.6 Modelo TCP/IP
O modelo TCP/IP (Transport control protocol/Internetwork protocol) é um
modelo menos rígido mas funcionalmente equivalente ao modelo OSI. É formado por 4
camadas: camada de interface de rede (correspondente às camadas física e de ligação do
modelo OSI); camada de Internet (camada de rede); camada de transporte (camada de
transporte); camada de aplicação (camadas de sessão, apresentação e aplicação). Este
modelo é anterior ao modelo OSI.
Os capítulos correspondentes à segunda parte deste texto focarão
especificamente a interface elétrica da camada física (secções 8 a 12) e os algoritmos de
deteção e correção de erros ao nível do bit (secção 13). Os outros aspetos, como, por
exemplo, controlo de fluxo e de sequência, saem do contexto deste texto, devendo
sendo abordados por exemplo em unidades curriculares específicas de redes de
computadores.
Códigos de linha binários 73
8 Códigos de linha binários
Os códigos de linha têm como objetivo transmitir informação digital (níveis
lógicos “0” e “1”) num canal de comunicação11. Estes códigos encontram-se embanda
de base, ou seja, são constituídos por níveis de tensão (ou corrente) que transitam de um
modo descontínuo, ocupando uma zona do espetro em torno dos 0 Hz.
8.1 Atributos dos códigos de linha
Diferentes características do canal de comunicação, diferentes aplicações e
requisitos de qualidade, levaram a desenvolver diferentes códigos de linha, com
atributos diferentes. Quase sempre estes atributos estabelecem compromissos, no
sentido em que tentar melhorar um deles corresponde a piorar outro ou mesmo outros
atributos. Os atributos mais importantes num código de linha são:
8.1.1 Débito binário
Numa transmissão binária em série o débito binário Rb (número de bits
transmitidos por segundo) corresponde ao inverso do tempo de cada bit Tb (duração de
cada símbolo binário), ou seja:
b
b T
R 1 . (8.1)
8.1.2 Energia média por bit e potência transmitida
A energia é um recurso extremamente importante, do qual depende o valor a
pagar à empresa fornecedora. Este torna-se ainda mais importante num mundo cada vez
mais móvel, em que os equipamentos não estão ligados a tomadas (e.g. telefones
móveis, computadores portáteis) mas são alimentados por baterias. Um maior consumo
de energia corresponde assim à utilização de baterias de maior capacidade e portanto
mais caras e mais pesadas e/ou a um menor tempo da sua duração.
11 Também designado de linha de transmissão, dando origem ao termo código de linha.
74 Transmissão de dados Carlos Meneses
A energia (normalizada) de cada símbolo é determinada por:
dttsE
bT
ll
0
2 , l= ”0” ou “1”, (8.2)
em que l representa o nível lógico “0” ou “1” e tsl a respetiva forma de onda. A
energia média por bit, bE , corresponde à média ponderada pela probabilidade de cada
nível lógico, p0 e p1, respetivamente para o nível lógico “0” e “1”:
1100 EpEpEb . (8.3)
Neste texto assume-se que os níveis lógicos são equiprováveis, ou seja,
p0=p1=0,5. Esta hipótese é suficientemente realista e simplifica a análise dos sistemas de
comunicação. Nesta situação obtêm-se:
2
10 EEEb
. (8.4)
A potência (normalizada) transmitida é definida por,
bb
b
b
T RET
ES . (8.5)
8.1.3 Eficiência espetral
Qualquer canal de comunicação (secção 9) funciona numa banda de frequências
limitada. Para evitar distorção da forma de onda o espetro do código de linha tem de
estar contido na banda do canal de comunicação. Por outro lado, quando se pretende
transmitir vários sinais digitais ao mesmo tempo no mesmo canal de comunicação,
quanto menor for a largura de banda de cada sinal mais sinais se conseguem transmitir.
A banda disponível no canal de comunicação aparece assim como um recurso de
extrema importância, que deve ser bem administrado.
Códigos de linha binários 75
Como os códigos de linha têm transições bruscas entre níveis
(descontinuidades), a sua largura de banda é infinita. Este problema e suas soluções
serão abordados posteriormente (secção 10), mas a largura de banda do código de linha,
TB , depende do número máximo de transições por segundo e deve ser a menor possível.
A eficiência espetral, medida de qualidade de como determinado código aproveita a
largura de banda, correspondente à relação entre o débito binário e a largura de banda
ocupada e é dada por:
T
b
B
R
. (8.6)
8.1.4 Probabilidade de erro de bit
Uma das características dos canais de comunicação (secção 9) é a presença de
ruído, que pode levar a erros de bit entre o transmissor e o recetor. Um código de linha
deve ser o mais imune possível ao ruído, ou seja, deve ser descodificado com o menor
número de erros de bit. Deve-se então minimizar a probabilidade de erro de bit, BER,
para uma dada relação sinal-ruído no canal de comunicação. A probabilidade de erro de
bit é definida por:
dos transmitibits de Número
errados bits de Número
BER , (8.7)
em que, como qualquer estimativa estatística, se deve tender o número de bits
transmitidos para infinito.
8.1.5 Componente DC
Alguns canais de comunicação têm apenas acoplamento AC (corrente alterna),
contendo condensadores em série que eliminam a componente DC (corrente contínua).
Um canal típico com apenas acoplamento AC é a linha telefónica. Para transmitir neste
tipo de canais o código de linha não pode apresentar componente DC, ou seja, o seu
valor médio deve ser nulo, pois esta vai ser eliminada até chegar ao recetor. Também é
de evitar componentes DC localizadas pois podem ser desvanecidas num tempo curto.
76 Transmissão de dados Carlos Meneses
8.1.6 Capacidade de deteção de erros de bit
Alguns códigos são capazes de detetar erros de bit entre o transmissor e o
recetor, ao restringir por regra a sequência de símbolos transmitidos. Se houver
possibilidade de informar o transmissor destes erros os respetivos bits poderão ser
retransmitidos. Esta capacidade, sem o envio de informação redundante, consegue
diminuir a probabilidade de erro de bit sem aumentar o débito binário (a menos da
informação retransmitida).
8.1.7 Capacidade de sincronismo de símbolo
De modo a que o recetor consiga extrair corretamente a informação, este tem de
conhecer o instante de início e fim de cada símbolo (sincronismo de símbolo). Existem
dois modos de transmissão: modo assíncrono e modo síncrono:
O modo assíncrono de transmissão é utilizado tipicamente quando a geração da
informação é aleatória e em pequena quantidade e exemplificado no fim desta secção.
O modo síncrono de transmissão é utilizado para transmitir grande quantidade
de informação (trama). No recetor, o relógio com informação de início e fim de cada
símbolo (ou bit no caso da transmissão binária) tem que ser extraído do próprio código
de linha, a partir das transições entre níveis. Esta capacidade deve ser independente da
sequência de símbolos transmitidos. Idealmente, para que não haja perda de
sincronismo, deve ser garantida uma transição por símbolo.
8.1.8 Complexidade
Um código de linha deve ser fácil de realizar e de ser detetado, pois esta
facilidade leva à utilização de equipamentos menos complexos que por sua vez se
traduzem num custo menor. Por exemplo, os equipamentos que, devido ao código que
implementam, necessitem de fontes de alimentação com apenas uma polaridade, são
mais baratos que os que necessitem de polaridades simétricas. Os recetores que
necessitem de sincronismo de símbolo e este não seja fácil de realizar são também mais
sofisticados e portanto mais dispendiosos.
Códigos de linha binários 77
8.2 Formatos dos códigos de linha
Quanto à polaridade os códigos de linha binários podem ser: (1) Polares (P),
quando definidos por duas formas de onda simétricas; (2) Unipolares (U) quando um
dos símbolos é definido pela tensão 0 V; (3) Bipolares12 (B) quando definidos por 3
símbolos, sendo duas formas de onda simétricas e pela tensão 0 V.
Quanto à maneira como a informação é transmitida os códigos de linha podem
ser: (1) de nível, quando a informação se encontra no nível de tensão; (2) de transição,
quando a informação se encontra na transição entre níveis. Esta transição pode se dar
entre símbolos ou a meio do símbolo. Salienta-se que na presença de ruído é mais fácil
detetar transições do que níveis de tensão.
Os códigos de linha podem ainda ser: (1) de retorno a zero (RZ – Return to
zero), normalmente a meio do bit, produzindo sempre pelo menos uma transição por
símbolo de modo a facilitar o sincronismo; (2) sem retorno a zero (NRZ – No return to
zero), mantendo a mesma tensão durante todo o tempo de bit.
Seguidamente descrevem-se alguns dos códigos de linha mais comuns,
representados na figura 8.1.
8.2.1 Polar sem retorno a zero (PNRZ)
Este é um código de nível em que o nível lógico “1” é representado pela tensão
+A e o nível lógico “0” pela tensão –A. Estecódigo, ilustrado na figura 8.1-a, é também
designado por NRZ-L (level – código de nível).
O sincronismo de símbolo é conseguido através das transições que só ocorrem
quando da troca de níveis lógicos, pelo que este pode ser perdido quando da transmissão
de uma sequência longa de bits ao mesmo nível lógico. O número máximo de transições
por segundo é de Rb, ou seja, no máximo uma transição por símbolo. Esta situação dá-se
quando se envia uma sequência alternada de níveis lógicos.
12 Alguns autores referem-se à codificação bipolar como sendo aquela que neste texto, como referido
também por outros autores, é referida como codificação polar.
78 Transmissão de dados Carlos Meneses
Figura 8.1
Formas de onda dos códigos de linha mais comuns.
Exemplo para a sequência binária “1 0 1 0 0 1 1 0”.
a) PNRZ b) PRZ c) UNRZ d) Manchester e) BNRZ f) NRZI g) Manchester diferencial.
Se os níveis lógicos forem equiprováveis a componente DC é nula. Contudo,
para uma sequência ao mesmo nível lógico suficientemente prolongada, existirá
desvanecimento do sinal se o canal tiver acoplamento AC.
Códigos de linha binários 79
A potência deste código, independentemente da probabilidade de ocorrência de
cada nível lógico, é A2, obtendo-se para a energia média por bit de,
bbTb TATSE
2 . (8.8)
Um exemplo da transmissão com código PNRZ é a interface RS-232, usada para
conectar numa rede local dois computadores, ou um computador e teclados,
impressoras, modems, etc., com débitos binários até 115 kbit/s.
8.2.2 Polar com retorno a zero (PRZ)
Este código é semelhante ao PNRZ mas, como representado na figura 8.1-b, é
produzido um retorno a 0 V a meio de cada bit.
A vantagem deste código em relação ao PNRZ é serem produzidas sempre duas
transições por bit, uma no início e outra a meio do símbolo, nunca se perdendo o
sincronismo. O número de transições por segundo é assim de 2Rb, independentemente
da sequência de níveis lógicos. A potência deste código, independentemente da
probabilidade de ocorrência de cada nível lógico, é A2/2, sendo a energia média por bit,
bb T
AE
2
2
. (8.9)
Este código pode ser considerado um código de transição, já que ao símbolo “1”
corresponde uma transição positiva no início do bit e negativa a meio do bit, tendo o
símbolo “0” as transições contrárias.
8.2.3 Unipolar sem retorno a zero (UNRZ)
Este código é análogo ao PNRZ mas, como representado na figura 8.1-c, o nível
lógico “0” é representado por 0 V (também designado Unipolar NRZ-L. A vantagem
principal é ser de fácil implementação, nomeadamente por necessitar apenas de uma
fonte de alimentação. A grande desvantagem é ter sempre uma componente DC. Todas
as outras características são idênticas às do código PNRZ. Aliás, este código pode ser
interpretado como um código PNRZ ao qual foi adicionado uma componente DC, de
80 Transmissão de dados Carlos Meneses
modo que o nível lógico “0” seja representado por 0 V. A energia do símbolo “1” é A2Tb
e a do símbolo “0” é 0 J. A energia média por bit é, para símbolos equiprováveis, dada
pela equação 8.9.
Este código é vulgarmente utilizado para interligar em paralelo (em bus
normalmente com dimensão múltipla de um byte) componentes de um computador, tais
como o microprocessador, a RAM e controladores. Outra norma utilizando o código
UNRZ é o “laço de corrente de 20 mA”. Esta utiliza 20 mA de corrente ou a ausência de
corrente como símbolos. A vantagem da utilização da corrente em vez de tensão é um
aumento da distância possível entre equipamentos. A corrente poder ser utilizada no
recetor para ativar um led que fará acoplamento ótico com um fototransístor, isolando
eletricamente o transmissor do recetor.
8.2.4 Manchester
Este código, também denominado de split-phase, é um código polar de transição
entre níveis. Como representado na figura 8.1-d, o nível lógico “1” é representado pela
transição a meio do tempo de bit da tensão –A para +A e o nível lógico “0” pela
transição contrária. Dito de outra forma, o nível lógico “1” é representado pela
amplitude –A na primeira metade do bit e por +A na segunda metade e o nível lógico
“0” pelas amplitudes simétricas.
Como existe sempre uma transição a meio do bit o sincronismo de bit é
facilitado. O número mínimo de transições por segundo é assim de Rb. No máximo o
número de transições é de 2Rb, quando se envia uma sequência do mesmo nível lógico.
Os símbolos não têm componente DC, pelo que o código não tem componente DC, seja
qual for a sequência a ser transmitida e a probabilidade de ocorrência dos símbolos. A
potência é também independente da probabilidade de ocorrência dos símbolos, sendo
dada por A2 e a energia por bit é dada pela equação 8.8.
Este código é utilizado por exemplo na norma IEEE 802.3 a 10 Mbit/s, para
interligar equipamentos de redes locais Ethernet.
Códigos de linha binários 81
8.2.5 Bipolar Sem Retorno a Zero (BNRZ)
Neste código de nível bipolar, o nível lógico “1” é representado alternadamente
pelas tensões +A e –A, e o símbolo “0” por 0 V. Este código está ilustrado na figura
8.1-e, em que se assume que o último nível lógico “1” foi representado por –A.
Uma das principais vantagens deste código13 é ter memória e ser possível detetar
erros de bit quando da receção dos níveis lógicos “1” que devem ocorrer no recetor com
tensões alternadas. Violações a esta regra correspondem a erros de bit, levando a que
erros isolados sejam sempre detetados. Outra vantagem deste código é a de ser
insensível à polaridade. Pode-se inverter a polaridade do cabo de ligação entre os
equipamentos transmissor e recetor que a informação continua a ser descodificada
corretamente.
Devido à alternância da polaridade no símbolo “1” o código não produz
componente DC nem sequer durações prolongadas à mesma tensão e portanto não sofre
de desvanecimento. O número máximo de transições é de Rb, o que acontece quando se
transmitem apenas níveis lógicos a “1”. A energia do símbolo “1” é A2Tb e a do símbolo
“0” é 0 J. A energia por bit é, para símbolos lógicos equiprováveis, dada também pela
equação 8.9.
Quando de um nível lógico “1” existe sempre uma transição que permite o
sincronismo de símbolo. Quando de uma sequência prolongada de níveis lógicos “0” o
sincronismo pode perder-se, pois de fato não há sinal na linha (0 V). Em relação a este
atributo o código BNRZ é mesmo assim melhor que os códigos PNRZ e UNRZ, que
podem perder o sincronismo quando de uma sequência prolongada a qualquer nível
lógico.
Uma das maneiras de evitar a perda de sincronismo em BNRZ é produzir
transições como se fossem transmitidos níveis lógicos “1”, mas com violações que
permitam ao recetor detetar esta situação e substituir por níveis lógicos “0”. A esta
13 Também denominado pseudo-ternário pois tem 3 símbolos, embora a informação seja binária. Também
denominado AMI (alternate mark inversion). Existe a versão deste código com retorno a zero (BRZ).
82 Transmissão de dados Carlos Meneses
técnica dá-se o nome de bipolar com substituição de N zeros (BNZS – Bipolar with N
zero substitution), em que N é o número de níveis lógicos consecutivos a “0” a ser
substituídos. Exemplos comuns deste código são o B3ZS, B6ZS e B8ZS.
O B6ZS tem a regra seguinte:
– Último símbolo transmitido positivo, transmite-se “0 +A –A 0 –A +A”
– Último símbolo transmitido negativo, transmite-se “0 –A +A 0 +A –A ”
Note-se que existem duas violações, no 2º e 5º símbolo. Se o número de zeros
for múltiplo de 6 a substituição é efetuada o mesmo número de vezes. A utilização desta
técnica não inibe a deteção de erros já que a probabilidade de ocorrência de uma
substituição e de haver erros é muito pequena.
Este código é utilizado por exemplo em ISDN ITU-T Rec.I.430 e na
interligação entre centrais telefónicas por cabo de cobre.
8.2.6 Sem retorno a zero invertido (NRZI)
O código NRZI parece ser idêntico ao PNRZ mas é um código de transição e
não de nível como é o PNRZ. Representa um dos níveis lógicos invertendo o símbolo
em relação ao último símbolo transmitido e o outro nível lógico corresponde a manter o
último símbolo transmitido. Existem duas versões deste código: NRZ-M (inversão em
mark), representado na figura 8.1-f, em que o nível lógico “1” é codificado com a
inversão do símbolo e o nível lógico “0” sem inversão; e NRZ-S14 (inversão em space)
em que o nível lógico “0” corresponde a inverter o símbolo em relação ao último
símbolo transmitido e o nível lógico “1” corresponde a manter o último símbolo
transmitido.
Como o código BNRZ, este código também é insensível à polaridade, o que
emerge do facto de a informação fluir na transição, independentemente de esta ser
14 Alguns autores estabelecem uma diferença entre o código NRZI e as suas variantes NRZ-M e NRZ-S,
em relação à altura de ocorrência das transições.
Códigos de linha binários 83
positiva ou negativa. A potência é independente da probabilidade de ocorrência de cada
símbolo e é dada por A2, sendo a energia média por bit dada pela equação 8.8.
O código NRZ-M tem sempre transições quando da codificação de bits ao nível
lógico “1”, mas pode perder o sincronismo quando é enviada uma sequência longa de
bits ao nível lógico “0”, acontecendo o oposto para o código NRZ-S. Como os códigos
BNRZ, estes códigos diferenciais garantem então melhor sincronismo do que os
códigos PNRZ e UNRZ.
O código NRZI pode ser encarado como um código PNRZ em que a sequência
binária b[n] é pré-codificada em a[n] = (a[n–1] xor b[n]). No recetor esta
pré-codificação é desfeita com a pós-descodificação c[n] = (a[n] xor a[n–1]) (figura
8.2), que se verifica ser igual a b[n].
Figura 8.2
Código de linha NRZI.
PNRZ com pré-codificação e pós-descodificação
Pré-codificação (a[n] = a[n–1] xor b[n]). Pós-descodificação (c[n] = a[n] xor a[n–1] = b[n]).
Na tabela 8.1 é apresentado um exemplo da pré-codificação e da respetiva
pós-descodificação do exemplo da figura 8.1-f.
b[n] 1 0 1 0 0 1 1 0
a[n] = a[n–1] xor b[n] 0 1 1 0 0 0 1 0 0
c[n] = a[n] xor a[n–1] = b[n] 1 0 1 0 0 1 1 0
Tabela 8.1
Pré-codificação e pós-descodificação em NRZI.
Exemplo correspondente ao da figura 8.1-f).
Um exemplo da transmissão com código NRZ-S é a interface de computador
USB, usada para conectar periféricos.
84 Transmissão de dados Carlos Meneses
8.2.7 Manchester diferencial
Os códigos, como o código NRZI, em que os níveis lógicos são codificados
invertendo ou não o símbolo anterior são genericamente denominados de códigos
diferenciais. Têm como principais vantagens serem insensíveis à polaridade e tornar os
recetores menos complexos, já que, na presença de ruído, é mais robusto detetar
transições do que comparar com um limiar.
Um código diferencial bastante comum é o código Manchester diferencial,
representado na figura 8.1-g, em que o nível lógico “1” é codificado invertendo o
símbolo anterior e o nível lógico “0” corresponde a manter o símbolo anterior. Como
consequência não existe transição no início dos símbolos correspondentes ao nível
lógico “1” e existe sempre transição quando se transmite o nível lógico “0”.
Este código contempla todas as características do código Manchester,
realçando-se pela positiva a facilidade de sincronismo de bit e adicionando-lhe as
vantagens de um código diferencial, e pela negativa uma maior largura de banda.
Exemplos da utilização do código Manchester diferencial são a norma IEEE
802.5 de redes locais a 100 MHz e o armazenamento em discos magnéticos e óticos.
8.3 Bit de enchimento
Relembre-se que os códigos PNRZ e UNRZ podem perder o sincronismo
quando envida uma sequência longa de bits ao mesmo nível lógico, e no código NRZI
esta situação acontece quando do envio de uma sequência longa de bits ao nível lógico
“0”. Para evitar a perda de sincronismo quando destas sequências longas, coloca-se um
bit artificial que imponha uma transição, denominado de bit de enchimento (bit
stuffing). Este bit é descartado no recetor, servindo no entanto a sua transição para
efetuar o sincronismo, sem aumentar o número máximo de transições e
consequentemente a largura de banda. Relembre-se que nos códigos PRZ e Manchester
o sincronismo está facilitado, mas à custa de colocar transições a meio do bit, o que
aumenta a largura de banda.
Códigos de linha binários 85
Como desvantagem da introdução do bit de enchimento, esta provoca um
aumento artificial do débito binário, o que não acontece com a utilização da técnica
BNZS em códigos BNRZ. Por exemplo na interface USB que funciona com o código
NRZI, de modo a nunca perder o sincronismo, para uma sequência de 6 bits ao nível
lógico “0” é colocado um sétimo bit ao nível lógico “1”. Mas como a probabilidade da
ocorrência de 6 bits consecutivos ao nível lógico “0” é pequena (1/64 para sequências
equiprováveis), este método consegue garantir o sincronismo de símbolo com a
introdução de muito poucos bits de enchimento.
8.4 Modo de transmissão assíncrono
Os códigos NRZ, nas suas versões polar e unipolar, não são especialmente
vocacionadas para fornecer sincronismo de símbolo ao recetor, pois não são criadas
transições quando são transmitidas longas sequências do mesmo símbolo lógico. Para
distâncias curtas em que o canal de comunicação é um cabo elétrico, nomeadamente na
transmissão numa mesma sala, é possível transmitir num segundo condutor a
informação do relógio do transmissor para sincronismo do recetor. Contudo existe um
outro método para resolver o sincronismo de símbolo que evita a transmissão do relógio
num segundo condutor, denominado de modo de transmissão assíncrono. O modo de
transmissão assíncrono é utilizado também em distâncias curtas, mas especialmente
quando a geração da informação é aleatória e em pequena quantidade. É exemplo a
geração de informação num teclado e transmitido para um computador, em que cada
carácter é representado por um código, por exemplo o código ASCII (American
standards committee for information interchange) de 7 bits.
O processo de transmissão assíncrono é exemplificado na figura 8.3 com o
código de linha PNRZ e para a tecla “B”, a que corresponde a sequência binária em
ASCII “1 0 0 0 0 1 0”.
Entre o premir de duas teclas não há informação transmitida e a linha fica inativa
(idle), representado pela tensão +A. Quando uma tecla é premida é gerado um bit de
início (start bit) à tensão –A. Esta transição da linha inativa para o bit de início
desencadeia o sincronismo de símbolo, que não é perdido se for transmitido apenas um
86 Transmissão de dados Carlos Meneses
carácter (total ≈10 bits). O início de sincronismo corresponde a iniciar um relógio a uma
frequência mais alta que o débito binário (tipicamente 16 ou 32 vezes maior), sendo
possível a meio de cada bit verificar o nível de tensão e portanto o nível lógico.
Figura 8.3
Exemplo de transmissão assíncrona com código de linha PNRZ para o
carácter “B”, utilizando código ASCII.
Começa-se com um bit de início com polaridade contrária ao estado inativo, de
modo a sincronizar o relógio. São depois enviados os 7 bits de informação
começando pelo bit menos significativo. Segue-se um bit de paridade e termina-se
com o bit de fim à mesma polaridade do estado inativo.
A seguir ao bit de início são enviados os 7 bits correspondentes ao código ASCII
da tecla premida, começando pelo bit menos significativo (LSB). Pode ainda ser
transmitido um bit de paridade de modo que o conjunto de 8 bits (byte) transmitidos
contenha um número par de bits com nível lógico “1” (paridade par) ou ímpar (paridadeímpar). Este bit serve para detetar erros de bit. Finalmente é enviado um ou mais bits de
fim de carácter (stop bit).
A transmissão assíncrona é também utilizada para transmitir informação de um
conjunto de caracteres, por exemplo para impressoras. Neste caso a informação não é
gerada aleatoriamente mas a seguir ao bit de fim de carácter é enviado o bit de início de
novo carácter, sincronizando novamente o relógio. O fim da transmissão corresponde ao
envio do carácter especial ASCII EOT (end of text). Numa transmissão assíncrona o
número de bits de informação, a existência ou não de bit de paridade e o número de bits
de fim de carácter têm que estar pré-determinados. Os bits de início e fim de carácter
correspondem a cerca de 20% dos bits transmitidos, sendo esta a principal desvantagem
da transmissão assíncrona, quando transmitidas seguidamente grandes quantidades de
informação.
Canal de comunicação 87
9 Canal de comunicação
O canal de comunicação é o meio físico que liga os equipamentos na camada
física do modelo OSI. O canal tem quatro características que afetam o desempenho dos
sistemas de comunicação, pois diminuem a capacidade do recetor de descriminação dos
símbolos: (1) o ruído, que altera o sinal de modo aleatório; (2) a largura de banda, que
para que não haja distorção tem de ser maior que a largura de banda do sinal
transmitido; (3) a resposta em frequência, que provoca diferentes atenuações e atrasos
do sinal ao longo da banda; (4) e a dimensão, que atrasa e atenua os sinais e portanto os
níveis de tensão que chegam ao recetor.
9.1 Canal AWGN de banda limitada
Independentemente do meio de transmissão (cabo elétrico, fibra ótica, canal
rádio) o modelo do canal adotado neste texto é apresentado na figura 9.1. À sua entrada
encontra-se o sinal de saída do transmissor e à sua saída o sinal de entrada do recetor.
Figura 9.1
Canal AWGN com filtragem passa-baixo.
O canal adiciona ruído gaussiano e branco ao sinal de entrada.
Tem uma característica passa-baixo com ganho Hc(0) e largura de banda Bc.
Para simular um canal passa-banda o filtro deve ser do tipo passa-banda.
O filtro modela a banda do canal (frequência de corte do filtro) e a atenuação
(ganho na zona passante), tornando o canal de banda limitada. O filtro que modela a
banda do canal é do tipo passa-baixo, adequado aos códigos de linha, mas poderia
modelar um canal do tipo passa-banda (modulações). É ainda adicionado ruído branco e
gaussiano, pelo que o canal toma a designação de canal AWGN (Additive white
88 Transmissão de dados Carlos Meneses
gaussian noise). O ruído branco é caracterizado por ter uma função densidade espetral
de potência constante ao longo de uma larga gama de frequências (No/2 tem dimensão
W/Hz ou J). O termo branco provém da analogia com a luz branca, que teoricamente
contem todas as frequências e com igual energia. A causa do ruído é o movimento
aleatório das partículas elétricas devido à temperatura (ruído térmico).
9.2 Relação sinal-ruído no canal
O ruído gaussiano é caracterizado por ter uma distribuição de amplitudes que
segue uma distribuição normal (gaussiana), com média nula. A variância corresponde à
potência do ruído. Sendo o ruído branco, ocupa uma largura de banda infinita e a sua
potência é teoricamente infinita. Este modelo idealizado é válido desde que a função
densidade espetral de potência do ruído tenha uma característica plana na banda do sinal
transmitido, já que este deve ser filtrado à entrada do recetor com um filtro com essa
banda passante. Assumindo um código de linha, este filtro é do tipo passa-baixo com
largura de banda BT. A distribuição do ruído nesta banda é também normal (apêndice 6)
com potência 2c ,
TTc BNB
N
0
02 )2(
2
. (9.1)
A relação entre a potência do sinal à saída do canal e a potência do ruído na
banda do sinal, ou seja, a relação sinal-ruído à entrada do recetor, tendo em conta as
equações 8.5, 8.6 e 9.1, é determinada por:
000
2 N
E
B
R
N
E
BN
SSSNR b
T
bb
T
R
c
R
c , (9.2)
sendo bE a energia média por bit à entrada do recetor. Esta é uma das medidas da
qualidade da comunicação, sendo a probabilidade de erro de bit função deste valor.
9.3 Canal sem distorção
Canal de comunicação 89
Para que um sinal possa ser transmitido, a largura de banda do sinal, TB , tem
que no máximo igual à largura de banda do canal,
CT BB . (9.3)
Além de seguir a equação 9.3, de modo a que o sinal chegue ao recetor sem
distorção, o sinal a transmitir apenas pode ser multiplicado por um fator de escala G
(correspondente ao ganho do filtro )0(cH no modela da figura 9.1) e sofrer um atraso
constante td. A atenuação corresponde a uma perda de energia, contribuindo para
aumentar a probabilidade de erro de bit. Um atraso constante não é significativo porque
existem no recetor circuitos de recuperação do relógio síncronos com o sinal recebido.
Em comunicação bidirecional, contudo, um atraso longo é psicologicamente incómodo.
Na banda do sinal a transmitir o canal não pode portanto ter diferentes ganhos
ou provocar diferentes atrasos função da frequência. O sinal de saída do canal, sem a
influência do ruído, tem por isso que ser descrito por:
dTR ttGsts . (9.4)
Tendo em conta as propriedades da linearidade e deslocamento no tempo da
Transformada de Fourier, o espetro do sinal recebido é descrito por:
dftjTR efGSfS 2 . (9.5)
A resposta em frequência do canal, fH c , até à largura de banda do sinal, TB ,
é descrita por,
dftj
T
R
c GefS
fSfH 2 TBf . (9.6)
Para que não haja distorção de amplitude,
GfHc )( TBf . (9.7)
Para que não haja distorção de fase,
90 Transmissão de dados Carlos Meneses
ftfH dc 2)(arg TBf , (9.8)
em que dt é denominado atraso de grupo, definido como a derivada da fase em relação
à frequência.
Canais reais, contudo, podem provocar distorção quer de amplitude quer de fase.
Neste caso é necessário que, à entrada do recetor, se coloque um equalizador. Este tem
como função garantir que o sistema resultante (canal mais equalizador) não provoque
distorção de amplitude nem de fase, ou seja, o produto da resposta em frequência do
canal de comunicação com a resposta em frequência do equalizador, )( fH e , cumpra os
requisitos da equação 9.7 e 9.8:
ftfHfH
GfHfH
dec
ec
2)()(arg
)()(
TBf . (9.9)
9.4 Atenuação
Devido à dimensão do canal o sinal é atenuado (termo G da equação 9.6 ou
ganho do filtro )0(cH no modela da figura 9.1), sendo a atenuação correspondente à
relação entre a potência transmitida e recebida (sem ruído):
R
T
S
SAt , (9.10)
ou, em decibéis,
)0(log20log10 1010 c
R
T
dB HS
SAt
. (9.11)
A atenuação depende da distância, sendo o canal normalmente caracterizado em
decibéis por quilómetro,
D
AtAt dBkmdB 1000/ ,
(9.12)
sendo D a dimensão do canal.
Canal de comunicação 91
As equações 8.3, 8.4, 8.5 e as que relacionam a potência do sinal com a energia
média por bit e a amplitude do sinal são válidas também à entrada do recetor, desde que
se utilize a respetiva potência recebida RS . Embora a notação para a energia média por
bit e para a amplitude utilizada neste texto seja a mesma à entrada e saída do canal, esta
ambiguidade deve ser resolvida do contexto em que os sinais se aplicam.
9.5 Atraso
O atraso de uma transmissão define-se como o tempo entre o início da
transmissão e o momento que todos os dados estão presentes no recetor. Para além do
tempo de processamento dos equipamentos, existem essencialmente dois tipos de
atrasos: o atraso de propagação e o atraso de transmissão.
Atraso de propagação – Define-se atraso de propagação ao tempo que um sinal
leva a atravessar o canalde comunicação. Este depende do comprimento do canal e da
velocidade de propagação no meio de transmissão. A velocidade de propagação no meio
de transmissão é dada por,
i
i n
Cv , (9.13)
em que in é o índice de refração do meio e C a velocidade de propagação da luz no
vácuo (300.000 km/s). O atraso de propagação depende da velocidade de propagação no
meio e da sua dimensão, sendo dado por,
i
p v
DT . (9.14)
Quanto maior a dimensão do canal maior é o atraso de propagação. No vácuo, a
luz demora 3,3(3) s a percorrer um quilómetro, sendo normal caraterizar um meio de
transmissão através deste parâmetro.
92 Transmissão de dados Carlos Meneses
Atraso de transmissão – Nas redes de computadores os bits são normalmente
enviados em pacotes de N bits. Define-se tempo de transmissão de um pacote como o
tempo que o transmissor demora a colocá-lo no canal,
b
bt R
NNTT . (9.15)
O atraso de transmissão é relevante para débitos binários baixos enquanto o
atraso de propagação é relevante para canais de grande dimensão. Para canais de
dimensão e débito binário elevados o atraso dominante é o atraso de propagação. Pelo
contrário, para canais de pequena dimensão e baixo débito binário é o atraso de
transmissão o dominante. O atraso total, correspondente à soma dos diversos atrasos,
pode ser um problema grave principalmente em aplicações interativas bidirecionais,
como é o caso do telefone ou jogos online.
9.6 Meios de transmissão
Os canais de comunicação são compostos por um ou mais meios de transmissão
diferentes em série, cada um com características distintas. Seguidamente
caracterizam-se sucintamente alguns dos principais meios de transmissão, sendo a
largura de banda, a atenuação e o atraso de propagação típicos de cada um dos meios de
transmissão caracterizados, apenas como ilustração, na tabela 9.1.
Cabo de par trançado – Os cabos de par trançado são constituídos por dois condutores
de cobre enrolados em espiral, para, através do efeito de cancelamento, reduzir o
efeito das interferências eletromagnéticas. A velocidade de propagação é de cerca
de 175.000 km/s, a que corresponde um atraso de propagação de 5,7 s/km.
Um das suas aplicações é o canal telefónico, construído de modo a transmitir
sinais de fala entre dois pontos. Este canal tem um ganho praticamente constante
entre os 300 e os 3.300 Hz, capaz de transmitir fala percetível. Embora com maior
atenuação que na zona do sinal de fala, este canal é também utilizado até aos 2,2
MHz, na transmissão de sinais digitais baseado em ADSL2+ (Asymmetric digital
subscriber line).
Canal de comunicação 93
Cabo coaxial – Os cabos coaxiais são constituídos por um condutor interno de cobre,
coberto por um isolante. Uma malha exterior, também em cobre, atua como
segundo condutor. Um segundo isolante protege todo o cabo. A largura de banda
deste meio de transmissão é superior ao do cabo trançado. A velocidade de
propagação é de cerca de 250.000 km/s, a que corresponde um atraso de
propagação de 4 s/km.
Uma utilização típica dos cabos coaxiais é a ligação entre equipamentos numa
rede local. Outra é a transmissão de sinais de TV analógicos que podem coexistir
com sinais digitais no fornecimento de televisão por cabo.
Fibra ótica – As fibras óticas transportam sinais de luz de um ponto para outro. A sua
grande vantagem é uma elevada largura de banda aliada a uma pequena
atenuação. A largura de banda depende da distância percorrida (ao contrário dos
outros meios de transmissão) pois esta aumenta a dispersão dos impulsos de luz.
É ainda imune a interferências eletromagnéticas tendo um tamanho e peso
pequenos. A velocidade da luz na fibra é cerca de 200.000 km/s, sendo o atraso de
propagação de cerca de 5 s/km.
As fibras óticas são largamente utilizadas na transmissão digital de informação,
quer na ligação entre centrais e operadores quer no fornecimento de serviços
integrados (Internet, televisão, voz).
Canal rádio – Os canais de comunicação que empregam a transmissão rádio utilizam o
espaço livre como meio de propagação de ondas eletromagnéticas. Têm uma
característica passa-banda, servindo para transmitir sinais modulados (áudio,
televisão) ou para dar mobilidade à rede telefónica e às redes de computadores.
Pode sofrer de receção multipercurso devido a reflexões em obstáculos. O atraso
de propagação num canal rádio é praticamente igual ao da luz, 3,3(3) s/km.
Satélite – Um satélite geoestacionário encontra-se perto da linha do equador, a uma
distância de cerca de 36.000 km, de modo a que as forças centrifuga e centrípeta
se anulem. Uma ligação via satélite funciona com frequências mais elevadas que
a transmissão rádio normal, dado que tem que transpor a ionosfera, o que se dá
94 Transmissão de dados Carlos Meneses
apenas acima dos 40 MHz. A velocidade de propagação é praticamente igual à
velocidade da luz, pelo que o atraso de propagação do sinal para percorrer duas
vezes (ida e volta) a distância da terra ao satélite é de 0,24 s.
Os satélites são usados como retransmissores de modo a cobrir uma grande área
para difundir sinais de televisão ou efetuar ligações intercontinentais de voz ou
televisão. São também utilizados no fornecimento de serviços integrados.
Meio de Transmissão Banda [MHz]
Atenuação
[dB/km]
Atraso de
propagação
[s/km]
Par trançado classe A 0,1 8,3 5,7
Par trançado classe C 16 130 5,7
100 112 4
Cabo coaxial RG59 400 237 4
3.000 808 4
(comp. onda 850 nm) 1 5
Fibra ótica (comp. onda 1.310 nm) 103 x km 0,3 5
(comp. onda 1550 nm) 0,2 5
Rádio 0,1 a 103 ---- 3,3(3)
Satélite 103 a 105 ---- 3,3(3)
Tabela 9.1
Características de diversos tipos de meios de transmissão.
Os valores apresentados são meramente ilustrativos.
Nas próximas secções serão apresentadas soluções para minimizar os efeitos da
largura de banda e da adição de ruído gaussiano no canal comunicação, utilizando o
modelo do canal AWGN apresentado na figura 9.1. Equalizadores, para resolver o
efeito da distorção de amplitude e fase, não serão abordados.
Largura de banda 95
10 Largura de banda
Todos códigos de linha têm uma largura de banda infinita, imposta por
transições instantâneas entre variações de nível de tensão. Na figura 10.1 são esboçadas
as funções densidade espetral de potência para os diversos códigos apresentados na
secção 8, sendo as respetivas equações apresentadas no Apêndice 6. Assume-se que os
níveis lógicos são equiprováveis, a sua geração independente e que a potência é de 1 W.
Não são apresentados os códigos NRZI e Manchester diferencial, que neste contexto são
idênticos respetivamente aos códigos PNRZ e Manchester.
Figura 10.1
Funções densidade espetral de potência dos diversos códigos de linha.
Assume-se para todos os códigos uma potência de 1 W (e não a
amplitude), geração independente e equiprovável dos níveis lógicos.
10.1 Interferência intersimbólica
Utilizando canais de banda limitada, como o canal descrito na secção 9, as
transições instantâneas dos códigos de linha transformam-se em variações lentas que
interferem com os símbolos subsequentes. A esta distorção dá-se o nome de
interferência intersimbólica (ISI – Intersymbolic interference). Existem dois critérios
para lidar com a interferência intersimbólica e definir a largura de banda do sinal
transmitido, apresentados seguidamente: o critério do primeiro zero espetral e o critério
de Nyquist.
0
0.25
0.5
0.75
1
0 0.5 1 1.5 2 2.5 3 3.5
PNRZ
PRZ
UNRZ
Manchester
BNRZ
PNRZ
PRZ
Manchester
BNRZ
D
en
si
da
de
E
sp
ec
tra
l d
e
P
ot
ên
ci
a
UNRZ
f /R b
96 Transmissão de dados Carlos Meneses
10.2 Critério do primeiro zero espetral
Como se pode verificar na figura 10.1, as funções densidade espetral de potência
vão tendendo para zero (segundo o quadrado de uma função sinc) à medida que a
frequênciaaumenta, mais rapidamente quando o primeiro zero se situa em Rb (PNRZ,
UNRZ, BNRZ e NRZI) e mais lentamente quando este se situa em 2Rb (PRZ,
Manchester). Um critério de determinação da largura de banda corresponde a considerar
que a maior parte da potência do sinal está contida até à frequência do primeiro zero
espetral (first null bandwidth) assumindo ser esta a largura de banda. De facto, para
qualquer dos códigos apresentados, esta potência é no mínimo 90% do valor total. Uma
largura de banda superior à do primeiro zero espetral torna a distorção devido à
interferência intersimbólica insignificante. É tipicamente esta a situação na transmissão
assíncrona, de baixo débito binário, em que o canal tem uma dimensão de apenas alguns
metros e a sua largura de banda é mesmo bastante superior ao débito binário.
10.3 Critério de Nyquist
Uma solução para evitar a interferência intersimbólica é assumir que em pelo
menos um instante por símbolo o sinal à entrada do transmissor tem de passar
exatamente pelo valor desejado, ao mesmo tempo que se limita a largura de banda. Se a
largura de banda do canal de comunicação for maior que a limitação de banda imposta
pelo transmissor o sinal não é distorcido. Nesta análise considera-se o canal ideal até à
largura de banda imposta pelo transmissor. Este método de evitar a interferência
intersimbólica obriga a uma formatação dos pulsos correspondentes aos símbolos (pulse
shaping) no transmissor, já que estes deixam de apresentar transições bruscas para
apresentarem transições suaves. Por exemplo no caso do código PNRZ, basta garantir
um instante a meio dos símbolos de zero de ISI ( A conforme o nível lógico), sem ser
determinante a evolução entre estes instantes. Este método de determinar a largura de
banda denomina-se de critério de Nyquist.
Largura de banda 97
10.3.1 Filtro ideal
Existe uma infinidade de pulsos capazes de corresponder ao critério de Nyquist.
Para se obter o pulso a que corresponde a menor largura de banda relembre-se que, pelo
teorema de Nyquist-Shannon, um sinal deve ser amostrado com uma frequência igual
(ou superior) a duas vezes a sua largura de banda e que o sinal é recuperado sem erro
por filtragem passa-baixo ideal com frequência de corte igual a metade da frequência de
amostragem. Deste modo, assumindo um instante de zero de ISI a meio de cada
símbolo, gera-se uma amostra por símbolo e são consequentemente geradas Rb amostras
por segundo. Filtrando esta sequência de amostras à frequência Rb/2 produz-se um sinal
com esta largura de banda, pelo que,
2
b
T
R
B . (10.1)
O critério de Nyquist pode ser visto então como o dual do teorema de
Nyquist-Shannon. Cada símbolo passa a ser definido por pulsos, que em PNRZ são
positivos ou negativos conforme o nível lógico correspondente, e que têm a forma da
resposta impulsiva do filtro passa-baixo (Transformada de Fourier inversa de um
retângulo, correspondente ao filtro ideal):
tRAtp bsinc . (10.2)
Na figura 10.2 é apresentada a forma de onda com formatação de pulsos do sinal
para a sequência binária “1 0 1 1 0 0 1” em PNRZ, com amplitude A=1 V. O pulso
toma, como se pretende, o valor ±A para t=0 e 0 nos instantes múltiplos de Tb, ou seja,
para t= Tb, 2Tb,…, não interferindo nos instantes de amostragem dos outros
símbolos. Verifica-se que apesar das variações lentas o código toma os valores A nos
instantes de zero de ISI (a meio do símbolo).
98 Transmissão de dados Carlos Meneses
Figura 10.2
Resposta do filtro ideal de formatação de pulsos para o código de linha PNRZ.
com A=1 V, tendo como entrada a sequência binária “1 0 1 1 0 0 1”.
Na figura 10.3 é apresentada a cadeia transmissor–canal–recetor, em que à saída
do transmissor é colocado o filtro de formatação de pulsos. Para que não haja distorção
no canal este deve ter uma largura de banda superior à largura de banda dos códigos de
linha após a formatação. O recetor pode amostrar o sinal a meio dos símbolos nos
instantes de zero de ISI tomando a decisão sobre o nível lógico correspondente. Para tal
é necessário sincronismo de símbolo no recetor.
Figura 10.3
Transmissão de códigos PNRZ com formatação de pulsos por filtro ideal.
O sinal transmitido é filtrado no transmissor de modo a limitar a largura de banda,
mas criando um ponto de zero de interferência intersimbólica. Este ponto pode servir
no recetor para tomar uma decisão sobre qual o bit enviado.
É contudo impossível realizar uma filtragem passa-baixo ideal e possíveis
aproximações são não causais e com a “cauda” da função sinc correspondente à resposta
impulsiva exibindo um decaimento lento, criando maior atraso e sendo difíceis de
realizar.
-2,0
-1,0
0,0
1,0
2,0
0 1 2 3 4 5 6
t /Tb
Largura de banda 99
10.3.2 Filtro de cosseno elevado
A filtragem ideal para zero de ISI pode ser alterada de modo a que a resposta ao
impulso mantenha o termo da equação 10.2 e portanto continue a seguir o critério de
Nyquist, com um fator que torne a resposta em frequência mais suave, logo mais fácil
de realizar. O pulso toma a forma:
tR
tR
tR
tp b
b
b Asinc
21
cos
2
, (10.3)
em que é denominado fator de rolloff, variando entre 0 e 1. Este pulso é apresentado
na figura 10.4-a e a respetiva resposta em frequência na figura 10.4-b, para diversos
valores de . Como se pretende, quanto maior for mais depressa decai a “cauda” da
função sinc correspondente à resposta impulsiva, produzindo menor atraso e sendo mais
fácil de realizar.
(a) (b)
Figura 10.4
Filtro de cosseno elevado.
(a) Pulsos de formatação de pulsos para diversos valores de .
(b) Respetiva resposta em frequência.
-0,3
1
-5 -4 -3 -2 -1 0 1 2 3 4 5
=0
=0,5
=1
t /Tb
p (t )
0
0 0,25 0,5 0,75 1
=0
=1
=0,5
P (f )
1/Rb
f /Rb
100 Transmissão de dados Carlos Meneses
A resposta em frequência tem a forma de um cosseno elevado, dando o nome ao
filtro respetivo (raised cosine filter). Esta é dada por:
1
2
0
1
2
1
2
1
22
cos1
1
2
1
2
b
bbb
bb
b
b
R
f
R
f
RR
f
RR
R
f
R
fP . (10.4)
Este filtro continua a ser do tipo passa-baixo e produz sinais com uma largura de
banda dada por:
1
2
b
T
R
B , (10.5)
que é tanto maior quanto maior for o fator de rolloff. Tomando =0 obtêm-se a
filtragem ideal e, no outro extremo, com =1, duplica-se a largura de banda.
Na figura 10.5 é apresentada a forma de onda do sinal para a sequência binária
“1 0 1 1 0 0 1” em PNRZ, com amplitude A=1 V. Pode-se verificar que apesar das
variações lentas o código toma o valor de A nos instantes de zero de ISI (a meio do
símbolo), independentemente do valor de .
O filtro ideal (=0) tem como vantagem impor uma menor largura de banda,
mas esta é a única vantagem em relação ao filtro de cosseno elevado. Para além do
maior atraso e da dificuldade de realização devido à maior energia da “cauda” da função
sinc, outra desvantagem do filtro ideal advêm do facto de que a sua resposta impulsiva
manifesta uma grande variação no instante de zero de ISI nos símbolos adjacentes,
correspondendo às passagens por zero da função sinc. Esta característica torna o filtro
sensível a erros de sincronismo de símbolo no recetor, já que uma pequena variação no
instante de amostragem corresponde a obter um valor bastante diferente do desejado.
Com o aumento do fator de rolloff, como se pode verificar nas figuras 10.4 e 10.5,
Largura de banda 101
provoca-se menor variação do sinal, sendo mais robusto na presença de erros de
sincronismo de símbolo no recetor.
Também se pode verificar da comparação das figuras 10.5-a e 10.5-b que com
=1 as passagens por zero do sinal formatado coincidem com as do sinal original,ao
contrário do que acontece com fatores de rolloff mais pequenos, facilitando o
sincronismo de símbolo.
Figura 10.5
Resposta do filtro de formatação de pulsos para o código de linha PNRZ
A=1 V, tendo como entrada a sequência “1 0 1 1 0 0 1”; (a) =0,5; (b) =1.
Verifica-se que quanto maior for o fator de rolloff menor é a energia da “cauda” da
função sinc e as passagens por zero do sinal aproximam-se das do sinal original.
A maior robustez a erros de sincronismo, menor atraso e maior facilidade de
realização do filtro tem como contrapartida um aumento da largura de banda, sendo a
escolha do fator de rolloff claramente um compromisso entre estes atributos.
-2,0
-1,0
0,0
1,0
2,0
0 1 2 3 4 5 6
t /Tb
(a) = 0,5
-2,0
-1,0
0,0
1,0
2,0
0 1 2 3 4 5 6
t /Tb
(b) = 1
102 Transmissão de dados Carlos Meneses
10.3.3 Largura de banda e eficiência espetral
Para os códigos de linha sem retorno a zero (PNRZ, UNRZ e BNRZ) a largura
de banda é dada pela equação 10.5, pois sendo códigos em que a tensão se mantêm fixa
durante todo o tempo de bit necessita apenas de um instante de zero de ISI por bit
(abertura da função sinc na origem de 2Tb).
No caso dos códigos de linha PRZ e Manchester, estes são definidos por dois
níveis de tensão por símbolo, necessitando para cada um destes níveis de um instante de
zero de ISI, pelo que o símbolo é definido por dois pulsos que têm uma abertura de
apenas Tb e a largura de banda vem o dobro da produzida pela equação 10.5:
1bT RB . (10.6)
Para os códigos sem retorno a zero como os códigos PNRZ, UNRZ, BNRZ e
NRZI, a eficiência espetral, dada pela equação 8.6, vem:
1
2 , (10.7)
e para os códigos PRZ e Manchester a eficiência espetral vem:
1
1 . (10.8)
Para códigos de linha binários a melhor eficiência espetral é de 2 bits por
segundo por Hertz, obtido para códigos NRZ com fator de rolloff de 0. A pior situação
corresponde a uma eficiência espetral de 0,5 bits por segundo por Hertz, obtido para
códigos RZ e Manchester com fator de rolloff de 1.
Note-se que, para qualquer código de linha, a largura de banda é proporcional ao
número máximo de transições por segundo. Este valor corresponde exatamente à largura
de banda máxima pelo critério de primeiro zero espetral e à pior situação (=1) usando
o critério de Nyquist.
Largura de banda 103
10.4 Padrão de olho
Existem essencialmente duas causas, no canal de comunicação, que levam ao
aumento da BER num sistema de comunicação: (1) a interferência intersimbólica; (2) e
o ruído no canal. A influência destes dois factos pode ser aferida visualmente através do
padrão de olho (eyes pattern). O padrão de olho tem o aspeto corresponde à figura
apresentada por um osciloscópio, tendo como sinal de entrada o sinal recebido tsR e
sincronizado no início do símbolo, mas em que a luminosidade de cada varrimento não
desaparece. Este tem a aparência de um olho (ou dois caso o varrimento corresponda a
dois bits), que está tanto mais aberto quanto melhor for o desempenho do sistema.
Na figura 10.6 é apresentado um padrão de olho de um código de linha PNRZ
sem formatação de pulsos, em que o canal não tem ruído e a largura de banda
corresponde à do primeiro zero espetral ( bT RB ).
Figura 10.6
Padrão de olho com 2 bits consecutivos e 100 varrimento do código de linha PNRZ.
Canal sem ruído, do tipo passa-baixo de 1ª ordem, com Bc=Rb (primeiro zero espetral).
O eixo das abcissas está normalizado em múltiplos de Tb.
Os instantes de deteção correspondem a 0.5 e 1.5.
0 0.5 1 1.5 2
-2
-1.5
-1
-0.5
0
0.5
1
1.5
2
Padrão de Olho
Canal passa-baixo Bc=Rb Pn=0.00 Watt
104 Transmissão de dados Carlos Meneses
Pode-se verificar a interferência intersimbólica correspondente à transição lenta
entre símbolos, mas o sinal a meio do bit, aonde se dá a deteção no recetor, está “perto”
do nível correto.
Na figura 10.7 é apresentado um padrão de olho para o mesmo código da figura
10.6, mas de modo a se verificar o efeito da interferência intersimbólica o canal tem
metade da largura de banda exigida pelo critério do primeiro zero espetral. O olho
apresenta-se mais fechado devido às transições mais lentas entre símbolos, diminuindo
a qualidade da comunicação e estando sujeito mais facilmente a erros de bit.
Comparando as figuras 10.6 e 10.7, verifica-se que quanto maior for a largura de
banda do canal mais aberto se apresenta o olho e o pulso aproxima-se do pulso original
sem interferência intersimbólica. Esta melhoria contudo é conseguida através do
aumento da largura de banda.
Figura 10.7
Padrão de olho com 2 bits consecutivos de um código de linha PNRZ.
Canal passa-baixo de 1ª ordem, com Bc=Rb/2 e sem ruído.
De modo a verificar o efeito do ruído é apresentado na figura 10.8 um padrão de
olho para o mesmo código e o mesmo canal da figura 10.6 (Bc=Rb), mas com uma
relação sinal-ruído de 13 dB. Pode-se verificar também o fecho do olho, mas agora
0 0.5 1 1.5 2
-2
-1.5
-1
-0.5
0
0.5
1
1.5
2
Padrão de Olho
Canal passa-baixo Bc=Rb/2 Pn=0.00 Watt
Largura de banda 105
devido ao ruído e não devido ao efeito a interferência intersimbólica. Na figura 10.9 é
apresentado o efeito conjunto da ISI e do ruído.
Figura 10.8
Padrão de olho com 2 bits consecutivos de um código de linha PNRZ.
Canal passa-baixo de 1ª ordem, com Bc=Rb e 13 dB de SNR.
Figura 10.9
Padrão de olho com 2 bits consecutivos de um código de linha PNRZ.
Canal passa-baixo de 1ª ordem, com Bc=Rb/2 e 13 dB de SNR.
0 0.5 1 1.5 2
-2
-1.5
-1
-0.5
0
0.5
1
1.5
2
Padrão de Olho
Canal passa-baixo Bc=Rb Pn=0.05 Watt
0 0.5 1 1.5 2
-2
-1.5
-1
-0.5
0
0.5
1
1.5
2
Padrão de Olho
Canal passa-baixo Bc=Rb/2 Pn=0.05 Watt
106 Transmissão de dados Carlos Meneses
Na figura 10.10 é apresentado o padrão de olho para um código PNRZ com
formatação de pulsos para =0. Pode-se verificar que a meio do bit não existe
interferência intersimbólica. Contudo, com ruído, como apresentado na figura 10.11, o
olho fecha-se deteriorando a qualidade da transmissão.
Figura 10.10
Padrão de olho com 2 bits consecutivos de um código de linha PNRZ.
Formatação de pulsos com fator de rolloff =0 e sem ruído.
Figura 10.11
Padrão de olho com 2 bits consecutivos de um código de linha PNRZ.
Formatação de pulsos com fator de rolloff =0 e 13 dB de SNR.
0 0.5 1 1.5 2
-2.5
-2
-1.5
-1
-0.5
0
0.5
1
1.5
2
2.5
Padrão de Olho
rolloff=0 Pn=0.00 Watt
0 0.5 1 1.5 2
-2.5
-2
-1.5
-1
-0.5
0
0.5
1
1.5
2
2.5
Padrão de Olho
rolloff=0 Pn=0.05 Watt
Largura de banda 107
Na figura 10.12 é apresentado o padrão de olho correspondente ao da figura
10.10 mas com =1. A variação a meio do bit não é tão acentuada, sendo mais robusto
em relação a erros de sincronismo. Contudo o sinal tem o dobro da largura de banda. Na
figura 10.13 ilustra-se o padrão de olho correspondente ao da figura 10.12 mas com 13
dB de relação sinal-ruído.
Figura 10.12
Padrão de olho com 2 bits consecutivos de um código de linha PNRZ.
Formatação de pulsos com fator de rolloff =1 e sem ruído.
Figura 10.13
Padrão de olho com 2 bits consecutivos de um código de linha PNRZ.
Formatação de pulsos com fator de rolloff =1 e 13 dB de SNR.
0 0.5 1 1.5 2
-2.5
-2
-1.5
-1
-0.5
0
0.5
1
1.5
2
2.5
Padrão de Olho
rolloff=1 Pn=0.00 Watt
0 0.5 1 1.5 2
-2.5
-2
-1.5
-1
-0.5
0
0.5
1
1.5
2
2.5
Padrão de Olho
rolloff=1 Pn=0.05 Watt
Recetor ótimo 109
11 Recetor ótimo
Num canal de comunicação AWGN, ao sinal transmitido é adicionado ruído
branco e gaussiano. Esta situação é ilustrada na figura 11.1 para a mesma sequência
binária da figura 10.2 e 10.5, com código PNRZ. São exemplificadas as situações sem
formatação de bit, com formatação de bit com fator de rolloff, =1, com e sem ruído.
Figura11.1
Código PNRZ com ruído.
Sequência “1 0 1 1 0 0 1” em PNRZ com A=1 V, =1, ao qual foi
adicionado ruído gaussiano. Caso a deteção fosse efetuada por
comparação num ponto intermédio entre os níveis lógicos (=0 volt),
pode-se verificar no bit “5” um erro devido ao ruído.
À entrada do recetor deve ser colocado um filtro passa-baixo que deixe passar o
sinal mas que corte o ruído fora da sua banda, tendo por isso uma largura de banda TB .
Como deduzido adiante, a estimativa da probabilidade de erro de bit depende da relação
entre a energia média por bit e a densidade espetral de potência do ruído, 0NEb . Esta
relação não tem em conta a eficiência espetral mas apenas a limitação de energia. A
relação sinal-ruído entre a potência do sinal recebido e a potência do ruído na banda do
sinal ( cSNR – equação 9.2) entra em conta com a eficiência espetral, já que estas são
calculadas apenas na banda do sinal.
11.1 Descodificador de máximo a posteriori
Denominando por y o valor observado após filtragem nos instante de zero de
interferência intersimbólica após o filtro de entrada do recetor, por y1 e y0 os valores
-2,0
-1,0
0,0
1,0
2,0
0 1 2 3 4 5 6
t /Tb
110 Transmissão de dados Carlos Meneses
correspondentes sem ruído quando enviados respetivamente o nível lógico “1” e “0” e
assumindo que o filtro não afeta a amplitude do sinal (continuando o exemplo da figura
11.1, em PNRZ),
Ay
Ay
0
1 , (11.1)
correspondendo A à amplitude do código à entrada do recetor. Note-se que, sendo esta
descodificação efetuada no recetor, assume-se sempre nesta secção amplitudes e
energias recebidas e não transmitidas.
Como ilustrado na figura 11.2, a função densidade de probabilidade das
amplitudes após o filtro, dado enviado o símbolo “1”, é uma distribuição normal,
),("1|" 21 nyNyf , com média y1 e variância 22 cn (equação 9.1). A função
densidade de probabilidade ),("0|" 20 nyNyf , quando enviado o símbolo “0”, tem
média y0 e a mesma variância.
Figura 11.2
Funções densidade de probabilidade do ruído em códigos de linha binários.
d é a distância do símbolo sem ruído após filtragem à tensão ótima de comparação ot.
n2 é a potência do ruído após filtragem.
Recetor ótimo 111
As funções densidade de probabilidade condicionada (a posteriori) de ter sido
transmitido cada um dos símbolos lógicos, dada a observação da tensão y após filtragem
no instante de amostragem, segue a Lei de Bayes15,
"0" lógico nível o para
)(
"0|"
|"0"
"1" lógico nível o para
)(
"1|"
|"1"
0
1
yf
pyf
yf
yf
pyfyf
, (11.2)
em que p1 e p0 são as probabilidades a priori de ocorrência dos níveis lógicos “1” e “0”,
respetivamente. O critério ótimo de descodificação de qual o nível lógico emitido, pois
minimiza a probabilidade de erro, corresponde a selecionar o nível lógico com a maior
probabilidade a posteriori (MAP – Máximo a posteriori), ou seja,
"0" lógico nível o se-detecta|"0"|"1"
"1" lógico nível o se-detecta|"0"|"1"
yfyf
yfyf
. (11.3)
11.2 Descodificador de máxima verosimilhança
Assumindo que as probabilidades a priori são iguais (p1=p0=0,5) a
descodificação MAP, que é ótima no sentido de minimizar a BER, é equivalente à
descodificação com um critério de máxima verosimilhança (MV – Máxima
verosimilhança), dada por,
"0" lógico nível o se-detecta"0|""1|"
"1" lógico nível o se-detecta"0|""1|"
yfyf
yfyf
. (11.4)
Este critério, utilizado na maioria das aplicações, é assumido neste texto,
simplificando a estimativa da probabilidade de erro de bit. Note-se que os valores das
probabilidades a priori, necessárias no critério MAP, não são conhecidos no recetor
antes de se começar a deteção, mas o valor de tem de ser conhecido nessa altura. No
caso em análise da descodificação em duas classes em que as distribuições de
15 Thomas Bayes, 1701-1761. Inglês, matemático e pastor presbiteriano.
112 Transmissão de dados Carlos Meneses
probabilidade são ambas normais com a mesma variância, este critério corresponde a
assumir um limiar cujo valor ótimo ot (figura 11.2) é o valor médio entre as tensões
dos dois símbolos sem ruído,
2
10 yy
ot
(11.5)
A figura 11.3 apresenta o diagrama de blocos do recetor, com o filtro
passa-baixo que atenua o ruído e o descodificador implementado através do comparador
com ot
Figura 11.3
Diagrama de blocos do recetor binário.
Recetor constituído por filtragem passa-baixo na banda e descodificador MAP.
A decisão é efetuada uma vez por símbolo, sincronizado (sincronismo de
símbolo) no instante de zero de ISI, sendo este implementado pelo circuito de
amostragem e retenção (S&H – sampling & hold). A saída deste bloco conterá a
sequência binária com eventuais erros de bit, em que cada nível lógico é representado
pelas correspondentes tensões de saturação do comparador.
11.3 Probabilidade de erro de bit
A probabilidade de erro de bit, independentemente do critério utilizado (MAP,
MV ou outro, nomeadamente utilizando um valor arbitrário de ) é dada pela
probabilidade de erro em cada nível lógico pesadas pelas respetivas probabilidades
a priori, ou seja,
100011 ppppBER , (11.6)
Recetor ótimo 113
em que p01 é a probabilidade de errar o nível lógico “1” (enviar o nível lógico “1” mas
descodificar o nível lógico “0”) e p10 é a probabilidade de errar o nível lógico “0”. Estas
probabilidades são definidas por,
"0|"
"1|"
10
01
yfp
yfp . (11.7)
Utilizando o valor ótimo de , equidistante de y0 e y1, determinado pela equação
11.5, tendo em conta a figura 11.2 e a função complementar de erro (Apêndice 7):
2
2
10
2
2
01
22
1"0|"
22
1"1|"
n
n
derfcdyyfp
derfcdyyfp
opt
opt
. (11.8)
Note-se que as probabilidades de errar os bits ao nível lógico “0” e ao nível
lógico “1” são iguais. A probabilidade de erro de bit corresponderá à soma destas
probabilidades pesadas pelas probabilidades a priori, ou seja:
2
2
100011 22
1
n
derfcppppBER
. (11.9)
Assinale-se que a BER depende da diferença de tensão entre os símbolos e não
dos seus valores absolutos, uma vez que,
2
01 yyd
. (11.10)
Se em vez de um critério de máxima verosimilhança (MV) fosse utilizado um
critério de máximo a posteriori (MAP) a figura 11.2 e as equações 11.5, 11.9 e 11.10
seriam as apresentadas no Apêndice 8.
114 Transmissão de dados Carlos Meneses
11.3.1 Código PNRZ
Com o código PNRZ exemplificado na figura 11.1, Ad , a largura de banda é
dada pela equação 10.5 e a energia média por símbolo dada pela equação 8.8
(assumindo a amplitude e a energia recebida), pelo que a BER vem:
12
1
22
1
00
2
1001 N
Eerfc
BN
AerfcppBER b
T
. (11.11)
Tendo em conta a relação sinal-ruído (equação 9.2) tem-se ainda:
22
1 cSNRerfcBER . (11.12)
11.3.2 Código UNRZ
Se o código for UNRZ, então os valores das tensões sem ruído no instante de
amostragem resultam:
00
1
y
Ay . (11.13)
Pela figura 11.2 2Ad , a largura de banda é dada pela equação 10.5 e a
energia média por símbolo dada pela equação 8.9 e obtêm-se para a BER:
122
1
242
1
00
2
N
Eerfc
BN
AerfcBER b
T
. (11.14)
Comparando as equações 11.11 e 11.14, para que a BER seja igual com os
códigos PNRZ e UNRZ, a relação 0NEb tem que ser o dobro (+3 dB) em UNRZ do
que a do PNRZ. Isto deve-se ao facto de a componente DC dos códigos UNRZ
consumirem metade da energia mas não servirem para distanciar os dois símbolos.
Recetorótimo 115
11.4 Filtro adaptado
O recetor estudado nos pontos anteriores assume filtragem passa-baixo ideal,
com frequência de corte igual à largura de banda do sinal recebido, de modo a eliminar
o ruído fora da banda. Assume ainda um instante de amostragem em que não exista
interferência intersimbólica. Contudo, nem sempre é possível definir um instante de
zero de ISI e a filtragem apenas tem em conta a largura de banda e não a forma do sinal
transmitido.
Para resolver estes problemas, o Norte-Americano Dwight North em 1943,
concebeu o filtro ótimo (matched filter) para deteção de um sinal conhecido,
corrompido por ruído branco e aditivo. Considere-se que o símbolo transmitido é ts l ,
com l igual “0” ou “1”, respetivamente para os símbolos correspondentes aos níveis
lógicos “0” e “1”. A este sinal é adicionado ruído )(tw no canal de comunicação, sendo
recebido o sinal )()()( twtsts lR . Se for efetuada uma projeção sobre um sinal
)(tksj , como mostrado na figura 11.4, é anulada a componente do ruído perpendicular
ao símbolo, permanecendo apenas a componente do ruído colinear ao símbolo.
Figura 11.4
Interpretação vetorial do filtro adaptado.
Esta projeção é realizada através do produto interno entre o sinal recebido com
ruído e um vetor de base, por exemplo proporcional ao símbolo “1” (j=l). tc é então,
tkstc 1 . (11.15)
O produto interno é determinado através do integral do produto entre o sinal de
entrada )(ts R e o vetor de base c(t). Se fosse possível integrar, como definido pelo
116 Transmissão de dados Carlos Meneses
produto interno, em tempo infinito e sendo o ruído ortogonal aos símbolos, o ruído seria
todo eliminado. Não é no entanto possível que este integral seja efetuado em tempo
infinito mas apenas no tempo de símbolo Tb, pois é necessária uma decisão por símbolo.
Nestas circunstâncias o produto interno é definido por:
bT
Rb dttstcTy
0
)()( , (11.16)
que corresponde a uma filtragem em que a resposta impulsiva corresponde a:
tTkstTcth bb 1 , (11.17)
pelo que se designa de filtro adaptado (ao símbolo 1). O diagrama de blocos do recetor,
completo, que é ótimo no sentido que minimiza a BER, é apresentado na figura 11.5.
Com este filtro é retirado o ruído ortogonal ao sinal, que corresponde a todo o ruído fora
da banda mas também algum ruído na banda do sinal.
Figura 11.5
Diagrama de blocos do recetor ótimo.
Recetor constituído por filtro adaptado e deteção MAP.
O integrador é colocado a zero no início de cada símbolo, representado na figura
11.5 pela entrada bT +, sendo tomada uma decisão no fim do símbolo, amostrando y(t)
nos instantes bT –, imediatamente antes de o integrador ser recolocado a zero e se
reiniciar o processo para descodificação do próximo símbolo.
Com a integração no tempo de bit, a função de verosimilhança para cada
símbolo l tem uma distribuição normal ),( 2nlyN , sendo para a filtragem adaptada
Recetor ótimo 117
válida a figura 11.2. ly , com l igual “0” ou “1”, corresponde às tensões sem ruído para
os símbolos “0” e “1” respetivamente. A projeção obtêm-se de,
b
bb
b
b
T
l
TT
l
T
l
T
Rb
dttwtksy
dttwtksdttstks
dttwtstks
dttstcTy
0
1
0
1
0
1
0
1
0
)(
)(
)()(
)()(
l=0 ou 1. (11.18)
O segundo termo desta equação corresponde ao resultado da filtragem do ruído
introduzido pelo canal. Note-se que para todos os códigos de linha o símbolo “0” ou é
nulo (unipolar, bipolar) ou simétrico ao símbolo “1” (polar, bipolar). Deste modo os
valores da projeção sem ruído correspondem a,
unipolary
polarkEy
kEy
00
10
11
. (11.19)
Definindo eqA como a área equivalente do ruído no filtro adaptado
(Apêndice 9), numericamente igual à energia do vetor de base e correspondente ao
dobro da largura de banda de um filtro ideal passa-baixo de ganho unitário:
12
0
2
1
2
0
2 EkdttskdttcA
bb TT
eq , (11.20)
a componente filtrada do ruído tem uma distribuição normal com média nula e potência
dada por (Apêndice 9):
1
20002
222
EkNENAN ceqn . (11.21)
118 Transmissão de dados Carlos Meneses
11.5 Filtro adaptado normado
Assumindo que o vetor de base c(t) tem energia unitária, a área equivalente do
ruído é também unitária (filtro adaptado normado16):
1eqA , (11.22)
e da equação 11.20, o fator de escala k vem:
1
1
E
k . (11.23)
As tensões sem ruído no instante de amostragem, para o filtro adaptado normado
(equações 11.19 e 11.23) resultam:
unipolary
polarEy
Ey
00
10
11
, (11.24)
e a potência do ruído vem (equações 11.21 e 11.22),
2
02 N
n . (11.25)
Nesta situação a equação 11.9 pode ser reescrita como:
0
2
2
1
N
derfcBER . (11.26)
Note-se que assumir o vetor de base normado, ou tomando qualquer outro valor
arbitrário, não altera a probabilidade de erro, já que a amplitude de c(t) tanto afeta o
sinal como o ruído. Torna no entanto mais fácil a comparação com espaços vetoriais e
simplifica as expressões da potência do ruído após filtragem e da BER.
16 Referencial com vetor de base com norma unitária.
Recetor ótimo 119
11.6 BER em códigos de linha binários
Seguidamente deduz-se a equação da BER para os diversos códigos em estudo
neste texto.
11.6.1 Código PNRZ
Retomando o exemplo com código PNRZ, os símbolos correspondem a tensões
contínuas localizadas com amplitude A ou –A. Com o filtro adaptado ao símbolo “1”,
c(t)=kA=C. O Valor de C, impondo que o filtro está normado, é determinado por17,
b
T
beq RCtcTCdtCA
b
0
221 . (11.27)
Nesta situação y1 é determinado por:
bbbb
T
b
T
EETAATRAdtRdttstcy
bb
12
00
11 )()( , (11.28)
como já definido pela equação 11.24. O valor de y0, também como na equação 11.24, é
igual a –y1, uma vez que os símbolos são simétricos e, pela mesma razão, 0ot
(equação 11.5). O valor de d é definido pela equação 11.10:
bE
yy
d
2
01 , (11.29)
A figura 11.2 adaptada para a situação PNRZ com filtro adaptado normado é
apresentada na figura 11.6. Desta figura, e das equações 11.26 e 11.29, a BER em PNRZ
resulta:
02
1
N
EerfcBER b . (11.30)
17 O resultado da eq. 11.27 é válido para todos os códigos apresentados com excepção do código PRZ.
Para este código o resultado é bRC 2 até 2bT e 0 de 2bT a bT .
120 Transmissão de dados Carlos Meneses
Figura 11.6
Funções densidade de probabilidade do ruído em PNRZ
com filtro adaptado normado.
Figura 11.2, com 0ot , bEd , 2
02 N
n
Ao contrário da equação 11.11, deduzida com filtro de banda plano, com um
filtro cuja resposta em frequência é dada (filtro adaptado) pela transformada de Fourier
dos símbolos (símbolo “1”), a BER deixa de ser dependente do fator de rolloff e passa a
ser função apenas da relação sinal-ruído entre energias Eb/No, proporcional à SNRc no
canal (equação 9.2). As formas de onda para o código PNRZ, ao longo do recetor ótimo,
são apresentadas na figura 11.7.
Mantendo a potência recebida e tendo em conta a equação 8.8, a equação 11.30
vem:
00
2
2
1
2
1
NR
Serfc
N
TA
erfcBER
b
Rb . (11.31)
Desta equação deduz-se que, desde que não se altere a potência recebida, o
aumento do débito binário e consequente diminuição da energia de bit, corresponde a
um aumento na probabilidade de erro de bit. Para manter a probabilidade de erro de bit,
ao aumento do débito binário terá que corresponder um aumento da potência recebida.
Recetor ótimo 121
Figura 11.7
Formas de onda no recetor ótimo com código PNRZ com ruído.a) Sequência de símbolos com ruído; b) Sinal após filtragem c) bits descodificados.
A tracejado, forma de onda se não houvesse ruído.
A descodificação dos bits insere 1 símbolo de atraso devido à decisão ser tomada
apenas no fim do bit. Apesar do ruído não existem erros.
122 Transmissão de dados Carlos Meneses
11.6.2 Códigos polares
Genericamente para os casos dos códigos de linha polares (PNRZ, PRZ,
Manchester), em que os símbolos estão relacionados por :
tsts 01 . (11.32)
As tensões no instante de amostragem correspondem a (equação 11.19):
b
b
kEkEy
kEkEy
10
11 . (11.33)
Nesta situação o valor de comparação ótimo vem,
0
2
bbopt
kEkE . (11.34)
O valor de d é determinado por:
bopt kEyd 1 . (11.35)
A potência do ruído é dada pela equação 11.21 e a BER vem (equação 11.9),
00
2
22
2
2
2
1
2
1
22
1
N
Eerfc
NEk
EkerfcderfcBER b
b
b
n
. (11.36)
A BER é apenas função da relação entre energias 0NEb , deixando de depender,
ao contrário da equação 11.11, do fator de rolloff.
11.6.3 Códigos unipolares
Para o caso dos códigos de linha unipolares (UNRZ), em que o símbolo “0”
corresponde a 0 V, a adaptação da figura 11.2 ao filtro adaptado não normado é
apresentada na figura 11.8. As tensões de observação de cada símbolo sem ruído no
instante de amostragem são (equação 11.19):
0
2
0
11
y
kEkEy b . (11.37)
Recetor ótimo 123
Figura 11.8
Funções densidade de probabilidade do ruído em UNRZ
com filtro adaptado não normado.
Figura 11.2, com bot kE , bkEd , 0
22 NEk bn
Nesta situação o valor de comparação ótimo é determinado por,
b
b
ot kE
kE
2
02
. (11.38)
O valor de d é obtido de:
bbbopt kEkEkEyd 21 . (11.39)
Uma vez que a potência do ruído é dada pela equação 11.20 e 11.21:
0
22 NEk bn . (11.40)
A BER vem (equação 11.9):
00
2
22
2
2
22
1
22
1
22
1
N
Eerfc
NEk
EkerfcderfcBER b
b
b
n
. (11.41)
Como nos códigos polares, a probabilidade de erro de bit depende apenas da
relação sinal–ruído 0NEb e não, como na equação 11.14, do fator de rolloff.
Se o filtro adaptado estiver normado, c(t) é o mesmo que o deduzido na equação
11.27 pois os símbolos lógicos “1” em PNRZ e UNRZ são iguais.
124 Transmissão de dados Carlos Meneses
11.6.4 Código BNRZ
Na situação do código de linha bipolar sem retorno a zero existem duas
possibilidades quando se transmite o nível lógico “1”: ou se transmite o símbolo A ou se
transmite o símbolo –A, situações que ocorrem alternadamente e portanto com a mesma
probabilidade. A figura 11.2 é então adaptada para três símbolos, conforme mostrado na
figura 11.9.
As tensões no instante de amostragem do filtro adaptado, denominadas
respetivamente por 1y e 1y e 0y , são dadas por:
0
2
2
0
11
11
y
kEkEy
kEkEy
b
b
. (11.42)
O valor de d é definido pela equação 11.10, pelo que:
b
b kE
kEkEd
2
2
2
01 . (11.43)
Figura 11.9
Funções densidade de probabilidade na receção do código BNRZ.
São apresentados 3 símbolos (pseudo-ternário), pois existem dois símbolos
correspondentes ao símbolo lógico “1”.
O nível lógico “0” é descodificado com erro se o valor de y for maior que d ou
menor que –d (2 vezes a área abaixo da curva de Gauss). Cada um dos dois símbolos,
Recetor ótimo 125
representando o nível lógico “1” com polarização positiva ou negativa, tem
probabilidade a priori de metade da probabilidade a priori deste nível lógico. O
esquema de blocos do recetor BNRZ é apresentado na figura 11.10, em que o
comparador que efetua a descodificação MV é substituído por um quantificador de três
níveis.
Figura 11.10
Recetor ótimo para o código BNRZ.
Havendo 3 símbolos a descodificação MV é substituído por um
quantificador de três níveis.
Deste modo resulta para a BER:
2
2
1
2
2
1
2
2
0 22
1
222
1
222
12
nnn
derfcpderfcpderfcpBER
. (11.44)
Assumindo os níveis lógicos equiprováveis esta equação reduz-se a:
2
2
24
3
n
derfcBER
, (11.45)
pelo que, utilizando as equações 2.9, 11.21 e 11.43, vem:
00
2
22
24
3
24
3
N
E
erfc
NEk
Ek
erfcBER b
b
b . (11.46)
Este valor da BER não entra em conta com a capacidade deste código detetar
erros por violação da regra de polaridade alternada quando do envio de níveis lógicos
“1”. Se houver a capacidade do recetor informar o transmissor destes erros, a
126 Transmissão de dados Carlos Meneses
informação poderá ser reenviada. Por exemplo, erros isolados conseguem sempre ser
detetados se:
– O último nível lógico “1” foi codificado com determinada polaridade e o nível
lógico “0” consequente é incorretamente descodificado para “1” com a mesma
polaridade;
– O último nível lógico “1” foi codificado com determinada polaridade e o nível
lógico “0” consequente é incorretamente descodificado para a polaridade
contrária. No próximo nível lógico “1” haverá uma violação;
– Havendo erro num nível lógico “1” que foi entendido como nível lógico “0”,
haverá uma violação no próximo nível lógico “1” transmitido.
11.6.5 Códigos diferenciais
Nos códigos diferenciais, um erro de símbolo isolado (antes da pós-codificação)
origina dois erros de bit seguidos (após a pós-descodificação), uma vez que cada
símbolo contém informação sobre o nível lógico presente e o imediatamente posterior.
Uma vez que estes códigos são insensíveis à polaridade, se antes da pós-descodificação
forem cometidos erros consecutivos de símbolos, apenas são produzidos dois erros de
bit com pós-descodificação, na posição do primeiro erro de símbolo e na posição
seguinte ao último símbolo errado. Os códigos diferenciais exibem então uma BER
inferior ao do dobro da BER do respetivo código não diferencial. Para os códigos NRZI
e Manchester diferencial tem-se que, da equação 11.36:
0N
EerfcBER b . (11.47)
Desde que a probabilidade de erro de símbolo seja baixa a BER tende para a
igualdade na equação 11.47. Esta é a situação mais realista que sendo um limite máximo
vai ser adotada no resto do texto.
Recetor ótimo 127
11.7 Comparação do desempenho
A tabela 11.1 indica, para cada atributo, os códigos que têm melhor e pior
desempenho, conforme exposto nas secções anteriores.
PNRZ PRZ UNRZ Manch. BNRZ NRZI Manch. Dif
bE (mesma BER) ↑ ↑ - ↑ ↓ - -
↑ ↓ ↑ ↓ ↑ ↑ ↓
DC - - ↓ ↑ ↑ - ↑
BER (mesma bE ) ↑ ↑ - ↑ ↓ - -
Deteção de Erros - - - - ↑ - -
Capacidade de
Sincronismo ↓ ↑ ↓ ↑ - ↓ ↑
Complexidade
do transmissor - - ↑ - ↓ - -
Complexidade
do recetor ↓ ↑ ↓ ↑ ↓ ↓ -
Inversão de
polaridade - - - - ↑ ↑ ↑
Tabela 11.1
Códigos com melhor, (↑) e pior (↓) desempenho em termos de atributos.
Como se pode verificar, existem compromissos entre os diversos códigos, não existindo nenhum
com melhor desempenho para todos os seus atributos.
Na figura 11.10 são apresentados os valores da probabilidade de erro dos
diversos códigos de linha, função da relação da energia média por bit e a potência por
Hertz (Eb/No) em decibéis. A relação sinal-ruído no canal é dada pelo produto desta
relação pela eficiência espetral (equações 8.6 e 9.2).
Da tabela 11.1 e da figura 11.10 podem ser tiradas várias conclusões, tais como:
– Os códigos de linha “polares” (PNRZ, PRZ, Manchester), com símbolos
simétricos, obtêm o melhor desempenho em termos da BER, pois são os que
têm a menor energia para o máximo afastamento entre símbolos;
– Os códigos “unipolares” (UNRZ) estão distanciados dos códigos “polares” de
32/1log10 10 dB de relação Eb/No, ou seja, têmo mesmo desempenho
para +3 dB (o dobro em linear) de relação Eb/No;
– Para a mesma relação Eb/No, os códigos diferenciais polares (NRZI,
Manchester diferencial) têm o dobro da BER exibida pelos códigos polares;
128 Transmissão de dados Carlos Meneses
– O código BNRZ é o que tem pior desempenho em termos da BER. No entanto
esta comparação não entra em consideração com sua a capacidade de deteção
de erros isolados, embora necessite de mecanismos de reenvio. Em seu favor
tem boa capacidade de sincronismo desde que utilize a técnica BNZS,
ocupando apenas a largura de banda (menor) dos códigos PNRZ e UNRZ e
não do Manchester e do PRZ que têm o mecanismo de sincronismo
incorporado. Também não tem componente DC nem sofre de desvanecimento.
No entanto aumenta a complexidade do transmissor e do recetor, devido à
implementação do BNZS e à descodificação de três símbolos diferentes.
Figura 11.10
BER dos diversos códigos em função da relação sinal-ruído Eb/No.
O melhor desempenho (BER) para a menor relação Eb/No é conseguido pelos códigos polares.
Os códigos unipolares precisam de +3dB de Eb/No para obter o mesmo desempenho.
Os códigos diferenciais têm o dobro da BER para a mesma Eb/No.
O código BNRZ tem o pior desempenho mas tem conjuntamente boa eficiência espetral e boa
capacidade de sincronismo.
Transmissão M-ária em banda de base 129
12 Transmissão M-ária em banda de base
Como visto na secção 10, a largura de banda depende do número máximo de
transições por segundo produzido pelo código de linha. Uma maneira de diminuir o
número de transições e consequentemente a largura de banda é fazer com que o símbolo
contenha informação de mais do que 1 bit, diminuindo o débito de símbolos sR (baud
rate) sem diminuir o débito binário. O símbolo deixa de ser binário para ser M-ária, ou
seja, com M formas de onda possíveis.
12.1 PAM Digital – Modulação por amplitude de impulsos digital
Um código de linha M-ária, em que os símbolos são representados por diferentes
amplitudes, apresentado na figura 12.1, é denominado PAM (pulse amplitude
modulation) digital18 (ou PNRZ M-ária).
Figura 12.1
Código PAM digital.
M símbolos simétricos em torno do zero.
A distância entre símbolos adjacentes é de a.
O número de bits por símbolo K e o número de símbolos diferentes M (neste
caso amlitudes diferentes) do código estão relacionados por:
KM 2 . (12.1)
18 Em contraste com o PAM analógico, em que são transmitidos diretamente as amplitudes de um sinal
analógico após amostragem, podendo estes ter uma gama contínua de valores.
130 Transmissão de dados Carlos Meneses
O tempo de símbolo sT e o tempo (médio) de bit estão relacionados por:
bs KTT . (12.2)
O débito de símbolos, sR , está relacionado com o débito binário por:
K
RR bs . (12.3)
12.2 Energia média por símbolo
Denominando a como a tensão entre símbolos adjacentes, a energia média por
símbolo, assumindo que estes são equiprováveis, é dada por,
min
2222/
1
2
2
3
)1(
3
)1(
4
5,02 EMMaTk
M
aTE s
M
k
ss
, (12.4)
que aumenta com o quadrado de a e de M. minE é a energia do símbolo de menor
energia, com amplitude a/2:
sT
aE
2
min 2
. (12.5)
A energia média por bit vem:
K
E
E sb . (12.6)
12.3 Largura de banda
Assumindo o instante de zero de ISI a meio dos símbolos, a abertura dos pulsos
com critério de Nyquist é de sT2 e a largura de banda vem:
1
2
1
2 K
RRB bsT . (12.7)
Como se pretende, a largura de banda diminui com o aumento do número de bits
por símbolo. A equação 12.7 é um caso geral da equação 10.5, substituindo bR por sR .
Transmissão M-ária em banda de base 131
A eficiência espetral (equação 8.6) também melhora com o aumento do número
de bits por símbolo:
1
2K
B
R
T
b . (12.8)
12.4 Probabilidade de erro de símbolo
O recetor ótimo para códigos PAM digital é mostrado na figura 12.2 e é idêntico
ao do recetor binário da figura 11.5, mas com o comparador substituído por um
quantificador/codificador de modo a detetar M níveis de saída do filtro adaptado.
Figura 12.2
Recetor ótimo normado PAM digital.
Filtro adaptado (normado) seguido de quantificador/codificador.
Assumido que o filtro ótimo está normado e dado que os símbolos
correspondem a tensões contínuas localizadas, c(t)=C, pela equação 11.22:
s
T
seq RCtcTCdtCA
s
0
221 , (12.9)
que é um caso geral da equação 11.27, outra vez substituindo bR por sR .
As funções densidade de probabilidade do ruído, para os diversos símbolos, à
saída do filtro no momento de amostragem, são apresentadas na figura 12.3. O valor de
d para o cálculo da probabilidade de erro de símbolo vem:
min
2
0 222
ETaTRadttcad s
T
ss
s
. (12.10)
132 Transmissão de dados Carlos Meneses
Figura 12.3
Funções densidade de probabilidade no código PAM digital.
Generalização da figura 11.2 para M-ária.
No cálculo da probabilidade de erro de símbolo terá de se ter em conta com as
áreas acima de d à esquerda e à direita, a menos das duas funções densidade de
probabilidade das “pontas”, em que esta área só contará uma vez. A probabilidade de
erro de símbolo, ( SER – Symbol error rate), vem então, assumindo que todos os
símbolos são equiprováveis:
0
2
0
2
2
12
2
122
N
dercf
MN
dercf
M
MSER . (12.11)
Através das equações 11.26, 12.4, 12.10 e 12.11, chega-se a:
0
2
0
min
1
3)1()1(
N
E
M
Kercf
M
M
N
Eercf
M
MSER b . (12.12)
12.5 Probabilidade de erro de bit
Um símbolo representa um conjunto de K bits. Para o cálculo da probabilidade
de erro de bit em função da probabilidade erro de símbolo irão admitir-se duas situações
na disposição dos bits em cada símbolo: (1) disposição aleatória: 1 erro de símbolo
corresponde a errar de 1 a K bits de um modo equiprovável; (2) código Gray: 1 erro de
símbolo corresponde com maior probabilidade ao erro de apenas 1 bit.
Transmissão M-ária em banda de base 133
12.5.1 Código aleatório
Se não houver qualquer preocupação no modo em como se define o código de K
bits do símbolo, poderá assumir-se que quando se erra um símbolo estarão errados
quaisquer número de bits entre 1 e K. Em média estarão errados (K+1)/2 bits, pelo que:
errados
2
1errado 11 bitsKsímbolobits
SER
Ksímbolos
SER
, (12.13)
e a BER é dada por:
2
121 SER
K
K
SERK
KBER . (12.14)
12.5.2 Código Gray
A probabilidade de, quando existe um erro de símbolo, ser descodificado um dos
dois símbolos adjacente (amplitudes adjacentes) é muito maior do que ser descodificado
qualquer outro símbolo. Se houver o cuidado que a símbolos adjacentes correspondam
códigos apenas com 1 bit de diferença, como num código Gray, então quando se erra 1
símbolo apenas 1 bit está errado. Nestas circunstâncias, vem:
errado 1errado 11 bitsímbolobits
SER
Ksímbolos
SER
, (12.15)
pelo que,
K
SERBER . (12.16)
A tabela 12.1 ilustra o código Gray para 4 bits.
0 0000 4 0110 8 1100 12 1010
1 0001 5 0111 9 1101 13 1011
2 0011 6 0101 10 1111 14 1001
3 0010 7 0100 11 1110 15 1000
Tabela 12.1
Código Gray de 4 bits.
Duas palavras consecutivas apenas têm um bit trocado,
minimizando os erros de bit.
134 Transmissão de dados Carlos Meneses
Sendo esta uma situação mais favorável que a utilização de uma disposição
aleatória, deve-se assumir desde que nada seja dito em contrário a utilização de um
código Gray. Para uma transmissão M-ária a BER vem então, pelas equações 12.12 e
12.16:
0
2 1
3)1(
N
E
M
Kerfc
KM
MBER b . (12.17)
12.6 Código 2B1Q
Um bom compromisso entre o desempenho e a complexidade correspondea
utilizar um código PAM digital com 2 bits por símbolo (2B1Q – 2 binary 1 quaternary)
e código Gray, apresentado na figura 12.4.
Figura 12.4
Código 2B1Q
Correspondente a PAM digital quaternário ou 4-área,
utilizando código Gray.
Aplicando a equação 12.17 com K=2 bits por símbolo, obtêm-se:
05
2
8
3
N
EerfcBER b . (12.18)
A largura de banda vem, pela equação 12.7:
1
4
b
T
R
B . (12.19)
Obtém-se então metade da largura de banda comparando com um código PNRZ
(M=2), com um aumento moderado da complexidade e da BER. O recetor ótimo deste
Transmissão M-ária em banda de base 135
código corresponde ao da figura 12.2, mas em que o quantificador/codificador é de
apenas 2 bits em código Gray.
Na figura 12.4 é apresentado o padrão de olho do código 2B1Q com fator de
rolloff =0 e distância entre símbolos adjacentes a=2 V. Pode-se verificar os instantes
sem ISI a meio dos símbolos, com tensões 1 V e 3 V.
Figura 12.4
Padrão de olho do código 2B1Q
=0 e a=2, sem ruído.
O código 2B1Q é utilizado por exemplo em RDIS (Rede Digital Integrada de
Serviços) entre a central telefónica e o equipamento de entrada que fará a distribuição.
A RDIS utiliza o sistema telefónico, permitindo dois canais de 64 kbit/s mais um canal
de 16 kbit/s para sinalização e controlo.
0 0.5 1 1.5 2
-5
-4
-3
-2
-1
0
1
2
3
4
5
Padrão de Olho
rolloff=0 Pn=0.00 Watt/Hz
136 Transmissão de dados Carlos Meneses
12.7 Comparação do desempenho
Na figura 12.5 e tabela 12.2 é apresentada uma comparação entre as
probabilidades de erro para diversos números de bits por símbolo (M=2, 4, 8, 16).
Pode-se verificar o aumento da BER à medida que se aumenta M, mas relembre-se que
se diminui a largura de banda ocupada (equação 12.7).
Figura 12.5
BER em função da relação 0NEb , para PAM digital.
Código Gray com M a variar entre 2 e 16.
M=2 M=4 M=8 M=16
eficiência espetral 2(1+) 4(1+) 6(1+) 8(1+)
Eb/No dB (BER=10-6) 10,5 14,4 18,8 23.5
BER
(Eb/No=15 dB) 8,9x10
-16 1,8x10-7 7,7x10-4 2x10-2
Tabela 12.2
Compromisso entre a eficiência espetral e BER para PAM digital.
Quanto maior for o número de bits por símbolo e portanto melhor a eficiência espetral,
pior será a BER do sistema.
Transmissão M-ária em banda de base 137
12.8 Regeneração do sinal
Por vezes é necessário comunicar a distâncias consideráveis (maior atenuação) e
através de canais que inserem bastante ruído, o que faz aumentar a probabilidade de
erros. Uma estratégia para evitar estes erros é a regeneração. Por regenerar o sinal
entende-se, em pontos intermédios do canal, detetar os símbolos e retransmiti-los sem
ruído (e.g. nos equipamentos da rede como os hubs, switchs e routers). Se a atenuação
ainda não for grande e o sinal ainda não tiver sido muito afetado pelo ruído, é possível
regenerar o sinal praticamente sem erros. Note-se que não é possível regenerar um sinal
analógico mas apenas amplificá-lo, o que implica amplificar também o ruído.
Figura 12.6
Cadeia Transmissor-canal-regenerador-canal-recetor.
Por regenerar o sinal entende-se detetar os símbolos e retransmiti-los sem ruído, em pontos
intermédios, por exemplo nos equipamentos da rede.
12.9 Capacidade de canal
Assumindo a largura de banda mínima do critério de Nyquist (=0) para
transmissão sem ISI, das equações 12.7 e 12.1 vem,
22log2 MBKBR TTb . (12.20)
Das equações 12.4 e 12.5 vem,
222
2 1211
12 a
SMMa
T
ES R
s
s
R . (12.21)
De 12.20 e 12.21,
22
121log
a
SBR RTb . (12.22)
138 Transmissão de dados Carlos Meneses
Considerando um canal com ruído gaussiano e de banda limitada cB , sendo
recebido um sinal com potência SR, Shannon demonstrou em 1949 que existe um débito
binário máximo para transmissão com probabilidade de erro de bit arbitrariamente
pequena, denominando-o de capacidade de canal. A equação da capacidade de canal
(gaussiano) é semelhante à equação 12.22:
C
R
C
c
R
C BN
SBSBC
0
222 1log1log
. (12.23)
Este é um limite teórico, conhecido por Lei de Hartley19-Shannon. Se o débito
binário for superior à capacidade de canal não é possível transmitir sem erros. Shannon
não especificou qual o método de codificação e descodificação capaz de atingir este
limite, mas a Lei de Hartley-Shannon tem vindo a servir de referência de modo a
verificar a eficiência de uma transmissão.
Para determinada capacidade de canal pode-se reduzir a largura de banda à custa
do aumento da potência transmitida ou vice-versa. Note-se que a capacidade de canal
depende linearmente da largura de banda mas para se obter o mesmo efeito é necessário
alterar a potência transmitida exponencialmente. A limitação de potência estabelece um
número máximo de bits por símbolo para determinada SNR, de modo a que os níveis
correspondentes aos diversos símbolos estejam suficientemente espaçados para que o
ruído não interfira na sua descodificação.
19 Ralph Vinton Lyon Hartley, 1888-1970. Americano, engenheiro eletrotécnico.
Codificação para controlo de erros 139
13 Codificação para controlo de erros
Num sistema de comunicação digital existem dois tipos de erros de bit: os erros
devido aos efeitos do canal AWGN; e os erros devido a interferências eletromagnéticas
esporádicas ou a variações rápidas das condições do próprio canal. Os primeiros
correspondem a erros aleatórios independentes, como apresentado nas secções 11 e 12.
Os segundos correspondem a erros em rajada.
Dependendo do tipo de erros existem estratégias diferenciadas para, no recetor,
os detetar ou mesmo corrigir. Em qualquer dos casos, como ilustrado na figura 13.1, é
necessário no transmissor introduzir bits com informação redundante (codificação para
controlo de erros), produzindo um aumento do débito binário de Rb’ (débito binário da
informação) para Rb (débito binário no canal de comunicação). O efeito da codificação
para o controlo de erros é a diminuição da probabilidade de erro de bit de BER para
BER’ (descodificação para controlo de erros).
Figura 13.1
Cadeia transmissor-canal-recetor com codificação para controlo de erros.
A codificação de erros no transmissor coloca bits de redundância aumentando o débito binário.
No recetor, após deteção ou correção de erros, os bits de redundância são retirados.
13.1 Atributos dos códigos de controlo de erros
Seguidamente descrevem-se os atributos dos códigos de controlo de erros, que
devem ser ponderados face ao tipo de aplicação desejada.
140 Transmissão de dados Carlos Meneses
13.1.1 Razão do código
Um código composto por um bloco de dimensão fixa é denominado código de
bloco. Ao contrário, existem códigos, denominados códigos convolucionais, que
estendem a sua atuação a todos os bits transmitidos em vez de estarem limitados a
dimensões fixas. Este texto focará apenas os códigos de bloco. A dimensão do bloco é
denominada n, com k (k<n) bits de informação, sendo referido como código de bloco
(n, k). Este código contém 2k palavras de código (blocos válidos) diferentes. Quando os
k bits de informação são transmitidos sem qualquer alteração o código é denominado de
código sistemático. Os códigos apresentados neste texto são todos sistemáticos, sendo
mais fáceis de tratar do que os códigos não sistemáticos.
A razão do código, cR , é uma medida da eficiência do código no sentido em que
mede os bits de informação em relação ao número total de bits do código (e não no
sentido do que é que o código é capaz de detetar ou corrigir), sendo dada por:
b
b
c R
R
n
kR
'
10 cR . (13.1)
Com o aumento do número de bits devido à inserção do código, duas situações
(ou uma situação intermédia) podem ocorrer em relação à situação sem codificação:1) Mantêm-se o tempo de transmissão da informação. Aumenta-se o débito
binário no canal de comunicação de modo a transmitir a informação com o mesmo
débito binário 'bR . Este procedimento diminui a energia por bit, que por sua vez
aumenta a BER. Espera-se contudo que, após deteção ou correção, o valor da BER’ seja
mais baixo que o valor da BER inicial sem codificação.
2) Mantêm-se o débito binário Rb no canal de comunicação. Diminui-se o débito
binário da informação e demora-se mais tempo a transmitir:
cR
T
T ocodificaçã semocodificaçã com . (13.2)
Codificação para controlo de erros 141
13.1.2 Códigos de deteção e correção
Existem códigos de controlo de erros que levam a que seja possível afirmar que
num conjunto de bits alguns estão errados, mas não se sabe quais. Estes códigos
denominam-se de códigos de deteção de erros. Nalgumas aplicações o recetor descarta
esta informação mas consegue continuar a operar. Noutras aplicações, contudo, tem que
existir um mecanismo para que o recetor informe o transmissor da presença desses
erros, para que a informação seja retransmitida (ARQ – Automatic repeat request). Para
que haja retransmissão o sistema tem que ser bidirecional (ligações half-duplex ou
full-duplex) 20.
Caso se consiga encontrar a posição dos erros, estes podem ser corrigidos (FEC
– Forward error correction) por inversão do valor lógico do respetivo bit. Estes códigos
denominam-se códigos de correção de erros. Ao contrário dos códigos de deteção, os
códigos de correção não necessitam de ligações bidirecionais e portanto não necessitam
(ou não podem) esperar que a informação seja retransmitida.
A capacidade de deteção de bits errados mede-se através do número máximo de
bits errados capazes de ser sempre detetados. A capacidade de correção mede-se através
do número máximo de bits errados capazes de ser sempre corrigidos. Na situação de
correção, se estes números forem ultrapassados duas situações podem acontecer: manter
a informação recebida; ou inverter bits corretos originando mais erros.
Para a mesma capacidade de deteção e correção, os códigos de correção
necessitam de colocar maior redundância no canal do que os códigos de deteção,
apresentando portanto uma razão de código menor.
Não sendo possível detetar ou corrigir todos os erros é importante medir a
diminuição da probabilidade de erro após correção, BER’ em relação à BER, que mede o
ganho efetivo da introdução destes códigos.
20 Numa ligação half-duplex pode haver transmissão no canal nos dois sentidos, mas não
simultaneamente. Numa ligação full-duplex pode haver transmissão no canal nos dois sentidos
simultaneamente.
142 Transmissão de dados Carlos Meneses
A razão do código e a capacidade de deteção e correção são de difícil otimização
em conjunto. Como exposto adiante, quanto maior for a razão do código menor a
capacidade de deteção e/ou correção de bits do código e vice-versa. A solução a
implementar corresponde assim a um compromisso entre estes dois atributos.
13.1.3 Controlo de erros aleatórios e erros em rajada
Algumas perturbações, como por exemplo descargas eletromagnéticas, podem
corromper um bloco de dados com vários erros, sendo este efeito denominado de rajada
de erros. Define-se dimensão de uma rajada como o número de bits entre o primeiro e o
último erro, inclusive. Dentro da rajada os bits podem ou não estar errados. Haverá
entre rajadas pelo menos determinado número de bits corretos que fará parte da
definição da rajada.
Alguns códigos têm apenas a capacidade de detetar ou corrigir erros aleatórios
independentes, e não rajadas de erros. Outros, contudo, são capazes de detetar rajadas
de erros, sendo esta capacidade medida através do comprimento máximo da rajada que é
sempre detetada e pela relação total de rajadas não detetadas. Não é possível corrigir
diretamente os erros de uma rajada, mas através da técnica interleaving, apresentada
adiante, é possível converter os erros em rajada em erros isolados, sendo estes
corrigidos.
13.2 Probabilidade de erro de bloco
Assume-se neste texto que a probabilidade de geração dos símbolos lógicos e a
respetiva probabilidade de os descodificar erradamente, BER, é a mesma (canal binário
simétrico). Num bloco de n bits, a probabilidade de errar i bits, independentemente da
posição no bloco, é dada pela função de probabilidade binomial (apêndice 11):
inini BERBERCBERnif 1, . (13.3)
A probabilidade de errar i ou mais bits é dada pela soma das respetivas
probabilidades:
Codificação para controlo de erros 143
n
ij
jnjn
j BERBERCBERnif 1,maisou . (13.4)
Para 0i , valores típicos de BER pequenos e 1nBER (nBER corresponde
ao valor médio), a equação 13.4 simplifica-se para:
ini BERCBERnifBERnif ,,maisou . (13.5)
O número médio de erros num bloco de n bits iguala a média (A.11.3):
nBERerros
________
. (13.6)
A probabilidade de um bloco de n bits não conter erros vem:
nBERBERnf 1,0 . (13.7)
Havendo bits com erros aleatórios com probabilidade BER, é produzido em
média 1 erro de 1/BER em 1/BER bits. O tempo médio entre erros vem igual a esse
valor multiplicado pelo tempo de cada bit, ou seja:
BERR
T
BER
T
b
be
11
. (13.8)
13.3 Código de paridade
A paridade de um bloco de bits é considerada par se o número de bits com valor
lógico “1” for par e considerada ímpar se este número for ímpar. Um código de paridade
é constituído por n bits, dos quais k=n–1 são bits de informação, sendo adicionado um
bit de modo a garantir a paridade desejada. Ao conjunto dos bits de informação e bit de
paridade denomina-se palavra de código.
Este texto assume sempre paridade par. Para n=3, as palavras de código válidas
são “0 0 0”, “0 1 1”, “1 0 1” e “1 1 0”, correspondendo o último bit ao bit de paridade
colocado pelo transmissor. No recetor, caso se receba um bloco com paridade ímpar,
144 Transmissão de dados Carlos Meneses
como por exemplo 010, conclui-se que foi produzido entre o transmissor e o recetor
pelo menos 1 erro e o bloco deve ser retransmitido.
Caso se produzam dois erros a paridade vem novamente correta. Por exemplo,
caso se transmita “1 1 0” e se receba “0 1 1”, são produzidos erros nos primeiro e
terceiro bits, mas o bloco corresponde a uma palavra de código válida. De facto só é
possível detetar um número ímpar de erros. Assumindo a aproximação da equação 13.5,
a probabilidade do recetor não detetar erros corresponderá à probabilidade de errar 2
bits no bloco de n bits:
222 2
1,2 BERnnBERCBERnfP nb
. (13.9)
Nesta situação estarão errados apenas 2 bits em n bits, pelo que a probabilidade
de erro de bit vem, aproximadamente:
212 BERnP
n
RBE b . (13.10)
Este código tem uma fraca capacidade de deteção (máximo 1 bit errado), não
sendo capaz de corrigir qualquer bit. Pelo contrário, dado que os bits de informação são
1 nk , a razão do código é a melhor possível para o mesmo n:
n
nRc
1
, (13.11)
O tempo médio entre erros após correção corresponde à aplicação da equação
13.8, substituindo BER por BER’ e com um débito binário Rb’ sem os bits de
redundância. Este é um tempo médio entre erros mas note-se que, num código de
paridade, os erros sucedem-se aos pares no mesmo bloco.
A melhoria na probabilidade de erro de bit é conseguida à custa da
implementação de um sistema de retransmissão e de um maior número de bits
transmitidos (bits de paridade e bits retransmitidos).
Codificação para controlo de erros 145
A probabilidade de retransmissão, que iguala a probabilidade de errar um
número ímpar de bits, é aproximadamente igual à probabilidade de errar 1 bit no bloco:
nBERBERBERCBERnfP nnr 11 )1(,1 . (13.12)
13.4 Carácter de verificação de bloco (BCC)
Um blocode bits pode ser subdividido em sub-blocos, em que cada sub-bloco
está protegido através de um bit de paridade. Por exemplo, na transmissão de caracteres
ASCII (7 bits), cada carácter pode estar protegido por 1 bit de paridade ( xp ). Este
procedimento está ilustrado na figura 13.2, em que cada carácter é apresentado em cada
linha. Por sua vez cada coluna, correspondente ao bit com o mesmo peso de cada
carácter, está também protegida por 1 bit de paridade, produzindo um carácter de
verificação ( xc ), que dá o nome ao código de carácter de verificação de bloco (BCC –
Block check character).
71m 61m 51m 41m 31m 21m 11m 1p
72m 62m 52m 42m 32m 22m 12m 2p
73m 63m 53m 43m 33m 23m 13m 3p
74m 64m 54m 44m 34m 24m 14m 4p
75m 65m 55m 45m 35m 25m 15m 5p
76m 66m 56m 46m 36m 26m 16m 6p
77m 67m 57m 47m 37m 27m 17m 7p
7c 6c 5c 4c 3c 2c 1c 0c
Figura 13.2
Código de carácter de verificação de bloco.
m – bits de mensagem; p – bits de paridade; c – carácter de verificação de bloco.
A relação de código é função do número de colunas (cl) e linhas (li):
licl
liclRc
11 (13.13)
Neste código, embora 2 bits errados possam escapar à deteção numa linha, não
passam na deteção de bloco (coluna) e vice-versa. Dois erros, desde que não na mesma
146 Transmissão de dados Carlos Meneses
linha ou na mesma coluna, são também detetados, mas não é possível corrigi-los porque
a posição dos erros fica indefinida entre duas hipóteses (duas diagonais). Três erros são
também sempre detetados. No caso de número ímpar de erros na mesma linha (ou na
mesma coluna) é mesmo possível encontrar a posição dos bits errados e corrigi-los por
inversão do seu valor lógico. Uma situação de erros não detetados corresponde a quatro
erros nos vértices de um retângulo.
O código BCC é também capaz de detetar rajadas de erros. Se os bits forem
enviados por linha, uma rajada de erros de dimensão máxima igual ao número de
colunas produz apenas 1 bit errado por coluna e esta situação é verificada através do
carácter de verificação de bloco. Se o número de linhas for maior que o número de
colunas os bits devem ser transmitidos por coluna e não por linha, para permitir detetar
rajadas com maior dimensão. A dimensão máxima da rajada sempre detetada, maxb ,
coincide assim com o número máximo entre o número de linhas ou colunas.
),max(max liclb (13.14)
13.5 Distância de Hamming e capacidade de deteção e correção
Dado um bloco (palavra de código com ou sem erros) recebido, br, a função de
probabilidade condicionada (probabilidade a posteriori) de ter sido transmitida a
palavra de código jc , é dada por:
)(
|
|
brf
pcbrf
brcf jcjj . (13.15)
Como código corretor e utilizando um critério de máximo a posteriori é
descodificada a palavra de código jc com maior probabilidade a posteriori (MAP).
Assumindo que todas as palavras de código são equiprováveis, o critério de máximo
a posteriori é equivalente ao critério de máxima verosimilhança (MV), pelo que é
Codificação para controlo de erros 147
descodificada a palavra de código jc que maximiza a função de verosimilhança:
jcbrf | . (13.16)
Pela análise da função de probabilidade binomial (equação 13.5 com BER muito
pequeno e nBER <<1), verifica-se que a função de verosimilhança é tanto maior quanto
menor for o número de bits diferentes entre br e jc . Define-se distância de Hamming21
entre dois blocos, jcbrd , , como o número de bits diferentes entre br e jc , em igual
posição. Por exemplo os blocos “001” e “010” terão uma distância de Hamming de 2,
porque os 2º e 3º bits são diferentes. Para correção de erros, o critério de máxima
verosimilhança é equivalente a:
Descodificar a palavra de código que diste a menor distância
de Hamming em relação ao bloco recebido.
Define-se distância mínima de Hamming de um código, mind , como a menor
distância de Hamming entre todas as palavras desse código. Este é um parâmetro que
limita a capacidade de deteção e de correção. Se o número de erros for igual a mind o
bloco recebido pode corresponder a outra palavra de código. Consequentemente, como
ilustrado na figura 13.3, para deteção de erros o número de erros tem que ser inferior a
mind . Para correção, se o número de erros for superior a metade de mind pode existir
outra palavra de código com distância de Hamming menor, e a tentativa de correção dá
origem a descodificar uma palavra de código errada.
A capacidade de deteção e correção vêm (figura 13.3):
Deteção até l erros mindl (13.17-a)
Correção até t erros
2
1min dt (13.17-b)
21 Richard W. Hamming, 1915–1998. Americano, trabalhou nos Laboratórios Bell e foi professor na
Naval Postgraduate School.
148 Transmissão de dados Carlos Meneses
Figura 13.3
Capacidade de deteção e correção.
Exemplo de código com mind =5.
Bloco recebido r a d(r, ci)=2 bits e d(r, cj)=3 bits.
Código de deteção – uma vez que não é uma palavra de código, são detetados erros.
Código de correção – descodificado ci, já que é esta palavra de código que lhe fica
mais próxima (menor distância de Hamming).
Note-se que os códigos com distância mínima de Hamming superior a 2 podem
funcionar como código de correção ou deteção. Os códigos com distância mínima de
Hamming de 2, como o código de paridade, não conseguem corrigir qualquer erro e só
conseguindo detetar 1 bit errado, pois neste caso ocorrem sempre pelo menos duas
palavras de código com distância de Hamming de 1. Em contrapartida tem a razão do
código (equação 13.1) a maior possível para o mesmo valor de n.
O código BCC tem uma distância mínima de Hamming de 4 bits, já que
consegue sempre corrigir 1 bit errado e detetar sempre 2 ou 3 bits errados. Este valor
também podia ser obtido observando que, ao alterar 1 bit de informação, altera-se a
paridade da sua linha e coluna, e altera-se 0c , paridade dos bits de paridade.
Para um código de dimensão n ser capaz de corrigir 1 bit, tem que haver por
cada uma das 2k palavras de código pelo menos mais n blocos não válidos, cada um
correspondendo a 1 erro em cada uma das n posições. Como ao todo existem 2n blocos
diferentes de n bits:
kn n 212 . (13.18)
Codificação para controlo de erros 149
Para que se consiga corrigir até 2 bits tem que se acrescentar ao lado direito
desta inequação o número de combinações de n, 2 a 2. Define-se limite de Hamming
como o número mínimo de bits de redundância, n –k, a colocar para se corrigir até t bits,
que satisfaz a inequação:
t
j
n
j
n
t
nkn CCCn
0
2 ...12 . (13.19)
Um código corretor que utilize o mínimo de bits de redundância, seguindo o
limite de Hamming, designa-se de código perfeito de correção de t bis. Pelo limite de
Hamming, depreende-se que para uma maior capacidade de correção maior terá que ser
o número de bits de redundância, n–k. Contudo, nem todos os códigos que satisfaçam
esta inequação conseguem de facto corrigir t bits errados (limite de Hamming é
condição necessária mas não suficiente), sendo necessário também que o código tenha
uma distância mínima de Hamming que respeite a equação 13.17-b.
13.6 Códigos lineares
Um código linear é aquele em que a adição em aritmética em módulo-2 de
quaisquer duas das suas palavras ( ou exclusivo bit a bit; paridade par) de código dá
origem a outra palavra do código. Contem ainda a palavra de código nula, com todos os
bits ao nível lógico “0”. O peso de Hamming de uma palavra de código é definido como
o número de elementos não “0” dessa palavra. A distância mínima de Hamming de um
código linear corresponde ao menor peso de Hamming de todas as palavras do código,
com exceção da palavra de código nula.
Caso haja erros, definidos por um padrãode erro E , em que:
i
i
ei posição na erro existe não quando0
posição na erro um produzido é quando1
, (13.20)
o efeito do canal corresponde a somar (módulo-2) os bits transmitidos com o padrão de
erro. Se um código for linear e o padrão de erro coincidir com uma palavra de código o
150 Transmissão de dados Carlos Meneses
bloco recebido corresponde a outra palavra de código e os erros não serão detetados.
Esta é uma propriedade importante dos códigos lineares.
Note-se que um código de paridade ímpar não é linear, pois não contém a
palavra de código nula nem a adição de duas palavras de código dá em geral um bloco
com paridade ímpar. A maior dificuldade em tratar estes códigos leva a que neste texto
sejam apenas referidos códigos de paridade par.
13.7 Código de repetição
Um código de repetição corresponde a repetir um bit de informação n–1 vezes,
produzindo um código (n, 1), também denominado R(n), com n ímpar. Por exemplo
para n=5, as duas palavras de código são “0 0 0 0 0” e “1 1 1 1 1”.
A distância de Hamming entre as palavras de código é de n, (de n bits a “0” até n
bits a “1”) pelo que se corrige até 21n bits errados (regra por maioria). Por
exemplo, se, para n=5, for recebido o bloco “0 0 0 1 1” é descodificado o nível lógico
“0”, pois existem uma maioria de “0” recebidos. Para 21n ou mais bits errados, a
descodificação produz um erro. A probabilidade de erro vem então:
2
1
2
1
n
n
n BERBER' C . (13.21)
A razão do código de repetição (k=1) é dada por,
n
Rc
1
. (13.22)
Para o mesmo n, o código de repetição tem a razão de código menor (pior)
possível, pois o numerador da equação 13.22 é k=1. Como contrapartida é o código que
consegue corrigir o maior número de erros, ou seja, até metade (exclusivo) de n. Ao
contrário, o código de paridade cuja razão é a maior (melhor) possível para o mesmo n,
consegue apenas detetar um erro de bit, encontrando-se estes códigos nos dois extremos
de razão do código versus capacidade de deteção e correção.
Codificação para controlo de erros 151
Na figura 13.4 apresentam-se os blocos possíveis de 3 bits num espaço
tridimensional, em que cada bloco corresponde a um vértice de um cubo. Os pontos a
cheio representam as palavras de código. Blocos separados de uma aresta têm distância
de Hamming de 1 bit. Errar 1 bit corresponde ao deslocamento numa aresta.
(a) (b)
Figura 13.4
Blocos de 3 bits num espaço tridimensional.
(a) Código de repetição (b) Código de paridade.
● Palavras de código.
Errar 1 bit corresponde ao deslocamento numa aresta.
O código de repetição tem maior separação entre palavras de código (3 arestas
ou distância de Hamming de 3) do que o código de paridade (2 arestas ou distância de
Hamming de 2). Utilizando o código de paridade, quando existe 1 erro o bloco recebido
fica posicionado num vértice, à distância de 1 aresta de 3 palavras de código diferentes,
todas com a mesma probabilidade. No código de repetição o bloco recebido fica a uma
aresta da palavra original e a duas da outra palavra de código, corrigindo-se para a
palavra de código correta.
Embora com uma razão do código muito baixa, o código de repetição é utilizado
no armazenamento de dados que necessitem de alta proteção, como por exemplo os
dados de clientes num banco, colocando n discos em paralelo. Quando da escrita a
mesma informação é gravada em todos os discos. Quando a informação é lida é aplicada
uma regra por maioria de modo a corrigir eventuais erros. Erros sistemáticos num dos
discos conseguem ser detetados sem por em causa a informação, de modo a poder ser
substituído.
152 Transmissão de dados Carlos Meneses
13.8 Código de Hamming
Um código perfeito com uma distância de Hamming mínima de 3, capaz de
corrigir 1 bit ou detetar 2 bits errados, é o código de Hamming. Para ilustrar este código
considere-se uma mensagem de 4 bits, por exemplo “1 0 0 1”. Este código requer 3 bits
de paridade, num total de 7 bits (equação 13.18 com código perfeito), correspondendo a
um código H(7,4) (Hamming (7,4)). Coloque-se os bits de informação da esquerda para
a direita, respetivamente nas posições:
m7 m6 m5 p4 m3 p2 p1
1 0 0 x 1 x x
Os 3 bits marcados com x, que estão nas posições condizentes com potências de
2, corresponderão aos bits de paridade. Coloque-se agora os bits de mensagem nas
posições indicadas na figura 13.5-a, como ilustrado na figura 13.5-b.
(a) (b)
Figura 13.5
Cálculo dos bits de redundância do código de Hamming (7,4).
(a) Diagrama genérico (b) Exemplo.
Os bits de paridade correspondem ao cálculo da paridade par dentro do mesmo
círculo. Os bits transmitidos, incluindo os bits de paridade, são:
m7 m6 m5 p4 m3 p2 p1
bits transmitidos 1 0 0 1 1 0 0
Caso haja um erro, por exemplo em m6, os bits recebidos são:
m7 m6 m5 p4 m3 p2 p1
bits recebidos 1 1 0 1 1 0 0
Codificação para controlo de erros 153
O procedimento de correção a ser efetuado no recetor é o seguinte:
1) Recalculam-se os bits de paridade, sem ter em conta os bits de paridade
recebidos.
Figura 13.6
Cálculo do código de Hamming (7,4).
No recetor, recalcula-se os bits de paridade para comparação com os recebidos.
2) Adicionam-se (módulo-2) os bits de paridade recebidos e calculados
correspondentes (ou, de um modo equivalente, calcula-se a paridade par),
produzindo um número denominado síndrome;
m7 m6 m5 p4 m3 p2 p1
bits recebidos 1 1 0 1 1 0 0
bits calculados 1 1 0 0 1 1 0
Síndrome 1 1 0
3) Lendo os bits da síndrome da esquerda para a direita, e transformando-a em
decimal 110 ↔ 6, então o bit errado é o bit m6;
4) Inverte-se o nível lógico do bit errado e retiram-se os bits de paridade,
descodificando os bits m7, m6, m5, m3 = “1 0 0 1”, os bits corretos;
5) Quando não há erros os bits de paridade recebidos e recalculados são iguais,
pelo que a síndrome vem “0 0 0”, indicando não haver erros.
Note-se pelo diagrama da figura 13.5-a, que o bit m6 influência as paridades (p4,
p2) exatamente as posições com nível lógico “1” da conversão para binário do seu
índice (6 ↔ “1 1 0”), assumindo as posições pela ordem (p4, p2, p1). Esta situação
154 Transmissão de dados Carlos Meneses
repete-se para todos os outros bits de informação e é por este facto que a síndrome
corresponde ao bit errado.
Uma alternativa ao cálculo dos bits de paridade no código de Hamming
corresponde a adicionar em módulo-2 as posições em binário dos bits de informação ao
nível lógico “1”. Com o exemplo da sequência binária “1 0 0 1”, o bit m7 e m3 estão ao
nível lógico “1”, pelo que:
p4 p2 p1
7↔111 1 1 1
3↔011 0 1 1
Paridade 1 0 0
No recetor, repete-se o procedimento, incluindo os bits de paridade. Neste caso
acrescenta-se p4 que está ao nível lógico “1”, Se a síndrome der 0 não existem erros:
p4 p2 p1
7↔111 1 1 1
4↔100 1 0 0
3↔011 0 1 1
Síndrome 0↔000 0 0 0
Assumindo um erro na posição m6, a síndrome corresponde novamente à
posição errada, bastando para corrigir o bit inverter o seu nível lógico.
p4 p2 p1
7↔111 1 1 1
6↔110 1 1 0
4↔100 1 0 0
3↔011 0 1 1
Síndrome 6↔110 1 1 0
Em alternativa ao diagrama da figura 13.6, um código em que os bits de
redundância são definidos por paridades de subconjuntos do bits de entrada estes podem
também ser definido com a operação ou exclusivo ou . Para o código de Hamming
(7,4) tem-se (figura 13.6):
7654 mmmp 7632 mmmp 7531 mmmp . (13.23)
Codificação para controlo de erros 155
Num código de Hamming, para qualquer que seja o número de bits de paridade é
apenas possível corrigir 1 bit, pois a distância mínima de Hamming é sempre 3. A
relação entre o número de bits de informação e a dimensão do código torna o código de
Hamming perfeito, ou seja, corresponde ao menor valor de n da inequação 13.18, dado
pela equação:
12 knn .(13.24)
Segundo a equação 13.24 aplicada para 2 bits de paridade, é gerado um código
(3,1), corresponde a um código de repetição de 3 bits. No entanto, embora gozando das
propriedades dos códigos de Hamming, este não é considerado como tal:
m3 p2 p1
Com 4 bits de paridade o código corresponde a um código H(15,11):
m15 m14 m13 m12 m11 m10 m9 p8 m7 m6 m5 p4 m3 p2 p1
Qualquer que seja o código de Hamming, uma vez que a distância mínima de
Hamming é sempre 3, a probabilidade de errar um bloco corresponde à probabilidade de
errar 2 bits (ou mais):
222 2
1,2 BERnnBERCBERnfP nb
. (13.25)
Nesta situação o bit “corrigido” é sempre um terceiro bit (mal corrigido), o que
corresponde no final a 3 bits errados em n, pelo que:
21
2
33' BERnP
n
BER b . (13.26)
Na figura 13.7 é apresentada uma comparação entre os códigos de repetição e de
Hamming, para BER=10-5. Realça-se o compromisso entre a razão do código e a
capacidade de correção. Num código de repetição, quanto maior for o número de bits de
repetição mais bits se conseguem corrigir mas a razão do código decai também muito
156 Transmissão de dados Carlos Meneses
rapidamente. Os códigos de Hamming, mantendo constante a capacidade de corrigir 1
bit, melhoram a razão do código à medida que vão protegendo maior número de bits de
informação.
Figura 13.7
Desempenho dos códigos de repetição e códigos de Hamming.
Exemplo com para BER=10-5. A probabilidade de erro após correção é tanto maior (pior)
quanto maior (melhor) for a razão do código.
13.9 Matriz geradora
Códigos lineares e sistemáticos podem ser gerados através de um produto
matricial em aritmética de módulo-2. Considere-se um conjunto de bits de informação
representados sob a forma de um vetor linha m (1, k):
12... mmmm k , (13.27)
e uma matriz geradora do código G (k, n), definida por:
PIG k | , (13.28)
1.E-72
1.E-68
1.E-64
1.E-60
1.E-56
1.E-52
1.E-48
1.E-44
1.E-40
1.E-36
1.E-32
1.E-28
1.E-24
1.E-20
1.E-16
1.E-12
1.E-08
1.E-04
0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9
Razão do código
B
ER
'
H(7,4) H(15,11) H(31,26)
R(5)
R(3)=H(3,1)
R(31)
Codificação para controlo de erros 157
em que Ik (k, k) é uma matriz identidade e P (k, n–k) é uma matriz que define os bits de
paridade.
O vetor linha c (1, n) representado as palavras de código é definido por:
mGc . (13.29)
Devido à matriz identidade, os bits de informação são copiados para o código,
tornando-o sistemático. Note-se que a soma de duas palavras de código origina outra
palavra de código, tornando-o linear:
GmmGmGmcc jijiji . (13.30)
Cada linha da matriz geradora corresponde a uma palavra de código. Esta é
gerada quando apenas um e um só bit de informação se apresenta ao nível lógico “1”.
Da esquerda para a direita, se o bit j for o único bit ao nível lógico “1”, a palavra de
código correspondente é dado pela linha j. Todas as outras palavras de código
correspondem à combinação linear (módulo-2) das respetivas linhas da matriz geradora.
Por exemplo, se o bit i e o bit j estiverem ao nível lógico “1”, a palavra de código
correspondente é dada pela combinação linear das linhas i e j.
De modo a que no recetor se consiga perceber se houve erros na transmissão,
assume-se a matriz de verificação de paridade, HT (n, n–k):
kn
T
I
PH , (13.31)
em que In-k (n–k , n–k) é uma matriz identidade. Verifica-se que:
0...00 TcHS . (13.32)
O produto com a matriz P recalcula a paridade (linha) e o produto com a matriz
In-k compara este resultado com a paridade, que sendo a mesma dá resultado 0 em todas
as colunas.
158 Transmissão de dados Carlos Meneses
Caso haja erros representados pelo padrão de erro da equação 13.20, o que é
recebido é Ec . Multiplicando por HT obtêm-se:
TTTT EHEHcHHEcS . (13.33)
O resultado, S, da verificação, depende apenas do padrão de erro e não do
código enviado. Caso este resultado seja 0 não há erros. Se o limite de Hamming
(equação 13.19) e a distância mínima de Hamming (equação 13.17-b) forem suficientes,
este resultado corresponde a uma síndrome capaz de indicar quais os bits errados. Caso
haja apenas 1 bit errado na posição j (da esquerda para a direita), a síndrome
corresponde à linha j da matriz de verificação. Caso haja mais do que 1 erro a síndrome
corresponde à combinação linear das respetivas linhas da matriz de verificação.
Como em qualquer código linear, caso o padrão de erro coincida com uma
palavra de código a síndrome anula-se e embora existam erros estes não são detetados.
13.9.1 Código de paridade
Num código de paridade todos os bits de informação influenciam o único bit de
paridade, pelo que a matriz de paridade P (k, 1) corresponde a um vetor coluna com
todos os elementos iguais a 1. Apresenta-se seguidamente a matriz geradora e a matriz
de verificação de paridade para um código de dimensão 5:
1
1
1
1
1000
0100
0010
0001
G
1
1
1
1
1
TH . (13.34)
13.9.2 Código de repetição
Num código de repetição de n bits, (n, 1), existe apenas 1 bit de informação e
duas palavras de código. Todos os bits de paridade são iguais ao bit de informação. A
matriz P (1, n–1) e a matriz geradora G (1, n) correspondem a vetores linha com todos
Codificação para controlo de erros 159
os elementos iguais a 1. Apresenta-se seguidamente a matriz geradora e a matriz de
verificação de paridade para um código de repetição de 5 bits:
1111|1G
1000
0100
0010
0001
1 11 1
TH . (13.35)
13.9.3 Código de Hamming H(7, 4)
Para um código de Hamming H(7,4), em que os 4 bits de informação são
representados pelo vetor linha:
3567 mmmmm , (13.36)
e o código representado por,
1243567 pppmmmmc , (13.37)
a matriz geradora é definida por (equação 13.23 ou figura 13.5-a):
110
101
011
111
1000
0100
0010
0001
G . (13.38)
Note-se que o bit m7 influência os 3 bits de paridade (1ª linha), o bit m6
influência os bits de paridade p4 e p2 (2ª linha), o bit m5 influência os bits de paridade
p4 e p1 (3ª linha) e o bit m3 influência os bits de paridade p2 e p1 (4ª linha). Caso o vetor
de entrada estivesse representado por outra ordem na equação 13.36 as linhas da matriz
P estariam também por outra ordem. Da mesma forma, se a ordem dos bits de paridade
fosse diferente na equação 13.37 a matriz P teria também colunas trocadas.
160 Transmissão de dados Carlos Meneses
Visto a partir das colunas, o bit de paridade p4 é função dos correspondentes bits
ao nível lógico “1” da primeira coluna desta matriz, bits m7, m6 e m5, pelo que as três
primeiras posições desta coluna são 1 e a última posição que depende do bit m3 está a 0.
O bit de paridade p2 é função dos correspondentes bits ao nível lógico “1” da primeira
coluna desta matriz, bits m7, m6 e m3, pelo que as respetivas posições da 2ª coluna são 1
e a 3ª posição que depende do bit m5 está a 0. O mesmo raciocínio se aplica para p1.
A matriz de verificação de paridade (equações 13.28 e 13.31 e 13.38) vem:
100
010
001
110
101
011
111
TH . (13.39)
Existindo um erro, por exemplo na posição 6, o padrão de erro vem:
0000010E , (13.40)
dando origem a uma síndrome:
011 TEHS , (13.41)
que corresponde à segunda linha da matriz de verificação de paridade, estando por isso
errado o segundo bit a contar da esquerda no padrão de erro. Generalizando este
raciocínio, para um código de correção de 1 bit, o bit errado corresponde ao índice da
linha coincidente com a síndrome. Estas linhas têm que ser todas diferentes para que o
bit errado seja inequívoco.Codificação para controlo de erros 161
13.10 Códigos cíclicos
Os códigos cíclicos são uma subclasse dos códigos lineares, com uma estrutura
algébrica bem definida e simples de implementar. O princípio dos códigos cíclicos é o
seguinte: suponha-se um número a enviar entre o transmissor e o recetor. No
transmissor, faça-se a divisão inteira deste número por um dividendo conhecido no
transmissor e no recetor. É enviado o número original e o resto da divisão inteira. No
recetor é novamente efetuada a divisão e os restos são comparados. Caso sejam iguais é
considerado que não há erros. Contudo, erros em que resulte um resto igual não serão
detetados.
Aplicando este princípio para transmissão binária, considerando:
xm – polinómio de grau 1k ( k bits ou coeficientes do polinómio, tomando
valores 0 ou 1, correspondentes à mensagem a enviar22);
xg – divisor ou polinómio gerador, de grau kn ;
xr – polinómio correspondente aos resto da divisão inteira com xg , de grau
1 kn (com kn coeficientes);
tem-se que,
xg
xrxq
xg
xxm kn
, (13.42)
e,
xqxg
xr
xg
xrxq
xg
xrxxm kn
. (13.43)
As palavras de código correspondem a xrxxmxT kn , equivalente a
colocar os kn bits de xr nos bits à direita de knxxm (somar ou subtrair é
idêntico). xm tem exatamente k bits e são adicionados n–k bits de redundância (resto)
pelo que este código corresponde a um código (n, k).
22 Para x=2 os polinómios correspondem à leitura dos bits em binário.
162 Transmissão de dados Carlos Meneses
No recetor o polinómio recebido é também dividido por xg , não se obtendo
resto como resulta da equação 13.43. Como consequência todas as palavras de código
são múltiplas (módulo-2) do polinómio gerador xg .
Havendo erros representados pelo padrão de erro da equação 13.20, o que é
recebido é xExT . Este polinómio é dividido pelo polinómio gerador para se
verificar o resto:
xg
xE
xg
xT
xg
xExT
. (13.44)
Como xgxT produz resto zero, os erros só não são detetados se xgxE
não produzir resto zero. Esta situação dá-se quando o padrão de erro é múltiplo do
polinómio gerador, coincidindo com uma das palavras de código. A mesma conclusão é
tirada da propriedade dos códigos lineares segundo a qual os padrões de erro
correspondentes às palavras de código não são detetados.
Se uma palavra de código for rodada para a esquerda, colocando o coeficiente de
ordem n–1 na posição do coeficiente de ordem 0, o resultado é outra palavra de código.
É esta característica que dá o nome de códigos cíclicos. É também a estrutura cíclica
que torna este código fácil de implementar. Contudo, para se garantir que um código
com dimensão n é cíclico, duas condições devem ser satisfeitas:
(1) xg tem que ser um fator de 1nx ;
(2) O coeficiente de ordem 0 de xg tem que ser 1.
Se a condição (2) não fosse satisfeita, o bit mais à direita do resto e portanto das
palavras de código seria sempre 0, independentemente dos bits a transmitir, o que para
além de tornar o código não cíclico é inútil.
13.10.1 Códigos cíclicos como códigos de correção
Para além das condições para que o código seja cíclico, para corrigir t bits o
número de bits de redundância a introduzir deverá satisfazer o limite de Hamming dado
Codificação para controlo de erros 163
pela equação 13.19. Uma escolha apropriada do polinómio gerador deverá ainda atender
à distância mínima de Hamming, satisfazendo a equação 13.17-b. A informação sobre
quais os bits errados é dada pelo resto, que opera como síndrome.
Apresentam-se três exemplos de polinómios geradores: os polinómios dos
códigos H(7,4) e H(15,11), com distância mínima de Hamming de 3; e o polinómio do
código de Goley (23, 12), com distância mínima de Hamming de 7, único código
perfeito conhecido para correção de 3 bit.
– Hamming (7,4) (m5 m7 m6 m3) x3+x+1
– Hamming (15,11) x4+x+1 (13.45)
– Código de Goley (23, 12) x11+x9+x7+ x6+x5+x+1
13.10.2CRC – Verificação cíclica de redundância
Na transmissão de pacotes em redes de computadores estes atingem uma
dimensão de centenas ou mesmo milhares de bits, sendo de dimensão variável. A
implementação de códigos corretores para estas dimensões é uma tarefa complexa,
nomeadamente na presença de erros em rajada. Contudo, para o código funcionar
apenas como detetor de erros, basta verificar se o resto é diferente de zero. O resto não
opera como síndrome, pelo que não há qualquer restrição ao número de bits de
informação em relação à dimensão total do código. Note-se que o código deixa de ser
cíclico uma vez que xg deixa de ser um fator de 1nx . Daqui se conclui que, quando
se pretende apenas detetar erros, qualquer polinómio gerador pode ser utilizado
qualquer que seja a dimensão dos bits a transmitir. Neste contexto os códigos cíclicos
tomam o nome de códigos de verificação cíclica de redundância (CRC – Cyclic
redundancy check).
Uma das grandes vantagens do código CRC é como detetor de rajadas de erros.
Segundo a equação 13.44, não se deteta erros se o padrão de erro for múltiplo do
polinómio gerador. Relembrando que uma rajada começa e acaba sempre com um erro,
existem três casos a serem considerados:
164 Transmissão de dados Carlos Meneses
(1) Rajadas de dimensão menor ou igual ao grau (n–k) do polinómio xg não
poderão corresponder aos seus múltiplos e são todas detetadas;
(2) Para rajadas com dimensão (n–k+1) existe apenas um padrão de erro
múltiplo de xg , que condiz exatamente com xg , em )1(2 kn padrões de erro
possíveis, devidas a (n–k+1)–2 bits no interior da rajada. Assumindo que estes
padrões são equiprováveis, obtêm-se para a relação de rajadas não detetadas:
)1()1( 22
1
kn
kn , (13.46)
definindo relação de rajadas não detetadas como a relação entre o número de
rajadas não detetadas e o número total de rajadas;
(3) Para rajadas de dimensão (n–k+2) existe apenas um múltiplo de xg em
)(2 kn padrões de erro possíveis, devidas a (n–k+2)–2 bits no interior da rajada.
Por cada bit que se aumenta na rajada o número de padrões de erro diferentes
duplica mas também duplica o número de múltiplos de xg , mantendo-se a
mesma relação )(2 kn .
A relação total de rajadas não detetadas numa trama, BFER, (Burst frame error
rate) entre o número de rajadas não detetadas e o número total de rajadas, corresponde
ao valor médio das três situações anteriores. Dado que o somatório de padrões de erro
da situação (1) iguala os da situação (2), a sua média iguala a da situação (3). A relação
de rajadas não detetadas BFER, assumindo que todas as dimensões de rajadas de erros e
todos os padrões de erro são equiprováveis, vem:
)(2
rajadas de totalº
detectadas não rajadas kn
n
BFER . (13.47)
Apesar da dimensão do polinómio gerador não estar à partida definido, este é
um parâmetro importante que determina a dimensão das rajadas de erros a detetar. Com
o aumento da dimensão (n–k) do polinómio gerador, a razão do código diminui.
Contudo, aumenta a dimensão mínima (n–k) da dimensão das rajadas sempre detetadas
Codificação para controlo de erros 165
e diminui, segundo a equação 13.47, a relação de rajadas não detetadas. Note-se ainda
que, mesmo para um polinómio gerador com uma ordem moderada, são detetados a
maioria dos padrões de erro.
Alguns exemplos de polinómios utilizados como CRC são:
– Paridade x+1
– CRC–5 USB x5+x2+1
– CRC8 ITU–T x8+x7+x3+x2+1 (13.48)
– CRC16 ITU–T x16+x12+x5+1
– CRC16 (USA) x16+x15+x2+1
Os códigos CRC são utilizados por exemplo na interface USB e em redes de
computadores, ou na escritae leitura de ficheiros em computadores.
13.10.3Códigos cíclicos e matriz geradora
Os códigos lineares podem ser implementados através de diversos métodos. A
divisão pelo polinómio gerador xg aqui descrita e a geração através de multiplicação
por uma matriz geradora G , descrita anteriormente, são dois destes métodos.
Relacionando-os e relembrando que a j-ésima linha da matriz geradora corresponde à
palavra de código com apenas 1 bit de informação na posição j (da esquerda para a
direita) ao nível lógico “1”:
(1) A última linha (k) da matriz G é igual aos coeficientes de xg , pois este
corresponde à palavra de código com apenas o bit de informação na coluna k ao
nível lógico “1” e com zeros à esquerda;
(2) A linha 1k de G corresponde à linha k rodada para a esquerda (estrutura
cíclica), desde que a nova coluna k não seja 1, de modo a manter a matriz
identidade da equação 13.28. Caso contrário soma-se a linha k (código linear)
forçando esta posição a zero;
(3) Repete-se o procedimento (2) paras as linhas acima seguintes, partindo
sempre da linha anterior, até se chegar à linha 1.
166 Transmissão de dados Carlos Meneses
13.11 IP Checksum
Um código robusto de deteção de erros, embora não linear, é o código IP
checksum, utilizado na deteção de erros dos cabeçalhos do protocolo TCP/IP.
Considere-se que se divide os bits de informação em sub-blocos, Mi, com
dimensão (n–k) bits. O código IP checksum utiliza sub-blocos de dimensão de 16 bits. O
checksum corresponde ao complemento para um (negação) da adição a (n–k) bits em
complemento para um de todos os sub-blocos.
MjMMXCS ...21~~ . (13.49)
A adição em complemento para um tem a mesma dimensão das parcelas,
qualquer que seja o número de parcelas, pois, ao contrário da adição vulgar, os bits de
arrasto são adicionados aos bits menos significativos. CS tem portanto (n–k) bits
correspondendo aos bits de redundância. O código é sistemático, sendo a palavra de
código constituída pelos bits de informação e pelo checksum.
A adição em complemento para um goza das propriedades comutativa e
associativa da adição vulgar. Estas propriedades podem ser utilizadas para diminuir a
complexidade na implementação, quer em hardware quer em software, nomeadamente
efetuando a adição aos pares ou em paralelo.
MjMMMM
MjMMMMMjMMMM
...4321
...4321...4321
. (13.50)
No recetor, repete-se o procedimento do transmissor, incluindo o checksum.
Correspondendo o checksum ao complemento para um da adição em complemento para
um, o resultado final é zero:
0~~~ XXCSX . (13.51)
Caso este valor não seja 0 é porque foram produzidos erros entre o transmissor e
o recetor e o pacote deve ser retransmitido.
Codificação para controlo de erros 167
13.12 Interleaving
As rajadas de erros podem ser detetadas com códigos adequados, como por
exemplo os códigos BCC e CRC. Estes códigos, contudo, não têm capacidade para
corrigir bits mas apenas para detetar a presença de erros. De modo a resolver esta
insuficiência, o interleaving é uma técnica capaz de converter erros em rajada em erros
isolados, para que estes sejam corrigidos através de um qualquer código corretor.
O interleaving (entrelaçamento) é implementado criando uma matriz, em que os
bits são colocados por linha, mas transmitidos por coluna. No recetor, os bits são
recolocados na sua ordem original. Os bits que no canal faziam parte de uma rajada
passam a estar distanciados.
Na figura 13.8 apresenta-se um exemplo em que os bits são substituídos por
letras, para mais fácil demonstração do procedimento.
E x e m
p l o D
e T r a
n s m i
s s a o
I n t e
r l e a
v i n g
⇨ Código Original
⇨Código Com Interleaving
⇨ Código com erro em rajada
⇨ Código com erros isolados após reconstrução
Figura 13.8
Exemplo de código com interleaving.
A dimensão da rajada de erros é de 6 ( ), menor que o número de linhas 8. Nesta condição
os erros em rajada transformam-se em erros isolados espaçados do número de colunas, 4.
Se a rajada de erros tiver uma dimensão inferior ao número de linhas, erros em
rajada transformam-se em erros isolados espaçados da dimensão do número de colunas.
Note-se que o interleaving não é um código em si, tendo-se que recorrer a um
código corretor de erros aleatórios. Se, por exemplo, forem colocados os bits de um
código de bloco de correção em cada linha, os erros são corrigidos se não for
168 Transmissão de dados Carlos Meneses
ultrapassada a sua capacidade de correção. Se o código corretor tiver a capacidade de
corrigir apenas 1 bit (por exemplo o código Hamming), a dimensão máxima da rajada é
igual ao número de linhas. Utilizando um código de correção de t bits, a dimensão
máxima da rajada detetada e corrigida, maxb , é de:
litb max , (13.52)
em que li é o número de linhas, ou número de blocos do código de correção utilizado.
No projeto de um interleaving toma-se então em consideração o número de bits
n código corretor que se quer utilizar (cl=n – número de colunas) e, em função do
número de bits máximo corrigidos e da dimensão máxima da rajada que se quer corrigir
(li=bmax/t – número de linhas). A razão de código final é a razão do código de correção
utilizado em cada linha.
Se não for já inerente um atraso na transmissão, como por exemplo na
transmissão de um pacote em redes de computadores, o interleaving impõe um atraso
correspondente à dimensão do número de bits da matriz, já que no recetor é preciso ter
acesso a todos os bits para os poder recolocar.
Discussão sobre transmissão de dados 169
14 Discussão sobre transmissão de dados
Esta segunda parte do texto corresponde a uma introdução sobre a interface
elétrica da camada física do modelo OSI e os algoritmos de controlo de erros de bit das
camadas superiores dependentes da rede e da camada de transporte. Estes blocos do
sistema de comunicação digital são apresentados como solução para lidar com as
limitações do canal de comunicação, otimizando recursos importantes como a energia e
a largura de banda disponível.
Foram descritos os principais códigos de linha, binários e M-ária, para
transmissão em canais passa-baixo. Constituem atributos dos códigos de linha a energia
média por bit (esforço), o débito binário e eficiência espetral (velocidade), a
probabilidade de erro de bit (qualidade), a presença de componente DC, a capacidade
de deteção de erros, a facilidade de sincronismo de símbolo e a complexidade de
implementação dos transmissores e recetores. Existem claramente compromissos em
relação a estes atributos, já que, por exemplo, para diminuir a largura de banda ocupada
diminui-se o número de transições por segundo, o que dificulta o sincronismo de
símbolo, que por sua vez aumenta a complexidade do recetor. Num outro exemplo, para
melhorar a probabilidade de erro de bit pode-se aumentar a energia de bit e vice-versa.
Para todos os códigos de linha apresentados foram deduzidas as expressões da
energia média por bit, da probabilidade de erro de bit e da largura de banda. Para a
largura de banda foi utilizado o critério de primeiro zero espetral, já razoável para
atenuar a interferência intersimbólica, e segundo o critério de Nyquist, que a evita
completamente.
Foram apresentados os recetores ótimos, realizados com filtro adaptado e
deteção segundo o critério de máxima verosimilhança. Tendo sido assumido que os
símbolos são equiprováveis, a deteção de máxima verosimilhança é de facto equivalente
à deteção ótima com critério de máximo a posteriori.
Os códigos de linha M-ária correspondem também a compromissos, já que a sua
implementação tem maior complexidade e para a mesma relação entre a energia média
170 Transmissão de dados Carlos Meneses
por bit e potência de ruído por Hertz, apresentam a probabilidade deerro de bit maior,
mas conseguem uma melhor eficiência espetral, ou seja, transmitem um maior débito
binário numa menor largura de banda.
De modo a diminuir a probabilidade de erro é possível regenerar o sinal em
pontos intermédios do canal de comunicação, por exemplo nos equipamentos da rede
(e.g. hubs, switchs, routers). Se a atenuação ainda não for demasiada e o sinal ainda não
tiver sido muito afetado pelo ruído, é possível regenerar o sinal praticamente sem erros.
Note-se que não é possível regenerar um sinal analógico mas apenas amplificá-lo, o que
implica amplificar também o ruído.
Devido ao ruído no canal de comunicação é impossível evitar erros de bit entre o
transmissor e o recetor. Inserindo bits de redundância é contudo possível detetar ou, se o
número de bits de redundância introduzidos for suficientes, corrigir estes erros. Para os
códigos de deteção de erros é necessário um mecanismo que informe o transmissor
destes erros, para que a informação seja retransmitida. São apresentados alguns dos
principais códigos de deteção e correção de erros e suas limitações. São deduzidas as
probabilidades de erro após retransmissão no caso da utilização de códigos detetores, ou
correção no caso da utilização de códigos corretores.
É ainda apresentado o interleaving, procedimento para lidar com erros em rajada
mas utilizando códigos para erros aleatórios. Como código para lidar diretamente com
os erros em rajada é apresentado o CRC e calculada a respetiva relação de rajadas não
detetadas, que funciona como medida de qualidade da transmissão na presença deste
tipo de erros.
Interleaving 171
Apêndices
Principais Equações
Perguntas Teóricas
Exercícios Resolvidos
Exercícios Propostos
Exercícios em MATLAB
172 Apêndices Carlos Meneses
Apêndice 1 – Estimação estatística da potência de um sinal
Assumindo um sinal tx , verifica-se que a média corresponde ao valor médio ou
componente DC e o valor esperado de segunda ordem corresponde à potência do sinal:
dxxxfdttx
T
T
T
Tx
2/
2/
1lim (A.1.1)
dxxfxdttx
T
P
T
T
Tx
2
2/
2/
21lim (A.1.2)
Tem-se ainda que,
xACxDCxxx PPP
22 , (A.1.3)
em que xDCP é a potência da componente contínua e xACP a potência da
componente AC ou variável. Se a componente DC for 0 V, o que acontece na maioria
dos sinais de interesse:
dxxfxP xx
22 0 (A.1.4)
Estes conceitos podem ser estendidos a sinais discretos com distribuição contínua:
dxxxfnx
N
N
NnN
x
2/
2/.
1lim (A.1.5)
dxxfxnx
N
P
N
NnN
x
2
2/
2/
21lim (A.1.6)
O que estas equações traduzem é que não é preciso conhecer um sinal em todo o
instante, mas apenas a sua distribuição de amplitudes, para estimar a sua componente
DC e potência. Esta conclusão é de extrema utilidade quando se analisa sinais aleatórios
como o ruído (e.g. com distribuição de amplitudes uniforme ou normal).
Apêndice 1 – Estimação estatística da potência de um sinal 173
Exemplo: Calcule o valor da componente DC e a potência de um sinal dente de serra
tm , com período 0T e amplitude maxm .
No domínio do tempo, uma vez que o sinal é periódico, o valor médio é dado por,
0
44
221 20
2
0
2
0
max
2
2
2
2
0
max
2
2
2
0
max
2
2 0
max
0
0
0
0
0
0
0
TT
T
mt
T
mtdt
T
mdtt
T
m
T
m
T
T
T
T
T
T
DC
3883
4
3
4421 2max
3
0
3
0
3
0
2
max
2
2
3
3
0
2
max
2
2
2
3
0
2
max
22
2 0
max
0
0
0
0
0
0
0
mTT
T
mt
T
mdtt
T
mdtt
T
m
T
P
T
T
T
T
T
T
m
Uma vez que um sinal dente de serra tem distribuição uniforme entre maxm e maxm ,
0
442
1
max
2
max
2
max
max
2
max
max
max
max
max
m
mm
m
mdxm
m
dmmmfm
m
m
m
m
DC
3662
1 2max
max
3
max
3
max
max
3
2
max
2
max
max
max
max
m
m
mm
m
mdxm
m
dmmfmP
m
m
m
m
x
Segundo as equações A.1.1 e A.1.2, o cálculo no domínio do tempo ou estatístico dão
valores iguais.
174 Apêndices Carlos Meneses
Apêndice 2 – Decibéis
O Decibel (dB) é uma unidade que expressa a relação entre duas grandezas
físicas, geralmente entre duas potências (S1 e S2), através de uma escala logarítmica,
sendo definido como:
2
1
10log10 S
S
. (A.2.1)
O Decibel corresponde a um décimo de Bel, nome atribuído em homenagem ao
fundador da companhia de telefones Bell (1877), nos Estados Unidos da América.
Seguidamente apresentam-se utilizações típicas do Decibel enquanto medida:
Relação sinal ruído – Medida de qualidade entre dois sinais analógicos que
deveriam ser iguais, mas em que um deles (normalmente os sinal de saída de um
sistema) está contaminado com ruído. Mede-se assim a qualidade através da SNR
(Signal to noise ratio), relação entre a potência do sinal (P) e a potência do ruído (N):
N
PSNRdB 10log10 . (A.2.2)
Atenuação – Relação entre a potência de entrada e a potência de saída de um
sistema que atenua um sinal, por exemplo um canal de comunicação, em que a potência
do sinal no recetor (SR) é menor que a potência no transmissor (ST):
R
T
dB S
SAt 10log10 . (A.2.3)
Amplificação – Relação entre a potência de saída (So) e entrada (Si) de um
sistema (e.g. amplificador) que amplifica um sinal:
i
o
i
o
dB v
v
S
SG 1010 log20log10 , (A.2.4)
considerando vo e vi respetivamente como as tensões de saída e entrada do sistema
(assumindo sobre a mesma carga).
Apêndice 2 – Decibéis 175
Decibel como valor absoluto
Um valor de potência é expresso em relação a um valor de referência, como por
exemplo 1 W, dando origem à unidade dBW:
1
log10 10
S
SdB . (A.2.5)
Note-se que, por exemplo, que uma potência de 1 W corresponde a 0 dBW, 2 W
a 3 dBW, 10 W a 10 dBW e 1 mW a –30 dBW. Sinais com potência menor que 1 W
tornam o valor em dBW negativo, o que é evitado tomando como referência 1 mW em
vez de 1 W, definido como dBm (ou mesmo 1 W, definindo-se como dB):
310 10
log10
S
SdBm . (A.2.6)
Para converter potencias em dBm para dBW tem-se que:
30 dBmdB SS . (A.2.7)
As vantagens da utilização do Decibel são:
- O resultado dos ganhos e atenuações de sistemas consecutivos correspondem à
sua soma (ou subtração) em decibéis, e não à multiplicação (ou divisão);
- Transforma números muito pequenos ou muito grandes em números mais
fáceis de operar;
- Na acústica, está mais próximo da sensibilidade do ouvido humano, que tem
uma resposta logarítmica da sensação em relação à potência.
176 Apêndices Carlos Meneses
Apêndice 3 – Algoritmo de quantificação ótima
Entradas:
Número L de valores de quantificação;
Histograma normalizado dos valores de entrada mi: i=1:k; k>>L;
Histograma normalizado dos valores de entrada fM(mi): i=1:k;
Índice de distorção ;
Inicialização:
1) Calculam-se arbitrariamente L níveis de quantificação
vj; j=1:L; (e.g.: quantificação uniforme);
2) Assume-se a potência do ruído de quantificação da iteração –1, )1(2q ;
3) Ordem de iteração n=0;
Iteração:
1) Calculam-se os espaços Sj, j=1:L com mi Sj se,
(mi – vj)2 (mi – vl) 2 , l j, l=1:L; j=1:L;
2) Calcula-se a potência do ruído de quantificação da iteração n, )(2 nq ,
)()(
1
22
iM
m
j i
jiq mfvmn
, mi Sj;
3) Se
)(
)()1(
2
22
n
nn
q
qq
calculam-se as saídas e termina-se o algoritmo;
4) Calculam-se novos valores de quantificação como a média normalizada
dos espaços Sj:
i
ii
iMi
j mf
mfm
v
)(
)(
j=1:L, mi Sj;
5) Incrementa-se n e retorna-se ao ponto 1);
Saídas:
Valores de quantificação: vj , j=1:L
Valores de decisão: (L–1) valores equidistantes dos valores de quantificação;
Apêndice 4 – Sinusoide com preditor unitário 177
Apêndice 4 – Sinusoide com preditor unitário
Prova que,
pG
VV
2
1 , assumindo um preditor unitário, é exata para entrada sinusoidal:
i. Pela equação 5.15, 112
1
r
G p
ii. A autocorrelação de uma sinusoide normalizada (A.5.4) para uma amostra de atraso
vem
sf
f
r 02cos1 , pelo que:
s
p
f
f
G
02cos12
1
.
iii. Assumindo a aproximação da equação 5.10,
sssp f
f
V
f
f
V
f
f
V
G
VV 002202
2
1 sin2sin42cos12 , (A.4.1)
que corresponde de facto, para uma sinusoide, à máxima variação no tempo Ts, que
se dá na zona de maior declive, ou seja, à volta de 0, como se pode verificar pela
figura seguinte:
iv. Para DM e com a certeza que o sinal de entrada é uma sinusoide,
sf
fV 0sin2 (A.4.2)
é uma melhor (menor) estimativa de do que a produzida por
sf
fV 02 . Estas
aproximam-se se sff 0 , pois nestas condições
ss f
fV
f
fV 00 2sin2
.
178 Apêndices Carlos Meneses
Apêndice 5 – Função de autocorrelação
A função de autocorrelação temporal (e não estatística) para sinais discretos é definida
por
N
NnN
knmnm
N
kR
12
1lim , correspondendo ao produto interno do sinal
com a sua versão deslocada de k amostras.
Para calcular esta função para uma sinusoide discreta, opta-se por a calcular em tempo
contínuo e amostrar seguidamente.
A função de autocorrelação para sinais em tempo contínuo corresponde ao produto
interno do sinal e da sua versão deslocada do tempo :
T
T
T
dttmtm
T
R
2
1lim . (A.5.1)
Para uma sinusoide tfmtm 0max 2cos , com período fundamental To:
2/
2/
0max0max
0
0
0
)(2cos2cos1
T
T
dttfmtfm
T
R
2/
2/
0
0
2
max
2/
2/
000
0
2
max 0
0
0
0
2
2cos224cos2cos
2
T
T
T
T
t
T
fmdtftff
T
mR
0
2
max 2cos
2
fmR (A.5.2)
Amostrando esta função com período ss kTT vem,
k
f
fmkR
s
0
2
max 2cos
2
(A.5.3)
A autocorrelação de ordem 0 corresponde à potência do sinal. A autocorrelação
normalizada vem:
02cos0
f
R
Rr
k
f
f
R
kRkr
s
02cos
0
. (A.5.4)
A autocorrelação de uma sinusoide não depende da fase inicial e a autocorrelação
normalizada também não depende da amplitude. A autocorrelação de uma sinusoide
discreta depende da relação f0/fs e não dos seus valores absolutos.
Apêndice 6 – Funções densidade espetral de potência em códigos de linha 179
Apêndice 6 – Funções densidade espetral de potência em códigos de linha
PNRZ
bb R
f
R
AfG 2
2
sinc (A.6.1)
PRZ
bb R
f
R
AfG
2
sinc
4
2
2
(A.6.2)
UNRZ
fA
R
f
R
AfG
bb
4
sinc
4
2
2
2
(A.6.3)
BNRZ
bbb R
f
R
f
R
AfG 22
2
sinsinc (A.6.4)
Manchester
bbb R
f
R
f
R
AfG
2
sin
2
sinc 22
2 (A.6.5)
NRZI
bb R
f
R
AfG 2
2
sinc (A.6.6)
Funções densidade espetral de potência dos diversos códigos de linha.
Assume-se para todos os códigos uma potência de 1 W (e não a amplitude),
geração independente e equiprovável dos níveis lógicos.
0
0.25
0.5
0.75
1
0 0.5 1 1.5 2 2.5 3 3.5
PNRZ
PRZ
UNRZ
Manchester
BNRZ
PNRZ
PRZ
Manchester
BNRZ
D
en
si
da
de
E
sp
ec
tra
l d
e
P
ot
ên
ci
a
UNRZ
f /R b
180 Apêndices Carlos Meneses
Apêndice 7 – Função complementar de erro
A função xerfc está tabelada e é definida por:
x
dxerfc e
22 (A.7.1)
e sabendo que a área a tracejado é dada por:
dy
yy
y
dyeÁrea y
2
2
2
22
1
(A.7.2)
Fazendo a mudança de variável:
22 y
yy
ddy y
22
22 22 ydyyy
dyy
dedeÁrea
yy
dd y
y 2
22
2
22
2
2
1
2
2
xerfcderfcÁrea
y 2
1
22
1
2
2
, (A.7.3)
2
2
2 y
dx
. (A.7.4)
x
dxerfc e
21
2
1
Apêndice 7 – Função complementar de erro 181
x ½ erfc(x) x ½ erfc(x) x ½ erfc(x)
0 5,000E–01 2 2,339E–03 4 7,709E–09
0,05 4,718E–01 2,05 1,871E–03 4,05 5,094E–09
0,1 4,438E–01 2,1 1,490E–03 4,1 3,350E–09
0,15 4,160E–01 2,15 1,181E–03 4,15 2,192E–09
0,2 3,886E–01 2,2 9,314E–04 4,2 1,428E–09
0,25 3,618E–01 2,25 7,314E–04 4,25 9,253E–10
0,3 3,357E–01 2,3 5,716E–04 4,3 5,967E–10
0,35 3,103E–01 2,35 4,446E–04 4,35 3,830E–10
0,4 2,858E–01 2,4 3,443E–04 4,4 2,446E–10
0,45 2,623E–01 2,45 2,653E–04 4,45 1,554E–10
0,5 2,398E–01 2,5 2,035E–04 4,5 9,831E–11
0,55 2,183E–01 2,55 1,553E–04 4,55 6,187E–11
0,6 1,981E–01 2,6 1,180E–04 4,6 3,875E–11
0,65 1,790E–01 2,65 8,924E–05 4,65 2,415E–11
0,7 1,611E–01 2,7 6,717E–05 4,7 1,498E–11
0,75 1,444E–01 2,75 5,031E–05 4,75 9,243E–12
0,8 1,289E–01 2,8 3,751E–05 4,8 5,676E–12
0,85 1,147E–01 2,85 2,783E–05 4,85 3,469E–12
0,9 1,015E–01 2,9 2,055E–05 4,9 2,109E–12
0,95 8,955E–02 2,95 1,510E–05 4,95 1,277E–12
1 7,865E–02 3 1,105E–05 5 7,687E–13
1,05 6,878E–02 3,05 8,040E–06 5,05 4,606E–13
1,1 5,990E–02 3,1 5,824E–06 5,1 2,747E–13
1,15 5,194E–02 3,15 4,199E–06 5,15 1,630E–13
1,2 4,484E–02 3,2 3,013E–06 5,2 9,626E–14
1,25 3,855E–02 3,25 2,151E–06 5,25 5,657E–14
1,3 3,300E–02 3,3 1,529E–06 5,3 3,308E–14
1,35 2,812E–02 3,35 1,081E–06 5,35 1,926E–14
1,4 2,386E–02 3,4 7,610E–07 5,4 1,116E–14
1,45 2,015E–02 3,45 5,330E–07 5,45 6,439E–15
1,5 1,695E–02 3,5 3,715E–07 5,5 3,664E–15
1,55 1,419E–02 3,55 2,577E–07 5,55 2,109E–15
1,6 1,183E–02 3,6 1,779E–07 5,6 1,166E–15
1,65 9,812E–03 3,65 1,222E–07 5,65 6,661E–16
1,7 8,105E–03 3,7 8,358E–08 5,7 3,886E–16
1,75 6,664E–03 3,75 5,686E–08 5,75 2,220E–16
1,8 5,455E–03 3,8 3,850E–08 5,8 1,110E–16
1,85 4,444E–03 3,85 2,594E–08 5,85 5,551E–17
1,9 3,605E–03 3,9 1,740E–08 5,9 5,551E–17
1,95 2,910E–03 3,95 1,161E–08 5,95 0,000E+00
Nota:
22
1
2
1 22 xerfcdxQ
x
e
(A.7.5)
182 Apêndices Carlos Meneses
Apêndice 8 – BER com critério MAP
Numa transmissão binária num canal AWGN em que os símbolos não têm a mesma
probabilidade, a distribuição do ruído no instante de amostragem com critério de
máximo a posterior (MAP) é ilustrado pela figura:
Dda figura:
optyd 11 optyd 00 , (A.8.1)
2
2
00
2
2
11
100011 2222 nn
derfcpderfcpppppBER
. (A.8.2)
Note-se que estas equações são válidas para qualquer valor de , p0 e p1, e não apenas
para a situação ótima.
O valor ótimo da tensão de comparação, ot , é o ponto y de intersecção das densidades
espetrais de potência do ruído, distribuições normal com variância idêntica 2n , pesadas
pelas respetivas probabilidades a priori:
otyyfpyfp "0|""1"| 01 . (A.8.3)
Apêndice 8 – BER com critério MAP 183
Desta expressão, após alguma manipulação algébrica, obtêm-se:
1
0
01
2
01 ln
2 p
p
yy
yy n
ot
. (A.8.4)
Note-se que estas as equações são válidas para critério MAP e MV. Com 10 pp ,
2
01 yy
ot
(A.8.5)
184 Apêndices Carlos Meneses
Apêndice 9 – Largura de banda equivalente do ruído
Função densidade espetral de potência do sinal de entrada: fGx [W/Hz]Função densidade espetral de potência do sinal de saída: fGy [W/Hz]
Potência do sinal de saída: yP [W]
Resposta em frequência do filtro: fH [ ]
Densidade espetral de potência do ruído branco: fGw [W/Hz]
Potência do ruído na saída do filtro: 2n [W]
Largura de banda equivalente do ruído: eqB [Hz]
Área equivalente do ruído: eqA [Hz]
Das relações de densidade espetral de potência num SLIT tem-se:
2fHfGfG xy , (A.9.1)
dffHfGdffGP xyy
2 . (A.9.2)
O ruído branco é caracterizado por ter uma função densidade espetral de
potência constante para todas as frequências:
2
0NfGw . (A.9.3)
Tendo o sinal de entrada uma distribuição de amplitudes normal, a distribuição
das amplitudes do sinal de saída é também normal. Tendo o filtro à entrada ruído
branco, obtêm-se para a potência do ruído filtrado:
dffH
N
dffHfGdffG wyn
2022
2
. (A.9.4)
Apêndice 9 – Largura de banda equivalente do ruído 185
Se o filtro tiver característica passa-baixo ideal de banda B e ganho g,
2
0
202
2
BgNdfgN
B
B
n
. (A.9.5)
Define-se largura de banda equivalente do ruído, eqB , de um filtro de ganho g e
resposta em frequência arbitrária fH , como sendo a largura de banda de um filtro
ideal com o mesmo ganho g e cuja saída produza a mesma potência do ruído. Igualando
as equações A9.4 e A.9.5 tem-se que:
dffH
g
Beq
2
22
1 . (A.9.6)
Define-se a área equivalente do ruído como:
dtthdffHgBA eqeq
222 )(2 , (A.9.7)
correspondente ao dobro da largura de banda (bilateral) de um filtro ideal com ganho
unitário cuja saída gere a mesma potência do ruído que um filtro com ganho g. Da
equação A.9.4 vem, para a potência do ruído à saída do filtro:
eqeqn A
NgBNdtthNdffHN
222
02
0
20202
. (A.9.8)
Note-se que eqA , como eqB , correspondem a uma largura de banda e têm como
unidades Hertz. Note-se ainda que o valor de eqA equivale numericamente (A.9.7) à
energia da resposta impulsiva do SLIT (embora tenha como unidades Hertz e não
Joules).
186 Apêndices Carlos Meneses
Apêndice 10 – BER em sistemas discretos
1) Num canal AWGN simulado discretamente, assumindo uma sequência de ruído
branco gaussiano nXunw com potência 2w e em que nu tem média nula e
variância unitária, então:
2
2/
2/
22
2/
2/
22 1lim1lim XnuX
N
nw
N
N
NnN
N
NnN
w
2wX . (A.10.1)
2) 2w é a potência total do ruído entre 2sf e 2sf . Para um sistema discreto
assume-se uma frequência de amostragem normalizada 1sf Hz.
22
002 NfN sw (A.10.2)
3) O recetor ótimo discreto, com os símbolos definidos por T pontos, é representado
pelo diagrama de blocos seguinte:
4) A potência do ruído 2n (figura 11.2) após a filtragem é dada por:
22
22 wc
o
c
o
eqn E
NENA . (A.10.3)
Apêndice 10 – BER em sistemas discretos 187
5) BER para qualquer código de linha polar:
o
b
N
EerfcBER
2
1 (11.36)
PNRZ e Manchester: 2
1
2
1 TAAEE
M
n
b
6) BER para qualquer código de linha unipolar:
o
b
N
EerfcBER
22
1 (11.41)
UNRZ:
22
12
2
1
2
1
TAAEE
M
n
b
7) BER para código de linha PAM M-ária com código Gray
0
2 1
3)1(
N
E
M
Kerfc
KM
MBER b (12.17)
K
TaMEb
22
23
1
(12.4-5-6)
Nota: PNRZ é um caso particular de M-ária, com A=(a/2), M=2 e K=1.
8) BER para 2B1Q (caso particular de M-ária com K=2 e M=4)
05
2
8
3
N
EerfcBER b (12.18)
TaEb
2
8
5
(12.4-5-6)
188 Apêndices Carlos Meneses
Apêndice 11 – Distribuição de probabilidade binomial
A distribuição binomial de probabilidades é a distribuição do número de
sucessos em n provas independentes, provas realizadas sempre nas mesmas condições,
em que em cada prova só há 2 resultados possíveis: sucesso ou insucesso. Dada a
probabilidade, p, de sucesso numa prova, a função binomial é definida por:
inlni ppCpnif 1, , i=0:n (A.11.1)
n
iC corresponde ao número de combinações em que podem ocorrerem i sucessos
em n provas e é definida por:
!!
!
iin
nC ni
(A.11.2)
ip corresponde à probabilidade de i provas com sucesso e inp 1
corresponde à probabilidade das restantes n–i provas não terem sucesso.
A média e a variância da distribuição binomial são dadas respetivamente por:
npi (A.11.3) pnpl 12 (A.11.4)
A probabilidade de não ocorrer qualquer sucesso em n provas vem:
nppnf 1,0 , (A.11.5)
e a probabilidade de ocorrer apenas um sucesso vem:
1111 )1()1(,1 nnn pnpppCpnf . (A.11.6)
A probabilidade de acontecerem até r provas com sucesso iguala a soma das
respetivas probabilidades e é dada pela função de distribuição:
r
l
inln
i
r
l
ppCpnifpnrifrF
00
1,, . (A.11.7)
Apêndice 11 – Distribuição de probabilidade binomial 189
Quando a probabilidade de sucesso da prova, p, é muito pequena, o termo
11 inp , pelo que a função de probabilidade, desde que 0i , simplifica-se para:
ini pCpnif , , i=1:n. (A.11.8)
Quando, para além da probabilidade do sucesso ser pequena, a média ,1np a
probabilidade de i+1 provas com sucesso é muito menor que a probabilidade de i provas
com sucesso:
in
i
in
i pCpC
1
1 , (A.11.9)
pelo que a probabilidade de sucesso de mais do que r provas é aproximadamente igual à
probabilidade de sucesso em r provas (aproximação ao primeiro termo), pelo que:
rnr pCpnrifpnrif ,, . (A.11.10)
Exemplo da função de probabilidade binomial
Média np=0,01, probabilidade de sucesso p=0,001 e número de provas n=10.
1,E-30
1,E-28
1,E-26
1,E-24
1,E-22
1,E-20
1,E-18
1,E-16
1,E-14
1,E-12
1,E-10
1,E-08
1,E-06
1,E-04
1,E-02
1,E+00
0 1 2 3 4 5 6 7 8 9 10
Modulação de pulsos 191
Principais Equações
Modulação de pulsos
tm Sinal de entrada (analógico) [V] ou [A]
nm Sinal de entrada (amostrado) [V] ou [A]
W Máxima frequência do sinal de entrada [Hz]
fs Frequência de amostragem [amostras/s] [Hz]
R Número de bits de codificação por amostra [bit/amostra] [ ]
Rb Débito binário [bit/s] [Hz]
P Potência do sinal de entrada [W]
mmax Amplitude do sinal de entrada [V] ou [A]
Pn Potência normalizada do sinal de entrada
R[k] Autocorrelação do sinal de entrada [W]
r[k] Autocorrelação normalizada do sinal de entrada [ ]
V Máximo valor de quantificação em PCM [V] ou [A]
L Número de intervalos de quantificação
q Intervalo de quantificação em quantificação uniforme [V] ou [A]
2
q Potência do ruído de quantificação [W]
SNRdB SNR de quantificação em decibéis [dB]
V1 Máximo valor de quantificação do erro de predição em DPCM [V] ou [A]
Pe Potência do erro de predição [W]
Gp Ganho de predição [ ]
a Coeficiente de predição [ ]
f’ Frequência que produz a derivada máxima [Hz]
Teorema de Nyquist-Shannon
Wf s 2 (3.1)
Gerais
sb fRR (3.7) 2
maxm
PPn (3.13)
P
kR
R
kRkr
0
(A.5.4)
Sinal com distribuição uniforme (com média nula)
3
2
maxmP (A.1.7)
3
1nP (A.1.8)
192 Principais Equações Carlos Meneses
Sinal sinusoidal
tfmtm 0max 2cos 2
2
maxmP
2
1nP
k
f
fmkR
s
0
2
max 2cos
2
(A.5.3)
k
f
fkr
s
02cos (A.5.4)
PCM uniforme:
Rq
V
L
V
2
22
(3.6)
12
2
2 q
q
(3.8)
210
3log1002,6
V
PRSNRdB (3.10) maxmV (3.11)
PCM não uniforme, Lei-A/Lei-, zona logarítmica:
1002,6 RSNRdB (4.12)
DPCM
2
1
10
3log1002,6
V
PRSNRdB (5.4)
2
1
2
10210 log10
3log1002,6
V
V
V
PRSNRdB (5.6)
1
102
1
2
10 log20log10 V
V
V
V (5.7)
2
1
2
V
V
P
PG
e
p (aproximação na situação ótima de 1V ) (5.9)
Modulação de pulsos 193
nmSNRGp
V
PRGpSNR PCMdBdBdBdB
210
3log1002,6 . (5.11)
121
1log10log10 21010 araP
PG
e
dBp (5.14)
Preditor unitário: 1a :
112
1log10 10 r
G dBp (5.15)
Para entrada sinusoidal:
sf
fVV 01 sin2 (A.4.1)
Preditor adaptado: 1ra (5.18)
210 11
1log10
r
G dBp (5.19)
DM
s
s f
mT
t
tm max'
max
(5.24)
3
2
2 q (5.25)
11log10log20 10'10
n
s
dB Pf
fSNR . (5.29)
Para entrada sinusoidal:
sf
fV 0sin2 (A.4.2)
ADM
nb
nbnn 111 10 (5.30)
194 Principais Equações Carlos Meneses
Transmissão binária
Tb Tempo de símbolo [s]
Rb Débito binário [bit/s] [Hz]
TB Largura de banda de sinal transmitido [Hz]
Eficiência espetral [ ] [bit/s/Hz]
A Amplitude do código de linha [V] ou [A]
ts l Símbolo lógico l, l=0 ou 1 [V] ou [A]
lE Energia (normalizada) do símbolo l, l=0 ou 1 [J]
bE Energia (normalizada) média por bit [J]
TS Potência (normalizada) transmitida [W]
RS Potência (normalizada) recebida [W]
tA Atenuação
2
c Potência do ruído na banda do sinal [W]
No/2 Potência por Hertz do ruído no canal de comunicação [W/Hz] [J]
cSNR Relação sinal-ruído no canal de comunicação na banda do sinal
CB Largura de banda do canal de comunicação [Hz]
pT Atraso de propagação [s]
tT Atraso de transmissão [s]
D Dimensão do canal [m]
iv Velocidade de propagação [m/s]
N Número de bits da trama
ot Valor ótima de comparação na deteção binária [V] ou [A]
ly Valor após filtragem sem ruído para o símbolo l, l=0 ou 1 [V] ou [A]
d Metade da distância entre símbolos após filtragem [V] ou [A]
BER Probabilidade de erro de bit
2
n Potência do ruído no recetor após filtragem [W]
tc Vetor de base no recetor [V] ou [A]
k Fator de escala no vetor de base
eqA Área equivalente do ruído do filtro ótimo [Hz]
Fator de rolloff
b
b T
R 1 (8.1)
T
b
B
R
(8.6)
dttsE
bT
ll
0
2 (8.2)
2
10 EEEb
(8.4)
bb
b
b
T RET
ES (8.5)
Transmissão binária 195
Canal de comunicação:
Tc BN0
2 (9.1)
00
2 N
E
B
R
N
ESSNR b
T
bb
c
R
c (9.2)
CT BB (9.3)
R
T
S
SAt (9.10)
R
T
dB S
SAt 10log10 (9.11)
i
p v
DT (9.14)
b
t R
NT (9.15)
Descodificador de máxima verosimilhança:
2
10 yy
ot
(11.5)
2
01 yyd
(11.10)
2
2
100011 22
1
2
1
n
derfcxerfcppppBER
. (11.9) (A.7.3)
Filtro adaptado:
tkstc 1 (11.15)
unipolary
polarkEy
kEy
00
10
11
(11.19)
12
0
2
1
2
0
2 EkdttskdttcA
bb TT
eq (11.20) eqn A
N
2
02 (11.21)
196 Principais Equações Carlos Meneses
Filtro adaptado normado:
1eqA (11.22)
1
1
E
k (11.23)
unipolary
polarEy
Ey
l
l
0
1
11
(11.24)
2
02 N
n (11.25)
0
2
2
1
N
derfcBER (11.26)
polar:
00 2
1
2
1
NR
Serfc
N
EerfcBER
b
Rb (11.31)
Códigos de linha binários
Código
Binário
Energia média
por bit
bE
DC Fácil Sincronismo
1º zero
espetral
TB
Largura de
Banda
TB
BER
PNRZ bTA
2
Não(1) Não bR 12
bR
02
1
N
Eerfc b
PRZ bT
A
2
2
Não(1) Sim bR2 1bR
02
1
N
Eerfc b
UNRZ
bT
A
2
2
(1) Sim Não bR 12
bR
022
1
N
Eerfc b
Manchester
(Split-
Phase)
bTA
2 Não Sim bR2 1bR
02
1
N
Eerfc b
BNRZ
bT
A
2
2
(1) Não
Não(2)
Sim (BNZS) b
R 1
2
bR
024
3
N
Eerfc b
NRZI bTA
2 Não
Não
Sim (stuffing) bR 12
bR
0N
Eerfc b
Manchester
Diferencial bTA
2 Não Sim bR2 1bR
0N
Eerfc b
1 – Desde que com 50% de ocorrência de bits a cada nível lógico.
2 – Sim, mas apenas nas sequências de bits ao nível lógico “1”.
Transmissão M-ária 197
Transmissão M-ária
K Número de bits por símbolo
M Número de símbolos diferentes
sR Débito de símbolos [símbolo/s] [baud]
sT Tempo de símbolo [s]
sE Energia média por símbolo [J]
Rb Débito binário [bit/s] [Hz]
Tb Tempo de símbolo [s]
bE Energia (normalizada) média por bit [J]
a Distância entre símbolos adjacentes [V] ou [A]
minE Energia do símbolo com menor energia [J]
TB Largura de banda de sinal transmitido [Hz]
Eficiência espetral [ ] [bit/s/Hz]
SER Probabilidade de erro de símbolo
BER Probabilidade de erro de bit
C Capacidade de canal [bit/s] [Hz]
KM 2 (12.1)
bs KTT (12.2)
K
RR bs (12.3)
min
222
3
)1(
3
)1(
4
EMMaTE ss
(12.4)
sT
aE
2
min 2
(12.5)
K
E
E sb (12.6)
1
2
1
2 K
RRB bsT (12.7)
198 Principais Equações Carlos Meneses
1
2K
B
R
T
b . (12.8)
0
2
0
min
1
3)1()1(
N
E
M
Kercf
M
M
N
Eercf
M
MSER b (12.12)
Código aleatório:
2
1 SER
K
KBER (12.14)
Código Gray:
K
SERBER (12.16)
Código
Largura de
Banda
TB
Energia média
por bit
bE
BER
(Código Gray)
2B1Q 1
4
bR bT
a
4
5 2
05
2
8
3
N
Eerfc b
M-PAM 1
2K
Rb bT
aM
12
)1( 22
0
2 1
3)1(
N
E
M
Kerfc
KM
M b
Capacidade de canal (Lei de Hartley-Shannon)
C
R
C
c
R
C BN
SBSBC
0
222 1log1log
(12.23)
Codificação para controlo de erros 199
Codificação para controlo de erros
BER Probabilidade de erro de bit sem correção
cR Razão do código
n Dimensão em número de bits das palavras de código
k Dimensão em número de bits antes da aplicação do código
bR Débito binário no canal (com aplicação do código) [bit/s] [Hz]
'
bR Débito binário da informação (sem aplicação do código) [bit/s] [Hz]
'BER Probabilidade de erro de bit após correção ou retransmissão
eT Tempo médio entre erros de bit sem correção [s]
'
eT Tempo médio entre erros de bit após correção ou retransmissão [s]
rP Probabilidade de deteção de erro e retransmissão
mind Distância mínima de Hamming [bit] [ ]
BFER Relação de rajadas não detetadas
t Número máximo de erros corrigidos
b Dimensão da rajada máxima detetada (ou corrigida em interleaving)
li Número de linhas em interleaving
b
b
c R
R
n
kR
'
(13.1)
Distribuição Binomial (Valores aproximados, assumindo BER<<1 e 1nBER )
lnllnlnl BERCBERBERCBERnlf 1, (13.3)
lnl BERCBERnlfBERnlf ,,maisou (13.5)
!!
!
lln
nCnl
(A7.2)
Gerais
Número médio de erros num bloco de n bits: nBERerros (13.6)
Probabilidade de bloco de n bits sem erro: nBERBERnf 1,0 (13.8)
BERR
T
b
e
1
''
' 1
BERR
T
b
e (13.8)
Probabilidade de retransmissão (1 erro) nBERPr (13.12)
200 Principais Equações Carlos Meneses
Deteção até l erros: mindl (13.17-a)
Correção até t erros:
2
1min dt (13.17-b)
Limite de Hamming:
t
j
n
j
kn C
0
2 (13.19)
Códigos de paridade e repetição
Código k cR bP 'BER mind
Paridade n–1
n
n 1
2
2
1 BERnn 212 BERnP
n b
2
Repetição
de n bits 1 n
1
2
1
2
1
n
n
n BERC2
1
2
1
n
n
nb BERP C n
Repetição
de 3 bits 1 3
1
23BER 23BER 3
Repetição
de 5 bits 1 5
1
310 BER 310 BER 5
Código de Hamming
Distância mínima de 3 bits; Corrige 1 bit ou deteta até 2 bits errados;
n–k n k cR bP 'BER
n–k 12 kn n– (n–k) n
k
2
2
1 BERnn 2
2
133 BERnP
n b
2(1) 3 1 0,33 23BER 23BER
3 7 4 0,57 221BER 29BER
4 15 11 0,73 2105BER 221BER
5 31 26 0,84 2465BER 245BER
6 63 57 0,91 21953BER 293BER
(1)Equivalente ao código de repetição de 3 bits
CRC – Deteção de rajadas de erros
BFER rajadas de dimensão inferior a (n–k+1): 0
BFER rajadas de dimensão (n–k+1): )1(2 kn (13.46)
BFER rajadas de dimensão superior a (n–k+1): )(2 kn
BFER valor médio:
)(2 knBFER (13.47)
Interleaving: litb max (13.52)
Perguntas teóricas 201
Perguntas teóricas
1. (secção 5.1) Diga se são verdadeiras ou falsas, explicando porquê, as seguintes
afirmações.
a) Em PCM companding, tira-se partido da correlação entre amostras para
aumentar a SNR;
b) Em DPCM, não é importante que tipo de preditor se está a usar para se calcular
a SNR. Basta ser conhecido o valor do intervalo de quantificação.
2. (secção 5.1) Compare, dizendo das vantagens e desvantagens, dos seguintes
métodos de codificação de sinais de fala: PCM uniforme; PCM companding;
DPCM; ADPCM.
3. (secção 5.1) Explique o mecanismo de adaptação do quantificador em ADPCM.
4. (secção 5.2) Em DM, que tipos de ruído existem? Existe algum compromisso entre
eles? Que tipo de soluções conhece?
5. (secção 6) Das codificações apresentadas, em quais e porquê a potência do ruído
depende do sinal de entrada?
6. (secção 6) Em codificadores de sinais, de que tipo de conceitos se tira partido para
diminuir o débito binário?
7. (secção 6) Existe algum compromisso entre o débito binário, a qualidade e a
complexidade? Dê exemplos. Quais as unidades de medição de cada um destes
atributos?
8. (secção 8) Que atributos se devem ter em conta num código de linha?
9. (secção 8) Sabendo que na linha telefónica não podem ser transmitidas componentes
DC, comente a utilização do código Manchester por exemplo comparando com um
PNRZ ou um UNRZ.
10. (secção 8) Compare as técnicas para facilitar o sincronismo, 1 bit de enchimento e
BNZS, respondendo nomeadamente às seguintes questões: (1) Pode utilizar BNZS
com qualquer código? (2) Com bit de enchimento aumenta o débito binário? E com
BNZS?
11. (secção 9) Como e que efeitos do canal de comunicação limitam a comunicação de
sinais digitais?
12. (secção 10) Existe algum compromisso entre a eficiência espetral e a capacidade de
sincronismo de símbolo?
202 Perguntas teóricas Carlos Meneses
13. (secção 10) Quais as vantagens e desvantagens de utilizar, para definição da largura
de banda, o critério de primeiro zero espetral ou o critério de Nyquist?
14. (secção 10) Que efeito se evita com um filtro de formatação de pulsos? Como é
conseguido?
15. (secção 10) Para que serve o padrão de olho?
16. (secção 11) Quais as causas que leva a haver erros de bit numa transmissão digital?
Como podem ser estes erros evitados/minimizados?
17. (secção 11) Explique o objetivo e o funcionamento do filtro adaptado de receção.
18. (secção 11) Em que limites se situa a probabilidade de erro de bit?
19. (secção 11) Compare os atributos dos códigos PRZ e PNRZ.
20. (secção 11) Diga se são verdadeiras ou falsas, justificando, as seguintes afirmações:
a) O aumento do débito de símbolos faz diminuir a BER;
b) A medida de qualidade de um sistema de comunicação digital é a SNR;
c) O filtro adaptado de receção é implementado através de um produto interno
entre o sinal recebido e uma réplica (a menos de um fator de escala) do sinal
transmitido.
d) Um código de linha com componente DC tem sempre um pior desempenho
(maior BER) que o correspondente código sem componente DC. Estude duas
situações distintas: 1) mantendo a potência recebida; 2) mantendo a “distância”
entre símbolos.
21. (secção 12) Quais as vantagens e desvantagens de uma transmissão binária em
relação a uma transmissão M-ária?
22. (secção 13) Qual as vantagens e desvantagens da introdução de códigos de controlo
de erros numa transmissão digital?
23. (secção 13) Existe algum compromisso entre a razão de um código de correção de
erros e a BER após correção?
24. (secção 13) Compare as vantagens e desvantagens entre os códigos de (1 bit) de
paridade e de Hamming.
25. (secção 13) Compare as vantagens e desvantagens entre os códigos de correção e de
deteção de erros. Existe alguma gama de valores da BER para a qual é preferível
utilizar um ou outro método?
Exercícios resolvidos 203
Exercícios resolvidos
1. (secção 3.3) Produza quantificadores midtread e midrise com 8 intervalos de
quantificação uniformes, para quantificar sinais até 1 V. Defina um código
numérico sequencial do valor mais pequeno para o mais elevado.
Resolução:
i. Pela equação 3.4, o intervalo de quantificação q=2V/L=2/8=250 mV.
ii. Os valores de quantificação em midtread incluem o valor 0 V, somando e
subtraindo desde aí q, não ultrapassando as tensões máximas ±1 V.
iii. Os valores de decisão encontram-se a meio dos valores de quantificação, com
exceção dos extremos cujos valores são ±∞.
iv. Os valores de decisão em midrise incluem o 0 V, somando e subtraindo desde aí
q, nunca ultrapassando as tensões máximas ±1 V, com exceção dos extremos
cujos valores são ±∞.
v. Os valores de quantificação estão a meio dos valores de decisão.
vi. Numera-se cada valor de quantificação, sequencialmente, do valor mais pequeno
para o mais elevado.
Quantificação midtread Quantificação midrise Código
Valores de
decisão
Valores de
quantificação
Valores de
decisão
Valores de
quantificação dec/bin
∞ ∞
1 0,875 7 (111)
0,875 0,75
0,75 0,625 6 (110)
0,625 0,5
0,5 0,375 5 (101)
0,375 0,25
0,25 0,125 4 (100)
0,125 0
0 –0,125 3 (011)
–0,125 –0,25
–0,25 –0,375 2 (010)
–0,375 –0,5
–0,5 –0,625 1 (001)
–0,625 –0,75
–0,75 –0,875 0 (000)
–∞ –∞
204 Exercícios resolvidos Carlos Meneses
2. (secção 3.3) Utilize o quantificador midrise e consequente codificador do
exercício 1 para quantificar um sinal sinusoidal de amplitude 1 V e frequência
de 1.300 Hz (sen(21300t)), amostrado com 8.000 amostras por segundo (8
kHz). Represente as 8 primeiras amostras e a respetiva sequência binária
transmitida. Calcule o débito binário.
Resolução:
i. A amostra de ordem n corresponde a substituir no sinal t por nTs
nsentsennm
snTt 8000
13002)13002(
ii. Para cada amostra verifica-se em que intervalo do quantificador esta recai (tabela
do exercício 1) e o respetivo código.
Amostra Amostragem Quantificação Codificação
n m[n] mq[n] q[n] decimal binário
0 0,000 –0,125 0,125 3 011
1 0,853 0,875 –0,022 7 111
2 0,891 0,875 0,016 7 111
3 0,078 0,125 –0,047 4 100
4 –0,809 –0,875 0,066 0 000
5 –0,924 –0,875 –0,049 0 000
6 –0,156 –0,125 –0,031 3 011
7 0,760 0,875 –0,115 7 111
iii. A sequência binária a ser transmitida corresponde à concatenação por ordem
temporal dos códigos em binário: 011 111 111 100 000 000 011 111
iv. Note-se que para os cálculos do transmissor apenas é necessário conhecer os
valores de decisão e respetiva codificação, não sendo necessário conhecer os
valores de quantificação. No recetor apenas é necessário conhecer os valores de
decisão e respetiva codificação, não sendo necessário conhecer os valores de
quantificação.
v. O Débito binário é de (equação 3.7) Rb = fsxR = 8.000x3 = 24 kbit/s.
Exercícios resolvidos 205
3. (secção 3) Suponha um sinal sinusoidal com amplitude 1 V, amostrado a 8.000
amostras/s e com um débito bináriode 24 kbit/s.
a) Calcule a potência do sinal, bem como a sua variância;
b) Determine a SNRq de um codificador PCM uniforme com este sinal;
Resolução:
i. a) A potência de um sinal sinusoidal é dada por 5,0
2
2
max
m
P W. Este valor
corresponde à variância pois a média é 0 V.
ii. b) Pelo teorema da amostragem a frequência mínima de amostragem (produz o
débito binário mínimo) é o ritmo de Nyquist 2W=8 kHz.
iii. O número de bits por amostra, dado pela equação 3.7, são 24/8=3 bits/amostra, a
que correspondem 8 valores de quantificação.
iv. Pela equação 3.4, o intervalo de quantificação q=2/8=250 mV.
vi. Utilizando a equação 3.8 a potência do ruído de quantificação vem:
0052,0
12
2
2
qq W, pelo que a 82,19log10 210
q
dB
PSNR
dB.
vii. O mesmo valor pode ser obtido através da equação 3.10:
82,19
1
5,03log10302,63log1002,6 210210
V
PRSNRdB dB.
206 Exercícios resolvidos Carlos Meneses
4. (secção 3) Um CD de áudio contém sinais em estéreo amostrados a 44,1 kHz e
codificados em PCM uniforme com 16 bits por amostra.
a) Quantos minutos de música podem ser gravados num CD de 700 Mbyte?
b) Qual a banda máxima dos sinais contidos no CD?
c) Suponha um sinal com uma distribuição de amplitudes uniforme entre –1 e +1
V. Calcule a potência do sinal, bem como a sua variância;
d) Determine a SNRq com este sinal;
e) Determine a SNRq com um sinal de potência normalizada de –45 dB;
Resolução:
i. a) O débito binário total em estéreo é de 2x16x44,1=1,4112 Mbit/s.
ii. Um CD com capacidade de 700 Mbyte (valor aproximado) poderá gravar até
8x700/1,4112 = 3968 segundos ou aproximadamente 66 minutos.
iii. b) A banda máxima, pelo teorema de Nyquist-Shannon, é de metade da
frequência de amostragem, ou seja, 22,05 kHz.
iv. c) A distribuição de amplitudes do sinal de entrada uniforme entre –1 e +1 V,
vale 0 fora do intervalo e ½ no intervalo para que a sua área seja 1.
v. Sendo a função densidade de probabilidade simétrica à volta do valor 0 é óbvio
que a média do sinal é 0, pelo que a potência é igual à variância. A média
também pode ser calculada como 0
2
1
2
1 1
1
2
mmdmmfm m .
vi. e a variância (potência),
3
111
6
1
3
1
2
1 1
1
322
mdmmmfP mm W.
vii. A equação genérica da potência de um sinal com distribuição uniforme e
amplitude mmax é dada por m2max/3.
viii. d) A qualidade dos sinais CD áudio é de (equação 3.10).
3,96
3
1
1
3log101602,63log1002,6 210210
V
PRSNRdB dB.
ix. e) 1,56453log103,96log103log1002,6 101010 ndB PRSNR dB,
mantendo elevada qualidade para uma larga gama de potência, embora à custa do
elevado débito binário;
Exercícios resolvidos 207
5. (secção 4.2) Produza um quantificador companding Lei-A (A=87,56) com 8
intervalos de quantificação.
Resolução:
i. Gera-se um quantificador uniforme midrise (exercício 1).
ii. Gera-se o quantificador companding utilizando os valores do quantificador
uniforme como entrada da não linearidade inversa da equação 4.9 (Lei-A).
Quantificação uniforme Companding Lei-A
Valores de
decisão
Valores de
quantificação
Valores de
decisão
Valores de
quantificação
∞
0,875 0,505
0,75 0,255
0,625 0,128
0,5 0,065
0,375 0,033
0,25 0,017
0,125 0,008
0 0
0,505
0,875
0,255
0,75
0,128
0,625
0,065
0,5
0,033
0,375
0,017
0,25
0,008
0,125
0
00
0,25
0,5
0,75
1
0,000 0,250 0,500 0,750 1,000
208 Exercícios resolvidos Carlos Meneses
6. (secção 3.2) Suponha um sinal com uma distribuição de amplitudes uniforme
entre –1 e +1 V. A largura de banda do sinal é de 4 kHz e pretende-se um
débito binário máximo de 48 kbit/s.
a) Calcule a potência do sinal;
b) Determine a SNRq de um codificador PCM uniforme com este sinal;
c) Suponha agora que utiliza um codificador PCM com companding usando
Lei-A, sendo A=87,56. Calcule as percentagens de tempo em que o sinal está na
zona linear e na zona logarítmica;
d) Calcule a SNRq na situação correspondente à alínea anterior e compare com o
resultado obtido com PCM uniforme.
e) Qual a SNRq com quantificador ótimo para este sinal?
Resolução:
i. a) A equação genérica da potência de um sinal com distribuição uniforme e
amplitude mmax é dada por m2max/3, pelo que a potência é 1/3 W.
ii. b) Pelo teorema da amostragem a frequência mínima de amostragem (produz o
débito binário mínimo) é o ritmo de Nyquist 2W=8 kHz.
iii. O número de bits por amostra, dado pela equação 3.7, são 48/8=6 bits/amostra.
iv. A SNRq em PCM uniforme é dada pela equação 3.12
12,36
3
1
1
3log10602,63log1002,6 210210
V
PRSNRdB dB.
v. c) A percentagem de tempo que o sinal se encontra na zona linear,
A
m 1 ,
corresponde à área da função densidade de probabilidade nesta condição, ou seja,
à área do retângulo de lados 1/2 e 2/A. Esta área vale 1/A. Como A=87,56, a
percentagem de tempo é de 1,14%.
Exercícios resolvidos 209
vi. A percentagem de tempo na zona logarítmica é a restante, ou seja,
100–1,14=98,86%.
vii. O sinal está praticamente sempre na zona logarítmica, pelo que a aproximação
correspondente à equação 4.12 é válida.
viii. d) A SNRq é de 12,2610602,61002,6 RSNRdB dB.
ix. Este valor é menor que o obtido através de um PCM uniforme porque a potência
normalizada do sinal de entrada é bastante grande (–4,77 dB). Como se verifica
pela figura 3.7 a SNRq em PCM uniforme é melhor que em companding quando a
potência normalizada está acima dos –14,77 dB.
x. e) O quantificador ótimo para um sinal com distribuição uniforme é de facto um
quantificador uniforme. 36,12 dB é assim a melhor SNRq em PCM.
210 Exercícios resolvidos Carlos Meneses
7. (secção 4.3) Suponha três quantificadores, cada um com 4 valores de
quantificação, cujos valores de quantificação são apresentados em cada linha da
tabela seguinte. A última linha corresponde ao código binário de codificação de
cada valor de quantificação.
Valores de quantificação
Quantificador 1 –0,8536 –0,2945 0,2983 0,8529
Quantificador 2 –0,7485 –0,2463 0,2535 0,7525
Quantificador 3 –0,3057 –0,0910 0,0948 0,3061
Código 00 01 10 11
Estes quantificadores são resultado do algoritmo de quantificação ótima
Max-Lloyd, tendo como entrada as três funções densidade de probabilidade
ilustradas na figura seguinte, referenciadas por a, b, e c.
a) Identifique qual das funções densidade de probabilidade (a, b, c)
corresponde a cada um dos quantificadores (1, 2, 3). Explique.
b) Para o quantificador 1, calcule os valores de decisão.
c) Suponha amostras consecutivas com valores 0,5 –0,1 e 2. Qual a sequência
binária transmitida supondo o quantificador 1?
d) Descodifique qual os valores representados pela sequência 110100.
-1 -0.8 -0.6 -0.4 -0.2 0 0.2 0.4 0.6 0.8 1
0
0.005
0.01
0.015
- Distribuiçao a -
-1 -0.8 -0.6 -0.4 -0.2 0 0.2 0.4 0.6 0.8 1
1
2
3
4
5
6
x 10
-3
- Distribuiçao b -
-1 -0.8 -0.6 -0.4 -0.2 0 0.2 0.4 0.6 0.8 1
0
0.01
0.02
0.03
0.04
0.05
- Distribuiçao c -
Exercícios resolvidos 211
Resolução:
i. a) As 3 funções densidade de probabilidade distinguem-se por a (a) estar mais
concentrada na origem, a (b) ser praticamente uniforme, e a (c) estar mais
concentrada nos valores maiores em módulo. Assim, a função (a) corresponde ao
quantificador com valores menores, o quantificador (3). A função (c) ao
quantificador com valores maiores, o (1). À função (b) corresponde o
quantificador que falta atribuir, o quantificador (2), mas esta é de facto aquele
que se aproxima de um quantificador uniforme.
ii. b) Os valores de decisão estão a meio dos valores de quantificação (equação 3.2).
Assim:
Valores de
quantificação –0,8536 –0,2945 0,2983 0,8529
Valores de
decisão –0,5741 0,0019 0,5756Código 00 01 10 11
iii. c) Para cada amostra verifica-se em que intervalo do quantificador esta recai
(quantificação) e o respetivo código (codificação).
0,5 recai no intervalo [0,0019 : 0,5756] a que corresponde o código 10;
–0,1 recai no intervalo [–0,5741 : 0,0019] a que corresponde o código 01;
2 recai no intervalo [0,5756 : ∞] a que corresponde o código 11. As distribuições
têm o valor máximo de 1, pelo que o quantificador está saturado;
iv. A sequência binária a ser transmitida corresponde à concatenação por ordem
temporal dos códigos em binário: 100111.
v. d) Divide-se a sequência em conjuntos de R=2 bits “11” “01” “00”,
correspondendo cada para ao código de cada amostra (3 amostras).
vi. (Descodificação) Verifica-se para cada código o valor de quantificação,
“11” corresponde ao valor de quantificação 0,8529
“01” corresponde ao valor de quantificação –0,2945
“00” corresponde ao valor de quantificação –0,8536
212 Exercícios resolvidos Carlos Meneses
8. (secção 5.1) Suponha um sinal sinusoidal de amplitude 1 V e frequência
500 Hz, amostrado a 8.000 Hz e codificado em DPCM unitário. O valor
máximo do quantificador midrise é de 0,4 V. O número de bits de
codificação por amostra é de 2. O valor de predição inicial é 0 V. Qual a
sequência binária a ser transmitida para as 8 primeiras amostras?
Resolução:
i. Segue-se a metodologia do problema 1 para projetar o quantificador:
Valores de
decisão
Valores de
quantificação dec/bin
∞
0,3 3 (11)
0,2
0,1 2 (10)
0
–0,1 1 (01)
–0,2
–0,3 0 (00)
–∞
ii. As 8 primeiras amostras correspondem a substituir n por 0 até 7 na
expressão
nsintsinnm
snTt 8000
5002)5002(
iii. Assume-se um valor predito inicial de 0 V.
iv. Calcula-se o erro de predição como a diferença entre a amostra de entrada e
a sua predição.
v. Quantifica-se este valor com o quantificador calculado em i).
vi. Calcula-se a amostra quantificada como a soma do valor predito com o erro
de predição quantificado.
vii. Este valor corresponde ao valor predito da próxima amostra.
viii. Repete-se iv) a vii) até à última amostra (Figura 4.2 a)).
n m[n] mp[n] e[n] eq[n] mq[n] Código Ruído
0 0,00 0 0,00 0,1 0,1 10 –0,1
1 0,38 0,1 0,28 0,3 0,4 11 –0,02
2 0,71 0,4 0,31 0,3 0,7 11 0,01
3 0,92 0,7 0,22 0,3 1 11 –0,08
4 1,00 1 0,00 0,1 1,1 10 –0,1
5 0,92 1,1 –0,18 –0,1 1 01 –0,08
6 0,71 1 –0,29 –0,3 0,7 00 0,01
7 0,38 0,7 –0,32 –0,3 0,4 00 –0,02
Exercícios resolvidos 213
9. (secção 5.1) Suponha um sinal com função de autocorrelação dada por:
kkR 0833,02cos5,4
a) Que tipo de sinal se trata. Qual a sua potência e amplitude?
b) Qual a relação entre a frequência deste sinal e a frequência de amostragem?
c) Qual a relação sinal-ruído obtida por um codificador PCM uniforme que opere com
10 bits por amostra?
d) Qual a autocorrelação normalizada de 1ª ordem?
e) Calcule o ganho de predição utilizando um codificador DPCM com preditor
adaptado;
f) Calcule o valor máximo de quantificação do erro de predição, de tal modo que não
haja saturação de declive mas se maximize a relação sinal-ruído;
g) Qual a relação sinal-ruído?
h) Assumindo que a frequência de amostragem é de 10 kHz, qual o débito binário?
i) Se codificar com mais 1 bit/amostra qual a nova SNRq e débito binário?
j) Se voltar a utilizar 10 bit/amostra e duplicar a frequência de amostragem, qual a
nova SNRq e débito binário?
k) Compare os resultados obtidos em i) e j).
Resolução:
i. a) Segundo o Apêndice 3, esta função de autocorrelação corresponde à de um sinal
sinusoidal.
ii. Sendo
kk
f
fPk
f
fmkR
s
m
s
m 0833,02cos5,42cos2cos
2
2
max
,
então tem-se que 5,40 RP W e 3max m V.
iii. b) Por analogia das fórmulas a relação entre a frequência do sinal e a frequência de
amostragem é 0833,0
s
m
f
f .
iv. c) A SNRq em PCM uniforme vem, com 3max mV V, valor que evita a saturação de
amplitude e maximiza a SNRq,
214 Exercícios resolvidos Carlos Meneses
96,613log1002,6 210
V
PRSNRdB dB.
v. d) A autocorrelação de 1ª ordem vem 898,30833,02cos5,41 R W. A
autocorrelação normalizada de 1ª ordem vem 867,0
5,4
898,311
P
Rr .
vi. e) O ganho de predição, com preditor adaptado, vem:
4
11
1
2
r
Gp (linear) e 02,611
1log10 210
r
G dBp dB
vii. f) O valor máximo de quantificação do erro de predição, de tal modo que não haja
saturação de declive mas se maximize a relação sinal-ruído, vem,
5,1
2
1
pG
VV V.
viii. g) A SNRq vem,
98,67 nmSNRGpSNR PCMdBdBdB dB.
ou 98,673log1002,6 2
1
10
V
PRSNRdB dB.
ix. h) O débito binário vem,
1001000010 sb RfR kbit/s
x.i) 1101000011 sb RfR kbit/s. Melhoria de 6,02 dB na qualidade, para 74 dB.
xi. j) Se a frequência duplicar,
kkR
2
0833,02cos5,4 W, e kkr 0833,0cos
966,00833,0cos1 r , e 74,11dBpG dB
7,73 nmSNRGpSNR PCMdBdBdB dB.
2002010 kRfR sb kbit/s
xii. j) Aumentar apenas 1 bit de codificação por amostra torna-se mais eficiente, pois tem
melhor qualidade e melhor débito binário.
Sempre que possível deve ser utilizado o ritmo de Nyquist 2W e melhorar a qualidade
através do número de bits de codificação por amostra.
Exercícios resolvidos 215
10. (secção 5) Suponha-se um sinal sinusoidal de amplitude 1 V e frequência 320 Hz,
amostrado a 8.000 Hz. Calcule a SNRq para os diversos codificadores apresentados.
Tome como referência 8 bits por amostra.
Resolução:
i. Como a amplitude da sinusoide é de 1 V a sua potência é de 0,5 W, que coincide com
o seu valor normalizado.
ii. Um codificador PCM uniforme com 8 bits por amostra (64 kbit/s) produz uma SNRq
de 49,9 dB (equação 3.12).
iii. Um codificador PCM companding, com A=87,56, produz uma SNRq de 38,2 dB
(equação 4.12).
iv. A função de autocorrelação de um sinal sinusoidal é uma função cosseno com a
mesma frequência (Apêndice 3), r[k]=cos(2320kTs). r[1]=0,968, pelo que o ganho de
predição de um codificador DPCM com adaptação do preditor vem Gp=16,17 (linear)
ou Gp =12,1 dB (equação 4.19).
v. Note-se que para uma autocorrelação normalizada tão elevada praticamente não existe
diferença de um preditor adaptado para um preditor unitário, que produz 12,0 dB de
Gp (equação 4.15).
vi. Um codificador DPCM com 8 bits por amostra produz 62 dB de SNRq (equação 4.11,
SNRq em PCM uniforme + Gp).
vii. O valor máximo de quantificação é de 0,248 V (equação 4.10)
viii. Para manter a mesma SNRq que em PCM uniforme são necessários apenas 6 bits de
codificação por amostra (48 kbit/s), que correspondem à perda de 2x6 dB
correspondentes ao ganho de predição.
ix. Se a frequência da onda sinusoidal subisse para 640 Hz a autocorrelação desceria para
r[1]=0,876 e Gp =6,3 dB, pelo que a melhoria em relação ao codificador PCM seria
equivalente a apenas 1 bit por amostra (56,2 dB).
x. A mesma SNRq em DPCM com preditor adaptado e PCM dá-se para a frequência
fs/4=2.000 Hz (equação 4.19, a=r[1]=0). Acima desta frequência o codificador DPCM
tem novamente melhor desempenho.
216 Exercícios resolvidos Carlos Meneses
xi. Com preditor adaptado a SNRq é sempre superior à do PCM. Para a=r[1]=0 o
codificador DPCM degenera num codificador PCM.
xii. A SNRq em PCM não varia com a variação da frequência do sinal.
xiii. Relembre-se o ponto ix), em DPCM, da perda de 6 dB de SNRq quando se aumentou a
frequência do sinal de entrada de 320 Hz para 640 Hz. Estes 6 dB poderiam ser
recuperados aumentando a fs de 1 oitava, para os 16 kHz, pois novamente r[1]=0,968
(ver ponto iv)).
xiv. A somar a estes 6 dB, estariam mais 3 dB devido à filtragem, num total de 65 dB.
Contudo o débito binário total é de 16.000x8=128 kbit/s.
xv. Obtêm-se melhoresresultados mantendo a frequência de amostragem a 8 kHz e
aumentando em 2 o número de bits de codificação por amostra para 8+2=10,
ganhando 12 dB e não 9 dB, para um total de 68,3 dB.
xvi. O débito binário é de apenas 80 kbit/s.
xvii. A derivada máxima do sinal, V2W=2010 V/s.
xviii. Num codificador DM o valor mínimo de é 251 mV (equação 4.24), o que
conjuntamente com a equação 4.25 produz uma potência de ruído de quantificação de
21 mW. Como a amplitude da sinusoide é de 1 V a sua potência é de 0,5 W e a SNRq
corresponde a 13,76 dB (equação 4.26).
xix. A SNRq é mais baixa mas o débito binário também é de apenas 8 kbit/s.
Exercícios resolvidos 217
11. (secção 5.2) Num codificador ADM o algoritmo de adaptação do passo de
quantificação é dado por:
nb
nbnn 15,011 .
As amostras do sinal de entrada são:
n 0 1 2 3 4 5 6 7 8 9 10
m[n] 1 2 3 3 3 3 2 1 0 –1 –2
No instante n = –1 o valor do sinal quantificado mq[n] = 0, o valor do passo de
quantificação [n] = 0,5 V, e o nível lógico do bit de codificação é “1”. Calcule o
sinal quantificado mq[n].
Resolução:
Tendo em atenção o esquema de blocos do codificador DM,
e as respetivas inicializações para n = –1, então:
n m[n] mp[n] e[n] [n] b[n] eq[n] mq[n]
–1 0,5 1 0
0 1 0 1 0,75 1 0,75 0,75
1 2 0,75 1,25 1,125 1 1,125 1,875
2 3 1,875 1,125 1,6875 1 1,6875 3,5625
3 3 3,5625 –0,5625 0,84375 –1 –0,84375 2,71875
4 3 2,71875 0,28125 0,421875 1 0,421875 3,140625
5 3 3,140625 –0,14063 0,210938 –1 –0,21094 2,929688
6 2 2,929688 –0,92969 0,316406 –1 –0,31641 2,613281
7 1 2,613281 –1,61328 0,474609 –1 –0,47461 2,138672
8 0 2,138672 –2,13867 0,711914 –1 –0,71191 1,426758
9 –1 1,426758 –2,42676 1,067871 –1 –1,06787 0,358887
10 –2 0,358887 –2,35889 1,601807 –1 –1,60181 –1,24292
218 Exercícios resolvidos Carlos Meneses
12. (secção 9) Considere um sinal com débito binário de 10 kbit/s, transmitido em
PNRZ com amplitude 4 V.
a) Calcule a energia por bit à saída do transmissor;
b) Calcule a potência do sinal transmitido;
c) Qual o tempo que leva a serem transmitidos 10 milhões de bits?
Resolução:
viii. a) A energia por bit em PNRZ é dada pela equação 8.8, pelo que
10000422 bb TAE 1,6 mJ.
ix. b) A potência do sinal transmitido é obtida da equação 8.5, 162 ATES bbT W.
x. c) Se kbit/s 10bR , 10 Mbit demoram:
1000
1010
101010101010 3
66
6
b
bt R
TT s 16,7 minutos.
Exercícios resolvidos 219
13. (secção 8) Considere um sinal com débito binário de 10 kbit/s, transmitido em
PNRZ com potência 16 W, num canal com dimensão 2 km, atenuação de 3,01
dB/km (ver exercício 12) e atraso de propagação de 5 s/km.
a) Calcule a potência do sinal recebido;
b) Calcule a energia por bit à entrada do recetor;
c) Calcule a amplitude do código à entrada do recetor.
d) Calcule o atraso de propagação.
e) Qual o atraso de transmissão de um pacote com 2.000 bits?
Resolução:
i. a) A atenuação em 2 km é (equação 3.3) de 02,6201,3/ kmdBAt dB. Em relação
linear a atenuação é obtida da equação 3.1,
410 10/6
R
T
S
SAt .
ii. Sendo a potência transmitida de 16 W (exercício 1) a potência recebida resulta,
RS =16/4=4 W.
iii. b) A energia recebida por bit corresponde a:
100004bRb TSE 400 J.
iv. Alternativamente pode-se afetar a energia transmitida (exercício 1) da atenuação, pelo
que,
4004106,1 3 bE J.
v. c) A amplitude do sinal recebido é de:
2 RSA V.
vi. d) O atraso de propagação em 2 km vem:
66 1010105 LTp s.
vii. e) O atraso de transmissão vem:
2,0
10000
2000
b
t R
NT s,
sendo neste caso o atraso de transmissão dominante.
220 Exercícios resolvidos Carlos Meneses
14. (secção 10) Considere um sinal com débito binário de 10 kbit/s, transmitido em
PNRZ (ver exercícios 12 e 13).
a) Calcule a largura de banda utilizando o critério de primeiro zero espetral;
b) Calcule o valor mínimo e máximo da largura de banda utilizando o critério de
Nyquist (com filtro de formatação de pulsos);
c) Qual a eficiência espetral?
Resolução:
i. a) Pela figura 10.1, o primeiro zero espetral dá-se, para o código PNRZ, em
bR =10 kHz, pelo que é este o valor de TB .
ii. b) A largura de banda é definida pela equação 4.4, com =0 para o valor mínimo e
=1 para o valor máximo:
iii.
1 máximovalor Hz 10000
0 mínimovalor Hz 5000
1
2
100001
2
bT
R
B .
iv. c) A eficiência espetral, para o critério do primeiro zero espetral vem, pela equação
8.6:
1 Tb BR bit/s/Hz (não tem unidades).
v. Com filtro de formatação de pulsos,
1 máximovalor 1
0 mínimovalor 2
Tb BR .
vi. Note-se que a largura de banda e consequentemente a eficiência espetral são idênticas
para os critérios do primeiro zero espetral e critério de Nyquist com =1.
Exercícios resolvidos 221
15. (secção 11) Considere um sinal com débito binário de 10 kbit/s, codificado em
PNRZ e recebido com amplitude 2 V, num canal AWGN com densidade espetral de
potência de 10 W/Hz. Assuma para a definição da largura de banda o critério do 1º
zero espetral. Considere que no recetor o sinal é filtrado com um filtro passa-baixo
de ganho unitário (figura 11.3) para cancelar o ruído fora da banda do sinal (ver
exercícios 12, 13 e 14).
a) Qual a largura de banda do filtro?
b) Calcule a potência do ruído após o filtro.
c) Qual a relação sinal-ruído no canal de comunicação?
d) A seguir ao filtro coloca um comparador (figura 5.3) para detetar qual o bit
transmitido. Qual o valor ótimo de ?
e) Qual a BER deste sistema?
Resolução:
i. a) A largura de banda do filtro é o da largura de banda do sinal. Com o critério de
primeiro zero espetral, bT RB =10 kHz (exercício 14).
ii. b) A potência do ruído após este filtro vem, (equação 9.1) 2,00
22 Tcn BN W.
iii. c) A SNRq no canal, relação entre a potência do sinal recebido e a potência do ruído na
banda do sinal, vem (equação 9.2), 2cRc SSNR . 42 AS R W, pelo que
202,04 cSNR ou 13 dB. Através de 0NESNR bc chega-se ao mesmo
resultado.
iv. d) O valor ótimo de vem, pela equação 5.5, equidistante dos valores
correspondentes aos símbolos lógicos sem ruído, 2 A V, correspondendo, como
em qualquer código polar, 0opt V.
v. e) Tendo em conta a figura 5.2, utilizando a equação 5.9 com o valor de d
determinado pela equação 5.10, d=2 V, a BER vem:
610416,3
2
1
2,02
4
2
1
erfcerfcBER (Apêndice 8).
222 Exercícios resolvidos Carlos Meneses
16. (secção 11) Considere uma transmissão binária em PNRZ com um débito binário de
10 kbit/s, em que o sinal recebido tem uma amplitude de 2 V. O sinal é corrompido
com ruído branco, gaussiano e aditivo, com densidade espetral de potência de
10 W/Hz (ver exercícios 1, 2, 3, 4).
a) Desenhe o recetor ótimo normado;
b) Calcule as tensões sem ruído, à saída do filtro adaptado, no instante de
amostragem;
c) Calcule a potência do ruído à saída do filtro adaptado, no instante de
amostragem;
d) Calcule a probabilidade de erro de bit através da equação geral 5.9;
e) Calcule a relação 0NEb ;
f) Calcule a probabilidade de erro de bit pela equação 5.36.
Exercícios resolvidos 223
Resolução:
i. a) O recetor ótimo binário corresponde à figura 11.5 (filtro adaptado e deteção MAP,
equivalente a MV desde que p0=p1).
ii. 0opt V (equação 11.5, polar, y0=y1)
iii. Pela equação 11.15, tkstc 1 (adaptado ao símbolo “1”), que é um sinal constante
(PNRZ) com amplitude bRtc =100 V, de modo a que 1eqA Hz (filtro
normado, equação 11.27).
iv. b) Sendo um código polar as tensões sem ruído à saída do filtro adaptado normado, no
momento de amostragem, são dadas por (equação 11.24):
201 bb TAEy mV e 200 bEy mV.
v. c) A potência do ruídoà saída do filtro adaptado é definida pela equação 11.21:
eqn A
N
2
02 .
vi. Com o recetor normado, 1eqA Hz,
10
2
02
N
n W.
vii. d) É válida a figura 11.2, com 201 optyd mV e, pela equação geral 5.9:
106
23
2
2
103,147,4
2
1
1020
1020
2
1
22
1
erfcerfcderfcBER
n
.
viii. e) A relação sinal-ruído, 0NEb , vem:
20
1020
10400
6
6
0
N
Eb ou 13 dB.
ix. Este valor é igual à cSNR pois =1.
x. f) Através da equação 11.36, a BER vem:
10
0
103,147,4
2
1
2
1
erfc
N
EerfcBER b
224 Exercícios resolvidos Carlos Meneses
17. (secção 11) Considere uma transmissão binária em PNRZ com um débito binário de
10 kbit/s, em que o sinal recebido tem uma amplitude de 2 V. O sinal é corrompido
com ruído branco, gaussiano e aditivo, com densidade espetral de potência de
10 W/Hz (ver exercícios 1, 2, 3, 4, 5).
a) Calcule as tensões sem ruído, à saída do filtro adaptado, no instante de
amostragem, assumindo que a amplitude do sinal com que se está a fazer o
produto interno é de 10 V;
b) Calcule a potência do ruído à saída do filtro adaptado;
c) Calcule a probabilidade de erro de bit através da equação geral 5.9;
d) Compare com os resultados obtidos no exercício anterior.
Resolução:
xi. a) Com 10tc V,
220210)(
00
11 b
TT
Tdtdttstcy
bb
mV,
e, por ser um código polar, 20 y mV.
xii. b) A área equivalente do ruído vem 01,0102 beq TA Hz, pelo que a potência do
ruído vem:
7602 1001,01010
2
eqn A
N
W.
xiii. c) É ainda válida a figura 5.2, com 21 optyd mV e, pela equação geral 5.9:
107
23
2
2
103,147,4
2
1
102
102
2
1
22
1
erfcerfcderfcBER
n
.
xiv. d) A BER calculada das três maneiras é sempre a mesma, sendo nomeadamente
independente da amplitude do vetor de base com que se efetua o produto interno.
Exercícios resolvidos 225
18. (secção 11) Considere uma transmissão binária com código NRZI. A amplitude do
sinal recebido é de 3 V. O canal de comunicação é AWGN com densidade espetral
de potência do ruído de 10-6 W/Hz, uma atenuação de 6,02 dB/km e mede 3 km.
Pretende-se uma probabilidade de erro de bit de 2,2x10-5.
a) Calcule a energia por bit.
b) Calcule o débito binário.
c) Suponha o critério do primeiro zero espetral. Qual a relação sinal-ruído no
canal de comunicação?
d) Qual a potência do sinal transmitido?
e) Qual a amplitude do sinal transmitido?
f) Qual a energia média por bit à saída do transmissor?
Resolução:
i. a) Para o código NRZI,
3102,2
0
5
0
N
E
N
EerfcBER bb ,
ii. pelo que 1810299 60
NEb J.
iii. b) 500
1018
3
6
22
b
b E
AR kbit/s.
iv. c) Com o critério do 1º zero espetral 500 bT RB kHz.
v. Pela equação 9.2 9
10500102
3
36
2
0
T
R
c BN
SSNR (9,54 dB).
vi. d) 6,02 dB de atenuação/km correspondem em relação linear a 4 atenuação/km. Em 3
quilómetros a atenuação é de 6443 .
vii. A potência recebida vem 92 AS R W.
viii. Pela equação 3.1, 57664 RT SS W.
ix. e) A amplitude no transmissor vem, 24 TSA V
x. f) A energia no transmissor vem, 15,1
500000
576
bTb TSE mJ.
226 Exercícios resolvidos Carlos Meneses
19. (secção 12) Uma transmissão digital num canal AWGN passa-baixo de largura de
banda 1,5 MHz e densidade espetral de potência do ruído de 10-9 W/Hz. O débito
binário é de 10 Mbit/s e pretende-se uma probabilidade de erro de bit máxima de
13104 .
a) Qual o número mínimo de bits por símbolo?
b) Qual o valor máximo do fator de rolloff?
c) Calcule o débito de símbolos;
d) Qual a energia mínima por bit do sinal recebido?
e) Qual a energia mínima por símbolo?
f) Qual a tensão mínima entre símbolos adjacentes?
g) Se o método de disposição de bits por símbolo não seguisse um código Gray
mas fosse aleatório, qual o aumento da probabilidade de erro de bit?
h) Qual a capacidade do canal, assumindo a mesma relação sinal–ruído?
Resolução:
i. a) Uma vez que o canal é passa-baixo e assumindo mais do que 1 bit por símbolo, a
transmissão tem de ser M-ária.
ii. O número de bits por símbolo vem (equação 6.7 com =0):
3,3
105,12
1010
2 6
6
c
b
B
R
K bit/símbolo
e sendo o número de bits por símbolo um número inteiro, vira o valor mínimo de K=4
bits por símbolo.
iii. b) O fator de rolloff máximo é calculado de modo a não ser ultrapassada a largura de
banda cB do canal de comunicação:
2,01
1010
105,14212 6
6
b
c
R
KB
iv. c) O débito de símbolos vem:
6
6
105,2
4
1010
K
R
R bs símbolos/s (baud).
v. d) A energia por bit do sinal recebido é calculada de:
Exercícios resolvidos 227
0
2 1
3)1(
N
E
M
Kercf
KM
MBER b
13
00
104047059,0
2
146875,0
255
12
2
1
32
15
N
Eerfc
N
Eerfc bb
13
0
1053,8047059,0
2
1
N
Eerfc b
5047059,0
0
N
Eb
25047059,0
0
N
Eb
531
0
N
Eb (27,25 dB)
1bE ,063 J.
vi. e) Da equação 6.6, a energia por símbolo corresponde a:
25,4 bs KEE J
vii. f) Da equação 6.4:
ss T
MaE
3
1
4
22
e 7,01
12
2
M
REa ss V.
viii. g) Comparando as equações 6.14 e 6.16, o aumento da probabilidade de erro de bit
vem:
5,2
2
1
K
ix. ou seja,
1213 101045,2 BER .
x. h) Pela equação 6.23,
68,171log1log
0
222
c
bb
c
c
R
c BN
REBSBC
Mbit/s.
xi. Arredondado para baixo pois é o máximo débito binário neste canal.
228 Exercícios resolvidos Carlos Meneses
20. (secção 13) Considere uma transmissão digital binária polar, com um débito binário
de 10 kbit/s (no canal de comunicação, com ou sem código de correção de erros)
com uma relação 90 NEb . Calcule o tempo médio entre erros de bit nas
seguintes condições:
a) Sem código de correção ou deteção;
b) Com código de repetição de 3 bits;
c) Com código de repetição de 5 bits;
d) Com código de Hamming H(7,4);
e) Compare os resultados anteriores.
Resolução:
i. A BER desta transmissão (polar) é determinada por:
5
0
109
2
1
2
1
erfc
N
EcerfBER b
ii. a) Sem códigos de correção de erros, o tempo médio entre erros (equação 13.8)
vem:
10
1010
11
54 BERR
T
b
e s
iii. b) Para um código (de correção) de repetição de 3 bits, a probabilidade de erro de
bit (equação 13.21) após correção vem:
1023
2
2
1
2
1
' 103
BERBERBER CC
n
n
n .
iv. A razão do código e o débito binário dos bits da informação virão:
33,0
3
1
n
kRc 33,3103
1 4'
n
kR
R bb kbit/s.
v. O tempo entre erros vem (equação 13.8):
6
103''
' 10
1031033,3
11
BERR
T
b
e s (11,6 dias).
vi. c) Para um código de correção de repetição de 5 bits, a probabilidade de erro de bit
após correção vem:
1535
3
2
1
2
1
' 1010
BERBERBER CC
n
n
n
Exercícios resolvidos 229
vii. A razão do código e o débito binário dos bits da informação virão:
2,0
5
1
n
kRc 2105
1 4'
n
kR
R bb kbit/s.
viii. O tempo entre erros vem:
10
143''
' 105
10102
11
BERR
T
b
e s (15,855 séculos).
ix. d) Para um código de Hamming H(7,4), a probabilidade de erro de bit após
correção vem:
102' 1099 BERBER
x. A razão do código (equação 13.1) e o débito binário dos bits de informação
(equação 13.1) virão:
57,0
7
4
n
kRc
34' 1071,510
7
4
n
kRR bb bit/s,
xi. e o tempo entre erros após correção vem:
5
103''
' 1094,1
1091071,5
11
BERR
T
b
e s (54 horas)
xii. e) A diminuição da razão do código, devido ao aumento do número de bits de
paridade introduzidos, faz diminuir o número de erros e portanto aumenta o tempomédio entre erros. No entanto o débito binário dos bits da informação também
diminui, sendo necessário mais tempo para transmitir a mesma informação.
Razão do
código
Débito dos bits da
informação [kbit/s]
BER’ Te [s]
Sem código 1 10 510 10
H(7,4) 0,57 5,71 10109 51094,1
R3 0,33 3,33 10103 610
R5 0,2 2 151010 10105
Tabela síntese dos resultados.
230 Exercícios resolvidos Carlos Meneses
21. (secção 13) Considere uma transmissão digital binária polar, com um débito binário
de 10 kbit/s e uma relação 90 NEb . Calcule o tempo médio entre erros de bit nas
seguintes condições:
a) Sem código de correção ou deteção;
b) Com código de Hamming H(7,4) mas mantendo o débito binário dos bits de
informação;
c) Compare o resultado anterior com o resultado obtido mantendo o débito
binário no canal (problema anterior);
d) Qual a variação de amplitude do sinal que deve produzir de modo a que o
tempo médio entre erros mantendo o débito binário dos bits de informação
seja o mesmo que mantendo o débito binário no canal (problema anterior).
Resolução:
i. a) A BER desta transmissão é dada por:
5
0
109
2
1
2
1
ercf
N
EcerfBER b
ii. Sem códigos de correção ou deteção o tempo médio entre erros (equação 13.8) vem:
10
1010
11
54 BERR
T
b
e s
iii. b) A razão do código, cR , e débito binário no canal, virão:
57,0
7
4
n
kRc 5,174
107 4'
k
nR
R bb kbit/s
iv. A variação do débito binário muda o tempo de bit, que vem agora (equação 13.2)
'
7
4
bb TT , o que muda da mesma proporção a energia de bit. A nova relação
sinal-ruído vem 14,5)(
7
4
anterior
N
E
N
E
o
b
o
b e a nova BER vem:
5106714,5
2
1 cerfBER
Exercícios resolvidos 231
v. Para um código H(7,4), a probabilidade de erro de bit após correção vem:
6252' 104106799 BERBER
vi. E o tempo entre erros de bit após correção vem:
25
10410
11
64''
'
BERR
T
b
e s
vii. c) Comparando o resultado anterior com o resultado obtido no problema 7 alínea b),
verifica-se que se aumenta o débito binário dos bits da informação mas aumenta-se a
probabilidade de erro de bit e, consequentemente, diminui-se o tempo entre erros.
viii. d) Para manter o tempo entre erros é preciso manter a BER e consequentemente
manter a energia média por bit, pelo que a potência do sinal com um binário no canal
maior (mesmo débito binário dos bits da informação) deve compensar a diminuição
do tempo de bit de cR . Consequentemente a potência do sinal deve aumentar da
mesma quantidade. Como a potência é proporcional ao quadrado da amplitude, então
o aumento da amplitude vem:
32,11
canterior
novo
RA
A
ix. A BER é a mesma que na alínea b) do exercício anterior mas com débito binário dos
bits da informação de 10 kbit/s, pelo que o tempo médio entre erros vem:
5
104''
' 101,1
10910
11
BERR
T
b
e s
Razão do
código
anterior
novo
A
A
Débito binário
dos bits da
informação
[kbit/s]
BER’ Te [s]
Sem código 1 1 10 510 10
H(7,4) 0,57 1 10 6104 25
H(7,4) 0,57 1,32 10 10109 5101,1
H(7,4) 0,57 1 5,71 10109 51094,1
Tabela síntese dos resultados.
232 Exercícios resolvidos Carlos Meneses
22. (secção 13) Considere um código de Hamming H(7,4) gerado através de uma matriz
geradora (equação 13.38)
a) Qual o código para os bits de informação (1 0 0 1);
b) Verifique a situação de uma transmissão sem erros;
c) Considere um padrão de erro E= [0 1 0 0 0 0 0]. Qual os bits recebidos?
d) Verifique a situação de erro e a sua posição.
Resolução:
i. a) O código é calculado através da equação 13.29:
0011001
110
101
011
111
1000
0100
0010
0001
1001
mGc
ii. Os primeiros 4 bits do código são a cópia dos bits de informação (matriz identidade).
iii. p4 é determinado pelo produto do vetor dos bits de informação com a primeira coluna
da matriz P, p4= 1x1+0x1+0x1+1x0 = 1.
iv. p2= 1x1+0x1+0x0+1x1 = 0.
v. p1= 1x1+0x0+0x1+1x1 = 0.
vi. b) Não existem erros se a síndrome (equação 13.32) for 0. Por exemplo, pela equação
13.39, o 3º bit da síndrome é determinado pelo produto do vetor do código com a
terceira coluna da matriz HT:
1x1+0x0+0x1+1x1+1x0+0x0+0x1 = 0.
000
100
010
001
110
101
011
111
0011001
TcHS
vii. c) Os bits recebidos são a soma do código com o padrão de erro:
001101100000100011001 cE
viii. d) Existe erro se a síndrome for diferente de 0.
Exercícios resolvidos 233
ix. O primeiro ponto da síndrome é determinado pelo produto dos bits recebidos pela 1ª
linha da matriz de verificação de paridade,
1x1+1x1+0x1+1x0+1x1+0x0+0x0 = 1
x. Segundo bit da síndrome
1x1+1x1+0x0+1x1+1x0+0x1+0x0 = 1
xi. Terceiro bit da síndrome
1x1+1x0+0x1+1x1+1x0+0x0+0x1 = 0
011
100
010
001
110
101
011
111
0011011
THcES
xii. A síndrome corresponde à segunda linha da matriz de verificação de paridade, pelo
que o bit errado é o 2º a contar da esquerda, o que está conforme o padrão de erro.
xiii. A mesma síndrome é obtida fazendo a verificação de paridade apenas com o padrão
de erro (equação 13.33).
xiv. O primeiro ponto da síndrome é o produto dos bits recebidos pela 1ª linha da matriz
de verificação de paridade,
0x1+1x1+0x1+0x0+0x1+0x0+0x0 = 1
xv. Segundo bit da síndrome
0x1+1x1+0x0+0x1+0x0+0x1+0x0 = 1
xvi. Terceiro bit da síndrome
0x1+1x0+0x1+0x1+0x0+0x0+0x1 = 0
011
100
010
001
110
101
011
111
0000010
TEHS
234 Exercícios resolvidos Carlos Meneses
23. (secção 13) Considere um código cíclico com polinómio gerador do código de
H(7,4), equação 13.45, xg = x3+ x1+1 (“1 0 1 1”).
e) Calcule os bits transmitidos xrxxmxT kn para os bits de
informação “0 1 0 1” (m5 m7 m6 m3);
f) Qual a dimensão máxima da rajada sempre detetada?
g) Qual a relação de rajadas não detetadas?
h) Verifique a situação de uma transmissão sem erros;
i) Considere um padrão de erro xE = x4 (“0 0 1 0 0 0 0”). Qual os bits
recebidos?
j) Verifique a situação de erro.
Resolução:
i. a) Com 4 bits de informação k=4 e o grau máximo de xm é k–1=3. O grau de xg
é 3, pelo que o resto da divisão terá n–k=3 bits. Conclui-se que n=7, correspondendo a
um código (7,4).
ii. xm =x2+1 (“0 1 0 1”), 3xxmxxm kn = x 5+ x 3 (“0 1 0 1 0 0 0”).
iii. xr e xq são calculados de:
m(x)xn-k = 0 1 0 1 0 0 0 g(x) = 1 0 1 1
– 0 0 0 0 q(x) = 0 1 0 0
1 0 1 0
– 1 0 1 1
0 0 1 0
– 0 0 0 0
0 1 0 0
– 0 0 0 0
1 0 0 = r(x)
p4 p2 p1
iv. Pelo que xrxxmxT kn vem x 5+ x 3+ x 2
(“0 1 0 1 1 0 0”) (m5 m7 m6 m3 p4 p2 p1)
v. b) A dimensão máxima da rajada sempre detetável é 3, igual ao grau do polinómio
gerador. Esta situação está conforme o código de Hamming, pois embora a distância
mínima de Hamming deste código seja 3, não existem 3 bits consecutivos trocados
entre palavras de código na sequência (m5 m7 m6 m3 p4 p2 p1).
vi. c) Pela equação 13.47, BFER=0,125.
vii. d) No recetor, calcula-se o resto de xgxT e, caso este seja igual a 0, não houve
erros na transmissão.
Exercícios resolvidos 235
T(x) = 0 1 0 1 1 0 0 g(x) = 1 0 1 1
– 0 0 0 0 q(x) = 0 1 0 0
1 0 1 1
– 1 0 1 1
0 0 0 0
– 0 0 0 0
0 0 0 0
– 0 0 0 0
0 0 0
viii. e) xExT serão os bits recebidos.T(x) = 0 1 0 1 1 0 0
E(x) = 0 0 1 0 0 0 0
T(x) + E(x) = 0 1 1 1 1 0 0
xExT = x 5+x 4+ x 3+ x 2 (“0 1 1 1 1 0 0”), bit m6 errado.
ix. f) Verifica-se se 0 xgxExT , detetando erros:
T(x)+E(x) = 0 1 1 1 1 0 0 g(x) = 1 0 1 1
– 0 0 0 0 q(x) = 0 1 1 0
1 1 1 1
– 1 0 1 1
1 0 0 0
– 1 0 1 1
0 1 1 0
– 0 0 0 0
1 1 0
p4 p2 p1
x. Pela equação 13.44, o resto de xgxExT é igual ao resto de xgxE .
Também o quociente de xgxExT é igual à soma dos quocientes de
xgxT e xgxE .
E(x) = 0 0 1 0 0 0 0 g(x) = 1 0 1 1
– 0 0 0 0 q(x) = 0 0 1 0
0 1 0 0
– 0 0 0 0
1 0 0 0
– 1 0 1 1
0 1 1 0
– 0 0 0 0
1 1 0
236 Exercícios resolvidos Carlos Meneses
24. (secção 13) Em relação ao código Hamming H(7,4).
k) Qual o polinómio gerador correspondente?
l) A partir do polinómio gerador obtido na alínea anterior, recalcule a matriz
geradora.
Resolução:
i. a) Este código, sendo H(7,4), tem k=4 e n=7.
ii. Relembre-se que, para manter a estrutura cíclica, xg tem que ser um fator de
11 7 xxn e,
1111 2337 xxxxxx .
iii. Como a ordem do polinómio gerador tem que ser 3 kn , duas hipóteses são
possíveis:
13 xxxg ou 123 xxxg
iv. b) A linha k=4 (última linha) da matriz G é igual aos coeficientes de xg , pois este
corresponde à palavra de código com apenas o bit de informação na coluna k ao nível
lógico “1” e com zeros à esquerda. Considerando a primeira situação para xg :
13 xxxg linha 4 de G = 0 0 0 1 0 1 1
v. Pelo que se obtêm, para a matriz geradora com a matriz identidade e linha 4 completa:
1101000
0100
0010
0001
G
vi. Para se obter a linha 3 de G roda-se a linha 4 para a esquerda (estrutura cíclica): linha
4 de G rodada = 0 0 1 0 1 1 0
vii. Como a coluna k=4 tem valor 0 mantêm-se a estrutura da matriz identidade e esta
linha corresponde à linha 3. Obtêm-se então para a matriz geradora com a matriz
identidade e linhas 3 e 4 completas:
110
011
1000
0100
0010
0001
G
viii. Para se obter a linha 2 de G roda-se a linha 3 para a esquerda:
linha 3 de G rodada = 0 1 0 1 1 0 0
Exercícios resolvidos 237
ix. Como a coluna 4 tem valor 1, soma-se em módulo-2 a linha 4:
linha 3 de G rodada 0 1 0 1 1 0 0
linha 4 de G + 0 0 0 1 0 1 1
----------------------------------------
linha 2 0 1 0 0 1 1 1
x. Pelo que se obtêm, para a matriz geradora com a matriz identidade e linhas 2, 3 e 4
completas:
110
011
111
1000
0100
0010
0001
G
xi. Para se obter a linha 1 de G roda-se a linha 2 para a esquerda:
linha 2 de G rodada = 1 0 0 1 1 1 0
xii. Como a coluna 4 tem valor 1, soma-se em módulo-2 a linha 4:
linha 2 de G rodada 1 0 0 1 1 1 0
linha 4 de G + 0 0 0 1 0 1 1
----------------------------------------
linha 1 1 0 0 0 1 0 1
xiii. Pelo que se obtêm, para a matriz geradora:
110
011
111
101
1000
0100
0010
0001
G
xiv. Comparando a matriz de paridades P da matriz geradora agora obtida com a matriz da
equação 13.38, verifica-se que a linha 3 (m5) da matriz da equação 13.38 corresponde
agora à linha 1, a linha 1 (m7) corresponde agora à linha 2 e a linha 2 (m6)
corresponde agora à linha 3, pelo que a ordem dos bits de informação terá que vir,
3675 mmmmm . Esta é também a ordem quando se utiliza o polinómio
gerador xg = x3+ x1+1, conforme equação 13.45.
238 Exercícios resolvidos Carlos Meneses
25. (secção 13) Calcule o checksum do código IP checksum tendo como bits de
informação a sequência 100EF3459ABCA892 (em hexadecimal) com sub-blocos de
4 dígitos (16 bits). Verifique a soma do conjunto dos sub-blocos, em sequência e aos
pares.
Resolução:
xv. Divide-se a sequência a codificar em subconjuntos de 4 dígitos hexadecimais,
resultando nos números 100E, F345, 9ABC e A892.
xvi. A adição destes números é: 100E+F345+9ABC+A892=246A1
xvii. A adição em complemento para um requer que se adicione o último arrasto (2) à soma
sem esse arrasto: 46A1+2=46A3.
xviii. Somando 2 a 2 em sequência, obtêm-se o mesmo resultado:
100E+F345=10353 0353+1=0354
0354+9ABC=9E10 9E10
9E10+A892=146A2 46A2+1=46A3
xix. Adicionando aos pares com soma final obtêm-se o mesmo resultado:
100E+F345=10353 0355+1=0354
9ABC+A892=1434E 434E+1=434F
0354+434F=46A3 46A3
xx. O complemento para um de 46A3 é FFFF–46A3=B95C.
xxi. É transmitida a informação inicial mais o código checksum:
100EF3459ABCA892 B95C.
xxii. O recetor repete este procedimento incluindo o código checksum:
100E+F345+9ABC+A892+ B95C=2FFFD;
xxiii. Adicionando o arrasto (2) dará FFFD+2=FFFF
xxiv. Este valor é sempre FFFF (todos os bits a 1), cujo complemento para um é 0000,
indicando que não existem erros. Qualquer outro valor indicaria que foram cometidos
erros no canal de comunicação e os dados deveriam ser retransmitidos.
Exercícios propostos 239
Exercícios propostos
1. (secção 3) Suponha um sinal com largura de banda de 10 kHz e amplitude de 10 V.
a) Qual a frequência mínima para amostragem deste sinal sem erro?
b) Calcule os valores de quantificação e os valores de decisão para um quantificador
uniforme midtread que permita codificar o sinal em PCM com um débito binário
total de 40 kbit/s;
c) Calcule a SNR de quantificação nas condições da alínea anterior, assumindo uma
sinusoide como sinal de entrada.
2. (secção 4) Suponha um sinal com uma distribuição de amplitudes uniforme entre –1
e +1 V. A largura de banda do sinal é de 5 kHz.
a) Qual a frequência mínima para amostragem deste sinal sem erro?
b) Calcule os valores de quantificação e os valores de decisão para um quantificador
midrise que permita codificar o sinal em PCM uniforme com um débito binário de
20 kbit/s;
c) Calcule a SNR de quantificação nas condições da alínea anterior;
d) Qual a SNRq se a quantificação fosse companding Lei-A (A=87,56)?
e) Qual a SNRq se o quantificador for obtido através do algoritmo de quantificação
ótima?
3. (secção 3) Suponha um sinal com uma distribuição gaussiana de média 1 V e
variância 2,25 W, aplicado à entrada de um quantificador uniforme cuja excursão
varia entre –3,5 e 5,5 V e cujo intervalo de quantificação é de 35,16 mV.
a) Calcule a potência do sinal;
b) Qual é a potência do ruído de quantificação? Está a fazer alguma aproximação?
c) Determine a relação sinal/ruído de quantificação com este sinal;
d) Qual o débito binário deste codificador, sabendo que a largura de banda do sinal é
de 2 kHz?
4. (secção 5.1) Num codificador DPCM com preditor unitário, o valor máximo de
quantificação do erro de predição é de 0,5 V, sendo utilizado um quantificador
midrise de 4 intervalos de quantificação. Uma sequência de bits recebidos no recetor
é: “00100111”.
a) Determine o quantificador. Assuma um código numérico binário sequencial do
valor de quantificação mais pequeno para o mais alto.
b) A quantas amostras corresponde a sequência de bits recebida?
c) Determine o sinal descodificado para as amostras respetivas. Assuma que o
valor predito na primeira amostra é 0.
240 Exercícios propostos Carlos Meneses
5. (secção 5.1) Suponha um sinal sinusoidal, amostrado a 6 kHz com 7 bit/amostra.
a) Qual é a SNRq quando este sinal é codificado com PCM uniforme?
b) Qual a SNR de quantificação para PCM companding Lei-A? Porque é que este
valor é pior do que o obtido com quantificador uniforme?
c) Qual a frequência do sinal de entradapara que a SNRq em DPCM com preditor
unitário seja igual à do PCM uniforme?
d) Suponha que aumenta a frequência de amostragem para o dobro. Qual a variação
da SNR?
e) Qual a caraterística do qual o DPCM tira partido, que permite a variação da
alínea anterior?
f) Qual o aumento do débito binário correspondente à alínea d)?
g) Existiria um processo mais eficiente de melhorar a qualidade? Qual?
h) Qual o aumento do débito binário correspondente à alínea anterior?
6. (secção 5.1) Suponha um sinal a codificar com 15 kHz de largura de banda,
amplitude 1 V e potência de 1/500 W.
a) Quantos bits (aproximadamente) são necessários para quantificar este sinal com 38
dB de relação sinal-ruído em PCM uniforme?
b) Qual o débito binário desta codificação?
c) Se a autocorrelação de primeira ordem (não normalizada) for de 1/570 W, qual o
ganho de predição e respetiva relação sinal-ruído de quantificação, para um
codificador DPCM unitário?
d) Calcule os valores de quantificação e os valores de decisão que permita codificar o
sinal em DPCM unitário que não produza ruído granular e com um débito binário
total de 60 kbit/s.
7. (secção 5.1) Suponha um sinal com uma distribuição uniforme entre –1 e +1 V. A
largura de banda do sinal é de 4 kHz e pretende-se um débito binário máximo de 56
kbit/s. Admita que a autocorrelação normalizada de 1ª ordem é de 0,9.
a) Calcule a potência do sinal, bem como a sua variância;
b) Determine a SNRq de um codificador PCM uniforme com este sinal;
c) Determine a SNRq usando um codificador DPCM, em que o preditor é adaptado de
1ª ordem;
d) Calcule o valor máximo do quantificador;
e) Determine a SNRq com o valor máximo do quantificador de 0,8 V.
8. (secção 5.1) Suponha um sinal sinusoidal de amplitude 1 V, amostrado a 10 kHz e
codificado com 8 bit/amostra.
a) Qual a SNRq quando este sinal é codificado com PCM uniforme?
b) Qual a frequência do sinal de entrada para que a SNRq em DPCM unitário seja igual
à do PCM uniforme?
Exercícios propostos 241
c) Suponha que aumenta a frequência de amostragem para o dobro; Qual a variação da
SNRq usando PCM uniforme?
d) Repita a alínea anterior para DPCM unitário, mantendo a frequência do sinal
calculada na alínea b);
e) Nas condições da alínea b) (sem o aumento da frequência de amostragem para o
dobro da alínea c)), qual o aumento da SNRq assumindo um preditor de 1ª ordem
adaptado ao sinal?
f) Em relação à alínea e) determine o valor máximo do quantificador;
g) Repita as alíneas e) e f) usando um coeficiente de predição de 0,8.
9. (secção 5.1) Suponha um sinal com média 0 V e variância 2 W, tendo uma largura
de banda de 5 kHz.
a) Determine o valor do intervalo de quantificação se este sinal for codificado em PCM
uniforme com um débito binário de 60 kbit/s, com uma SNRq de 29,92 dB.
b) Qual o valor do valor máximo de quantificação?
c) Determine o valor máximo do quantificador se este sinal for codificado em DPCM
com o mesmo débito binário e a mesma SNR;
d) Que tipo de preditor está a assumir na alínea anterior?
e) Se o valor máximo possível da SNRq em DPCM unitário for de 36 dB, qual o valor
da autocorrelação normalizada de 1ª ordem do sinal de entrada?
10. (secção 5.1) Considere um sinal de entrada, m(t), de média 0 V e variância 2 W e
com uma largura de banda 5 kHz.
a) Determine o valor do intervalo de quantificação, se este sinal for quantificado em
PCM uniforme com uma SNRq de 25,84 dB;
b) Qual a amplitude do sinal se este for codificado com 50 kbit/s?
c) Suponha que o sinal foi codificado em DPCM com um preditor adaptado de 1ª
ordem e uma variação máxima do erro de predição de 2 V. Qual o ganho de
predição?
d) Qual o número de bits por amostra para uma SNRq de 25,84 dB?
11. (secção 5.1) Considere um sinal de entrada, m(t) com a seguinte autocorrelação:
10000
100002100002 sensincRm
a) Qual a potência do sinal?
b) Supondo que o sinal é codificado em DPCM adaptado de 1ª ordem, amostrado a
34,5 kHz, qual o valor do coeficiente de predição?
c) Qual o coeficiente de predição para um preditor de 2ª ordem?
242 Exercícios propostos Carlos Meneses
12. (secção 5.2) Num descodificador ADM o algoritmo de adaptação do passo de
quantificação é dado por:
nb
nbnn 15,011 .
Os níveis lógicos dos bits recebidos são:
n 0 1 2 3
1 0 1 1
No instante n = –1 o valor do sinal quantificado mq[n] = 0,5, o valor do passo de
quantificação [n] = 1 V, e o nível lógico do bit de codificação é “0”. Calcule o
sinal quantificado mq[n].
13. (secção 8) Considere uma transmissão digital com código BNRZ. Diga em que
sequências se conseguem detetar erros na transmissão e comente.
a) + 0 0 + b) + 0 – + c) + 0 – –
14. (secção 8) Considere uma transmissão em NRZI.
a) Transmite os bits com os níveis lógicos “0 1 0 1 1 0 0 1”. A polaridade do
último símbolo transmitido antes desta sequência é negativa (a[–1]=0). Qual a
polaridade dos símbolos transmitidos?
b) Recebe os símbolos com polaridade + – – + + – + – e a polaridade do último
símbolo transmitido é negativa (a[–1]=0). Qual os níveis lógicos dos bits
transmitidos?
15. (secção 9) Considere um canal de fibra ótica, de comprimento 275 km (Distância
entre Lisboa e Porto), utilizado no comprimento de onda 1550 nm (caraterísticas na
tabela 3.1).
a) Calcule o atraso de propagação.
b) Se a transmissão fosse feita por satélite, quantas vezes mais demoraria o sinal a
propagar-se?
c) Se o sinal for transmitido a um débito de 50 Mbit/s em pacotes de 2.000 bits,
qual o tempo de transmissão de cada pacote?
d) Supondo que os equipamentos utilizados originam um atraso de 60 s, qual o
atraso total?
e) Numa conversa telefónica, qual o tempo mínimo entre uma eventual pergunta de
um dos oradores e a correspondente resposta?
f) Qual a atenuação?
Exercícios propostos 243
16. (secção 10) As figuras abaixo representam o padrão de olho, com varrimento de 2
bits, da transmissão de um código de linha.
Numa das figuras o canal tem ruído e noutro não.
Diga, justificando,
a) Que tipo de código é representado?
b) Existe interferência intersimbólica?
c) Está à espera de muitos erros nesta transmissão?
17. (secção 11) Considere uma transmissão digital binária em PNRZ, num canal com
largura de banda 1 GHz e em que o ruído tem uma densidade espetral de potência de
10-9 W/Hz. A probabilidade de erro de bit deve ser no máximo 9107,7 .
a) Qual o débito binário com critério de primeiro zero espetral?
b) Qual a energia por bit?
c) Qual a amplitude do sinal transmitido?
18. (secção 11) Considere uma transmissão binária em PNRZ com um débito binário de
10 kbit/s e com tensões de 3 V. O sinal é transmitido num canal AWGN com
densidade espetral de potência de 100 W/Hz.
a) Desenhe o diagrama de blocos recetor ótimo normado;
b) Calcule as tensões sem ruído e a potência do ruído após o filtro adaptado;
c) Determine o valor da BER deste sistema;
d) Considere que a amplitude do sinal de base do produto interno é de 10 V;
Calcule as tensões sem ruído e a potência do ruído após o filtro adaptado e
determine o valor da BER.
0 0.5 1 1.5 2
-0.5
0
0.5
1
1.5
0 0.5 1 1.5 2
-0.5
0
0.5
1
1.5
244 Exercícios propostos Carlos Meneses
19. (secção 11) Considere uma transmissão digital binária UNRZ, com débito binário de
24 kbit/s. A amplitude do símbolo “1” é de 2 V. O canal é AWGN (ruído branco,
gaussiano e aditivo) com densidade espetral de potência de 1W/Hz.
a) Calcule as tensões sem ruído à saída do filtro adaptado do recetor ótimo
normado, para cada símbolo, bem como a potência do ruído;
b) Desenhe o diagrama de blocos do recetor ótimo;
c) Calcule a BER.
20. (secção 11) Considere uma transmissão binária num canal com uma largura de
banda de 3.300 Hz (banda telefónica). O canal é AWGN com densidade espetral de
potência de 200W/Hz. O código de linha usado é Manchester, mas as amplitudes
recebidas são 2 V para o símbolo “0” e 3 V para o símbolo “1”.
a) Determine o máximo valor do débito binário se o filtro de formatação de pulsos
tiver um fator de rolloff de 0,5;
b) Desenhe o diagrama de blocos de um recetor ótimo normado;
c) Calcule as tensões correspondentes aos símbolos lógicos após o filtro adaptado;
d) Calcule a BER desta transmissão;
e) Em média, em quanto tempo é cometido um erro de bit?
21. (secção 11) Considere uma transmissão binária em que o canal tem uma densidade
espetral de potência Gw(f)= N0/2 W/Hz, com os símbolos seguintes:
a) Qual a energia média por bit (função de A e Tb)?
b) Desenhe o recetor ótimo normado adaptado ao símbolo “1”;
c) Calcule, função de Eb, as tensões y1 e y0, correspondentes ao símbolo “1” e “0”
sem ruído, no instante de amostragem;
d) Qual o valor da BER (função de Eb, e N0)?
e) Se o símbolo “0” fosse representado por S0(t)=0 V (unipolar) e não alterasse o
valor de A, a BER seria alterada? Ganharia alguma coisa com esta mudança?
Exercícios propostos 245
22. (secção 12) Considere uma transmissão digital, com débito binário de 40 kbit/s. A
largura de banda do canal é de 10 kHz, e o filtro de formatação de pulsos tem um
fator de rolloff de 0,2. O sinal transmitido é PAM digital, sendo a diferença entre
símbolos adjacentes de 1 V. O canal é do tipo AWGN, com densidade espetral de
potência de 10-6 W/Hz.
a) Calcule o máximo débito de símbolos;
b) Desenhe o recetor ótimo com filtro adaptado normado;
c) Calcule a potência do ruído à saída do filtro;
d) Calcule as tensões à saída do filtro adaptado para distinguir as diversas
hipóteses;
e) Calcule a probabilidade de erro de bit.
23. (secção 13) Considere uma transmissão com BER = 10-6, de blocos de 10 bits,
incluindo 1 bit de paridade.
a) Qual a razão do código?
b) Qual a probabilidade de retransmissão?
c) Qual a probabilidade de erro de bit?
24. (secção 13) Considere o seguinte código BCC, em que os bits m correspondem aos
bits de informação, os bits pn aos bits de paridade de linha e os bits cn ao carácter de
verificação de bloco, sendo utilizada em ambos os casos paridade par.
31m 21m 11m 1p 0 0 1 0 0 0 1 0
32m 22m 12m 2p 0 1 1 0 0 1 1 0
33m 23m 13m 3p 1 0 0 1 1 0 1 1
3c 2c 1c 0c 0 1 0 1 0 1 0 1
bits recebidos situação 1 bits recebidos situação 2
a) Qual a razão do código?
b) (situação 1) Existem bits errados? Se sim, é possível corrigi-los? Se sim,
corrija-os. Se não, é possível perceber em que subconjunto de bits foram
produzidos os erros?
c) Repita a alínea anterior para a situação 2.
246 Exercícios propostos Carlos Meneses
25. (secção 13) Considere uma transmissão binária em PNRZ com um débito binário de
10 kbit/s e com tensões de 3 V. Adicionalmente considere que o sinal é
corrompido por ruído branco, gaussiano e aditivo (canal AWGN), com densidade
espetral de potência de 100 W/Hz.
a) Determine o valor da BER deste sistema;
b) Considere que se utiliza um código de repetição de 3 bits e que não altera o
débito binário no canal. Qual o débito binário dos bits da informação?
c) Considere que não altera a amplitude do sinal transmitido. Qual a nova BER
deste sistema (após correção)?
d) Se mantiver o débito binário dos bits da informação igual ao débito binário sem
codificação, qual a nova BER do sistema?
e) Compare os resultados anteriores e comente.
26. (secção 13) Uma transmissão em PRZ com um débito no canal de 24 kbit/s,
protegida por um código de repetição de 3 bits, tem em média 1 erro em cada 1.000
segundos antes da correção.
a) Qual o débito binário dos bits da informação?
b) Qual a probabilidade de erro de bit antes da correção?
c) Calcule a relação sinal-ruído Eb/No;
d) Qual o tempo médio entre erros após correção?
e) Se gerar a sequência de dados binária “1 0”, qual a sequência a transmitir após a
aplicação do código de correção?
f) Recebendo a sequência de bits aos níveis lógicos “1 0 1 1 1 1”, quais os bits
descodificados?
27. (secção 13) Numa transmissão protegida com um código H(7,4) ,
a) Qual o resultado da aplicação da sequência binária “1 0 1 0” (m7 m6 m5 m3)?
b) Qual o resultado da aplicação da sequência binária “0 1 0 1” (m7 m6 m5 m3)?
c) Suponha que durante a transmissão dos bits correspondentes à alínea anterior
erra o bit m3 e p4. Quais os bits descodificados?
d) Recebendo a sequência de bits aos níveis lógicos “1 1 1 0 1 0 1”, qual a
sequência de bits de informação após correção?
Exercícios propostos 247
28. (secção 13) Uma transmissão binária polar tem um débito binário de 40 kbit/s e uma
BER de 10-5.
a) Calcule, em média, em quanto tempo é cometido um erro;
b) Se esta transmissão passar a ser protegida com um código de correção de erros
Hamming H(15,11), mantendo o débito binário dos bits da informação, qual o
débito binário no canal?
c) Qual o aumento da amplitude do sinal transmitido, de modo a que se mantenha a
mesma energia por bit?
d) Qual a BER deste sistema (após correção)?
e) De quanto em quanto tempo é cometido um erro?
f) Supondo que mantêm a amplitude do sinal transmitido inalterada em relação à
alínea a), qual a nova BER?
g) De quanto em quanto tempo é cometido um erro no sistema?
h) Qual o resultado da aplicação da sequência de bits ao nível lógico
“0 1 0 1 0 0 1 1 0 1 1” a um código de correção H(15,11)
(m15 m14 m13 m12 m11 m10 m9 m7 m6 m5 m3)?
i) Quais os bits descodificados se for recebida a sequência binária com os níveis
lógicos “0 1 0 1 1 0 1 1 1 0 1 0 1 1 0”?
29. (secção 13) Num código com distância de Hamming mínima de 5.
a) Quantos bits errados se conseguem detetar?
b) Quantos bits se conseguem corrigir?
30. (secção 13) Considere o código de controlo de erros cujas palavras estão
organizadas na forma c=[m2 m1 p0 p1], tal que p0= m2+ m1 e p1= m1.
a) Qual a matriz de geração e de verificação para este código?
b) Apresente todas as palavras de código.
c) Calcule a distância mínima de Hamming e as capacidades de deteção e correção
de erros.
d) Suponha que se transmite a mensagem “0 1” e que sobre a palavra de código
resultante é aplicado o padrão de erro “1 0 1 0”. O que resulta no recetor?
e) Suponha que se transmite a mensagem “0 1” e que sobre a palavra de código
resultante é aplicado o padrão de erro “1 0 0 1”. O que resulta no recetor?
248 Exercícios propostos Carlos Meneses
31. (secção 13) Para um código CRC com polinómio gerador 12 xxg . Suponha
um código com palavras de 6 bits.
a) Este polinómio gera um código cíclico?
b) Pretende-se codificar os bits “1 0 0 1”. Quais os bits enviados?
c) São recebidos os bits “1 0 0 0 1 1”. Verifique se existem erros.
d) Qual a dimensão da rajada capaz de ser sempre detetada?
e) Qual a relação de rajadas não detetadas?
32. (secção 13) Para um código CRC com polinómio gerador 12 xxg . Suponha
um código com palavras de 6 bits. Ver o exercício anterior.
a) Qual a matriz geradora correspondente a este código?
b) É possível corrigir erros? Porquê?
c) Utilizando a matriz geradora, quais os bits enviados quando com os bits de
informação “1 0 0 1”?
d) São recebidos os bits “1 0 0 0 1 1”. Verifique se existem erros.
e) Qual a equação através de operações ou-exclusivo que relacionam os bits de
paridade com os bits de informação?
33. (secção 13) Considere um código IP checksum tendo como bits de informação a
sequência hexadecimal 75A38B0CFFEE em sub-blocos de 4 dígitos hexadecimais.
a) Qual a razão do código?
b) Qual o checksum?
c) Recebem-se os bits 75A38B0CFF60FF60. Existem erros?
34. (secção 13) Suponha um código de controlo de erros com 4 palavras de código (C1,
C2, C3, C4) definidas por:
C1= 0 0 0 0 0 0
C2= 0 0 0 1 1 1
C3= 1 1 1 0 0 0
C4= 1 1 1 1 1 1
a) Qual a distânciamínima de Hamming deste código?
b) Qual a capacidade de deteção e correção do código?
c) Qual a razão do código?
Exercícios propostos 249
Soluções (não inclui respostas teóricas nem figuras):
1. a) fs=20 kHz;
b) Valores de quantificação [–5 0 5 10] V
Valores de decisão [ –2,5 2,5 7,5 ] V;
c) SNRq=13,8 dB
2. a) fs=10 kHz; b)
b) Valores de quantificação [–0,75 –0,25 0,25 0,75] V
Valores de decisão [ –0,5 0 0,5 ] V;
c) SNRq=12,04 dB; d) SNRq=2,04 dB;
e) SNRq=12,04 dB.
3. a) P=3,25 W; b) 1032 q W. Sim, não se leva em conta “alguma” saturação; c)
SNRq=45 dB; d) Rb=32 kbit/s.
4.
a) Valores de quantificação [–0,375 –0,125 0,125 0,375] V
Valores de decisão [ –0,25 0 0,25 ]V;
Código 00 01 10 11
b) 4;
c)
n código eq[n] mp[n] mq[n]
0 00 –0,375 0 –0,375
1 10 0,125 –0,375 –0,25
2 01 –0,125 –0,25 –0,375
3 11 0,375 –0,375 0
5. a) SNRq=43,9 dB; b) SNRq=32,14 dB; c) f’=1.000 Hz;
d) Aumento de 5,72 dB;
e) A correlação entre amostras consecutivas;
f) Aumento de 42 kbit/s; g) Aumento do número de bit/amostra;
h) Aumento de 6 kbit/s.
6. a) R=10 bit/amostra; b) Rb=300 kbit/s;
c) Gp=6,1 dB SNR=44,1 dB;
d) Valores de quantificação [–0,25 0 0,25 0,5] V
Valores de decisão [ –0,125 0,125 0,375 ] V.
7. a) )3(33,02 mP W; b) SNRq=42,14 dB; c) SNRq=49,35 dB;
d) V1=0,44 V; e) SNRq=44,08 dB.
8. a) SNRq=49,92 dB; b) f=1666,6(6) Hz; c) Aumento de 0 dB;
d) Aumento de 5,72 dB; e) 1,25 dB; f) V1=0,87 V;
g) Aumento de 0,76 dB e V1=0,92 V;
250 Exercícios propostos Carlos Meneses
9. a) q=0,156 V;
b) V=5 V;
c) V1=5 V; d) Não depende do preditor; e) r[1]=0,88.
10. a) q=0,25 V; b) mmax=4 V; c) Gp=6,02 dB; d) R=4 bit/amostra.
11. a) P=2 W; b) a=0,867; c) a=0,53.
12.
n b[n] [n] eq[n] mp[n] mq[n]
–1 –1 1 0,5
0 1 0,5 0,5 0,5 1
1 –1 0,25 –0,25 1 0,75
2 1 0,125 0,125 0,75 0,875
3 1 0,1875 0,1875 0,875 1,0625
Soluções (não inclui comentários nem figuras):
13. a) Tem erros; b) Não tem erros; c) Tem erros.
14. a) – + + – + + + – ; b) c[n] = “1 1 0 1 0 1 1 1”.
15. a) 1,375 ms; b) 174,5; c) 40 s; d) 1,475 ms; e) 2,95 ms; f) 55 dB.
16. a) UNRZ; b) Não; c) Não.
17. a) Rb= 1 Gbit/s; b) Eb= 32 nJ; c) A=5,66 V.
18. a) Figura 5.5; c(t)=100 V b) yo=–30 mV, y1=30 mV; , ot=0 V;
c) BER=1,35x10-3;
d) yo=–3 mV, y1=3 mV, 2n 10-6 W, BER=1,35x10-3.
19. a) yo=0 V, y1=12,9 mV;
b) Figura 5.5 ; c(t)=154,9 V, ot=6,45 mV;
c) BER=5,4x10-11.
Exercícios propostos 251
20. a) Rb=2.200 bit/s; b) c(t) bit a “1” Manchester com amplitude 46,9 V, ot=10,66
mV;
c) yo=–42,64 mV, y1=63,96 mV; d) BER=8,2x10-5; e) Te=5,5 s
21. a) Eb=A2Tb; b) bRtc ; c) bEy 1 ; 00 y ;
d)
042
1
N
EerfcBER b
e) A BER não seria alterada; Sim, pois diminuiria a energia por bit sem alterar a
BER.
22. a) sR =13,3(3) kbaud; b) c(t)=115,47 V; c)
2
n 1 W;
d) =0 V, 8,66 mV, 17,32 mV, 25,98 mV; e) BER=4,35x10-6.
23. a) 109cR ; rP 10
-5; b) 'BER 9x10-12.
24. a) 169cR ; b) sim; sim; bit m31=“1”;
c) sim; não; os bits (m31 e m13) ou (m11 e m33) estão errados.
25. a) BER=1,35x10-3 b) bR ’=3,3(3) kbit/s;
c) BER'=5,5x10-6; d) BER'=5,2x10-3.
26. a) bR ’=8 kbit/s; b) BER=4,17x10-8; c) 010log10 NEb 11,6 dB;
d) Te=2,4 x1010 s (7,6 séculos); e) “1 1 1 0 0 0”; f) “1 1”.
27. a) “1 0 1 0 0 1 0” (m7 m6 m5 p4 m3 p2 p1); b) “0 1 0 1 1 0 1”;
c) “1 1 0 0” (m7 m6 m5 m3); d) “1 0 1 1” (m7 m6 m5 m3).
28. a) eT =2,5 s; b) bR =54,545 kbit/s; c) Aumento de 1,168;
d) BER’=2,1x10-9; e) eT ’=11.900 s (3 horas e 1.100 s);
f) BER’=3,6x10-7; g) eT ’=70 s; h) “0 1 0 1 0 0 1 1 1 0 1 0 1 1 0”.
i) Síndrome=“1 1”; “0 1 0 1 0 0 1 1 0 1 1”;
252 Exercícios propostos Carlos Meneses
29. a) l=4; b) t=2.
30. a)
1110
0101
G
10
01
11
01
TH
b) c0=[0 0 0 0], c1=[0 1 1 1], c2=[1 0 1 0], c3=[1 1 0 1].
c) dmin=2, t=0, l=1. d) Descodifica c3.
e) Corrige para c2 ou deteta erro.
31. a) Para um código ser cíclico 12 xxg tem que ser raiz de 11 6 xx n , o
que se verifica, pois 1
1
1 24
2
6
xx
x
x
e resto 0.
b) “1 0 0 1 1 1”; c) r(x)= “0 1”. Existem erros;
d) 2, ordem de xg ; e) BFER=0,25.
32. a)
10
01
10
01
1000
0100
0010
0001
G .
b) Não, porque a matriz de paridade tem linhas iguais.
c) “1 0 0 1 1 1”; d) S= 0 1 Existem erros;
e) 242 mmp , 131 mmp .
33. a) 43cR ; b) FF60. c) Soma igual a 008E. Existen erros.
34. a) dmin=3; b) d=1, t=2; c) 62cR .
Exercícios propostos em MATLAB 253
Exercícios propostos em MATLAB
PCM – Modulação por código de pulso
(secções 3 e 4)
Funções a desenvolver em Matlab:
1. Uma função que crie um sinal sinusoidal, que tenha como entradas:
• A amplitude, frequência e fase inicial do sinal a gerar.
• A frequência de amostragem.
• O tempo (em segundos) do sinal a gerar.
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2. Uma função que crie as tabelas de quantificação uniforme (o livro de código e a
partição), que tenha como entradas:
• O número de bits de codificação por amostra.
• O valor máximo do quantificador.
• O tipo de quantificador (midtread ou midrise).
E tenha como saídas:
• Os valores de quantificação e decisão.
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3. Uma função que implemente um codificador (transmissor) PCM e que tenha como
entradas:
• Uma amostra do sinal a codificar.
• O número de bits de codificação por amostra.
• Os valores de decisão do quantificador a utilizar.
E tenha como saída:
• O código PCM em binário.
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
254 Exercícios propostos em MATLAB Carlos Meneses
4. Uma função que implemente um descodificador (recetor) PCM e que tenha como
entradas:
• O código PCM em binário.
• Os valores de quantificação do quantificador a utilizar.
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5. Uma função que calcule a SNRq e que tenha como entradas:
• O sinal original.
• O sinal quantificado.
• O número de bits de codificação por amostras.
• A tensão máxima de quantificação.
E tenha como saída:
• A relação sinal-ruído (teórica e real) entre os sinais de entrada (em decibéis).
Problemas
1. Produza 1 s de um sinal sinusoidal com amplitude 1 V, frequência 1.300 Hz,
amostrado a 8 kHz (frequência de amostragem da banda telefónica). Codifique e
descodifique este sinal em PCM com 3 bits por amostra e com um quantificador
uniforme midrise e midtread.
a) Codifique e descodifique do sinal. Visualize o código transmitido e o sinal
descodificado para as 8 primeiras amostras. Qual o erro de quantificação?
Nota: compare os resultados com os dos exercícios resolvidos 1 e 2.
b) Produza os gráficos do sinal original e do sinal descodificado. Determine o
valor da SNRdB teórica e compare com o valor real.
c) Produza o gráfico do ruído de quantificação. Compare o seu valor máximo
com o valor teórico.
d) Produza o gráfico do sinal original em relação ao sinal descodificado (não
interligue os pontos). O que é que este gráfico representa?
Exercícios propostos em MATLAB 255
2. Repita o problema 1 alíneas a) e b), com um quantificador midrise e midtread e6 bits
por amostra. Utilize um sinal de fala como entrada.
a) Em termos do ruído de quantificação, quais são as principais diferenças entre
os dois quantificadores?
b) Produza o histograma do ruído de quantificação, com o número de intervalos
suficientemente elevado para obter uma boa definição. Este gráfico explica a
diferença de resultados entre os valores da SNRq teórica e real?
3. Codifique e descodifique um sinal de fala em PCM com quantificação uniforme, com
um quantificador midrise, e com um número de bits por amostra R={3, 4, 5, 6, 7, 8}.
Oiça o sinal original e os sinais descodificados. Produza um gráfico com os valores da
SNRdB teórica e real em termos do número de bits por amostra (coloque o número de
bits no eixo das abcissas o os valores da SNRdB no eixo das ordenadas). Comente.
4. Comprima um sinal de fala por uma não linearidade companding Lei-A (A=87, 56).
a) Produza os histogramas do sinal original e do sinal de comprimido e compare
as duas distribuições. Quais são as principais diferenças e o que é que estas
diferenças significam?
b) Produza o gráfico do sinal original em função do sinal de descodificado (não
interligue os pontos). O que é que este gráfico representa?
5. A partir de tabelas de quantificação uniforme midrise de 3 bits, produza as respetivas
tabelas em PCM companding. Produza o gráfico dos valores de quantificação uniforme
em função dos respetivos valores comprimidos. Comente os resultados.
Nota: compare os resultados com os do exercício resolvido 5.
6. Implemente um sistema PCM companding com 8 bits de codificação por amostra e
um quantificador midrise e determine o valor da SNRdB real e teórica. Implemente de 2
formas e compare os resultados.
Através do sistema representado na figura 4.3.
Criando tabelas de quantificação não uniformes (expansão de tabelas de
quantificação uniformes).
256 Exercícios propostos em MATLAB Carlos Meneses
7. Para um codificador PCM companding Lei-A com 8 bits por amostra, mantenha a
mesma tabela de quantificação e varie a potência (varie a amplitude sem saturar o
quantificador) de um sinal de fala e calcule a SNRdB. Produza um gráfico com os valores
da SNRdB real em termos da potência do sinal (Potência em decibéis no eixo das
abcissas em função da SNRdB no eixo das ordenadas).
Nota: Ver figura 4.5.
8. Produza o histograma de uma sinusoide com uma resolução de 100 pontos e calcule
os valores ótimos de quantificação (algoritmo Max-Lloyd) para 3 bits por amostra. Tire
conclusões. Repita para um sinal de fala.
9. Codifique e descodifique um sinal de fala com um quantificador ótimo, com
R ={3, 4, 5, 6, 7, 8} bits por amostra. Produza um gráfico com os valores da SNRdB em
termos do número de bits por amostra. Compare e comente os resultados obtidos em
PCM uniforme e companding.
Tenha em atenção as seguintes funções do MATLAB:
wavread – lê ficheiros tipo wav
wavwrite – grava ficheiros tipo wav
sound – toca um sinal
soundsc – normaliza e toca um sinal
quantiz – quantifica e codifica um sinal
compand – comprime ou descomprime
dec2bin – converte de decimal para binário
de2bi – converte de decimal para binário
bin2dec – converte de binário para decimal
bi2de – converte de binário para decimal
plot – cria um gráfico com um sinal
subplot – define áreas para gráficos
grid – desenha grelha num gráfico
hist – cria histograma
lloyds – cria tabelas de quantificação com o algoritmo Max-Lloyd
Exercícios propostos em MATLAB 257
DPCM e DM – Codificação preditiva
(secção 5)
Problema
1. Para um sinal sinusoidal amostrado a sf 8 kHz e frequência 12sf ,
a) Produza o gráfico de cada amostra do sinal em função da respetiva amostra
anterior (não interligue os pontos). Existe correlação entre as amostras e a
amostra anterior?
b) Calcule o erro de predição (preditor unitário) e[n] = m[n]−m[n−1] =
m[n]−mp[n]. Calcule o seu valor máximo. Quais são as vantagens em codificar
o erro de predição em vez do sinal original?
Nota: Num codificador DPCM a predição é feita a partir das amostras
quantificadas.
c) Calcule a potência do sinal de entrada e do erro de predição, o ganho de
predição e o valor máximo de quantificação através de
pG
VV
2
1 .
d) Calcule a autocorrelação normalizada do sinal de entrada para um atraso de
uma amostra. Compare com o valor teórico.
e) Calcule o ganho de predição e o valor máximo de quantificação a partir do
valor da autocorrelação e compare com os resultados obtidos na alínea b) e c).
f) Calcule o valor ótimo, aot, do coeficiente de predição de 1ª ordem e repita as
alíneas b), c) e e) para este preditor. Compare os valores obtidos com os dois
tipos de preditores.
2. Repita o exercício para uma frequência do sinal de entrada de 6sf , e um sinal de
fala. Compare e tire conclusões.
258 Exercícios propostos em MATLAB Carlos Meneses
Funções a desenvolver em Matlab:
1. Uma função que implemente um codificador (transmissor) DPCM, que tenha como
entradas:
• Uma amostra do sinal a codificar.
• O número de bits de codificação por amostra.
• Os valores de quantificação e decisão (o livro de código e a partição).
• O valor predito da amostra.
E tenha como saídas:
• O código binário em DPCM.
• A amostra descodificada.
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2. Uma função que implemente um descodificador (recetor) DPCM, que tenha como
entradas:
• O código binário em DPCM.
• Os valores de quantificação.
• O valor predito da amostra.
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3. Uma função que adapte um quantificador segundo o método proposto por Jayant
(secção 5.1.5), que tenha como entradas:
• O código binário em ADPCM.
• A tabela de adaptação.
• Os valores de quantificação e decisão.
E tenha como saídas:
• Os valores de quantificação e decisão adaptados.
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Exercícios propostos em MATLAB 259
4. Uma função que simule um canal digital gerando erros numa sequência binária e que
tenha como entradas:
• A sequência binária sujeita a erros.
• A probabilidade de erro de bit.
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Problemas
2. Codifique e descodifique um sinal sinusoidal em DPCM, com V1 calculado a partir
da autocorrelação. Utilize um quantificador uniforme midrise, com 2 a 6 bits de
codificação por amostra. Calcule as SNRq reais e teóricas nas seguintes situações:
a) Com preditor unitário.
b) Com preditor adaptado.
c) Com coeficiente de predição 0. Qual método de codificação está a utilizar?
d) Com preditor adaptado e quantificador adaptado (Jayant).
e) Com coeficiente de predição 0 e quantificador adaptado (Jayant). Que método
de codificação está a utilizar nesta situação?
3. Repita o problema anterior apenas para um valor de número de bits por amostra
(e.g. R=4), introduzindo 0,001 de erros de bit no canal de transmissão (entre o
transmissor e o recetor).
4. Liste por ordem os métodos de codificação em relação ao impacto dos erros no canal
e explique a causa deste impacto.
5. Implemente um codificador DM (como caso particular de DPCM) tendo como
entrada um sinal sinusoidal. Considere o passo de quantificação igual à máxima
variação entre amostras consecutivas. Calcule a SNRq. Analise o comportamento na
presença de erros.
6. Implemente um codificador ADM utilizando a equação 5.30. Analise o
comportamento na presença de erros. Compare a com a versão não adaptativa.
260 Exercícios propostos em MATLAB Carlos Meneses
Transmissão num Canal AWGN
(secções 10 e 11)
Funções a desenvolver em Matlab:
1. Uma função que gere uma sequência binária equiprovável, e que tenha como entrada:
• O número de bits a gerar.
. . . . . . .. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2. Uma função que gere o símbolo a “1” do código de linha Manchester e o código
correspondente a uma sequência binária, e que tenha como entradas:
• A sequência binária a codificar.
• A amplitude A do código de linha.
• O número T de pontos de simulação por símbolo (T é par).
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3. Uma função que implemente um canal AWGN. Esta função devolve o código de
linha com ruído e tem como entradas:
• O código de linha correspondente à sequência binária.
• A potência do ruído.
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4. Uma função que implemente um recetor ótimo para o código de linha bnário com
ruído. Esta função devolve a sequência binária descodificada, e tem como entradas:
• O código de linha com ruído.
• O símbolo ao nível lógico “1” utilizado no filtro adaptado.
• O valor do limiar de decisão .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Exercícios propostos em MATLAB 261
5. Uma função que gere o símbolo a “1” do código de linha UNRZ e o código
correspondente a uma sequência binária, e que tenha como entradas:
• A sequência binária a codificar.
• A amplitude A do código de linha.
• O número T de pontos de simulação por símbolo.
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
6. Uma função que gere o código de linha PAM – 2B1Q, e que tenha como entradas:
• A sequência binária a codificar.
• A distância entre símbolos a.
• O número T de pontos de simulação por símbolo.
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
7. Uma função que implemente um recetor ótimo para o código de linha PAM – 2B1Q,
com ruído. Esta função devolve a sequência binária descodificada, e tem como entradas:
• O código de linha com ruído.
• A distância entre símbolos a.
• O número T de pontos de simulação por símbolo.
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Problemas
1. Simule um sistema de transmissão digital num canal AWGN em MATLAB. O
sistema deve converter uma sequência binária num código de linha Manchester, UNRZ
ou 2B1Q, simular um canal AWGN adicionando ruído branco e gaussiano ao sinal a
transmitir e implementar um descodificador com filtro ótimo.
262 Exercícios propostos em MATLAB Carlos Meneses
O sistema tem como entradas (e valor de referência):
• O número de bits a simular (100 kbit).
• A amplitude A, do código de linha (1 V) ou a distância a (1 V) em 2B1Q.
• O número, T, de pontos de simulação por símbolo (4 pontos).
• A potência do ruído ou a SNR no canal de comunicação (1 W).
e tem como saídas:
• A sequência binária recebida.
• A BER.
• O valor teórico da BER.
Determine a BER real e teórica (Apêndice 10), faça um gráfico dos resultados e
comente a evolução da BER nas situações seguintes:
a) Variando A (ou a).
b) Variando T.
c) Variando a potência do ruído.
d) Variando 0NEb (ver figuras 11.10 e 12.5).
e) Para as codificações binárias, varie e verifique o valor ótimo.
2. Compare os três métodos, nomeadamente sobrepondo os gráficos obtidos em 1 d).
Tenha em atenção as seguintes funções do MATLAB:
rand, randn – gera números aleatórios
gt (>) – operador relacional maior que
ones – gera uma matriz de uns
erfc – função complementar do erro
semilogy – Escala logarítmica em ordenadas
cumsum – soma cumulativa
Exercícios propostos em MATLAB 263
Codificação para controlo de erros
(secção 13)
Funções a desenvolver em Matlab:
1. Uma função que gere uma sequência binária em que os símbolos sejam
equiprováveis, e que tenha como entrada:
• O número de bits a gerar.
• A probabilidade dos bits ao nível lógico “0”.
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2. Uma função que implemente um codificador por repetição e que tenha como
entradas:
• A sequência binária a codificar.
• O número de repetições.
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3. Uma função que simule um canal digital gerando erros numa sequência binária e que
tenha como entradas:
• A sequência binária sujeita a erros.
• A probabilidade de erro de bit.
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4. Uma função que implemente um descodificador por repetição e que tenha como
entrada:
• A sequência binária a descodificar.
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5. Uma função que implemente um codificador Hamming H(7,4) e que tenha como
entrada:
• A sequência binária a codificar.
264 Exercícios propostos em MATLAB Carlos Meneses
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
6. Uma função que implemente um descodificador Hamming H(7,4) e que tenha como
entrada:
• A sequência binária a descodificar.
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Problemas
1. Pretende-se simular um sistema de controlo de erros num canal digital. O sistema
deve codificar uma sequência binária através de um código por repetição, sujeitar a
sequência resultante a erros e descodificar corrigindo os erros.
a) Para o número de repetições de 3, avalie o codificador para diversos valores da BER
e compare os valores obtidos com os valores teóricos.
b) Para uma BER de 0,1, avalie o codificador para diversos valores de repetições
compare os valores obtidos com os valores teóricos.
2. Pretende-se simular um sistema de controlo de erros num canal digital. O sistema
deve codificar uma sequência binária através de um código de Hamming H(7,4),
sujeitar a sequência resultante a erros e descodificar corrigindo os erros.
a) Avalie o codificador para diversos valores da BER e compare os valores obtidos com
os valores teóricos.
b) Compare os resultados com os obtidos com o codificador por repetição.
Tenha em atenção as seguintes funções do MATLAB:
nchoosek – Cálculo de combinações
Exercícios propostos em MATLAB 265
Projeto de Transmissão Digital de Sinais
Objectivo: Pretende-se implementar e testar um sistema de transmissão digital
simulado em MATLAB, representado no diagrama de blocos seguinte:
Especificações do sistema
Sinal de entrada
Sinal em formato wav;
Em alternativa colocar uma sinusóide com amplitude, frequência e frequência de
amostragem especificadas pelo utilizador.
Codificador/Descodificador
Codificar DPCM;
Número de bits de codificação por amostra especificado pelo utilizador;
Valor máximo de quantificação especificado pelo utilizador ou calculado
automaticamente;
Coeficiente de predição especificado pelo utilizador ou calculado
automaticamente.
Código de linha
Código de linha PAM 2B1Q;
Distância entre símbolos especificado pelo utilizador;
Número de pontos de simulação especificado pelo utilizador.
266 Exercícios propostos em MATLAB Carlos Meneses
Canal
Canal com ruído aditivo branco e gaussiano (AWGN);
Potência do ruído no canal especificada pelo utilizador.
Recepção de sinais digitais
Receptor óptimo com detector de máxima verosimilhança.
Codificação para controlo de erros
Código Hamming H(7,4), apenas na situação de codificação de 4 bits por
amostra. Inibição do código especificada pelo utilizador.
Medidas de qualidade.
Para o sinal de fala – SNRq;
Para a cadeia binária – BER (antes e após correcção);
Comparar valores teóricos com valores obtidos na simulação.
Situações a simular
Codificador/Descodificador de sinal:
1. Variar o número de bits de codificação por amostra;
2. Variar o coeficiente de predição. Testar o valor 0, 1, óptimo e a sua vizinhança;
3. Verificar o impactodo coeficiente de predição no impacto dos erros do canal;
Código de linha:
4. Variar a energia por bit (com a mesma potência de ruído no canal);
– Variar a distância entre símbolos;
– Variar o número de pontos de simulação por símbolo.
5. Variar a potência do ruído no canal;
Codificação para controlo de erros:
6. Verificar o efeito do código Hamming H(7,4);
7. Verificar a SNRq com o mesmo débito binário com e sem correcção de erros.
Glossário 267
__________________________________________
Glossário
__________________________________________
2B1Q – 2 binary 1 quaternary
AC – Corrente alternada
ADM – Adaptive Delta Modulation (DM Adaptativa)
ADPCM – Adaptive Differential Pulse Code Modulation (DPCM Adaptativo)
ADSL – Asymmetric Digital Subscriber Line
APCM – Adaptive Pulse Code Modulation (PCM Adaptativo)
AQB – Adaptive quantization with backward estimation (quantificação adaptativa com
estimação sobre o sinal quantificado)
AQF – Adaptive quantization with forward estimation (quantificação adaptativa com
estimação sobre o sinal original)
ARQ – Automatic repeat request
ASCII – American Standards Committee for Information Interchange
AWGN – Additive White Gaussian Noise
BCC – Block (sum) check character
BER – Bit Error Rate
BFER – Burst Frame Error Rate
bit – binary digit (digito binário)
BNRZ – Bipolar No Return to Zero
BNZS – Bipolar with N Zero Substitution
CD – Compact Disc
CRC – Cyclic redundancy check
DC – Direct current (corrente continua)
DECT – Digital Enhanced Cordless Telecommunications
DM – Delta Modulation (Modulação Delta)
268 Glossário Carlos Meneses
DPCM – Differential Pulse Code Modulation (Mod. por Código de pulso Diferencial)
erfc – complementary error function
FEC – Forward error correction
GSM – Group special mobile
IP – Internet protocol
ISI – Inter–symbolic Interference
ISO – International Organization for Standardization
ITU-T – International Telecommunication Union-Telecommunication
MAP – Máximo a posteriori
MV – Máxima Verosimilhança
NRZI – No Return to Zero Invert
NRZ-L – No Return to Zero - Level
NRZ-M – No return to Zero - Mark
NRZ-S – No return to Zero - Space
OSI – Open System Interconnection
PAM – Pulse Amplitude Modulation
PCM – Pulse Code Modulation (Modulação por código de pulso)
PNRZ – Polar no Return to Zero
POTS – Plain old telephone service
PRZ – Polar Return to Zero
RAM – Random Access Memory
RDIS – Rede Digital Integrada de Serviços
RZ – Return to zero
S&H – Sampling & Hold (Amostragem e Retenção)
SNR – Signal to Noise Ratio (Relação Sinal-Ruído)
UMTS – Universal Mobile Telecommunications System
UNRZ – Unipolar no Return to Zero
USB – Universal Serial Bus
Bibliografia 269
__________________________________________
Bibliografia
__________________________________________
S. Haykin, Michel Moher, “Communication Systems”, 5th Ed., Willey, 2009.
S. Haykin, Michel Moher, “Communication Systems”, International Students Version,
5th Ed., Willey, 2009.
A. Bruce Carlson, Paul B. Crilly, Janet C. Rutledge, “Communications and Systems”,
4 th Ed., McGrawHill, 2001.
F. Halsall, “Data Communication, Computer Networks and Open Systems”, 4th Ed.,
Addison-Wesley, 1996.
F. Hassal, “Computer Network and the Internet”, 5th Ed., Addison-Wesley, 2005.
H. P. Hsu, “Comunicação Analógica e Digital”, 2ª Ed., Colecção Schaum, 2006.
N. S. Jayant, P. Noll, “Digital Coding of Waveforms, Principles and Applications to
Speech and Video”, Prentice-Hall Signal Processing Series, 1970.
N. S. Jayant, “Digital Coding of Waveforms: PCM, DPCM, and DM Quantizers”, Proc.
IEEE, pp. 611-632, 1974.
B. P. Lahti, “Sistemas de Comunicação”, Editora Guanabara, 1968.
Y. Lai, “Implementation of Adaptive Differential Pulse-Code Modulation (ADPCM)
Transcoder with the DSP16 Digital Signal Processor”, AT&T Appl. Note, 1988.
S. P. Lloyd, “Least squares quantization in PCM”, Bell Telephone Laboratories Paper,
1957, republicado em IEEE Transactions on Information Theory 28 (2): 129-136,
1982.
270 Bibliografia Carlos Meneses
J. L. LoCicero, B. P. Patel, Chapter 6 of Mobile Communication Handbook (J. Gibson)
- “Line Coding”, Chapman & Hall/CRCnetBASE, 1999.
J. Max, “Quantizing for Minimum Distortion”, IRE Trans. Inform. Theory, vol IT-6, pp.
7-12, Março de 1960.
M. Schwartz, “Information Transmission Modulation and Noise”, 4 th Ed., Mc Graw
Hill, 1990.
C. E. Shannon, “Communication in the presence of noise”, Proc. IRE, vol. 37,
pp. 10-21, January. 1949.
B. Skalar, “Digital Communication – Fundamentals and Applications”, Prentice Hall,
2001.