Baixe o app para aproveitar ainda mais
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,6
Compartilhar