P. 1
SebentaTotal

SebentaTotal

4.67

|Views: 1.527|Likes:
Publicado pordabysk
Sistemas de Comunicação Digital
Sistemas de Comunicação Digital

More info:

Published by: dabysk on Feb 18, 2008
Direitos Autorais:Attribution Non-commercial

Availability:

Read on Scribd mobile: iPhone, iPad and Android.
download as PDF, TXT or read online from Scribd
See more
See less

11/22/2012

pdf

text

original

INSTITUTO SUPERIOR DE ENGENHARIA DE LISBOA

DEPARTAMENTO DE ENGENHARIA DE ELECTRÓNICA E TELECOMUNICAÇÕES E DE COMPUTADORES
SECÇÃO DE COMUNICAÇÕES E PROCESSAMENTO DE SINAIS

Engenharia de Redes de Comunicação e Multimédia Engenharia Electrónica de Telecomunicações e Computadores

MODULAÇÃO DE IMPULSOS
(Introdução à codificação de sinais)

CARLOS EDUARDO DE MENESES RIBEIRO

Outubro de 2007

Em muitos sistemas de transmissão de dados, os sinais analógicos são primeiro convertidos na forma digital pelo transmissor, transmitidos na forma digital e finalmente reconstruídos no receptor em sinais analógicos. O sinal resultante segue, normalmente, o sinal de entrada mas não é exactamente 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 receptor deve fornecer, a cada combinação de dígitos, o mesmo valor que será o 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 erro 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

ÍNDICE:
1 2 INTRODUÇÃO. ........................................................................................1 CONVERSÃO ANALÓGICO-DIGITAL ..............................................2
2.1 2.2 2.3 AMOSTRAGEM .............................................................................................................3 MODULAÇÃO POR AMPLITUDE DE IMPULSOS ...............................................................6 QUANTIFICAÇÃO .........................................................................................................8

3

PCM - MODULAÇÃO POR CÓDIGO DE IMPULSOS....................10
3.1 3.2 3.3 3.4 QUANTIFICAÇÃO UNIFORME ......................................................................................10 QUANTIFICAÇÃO NÃO UNIFORME ..............................................................................14 PCM COMPANDING – NORMA G.711 ......................................................................17 QUANTIFICAÇÃO ÓPTIMA ..........................................................................................22

4

CODIFICAÇÃO PREDITIVA – MODULAÇÃO DIFERENCIAL ..26
4.1 4.2 MODULAÇÃO POR CÓDIGO DE IMPULSOS DIFERENCIAS .............................................27 MODULAÇÃO DELTA .................................................................................................39

5

SOBRE-AMOSTRAGEM ......................................................................43
5.1 5.2 5.3 GANHO DE FILTRAGEM ..............................................................................................43 SOBRE-AMOSTRAGEM EM PCM E DPCM..................................................................44 SOBRE-AMOSTRAGEM EM DM ..................................................................................44

6

MODULAÇÃO DELTA-SIGMA ..........................................................46
6.1 6.2 6.3 DA CODIFICAÇÃO DM À CODIFICAÇÃO ∆Σ................................................................46 FORMATAÇÃO DO RUÍDO ...........................................................................................47 CONVERSORES AD E DA POR MODULAÇÃO ∆Σ.........................................................50

7

SUMÁRIO................................................................................................51

PRINCIPAIS FORMULAS ..........................................................................55 APÊNDICES ..................................................................................................57
APÊNDICE 1 - FUNÇÃO DE AUTO-CORRELAÇÃO TEMPORAL DE UMA SINUSÓIDE DISCRETA....57 APÊNDICE 2 – SINUSÓIDE COM PREDITOR UNITÁRIO .............................................................58 APÊNDICE 3 - SNR PARA A MODULAÇÃO ∆Σ DE ORDEM N ..................................................59

EXERCÍCIOS RESOLVIDOS .....................................................................61 EXERCÍCIOS PROPOSTOS .......................................................................73 BIBLIOGRAFIA............................................................................................77 GLOSSÁRIO DE ACRÓNIMOS.................................................................79

Introdução.

1

1

Introdução. Para além da tradicional rede de comunicação telefónica, o

desenvolvimento das tecnologias digitais nas últimas décadas criou novos tipos de serviços, nomeadamente o telefone móvel e a Internet. Cada vez mais estes serviços integram, de um modo natural, diversas fontes de informação, tais como os sinais de fala e áudio, as imagens e vídeo, ou o texto, como é apenas um exemplo o sistema UMTS. Quando o sinal a transmitir é analógico, tipicamente variando continuamente com o tempo, é necessário convertê-lo para digital, ou seja, representa-lo com um número finito de bits. Por codificação digital de sinais entende-se esta representação digital com vista à transmissão ou armazenamento. Quando da transmissão, o débito binário (bit rate) de codificação da fonte, medido em número de bits por segundo, é um factor importante na definição da largura de banda requerida para o canal de transmissão. No armazenamento para utilização posterior, o débito binário determina o espaço requerido na unidade de armazenamento. O conjunto de bits que representa o sinal pode ainda ser reduzido, aumentando a eficiência, aplicando outro tipo de codificadores, que na maioria das vezes tiram partido da correlação entre amostras. A conversão para digital provoca sempre distorção por quantificação. Uma medida de qualidade desta distorção é a relação entre a potência do sinal original e a potência do ruído de quantificação (SNR – signal to noise ratio). 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 integração de serviços, uma vantagem da representação digital sobre a representação analógica é, embora introduzindo a priori ruído de quantificação, a de uma maior imunidade ao ruído introduzido pelos canais de

2

Modulação de impulsos

Carlos Meneses

transmissão. Repare-se que ao contrário da transmissão analógica em que o efeito do ruído do canal de transmissão pode ser atenuado mas nunca totalmente suprimido, numa transmissão digital não haverá erro na transmissão desde que seja possível transmitir sem erro, apesar do ruído, os bits de codificação. Havendo erros a medida de qualidade desta transmissão é a relação entre os erros de bit e a totalidade dos bits transmitidos (BER – bit error rate). Este texto discute a codificação digital de sinais, dando ênfase aos sinais de fala. Existem diversos métodos de codificação de sinais de fala: codificação de forma de onda; codificação paramétrica; e codificação híbrida. Serão apresentados apenas os métodos de codificação de forma de onda, de débito binário mais elevado, e serão apresentados os codificadores desta classe normalizados pelo ITU-T1. Estes correspondem a um capítulo introdutório sobre codificação de fonte. 2 Conversão analógico-digital O problema da conversão analógico-digital é o de converter analógico
2

um sinal

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 no tempo quer em amplitude. A conversão analógico-digital envolve três etapas (amostragem, quantificação e codificação PCM), que serão objecto de análise no resto desta secção e no início da secção seguinte. A amostragem tem como objectivo 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 Nyquist-Shannon). A quantificação torna o sinal
1

ITU-T, International Telecommunication Union - Telecommunication Standardization Sector. Anteriormente a 1993 denominava-se CCITT (Comité Consultatif International Téléphonique et Télégraphique). Sinal eléctrico que tem uma variação análoga à variação da grandeza física que quer representar.

2

Conversão analógico-digital

3

discreto na amplitude, transformando um número infinito num número finito de valores. Finalmente, a codificação atribui a cada amplitude discreta um código finito, representado por um conjunto de bits. 2.1 Amostragem A amostragem 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) é então obtido pelo produto do sinal de entrada por um trem de diracs δ Ts (t ) com período Ts (Sampling Period). mδ (t ) = m(t ) × δ Ts (t ) = m(t ) ∑ δ (t − nTs ) =
n = −∞ ∞

n = −∞

∑ m(nTs )δ (t − nTs ) .

(2.1)

O espectro do sinal amostrado corresponde à convolução do espectro de m(t), que se supõe de banda limitada W, pela Transformada de Fourier do trem de diracs δ Ts (t ) , que é também um trem de diracs com período e área fs=1/Ts,

f s δ fs ( f ) . Para reconstruir o sinal amostrado é necessário, então, filtrá-lo
passa-baixo (filtro reconstrutor) à frequência de corte fs/2, com ganho Ts para manter a amplitude final. Para evitar a sobreposição espectral e a correspondente distorção a que se dá o nome de aliasing, a frequência de amostragem deverá ser igual ou superior a duas vezes o valor W da frequência máxima do sinal (teorema da amostragem de de Nyquist-Shannon):

f s ≥ 2W ,

(2.2)

em que a frequência mínima de amostragem denomina-se frequência de Nyquist. Todo este processo é ilustrado no domínio da frequência, na figura 2.1. 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.

4

Modulação de impulsos

Carlos Meneses

Figura 2.1 Interpretação da amostragem no domínio da frequência Em a) representa-se o espectro de um sinal de entrada m(t), com banda limitada W. Em b) representa-se o espectro do sinal amostrado. A reconstrução do sinal é possível sem distorção por filtragem passa-baixo à frequência de corte fs/2, pois W<fs/2. Em c) representa-se o sinal amostrado em que as repetições espectrais 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 a 2W. A reconstrução sem distorção do sinal amostrado é obtida por filtragem passa-baixo à frequência de corte fs/2. Se fs for inferior a 2W o sinal reconstruído sofrerá uma distorção por sobreposição dos espectros, a que se dá o nome de aliasing. Como os sinais resultantes da amostragem tem valores não nulos em múltiplos do período de amostragem Ts, estes podem ser apresentados com vantagens na sua representação discreta (utilizada em processamento digital de sinais) m[n], em que o índice discreto n deve ser interpretado como correspondente ao tempo nTs. Uma vez que o filtro reconstrutor é linear, a reconstrução pode ser interpretada como a sobreposição de funções sinc(x)

Conversão analógico-digital

5

(figura 2.2) devidas à resposta em frequência do filtro, pesadas pelo valor da amostra correspondente e deslocadas para a respectiva posição no tempo:

m(t ) =

n =−∞

∑ m(nTs )sinc( f s (t − nTs )) .

(2.3)

Figura 2.2 Interpretação da reconstrução do sinal no domínio do tempo. O sinal é reconstruído por sobreposição de funções sinc, correspondentes à 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 na posição de todas as outras amostras.

Na figura 2.3 é apresentada toda a cadeia de amostragem e reconstrução.

Figura 2.3 Cadeia de amostragem e reconstrução, com filtro anti-aliasing.

6

Modulação de impulsos

Carlos Meneses

2.2 Modulação por amplitude de impulsos A amostragem com um trem de diracs só pode ser concebido em termos teóricos. Na prática, os impulsos têm uma duração que pode ser razoavelmente pequena quando comparado com o período de amostragem, até uma duração igual a esse valor. Este tipo de representação do sinal m(t) toma o nome de modulação por amplitude de impulsos (PAM – Pulse amplitude modulation), pois as amplitudes dos impulsos resultantes da amostragem tomam o valor do sinal de entrada no momento de amostragem correspondente, ou seja, da área dos diracs da amostragem ideal.

Figura 2.4 Esquema de blocos equivalente à amostragem e retenção de duração T ou modulação por amplitude de impulsos (PAM).

Para calcular a largura de banda do sinal PAM, note-se que, como mostrado na figura 2.4, este pode ser representado pela amostragem ideal seguido de um filtro de retenção de ordem zero (zero order hold) de duração T, cuja resposta impulsiva é “rectangular”, o qual tem uma resposta em frequência

H ( f ) = Tsinc( fT )e − jTπf ,

(2.4)

que tem o primeiro zero em f=1/T. Este filtro distorce o espectro, pelo que na reconstrução esta distorção deve ser compensada. O filtro reconstrutor deixa de

Conversão analógico-digital

7

ser um filtro ideal, para ter a resposta em frequência inversa da de H(f), embora limitada à banda do sinal:
1 1 , = H ( f ) Tsinc( fT )e − jTπf

-fs/2 ≤ f ≤fs/2,

(2.5)

cujo esboço é apresentado na figura 2.5.

Figura 2.5 Módulo da resposta em frequência do filtro de retenção de ordem zero e respectiva compensação na reconstrução.

Se T<<Ts, podem-se colocar sinais de diversas fontes, cada uma nas zonas de não existência de impulsos das outras fontes, conseguindo-se partilhar o mesmo canal de transmissão por divisão no tempo (TDM – Time Division Multiplexing). Quanto T =T s (amostragem e retenção até à próxima

amostragem), à sequência amostragem e retenção dá-se o nome de S&H (S&H – Sampling and Hold). Assumiremos neste texto uma frequência de amostragem de 8 kHz e uma filtragem passa-banda na banda entre os 300 Hz e os 3400 Hz, denominada banda telefónica, normalizada na codificação de sinais de fala. A utilização de uma frequência de amostragem superior à mínima exigida pelo teorema da amostragem é justificada pela necessidade de uma banda de guarda, devida à característica não ideal dos filtros realizáveis.

8

Modulação de impulsos

Carlos Meneses

2.3 Quantificação Parâmetros quantificados é um termo usado por exemplo em mecânica quântica, para designar o facto de muitos dos parâmetros que descrevem um sistema só poderem assumir um conjunto discreto de valores, ao contrário da dinâmica clássica onde há uma gama contínua de valores. 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 de um sinal o intervalo entre -mmax e mmax, dividida em L intervalos de quantificação Φj(tj<m<=tj+1) de dimensão ∆j, a quantificação dá-se 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 2.6 Amostragem e quantificação de sinais. O sinal analógico m(t) é amostrado dando origem ao sinal m±(t). A quantificação torna o sinal discreto, reconhecendo-se na figura 8 valores de quantificação. No gráfico, o sinal quantificado é representado em PAM com duração do período de amostragem (amostragem e retenção).

Devido à aproximação que se dá na quantificação, esta, ao invés 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]. É assim

Conversão analógico-digital

9

sempre cometido um erro ou ruído de quantificação, definido como a diferença entre o valor de entrada e o valor de quantificação:

q[n] = m[n] − mq [n] ,

(2.6)

Para a mesma gama do sinal de entrada, quanto maior for o número de intervalos de quantificação menor é a gama do ruído. De modo a ser escolhido o valor mais próximo do valor do sinal de entrada (menor erro 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:

tj =

v j + v j −1 2

.

(2.7)

Existem dois tipos de quantificadores cujas funções entrada-saída são apresentadas na figura 2.7: midtread e midrise. Os quantificadores midtread incluem o 0 como valor de quantificação, importante nas zonas de silêncio, em que os quantificadores midrise oscilarão entre dois valores de quantificação (ruído granular). Como é usual serem usados quantificadores com um número par de valores de quantificação, estes tornam-se não simétricos pela inclusão num dos extremos de mais um valor de quantificação (não apresentado).

Figura 2.7 Funções entrada-saída dos quantificadores (a) midtread e (b) midrise.

10

Modulação de impulsos

Carlos Meneses

3

PCM - Modulação por código de impulsos A codificação é a representação, binária ou outra, da sequência de valores

de um sinal, após amostragem e quantificação. Normalmente os dispositivos que efectuam a amostragem, quantificação e codificação amostra-a-amostra estão integrados. Estes dispositivos necessitam de um circuito de retenção do sinal amostrado durante o tempo de conversão (S&H - Sampling and Hold), como mostrado na figura 2.6. No entanto, no que diz respeito à conversão analógico-digital, esta é ideal pois apenas existe um número que representa a área quantificada do impulso de dirac por amostra. A esta codificação amostra-a-amostra dá-se o nome de modulação por código de impulsos (PCM – Pulse Code Modulation). 3.1 Quantificação uniforme Quando os intervalos de quantificação são uniformes ( ∆ j = ∆ q ∀j ) o codificador PCM resultante denomina-se PCM uniforme. Para uma gama entre

–V e V e utilizando um número L de valores coincidente com uma potência de 2
de modo a optimizar o número R de bits de codificação por amostra, esta dimensão3 é dada por:

∆q =

2V 2V = R. L 2

(3.1)

Uma medida usada para aferir a qualidade de codificadores é a relação entre a potência do sinal a quantificar e a potência do ruído(SNR - Signal to noise ratio) introduzido pela quantificação. Os valores do ruído devido à quantificação podem ser considerados igualmente distribuídos no intervalo de quantificação, sendo esta aproximação válida desde que se utilize um número suficiente de valores, (digamos L≥32, embora no exemplo da figura 3.1 sejam apenas apresentados 4 valores). A função densidade de probabilidade do ruído
3

Assume-se quantificação midrise, sendo os cálculos aproximados para quantificação midtread.

PCM - Modulação por código de impulsos

11

é, nestas condições, uniforme à volta de cada valor de quantificação, sendo o valor máximo do ruído de ∆q /2, uma vez que o valor de quantificação está a meio do respectivo intervalo. A potência do ruído de quantificação pode ser estimada como a variância σ2q em torno do valor de quantificação:

1 σ = ∫ q f Q (q )dq = ∆q −∞
2 q 2

∆q / 2

− ∆q / 2

q dq =
2

∆q

2

12

=

V2 , 3 × 22R

(3.2)

pelo que 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.

Figura 3.1 Função densidade de probabilidade (pdf) do ruído de quantificação em PCM com quantificação uniforme.

A relação entre a potência P do sinal e a potência σ2q do ruído será então estimada por:

SNR =

P

σ

2 q

= 3 × 22R ×

P , V2

(3.3)

12

Modulação de impulsos

Carlos Meneses

ou em decibéis4:

⎛ 3P ⎞ SNRdB = 6,02 R + 10 log10 ⎜ 2 ⎟ . ⎝V ⎠

(3.4)

A relação sinal ruído aumenta 6,02 dB por cada bit de codificação por amostra, sendo também função da relação entre a potência do sinal de entrada e o quadrado do valor máximo de quantificação V. Por exemplo, a uma diminuição da amplitude para metade corresponde uma diminuição em potência de 0,25 ou de 6,02 dB de SNR. Este resultado pode ser interpretado como a utilização de menos 1 bit de codificação por amostra, já que nunca são produzidas metade das possibilidades do código. Por outro lado, 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 de saturação de amplitude, deixando as equações 3.2 a 3.4 de ser válidas. Assumindo o caso ideal, ou seja, que a gama do quantificador 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.4 pode ser reescrita como,
⎛ 3P SNRdB = 6,02 R + 10 log10 ⎜ 2 ⎜m ⎝ max ⎞ ⎟ = 6,02 R + 10 log10 (3Pn ) , ⎟ ⎠

(3.5)

ficando a SNR função da potência normalizada, definida em relação ao quadrado da amplitude, ou seja,

Pn =

P , 2 mmax

(3.6)

O débito binário Rb, para uma frequência de amostragem fs virá:

Rb = R × f s .
4

(3.7)

decibel (dB), 10 x a relação logarítmica entre duas potências (10 log10 (P2/P1). Cada 3 dB corresponde à duplicação da

relação de potências (10 log10 (2) = 3 dB). A potência sonora Ps é usualmente medida em decibéis, ao compara-la com uma potência de referência P0=10-12, considerada o limite inferior de audibilidade, ou seja, Ps (dB) = 10 log10 (Ps/P0) = 10 log10((Ps)+120 (dB).

PCM - Modulação por código de impulsos

13

Na tabela 3.2 apresentam-se os valores da SNR 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, correspondente a um sinal sinusoidal (10log10(1/2)), o valor da SNR de 50 dB é bastante bom, o valor de apenas 7,9 dB para uma potência normalizada de -45 dB, possível de ser encontrado em alguns troços de sinais de fala, é inaceitável a um débito binário de 64 kbit/s, correspondentes à codificação com 8 bits por amostra de um sinal amostrado a 8 kHz (banda telefónica).
Pn dB -45 -35 -25 -20 -15 -10 -4,77 -3 0

Entrada

SNR dB
7,9 17,9 27,9 32,9 37,9 42,9 48,2 49,9 52,9

Triangular ou distribuição uniforme sinusoidal quadrada Tabela 3.2 Valores da SNR de quantificação, com R=8 bits (64 kbit/s para sinais amostrados a 8 kHz), função da potência normalizada do sinal de entrada. Por cada bit adicional de codificação a SNR aumenta 6,02 dB.

Para garantir um valor mínimo da SNR de aproximadamente 32 dB nesta situação, seria necessário aumentar 24 dB na SNR, ou seja utilizar mais 4 bits de codificação por amostra, resultando num débito binário de 96 kbit/s, valor demasiado elevado na maioria das aplicações práticas para sinais de fala. A melhoria da qualidade através do aumento do número de bits por amostra tem dois limites. Um deles prende-se com a complexidade dos conversores, que duplica o número de intervalos por cada bit de codificação. (e.g., para R=16, existem 2^16=65536 intervalos). O outro prende-se com o valor muito pequeno a descriminar, a que corresponde metade de ∆q (e.g., para R=16,

∆q/2=2-17=15 µV para V=1 Volt, que se pode confundir com o ruído térmico
nos sistemas electrónicos utilizados).

14

Modulação de impulsos

Carlos Meneses

3.2 Quantificação não uniforme Na secção anterior discutiu-se a utilização de PCM com quantificação uniforme e o cálculo da respectiva relação sinal-ruído de quantificação, concluindo-se da necessidade de manter uma elevada SNR mesmo para potências baixas do sinal de entrada, mas não à custa do aumento do débito binário. Preferencialmente a SNR deverá ser independente da potência do sinal de entrada. O histograma de um sinal de fala não é uniforme, 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, à custa do aumento do intervalo de quantificação das zonas de menor ocorrência, i.e., quantificação não uniforme. Alternativamente, pode-se aplicar previamente ao sinal analógico de entrada uma não linearidade como a mostrada na figura 3.2, seguido de um quantificador uniforme. No receptor, após descodificação, aplica-se a característica inversa para regenerar o sinal.

Figura 3.2 Não linearidade seguida de quantificação uniforme, equivalente à quantificação não uniforme.

PCM - Modulação por código de impulsos

15

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 3.2 que a relação entre a entrada e a saída da não linearidade é dada aproximadamente por:
∆j ≈ 2 g (V ) , Lg ′(v j )

(3.8)

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 fM(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:
t j +1

Nj =

∫t

(m − v j ) 2 f M (m)dm ,

(3.9)

j

sendo tj a tj+1 o intervalo de quantificação correspondente ao valor vj. Assumindo um número elevado de valores, fM(m) é aproximadamente constante no intervalo de quantificação, ou seja todos os valores de m do j-ésimo intervalo de quantificação têm aproximadamente a mesma probabilidade que fM(vj). Também, se os intervalos de quantificação adjacentes não tiverem dimensões muito diferentes, o valor de quantificação estará aproximadamente a meio do intervalo e o ruído estará limitado a [-∆j/2, ∆j /2]. Nestas condições, a equação 3.9 poderá ser reescrita como:
N j ≈ f M (v j ) ∫ (m − v j ) dm ≈ f M (v j )
2 tj t j +1

∆3j 12

,

(3.10)

16

Modulação de impulsos

Carlos Meneses

e incluindo nesta a aproximação dada pela equação 3.8,
Nj = g (V ) 2 f M (v j ) ∆j. 3L2 g ′(v j ) 2

(3.11)

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 haja um número elevado de valores, é dado por:

g (V ) 2 σ = ∑Nj = 3L2 j =1
2 q L

g (V ) 2 ∑ g ′(v ) 2 ∆ j ≈ 3L2 j =1 j
L

f M (v j )

mmax

− mmax

f M ( m) dm , g ′(m) 2

(3.12)

e a relação sinal-ruído de quantificação virá:

SNRq =

P
2 σq

= g (V )
2

3L2 P
mmax i

− mmax

f M ( m) dm g ′(m) 2

,

(3.13)

sendo necessário, para calcular a SNR final, ser conhecida a derivada da não linearidade e a distribuição do sinal de entrada. No caso particular da quantificação uniforme, a derivada da função vale 1 e a equação 3.13 reduz-se à equação 3.3. Esta conclusão é válida mesmo para linearidades em que

g(m)=Km, pois valendo a derivada K=g(V)/V e assumindo V= mmax, teremos
para o denominador da equação 3.13:
mmax

g (V ) 2

− mmax

max f M (m ) K 2 2 max 2 2 dm = 2 mmax ∫ f M (m )dm = mmax ∫ f M (m )dm = mmax , (3.14) 2 K g ′(m ) − mmax − mmax

m

m

reduzindo-se a equação 3.13 à 3.3, concluindo-se que um factor 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.

PCM - Modulação por código de impulsos

17

3.3 PCM companding – Norma G.711 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 m2fM(m)dm, calculado no intervalo entre - mmax e mmax, é igual à potência, o valor da SNR deixa de ser dependente da potência do sinal de entrada para ser dependente apenas do número de valores de quantificação:

SNR q = 2 g (V ) 2

3L2 P
mmax

=

∫m
0

2

f M (m)dm

3L2 . g (mmax ) 2

(3.15)

A função logarítmica não pode no entanto ser utilizada, pois converte o intervalo entre 0 e 1 no intervalo entre -∞ e 0, sendo necessário um número infinito de valores de quantificação. 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, como mostrado na figura 3.3, tendo a função uma caracterí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 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 ao valor máximo de quantificação, ou seja V = 1, a Lei-A será descrita por:

1 + ln( A) Am g (m ) = ± 1 + ln( A)

g (m ) = ±

1 + ln( A m )

1 ≤ m ≤1 A . 1 0≤ m ≤ A

(3.16)

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 os valores de quantificação e decisão sejam uma aproximação da equação 3.16.

18

Modulação de impulsos

Carlos Meneses

A=87,56

A=10

Uniforme A=1

Figura 3.3 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 características ímpares.

Para valores baixos (m<A) a Lei-A tem um comportamento linear (g(m)=16m para A=87,56), enquanto que para valores médios e altos tem um comportamento quase logarítmico. Esta não linearidade corresponde a comprimir o sinal de entrada. No receptor após descodificação, obviamente, tem que se incluir a não linearidade inversa 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. Para potências médias e altas, melhor, quando a potência normalizada do sinal de entrada for razoavelmente superior a 1/A2, o termo superior da equação

PCM - Modulação por código de impulsos

19

3.16 é o termo dominante e a SNR virá, usando o valor normalizado para A de

87,56 e utilizando a equação 3.13 e a derivada da Lei-A dada por,
1 m(1 + ln( A)) A g ′(m ) = 1 + ln( A) g ′(m ) =
a SNR virá:

1 ≤ m ≤1 A , 1 0≤ m ≤ A

(3.17)

SNRq ≈

3L2 P 2(1 + ln( A) )
2

∫m
0

1

=
2

f M (m)dm

(1 + ln( A) )

3L2

2

= 0,1L2 ,

(3.18)

ou, em decibéis:

SNRdB = 6,02 R − 10 .

(3.19)

Repare-se que a SNR 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 de 8 bits (64 kbit/s), este valor máximo da SNR é de 38,16 dB e mantém-se praticamente constante para uma variação apreciável de potência do sinal de entrada. É esta característica quase constante do companding que o faz ter um desempenho médio superior ao PCM uniforme. No entanto, para um sinal de muito 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 3.16, com um comportamento linear, pelo que a SNR é dada pela equação 3.3. Alternativamente à introdução no receptor da compressão seguida de quantificação uniforme e de no receptor, após descodificação, ser aplicada a expansão, pode ser utilizada com vantagens computacionais directamente um quantificador não uniforme. Os valores quer dos valores de decisão, necessários

20

Modulação de impulsos

Carlos Meneses

no emissor, quer dos valores de quantificação, são obtidos por aplicação da expansão dos respectivos valores do quantificador uniforme. Para a Lei-µ:

g (m ) = ±

ln(1 + µ m ) ln(1 + µ )

0 ≤ m ≤1 ,

(3.20)

em que µ governa o grau de compressão, sendo o valor normalizado de 255. Para valores baixos esta lei tem também um comportamento linear, dado que ln(1+µ|m|) ≈ µ|m| e para valores elevados um comportamento logarítmico, uma vez que para µ|m|>>1 virá ln(1+µ|m|) ≈ ln(µ|m|). A derivada desta função vale:
g ′(m ) =

µ

1

ln(1 + µ ) 1 + µ m

,

(3.21)

pelo que a SNR virá, com o valor normalizado µ=255, aplicando a equação 3.13:

SNRq

=

3L2 2 ln(1 + µ ) 3L2

µ 2P
2∫ (1 + µ m ) f (m)dm
2 0 2 1

= ≈

(ln(1 + µ ))

1 + µ P + 2µE [ m ]
2

µ 2P

,

(3.22)

3L2 ≈ 0,1L2 2 (ln(1 + µ ))

onde se assume que o termo dominante no denominador da segunda fracção da equação 3.22 é µ2P e a SNR é igual à da Lei-A. Para baixas potências esta aproximação não é válida, correspondendo como na Lei-A à entrada na zona linear, fazendo diminuir a SNR, pelo que as duas leis têm desempenhos similares. A SNR tem uma diminuição de apenas 2,5 dB, figura 3.4, para uma variação da potência do sinal de entrada até aos -40 dB. Acima dos -14,77 dB, valor contudo impossível de atingir pelos sinais de fala, o PCM uniforme tem um melhor desempenho.

PCM - Modulação por código de impulsos

21

Nas centrais telefónicas que implementam a recomendação G.711, esta é normalmente desligada quando são detectados na linha sinais sinusoidais típicos da modulação digital (modems), cuja potência normalizada é de -3 dB (tabela 3.2) para um sinal com o máximo de amplitude. Repare-se que um sinal sinusoidal apresenta uma função densidade de probabilidade com ocorrências mais frequentes para valores maiores. Para este sinal a SNR correspondente para 8 bits de quantificação por amostra em quantificação uniforme é de 50 dB, contra os 38 dB obtidos pelo PCM com companding.

50,0 40,0

SNR (dB)

Companding Lei-µ

30,0 20,0 10,0 0,0

Uniforme
-60 -55 -2,1 -50 2,9 -45 7,9 -40 12,9 -35 -30 -25 -20 -15 -10 -5 0 52,9 38,0

unif orme -7,1 Lei-u

17,9 22,9 27,9 32,9 36,7 37,3 37,6 37,8

37,9 42,9 47,9 37,9 38,0 38,0

24,6 28,5

31,7 34,1 35,7

Potência Normalizada (dB)

Figura 3.4 Relação sinal ruído em PCM com companding Lei-µ(255) e sua comparação com PCM com quantificação uniforme, função da potência normalizada do sinal de entrada, para 8 bits por amostra. De realçar a característica quase constante do companding e o seu melhor desempenho em relação ao PCM com quantificação uniforme para potências abaixo dos -14,77 dB.

Um outro factor importante conseguido pelo PCM companding, particularmente quando aplicado a sinais de fala, é o aumento da qualidade perceptual 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 valores menores em detrimento de valores maiores. Conclui-se do melhor desempenho objectivo (aumento da SNR) e subjectivo (melhoria da qualidade perceptual) para sinais de fala do PCM companding em relação ao PCM uniforme.

22

Modulação de impulsos

Carlos Meneses

3.4 Quantificação óptima Quando existe maior probabilidade de ocorrência de alguns dos valores de quantificação do que de outros, deve-se diminuir a dimensão dos intervalos de quantificação mais prováveis, à custa do aumento da dimensão dos intervalos menos prováveis. Por exemplo, os sinais de fala têm uma distribuição de amplitudes com maiores ocorrências para valores mais baixos, pelo que o PCM companding é, como já visto, uma melhor alternativa em relação ao PCM uniforme. No entanto a principal vantagem do PCM companding é a de tornar a SNR praticamente independente da potência do sinal de entrada. Para sinais de potência razoável a utilização de PCM companding resulta mesmo numa diminuição da SNR em relação à quantificação uniforme, pelo que outro tipo de não linearidade deve ser utilizado. Das equações 3.9 e 3.12, a potência do ruído de quantificação é dado por:

σ = ∑Nj = ∑
2 q j =1 j =1

L

L

t j +1 tj

∫ (m − v )
j

2

f M (m)dm ,

(3.23)

sendo os valores óptimos dos valores de decisão tj e dos valores de quantificação vj 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., embora a resolução do conjunto de equações resultante não seja fácil [Max(60)][Linde(80)]. Descreve-se a seguir um algoritmo iterativo conhecido por Lloyd-Max [Max(60)], para estimação dos valores óptimos de quantificação de um sinal, que tem como entrada o histograma do sinal, estimando a respectiva função densidade de probabilidade. O quantificador resultante só terá o mesmo desempenho quando for utilizado com sinais que tenham a mesma função densidade de probabilidade dos sinais que geraram o histograma de entrada ao

PCM - Modulação por código de impulsos

23

algoritmo, denominado de corpus5 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 respectiva ocorrência na linguagem falada. Note-se ainda que este algoritmo não só funciona para quantificar amostras de um sinal de fala, mas para quantificar qualquer parâmetro, e.g., áudio, pontos de uma imagem ou letras de um texto. Como inicialização do algoritmo, assume-se qualquer quantificador (de L valores, sendo L definido pelo utilizador). No exemplo ilustrado na figura 3.5-a) assume-se um quantificador uniforme de 4 valores, marcado sobre o histograma do sinal de fala de entrada, com um │ os intervalos de quantificação e com um

 os valores de quantificação.
Para cada intervalo de quantificação o valor de quantificação é substituído pela média dos valores pesados pelo respectivo histograma. Como mostrado na figura 3.5-b), marcado a x, estes deslocam-se para as zonas de maior probabilidade, diminuindo aí o erro de quantificação, à custa do aumento do erro nas zonas de menor probabilidade. O processo anterior repete-se (figura 3.5-c) d)) com estes novos valores de quantificação e os correspondentes valores de decisão dados pela equação 2.7, até não haver diferença entre duas iterações ou esta ser menor que determinado critério de estabilidade. Na figura 3.5-e) são mostrados os valores de quantificação iniciais (uniforme) e finais (óptimos). A potência do ruído baixou 5,9 vezes, ou seja, foi produzido um aumento da SNR de 7,7 dB. Estes valores foram obtidos após 9 iterações. Note-se que o aumento da SNR após a primeira iteração foi de apenas 1,9 dB.

5

corpus: conjunto de sinais de fala. Termo utilizado na investigação e desenvolvimento de

aplicações com processamento de fala.

24

Modulação de impulsos

Carlos Meneses

0.2 0.15 0.1 0.05 0 -1

0.2 0.15 0.1 0.05 0 -1

-0.5

0

0.5

1

-0.5

0

0.5

1

a)
0.2 0.15 0.1 0.05 0 -1
0.2 0.15 0.1 0.05 0 -1

b)

-0.5

0

0.5

1

-0.5

0

0.5

1

c)
0.2

d)

0.15

0.1

0.05

0 -1

-0.8

-0.6

-0.4

-0.2

0

0.2

0.4

0.6

0.8

1

e) Figura 3.5 Exemplo do algoritmos Lloyd-Max. Histograma de um sinal de fala. Em a) é ilustrado o quantificador uniforme utilizado para inicializar o algoritmo. Em b) são mostrados os novos valores de quantificação, obtidos pela média dos valores de cada intervalo de quantificação, pesados pelos respectivos 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 óptimos (SNR= 7,5 dB), obtidos após 9 iterações.

PCM - Modulação por código de impulsos

25

Para um sinal com distribuição sinusoidal, cuja função de distribuição tem maior ocorrências para amplitudes elevadas, os valores de quantificação, como mostra a figura 3.6, tenderão a deslocar-se para estas amplitudes. Estes valores foram obtidos após 6 iterações.
0.05 0.04 0.03 0.02 0.01 0 -1

-0.8

-0.6

-0.4

-0.2

0

0.2

0.4

0.6

0.8

1

Figura 3.6 Histograma de um sinal com distribuição sinusoidal. O - Valores de quantificação uniforme (SNR= 12,8 dB)  - Valores óptimos (SNR= 13,8 dB).

Na tabela 3.4 são mostrados os valores de quantificação para sinais de entrada com funções densidade de probabilidade Gaussiana e “Sinusoidal”, para 2, 3 e 4 bits de codificação.
Distribuição Gaussiana R=3 0,2451 0,7560 1,344 2,152 Distribuição “Sinusoidal” R=3 0,1436 0,4267 0,6973 0,9384

R=2 0,4528 1,510

R=4 0,1284 0,3831 0,6568 0,9424 1,256 1,618 2,069 2,733

R=2 0,2971 0,8540

R=4 0.0697 0.2086 0.3470 0.4839 0.6176 0.7466 0.8673 0,9732

Tabela 3.4 Valores dos valores de quantificação para sinais com funções densidade de probabilidade Gaussiana e Gamma. Os valores de decisão deverão estar equidistantes dos valores de quantificação do respectivo intervalo.

26

Modulação de impulsos

Carlos Meneses

4

Codificação preditiva – modulação diferencial 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, dando origem à codificação preditiva, que vai ser objecto de estudo no resto desta secção. Como exemplo, a figura 4.1 apresenta um gráfico das amostras de um sinal de fala função da respectiva amostra anterior. Estas exibem uma grande parecença, ou seja, apresentam-se à volta de uma recta de declive unitário.
1 0.8 0.6 0.4 0.2 m[n] 0 -0.2 -0.4 -0.6 -0.8 -1 -1

-0.8

-0.6

-0.4

-0.2

0 m[n-1]

0.2

0.4

0.6

0.8

1

Figura 4.1 Semelhança entre amostras adjacentes em sinais de baixa frequência. Amostras de um sinal de fala função das respectivas amostras anteriores. A semelhança pode ser verificada pois esta função apresenta-se à volta de uma recta de declive unitário.

Codificação preditiva – modulação diferencial

27

4.1 Modulação por código de impulsos diferencias Tirando partido da semelhança entre amostras consecutivas,

característica dos sinais de baixa frequência, consegue-se representar uma amostra como sendo o valor da amostra anterior, sendo transmitida em PCM, entre o emissor e o receptor, a diferença para a amostra actual. Dada a necessidade de coerência entre os sinais nestes dois sistemas, a comparação não é realizada sobre o sinal original, mas como mostra a figura 4.2 sobre o sinal de saída quantificado, o único existente no receptor. Para produzir este sinal existe no emissor uma réplica do receptor. Este tipo de representação do sinal toma o nome de modulação por código de impulsos diferenciais (DPCM – Differential Pulse Code Modulation).

a) Emissor DPCM

b) Receptor DPCM Figura 4.2 Modulação por codificação de impulsos diferenciais. Em a) apresenta-se o esquema de blocos de um emissor por modulação de impulsos diferenciais, e em b) o respectivo receptor, correspondendo a parte do emissor.

28

Modulação de impulsos

Carlos Meneses

O valor da amostra anterior pode ser interpretado como uma predição (mp[n]) do valor da amostra actual, 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 deverá ter uma menor variância (potência) que o sinal original, sendo susceptível de uma melhor quantificação.

4.1.1

Relação sinal–ruído em DPCM Da análise do esquema de blocos da figura 4.5 conclui-se que o ruído

causado por este tipo de codificação é dado por:

q[n] = m[n] − mq [n] = (m p [n] + e[n]) − (m p [n] + eq [n]) = e[n] − eq [n] ,

(4.1)

em que e[n] corresponde ao erro de predição, ou seja à diferença entre a amostra actual e a sua predição m p [n] . 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.1, substituindo V por V1,
∆q = 2V1 . 2R

(4.2)

A SNR correspondente à relação entre a potência do sinal de entrada e deste ruído:

SNRq =

P

σ

2 q

=

12 P , 2 ∆q

(4.3)

Codificação preditiva – modulação diferencial

29

A SNR virá, pela equação 3.4, com a mesma alteração de V por V1,

⎛ 3P ⎞ SNRdB = 6,02 R + 10 log10 ⎜ 2 ⎟ . ⎜V ⎟ ⎝ 1 ⎠

(4.4)

O aumento da SNR da codificação DPCM em relação à codificação PCM (equações 3.4 e 4.4) virá,

V2 V 10 log10 2 = 20 log10 . V1 V1
Repare-se ainda que,

(4.5)

SNRdB

⎛ 3P P = 6,02 R + 10 log10 ⎜ 2e ⎜V P ⎝ 1 e = Gp dB + SNR PCMdB (e[n])

⎞ ⎛ 3P ⎟ = Gp dB + 6,02 R + 10 log10 ⎜ 2e ⎟ ⎜V ⎠ ⎝ 1

⎞ ⎟ ⎟ ⎠

(4.6) ,

em que Pe representa a potência do sinal de erro de predição e Gp denomina-se de ganho de predição, dando informação da redução de variância do sinal de entrada em relação ao erro de predição:

Gp =

P . Pe

(4.7)

Para que a SNR aumente em relação a PCM, assumindo o mesmo número de bits de codificação, V1 deverá ser menor que a amplitude do sinal de entrada, ou seja, deverá resultar do preditor e do esquema diferencial uma diminuição de amplitude do sinal (erro de predição) a ser efectivamente quantificado. Se não houver diminuição de V1 não existe qualquer vantagem em utilizar DPCM. Pelo contrário só haverá 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. V1 torna-se assim um parâmetro crítico que actua directamente no desempenho do quantificador. Se este for demasiado baixo o erro de predição pode excedê-lo

30

Modulação de impulsos

Carlos Meneses

(figura 4.3), provocando saturação de declive. Se for demasiado elevado o desempenho diminui, pois aumenta a dimensão dos intervalos de quantificação e consequentemente da potência do ruído.

Figura 4.3 Distorção de declive em codificação DPCM. Em DPCM não existe distorção de amplitude mas pode existir distorção de declive (slope overload), quando a variação do sinal de entrada no intervalo entre amostras for superior à tensão máxima de quantificação V1.

Note-se que embora a codificação DPCM possa sofrer de saturação de declive quando a variação do sinal de entrada no intervalo entre amostras for superior à tensão máxima de quantificação V1 e evitada nas condições da equação 4.8, não existe saturação de amplitude, como na codificação PCM (quando o sinal de entrada for superior à tensão máxima de quantificação, ou seja V< mmax.),

V1 ≥

∂m(t ) m ' max . Ts = ∂t max fs

(4.8)

Um método aproximado de estimar V1, apenas exacto para sinais sinusoidais (Apêndice 2), consiste em assumir que a relação entre as potências de pico de m[n] e e[n] é igual à relação das respectivas potências, reflectindo-se esta na gama dos quantificadores, ou seja:

Codificação preditiva – modulação diferencial

31

Gp =
e V1 virá, aproximadamente,

P V2 ≈ , Pe V12

(4.9)

V1 ≈

V2 . Gp

(4.10)

Esta equação subestima o valor de V1 para sinais de fala, dando origem a alguma saturação de declive que pode ser perceptualmente relevante. Contudo, como a saturação não é frequente, a SNR de facto aumenta em relação à utilização do valor máximo do erro de predição, ou seja, quando utilizado um intervalo de quantificação maior com o consequente aumento da potência do ruído de quantificação. A relação sinal ruído de quantificação do erro de predição é, nestas condições, igual àquela que se obteria pela codificação directa em PCM do sinal de entrada, resultando do esquema diferencial um aumento da SNR introduzido pelo ganho de predição,

⎛ 3P ⎞ SNRdB ≈ Gp dB + 6,02 R + 10 log10 ⎜ 2 ⎟ = Gp dB + SNR PCMdB (m[n]) . ⎝V ⎠

(4.11)

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 se pode desprezar face à potência do sinal, ou seja6:
2 Pmq = P + σ q ≈ P ,

(4.12)

ficando a potência do sinal de saída aproximadamente igual à do sinal de entrada. Do mesmo modo a correlação cruzada entre o sinal de entrada e o

6

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.

32

Modulação de impulsos

Carlos Meneses

sinal quantificado será aproximadamente igual à função de auto-correlação7 R[k] do sinal de entrada. Nestas circunstâncias a potência do erro de predição virá:
1 N 2 1 N = lim lim ∑Ne [n] = N →∞ 2 N n∑N(m[n] − am q [n − 1]) N →∞ 2 N =− n=− N 1 N 2 1 N 2 2 1 = lim lim lim ∑Nm [n] + N →∞ 2 N n∑N a m q [n − 1] − 2 N N →∞ n∑N2am[n]m q [n − 1], (4.13) N →∞ 2 N =− =− n=− ≈ P + a 2 P − 2aR[1] = P 1 + a 2 − 2ar [1]
2

Pe

(

)

sendo r[k] a função de

auto-correlação com atraso kTs, normalizada pela

potência P=R[0]. O ganho de predição (não em dB) virá:

Gp =

1 P . = 2 Pe 1 + a − 2ar [ ] 1

(

)

(4.14)

Uma desvantagem da codificação DPCM em relação à codificação PCM prende-se com a propagação de erros do canal de transmissão. Em PCM, um erro no canal de transmissão afecta apenas a amostra correspondente, enquanto que em DPCM este erro é propagado às amostras posteriores, pois o sinal de saída é calculado através do sistema linear representado por:

mq [n] = m p [n] + eq [n] = amq [n − 1] + eq [n] .

(4.15)

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 que para a > 1 o erro é aumentado a cada iteração. A mesma conclusão é retirada da função de transferência em Z correspondente à equação às diferenças de 4.15, dada por:

7

Função de auto-correlação temporal, definida como o produto interno entre um sinal e a sua versão

deslocada de k amostras: R tempo τ: R (τ ) =

[k ] = lim

1 N ∑ m[n]m[n − k ] , ou para sinais contínuos, deslocado de um N →∞ 2 N n = − N

1 T → ∞ 2T lim

T

−T

∫ m(t )m(t − τ )dt .

Codificação preditiva – modulação diferencial

33

H ( z) =

z , z−a

(4.16)

que tem um pólo em z = a. Este sistema é estável desde que este pólo esteja dentro do círculo unitário, ou seja |a|< 1, criticamente estável para |a| = 1 e instável para |a|> 1. Aplicando a equação 4.14 para o caso particular do coeficiente de predição ser igual a 1 (preditor de 1ª ordem unitário), embora torne o filtro criticamente estável, o ganho de predição virá, em decibéis:
⎛P Gp dB = 10 log10 ⎜ ⎜P ⎝ e ⎞ ⎛ ⎞ 1 ⎟ = 10 log10 ⎜ ⎜ 2(1 − r [1]) ⎟ . ⎟ ⎟ ⎝ ⎠ ⎠

(4.17)

x 10 1
Amplitude

4

Sinal de fala

0 -1 -2 5
x 104

10

15
t [ms]

20

Resíduo de predição - preditor de primeira ordem unitário

1

Amplitude

0 -1 -2

2

4

6

8

10

12

14 16 t [ms]

18

20

22

Figura 4.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 respectivo erro de predição. Estes dois sinais são apresentados na mesma escala, sendo visível a redução na gama dinâmica.

34

Modulação de impulsos

Carlos Meneses

Nesta situação Gp só é maior que a unidade para correlações superiores a 0,5. Para um valor de r[1] de 0,8 o ganho de predição é de 4 dB, podendo chegar aos 12 dB ou mais para correlações acima dos 0,97. O esquema diferencial com coeficiente de predição unitário (a=1) tem então no máximo um ganho de 1 a 2 bits de codificação por amostra em relação a um codificador PCM. Na figura 4.4 é exemplificada a redução de gama dinâmica do erro de predição em relação ao sinal de entrada, correspondendo naturalmente a um ganho de predição maior que a unidade. O DPCM não terá nenhuma vantagem em relação ao PCM quando o ganho de predição for igual a 0 dB, ou seja r[1]=0,5 (equação 4.17).

4.1.2

Adaptação do preditor – preditor linear de primeira ordem Supondo o esquema de blocos da figura 4.2 que contêm um preditor

linear de primeira ordem, o sinal predito será dado por:

m p [n] = am [n − 1] ,

(4.18)

sendo a o coeficiente de predição. O coeficiente de predição óptimo, ou seja aquele que minimiza a potência do erro de predição, será dado por:
⎛1 ∑ m 2 [n] + a 2 1 ∑ m 2 [n − 1] − 2a 1 ∑ m[n] m[n − 1]⎞ ⎟ N n N n ⎝N n ⎠ = , ∂a 1 1 = 2a ∑ m 2 [n − 1] − 2 ∑ m [n] m [n − 1] = 0 N n N n

∂Pe m ∂a

∂⎜

(4.19)

pelo que o valor de óptimo do coeficiente de predição virá:

∑ m[n] m[n − 1]
a=
n

∑ m [n − 1]
2 n

=

R[ ] 1 = r[ ]. 1 R [0]

(4.20)

Codificação preditiva – modulação diferencial

35

Das equações 4.14 e 4.20 o ganho de predição virá:

Gp =

P 1 , = Pe 1 − r [1]2

(4.21)

que, como ilustrado na figura 4.5, é sempre maior ou igual 0 dB, independentemente do valor da auto-correlação, o que não acontece para o preditor unitário de primeira ordem, que pode ser negativo.
Gp (dB)
30

20

10

0 -1 -0,5 -10 0 0,5

r (1) 1

Figura 4.5 Ganho de predição função da auto-correlação normalizada de primeira ordem para preditores de 1ª ordem unitário e adaptativo.

O mesmo resultado é obtido por projecção do sinal de entrada sobre a sua versão deslocada de uma amostra, como ilustrado na figura 4.6, assumindo a melhor representação do primeiro sobre este último. De facto, a auto-correlaçã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] à respectiva projecçã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 será de 0 dB quando a projecção do sinal de entrada sobre a predição for de 0,5. A mesma conclusão é retirada da equação 4.17. O ganho de predição só é maior positivo à direita deste ponto. À direita da figura exemplifica-se a predição adaptada, para 4 situações distintas. A predição corresponde à projecção sobre a amostra anterior, minimizando a energia (norma do vector) do erro de predição,

36

Modulação de impulsos

Carlos Meneses

que lhe é ortogonal. O ganho de predição é sempre positiva (equação 4.21, com excepção da situação em que o sinal de entrada e a sua projecçã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.

Figura 4.6 Interpretação vectorial da predição. À esquerda, predição com coeficiente unitário. À direita, predição adaptada.

Repare-se que 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 4.10, não haverá de facto aumento da SNR. Para o preditor de unitário, Gp=0 dB quando a amostra faz um ângulo de π/3 em relação à predição. Para uma sinusóide como sinal de entrada em que r[1]=cos(2πf/fs) (Apêndice 1), então 2πf/fs= π/3. Para um sinal genérico esta situação dá-se para a frequência a que corresponde a máxima derivada, que denominaremos f’, pelo que o ganho de predição será positivo desde que:
f'< fs . 6

(4.22)

Codificação preditiva – modulação diferencial

37

Para sinais de fala esta situação é quase sempre verdade (f’<1333,3Hz) quando este é amostrado, como em qualidade telefónica, a 8000 Hz. Os codificadores de fala recentemente normalizados utilizam predição de ordem mais elevada (tipicamente ordem 10), de modo a melhorar o ganho de predição. A equação deste preditor é:
m p [n] = −∑ a k m[n − k ] ,
k =1 p

(4.23)

sendo os coeficientes ak denominados coeficientes de predição linear, calculados minimizando a potência do erro de predição, dando origem a um sistema de p equações a p incógnitas, válidos num máximo de 30 ms.

4.1.3

Adaptação do quantificador – memória de 1 amostra Como mostrado anteriormente, o codificador DPCM têm um ganho de

apenas 1 a 2 bits por amostra em relação ao PCM. Quantificando o erro de predição com um quantificador uniforme de 16 valores (4 bits por amostra) obtém-se um máximo de 28,85 dB de SNR de quantificação, mas este valor é extremamente dependente da potência do sinal de entrada (equação 3.4). Utilizando um PCM companding obtém-se um desempenho praticamente constante de apenas 14 dB (equação 3.19), embora a estes termos se tenha que somar o ganho de predição. Em qualquer dos casos a SNR final dificilmente ultrapassa em média 20 dB, o que não é satisfatório. Através da equação 4.9 e conhecido o ganho de predição através da equação 4.15, pode-se estimar o valor máximo de quantificação do sinal de erro. A variância do sinal de entrada do quantificador é, no entanto, dependente da potência localizada do sinal de entrada e portanto do tempo. A utilização de um quantificador de valores fixos leva a que quando a variância do sinal de entrada

38

Modulação de impulsos

Carlos Meneses

é 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. É possível no entanto adaptar localmente a gama do quantificador tirando partido das zonas quase estacionárias do sinal (nomeadamente sinais de fala), dando origem a um modulador por codificação diferencial de impulsos adaptativo (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 receptor como informação lateral ocupando uma pequena percentagem do número de total de bits (AQF: adaptive quantization with forward estimation) ou obtida do índice de codificação, existindo esta informação também no receptor (AQB: adaptive quantization with backward estimation). Um outro método de adaptação proposto por Jayant [Jayant (74)] utiliza apenas o índice de codificação da última amostra para adaptar o quantificador, baseado no seguinte raciocínio: se o índice corresponde a um valor elevado (em módulo), há risco de distorção de saturação de declive e deverá ser aumentado o intervalo de quantificação ∆q de um quantificador uniforme; se por outro lado o índice corresponde a um valor baixo, o risco de distorção de saturação de declive é pequeno e o intervalo de quantificação ∆q é diminuído de modo a diminuir o ruído de quantificação. O valor de ∆q no instante n depende então do seu valor anterior e do índice de quantificação para o instante anterior n-1:

∆q[n]= ∆q[n-1]M(i[n-1]),

(4.24)

em que M(i[n-1]) corresponde ao factor multiplicativo do índice i do quantificador na amostra anterior. Na tabela 4.1 são apresentados os valores de M(i[n-1]) propostos por Jayant para adaptar quantificadores midrise de 2, 3 e 4 bits, em ADPCM e APCM (PCM adaptado). Os factores multiplicativos de subida são maiores que os de descida porque a distorção de saturação de declive é perceptualmente mais nefasta que o ruído de quantificação.

Codificação preditiva – modulação diferencial

39

M(1) M(2) M(3) M(4) M(5) M(6) M(7) M(8)

R=2 0,6 2,2

APCM R=3 0,85 1,0 1,0 1,5

R=4 0,8 0,8 0,8 0,8 1,2 1,6 2,0 2,4

R=2 0,8 1,6

ADPCM R=3 0,9 0,9 1,25 1,7

R=4 0,9 0,9 0,9 0,9 1,2 1,6 2,0 2,4

Tabela 4.1 Factores multiplicativos propostos por Jayant, para adaptar quantificadores midrise em APCM e ADPCM utilizando memória de uma amostra. M(1) corresponde ao valor de quantificação com o valor mais baixo (em módulo), correspondendo o aumento do índice a um aumento (em módulo) do valor do valor de quantificação.

4.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 deste codificador é apresentado na figura 4.7. 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 4.7 Modulação Delta (DM) Esquema de blocos de um emissor 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 receptor é igual ao do DPCM (Figura 4.2 b)), mas com um descodificador de 1 bit (2 valores, ±∆).

40

Modulação de impulsos

Carlos Meneses

4.2.1

Relação sinal–ruído em DM Para se poder calcular a relação sinal-ruído e optimizar a qualidade do

DM é necessário perceber melhor os tipos de distorções introduzidas, ilustradas na figura 4.8: a saturação de declive, já possível na codificação DPCM, característica das zonas de transição brusca do sinal, em que o passo ∆ do quantificador não é suficiente para o acompanhar; 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. Em PCM e DPCM este ruído pode ser evitado com recurso a um codificador midtread, o que não é possível em DM, por apenas existir 1 bit de codificação. 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.

Figura 4.8 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.

De modo a evitar completamente o ruído de saturação de declive o valor de ∆ deverá ser pelo menos igual à variação máxima do sinal no intervalo entre duas amostras Ts=1/fs:

∂m(t ) m ' max ∆≥ Ts = , ∂t max fs

(4.25)

Codificação preditiva – modulação diferencial

41

sendo m ' max a derivada máxima do sinal de entrada. Quando o codificador DM funciona sem saturação de declive pode-se assumir que a densidade de probabilidade do ruído é uniforme entre -∆ e ∆, e:
2 σn =

1 ∆2 e 2 de = . 2∆ −∫ 3 ∆

(4.26)

Repare-se que 2∆ = ∆q, pelo que a expressão 4.26 coincide com a expressão 3.2. A SNR de quantificação virá, com o valor mínimo de ∆ imposto pela equação 4.25:
SNRq = P
2 σn

⎛ f 3 = 2 P = 3⎜ ' s ⎜m ∆ ⎝ max

⎞ ⎟ P. ⎟ ⎠

2

(4.27)

Em geral a derivada máxima do sinal de entrada é dada pela frequência máxima do sinal W, correspondendo a 2πW mmax . Para sinais de fala, contudo, esta dá-se para uma frequência inferior, tipicamente f’<1333,3 Hz. De modo a ter em consideração a relação (W/f’) a equação 4.27 pode ser alterada para,
⎛ fs SNRq = 3⎜ ⎜ 2πf ' m max ⎝ ⎞ ⎛ 2W ⎞ 3 ⎛W ⎞ ⎟ P = 3⎜ ⎟ ⎜ ⎟ ⎜ 2πf ' ⎟ Pn = π 2 ⎜ f ' ⎟ Pn ⎟ ⎠ ⎝ ⎠ ⎝ ⎠
2 2 2

(4.28)

ou em decibéis:
⎛W ⎞ ⎛ 3P ⎞ SNRdB = 20 log10 ⎜ ' ⎟ + 10 log10 ⎜ 2n ⎟ . ⎜f ⎟ ⎝π ⎠ ⎝ ⎠

(4.29)

4.2.2

ADM – Modulação Delta adaptada O DM não é competitivo 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 [Jayant (84)], dando origem à Modulação Delta adaptada (ADM – Adaptive Delta Modulation).

42

Modulação de impulsos

Carlos Meneses

Note-se que o ruído de saturação de declive na modulação delta pode ser detectado 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 detecção de ambos os tipos de ruído pode ser aproveitada para adaptar o valor do passo ∆ de quantificação. São conhecidos alguns métodos de adaptação, utilizando algoritmos amostra-a-amostra, seguindo o princípio acima referido, devendo este ser aumentado quando se detecta ruído de saturação de declive e diminuído quando se detecta ruído granular. Um método simples, mas eficaz, de adaptação amostra-a-amostra, tem a regra seguinte:

⎛ b[n − 1] ⎞ ∆[n] = ∆[n − 1]⎜1 + α ⎟, ⎜ b[n] ⎟ ⎝ ⎠

0 <α <1

(4.30)

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 4.9.

Figura 4.9 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 indicia distorçã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.

Sobre-amostragem

43

5

Sobre-amostragem Todas as análises aos codificadores apresentadas até agora pressupuseram

que a frequência de amostragem é a frequência de Nyquist, fs=2W, a que correspondia o menor débito binário (equação 3.7). Veremos nesta secção o efeito da sobre-amostragem (utilização de uma frequência maior que a frequência de Nyquist) nos diversos codificadores. 5.1 Ganho de filtragem O ruído de quantificação tem normalmente, para sinais aleatórios, uma densidade espectral plana (ruído branco) entre as frequências -fs/2 a fs/2. Por este facto, como mostrado na figura 5.1, a potência do ruído pode ser diminuída por filtragem passa-baixo à frequência máxima do sinal de entrada (W).

Figura 5.1 Função densidade espectral de potência do ruído de quantificação. Estendendo-se o espectro de potências do ruído entre -fs/2 e fs/2 é possível diminui-lo por filtragem passa-baixo à máxima frequência W do sinal de entrada.

O ganho de filtragem é a relação entre a área da função densidade espectral de potência do ruído antes e depois da filtragem:
Gf = fs = OSR , 2W

(5.1)

em que OSR (over-sampling ratio) é uma medida da sobre-amostragem e corresponde ao número de vezes que a frequência de amostragem excede a frequência de Nyquist. A duplicação da frequência (1 oitava) leva a um ganho de 3 dB (10log10(2)).

44

Modulação de impulsos

Carlos Meneses

5.2 Sobre-amostragem em PCM e DPCM A sobre-amostragem pode ser utilizada quer em PCM quer em DPCM, sendo válida a equação 5.1 do ganho de filtragem. A duplicação da frequência de amostragem levaria a um aumento de 3 dB da SNR e duplicaria o débito binário. Contudo, se o sinal após a filtragem for decimado para a frequência de Nyquist o efeito da sobre-amostragem desaparecerá, mas o sinal poderá ser codificado com mais 0,5 bits (6 dB por bit) por cada oitava de OSR. Esta operação seria efectuada digitalmente, sendo a conversão analógica efectuada com menos bits por amostra e portanto com menos resolução. Em relação ao DPCM falta contabilizar o acréscimo no ganho de predição devido à diminuição do tempo entre amostras, com a consequente maior correlação. Por cada oitava de aumento na frequência de amostragem o tempo entre amostras passa para metade, o que leva a metade da máxima variação e, consequentemente, a metade do valor máximo de quantificação V1. Como a SNR depende quadraticamente deste valor (equação 4.4) o aumento correspondente é de mais 6 dB, sendo o aumento final de 9 dB por oitava. Continua assim a ser preferível aumentar o número de bits por amostra com um aumento de 6 dB por cada bit. 5.3 Sobre-amostragem em DM A codificação DM é de facto um compromisso entre a fuga à saturação de declive e a minimização do ruído granular. Para resolver este problema uma alternativa à adaptação do passo de quantificação é a sobre-amostragem. Esta, como em DPCM, faz aumentar a correlação (parecença) entre amostras adjacentes (equações 4.25 e 4.27), diminuindo o valor do passo ∆ do quantificador, embora à custa do aumento do débito binário. Repare-se que desde que o codificador esteja a funcionar à volta do ponto óptimo (mínimo de ruído granular sem saturação de declive), a função densidade espectral de potência do ruído é plana, como pressuposto na equação 5.1. Se pelo contrário o

Sobre-amostragem

45

codificador estiver a funcionar numa zona de predominância de ruído granular a função densidade espectral de potência do ruído tem um carácter passa-alto. Numa zona de declive nulo do sinal, por exemplo, o ruído granular produz uma onda quadrada cuja primeira harmónica se situa em fs/2, que é completamente eliminada pela filtragem passa-baixo no receptor. Nestas condições a equação 5.1 constitui assim um limite inferior para o ganho de filtragem.

Figura 5.2 Receptor DM com filtragem final passa-baixo (W).

A equação completa da SNR em DM com pós-filtragem, na ausência de saturação de declive, é dada multiplicando a equação 4.27 pela equação 5.1,
⎛ f SNRq = 3⎜ ' s ⎜m ⎝ max ⎞ f s3 ⎟ PG f = 3 P, 2 ⎟ ' 2Wmmax ⎠
2

(5.2)

verificando-se a sua dependência com o cubo da frequência de amostragem. Por cada oitava o ganho é de 10log10(23)=9 dB de relação sinal-ruído, como em DPCM, mas o débito binário também duplica. A grande vantagem do DM é a sua baixa complexidade e consequente preço, mesmo quando opera a frequências de amostragem elevadas, pois pode ter directamente como entrada o sinal analógico e utilizar componentes analógicos (conversor de 1 bit implementado com comparador, integrador com operacional, atraso com S&H). Contudo a diminuição de ∆ para valores perto dos do ruído térmico limitam esta opção. Introduzindo, como em 4.28, a relação (W/f’) entre a frequência máxima do sinal e a frequência da máxima derivada, a equação 5.2 virá, em decibéis:
⎛W ⎞ ⎛ 3 ⎞ SNRdB = 30 log10 (OSR ) + 20 log10 ⎜ ' ⎟ + 10 log10 ⎜ 2 Pn ⎟ . ⎜f ⎟ ⎝π ⎠ ⎝ ⎠

(5.3)

46

Modulação de impulsos

Carlos Meneses

6

Modulação delta-sigma Melhorar a SNR implica nos codificadores estudados a diminuição do

intervalo de quantificação, aumentando o número de intervalos do quantificador ou aumentando a correlação entre amostras. Cabe ao ganho de filtragem um papel menor (3 dB por oitava). A diminuição do intervalo de quantificação tem contudo um limite quando este valor se aproxima do ruído térmico nos amplificadores operacionais. Evitar este limite, mantendo a complexidade baixa, mas melhorando o ganho de filtragem, deu origem à modulação delta-sigma (∆Σ), um dos paradigmas na conversão analógico-digital e digital-analógico. 6.1 Da codificação DM à codificação ∆Σ. O codificadores DM têm dois integradores, um na codificação e outro na descodificação, como mostrado na figura 6.1 a).

Figura 6.1 Da Modulação ∆ à modulação ∆Σ Em cima. Modulação ∆: No meio: Configuração intermédia Em baixo: Modulação ∆Σ.

Modulação delta-sigma

47

Como a integração é uma operação linear, o integrador do descodificador pode ser deslocado para antes do codificador, como mostrado na figura 6.1 b), sem alterar a relação entrada-saída. Estes dois integradores podem ser combinados linearmente em apenas um integrador, na posição mostrada na figura 6.1 c), resultando na modelação ∆Σ. O nome ∆Σ vem do facto de se colocar um integrador à frente de um derivador. 6.2 Formatação do ruído Considere-se o esquema de blocos do codificador ∆Σ apresentado na figura 6.2, totalmente no domínio da frequência (transformada Z), obtido substituindo o integrador pela sua função de transferência 1/(1-z-1) e modelando o quantificador como a soma do sinal à sua entrada com o ruído de quantificação.

Figura 6.2 Esquema de blocos da modulação ∆Σ no domínio da frequência.

Da análise do esquema de blocos da figura 6.2 facilmente se verifica que,
M q ( z) = M ( z ) − M q ( z ) z −1 1 − z −1 + Q( z ) ,

M q ( z) =

M ( z ) − M q ( z ) z −1 + Q( z )(1 − z −1 ) 1 − z −1

,

M q ( z )(1 − z −1 ) = M ( z ) − M q ( z ) z −1 + Q( z )(1 − z −1 ) ,

48

Modulação de impulsos

Carlos Meneses

e obtém-se,
M q ( z ) = M ( z ) + Q( z )(1 − z −1 ) ,

(6.1)

ou seja, o sinal de saída corresponde ao sinal de entrada somado ao ruído de quantificação, sendo este último filtrado pela primeira diferença (1-z-1). A densidade espectral de potência do ruído corresponde ao produto entra a potência do ruído como dado pela equação 3.2 e o módulo ao quadrado da resposta da primeira diferença. Convertendo em análise de Fourier (f contínuo) substituindo z–1 pelo atraso de uma amostra, ou seja, por e–j2πf/fs,

N( f )

2

=

∆2 1 − e − j 2πf / f s 12 f s

2

⎛ 2πf ∆2 = 1 − cos⎜ ⎜ f 12 f s ⎝ s ∆2 = 12 f s = ∆2 12 f s

⎞ ⎛ 2πf ⎟ − j sin ⎜ ⎟ ⎜ f ⎠ ⎝ s
2

⎞ ⎟ ⎟ ⎠

2

⎛ ⎛ ⎞ ⎛ ⎞ ⎛ ⎜1 + cos 2 ⎜ 2πf ⎟ − 2 cos⎜ 2πf ⎟ + sin 2 ⎜ 2πf ⎜ f ⎟ ⎜ f ⎟ ⎜ f ⎜ ⎝ s ⎠ ⎝ s ⎠ ⎝ s ⎝ 2 2 ⎛ ⎛ ⎞⎞ ⎛ ⎞⎞ ∆ ⎛ ⎜ 2 − 2 cos⎜ 2πf ⎟ ⎟ = ∆ ⎜ 4 sin 2 ⎜ πf ⎟ ⎟ = ⎜ f ⎟ ⎟ 12 f ⎜ ⎜ f ⎟⎟ 12 f s ⎜ s ⎝ ⎝ s ⎠⎠ ⎝ s ⎠⎠ ⎝

⎛⎛ ⎜ ⎜1 − cos⎛ 2πf ⎜ ⎜ f ⎜⎜ ⎝ s ⎝⎝

⎛ 2πf ⎞⎞ ⎟ ⎟ + sin 2 ⎜ ⎟⎟ ⎜ f ⎝ s ⎠⎠

⎞⎞ ⎟⎟ ⎟⎟ ⎠⎠

⎞⎞ ⎟⎟ ⎟⎟ ⎠⎠
, (6.2)

esboçado na figura 6.3, em que se verifica que o ruído deixou de ser plano para ser formatado (noise shaping) de modo a ter menos potência na banda do sinal.

Figura 6.3 Distribuição em frequência do ruído de quantificação.

Modulação delta-sigma

49

Ao contrário da modulação diferencial que sofre da possibilidade de saturação de declive ao quantificar a primeira diferença do sinal de entrada mas mantendo o ruído de quantificação inalterado no receptor, na modelação
∆Σ nunca há saturação de declive e é o ruído que é afectado pela primeira

diferença. Outra vantagem é o aumento da robustez a erros de canal, pois o valor da amostra actual deixa de depender do valor das amostras passadas. A modulação ∆Σ quantifica o sinal de entrada e para que não haja saturação de amplitude ∆=2mmax. Impondo esta condição ruído virá:
2 σn

na equação 6.2 e

integrando a densidade espectral do ruído na banda do sinal, a potência do

⎛ πf ⎞ ⎜ ⎟df ⎜f ⎟ ⎝ s⎠ −W 2 W 2 4mmax ⎛ πf ⎞ ⎜ ⎟ df = 3 f s −∫ ⎜ f s ⎟ ⎠ W⎝ 2 4π 2 mmax 3 W = f −W 9 f s3 4∆2 = 12 f s
W

=∫

W

−W

N ( f ) df
2

∫ sin

2

f << f s

α ≈ 0 ⇒ sin(α ) = α

]

=

2 π 2 mmax ⎛ 2W ⎞

3

9

⎜ ⎜ f ⎟ ⎟ ⎝ s ⎠

,

(6.3)

e a relação sinal-ruído de quantificação,

SNRq =
ou em decibéis:

9

π2

OSR 3 Pn ,

(6.4)

⎛ 9P ⎞ SNRdB = 30 log10 (OSR ) + 10 log10 ⎜ 2n ⎟ . ⎝π ⎠

(6.5)

Esta equação é semelhante à equação 5.3 da SNR para DM (com W=f’), com a diferença que para o mesmo OSR se obtém um acréscimo de desempenho de 10log10(3)=4,77 dB. Contudo, se f ' < W / 3 , característica dos sinais de fala mas não de sinais genéricos, então a codificação DM tem melhor desempenho.

50

Modulação de impulsos

Carlos Meneses

A SNR na codificação ∆Σ pode ser melhorada recorrendo a dois tipos de estratégia: utilizar quantificadores multi-bit (tipicamente até 5 bits de codificação), melhorando 6 dB por cada bit de codificação; e utilizar um maior número de derivadores–integradores, o que leva a uma modulação de ordem mais elevada que diminui o ruído na banda. Obviamente estas opções levam ao aumento da complexidade. A densidade espectral do ruído para um modulador de ordem N virá (equação 6.2 elevada à potência N),

∆2 N( f ) = 12 f s
2

⎛ ⎛ ⎜ 4 sin 2 ⎜ πf ⎜ f ⎜ ⎝ s ⎝

⎞⎞ ⎟⎟ , ⎟⎟ ⎠⎠

N

(6.6)

que tomando o ruído na banda virá (Apêndice 3):

SNRq =
ou em decibéis:

3(2 N + 1)

π

2n

OSR (2 N +1) Pn ,

(6.7)

⎛ 3(2 N + 1)Pn SNRdB = (2 N + 1)10 log10 (OSR ) + 10 log10 ⎜ π 2N ⎝

⎞ ⎟. ⎠

(6.8)

Como se pode verificar a SNR aumenta 3(2 N + 1) decibéis por cada oitava de aumento na sobre-amostragem, correspondendo a (N+1/2) bits. 6.3 Conversores AD e DA por modulação ∆Σ Na conversão analógico-digital o sinal que se pretende obter é tipicamente do tipo PCM uniforme. Como já visto, para uma qualidade razoável (16 bits ou mais) a implementação directa em PCM é extremamente complexa pelo número de intervalos de quantificação a distinguir e pela sua dimensão reduzida. O mesmo se passa na conversão digital-analógico em que se pretende uma versão o mais fiel possível da versão digital em PCM uniforme. Uma das vantagens da modulação ∆Σ prende-se com o facto do valor do passo de quantificação ∆ ser igual ao dobro do valor máximo do sinal de entrada, não dependendo nem da derivada do sinal nem da relação de

Modulação delta-sigma

51

sobre-amostragem, minimizando a complexidade para uma SNR elevada. Se para melhorar a qualidade for utilizado um quantificador multi-bit, este não ultrapassa tipicamente os 5 bits, mantendo a complexidade aceitável. Por esta razão duas das principais aplicações da modulação ∆Σ são a conversão analógico-digital e a digital-analógico, nomeadamente de sinais com largura de banda tipicamente inferior a 200 kHz (fala e áudio), que mesmo com valores razoáveis de sobre-amostragem não requer uma frequência de amostragem demasiado elevada.

6.3.1

Conversão digital-analógico com modulação ∆Σ. Na conversão digital-analógico o sinal de entrada é um sinal PCM

uniforme com R0 bits por amostra. Este é interpolado de OSR amostras de modo a converte-lo num sinal sobre-amostrado OSR vezes (figura 6.4). Nesta fase o sinal contém R1 bits por amostra, em que R1 é igual ou ligeiramente inferior a R0. Este é a seguir colocado no modulador ∆Σ, convertendo-o num sinal de 1 bit por amostra, mas em que a maior parte do ruído está fora da banda do sinal. Este é primeiro convertido num sinal analógico com dois valores (DAC de 1 bit), fácil de realizar, e depois filtrado na banda de modo a reduzir o ruído.

Figura 6.4 Diagrama de blocos de um conversor digital-analógico ∆Σ. LPF – Filtro passa-baixo; Interp-N – Interpolação de N amostras;

De modo a manter a qualidade do sinal PCM uniforme (equação 3.4) de origem a relação de sobre-amostragem OSR tem que ser tal que a SNR em ∆Σ (equação 6.5 ou 6.8 para N>1) seja pelo menos igual a esse valor:

52

Modulação de impulsos

Carlos Meneses

R0 ≤

(2 N + 1)10 log10 (OSR ) + 10 log10 ⎛ (2 N2 + 1) ⎞ ⎜ ⎟ N
⎝ π 6,02

⎠.

(6.9)

6.3.2

Conversão analógico-digital com modulação ∆Σ. O resultado de qualquer conversão analógico-digital é tipicamente um

sinal em PCM uniforme. A conversão analógico-digital utilizando modulação ∆Σ começa com a filtragem passa-baixo, de modo a limitar a frequência do sinal de entrada a um valor máximo W. Este sinal é aplicado a um modulador
∆Σ (figura 6.4), que converte o sinal em 1 bit por amostra com uma relação de

sobre-amostragem de OSR vezes. Como grande parte do ruído de situa fora da banda do sinal este é seguidamente filtrado digitalmente, convertendo-se o sinal em PCM uniforme com R0 bits por amostra, a uma frequência de amostragem de 2WN amostras por segundo. Finalmente este sinal é decimado de modo a que a frequência de amostragem seja a frequência de Nyquist.

Figura 6. 5 Diagrama de blocos de um conversor analógico-digital ∆Σ. LPF – Filtro passa-baixo; Decim-N – Decimação de N amostras.

Para uma dada SNR

(equação 3.4) correspondente a R0 bits por

amostra pretendidos em PCM uniforme, a relação de sobre-amostragem OSR deve que ser tal que a SNR em ∆Σ (equação 6.5 ou 6.8 para N>1) seja pelo menos igual a esse valor, como já na equação 6.9. Um método alternativo de converter o sinal para digital, por exemplo utilizado em DVD para guardar sinais de áudio, não utiliza os blocos digitais de

Sumário

53

filtragem e decimação, guardando directamente os bits à saída do modulador ∆Σ (DSD – Direct Stream Digital). Uma das vantagem deste formato é tornar a re–conversão para digital extremamente simples, pois apenas necessita de um DAC de 1 bit e uma filtragem passa-baixo (parte analógica na figura 6.4). 7 Sumário Este texto descreveu 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 (SNR) de quantificação, medida objectiva da qualidade, para os diversos métodos de codificação apresentados, tendo sido realçado o compromisso com o débito binário produzido. Em PCM uniforme o valor da SNR é excessivamente dependente da potência do sinal de entrada, o que o torna pouco atractivo. Na quantificação não uniforme utilizando uma não linearidade pseudo-logarítmica, a SNR torna-se quase independente da potência do sinal de entrada ficando apenas dependente do número de bits de codificação por amostra. Dada uma distribuição de amplitudes é ainda possível construir codificadores que maximizem a SNR, desde que os sinais de entrada exibam a mesma distribuição. As modulações diferenciais, ao predizer o valor de uma amostra tirando partido da correlação entre amostras consecutivas, têm ainda uma melhoria na SNR devido à introdução do ganho de predição. Foram ainda apresentados os princípios básicos da predição e da quantificação adaptada, que se ajustam às características dos sinais a codificar. No entanto, ao depender das amostras passadas, a modulação diferencial perde robustez na presença de erros no canal de transmissão. A sobre-amostragem impele o ruído de quantificação para fora da banda do sinal, sendo este reduzido por filtragem. A modulação ∆Σ emprega sobre-amostragem com a vantagem de formatar passa–alto o ruído de

54

Modulação de impulsos

Carlos Meneses

quantificação, diminuindo ainda mais o ruído na banda. Não sendo uma modulação diferencial tem ainda a vantagem de ser mais robusto a erros de canal. Nos critérios de escolha de um codificador para determinada aplicação existem alguns atributos que são decisivos, enquanto que outros ou não têm influência ou algum compromisso pode ser levado em consideração. Para além do débito binário produzido e da qualidade do sinal de saída, os atributos mais relevantes dos codificadores são a complexidade (preço), o atraso introduzido e a robustez contra erros de canal. Existem claramente compromissos em relação a estes atributos, já que por exemplo a diminuição do débito binário só é possível tirando partido da correlação entre amostras, o que leva a um aumento da complexidade e à diminuição da robustez a erros de canal. Estes conceitos deverão ser aprofundados noutras disciplinas, que abordarão outros métodos de codificação capazes de atingir débitos binários mais baixos.

Formulário

55

Principais Fórmulas
P Pn
2 σq

Potência do sinal de entrada Potência normalizada do sinal de entrada Potência do ruído de quantificação Máxima tensão de quantificação em PCM Intervalo de quantificação Máxima tensão do sinal de entrada Máxima frequência do sinal de entrada Frequência de amostragem Número de bits de codificação por amostra Débito binário SNR de quantificação em dB Potência do erro de predição Máxima tensão de quantificação do erro de predição em DPCM Auto-correlação normalizada do sinal de entrada Ganho de predição relação de sobre-amostragem Ordem em ∆Σ

V

∆q
mmax W fs R Rb SNRdB Pe V1 r[k] Gp OSR N

f s ≥ 2W , Rb = R × f s Pn =
PCM uniforme

(2.2) (3.7) (3.6)

P , 2 mmax

∆q =

2V 2V = R . L 2
∆2q 12

(3.1) (3.2) (3.4)

σ =
2 q

,

⎛ 3P ⎞ SNRdB = 6,02 R + 10 log10 ⎜ 2 ⎟ ⎝V ⎠
PCM não uniforme, Lei-A/Lei-µ, zona logarítmica:

SNRdB = 6,02 R − 10
DPCM

(3.19)

⎛ 3P ⎞ ⎛ 3P SNRdB = 6,02 R + 10 log10 ⎜ 2 ⎟ = Gp dB + 6,02 R + 10 log10 ⎜ 2e ⎜V ⎟ ⎜V ⎝ 1 ⎠ ⎝ 1

⎞ ⎟ ⎟ ⎠

(4.4/6)

56

Modulação de impulsos

Carlos Meneses

Gp =
⎛P G p dB = 10 log10 ⎜ ⎜P ⎝ e
Preditor adaptado de 1ª ordem:

P V2 ≈ , Pe V12

(4.9) (4.14)

⎡ ⎤ ⎞ 1 ⎟ = 10 log10 ⎢ ⎥ ⎟ 2 1 ⎠ ⎣ 1 + a − 2ar [ ] ⎦

(

)

a = r [1]

(4.20)

⎛ 1 G p dB = 10 log10 ⎜ ⎜ 1 − r [ ]2 1 ⎝
Sobre-amostragem PCM/DPCM/DM

⎞ ⎟ ⎟ ⎠

(4.21)

G f = OSR =
DM

fs , 2W

(5.1)

∆≥

m ' max ∂m(t ) Ts = ∂t max fs

(4.25)

⎛W ⎞ ⎞ ⎛ 3 SNRdB = 30 log10 (OSR ) + 20 log10 ⎜ ' ⎟ + 10 log10 ⎜ 2 Pn ⎟ ⎜f ⎟ ⎠ ⎝π ⎝ ⎠
ADM

(5.3)

⎛ b[n − 1] ⎞ ∆[n] = ∆[n − 1]⎜1 + α ⎟ ⎜ b[n] ⎟ ⎝ ⎠
∆Σ

0 <α <1

(4.30)

⎛ 9P ⎞ SNRdB = 30 log10 (OSR ) + 10 log10 ⎜ 2n ⎟ = 30 log10 (OSR ) + 10 log10 (0,912 Pn ) (6.5) ⎝π ⎠
Ordem N

⎛ 3(2 N + 1)Pn ⎞ SNRdB = (2 N + 1)10 log10 (OSR ) + 10 log10 ⎜ ⎟ π 2N ⎝ ⎠

(6.8)

Apêndices

57

Apêndices Apêndice 1 - Função de auto-correlação temporal de uma sinusóide discreta. Solução: i. A função de auto-correlação temporal (e não estatística) para sinais discretos é definida por R[k ] = lim

1 N ∑ m[n]m[n − k ], correspondendo ao N →∞ 2 N n = − N

produto interno do sinal e da sua versão deslocada de k amostras. ii. Para calcular esta função para uma sinusóide discreta, opta-se por a calcular em tempo contínuo e amostrar seguidamente. iii. A função de auto-correlação para sinais contínuos corresponde ao produto interno do sinal e da sua versão deslocada de um tempo τ: T 1 R(τ ) = lim m(t )m(t − τ )dt . T → ∞ 2T ∫ −T iv. Para uma sinusóide A cos(2πf 0t + α ) , com período fundamental To

1 R(τ ) = T0

T0 / 2

−T0 / 2

∫ A cos(2πf t + α )A cos(2πf
0 T0 / 2

0

(t + τ ) + α )dt
A 2 cos(2πf 0τ ) T0 / 2 t −T / 2 0 2T0

A2 R(τ ) = 2T0 R(τ ) =
2

−T0 / 2

∫ [cos(2πf 0τ ) + cos(4πf 0 t + 2πf 0τ + 2α )]dt =

A cos(2πf 0τ ) 2 v. Amostrando esta função com período Ts (τ=kTs) virá,
R[k ] = ⎛ f ⎞ A2 cos⎜ 2π 0 k ⎟ ⎜ fs ⎟ 2 ⎝ ⎠

vi. A auto-correlação de ordem 0 corresponde à potência do sinal. A auto-correlação normalizada virá:
r [k ] = ⎛ f ⎞ R[k ] = cos⎜ 2π 0 k ⎟ . ⎜ R[0] fs ⎟ ⎝ ⎠

vii. A auto-correlação de uma sinusóide não depende da fase inicial e a auto-correlação normalizada também não depende da amplitude. A auto-correlação de uma sinusóide discreta depende da relação f0/fs e não dos seus valores absolutos.

58

Modulação de impulsos

Carlos Meneses

Apêndice 2 – Sinusóide com preditor unitário Prova que equação 4.10, assumindo um preditor unitário, é exacta para entrada sinusoidal. Solução:

1 2(1 − r [1]) ii. Para uma sinusóide a auto-correlação normalizada para 1 amostra de ⎛ f ⎞ pelo que atraso vem (apêndice 1) r [1] = cos⎜ 2π 0 ⎟ , ⎜ fs ⎟ ⎝ ⎠
i. Pela equação 4.17, G p = . ⎛ ⎛ f0 ⎞⎞ ⎟⎟ 2⎜1 − cos⎜ 2π ⎜ ⎜ fs ⎟⎟ ⎝ ⎠⎠ ⎝ iii. Assumindo a aproximação da equação 4.10,
V1 = ⎛ ⎛ ⎛ f ⎞ ⎛ f ⎞ f ⎞⎞ V2 = V 2 2⎜1 − cos⎜ 2π 0 ⎟ ⎟ = V 2 4 sin 2 ⎜ π 0 ⎟ = 2V sin ⎜ π 0 ⎟ , ⎜ ⎟⎟ ⎜ f ⎟ ⎜ f ⎟ ⎜ Gp fs ⎠⎠ s ⎠ s ⎠ ⎝ ⎝ ⎝ ⎝

Gp =

1

que corresponde de facto, para uma sinusóide, à 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 sinusóide, ⎛ f ⎞ ∆ = 2V sin ⎜ π 0 ⎟ é uma melhor (menor) estimativa de ∆ do que a ⎜ f ⎟ s ⎠ ⎝ f produzida por 2Vπ 0 . Estas coincidem para f 0 << f s , pois nestas fs
⎛ f ⎞ f condições 2V sin ⎜ π 0 ⎟ ≈ 2Vπ 0 . ⎜ f ⎟ fs s ⎠ ⎝

Apêndices

59

Apêndice 3 - SNR para a modulação ∆Σ de ordem N (com base na equação 6.6 da densidade espectral do ruído formatado) Solução: i. Exemplo de um modulador ∆Σ de 2ª ordem

ii. A potência do ruído na banda W do sinal é igual ao integral da densidade espectral do ruído nessa banda:

∆2 N q = ∫ N ( f ) df = 12 f s −W
W 2 W ∆2 N ⎛ ⎛ πf Nq = 4 ∫ ⎜⎜ 12 f s −W ⎜ ⎜ f s ⎝⎝ 2 mmaxπ 2 N 4 N 2 N +1 3 fs W

⎛ 2 ⎛ πf ∫ ⎜ 4 sin ⎜ f s ⎜ ⎜ ⎝ −W ⎝
W

⎞⎞ ⎟ ⎟ df ⎟⎟ ⎠⎠
f << fs

N

⎞⎞ ⎟ ⎟ df ⎟⎟ ⎠⎠

2N

Nq =

−W

f 2 N df =

2 2 W mmaxπ 2 N 4 N mmaxπ 2 N 2 2 N f 2 N +1 = 2W N +1 2 N +1 2 N +1 −W 3(2 N + 1) f s 3(2 N + 1) f s

2 mmaxπ 2 N 2 2 N m 2 π 2 N ⎛ 2W ⎜ Nq = 2W n +1 = max 2 N +1 3(2 N + 1) ⎜ f s 3(2 N + 1) f s ⎝

⎞ ⎟ ⎟ ⎠

2 N +1

iii. Pelo que a SNR virá

SNRq =

P 3(2 N + 1) ⎛ f s ⎞ = ⎜ ⎟ π 2 N ⎝ 2W ⎠ Nq

2 N +1

P 3(2 N + 1) OSR 2 N +1 Pn = 2 2N π mmax

iv. Em decibéis:

⎛ P ⎞ ⎟ = (2 N + 1)10 log10 (OSR ) + 10 log10 ⎛ 3(2 N + 1)Pn ⎞ SNRdB = 10 log10 ⎜ ⎜ ⎟ ⎜N ⎟ π 2N ⎝ ⎠ q ⎠ ⎝

Exercícios resolvidos

61

Exercícios resolvidos 1. Produza quantificadores midtread e midrise com 8 intervalos de quantificação uniformes, para quantificar sinais até 1 Volt. Defina um código numérico sequencial do valor mais baixo para o mais elevado. Solução: i. Utilizando a equação 3.1, o intervalo de quantificação ∆q =2/8=250 mV. ii. Os valores de quantificação em midtread incluem o valor 0 Volts, somando e subtraindo desde aí ∆q, não ultrapassando as tensões máximas ±1 Volt. iii. Os valores de decisão encontram-se a meio dos valores de quantificação, com excepção dos extremos cujos valores são ±∞. iv. Os valores de decisão em midrise incluem o 0 Volts, somando e subtraindo desde aí ∆q. nunca ultrapassando as tensões máximas ±1 Volt, com excepção dos extremos cujos valores são ±∞. v. Os valores de quantificação encontram-se a meio dos valores de quantificação. vi. Numera-se cada valor de quantificação, sequencialmente, do valor mais baixo para o mais elevado.
Quantificação midtread Valores de Valores de decisão quantificação ∞ 1 0,875 0,75 0,625 0,5 0,375 0,25 0,125 0 -0,125 -0,25 -0,375 -0,5 -0,625 -0,75 -∞ Quantificação midrise Valores de Valores de decisão quantificação ∞ 0,875 0,75 0,625 0,5 0,375 0,25 0,125 0 -0,125 -0,25 -0,375 -0,5 -0,625 -0,75 -0,875 -∞ Código dec/bin 7 (111) 6 (110) 5 (101) 4 (100) 3 (011) 2 (010) 1 (001) 0 (000)

62

Modulação de impulsos

Carlos Meneses

2. Utilize o quantificador midrise e consequente codificador PCM do exercício nº 1 para quantificar um sinal sinusoidal de amplitude 1 Volt e frequência de 1300 Hz (sin(2π1300t)), amostrado com 8000 amostras por segundo (8 kHz). Represente as 8 primeiras amostras e a respectiva sequência binária transmitida. Calcule a potência do ruído e a relação sinal-ruído de quantificação. Calcule o débito binário. Solução: i. A amostra de ordem n corresponde a substituir no sinal t por nTs ⎛ 1300 ⎞ m[n] = sin(2π 1300t ) t = nT = sin⎜ 2π n⎟ s ⎝ 8000 ⎠ ii. Para cada amostra verifica-se em que intervalo do quantificador esta recai (tabela do exercício 1) e o respectivo código.
Amostra Amostragem n 0 1 2 3 4 5 6 7 m[n] 0,000 0,853 0,891 0,078 -0,809 -0,924 -0,156 0,760 Quantificação mq[n] -0,125 0,875 0,875 0,125 -0,875 -0,875 -0,125 0,875 q[n] 0,125 -0,022 0,016 -0,047 0,066 -0,049 -0,031 -0,115 Codificação decimal 3 7 7 4 0 0 3 7 binário 011 111 111 100 000 000 011 111

iii.

A sequência binária a ser transmitida corresponde à concatenação por ordem temporal dos códigos em binário: 011111111100000000011111 2 mmax iv. A potência do sinal é dada por P = = 0,5 Watts. Utilizando a 2 ∆2 equação 3.2 o ruído de quantificação vem N q = = 0,0052 Watts, pelo 12 ⎛ P ⎞ ⎟ = 19,82 dB. que a SNRdB = 10 log10 ⎜ ⎜N ⎟ ⎝ q⎠ v. O mesmo valor pode ser obtido através da equação 3.4 ⎛ 3P ⎞ ⎛ 3 × 0,5 ⎞ SNRdB = 6,02 R + 10 log10 ⎜ 2 ⎟ = 6,02 × 3 + 10 log10 ⎜ 2 ⎟ = 19,82 dB. ⎝V ⎠ ⎝ 1 ⎠ vi. O Débito binário é de Rb = fsxR = 8000x3 = 24 kbit/s.

Exercícios resolvidos

63

3. Suponha um sinal com uma distribuição uniforme entre –1 e +1 Volts. 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, bem como a sua variância. b) Determine a SNR 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 SNR na situação correspondente à alínea anterior e compare com o resultado obtido com PCM uniforme. Solução: i. a) Sendo a distribuição de amplitudes do sinal de entrada uniforme (plana) entre –1 e +1 Volts, esta vale 0 fora do intervalo e ½ no intervalo de modo a que a sua área seja 1. ii. Sendo a distribuição 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 podia

ser calculada como m =

−∞

11 ∫ f (m)mdm = 2 2 m
m

2 1

−1

= 0.

iii. A variância (potência) vem

P=

−∞

∫ f (m)m
m

2

dm =

11 31 1 1 m = (1 + 1) = Watt. −1 23 6 3

iv. A fórmula genérica da potência de um sinal com distribuição uniforme e amplitude mmax é dada por m2max/3. v. Pelo teorema da amostragem a frequência mínima de amostragem (produz o débito binário mínimo) é a frequência de Nyquist 2W=8kHz. vi. b) O número de bits por amostra, dado pela equação 3.7, são 48/8=6 bits/amostra. vii. A SNR em PCM uniforme é dada pela equação 3.4

⎛ 3P ⎞ ⎛ 3 1⎞ SNRdB = 6,02 R + 10 log10 ⎜ 2 ⎟ = 6,02 × 6 + 10 log10 ⎜ 2 ⎟ = 36,12 dB. ⎝V ⎠ ⎝1 3 ⎠

64

Modulação de impulsos

Carlos Meneses

viii. c) A percentagem de tempo que o sinal se encontra na zona linear,

m<

1 , corresponde à área da densidade de probabilidade nesta condição, A

ou seja, à área do rectângulo de lados 1/2 e 2/A. Esta área vale 1/A. Como A=87,56, a percentagem de tempo é de 1,14%.

ix. A percentagem de tempo na zona logarítmica é a restante, ou seja, 100-1,14=98,86%. x. O sinal está praticamente sempre na zona logarítmica, pelo que a aproximação correspondente à equação 3.19 é válida. xi. d) A SNR é de SNRdB = 6,02 R − 10 = 6,02 × 6 − 10 = 26,12 dB. xii. 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.4 a SNR em PCM uniforme é melhor que em companding quando a potência normalizada está acima dos 14,77 dB. xiii. O quantificador óptimo para um sinal com distribuição uniforme é de facto um quantificador uniforme. 36,12 dB é assim a melhor SNR em PCM.

Exercícios resolvidos

65

4. Produza um quantificador companding Lei-A (A=87,56) com 8 intervalos de quantificação. Soluçã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 3.6 (Lei-A).
Quantificação uniforme Valores de Valores de decisão quantificação ∞ 0,875 0,75 0,625 0,5 0,375 0,25 0,125 0 Companding Lei-A Valores de Valores de decisão quantificação 0,505 0,255 0,128 0,065 0,033 0,017 0,008 0

1

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 0 0,000

0,75

0,5

0,25

0

0,250

0,500

0,750

1,000

66

Modulação de impulsos

Carlos Meneses

5. 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. Quantificador 1 Quantificador 2 Quantificador 3 Código -0,8536 -0,7485 -0,3057 00 Valores de quantificação -0,2945 0,2983 -0,2463 0,2535 -0,0910 0,0948 01 10 0,8529 0,7525 0,3061 11

Estes quantificadores são resultado do algoritmo de quantificação óptimo Max-Lloyd, tendo como entrada as três funções de distribuição da figura seguinte, referenciados por a, b, e c.
- Distribuiçao a 0.015

0.01

0.005

0 -1 6 5 4 3 2 1 -1 0.05 0.04 0.03 0.02 0.01 0 -1

-3 x 10

-0.8

-0.6

-0.4

-0.2

0 - Distribuiçao b -

0.2

0.4

0.6

0.8

1

-0.8

-0.6

-0.4

-0.2

0 - Distribuiçao c -

0.2

0.4

0.6

0.8

1

-0.8

-0.6

-0.4

-0.2

0

0.2

0.4

0.6

0.8

1

a) Identifique qual das distribuições (a, b, c) corresponde a cada um dos quantificadores (1, 2, 3). Porque? 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) Indique qual os valores representados pela sequência 110100

Exercícios resolvidos

67

Solução: i. a) As 3 distribuições 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, à distribuição (a) corresponderá ao quantificador com valores menores, o quantificador (3) e à (c) ao com valores maiores, o quantificador (1). À distribuição (b) corresponde o quantificador que falta atribuir, o quantificador (2), mas este é 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 2.7). Valores de quantificação Valores de decisão Código Assim:

-0,8536 -0,5741 00

-0,2945 0,0019 01

0,2983 0,5756 10

0,8529

11

iii. Para cada amostra verifica-se em que intervalo do quantificador esta recai (quantificação) e o respectivo 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. Repare-se que as distribuições têm o valor máximo de 1, pelo que o quantificador está saturado; iv. c) 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 respectivo, 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

68

Modulação de impulsos

Carlos Meneses

6. Suponha um sinal sinusoidal de amplitude 1 Volt e frequência 500 Hz, amostrado a 8000 Hz e codificado em DPCM unitário. O valor máximo do quantificador midtread é de 0,4 Volts. O número de bits de codificação por amostra é de 2. Qual a sequência binária a ser transmitida para as 8 primeiras amostras? Solução: i. Segue-se a metodologia do problema 1 para calcular o quantificador:
Valores de decisão ∞ 0,2 0,1 0 -0,1 -0,2 -0,3 -∞ 0 (00) 1 (01) 2 (10) Valores de quantificação 0,3 dec/bin 3 (11)

ii. As 6 primeiras amostras correspondem a substituir n por 0 até 6 na 500 ⎞ ⎛ expressão m[n] = sin(2π 500t ) t = nT = sin⎜ 2π n⎟ s ⎝ 8000 ⎠ iii. Assume-se um valor predito inicial de 0 Volts. 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 (unitário). viii. Repete-se iv) a vii) até à última amostra.
n 0 1 2 3 4 5 6 7 m[n] 0,00 0,38 0,71 0,92 1,00 0,92 0,71 0,38 mp[n 0 0,1 0,4 0,7 1 1,1 1 0,7 e[n] 0,00 0,28 0,31 0,22 0,00 -0,18 -0,29 -0,32 eq[n] 0,1 0,3 0,3 0,3 0,1 -0,1 -0,3 -0,3 mq[n] 0,1 0,4 0,7 1 1,1 1 0,7 0,4 código 10 11 11 11 10 01 00 00 Ruído -0,1 -0,02 0,01 -0,08 -0,1 -0,08 0,01 -0,02

Exercícios resolvidos

69

7. Suponha-se um sinal sinusoidal de amplitude 1 Volt e frequência 320 Hz, amostrado a 8000 Hz. Calcule a SNR para os diversos codificadores apresentados. Tome como referência 8 bits por amostra. Solução: i. Como a amplitude da sinusóide é 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 SNR de 50 dB (equação 3.5). iii. Um codificador PCM companding produz uma SNR de 38 dB (equação 3.19). iv. Sabendo que a função de auto-correlação de um sinal sinusoidal é uma função cosseno com a mesma frequência de amostragem (Apêndice 1), r[k]=cos(2π320kTs), então r[1]=0,968, pelo que o ganho de predição de um codificador DPCM virá Gp=15,88 (linear) ou Gp=12,09 dB (equação 4.21). v. Note-se que para uma correlação normalizada tão elevada praticamente não existe diferença de um preditor óptimo para um preditor unitário, que produz 12,02 dB (equação 4.17). vi. Um codificador DPCM com 8 bits por amostra produz 62 dB de SNR (equação 4.11, SNR em PCM uniforme + Gp). vii. A tensão de quantificação nestas condições é de 0,25 Volts (equação 4.10) viii. De modo a manter a mesma SNR que em PCM uniforme seriam 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 auto-correlação desceria para r[1]=0,876 e o ganho de predição para Gp=6,34 dB, pelo que a melhoria em relação ao PCM seria equivalente a apenas 1 bit por amostra (56,26 dB) com a utilização de DPCM. x. A mesma SNR em DPCM e PCM dá-se para a frequência fs/6=1333,3 Hz (equação 4.17, r[1]=0,5 ou 4.22). Acima desta frequência DPCM será pior.

70

Modulação de impulsos

Carlos Meneses

xi. Repare-se que a SNR em PCM não varia com a alteração da frequência do sinal de entrada. xii. Relembre-se o ponto ix), em DPCM, da perda de 6 dB 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)). xiii. 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 16000*8=128 kbit/s. xiv. Obtêm-se melhores resultados 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. xv. O débito binário é de apenas 80 kbit/s. xvi. A derivada máxima do sinal, V2πW=2010 V/s. xvii. Num codificador DM o valor mínimo de ∆ será de 251 mV (equação 4.25), o que conjuntamente com a equação 4.26 produz uma potência de ruído de quantificação de 21 mW. Como a amplitude da sinusóide é de 1 V a sua potência é de 0,5 W e a SNR corresponderá a 13,76 dB (correspondente à equação 4.27). xviii. A SNR é mais baixa mas o débito binário também é de apenas 8 kbit/s. xix. Para o mesmo débito binário do PCM (64 kbit/s), a sobre-amostragem é de Rb/(2W)=8 vezes (Rb=fs e W=4kHz metade do fs original e f’=320Hz). xx. A SNR virá então (equação 5.4) 40 dB. xxi. Nestas condições o valor de ∆ é de 3,1 mV (equação 4.25). xxii. Para manter a mesma SNR que em PCM uniforme (50 dB) são necessários mais 9 dB, que corresponde a uma década e fs=128kHz. xxiii. Para um modulador ∆Σ a sobre-amostragem é de 60 vezes (equação 6.3), pelo que a frequência de amostragem virá 60*2*W=480kHz. xxiv. Ao contrário do que acontece em DM, o valor de ∆ em ∆Σ é sempre

∆=2mmax= 2 Volt, qualquer que seja a frequência de amostragem.

Exercícios resolvidos

71

8. Um CD de áudio contem sinais em estéreo com frequências entre os 20

Hz e os 20 kHz, 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 800 Mbytes? b) Calcule a SNR assumindo uma sinusóide como sinal de entrada. c) Se implementar o conversor analógico-digital através de uma modulação
∆Σ de 1 bit a uma frequência de amostragem de 2,8224 MHz, qual a ordem

mínima para manter a qualidade requerida?

d) Se baixar a frequência de amostragem uma década mas compensar com
um quantificador multi-bit, quantos bits são necessários para manter a mesma qualidade? Soluçã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 800 Mbytes (valor aproximado) poderá gravar até 8*800/1,4112 = 4535 segundos ou 75,5 minutos. iii. b) A qualidade dos sinais CD áudio é de ≈96 dB (equação 3.5). iv. c) A sobre-amostragem é de 2822,4/44,1=64 vezes. v. A SNR produzida por um modulador de 1ª ordem é de ≈51 dB (equação 6.5), claramente insuficiente para a qualidade CD áudio. vi. Para produzir uma SNR equivalente a estes 50 dB em PCM uniforme são necessários apenas 8 bits por amostra (equação 3.5). vii. Para aumentar a qualidade utiliza-se um modulador de 2ª ordem, a que correspondem ≈79 dB (equação 6.8 com n=2), ainda insuficiente. viii. Para um modulador de 3ª ordem correspondem ≈106 dB, valor já superior aos ≈96 dB requeridos, tendo mesmo mais de 1 bit de folga. ix. d) Se baixar a frequência de amostragem uma década, a perda na SNR é de 3(2 N + 1) dB. Para N=3 a perda é de 21 dB (N+1/2 bits). Para a compensar são necessários mais 4 bits (4x6 = 24 dB), mas devido à folga existente são precisos apenas 2 bits (12 dB), ficando um total de 3 bits.

73

Exercícios propostos

1. Suponha um sinal com largura de banda de 10 kHz e amplitude máxima de 10 Volts. 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 sinusóide como sinal de entrada. 2. 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 passo é de 35,16 mV. a) b) c) d) Calcule a potência do sinal. Qual é a potência do ruído de quantificação? Determine a relação sinal/ruído de quantificação com este sinal. Qual o débito binário deste codificador, sabendo que a largura de banda do sinal é de 2 kHz?

3. Suponha um sinal sinusoidal com amplitude 1 V, amostrado a 10 kHz e codificado com 8 bit/amostra. a) Qual é a SNR quando este sinal é codificado com PCM uniforme? b) Qual a frequência do sinal de entrada para que a SNR em DPCM unitário seja igual à do PCM uniforme? c) Suponha que aumenta a frequência de amostragem para o dobro. Qual a variação da SNR 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), qual o aumento da SNR assumindo um preditor de 1ª ordem adaptado ao sinal? f) Determine a tensão máxima do quantificador. g) Repita as alíneas e) e f) usando um coeficiente de predição de 0.5. h) Repita a alínea e) para uma tensão máxima do quantificador de 0.9 volts e um preditor unitário. i) Assuma agora um preditor do tipo xp[n]/a y[n-2]. Calcule o valor óptimo de a.

74

Codificação de Forma de Onda

Carlos Meneses

4. Admita um sinal com potência normalizada de 0,2, excursão entre -1,5 e +1,5 V, auto-correlação de 1ª ordem de 0,36 W e máxima frequência 6 kHz. Suponha que tem de o transmitir com um débito binário de 96 kbit/s. a) b) c) d) e) f) g) Determine a SNR se usar um codificador PCM uniforme. Calcule o valor do intervalo de quantificação. Determine a SNR se usar um codificador DPCM unitário. Calcule o valor do intervalo de quantificação. Determine a SNR se usar um codificador DM. Calcule o ganho de filtragem. Calcule o valor de quantificação.

5. 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 auto-correlação normalizada de 1ª ordem é de 0,9. a) Calcule a potência do sinal, bem como a sua variância. b) Determine a SNR de um codificador PCM uniforme com este sinal. c) Determine a SNR usando um codificador DPCM, em que o preditor é adaptado de 1ª ordem. Qual o coeficiente de predição? d) Nas condições da alínea anterior, calcule tensão máxima do quantificador. e) Determine a SNR se a tensão máxima do quantificador for de 0.8 Volts. 6. Suponha um sinal sinusoidal com amplitude 0,5 V, amostrado a 6 kHz com 7 bit/amostra. a) Qual é a SNR quando este sinal é codificado com PCM uniforme? b) Qual a frequência do sinal de entrada para que a SNR, em DPCM, seja igual à do PCM uniforme? c) Suponha que aumenta a frequência de amostragem para o dobro. Qual a variação da SNR. d) Qual a característica do qual o DPCM tira partido, que permite a variação da alínea anterior? e) Qual o aumento do débito binário correspondente à alínea anterior? f) Existiria um processo mais eficiente de melhorar a qualidade? Qual? g) Qual o aumento do débito binário e da SNR correspondente à alínea anterior?

75

7. Suponha um sinal com uma distribuição gaussiana, de média 0 V e variância 2 W, tendo uma largura de banda de 5 kHz. a) Determine o valor do passo de quantificação se este sinal for codificado em PCM uniforme com um débito binário de 60 kbit/s, com uma SNR de 29,92 dB. Está a fazer alguma aproximação? b) Qual o valor da tensão máxima de quantificação? Haverá saturação do quantificador? c) Determine a tensão máxima de quantificação se este sinal for codificado em DPCM unitário 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 SNR em DPCM for de 36 dB, qual o valor da auto-correlação de 1ª ordem do sinal de entrada? 8. 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 total de 20 kbit/s. c) Calcule a SNR de quantificação nas condições da alínea anterior. d) Qual a SNR se a quantificação fosse companding Lei-A? e) Se a auto-correlação de primeira ordem normalizada for de 0,9, qual o preditor óptimo de primeira ordem para um codificador DPCM? f) Nas condições da alínea anterior, qual a SNR de quantificação para um débito binário de 20 kbit/s? g) E se o preditor tiver um coeficiente de 0,8? 9. Suponha um sinal de entrada com 15 kHz de largura de banda, amplitude 1 Volt e potência de 1/500 Watt. a) Quantos bits (aproximadamente) são necessários para quantificar este sinal com 38,16 dB de relação sinal-ruído em PCM uniforme? Qual o débito binário desta codificação? b) Qual a SNR de quantificação se fosse utilizado PCM companding Lei-A? Qual das duas codificações escolheria? c) Calcule os valores de quantificação e os valores de decisão para um quantificador uniforme, que permita codificar o sinal em DPCM com um débito binário total de 60 kbit/s. Assuma uma amplitude máxima de quantificação para o erro de predição de 0,5 Volt. d) Se a auto-correlação de primeira ordem (não normalizada) for de 1/800, qual o ganho de predição e respectiva relação sinal-ruído de quantificação final?

76

Codificação de Forma de Onda

Carlos Meneses

Pergunta teóricas

10. 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 número de bits de codificação por amostra e o intervalo de quantificação. 11. Em codificadores de sinais, a) De que tipo de conceito se tira partido para diminuir o débito binário? b) Qual a medida de qualidade utilizada para aferir a qualidade? c) Existe algum compromisso entre o débito binário, a qualidade e a complexidade? 12. Compare, dizendo das vantagens e desvantagens, dos seguintes métodos de codificação de sinais de fala: PCM uniforme; PCM companding; DPCM; ADPCM

13. Explique o mecanismo de adaptação do passo em ADPCM.

77

_____________________________________ Bibliografia _____________________________________
[Carlson (86)] A. B. Carlson,

“Communication

Systems”,

McGrawHill, 1986. [Haykin (01)] - S. Haykin, “Communication Systems”, Wiley, 2001. [Jayant (74)] - N. S. Jayant, “Digital Coding of Waveforms: PCM, DPCM, and DM Quantizers”, Proc. IEEE, pp. 611-632, 1974. [Jayant (84)] - N. S. Jayant, P. Noll, “Digital Coding of Waveforms, Principles and Applications to Speech and Video”, Prentice-Hall Signal Processing Series, 1970. [Lai (88)] - Y. Lai, “Implementation of Adaptive Differential Pulse-Code Modulation (ADPCM) Transcoder with the DSP16 Digital Signal Processor”, AT&T Application Note, 1988. [Linde (80)] - Y. Linde, A. Buzo, R.M. Gray, “An Algorithm for Vector Quantizer Design”, Trans. on Communications, pp.84-95, 1980. [Max (60)] - J. Max, “Quantizing for Minimum Distortion“, IRE Trans. Inform. Theory, vol IT-6, pp. 7-12, Março de 1960. [Norsworthy (97)] - Steven R. Norsworthy, R. Schreier, G. C. Temes, Delta-Sigma data converters: theory, design, and simulation, IEEE, 1997. [Schwartz (90)] M. Schwartz

“Information

Transmission

Modulation and Noise”, 4˚ Edition - Mc Graw Hill, 1990.

79

_____________________________________ Glossário de Acrónimos _____________________________________
ADM - Adaptive Delta Modulation (DM Adaptativa) ADPCM - Adaptive Differential Pulse Code Modulation (DPCM Adaptativa) APCM - Adaptive Pulse Code Modulation (PCM Adaptativa) 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) bit - binary digit (digito binário) DM - Delta Modulation (Modulação Delta) DPCM - Differential Pulse Code Modulation (Modulação por Código de Impulsos Diferenciais)

∆Σ – Delta-Sigma
ITU-T - International Telecommunication Union-Telecommunication (União Internacional de Telecomunicações - Telecomunicações) PCM - Pulse Code Modulation (Modulação por Código de Impulsos) pdf - probability density function (função densidade de probabilidade) RDIS - Rede Digital Integrada de Serviços (ISDN - Integrated Services Digital Network) S&H - Sampling & Hold (Amostragem e Retenção)

SNR - Signal to Noise Ratio (Relação Sinal-Ruído)
UMTS - Universal Mobile Telecommunications System

INSTITUTO SUPERIOR DE ENGENHARIA DE LISBOA
DEPARTAMENTO DE ENGENHARIA DE ELECTRÓNICA E TELECOMUNICAÇÕES E DE COMPUTADORES
SECÇÃO DE COMUNICAÇÕES E PROCESSAMENTO DE SINAIS

Engenharia de Redes de Comunicação e Multimédia Engenharia Electrónica de Telecomunicações e Computadores

Comunicação de Dados
(Introdução)

CARLOS EDUARDO DE MENESES RIBEIRO

Janeiro de 2008

ÍNDICE:

1 2

INTRODUÇÃO. ........................................................................................1 MODELO DE REFERÊNCIA OSI.........................................................2
2.1 2.2 2.3 2.4 2.5 CAMADA FÍSICA ..........................................................................................................2 CAMADA DE LIGAÇÃO .................................................................................................3 CAMADA DE REDE .......................................................................................................3 CAMADA DE TRANSPORTE ...........................................................................................3 CAMADAS ORIENTADAS À APLICAÇÃO ........................................................................3

3

CÓDIGOS DE LINHA .............................................................................4
3.1 3.2 ATRIBUTOS DOS CÓDIGOS DE LINHA ............................................................................5 FORMATOS DOS CÓDIGOS DE LINHA ............................................................................7

4 5 6

MODO DE TRANSMISSÃO ASSÍNCRONO .....................................14 CANAL AWGN E DE BANDA LIMITADA .......................................16 LARGURA DE BANDA.........................................................................17
6.1 6.2 6.3 ISI - INTERFERÊNCIA INTER-SIMBÓLICA ....................................................................17 LARGURA DE BANDA DO PRIMEIRO ZERO ..................................................................18 CRITÉRIO DE NYQUIST PARA TRANSMISSÃO SEM ISI.................................................18

7

DETECÇÃO DE SÍMBOLOS ...............................................................23
7.1 7.2 7.3 7.4 7.5 FILTRAGEM NA BANDA ..............................................................................................23 DETECTOR DE MÁXIMO A POSTERIORI .......................................................................24 DETECTOR DE MÁXIMA VEROSIMILHANÇA ................................................................25 CÁLCULO DO BER ....................................................................................................26 PADRÃO DE OLHO ......................................................................................................27

8

RECEPTOR ÓPTIMO ...........................................................................31
8.1 8.2 FILTRO ADAPTADO ....................................................................................................31 FILTRO ADAPTADO NORMADO ...................................................................................34

9

BER EM CÓDIGOS DE LINHA..........................................................35
9.1 9.2 9.3 9.4 9.5 BER EM CÓDIGOS DE LINHA “POLARES” ...................................................................35 BER EM CÓDIGOS DE LINHA “UNIPOLARES”..............................................................36 BER NO CÓDIGO DE LINHA AMI ...............................................................................36 BER NO CÓDIGO DE LINHA NRZI..............................................................................38 COMPARAÇÃO DO BER EM CÓDIGOS DE LINHA .........................................................39

10
10.1 10.2 10.3 10.4 10.5 10.6 10.7

TRANSMISSÃO M-ÁREA EM BANDA DE BASE ........................40
DÉBITO DE SÍMBOLOS ................................................................................................40 ENERGIA MÉDIA POR SÍMBOLO ..................................................................................41 LARGURA DE BANDA .................................................................................................41 CAPACIDADE DE CANAL ............................................................................................41 PROBABILIDADE DE ERRO DE SÍMBOLO .....................................................................42 PROBABILIDADE DE ERRO DE BIT...............................................................................43 CÓDIGO 2B1Q...........................................................................................................45

11
11.1 11.2 11.3 11.4

MODULAÇÃO DIGITAL BINÁRIA................................................47
MODULAÇÕES B-PSK, OOK E B-ASK .....................................................................48 MODULAÇÃO DIFERENCIAL .......................................................................................51 MODULAÇÃO FSK ....................................................................................................52 RECEPÇÃO NÃO COERENTE........................................................................................56

12
12.1 12.2

MODULAÇÃO DIGITAL M-ÁREA.................................................58
MODULAÇÃO M-PSK................................................................................................58 MODULAÇÃO QAM ..................................................................................................62

13
13.1 13.2 13.3 13.4 13.5 13.6 13.7 13.8

CODIFICAÇÃO DE CANAL.............................................................64
PROBABILIDADE DE ERRO DE BLOCO SEM CODIFICAÇÃO ...........................................64 CÓDIGO DE PARIDADE ...............................................................................................65 CARÁCTER DE VERIFICAÇÃO DE BLOCO – BCC .........................................................66 DETECÇÃO DE MÁXIMA VEROSIMILHANÇA E DISTÂNCIA DE HAMMING.....................68 EFICIÊNCIA DO CÓDIGO .............................................................................................69 CÓDIGO DE REPETIÇÃO ..............................................................................................70 CÓDIGO DE HAMMING ...............................................................................................72 VERIFICAÇÃO CÍCLICA DE REDUNDÂNCIA – CRC......................................................76

14

SUMÁRIO ............................................................................................78

PRINCIPAIS FÓRMULAS ..........................................................................79 APÊNDICES ..................................................................................................85
APÊNDICE 1 – DENSIDADE ESPECTRAL DE POTÊNCIA EM CÓDIGOS DE LINHA ........................85 APÊNDICE 2 – RELAÇÕES DE DENSIDADE ESPECTRAL NUM SLIT ..........................................87 APÊNDICE 3 – FUNÇÃO COMPLEMENTAR DE ERRO - DEDUÇÃO ..............................................89 APÊNDICE 4 – FUNÇÃO COMPLEMENTAR DE ERRO - TABELA .................................................91

EXERCÍCIOS PROPOSTOS .......................................................................93 BIBLIOGRAFIA..........................................................................................101 GLOSSÁRIO DE ACRÓNIMOS...............................................................103

Introdução.

1

1

Introdução. 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 transmissão. São transmitidas formas de onda eléctricas que correspondem a códigos que representam a informação digital. Entre o emissor e o receptor, devido ao tipo de canal de transmissão e actividade electromagnética ao seu redor, estes sinais eléctricos são atenuados devido à resistência eléctrica, distorcidos devido à largura de banda e embebidos em ruído devido ao ruído térmico ou a interferências electromagnéticas. Todos estes efeitos do canal de transmissão levam o receptor a nem sempre conseguir descriminar a informação recebida. Havendo erros a medida de qualidade desta transmissão é a relação entre os erros de bit e a totalidade dos bits transmitidos (BER – bit error rate) que deverá corresponder à probabilidade de erro de bit. Poderão ser adicionados aos bits de informação bits de redundância de modo a que erros de bit sejam detectados ou mesmo corrigidos. Naturalmente quanto maior for a capacidade de correcção mais bits de redundância serão necessários introduzir. Não é possível encontrar um método de transmitir a informação digital com total eficiência, ou seja, com alto débito binário, baixa largura de banda, baixa probabilidade de erro, baixa energia e baixa complexidade de implementação dos emissores e receptores. São no entanto discutidos os compromissos entre estes atributos e terá que ser encontrado, função dos recursos disponíveis, o método que melhor se enquadra 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, como os utilizadores domésticos, ou muito tráfego, como num banco com diversos balcões interligados.

2

Comunicação de Dados

Carlos Meneses

2

Modelo de referência OSI Para interligar diversos equipamentos de diferentes fabricantes, cada um

com a sua arquitectura, 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 abstracto baseado em 7 camadas (física, ligação, rede, transporte, sessão, apresentação e aplicação), esquematizado na figura 2.1. Cada camada apenas comunica com as camadas imediatamente acima e abaixo através de uma interface bem definida, tornando os protocolos que as implementam independentes das outras camadas.

Figura 2.1 Modelo de referência OSI.

2.1 Camada física A camada física define as especificações física e eléctrica 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éctricos, quantidade de bits transmitidos, sincronismo dos relógios).

Modelo de referência OSI

3

2.2 Camada de ligação A camada de ligação de dados oferece, às camadas superiores, um trânsito fiável de dados em cada uma das ligações físicas da rede, pelo que ao detectar os erros nas suas unidades de envio (tramas), procede à sua correcção, com códigos de correcção apropriados, ou utiliza protocolos que promovem a retransmissão da trama em falha. Por forma a garantir um trânsito fiável, estabelece procedimentos de sequencia de tramas e do controlo do seu fluxo. 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, levando em conta nomeadamente os tráfegos na rede e as respectivas prioridades. 2.4 Camada de transporte A camada de transporte é uma camada de interface entre a aplicação e a rede, tornando as camadas orientadas à aplicação independentes da rede utilizada. É suportada por um protocolo que se estabelece entre os utilizadores finais da ligação, protocolo esse que disponibiliza os serviços de transferência de dados com garantia, nomeadamente de controlo de fluxo e de sequencia correcta dos segmentos formados nesta camada. 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. Este texto focará especificamente a interface eléctrica da camada física e os algoritmos de detecção e correcção de erros de bit da camada de ligação. Os outros aspectos saem do contexto deste texto, devendo ser abordados em unidades curriculares de redes de computadores.

4

Comunicação de Dados

Carlos Meneses

3

Códigos de Linha Os códigos de linha têm como objectivo transmitir informação digital

através de um canal de transmissão. Estes códigos estão em banda de base, não utilizando modulação, ou seja, são constituídos por níveis de tensão (ou corrente) que transitam de um modo descontínuo. A transmissão pode ser binária, quando codificada em duas formas de onda (dois símbolos) diferentes, ou M-área quando podem ser transmitidos M símbolos diferentes, correspondentes a um conjunto bits. Numa transmissão binária em série o débito binário Rb (número de bits transmitidos por segundo) é o inverso do tempo de cada bit Tb (duração de cada símbolo binário), ou seja:

Rb =

1 . Tb

(3.1)

A energia é um recurso extremamente importante, do qual depende o valor a pagar à empresa fornecedora. Esta torna-se ainda mais importante num mundo cada vez mais móvel, em que os equipamentos (e.g. telefones móveis, computadores portáteis) não estão ligados a tomadas mas são alimentados por baterias. Um maior consumo de energia corresponde assim à utilização de baterias de maior capacidade e a um menor tempo da sua duração. A energia de cada símbolo binário é dada por:
2 Ek = ∫ sk (t )dt , 0 Tb

k = 0 ou 1 ,

(3.2)

em que k representa o nível lógico “0” ou “1” e sk (t ) a respectiva forma de onda. A energia média por bit corresponde à média ponderada pela probabilidade de cada nível lógico, p0 ou p1 respectivamente para o nível lógico “0” e “1”: Eb = p 0 E 0 + p1 E1 . (3.3)

Códigos de Linha

5

Durante este texto assumiremos que os nível lógicos são equiprováveis, ou seja, p0=p1=0,5, a menos que seja explicitamente dito o contrário. Esta hipótese é bastante realista e torna a análise dos sistemas de transmissão bastante mais simples. Nesta situação,
Eb = E 0 + E1 . 2

(3.4)

A potência transmitida é dada por,
P= Eb . Tb

(3.5)

3.1 Atributos dos códigos de linha Diferentes características do canal de transmissão, diferentes aplicações e requisitos de qualidade, levaram a desenvolver diferentes códigos de linha, com diferentes atributos. Quase sempre estes atributos constituem compromissos, no sentido em que tentar melhorar um deles corresponde a piorar outro ou mesmo outros. Os atributos mais importantes num código de linha são: 3.1.1 Capacidade de sincronismo de símbolo De modo a que o receptor consiga extrair correctamente a informação, este deverá conhecer o início e fim de cada símbolo. Existem dois modos de transmissão: assíncrono e 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 será estudado com maior pormenor mais adiante neste texto. O modo síncrono de transmissão é utilizado para transmitir grande quantidade de informação (trama) e 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, no receptor, do próprio código de linha, a partir das transições entre níveis. Esta capacidade deverá ser imune nomeadamente à sequência de bits transmitidos. Idealmente, deveria ser garantido sempre uma transição por símbolo.

6

Comunicação de Dados

Carlos Meneses

3.1.2

Componente DC Alguns canais de transmissão têm acoplamento AC, ou seja, contêm

bobines e condensadores que eliminam a componente DC. Um caso típico desta situação é a linha telefónica. Para transmitir neste tipo de canais o código de linha não deverá ter componente DC, pois corre-se o risco do código não ser detectado. Também é de evitar componentes DC localizadas pois podem ser desvanecidas num tempo curto. 3.1.3 Largura de Banda O espectro do código de linha deverá estar contido na resposta em frequência do canal de transmissão, para evitar distorção da forma de onda. Como os códigos de linha têm transições bruscas entre níveis (descontinuidades), a largura de banda é infinita. Este problema será abordado mais adiante neste texto, mas a largura de banda dependerá do número máximo de transições por segundo e deverá ser a menor possível, de modo a aumentar a eficiência espectral, que corresponde ao número de bits transmitidos por Hz, ou seja:

ρ=
3.1.4 Probabilidade de erro

Rb . BT

(3.6)

Um código de linha deverá ser o mais imune ao ruído possível, ou seja, deverá ter o menor número de erros (enviar um nível lógico e o receptor interpretar como o outro nível lógico). Deve-se então minimizar a probabilidade de erro de bit (BER – bit error rate) para uma dada relação sinal-ruído entre as energias Eb/No, em que No/2 é a potência por Hz do ruído no canal de transmissão. O BER é definido como:

BER =

Número de bits errados , Número de bits transmitidos

(3.7)

Em que se deve tender o número de bits transmitidos para infinito.

Códigos de Linha

7

3.1.5

Complexidade Um código de linha deverá ser fácil de realizar e de ser detectado, pois

esta facilidade leva a equipamentos menos complexos que por sua vez se traduzem num custo menor dos equipamentos. 3.1.6 Capacidade de detecção de erros Alguns códigos são capazes de detectar erros ao restringir por regra a sequência de símbolos transmitidos. Se houver possibilidade de informar o emissor destes erros estes poderão ser reenviados. 3.2 Formatos dos códigos de linha 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. Note-se que na presença de ruído é mais fácil detectar transições do que níveis de tensão. Quanto à polaridade os códigos de linha podem ser: (1) Polares (P), quando definidos por tensões simétricas; (2) Unipolares (U) quando definidos por uma tensão e a tensão 0 volts; (3) Bipolares (B) quando definidos por duas tensões simétricas e pela tensão 0 volts; Os códigos unipolares necessitam de apenas uma fonte de alimentação, reduzindo a complexidade, mas contêm sempre componente DC. Os códigos de linha podem ser: (1) de retorno a zero (RZ – return to zero), normalmente a meio do bit; (2) sem retorno a zero (NRZ – no return to zero) e manterem a mesma tensão durante todo o tempo de bit. Haverá sempre pelo menos uma transição por símbolo, facilitando o sincronismo.

8

Comunicação de Dados

Carlos Meneses

Seguidamente descrevem-se em alguns dos códigos de linha mais comuns, representados na figura 3.1, sendo os seus atributos sintetizados no Apêndice 5. Alternativamente os níveis lógicos e a sua representação podem estar invertidos.

Figura 3.1 Formas de onda dos códigos de linha mais comuns.

Códigos de Linha

9

3.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 Volts e o nível lógico “0” pela tensão –A Volts, durante todo o tempo de símbolo. Este código está representado na figura 3.1-a). O sincronismo de símbolo é conseguido através das transições que possam ocorrem quando da troca de níveis lógicos, pelo que pode ser perdido quando de uma sequência longa de bits aos 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. Se os nível 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. A potência deste código é, independentemente da probabilidade de cada nível lógico, dada por A2 Watts e a energia média por bit virá,

Eb = A 2Tb .

(3.8)

Um exemplo da transmissão com código PNRZ é a interface de computador RS-232, usada para conectar numa rede local dois computadores, ou um computador e teclados, impressoras, modems, etc., sendo usuais débitos binários até 115 kbit/s. 3.2.2 Polar com retorno a zero (PRZ) Este código é semelhante ao PNRZ mas, como representado na figura 3.1-b), é produzido um retorno a 0 Volts a meio de cada bit. Pode ser considerado um código de transição, já que ao símbolo “1” corresponde sempre 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.

10

Comunicação de Dados

Carlos Meneses

A vantagem deste código em relação ao PNRZ é serem produzidas sempre duas transição 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 cada nível lógico, dada por A2/2 Watts e a energia média por bit é dada por:

A2 Eb = Tb . 2

(3.9)

Este código é utilizado por exemplo em comunicações por fibra óptica. 3.2.3 Unipolar sem retorno a zero (UNRZ) Este código é análogo ao PNRZ mas, como representado na figura 3.1-c), o nível lógico “0” é representado por 0 Volts. A principal vantagem é ser de fácil implementação, necessitando apenas de uma fonte de alimentação. A grande desvantagem é ter sempre uma componente DC. Todas as outras características são idênticas ao código PNRZ. Aliás, este código pode ser interpretado como um código PNRZ somado a uma componente DC, de modo que o nível lógico “0” seja representado por 0 Volts. A energia do símbolo “1” é A2Tb e a do símbolo

“0” é 0 Joules. A energia por símbolo é, para símbolos equiprováveis, dada
também pela equação 3.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. As vantagens da utilização da corrente é um aumento da distância entre equipamentos e a corrente poder ser utilizada no receptor para activar um díodo emissor de luz (led) que fará acoplamento óptico com um fototransístor, isolando assim o emissor do receptor.

Códigos de Linha

11

3.2.4

Código Manchester Este código, também denominado de split-phase, é um código polar de

transição entre níveis. Como representado na figura 3.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 símbolo lógico

“1” é representado pela amplitude –A na primeira metade do bit e por +A na
segunda metade e o símbolo “0” pelas amplitudes simétricas. Como existe sempre uma transição a meio do bit nunca se perde o sincronismo de bit. 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 dos símbolos. A potência é, independentemente da probabilidade dos símbolos, dada por A2 Watts e a energia média é dada pela equação 3.8. Este código é utilizado por exemplo na norma IEEE 802.3 para a 10 Mbit/s, para interligar equipamentos de redes locais Ethernet. 3.2.5 AMI – Alternate Mark Inversion Neste código de nível bipolar o nível lógico “1” é representados alternativamente pelas tensões +A e –A, e o símbolo “0” por 0 Volts, como ilustrado na figura 3.1-e), em que se assume que o último nível lógico “1” foi representado por –A Volts. Note-se que mark representa o símbolo “1”. É também conhecido por pseudo ternário porque tem 3 hipóteses como níveis de tensão, embora a informação seja binária. Uma das vantagens deste código é ter memória e ser possível detectar erros quando da recepção dos níveis lógicos “1” que devem ocorrer no receptor com tensões alternadas. Violações a esta regra correspondem a erros de bit.

12

Comunicação de Dados

Carlos Meneses

Também devido a esta alternância o código não produz componente DC nem sequer durações prolongadas à mesma tensão. 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 Joules. A energia por símbolo é, para símbolos equiprováveis, dada também pela equação 3.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” este sincronismo pode perder-se. Uma das maneiras de evitar esta perda de sincronismo é produzir transições como se fossem transmitidos níveis lógicos “1”, mas com violações que permitam ao receptor detectar esta situação e substituir por níveis lógicos “0”. A esta 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 é efectuada o mesmo número de vezes. O código B6ZS é utilizado na América do Norte (DS-2 ou T2) na interligação entre centrais telefónicas por cabo, com 96 conversas telefónicas multiplexadas, transmitindo com um débito de 6,312 Mbit/s. 3.2.6 Sem retorno a zero invertido (NRZI) Este código, representado na figura 3.1-f), parece ser idêntico ao PNRZ mas é um código transição em que o nível lógico “1” corresponde a inverter o símbolo em relação ao último símbolo transmitido e o nível lógico “0” corresponde a manter o último símbolo transmitido.

Códigos de Linha

13

A grande vantagem deste código, que emerge do facto de a informação fluir na transição, independentemente de esta ser positiva ou negativa, é ser insensível à polaridade. Pode-se inverter a polaridade do cabo de ligação entre os equipamentos emissor e receptor, que a informação continua a ser descodificada correctamente. A potência deste código é independente da probabilidade de cada símbolo e dada por A2 Watts, sendo a energia média por bit dada pela equação 3.8. Este código de linha 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 receptor esta pré-codificação é desfeita com a pós-descodificação c[n] = (a[n] xor a[n-1]) (figura 3.2), que facilmente se verifica ser igual a b[n]. Na tabela 3.1 é apresentada a pré-codificação e a pós-descodificação do exemplo da figura 3.1-f).

Figura 3.2 O código de linha NRZI pode ser visto como um código PNRZ que transmite um sinal pré-codificado (a[n] = a[n-1] xor b[n]). Após o receptor PNRZ a sequência binária é pós-descodificada através de (c[n] = a[n] xor a[n-1] = b[n]).

b[n] a[n] = a[n-1] xor b[n] c[n] = a[n] xor a[n-1] = b[n]

0

1 1 1

0 1 0

1 0 1

0 0 0

0 0 0

1 1 1

1 0 1

0 0 0

Tabela 3.1 Exemplo de pré-codificação e pós-descodificação em NRZI (correspondente à figura 3.1-f)

Um exemplo da transmissão com código NRZI é a interface de computador USB, usado para conectar periféricos.

14

Comunicação de Dados

Carlos Meneses

4

Modo de transmissão assíncrono Como já referido, o modo assíncrono de transmissão é utilizado

principalmente quando a geração da informação é aleatória, em pequena quantidade e para distâncias curtas. É 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, apresentado na tabela 4.1. Este código inclui caracteres prensáveis (“c”, “%”)e de controlo (CR (Carriage Return), DEL (Delete)). posição 4 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 3 0 0 0 0 1 1 1 1 0 0 0 0 1 1 1 1 2 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 1 7 6 5 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 0 0 0 0 1 0 1 0 0 1 1 1 0 0 1 0 1 1 1 0 1 1 1

NUL DLE SOH DCI ST DC2 ETX DC3 EOT DC4 ENQ NAK AVK SYN BEL ETB BS CAN HT EM LF SUB VT ESC FF FS CR GS SO RS SI US

SP ! ” # $ % & ’ ( ) * + , . /

0 1 2 3 4 5 6 7 8 9 : ; < = > ?

@ A B C D E F G H I J K L M N O

P Q R S T U V W X Y Z [ \ ] ^ _

\ a b c d e f g h i j k l m n o

P Q R S T U V W X Y Z { | } ~ DEL

Tabela 4.1 Código ASCII

Entre o premir de duas teclas não há informação transmitida e a linha fica inactiva (idle). Exemplificando com o código de linha PNRZ, a linha fica a +A Volts. Quando uma tecla é premida é gerado um bit de início (start bit) a

–A volts. Esta transição da linha inactiva para o bit de início é suficiente para
iniciar o sincronismo de símbolo, que não é perdido se for transmitido apenas

Modo de transmissão assíncrono

15

um carácter (≈10 bits). Este sincronismo corresponde a iniciar um relógio a uma frequência mais elevada (16 vezes ou mais) que o débito binário, sendo possível a meio de cada bit verificar o nível de tensão e portanto o nível lógico. A seguir ao bit de início são enviados os 7 bits correspondentes ao código ASCII da tecla premida. 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 ao nível lógico “1” (paridade par) ou ímpar (paridade ímpar). Como mais adiante se verá, este bit serve para detectar erros de bit. Finalmente é enviado um ou mais bits de fim de carácter (stop bits). Todo este processo é exemplificado na figura 4.1 para a tecla “c” a que corresponde, como se pode verificar na tabela 4.1, a sequência binária “1100011”.

Figura 4.1 Exemplo de transmissão assíncrona com código de linha PNRZ para a tecla “c”, utilizando código ASCII.

Esta é também muito utilizado 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 aos bits de fim de carácter é enviado o bit de início de novo carácter, sendo o relógio novamente sincronizado. Numa transmissão assíncrona o número de bits de informação, a existência 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 síncrona, quando transmitidas grandes quantidades de informação.

16

Comunicação de Dados

Carlos Meneses

5

Canal AWGN e de banda limitada O canal de transmissão tem três características importantes que afectam

o desempenho do sistema de comunicação, afectando a capacidade do receptor de descriminação dos símbolos: (1) A dimensão, que atenua os sinais transmitidos e portanto os níveis de tensão que chegam ao receptor; (2) a largura de banda, que deverá ser maior que a largura de banda do sinal transmitido para que não haja distorções; (3) e o ruído, que altera os níveis de tensão. O modelo do canal é apresentado na figura 5.1. À sua entrada encontra-se o sinal correspondente à concatenação em série dos símbolos a transmitir. O filtro passa-baixo modela a largura de banda (filtrando acima da frequência Bc) e a atenuação (ganho na zona passante), tornando o canal de banda limitada. É ainda adicionado ruído AWGN (additive white Gaussian noise), ou seja, ruído branco com distribuição de amplitudes gaussiana. O ruído branco é caracterizado por ter uma densidade espectral de potência constante ao longo da frequência (No/2 Watt/Hz).

Figura 5.1 Canal AWGN com filtragem passa-baixo à frequência Bc.

Nas próximas secções serão apresentadas soluções para minimizar os efeitos do canal de transmissão (largura de banda, atenuação e ruído) no desempenho do sistema de comunicação digital.

Largura de banda

17

6

Largura de banda Embora a dedução da densidade espectral de potência dos códigos de

linha esteja fora do âmbito deste texto, estas são apresentadas no Apêndice 1 e esboçadas na figura 6.1, assumindo que os níveis lógicos são equiprováveis e sua geração independente. Assume-se que a potência (e não a amplitude) de todos os códigos de linha é de 1 Watt. Não é apresentado o código NRZI que neste contexto é idêntico ao código PNRZ.
PNRZ 1 Densidade Espectral de Potência AMI PNRZ PRZ UNRZ Manchester 0,75 Manchester AMI

0,5

PRZ

UNRZ 0,25

0 0 0,5 1 1,5 2 2,5 3 3,5 f /R b

Figura 6.1 Densidade espectral de potência dos diversos códigos de linha. Assume-se para todos os códigos uma potência de 1 Watt, os níveis lógicos equiprováveis e a sua geração independente.

6.1 ISI - Interferência inter-simbólica Teoricamente 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. Utilizando um canal de banda limitada como já mostrado no modelo do canal da figura 5.1, as transições instantâneas transformam-se em variações lentas que interferem com o símbolo adjacente. A esta distorção dá-se o nome de interferência inter-simbólica (ISI – Inter-symbolic Interference).

18

Comunicação de Dados

Carlos Meneses

6.2 Largura de banda do primeiro zero Como se pode verificar na figura 6.1, a densidade espectral de potência vai tendendo para zero (segundo o quadrado de uma sinc) à medida que a frequência aumenta, mais rapidamente quando o primeiro zero se situa em Rb (PNRZ, UNRZ, AMI e NRZI) e mais lentamente quando este se situa em 2Rb (PRZ, Manchester). Um critério, embora minimalista, é considerar que a maior parte da potência do sinal está contida até à frequência do primeiro zero espectral (First Null Bandwidth) assumindo ser esta a largura de banda. Uma largura de banda superior à do primeiro zero torna a distorção insignificante. É tipicamente esta a situação na transmissão assíncrona, de baixo débito binário, em que facilmente o canal tem uma dimensão de apenas alguns metros e a sua largura de banda é mesmo bastante superior ao débito binário. 6.3 Critério de Nyquist para transmissão sem ISI Quando a largura de banda do canal não é suficientemente em relação ao débito binário, a interferência inter-simbólica pode ser suficiente para tornar a comunicação inútil devido ao número de erros. Uma solução é assumir que em pelo menos um ponto por símbolo, por exemplo a meio do símbolo no caso do código PNRZ, o sinal tem que passar sem erro pela tensão desejada ( ± A conforme o nível lógico), criando um ponto de zero de interferência inter-simbólica por símbolo. No emissor, ainda antes do sinal ser colocado no canal de transmissão e sofrer interferências, deve-se limitar a largura de banda, desde que se garanta que o sinal passe pelos pontos de zero de ISI, sem ser muito importante a evolução entre estes. Se a largura de banda do canal de transmissão for maior que a limitação de banda emissor, o sinal não será distorcido significativamente. imposta pelo

Largura de banda

19

Este critério de evitar a inter-simbólica denomina-se critério de Nyquist e provoca uma formatação do pulso (pulse shaping), já que estes deixam de apresentar transições bruscas para exibirem transições suaves. 6.3.1 Filtro ideal Existem 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. O sinal é recuperado sem erro por filtragem passa-baixo ideal com frequência de corte igual a metade da frequência de amostragem. Assumindo um ponto de zero de ISI por símbolo, é gerada aí uma amostra por símbolo e portanto são 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,
BT = Rb . 2

(6.1)

Cada símbolo passa a ser definido por um pulso positivo ou negativo (PNRZ) conforme o nível lógico, que terá a forma da resposta impulsiva do filtro passa-baixo (Transformada de Fourier inversa de um rectângulo):

p(t ) = Asinc(Rb t ) .

(6.2)

Este pulso toma, como se pretendia, o valor A para t=0 e zero nos múltiplos de Tb, ou seja, para t= ± Tb, ± 2Tb,…, não interferindo nos pontos de amostragem dos outros símbolos. Na figura 6.2 é apresentada a cadeia transmissor-canal-receptor, em que à saída do transmissor é colocado o filtro de formatação de pulsos. O canal de transmissão deverá ter uma largura de banda Bc maior que a largura de banda do sinal transmitido BT.. Consideramos o canal ideal até à largura de banda do

20

Comunicação de Dados

Carlos Meneses

sinal. Caso contrário o efeito do canal deve ser compensado no transmissor logo no filtro de formatação de pulsos ou no receptor (equalização).

Figura 6.2 Transmissão de código PNRZ com formatação de pulso por filtro ideal.

6.3.2

Filtro de co-seno elevado É impossível realizar uma filtragem passa-baixo ideal, como a

representada pela equação 6.2. Esta pode no entanto ser alterada de modo a que a resposta ao impulso mantenha o termo da equação 6.2 e portanto continue a evitar a ISI, com um factor que torne a resposta em frequência mais suave e portanto realizável. O pulso tomará então a forma:

Asinc(Rb t ) , (6.3) 2 1 − (2αRb t ) em que α é denominado factor de rolloff, variando entre 0 e 1. Este pulso é
apresentado na figura 6.3-a e a respectiva resposta em frequência na figura 6.3-b, para diversos valores de α. A resposta em frequência tem a forma de um co-seno elevado, dando o nome ao filtro respectivo (raised cosine filter) e que corresponde a:
⎧1 ⎪ ⎪ Rb ⎪1 ⎛ π ⎛ R ⎞⎞ ⎪ P( f ) = ⎨ cos 2 ⎜ ⎜ f + b (α − 1)⎟ ⎟ ⎜ 2αR ⎟ 2 ⎠⎠ b ⎝ ⎝ ⎪ Rb ⎪ ⎪0 ⎪ ⎩ f < Rb (1 − α ) 2

p(t ) =

cos(παRb t )

Rb R (1 − α ) < f < b (1 + α ) . (6.4) 2 2 R f > b (1 + α ) 2

A largura de banda resultante é dada por:
BT = W = Rb (1 + α ) , 2

(6.5)

Largura de banda

21

e é tanto maior quanto maior for o factor de rolloff, mas também maior a facilidade de realizar a formatação do pulso. α=0 corresponde à filtragem ideal e, no outro extremo, com α=1, duplica-se a largura de banda. Outra vantagem quando se aumenta a largura de banda prende-se com a maior robustez em relação a pequenas variações no sincronismo. Estas provocam uma maior alteração da tensão amostrada à medida que se diminui o factor de rolloff.

p (t ) 1

P (f )

α =0 α =0,5 α =1

1/Rb

α =0 α =0,5 α =1

-5

-4

-3

-2

-1 -0,3

0

1

2

3

4

t /Tb 5 0 0 0,25 0,5 0,75 1 f /Rb

(a) Figura 6.3 Filtro de co-seno elevado (a) Pulsos de formatação para diversos valores de α. (b)Resposta em frequência.

(b)

Para os códigos de linha PNRZ, UNRZ e AMI a largura de banda é dada pela equação 6.5, pois sendo códigos em que a tensão se mantêm fixa durante todo o tempo de bit, necessita apenas de um ponto de zero de ISI por bit (abertura da sinc na origem de 2Rb). 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 deles de um ponto de zero de ISI, pelo que o pulso terá uma abertura de apenas Rb e a largura de banda virá o dobro da produzida pela equação 6.5:

BT = W = Rb (1 + α ) .

(6.6)

22

Comunicação de Dados

Carlos Meneses

Na figura 6.4 é apresentada a forma de onda do sinal para a sequência binária “1011001” em PNRZ, com amplitude A=1 Volt. Pode-se verificar que apesar das variações lentas o código toma o valor de ± A nos pontos de zero de ISI (a meio do símbolo), independentemente do valor de α.
0 2,0 1 2 3 4 5 6

1,0

0,0

-1,0

t

/T b

-2,0

(a) α = 0,5

0 2,0

1

2

3

4

5

6

1,0

0,0

-1,0

t

/T b

-2,0

(b) α = 1

Figura 6.4 Resposta do filtro de formatação de pulsos para o código de linha PNRZ com A=1 Volt, tendo como entrada a sequência “1011001” (a) α=0,5. (b) α=1.

Note-se que a largura de banda máxima (α=1) em qualquer dos códigos de linha é dada pelo número máximo de transições por segundo e coincide com a largura de banda com o critério de primeiro zero espectral.

Detecção de símbolos

23

7

Detecção de símbolos Iremos nesta secção sobre detecção de símbolos basear-nos no código

PNRZ, mas espera-se que os leitores consigam generalizar facilmente para os outros códigos de linha. No canal de transmissão, como mostrado no modelo da figura 5.1, ao sinal recebido é adicionado ruído branco e gaussiano. Como exemplo na figura 7.1 é mostrada a mesma sequência da figura 6.4(b), (PNRZ,

α=1), mas afectada de ruído gaussiano.
0 2,0 1 2 3 4 5 6

1,0

0,0

t
-1,0

/T b

-2,0

α=1

Figura 7.1 Sequência “1011001” em PNRZ com A=1 Volt e factor de rolloff α=1, ao qual foi adicionado ruído gaussiano.

7.1 Filtragem na banda O ruído pode ser atenuado no receptor, filtrando-o fora da banda, com um filtro passa-baixo de frequência de corte BT. A potência do ruído após esta filtragem tem ainda uma distribuição gaussiana e virá (apêndice 2),
2 σn =

N0 (2 BT ) = N 0 BT . 2

(7.1)

Denominando por y o valor observado do sinal após filtragem, nos ponto de zero de interferência inter-simbólica, por y1 e y0 os valores correspondentes sem ruído quando enviados o nível lógico “1” e “0” respectivamente e assumindo que o filtro não afecta a amplitude do sinal (continuando o exemplo em PNRZ),

24

Comunicação de Dados

Carlos Meneses

⎧ y1 = + A , ⎨ ⎩ y0 = − A

(7.2)

pelo que a distribuição de amplitudes após o filtro e quando enviado o nível lógico “1”,
2 f y ( y |"1") = N ( y1 , σ n ) , corresponde a uma distribuição gaussiana

2 2 (Normal) com média y1 e variância σ n , e a distribuição f y ( y |"0") = N ( y 0 , σ n )

quando enviado o símbolo “0” tem a mesma variância mas média y0. Estas distribuições são apresentadas na figura 7.2.

7.2 Análise do ruído em códigos de linha binários.

7.2 Detector de máximo a posteriori A probabilidade a posteriori de ter sido enviado 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 Bayes,

fY ( y |"1") p1 ⎧ ⎪ P("1"| y ) = ⎪ P( y ) ⎨ f ( y |"0") p0 ⎪ P("0"| y ) = Y ⎪ P( y ) ⎩

para o nível lógico "1"
, (7.3)

para o nível lógico "0"

em que p1 e p0 são as probabilidades a priori de cada um dos níveis lógicos. Um critério de classificação de qual o nível lógico emitido, óptimo pois minimiza a

Detecção de símbolos

25

probabilidade de errar, corresponde a escolher o nível lógico para o qual a probabilidade a posteriori é maior (MAP – Maximum a posteriori), ou seja,

⎧ P("1"| y ) > P("0"| y ) detecta - se o nível lógico "1" . ⎨ ⎩ P("1"| y ) < P("0"| y ) detecta - se o nível lógico "0"
7.3 Detector de máxima verosimilhança

(7.4)

Assumindo que as probabilidades a priori são iguais (p1=p0=0,5), a classificação MAP é equivalente à classificação com um critério de máxima verosimilhança (ML – Maximum Likelihood) , dado por,
⎧ f Y ( y |"1") > f Y ( y |"0") detecta - se o nível lógico "1" . ⎨ ⎩ f Y ( y |"1") < f Y ( y |"0") detecta - se o nível lógico "0"

(7.5)

No caso em análise da classificação em duas classes em que as distribuições são ambas gaussianas com a mesma variância, esta regra corresponde a assumir um limiar λ (ver figura 7.2) cujo valor óptimo corresponde ao valor médio entre as tensões dos dois símbolos sem ruído,

λopt =

y 0 + y1 . 2

(7.6)

A figura 7.3 apresenta o diagrama de blocos do receptor, com o filtro passa-baixo que atenua o ruído e o classificador implementado através do comparador com λopt. A decisão é efectuada uma vez por símbolo, sincronizado (sincronismo de símbolo) no ponto 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, em que cada nível lógico é representado pelas correspondentes tensões de saturação do comparador.

Figura 7.3 Receptor binário com filtragem passa-baixo na banda.

26

Comunicação de Dados

Carlos Meneses

7.4 Cálculo do BER A probabilidade de erro, independentemente do critério utilizado (MAP, ML ou outro, nomeadamente utilizando um valor de λ não óptimo), é dado pela probabilidade de erro em cada nível lógico pesado pela respectiva probabilidade a priori, ou seja,

BER = p1 p 01 + p 0 p10 ,

(7.7)

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”. Para o critério de máxima verosimilhança (figura 7.2) estas probabilidades
são dadas por,
⎧ p 01 = f Y ( y < λopt |"1") , ⎨ ⎩ p10 = f Y ( y > λopt |"0")

(7.8)

que, uma vez que as densidades de probabilidade são gaussianas (Apêndice 3) e tendo em conta a largura de banda em PNRZ dada pela equação 6.5 e a energia média por símbolo dada pela equação 3.8,
λopt ⎧ ⎛ ⎛ d2 ⎞ 1 ⎛ ⎞ Eb A2 ⎞ 1 1 ⎟ = erfc⎜ ⎟ = erfc⎜ ⎜ ⎟ ⎪ p 01 = ∫ f y ( y |"1")dy = erfc 2 ⎜ N (1 + α ) ⎟ ⎜ 2 N 0 BT ⎟ 2 ⎜ 2σ n ⎟ 2 2 ⎪ 0 −∞ ⎝ ⎠ (7.9) ⎠ ⎝ ⎠ ⎝ ⎨ +∞ 2 ⎞ 2 ⎛ d ⎛ ⎞ 1 ⎛ ⎞ Eb A 1 ⎪ ⎟ = 1 erfc⎜ ⎟ = erfc⎜ ⎟ p10 = ∫ f y ( y |"0")dy = erfc⎜ 2 ⎪ ⎜ N (1 + α ) ⎟ ⎜ 2σ n ⎟ 2 ⎜ 2 N 0 BT ⎟ 2 2 0 λopt ⎝ ⎠ ⎝ ⎠ ⎝ ⎠ ⎩

A

probabilidade

de

erro

de

bit

corresponderá

à

soma

destas

probabilidades pesadas pelas probabilidades a priori, ou seja (com p0=p1=0,5):

BER = p1 p 01 + p0 p10 =

⎞ ⎛ Eb 1 ⎟ erfc⎜ ⎜ N (1 + α ) ⎟ . 2 0 ⎠ ⎝

(7.10)

Note-se que o BER depende da diferença de tensão entre os símbolos e não dos seus valores absolutos, uma vez que,

d=

y1 − y 0

2

,

(7.11)

Detecção de símbolos

27

Naturalmente que os códigos de linha “polares”, sem componente DC, sendo aqueles que têm a menor energia para o máximo afastamento entre símbolos, são os que obtêm o melhor desempenho, como adiante se verá. Como já referido, o critério MAP é óptimo no sentido de minimizar o BER, sendo o critério de máxima verosimilhança equivalente desde que as probabilidades a priori dos níveis lógicos sejam iguais. Esta igualdade pode ser assumida para a maioria das aplicações, até porque o valor de λopt deverá ser conhecido antes de se começar a detecção. Nestas circunstâncias o BER virá, independentemente do código (figura 7.2):

BER =
7.5 Padrão de olho

⎛ d2 1 erfc⎜ 2 ⎜ 2σ n 2 ⎝

⎞ ⎟. ⎟ ⎠

(7.12)

A qualidade de um sistema de comunicação pode ser aferida visualmente através do padrão de olho (eyes pattern). O padrão de olho tem o aspecto corresponde à figura apresentada por um osciloscópio, tendo como sinal de entrada o sinal recebido s R (t ) 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. Existem dois factores no canal de transmissão que levam ao aumento do BER: (1) a interferência inter-simbólica, causada pela largura de banda insuficiente; (2) o ruído no canal. Na figura 7.4 é apresentado um padrão de olho de um código de linha PNRZ sem formatação de bit, em que o canal não tem ruído e a largura de banda corresponde ao primeiro zero espectral ( BT = Rb ). Pode-se verificar a interferência inter-simbólica correspondente à transição lenta entre símbolos, mas o sinal a meio do bit, aonde se dará a amostragem no receptor, está muito perto do nível correcto.

28

Comunicação de Dados

Carlos Meneses

Padrão de Olho 1 0.8 0.6 0.4 0.2 0 -0.2 -0.4 -0.6 -0.8 -1 0 0.5 1 1.5 Canal passa-baixo Bc=Rb/2 Pn=0.00 Watt 2

Figura 7.4 Padrão de olho com 2 bits consecutivos e 100 varrimentos. O código de linha é o PNRZ e o canal não tem ruído e é do tipo passa-baixo de 1ª ordem, com Bc=Rb (First Null Bandwidth). O eixo das abcissas está normalizado em múltiplos de Tb. Os pontos de amostragem correspondem a 0.5 e 1.5.

Na figura 7.5 é apresentado um padrão de olho para o mesmo código da figura 7.4, mas agora o canal tem metade da largura de banda, de modo a se verificar o efeito da ISI. O olho aparece mais fechado devido às transições mais lentas entre símbolos, diminuindo a qualidade da transmissão.
Padrão de Olho 1 0.8 0.6 0.4 0.2 0 -0.2 -0.4 -0.6 -0.8 -1 0 0.5 1 1.5 Canal passa-baixo Bc=Rb/2 Pn=0.00 Watt 2

Figura 7.5 Padrão de olho com 2 bits consecutivos, com código de linha PNRZ. Canal passa-baixo de 1ª ordem, com Bc=Rb/2 e sem ruído.

Detecção de símbolos

29

De modo a verificar o efeito do ruído é apresentado na figura 7.6 um padrão de olho para o mesmo código e o mesmo canal da figura 7.4 (Bc=Rb), mas agora com ruído correspondente a uma SNR de 13 dB. Pode-se verificar também o fecho do olho, mas agora devido ao ruído. Na figura 7.7 é apresentado o efeito conjunto da ISI e do ruído.
Padrão de Olho 2 1.5 1 0.5 0 -0.5 -1 -1.5 -2 0 0.5 1 1.5 Canal passa-baixo Bc=Rb/2 Pn=0.05 Watt 2

Figura 7.6 Padrão de olho com 2 bits consecutivos, com código de linha PNRZ. Canal passa-baixo de 1ª ordem, com Bc=Rb e 13 dB de SNR.
Padrão de Olho

1.5 1 0.5

0 -0.5 -1 -1.5

0

0.5 1 1.5 Canal passa-baixo Bc=Rb/2 Pn=0.05 Watt

2

Figura 7.7 Padrão de olho com 2 bits consecutivos, com código de linha PNRZ. Canal passa-baixo de 1ª ordem, com Bc=Rb/2 e 13 dB de SNR.

30

Comunicação de Dados

Carlos Meneses

Na figura 7.8 é apresentado o padrão de olho para um código PNRZ com formatação de pulso (α=0). Pode-se verificar que a meio do bit não existe interferência inter-simbólica. Contudo, com ruído, como apresentado na figura 7.9, o olho fecha-se deteriorando a qualidade da transmissão.
Padrão de Olho 2 1.5 1 0.5 0 -0.5 -1 -1.5 -2 0 0.5 1 rolloff=0 Pn=0.00 Watt 1.5 2

Figura 7.8 Padrão de olho com 2 bits consecutivos, com código de linha PNRZ com formatação de pulso. O factor de rolloff α=0 e sem ruído

Padrão de Olho 2.5 2 1.5 1 0.5 0 -0.5 -1 -1.5 -2 -2.5 0 0.5 1 rolloff=0 Pn=0.05 Watt 1.5 2

Figura 7.9 Padrão de olho com 2 bits consecutivos, com código de linha PNRZ com formatação de pulso. O factor de rolloff α=0 e é adicionado 13 dB de SNR.

Receptor óptimo

31

8

Receptor óptimo O receptor estudado na secção anterior para o código PNRZ assume um

ponto

de

amostragem

no

receptor

em

que

não

exista

interferência

inter-simbólica e 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. Contudo, nem sempre é possível definir um ponto de zero de ISI e a filtragem apenas tem em conta a largura de banda e não a forma do sinal transmitido. 8.1 Filtro adaptado Assuma-se que o símbolo transmitido é s j (t ) , ao qual é somado ruído

w(t ) no canal de transmissão, sendo recebido o sinal s R (t ) = s j (t ) + w(t ) . Se for
efectuada uma projecção sobre um sinal ks j (t ) , como mostrado na figura 8.1, é anulada a componente do ruído perpendicular ao símbolo, ficando apenas a componente do ruído colinear ao símbolo.

8.1 Interpretação vectorial do filtro adaptado.

Esta projecção é realizada através da correlação entre o sinal recebido com ruído e, por exemplo, o símbolo “1”. O símbolo “0” ou é nulo ou é simétrico ao símbolo “1”. O esquema de blocos deste receptor, que é óptimo no sentido que minimiza o BER, é apresentado na figura 8.2. Como a correlação é feita com base num dos símbolos (símbolo j),

c(t ) = ks j (t ) ,
que corresponde a uma filtragem em que a resposta impulsiva é dada por:

(8.1)

32

Comunicação de Dados

Carlos Meneses

h(t ) = c(Tb − t ) = ks j (Tb − t ) ,
pelo que se designa filtro adaptado (ao símbolo).

(8.2)

Figura 8.2 Diagrama de blocos do receptor óptimo com filtro adaptado.

O integrador é colocado a zero no início de cada símbolo, o que é representado na figura 8.2 pela entrada Tb +, sendo tomada uma decisão no fim do símbolo, amostrando y(t) nos instantes Tb –, imediatamente antes de o integrador ser recolocado a zero e se iniciar o processo para o próximo símbolo. A projecção é então da por,

y (Tb ) = ∫ c(t )s R (t )dt = ∫ ks j (t )(s l (t ) + w(t ) )dt = ∫ ks j (t )sl (t )dt + ∫ ks j (t )w(t )dt
0 0 0 Tb Tb 0 Tb

Tb

l=0 ou 1

(8.3)

= y l + ∫ ks j (t )w(t )dt
0

Tb

Os símbolos ou são colineares e simétricos (polares, bipolares) ou um deles é zero (unipolar, bipolar), pelo que os valores da projecção sem ruído correspondem a,

yl yl yl

= kEl = −kEl =0

⇐ s j (t ) = s l (t ) ⇐ s j (t ) = − sl (t ) ⇐ s j (t ) = 0

(8.4)

A componente de ruído filtrada terá uma distribuição gaussiana (Apêndice 2) com média nula e variância (potência):

Receptor óptimo

33

2 σn =

N0 Ec , 2

(8.5)

em que Ec corresponde à energia de c(t).

Figura 8.3 Formas de onda no receptor óptimo com código PNRZ com ruído.

34

Comunicação de Dados

Carlos Meneses

Note-se que o ruído é sempre ortogonal ao símbolo, pelo que o ruído deveria ser todo eliminado. No entanto a integração não poderá ser efectuada, como idealmente, em tempo infinito, mas apenas no tempo de símbolo, pelo que esta projecção não é zero mas uma estimativa desse valor. A função de verosimilhança para cada símbolo l tem então uma distribuição normal
2 N ( y l , σ n ) , sendo para a filtragem adaptada também válida a figura 7.2.

8.2 Filtro adaptado normado Assumindo que o sinal com que se faz a projecção tem energia unitária (filtro adaptado normado), então,
Ec = k
2
Tb

∫ s (t )dt = 1 ,
2 j 0

(8.6)

pelo que

k=

1 , Ej

(8.7)

e as tensões sem ruído no instante de amostragem virão (equações 8.4 e 8.7),

yl yl yl

= El = − El =0

⇐ s j (t ) = sl (t )

⇐ s j (t ) = − s l (t ) ⇐ s j (t ) = 0

(8.8)

e a potência do ruído virá (equações 8.5 e 8.7),
2 σn =

N0 2

(8.9)

Nesta situação a equação 7.12 pode ser reescrita como:

⎛ d2 ⎞ 1 ⎟. BER = erfc⎜ ⎜ N0 ⎟ 2 ⎝ ⎠

(8.10)

Na próxima secção serão deduzidas as equações do BER para cada um dos códigos de linha, mas como se verá estas não dependem do valor de k, nomeadamente são independentes de o filtro estar ou não normalizado.

BER em códigos de linha

35

9

BER em códigos de linha Esta secção irá calcular o valor de BER para os diversos códigos de linha

assumindo um filtro adaptado, em que c(t) é dado pela equação 8.1, na direcção do símbolo s1 (t ) , e um classificador de máxima verosimilhança (p0=p1=0,5). 9.1 BER em códigos de linha “polares” Para os casos dos códigos de linha polares (PNRZ, PRZ, Manchester), em que os símbolos estão relacionados por :

s1 (t ) = − s 0 (t ) ,
As tensões de observação de cada símbolo são,
⎧ y1 = + kE1 = + kEb . ⎨ ⎩ y0 = −kE1 = − kEb

(9.1)

(9.2)

Nesta situação o valor de comparação óptimo virá,

λopt =

kEb − kEb = 0. 2

(9.3)

O valor de d será dado por:

d = y1 − λopt = kEb .

(9.4)

Uma vez que a potência do ruído é dada pela equação 8.5, o BER virá (equação 7.12)

⎛ d2 1 BER = erfc⎜ 2 ⎜ 2σ n 2 ⎝

2 2 ⎞ 1 ⎛ ⎟ = erfc⎜ k Eb ⎟ 2 ⎜ k 2 Eb N 0 ⎠ ⎝

⎞ 1 ⎞ ⎛ ⎟ = erfc⎜ Eb ⎟ ⎜ N ⎟ ⎟ 2 0 ⎠ ⎝ ⎠

(9.5)

36

Comunicação de Dados

Carlos Meneses

9.2 BER em códigos de linha “unipolares” Para os casos dos códigos de linha unipolares (UNRZ), em que o símbolo zero corresponde a 0 Volts, as tensões de observação de cada símbolo são,
⎧ y1 = + kE1 = +2kEb . ⎨ ⎩ y0 = 0

(9.6)

Nesta situação o valor de comparação óptimo é dado por,

λopt =
e o valor de d será dado por:

2kEb + 0 = kEb , 2

(9.7)

d = y1 − λopt = 2kEb − kEb = kEb .

(9.8)

Uma vez que a potência do ruído é dada pela equação 8.5, o BER virá (equação 7.12):

⎛ d2 1 BER = erfc⎜ 2 ⎜ 2σ n 2 ⎝

⎞ 1 ⎛ k 2 Eb2 ⎟ = erfc⎜ ⎟ 2 ⎜ 2k 2 Eb N 0 ⎠ ⎝

⎞ 1 ⎛ ⎟ = erfc⎜ Eb ⎜ 2N ⎟ 2 0 ⎝ ⎠

⎞ ⎟ ⎟ ⎠

(9.9)

9.3 BER no código de linha AMI Na situação do código de linha bipolar AMI existem duas possibilidades quando se transmite o nível lógico “1”: quando se transmite o símbolo A e se transmite o símbolo –A, que aparecem alternadamente e portanto com a mesma probabilidade. As tensões no instante de amostragem do filtro adaptado, denominadas respectivamente por y1+ e y1− , e y0 , serão dadas por:
⎧ y1+ = + kE1 = +2kEb ⎪ ⎨ y1− = − kE1 = −2kEb . ⎪y = 0 ⎩ 0

(9.10)

BER em códigos de linha

37

O valor de d será dado por:
d= kE1 − 0 2kEb = = kEb . 2 2

(9.11)

Figura 9.1 Funções de probabilidade na recepção do código bipolar

O nível lógico “0” estará errado se o valor de y for maior que d ou menor que –d (2 vezes a área debaixo da gaussiana). Cada um dos dois símbolos representantes do nível lógico “1”, com polarização positiva ou negativa, têm probabilidade a priori de metade da probabilidade a priori deste nível lógico. Deste modo o BER virá,

BER = 2 p 0

⎛ d2 1 erfc⎜ 2 ⎜ 2σ n 2 ⎝

⎛ d2 ⎞ p1 1 ⎟+ erfc⎜ 2 ⎜ 2σ n ⎟ 2 2 ⎝ ⎠

⎛ d2 ⎞ p1 1 ⎟+ erfc⎜ 2 ⎜ 2σ n ⎟ 2 2 ⎝ ⎠

⎞ ⎟ ⎟ ⎠

(9.12)

Assumindo os níveis lógicos equiprováveis ter-se-á:

⎛ d2 3 BER = erfc⎜ 2 ⎜ 2σ n 4 ⎝

⎞ ⎟, ⎟ ⎠

(9.13)

pelo que, utilizando as equações 3.8 8.5 e 9.8 teremos,

38

Comunicação de Dados

Carlos Meneses

BER =

⎛ k 2 Eb2 3 erfc⎜ ⎜ 2k 2 E b N 0 4 ⎝

⎞ 3 ⎛ ⎟ = erfc⎜ Eb ⎜ 2N ⎟ 4 0 ⎝ ⎠

⎞ ⎟. ⎟ ⎠

(9.14)

Este valor do BER não entra com a capacidade deste código detectar erros por violação da regra de polaridade alternada quando do envio de níveis lógicos “1”. Por exemplo para erros isolados estes conseguem sempre ser detectados. São exemplos:

– O último nível lógico “1” foi codificado com determinada polaridade e
um nível lógico “0” consequente é incorrectamente descodificado para “1” com a mesma polaridade.

– O último nível lógico “1” foi codificado com determinada polaridade e
um nível lógico “0” consequente é incorrectamente 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 “0”, haverá
uma violação no próximo nível lógico “1” transmitido. Se houver a capacidade do receptor informar o emissor destes erros, a informação poderá ser reenviada. O código de linha bipolar é, dos códigos estudados, o único que possui este atributo extremamente importante. 9.4 BER no código de linha NRZI Sem contar com a pré-codificação e pós-descodificação, o código NRZI é equivalente ao PNRZ (figura 3.2). Com a pós-codificação os erros ocorrem aos pares, uma vez que cada símbolo contêm informação sobre o nível lógico presente e o imediatamente anterior. O BER virá então o dobro do BER em PNRZ (equação 9.5):

⎛ Eb ⎞ ⎟ BER = erfc⎜ ⎜ N ⎟ 0 ⎠ ⎝

(9.15)

BER em códigos de linha

39

9.5 Comparação do BER em códigos de linha Na figura 9.2 são comparados os valores do BER dos diversos códigos em função da relação de energias Eb / N 0 em decibéis. Naturalmente que os códigos de linha “polares”, sem componente DC, sendo aqueles que têm a menor energia para o máximo afastamento entre símbolos, obtêm o melhor desempenho. Os códigos “unipolares” estão distanciado destes 3 dB de relação Eb N 0 . O código AMI é o que tem pior desempenho, mas tem boa capacidade de sincronismo, nomeadamente em BNZS, não tem componente DC nem sofre de desvanecimento. Nesta comparação também não se entra em consideração com sua a capacidade de detecção de erros isolados, que aumenta o desempenho, embora necessite de mecanismos de reenvio.

Figura 9.2 BER dos diversos códigos em função da relação

Eb / N 0 em decibéis.

40

Comunicação de Dados

Carlos Meneses

10 Transmissão M-área em banda de base Como visto na secção 6, 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 este 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 Rs (baud rate) sem diminuir o débito binário. O símbolo deixa de ser binário, ou seja, ter apenas 2 formas de onda, para ser M-áreo, ou seja, com M formas de onda. Este código, denominado PAM (Pulse Amplitude Modulation) M-áreo, é apresentado na figura 10.1.

Figura 10.1 Código PAM M-áreo

10.1 Débito de símbolos O número de bits por símbolo, que denominaremos por K e o número de símbolos M do código estão relacionados por:

M = 2K .
O tempo de símbolo Ts e o tempo de bit estão relacionados por,

(10.1)

Ts = KTb ,
e o débito de símbolos está relacionado com o débito binário por,

(10.2)

Rs =

Rb . K

(10.3)

Transmissão M-área em banda de base

41

A energia média por bit virá,
Eb = Es K

(10.4)

10.2 Energia média por símbolo Considerando a a tensão entre símbolos adjacentes, a energia média por símbolo assumindo que estes são equiprováveis é dada por,
E s = Ts 2a 2 M
M /2 k =1

a 2 ∑ (k − 0,5) =

( M 2 − 1) ( M 2 − 1) Ts = E min , 4 3 3
2

(10.5)

em que Emin é a energia do símbolo de menor energia, com amplitude a/2. 10.3 Largura de banda Assumindo o ponto de zero de ISI a meio dos símbolos, a abertura dos pulsos de formatação é de 2 Rs e a largura de banda virá:

BT =

Rs (1 + α ) = Rb (1 + α ) , 2 2K

(10.6)

ou seja, como se pretendia, a largura de banda diminui com o aumento do número de bits por símbolo. Repare-se que a equação 10.6 é um caso geral da equação 6.5. 10.4 Capacidade de canal Das equações 10.1, 10.5 e 10.6, assumindo a largura de banda mínima dada pelo critério e Nyquist (α=0) para transmissão sem ISI e resolvendo em ordem a Rb , virá para o máximo débito binário:
⎛ 12 E Rb = BT log 2 ⎜1 + 2 b ⎜ a Ts ⎝ ⎞ 12 P ⎟ = BT log 2 ⎛1 + 2 ⎞ ⎜ ⎟ ⎟ a ⎠ ⎝ ⎠

(10.7)

Shannon em 1949 demonstrou que existe um máximo débito binário para transmissão sem erros, denominado capacidade de canal, num canal de banda

42

Comunicação de Dados

Carlos Meneses

limitada BT e ruído gaussiano com potência N, sendo transmitido um sinal com potência P. A fórmula da capacidade de canal é semelhante à equação 10.7, fazendo a potência do ruído N proporcional a a 2 . A dedução da fórmula da capacidade de canal sai fora do âmbito deste texto, sendo dada por:

P⎞ ⎛ C = BT log 2 ⎜1 + ⎟ N⎠ ⎝

(10.8)

Este é um limite teórico, conhecido por lei de Hartley-Shannon. Para uma relação sinal-ruído P N inferior à capacidade de canal o número de erros de bit sobe rapidamente e para uma SNR acima da capacidade de canal o número de erros tende para zero. 10.5 Probabilidade de erro de símbolo A probabilidade de erro de símbolo Ps será calculada assumido um filtro adaptado normalizado, pelo que se tem, pela equação 8.6,
c(t ) = 1 . Ts

(10.9)

As distribuições de cada símbolo à saída do filtro no momento de amostragem para os diversos símbolos é apresentada na figura 10.2.

Figura 10.2 Tensões de amostragem sem ruído no código PAM M-áreo e respectivas distribuição de probabilidades.

A distância entre símbolos consecutivos no instante de amostragem, vem:

Transmissão M-área em banda de base

43

⎛a⎞ d = Emin = ⎜ ⎟ Ts , ⎝2⎠

2

(10.10)

Note-se que a probabilidade de erro de símbolo terá de contar com as áreas acima de d à esquerda e à direita, a menos das duas distribuições das pontas em que esta área só contará uma vez. A probabilidade de erro de símbolo virá então:

Ps =

⎛ d2 ⎞ ⎛ d2 ⎞ 2 1 2(M − 2) 1 ⎟ ⎟+ ercf ⎜ ercf ⎜ ⎜ N0 ⎟ ⎜ N0 ⎟ M 2 M 2 ⎠ ⎝ ⎠ ⎝

(10.11)

Através das equações 8.10, 10.4, 10.5, 10.10 e 10.11, chega-se a:

Ps =

⎛ E min ( M − 1) ercf ⎜ ⎜ N M 0 ⎝

⎛ ⎞ ( M − 1) ⎟= ercf ⎜ ⎟ ⎜ M ⎠ ⎝

Eb 3K 2 (M − 1) N 0

⎞ ⎟ ⎟ ⎠

(10.12)

10.6 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 supor-se duas situações: Código aleatório: 1 erro de símbolo corresponde a errar de 1 a K bits de um modo equiprovável; Código Gray: 1 erro de símbolo corresponde na maior parte das vezes a apenas 1 erro de bit. 10.6.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 poderão estar errados quaisquer número de bits entre 1 e K. Em média estarão errados (K+1)/2 bits, pelo que:

1 K K +1 símbolos ⇔ bits ↔ 1 símbolo errado = bits errados , Ps Ps 2
pelo que o BER virá:
BER =

(10.13)

(K + 1) 2 = K + 1 Ps
K Ps K 2

(10.14)

44

Comunicação de Dados

Carlos Meneses

10.6.2 Código Gray A probabilidade de quando existe um erro de símbolo ser descodificado um dos dois símbolos adjacente (tensões adjacentes) é muito maior do que ser descodificado qualquer outro símbolo. Se houver o cuidado de modo a que a símbolos adjacentes correspondam códigos apenas com 1 bit de diferença, como num código Gray, então quando se errar 1 símbolo errar-se-á apenas 1 bit. Nestas circunstâncias virá:

1 K símbolos ⇔ bits ↔ 1 símbolo errado ≈ 1 bit errado , Ps Ps
pelo que,
BER ≈ Ps . K

(10.15)

(10.16)

A tabela 10.1 ilustra o código Gray para 4 bits.

0 1 2 3

0000 0001 0011 0010

4 5 6 7

0110 0111 0101 0100

8 9 10 11

1100 1101 1111 1110

12 13 14 15

1010 1011 1001 1000

Tabela 10.1 Código Gray de 4 bits.

Sendo esta uma situação mais favorável que a utilização de um código aleatório, assumiremos, desde que nada seja dito em contrário, a utilização de um código Gray. Para uma transmissão PAM M-áreo o BER virá então, pela equações 10.12 e 10.16:

BER =

⎛ ( M − 1) ercf ⎜ ⎜ KM ⎝

Eb 3K 2 (M − 1) N 0

⎞ ⎟ ⎟ ⎠

(10.17)

Na figura 10.3 é apresentada uma comparação entre os BER para diversos números de bits por símbolo (M=2, 4, 8, 16). Pode-se verificar o aumento do BER à medida que se aumenta M, mas relembre-se que se diminui a largura de banda necessária (equação 10.6).

Transmissão M-área em banda de base

45

Figura 10.3 BER em função da relação E b N 0 em decibéis, para códigos de linha PAM M-áreo utilizando código Gray (M=2:16).

10.7 Código 2B1Q Um bom compromisso entre o desempenho e a complexidade corresponde a utilizar um código PAM com 2 bits por símbolo (2B1Q – 2 binary 1 quaternary) e código Gray, apresentado na figura 10.4.

Figura 10.4 Código 2B1Q correspondente a PAM quaternário utilizando código Gray.

46

Comunicação de Dados

Carlos Meneses

Aplicando a equação 10.17 com K=2 bits por símbolo, obtêm-se:

⎛ 2 Eb 3 BER = ercf ⎜ ⎜ 5N 8 0 ⎝
e a largura de banda virá, pela equação 10.6:
BT =

⎞ ⎟, ⎟ ⎠

(10.18)

Rb (1 + α ) . 4

(10.19)

Na figura 10.3 é apresentado o padrão de olho do código 2B1Q com factor de rolloff α=0 e a=2. Pode-se verificar o pontos sem ISI a meio dos símbolos, com tensões ± 1 e ± 3 Volt.
Padrão de Olho 5 4 3 2 1 0 -1 -2 -3 -4 -5 0 0.5 1 rolloff=0 Pn=0.00 Watt/Hz 1.5 2

Figura 10.5 Padrão de olho no código 2B1Q com α=0 e a=2.

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. Este sistema utiliza o sistema telefónico, permitindo dois canais a 64 kbit/s mais um canal de 16 kbit/s para sinalização e controlo.

Modulação digital binária.

47

11 Modulação digital binária. Na transmissão através de códigos de linha apresentados nas secções anteriores, o sinal é transmitido num canal passa-baixo. Em canais passa-banda um código de canal é modulado por uma portador sinusoidal, produzindo uma modulação digital passa-banda centrada na frequência da portadora. Estes sinais são mais fáceis de propagar na atmosfera e podem ser multiplexados se forem modulados com sinusóides de frequências diferentes e tiverem bandas que não se sobreponham. Na figura 11.1 são apresentadas algumas das modulações binárias mais usuais.

Figura 11.1 Modulações digitais binárias mais comuns. B-PSK, OOK, B-ASK, DPSK, FSK

48

Comunicação de Dados

Carlos Meneses

11.1 Modulações B-PSK, OOK e B-ASK Este conjunto de modelações é conseguida através da modulação DSB (Double Side Band). Como mostrado na figura 11.2, a modulação DSB é obtida pela multiplicação de um código de linha por uma sinusóide.

Figura 11.1 Modulação DSB.

11.1.1 Modulação B-PSK Os símbolos na modulação B-PSK (Binary Phase Shift Key)

correspondem a:
⎧ s1 (t ) = A cos(2πf c t ) para o nível lógico "1" , ⎨ ⎩s 0 (t ) = − A cos(2πf c t ) para o nível lógico "0"

(11.1)

pelo que esta modulação corresponde à modulação DSB de um código de linha PNRZ. A largura de banda em DSB é o dobro da largura de banda do sinal de entrada, pelo que, pela equação 6.4, a largura de banda em PSK é dada por:

BT = 2W = Rb (1 + α ) .

(11.2)

A potência e portanto a energia do sinal de saída em DSB são metade dos respectivos valores do sinal de entrada, pelo que, pela equação 3.8, a energia media por bit em PSK é dada por:

Eb =

A2 Tb . 2

(11.3)

Os símbolos em PSK correspondem ao de um código polar (equação 9.1 e 11.1), pelo que a probabilidade de erro de bit é dada pela equação 9.5.

Modulação digital binária.

49

11.1.2 Modulação OOK Os símbolos na modulação OOK (On-Off Key) correspondem a:
⎧s1 (t ) = A cos(2πf c t ) para o nível lógico "1" , ⎨ para o nível lógico "0" ⎩s 0 (t ) = 0

(11.4)

pelo que esta modulação corresponde à modulação DSB de um código de linha UNRZ. Tendo em consideração a largura de banda em UNRZ, a largura de banda em OOK é também dada pela equação 11.2. Por seu lado, sendo a energia média por bit em UNRZ dada pela equação 3.9, a energia media por bit em OOK é dada por:

Eb =

A2 Tb . 4

(11.5)

Os símbolos em OOK correspondem ao de um código unipolar (equação 9.6 e 11.4), pelo que a probabilidade de erro de bit é dada pela equação 9.9.

11.1.3 Modulação B-ASK Os símbolos na modulação B-ASK (Binary Amplitude Shift Key) correspondem a:
⎧s1 (t ) = A1 cos(2πf c t ) para o nível lógico "1" , ⎨ ⎩s 0 (t ) = A0 cos(2πf c t ) para o nível lógico "0"

(11.6)

ou seja, cada símbolo corresponde a uma amplitude diferente da portadora. O código de linha de entrada corresponde a um código sem retorno a zero mas em que cada símbolo é representado por uma tensão positiva. A largura de banda deste código é portanto igual ao dos PNRZ e UNRZ, pelo que a largura de banda em B-ASK é também dada pela equação 11.2.

50

Comunicação de Dados

Carlos Meneses

A energia média por bit em ASK é a média das energias das sinusóides de cada símbolo, dada por:

Eb =

A1 + A0 Tb . 4

2

2

(11.7)

Assumindo um filtro adaptado normalizado, a figura 7.2 da distribuição da tensão para cada símbolo no momento de amostragem continua a ser válida e teremos:

A1 ⎧ Tb ⎪ y1 = E1 = ⎪ 2 , ⎨ A ⎪ y 0 = E 0 = 0 Tb ⎪ 2 ⎩
Sendo d dado pela equação 7.11,

(11.8)

d=

y1 − y 0 2

=

E1 − E 0 2

= Tb

A1 − A0 2 2

.

(11.9)

Pela equação 8.10 o BER virá:

BER =

⎛ T ( A1 − A0)2 1 ercf ⎜ b ⎜ 2 8N 0 ⎝

⎞ ⎟ ⎟ ⎠

(11.10)

Note-se que as equações 11.7 e 11.10, respectivamente da energia média por bit e da probabilidade de erro em ASK, são válidas quer para PSK ( A1 = − A0 ) quer para OOK ( A0 = 0 ), tornando-se casos particulares daquele. 11.1.4 Filtro adaptado Devido à modulação não existe um ponto de zero de interferência inter-simbólica, como nos casos dos códigos de linha. A detecção dos símbolos pode no entanto continuar a efectuar-se através do filtro adaptado (figura 8.2),

Modulação digital binária.

51

em que c(t) deverá ser proporcional aos símbolos (equação 8.1) e se o filtro estiver normalizado deverá ainda ter energia unitária (equação 8.7), pelo que:
c(t ) = ks1 (t ) = 2 cos(2πf c t ) Tb

(11.11)

Para que o valor de

y1 , correspondente ao valor no instante de

amostragem da filtragem do símbolo s1 (t ) ,

corresponda

ao da equação 8.8,

deverá haver um número de ciclos inteiro da sinusóide de modulação, ou seja,

Tb = LTc =

L , fc

(11.12)

ou seja, f c é múltiplo de Rb . Nestas circunstâncias,
= ∫ c(t )s1 (t )dt = ∫ A
0 0 Tb Tb

y1

2 cos 2 (2πf c t )dt Tb A2Tb = E1 2

A 2 = 2 Tb

Tb

2 [1 + cos(2π 2 f ct )]dt = A t Tb = ∫ 2Tb 0 0

(11.13)

11.2 Modulação diferencial Uma das grandes dificuldades na implementação do filtro adaptado com sinais modulados é a realização do sinal c(t), que deverá estar sincronizado (sincronismo de portadora), quer em frequência quer em fase, com a portadora. Este sincronismo deve ser extraído do próprio sinal de entrada, que poderá estar muito corrompido com ruído, tornando-se bastante complexo. Note-se ainda que em PSK existe ambiguidade da fase, ou seja, devido a atrasos na propagação dos sinais no canal de transmissão, pode não ser possível determinar a fase e os bits serem descodificados com os níveis lógicos invertidos. Evitar o sincronismo de portadora, nomeadamente quando o nível de ruído é elevado, torna o receptor menos complexo. Uma solução é a utilização da modulação diferencial em PSK (DPSK). Nesta, ao contrário do NRZI, os

52

Comunicação de Dados

Carlos Meneses

níveis lógicos a “1” correspondem a manter a fase do símbolo anterior e os símbolos lógicos a “0” correspondem a inverter a fase do símbolo anterior. Este código corresponde a um código PSK com pré-codificação a[n] = not(a[n-1] xor b[n]), como se mostra na tabela 11.1. b[n] a[n] = not(a[n-1] xor b[n]) 0 1 0 0 1 1 1 0 0 0 1 1 1 1 1 0 0

Tabela 11.1 Exemplo de pré-codificação em DPSK (correspondente à figura 11.1-d)

O desmodulador DPSK é idêntico ao desmodulador PSK, excepto no que respeita ao oscilador sincronizado que produz c(t), aqui substituído por uma versão do próprio sinal de entrada, atrasado de Tb. O filtro passa-banda à entrada (BPF – band-pass filter), que deverá ter uma largura de banda pelo menos igual à do sinal de entrada (equação 11.2) atenua o ruído.

Figura 11.2 Desmodulação DPSK com filtro adaptado.

A largura de banda e a energia deste código são as mesmas que no código B-PSK (equações 11.2 e 11.3 respectivamente). A dedução do BER sai fora do contexto deste texto, sendo dada por:

1 − BER = e N o 2
11.3 Modulação FSK

Eb

(11.14)

Na modulação FSK (Frequency Shift Key) os símbolos correspondem, como mostrado na figura 11.1-e, a sinusóides com a mesma amplitude mas com frequências diferentes. Tendo os símbolos sempre a amplitude A, a energia média por bit é a energia de uma sinusóide no tempo Tb ,

Modulação digital binária.

53

Eb =

A2 Tb . 2

(11.15)

Esta modulação corresponde à modulação FM estando a frequência da portadora a meio das frequências que definem os símbolos, f1 para o símbolo

“1”, e f 0 para o símbolo “0”, ou seja: fc = f1 + f 0 , 2
(11.16)

e tendo como entrada um código PNRZ, sendo provocado um desvio máximo de frequência em relação à portadora de:
∆ f = f1 − f c = f 0 − f c .

(11.17)

A largura de banda vem portanto:
BT = 2∆ f + 2W = f1 − f 0 + Rb (1 + α )

(11.18)

Os códigos estudados até agora têm como característica estarem sempre sobre a direcção do vector de base c(t). São exemplos: os códigos “polares”, apresentados na figura 11.3-a, em que os símbolos são representados na direcção do vector de base normado c(t), tendo norma igual à raiz quadrada da energia e o sinal dá informação do sentido, sendo negativo se o símbolo for simétrico ao vector de base; e os códigos “unipolares”, como apresentado na figura 11.3-b, em que um dos símbolos é zero. Ao contrário, no caso da modulação FSK, os símbolos são ortogonais, como mostrado na figura 11.3-c. De facto, considerando que quer a frequência correspondente ao símbolo “1”, f1 , quer a frequência correspondente ao símbolo “0”, f 0 , são múltiplas do débito binário, como já imposto pela equação 11.12, o produto interno entre os dois símbolos virá,
Tb

∫ s (t )s (t )dt = ∫ A
0 1 0 0 2 Tb

Tb

2

cos(2πf 0t ) cos(2πf1t )dt
(11.19)

=A

∫ [cos(2π ( f
0

1

− f 0 )t ) + cos(2π ( f1 + f 0 )t )]dt = 0

54

Comunicação de Dados

Carlos Meneses

Figura 11.3 Representação vectorial dos códigos (a) ”unipolares”, (b) “unipolares” (c) ortogonais.

Em qualquer destes casos a probabilidade de erro de bit é dada por (equação 8.10):

BER =

⎛ d2 1 erfc⎜ 2 ⎜ 2σ n 2 ⎝

2 ⎞ ⎞ 1 ⎛ ⎟ = erfc⎜ d ⎟ . ⎟ 2 ⎜ N0 ⎟ ⎠ ⎝ ⎠

(7.20)

Se, como em B-FSK, os símbolos forem ortogonais e tiverem a mesma energia, a distância d virá:

d=
pelo que o BER virá:

E1 + E 0 2

=

Eb , 2

(11.20)

BER =

⎛ Eb 1 erfc⎜ ⎜ 2N 2 0 ⎝

⎞ ⎟. ⎟ ⎠

(11.21)

Modulação digital binária.

55

O receptor que realiza a descodificação de símbolos ortogonais terá que produzir não apenas uma correlação, como necessário em “polar” ou “unipolar”, mas duas correlações normadas como mostrado na figura 11.4, na direcção de cada um dos símbolos, ou seja:
⎧ 2 cos(2πf1t ) ⎪c1 (t ) = Tb ⎪ . ⎨ 2 ⎪c (t ) = cos(2πf 0 t ) ⎪ 0 Tb ⎩

(11.22)

Figura 11.4 Receptor óptimo para detecção B-FSK.

O correlador na direcção do símbolo lógico “1” terá , no fim da integração:

⎧ ⎪ ⎪ ⎨ ⎪ ⎪ ⎩

Eb 0 N0 2

para o nível lógico "1" para o nível lógico "0" . potência do ruído
(11.23)

Para o correlador na direcção do símbolo lógico “0” virá,

⎧ ⎪0 ⎪ ⎨ Eb ⎪ N0 ⎪ ⎩ 2

para o nível lógico "1" para o nível lógico "0" . potência do ruído

(11.24)

56

Comunicação de Dados

Carlos Meneses

O sinal y(t) sobre o qual se tomará a decisão virá:

⎧ y1 = + Eb ⎪ ⎨ y0 = − Eb ⎪N ⎩ 0

para o nível lógico "1" para o nível lógico "0" . potência do ruído

(11.25)

Note-se que continua a ser válida a figura 7.11 com os valores obtidos pela equação 11.25 e continua a ser válida a equação 8.10, sendo a distância

d = Eb e a variância do ruído N 0 , pelo que se chega também à equação 11.21.
11.4 Recepção não coerente Como já referido, uma das grandes dificuldades do filtro adaptado é a implementação do sincronismo de portadora com sinais modulados, de modo a produzir o sinal c(t), dificuldade agravada no caso do sinal ser corrompido com bastante ruído. Nesta secção apresentaremos a recepção não coerente de sinais OOK, B-ASK e B-FSK. A modulação DPSK corresponde à modulação não coerente em PSK, comparando a fase do sinal com a fase do sinal no bit anterior. Nas modulações OOK e B-ASK a informação sobre o símbolo vai na amplitude. O sinal OOK pode ser visto como um caso particular do B-ASK, em que uma das amplitudes é 0 Volts. Após filtragem passa-banda à frequência da portadora, como mostrado na figura 11.5, com largura de banda igual à largura de banda transmitida BT, é colocado um detector de envolvente (rectificador de meia onda ou onda completa).

Figura 11.5 Receptor não coerente para sinais OOK e B-ASK.

Modulação digital binária.

57

Sem ruído, a tensão após este detector corresponde à amplitude de cada um dos símbolos. O comparador deverá ter uma tensão de referência equidistante das amplitudes dos dois símbolos, ou seja:

λopt =

A1 + A0 . 2

(7.26)

No caso do B-FSK, o receptor não coerente é apresentado na figura 11.6. Neste, são colocados dois filtros passa-banda em paralelo, à frequência de cada um dos símbolos. Estes são seguidos do detector de envolvente. Quando o símbolo de entrada corresponde à frequência f1, o detector de envolvente respectivo apresenta a amplitude do sinal de entrada (mais ruído) e o detector de envolvente correspondente à frequência f0 apresenta o valor zero (mais ruído) e vice-versa.

Figura 11.6 Receptor não coerente para sinais B-FSK.

58

Comunicação de Dados

Carlos Meneses

12 Modulação digital M-área. Assim como nos códigos de linha, a utilização de código M-área com modelação melhora a largura de banda dos sinais transmitidos. Nesta secção apresentaremos dois códigos M-áreos com modulação: M-PSK e QAM (Quadrature Amplitude Modulation). 12.1 Modulação M-PSK Na modulação M-PSK (M-área Phase Shift Key), como em B-PSK, os símbolos são constituídos por sinusóides com a mesma amplitude e frequência, sendo a informação enviada através da fase. A figura 12.1 mostra um exemplo de uma constelação 8-PSK. Denomina-se constelação porque os símbolos são representados por estrelas num espaço bidimensional, definido por duas dimensões correspondentes a:

c1 (t ) =

2 cos(2πf ct ) Tb

2 c2 (t ) = − sin (2πf ct ) Tb

.

(12.1)

As fases correspondentes a cada um dos símbolos k são dadas por:

φk =

2π k M

k = 0 : M −1,

(12.2)

e o símbolo corresponde é dado por:

sk (t ) = A cos(2πf ct + φk ) = A cos(φk )cos(2πf ct ) − A sin (φk )sin (2πf ct )
12.1.1 Energia média por símbolo

(12.3)

As equações 10.1 a 10.4, que relacionam grandezas entre bits e símbolos, continuam a ser válidas com modulação. Como todos os símbolos são compostos por sinusóides com igual amplitude, a energia média por bit é dada por:
Eb = A2 , Tb 2

(12.4)

Modulação digital M-área.

59

Figura 12.1 Constelação M-PSK (Exemplo M=8).

12.1.2 Largura de banda A modulação M-PSK pode ser vista como a sobreposição de duas modelações DSB (equação 12.3), cada uma com um sinal M-PAM (embora de distância entre símbolos variável). Deste modo a largura de banda é o dobro da largura de banda correspondente à da equação 10.6:

BT = Rs (1 + α ) =
12.1.3 Probabilidade de erro de símbolo

Rb (1 + α ) . K

(12.5)

A probabilidade de erro de símbolo Ps será calculada assumido um filtro adaptado normalizado. Pela figura 12.1 tem-se:

⎛π ⎞ d = E s sin ⎜ ⎟ , ⎝M ⎠

(12.6)

60

Comunicação de Dados

Carlos Meneses

e haverá erro à direita e à esquerda de cada símbolo, pelo que, pela equação 8.10 virá: ⎛ ⎛π ⎞E ⎞ (12.7) Ps = erfc⎜ sin 2 ⎜ ⎟ s ⎟ , ⎜ ⎝ M ⎠ No ⎟ ⎝ ⎠ e assumindo o código Gray, aplica-se a equação 10.16 e o BER virá:

BER =

⎛ 1 ⎛π erfc⎜ K sin 2 ⎜ ⎜ K ⎝M ⎝

⎞ Eb ⎟ ⎠ No

⎞ ⎟. ⎟ ⎠

(12.8)

12.1.4 Modulação Q-PSK Um caso particular da modulação M-PSK é o 4-PSK ou Q-PSK, em que cada bit corresponde à modulação B-PSK sobre cada um dos vectores de base, como mostrado na figura 12.2.

Figura 12.2 Emissor Q-PSK.

Aplicando a equação 12.8 com M=4, o BER virá:

BER =

⎛ Eb ⎞ 1 ⎟ erfc⎜ ⎜ N ⎟, 2 o ⎠ ⎝

(12.9)

e a largura de banda virá (equação 12.5):

BT =

Rb (1 + α ) , 2

(12.10)

Modulação digital M-área.

61

Figura 12.3 Constelação Q-PSK.

Note-se que o receptor corresponde a dois filtros adaptados em paralelo, como mostrado na figura 12.4, mas ao contrário da modulação B-FSK cada filtro dá directamente informação de cada um dos bits do símbolo.

Figura 12.4 Receptor Q-PSK.

A modulação QPSK aparece assim como um bom compromisso em relação ao B-PSK, entre o aumento da complexidade do emissor e do receptor, mas obtendo o mesmo BER e uma redução da largura de banda para metade.

62

Comunicação de Dados

Carlos Meneses

12.2 Modulação QAM A modulação QAM é idêntica à modulação M-PSK, mas deixa de se ter a restrição de os símbolos terem todos a mesma energia. De facto correspondem a duas modulações DSB ainda sobre uma base correspondente à equação 12.1, tendo como sinal de entrada códigos de linha PAM com
M símbolos cada um.

Figura 12.5 Constelação QAM (Exemplo M=16).

Esta constelação, com forma quadrada, só é válida para um número par de bits. Quando o número de bits é ímpar é também possível produzir uma constelação, sendo as fórmulas seguintes válidas como aproximações. Definindo E0 como a energia correspondente à projecção numa das direcções dos vectores de base do símbolo com menor energia, como referido na figura 12.5, a energia média por símbolo corresponde a duas vezes a energia dada pela equação 10.5 (substituindo M por
M

e

Emin

por

E0 ),

correspondendo às duas direcções dos vectores de base, que são ortogonais:

Modulação digital M-área.

63

Es =
A probabilidade de

2(M − 1) E0 3
de símbolo corresponde

(12.11) também

erro

(aproximadamente)

a duas vezes a probabilidade de erro de símbolo em

M-PAM dada pela equação 10.12:

⎛ E0 ⎞ 1 ⎞ ⎛ ⎟ Ps ≈ 2⎜1 − ⎟ercf ⎜ ⎜ N ⎟ M ⎠ ⎝ 0 ⎠ ⎝
e assumindo o código Gray o BER virá:

(12.12)

BER =

⎛ E0 ⎞ 2⎛ 1 ⎞ ⎟ ⎜1 − ⎟ercf ⎜ ⎜ N ⎟. K⎝ M ⎠ 0 ⎠ ⎝

(12.13)

Das equações 10.4, 12.11 e 12.13, virá:

BER =

⎛ 2⎛ 1 ⎞ 3K Eb ⎜1 − ⎟ercf ⎜ ⎜ 2(M − 1) N K⎝ M ⎠ 0 ⎝

⎞ ⎟ ⎟ ⎠

(12.14)

Na figura 12.5 é apresentado o receptor QAM, em que continuam a figurar os dois filtros adaptados em paralelo e continuando válida a equação 12.1 na definição dos sinais c0 (t ) e c1 (t ) . Este é aliás um receptor genérico, uma vez que todos as modulações digitais, binárias ou não, correspondem a um caso particular da modulação QAM. Este receptor é também válido em códigos de linha, sendo aqui necessário redefinir c0 (t ) e c1 (t ) .

Figura 12.6 Receptor QAM.

64

Comunicação de Dados

Carlos Meneses

13 Codificação de canal Num sistema de comunicação digital existem dois tipos de erros de bit: os erros devido ao ruído

“térmico”;

e

os

erros

devido

a

interferência

electromagnéticas esporádicas ou a variações rápidas das condições do próprio canal. Os primeiros correspondem a erros aleatórios independentes. Os segundos correspondem a erros em rajada. Dependendo do tipo de erros, existem estratégias diferenciadas para, no receptor, os detectar ou corrigir. Caso se consiga apenas detectar erros deverá haver um mecanismo para que o receptor informe o transmissor da presença destes erros de modo a que a informação seja retransmitida (ARQ – Automatic repeat request). Caso se consiga encontrar a posição dos erros estes serão corrigidos (FEC- Forward error correction) por inversão do valor lógico do respectivo bit. 13.1 Probabilidade de erro de bloco sem codificação Assumindo bits aleatórios com probabilidade BER, haverá em média 1 erro de bit de 1/BER em 1/BER bits. O tempo médio entre erros será igual a esse valor multiplicado pelo tempo de cada bit, ou seja:

Te =

1 1 Tb = . BER Rb BER

(13.1)

Num bloco de n bits, a probabilidade de errar l bits, independentemente da sua posição, é dada pela distribuição binomial:

f (l n, BER ) = Cln BER l (1 − BER )

n −l

,

(13.2)

sendo a probabilidade de errar l bits ou mais a soma das respectivas probabilidades:
f (errar l ou mais n, BER ) = ∑ C n BER j (1 − BER ) j
n j =l n− j

.

(13.3)

Codificação de canal

65

Para valores de BER pequenos,

l ≠ 0 e nBER << 1 ( nBER corresponde

ao valor médio), a equação 13.3 simplifica-se para:
f (errar l ou mais n, BER ) ≈ f (l n, BER ) ≈ Cln BER l ,

(13.4)

A probabilidade de um bit estar errado, independentemente da sua posição, virá:
f (1 n, BER ) = C1n BER(1 − BER) n −1 ≈ nBER .

(13.5)

A probabilidade de um bloco de n bits não ter nenhum bit errado virá:

f (0 n, BER ) = (1 − BER )
13.2 Código de paridade

n

(13.6)

A paridade de um bloco de bits é considerado par se o número de bits com valor lógico “1” for par e ímpar se este número for ímpar. Um código de paridade é construído a partir de n-1 bits de informação, sendo colocado 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. Neste texto assumiremos sempre paridade par. Para n=3, as palavras de código são 000, 011, 101 e 110, correspondendo o último bit ao bit de paridade colocado pelo transmissor. No receptor, caso se receba um bloco com paridade ímpar, como por exemplo 010, conclui-se que foi produzido entre o transmissor e o receptor pelo menos 1 erro e o bloco deverá ser retransmitido. Caso se produzam dois erros a paridade virá novamente correcta. Por exemplo, caso se transmita 110 e se receba 011, são produzidos erros nos primeiro e terceiro bits, mas o bloco corresponde a uma palavra de código. De facto, como facilmente se verifica, só é possível detectar um número ímpar de erros. Assumindo a aproximação da equação 13.4, a probabilidade de não detectar erros corresponderá aproximadamente à probabilidade de errar 2 bits,

66

Comunicação de Dados

Carlos Meneses

ou seja, a probabilidade de erro, sem ser detectado e portanto sem ser retransmitido, no bloco de n bits virá:
n Pb ≈ f (2 n, BER ) = C2 BER 2 =

n(n − 1) BER 2 . 2

(13.7)

Nesta situação estarão errados apenas 2 bits em n bits, pelo que a probabilidade de erro após retransmissão virá, aproximadamente:

BER' ≈

2 Pb = (n − 1)BER 2 , n

(13.8)

e o tempo médio entre erros corresponderá à aplicação da equação 13.1 substituindo BER por BER’. Note-se contudo que este é um tempo médio entre erros, mas estes sucedem aos pares. Esta melhoria é conseguida à custa da implementação de um sistema de retransmissão e de um maior número de bits transmitidos (bits de paridade e blocos retransmitidos). A probabilidade de retransmissão corresponde à probabilidade de erro de um número ímpar de bits, que virá aproximadamente igual à probabilidade de erro de 1 bit no bloco, ou seja:
Pr ≈ nBER .

(13.9)

Este código tem um desempenho razoável para erros aleatórios de baixa probabilidade, mas será pouco satisfatório para erros em rajada. 13.3 Carácter de verificação de bloco – BCC Um bloco de bits pode ser subdividido em sub-blocos, em que cada sub-bloco estará protegido através de um bit de paridade. Por exemplo, na transmissão de caracteres ASCII (7 bits), cada carácter estará protegido por 1 bit de paridade ( p x ). Este procedimento está ilustrado na figura 13.1, 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, estará também

Codificação de canal

67

protegido por 1 bit de paridade, produzindo um carácter de verificação ( c x ). A vantagem deste código, denominado de carácter de verificação de bloco (BCC – Block check character), é a de que, embora 2 bits errados possam escapar à detecção numa linha, não passarão na detecção de bloco (coluna). Dois erros, desde que não na mesma linha ou na mesma coluna, serão também detectados, mas não é possível corrigi-los porque a posição dos erros fica indefinida entre duas hipóteses (duas diagonais).

m71 m72 m73 m74 m75 m76 m77 c7

m61 m62 m63 m64 m65 m66 m67 c6

m51 m52 m53 m54 m55 m56 m57 c5

m41 m42

m31 m31 m31 m31 m31 m31 m31 c3

m21 m22

m11 m12

p1 p2

m43
m44

m23
m24

m13
m14

p3
p4

m45 m46 m47
c4

m25 m26 m27
c2

m15 m16 m17
c1

p5 p6 p7 c0

Figura 13.1 Código de carácter de verificação de bloco.

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 detectados corresponde a quatro erros nos cantos de um rectângulo. Outra vantagem deste código é alguma robustez na presença de erros em rajada. A dimensão de uma rajada define-se como o número de bits entre o primeiro e o último erro, inclusive, tendo entre rajadas um número de bits correctos superior à dimensão da rajada. Se os bits não forem transmitidos por carácter (linha), mas por coluna (entrelaçamento – m71 , m72 , m73 , m74 … c7 , m61 ,

m62 … p7 , c0 ), uma rajada de erros de dimensão máxima igual ao número de
linhas produzirá apenas 1 bit errado por carácter e esta situação será verificada através das paridades de linha.

68

Comunicação de Dados

Carlos Meneses

13.4 Detecção de máxima verosimilhança e distância de Hamming Dado um bloco recebido, r, a probabilidade a posteriori de cada palavra de código, c j é dada por:

p (c j | r ) =

f r (r | c j ) pc j p (r )

,

(13.10)

e utilizando um critério de máximo a posteriori é descodificada a palavra de código c j com maior probabilidade a posteriori. 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, pelo que é descodificada a palavra c j que maximiza:

f r (r | c j )

(13.11)

Pela análise da distribuição binomial (equação 13.2 com BER muito pequeno e nBER << 1 ) que a função de verosimilhança é tanto maior quanto menor for o número de bits diferentes entre r e c j . Define-se distância de Hamming entre dois blocos, d (r , c j ) , como o número de bits diferentes entre r e

c j , em igual posição. Por exemplo os blocos 001 e 010 terão uma distância de
Hamming de 2, porque o 2˚ e 3˚ bits são diferentes. Para correcção de erros, o critério de máxima verosimilhança será então equivalente a corrigir um bloco recebido substituindo-o pela palavra de código que lhe diste a menor distância de Hamming. Define-se distância mínima, d min , de um código, como a menor distância de Hamming entre palavras de código. Se o número de erros for igual ou superior a d min , a palavra de código recebida poderá corresponder a outra palavra de código e mesmo utilizando o critério da minimização da distância de Hamming não se obterá a palavra transmitida.

Codificação de canal

69

Dada a distância mínima do código a capacidade de detecção e correcção será: Detectar até l erros Corrigir até t erros 13.5 Eficiência do código Um código com n bits, dos quais k são bits de informação e n-k são bits de paridade, é denominado código (n, k). A eficiência do código, no sentido do número de bits de paridade (redundância) introduzidos, é dada por,
d min ≥ l + 1 d min ≥ 2t + 1

(13.12-a) (13.12-b)

eficiência =

k , n

(13.13)

e a redundância introduzida pelo código é dada por:

redundância = 1 −

k . n

(13.14)

É fácil de verificar que um código de paridade tem uma eficiência de

(n − 1) n ,

a maior possível para o mesmo valor de n. Tem no entanto uma

distância mínima de apenas 2 bits, pelo que consegue detectar somente 1 bit errado e não consegue corrigir nenhum bit, pois haverá sempre duas palavras de código com a mesma distância de Hamming. Um código BCC terá uma distância mínima de 3 bits, uma vez que consegue corrigir sempre 1 bit de erro mas não consegue corrigir 2 bits de erro. Um código de detecção necessita de introduzir menos redundância em relação a um código de correcção e portanto será, nesse sentido, mais eficiente. Com o aumento do número de bits devido aos bits de paridade introduzidos, duas situações (ou uma situação intermédia) podem ocorrer em relação a uma transmissão sem codificação:

70

Comunicação de Dados

Carlos Meneses

1) Aumenta-se o débito binário de modo a transmitir a informação desejada no mesmo tempo. O débito binário virá, nestas circunstâncias:
' Rb =

n Rb . k

(13.15)

Note-se que o aumento do débito binário diminui a energia por bit, que por sua vez aumenta o BER inicial. 2) Mantêm-se o débito binário e demora-se mais tempo a transmitir a mesma informação. O aumento de tempo corresponderá a:

n ' Ttransmissão = Ttransmissão . k
13.6 Código de repetição

(13.16)

Um código de correcção corresponde a repetir um bit de informação n-1 vezes, produzindo um código (1, n) (ou R(n)), com n ímpar. Por exemplo para n=3, as duas palavras de código (k=1) serão 000 e 111. Na figura 13.2 apresentam-se todos os blocos possíveis de 3 bits num espaço tridimensional, em que cada bloco diferente corresponde a um vértice de um cubo. Os pontos a cheio nos vértices do cubo da figura (a) representam as palavras de código de um código de repetição e em (b) de um código de paridade. Blocos separados de uma aresta têm distância de Hamming de 1 e errar 1 bit corresponde ao deslocamento numa aresta. Note-se que o código de repetição tem uma 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). Quando se tem 1 erro de bit, enquanto que no código de paridade se fica posicionado num vértice à distância de 1 aresta de 3 palavras de código diferentes, no código de repetição fica-se a uma aresta do código original e a duas do outro código.

Codificação de canal

71

(b) Figura 13.2 Palavras de código de 3 bits (a) Código de repetição (b) Código de paridade.

(a)

A eficiência do código de repetição, dada pela expressão 13.17, é a menor possível para um determinado n, ao contrário do código de paridade que é a melhor possível para o mesmo n, encontrando-se neste aspecto estes códigos nos dois extremos de eficiência.

eficiência =

1 . n

(13.17)

Naturalmente que a distância entre as palavras de código é de n, pelo que se pode corrigir até (n − 1) 2 bits errados, correspondendo a uma regra por maioria. Por exemplo se for recebido para n=3 o bloco 100 será descodificado o nível lógico “0”, pois existem uma maioria de 0 recebidos. Para (n + 1) 2 ou mais bits errados a descodificação produzirá um erro. A probabilidade destes erros virá então:
BER' ≈C
n n +1 2 n +1 2

BER

.

(13.18)

Embora com uma eficiência muito baixa, em termos de uma grande redundância introduzida, este código é utilizado no armazenamento de dados que necessitem de alta protecção, por exemplo dados de clientes num banco, colocando n discos em paralelo. Quando da escrita a mesma informação é gravada em todos os discos e quando lida é aplicada uma regra por maioria de modo a garantir que não haja erros.

72

Comunicação de Dados

Carlos Meneses

13.7 Código de Hamming Um dos código com uma distância mínima entre palavras de código de 3 e portanto capaz de corrigir 1 bit errado é o código de Hamming. Para ilustrar este código assuma-se uma mensagem de 4 bits, por exemplo 1001. Este código requer 3 bits de paridade, num total de 7 bits, correspondendo a um código H(7,4) (Hamming (7,4)). Coloque-se os bits de informação da esquerda para a direita, respectivamente nas posições seguintes: m7 m6 m5 p4 m3 p2 p1 1 0 0 x 1 x x Os 3 bits marcados com x, que note-se estão nas posições correspondentes a potências de 2, corresponderão aos bits de paridade. Coloque-se agora estes bits nas posições correspondentes indicadas na figura 13.13-a, como ilustrado na figura 13.13-b. Os bits de paridade corresponderão ao cálculo da paridade par dentro do mesmo círculo.

(b) Figura 13.3 Cálculo do código Hamming (7,4) (a) Pictograma (b) Exemplo.

(a)

Os bits enviados, incluindo os bits de paridade, serão então: m7 m6 m5 p4 m3 p2 p1 1 0 0 1 1 0 0 Caso haja um erro, por exemplo em m6, os bits recebidos serão: Bits recebidos m7 m6 m5 p4 m3 p2 p1 1 1 0 1 1 0 0

Codificação de canal

73

O procedimento de correcção a ser efectuado no receptor é o seguinte: 1) Recalcula-se os bits de paridade, não levando em conta os bits de paridade recebidos.

Figura 13.4 Cálculo do código Hamming (7,4).

2) Soma-se em módulo-21 os bits de paridade recebidos e calculados (ou, de um modo equivalente, calcula-se a paridade par), produzindo um número denominado sindroma. Bits recebidos Bits calculados Sindroma m7 m6 m5 p4 m3 p2 p1 1 1 0 1 1 0 0 1 1 0 0 1 1 0 1 1 0

3) Lendo os bits do sindroma da esquerda para a direita, e transformando-o em decimal 110 ↔ 6, então o bit errado será o bit m6. 4) Inverte-se o nível lógico do bit errado e retiram-se os bits de paridade, entregando os bits m7, m6, m5, m3 = 1001, os bits correctos. Note-se pelo pictograma da figura 13.13 (a), que o bit m3 influência as paridades (p2, p1) exactamente as posições com nível lógico “1” da conversão para binário do seu índice (3 ↔ 011), assumindo as posições pela ordem (p4, p2, p1), acontecendo o mesmo para os outros bits de informação. Uma alternativa
1

Módulo-2 (0+0=0; 0+1=1; 1+0=1; 1+1=0; 0-0=0; 0-1=1; 1-0=1; 1-1=0)

74

Comunicação de Dados

Carlos Meneses

ao cálculo dos bits de paridade no código de Hamming corresponde a somar em módulo-2 (paridade par) as posições em binário dos bits a 1 da informação. 7 111 3 011 Paridade p4 p2 p1 1 1 1 0 1 1 1 0 0

No receptor, repete-se o procedimento, incluindo os bits de paridade, resultando no sindroma. Caso este seja 0, então não haverá erros. 7 111 4 100 3 011 Sindroma p4 p2 p1 1 1 1 1 0 0 0 1 1 0 0 0

Assumindo agora novamente um erro na posição m6, o sindroma virá: 7 6 4 3 Sindroma 111 110 100 011 6 p4 p2 p1 1 1 1 1 1 0 1 0 0 0 1 1 1 1 0

O sindroma corresponde novamente à posição errada, bastando para o corrigir inverter o bit correspondente. Note-se que por cada palavra de código válida haverá mais n blocos correspondentes a cada posição possível com bit errado, não válidos. O número de bits do sindroma, ou de um modo equivalente o número de bits de paridade, n-k, deverá ser suficiente para detectar estas possibilidades, ou seja:

2 n−k = n + 1 ,
estando as posições dos bits de paridade sempre nas potências de 2. O código H(3,1) corresponde a um código de repetição de 3 bits: m3 p2 p1

(13.19)

Codificação de canal

75

Com 4 bits de paridade o código corresponderá 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 número de bits de paridade é possível apenas corrigir 1 bit e só haverá erro de bloco se estiverem errados 2 bits ou mais. Caso se erre 2 bits, o bit a ser corrigido é sempre um terceiro bit, o que corresponderá no final a 3 erros de bit. Para calcular a probabilidade de erro de bit, aproxima-se a equação 13.4 ao primeiro termo, ou seja,
n Pb = f (2 n, BER ) = C2 BER 2 =

n(n − 1) BER 2 . 2

(13.20)

Ao tentar corrigir o bloco, provocar-se-á um terceiro erro, pelo que:

BER' =

3 3 Pb = (n − 1)BER 2 2 n

(13.21)

Como comparação entre os métodos de codificação de repetição e Hamming e verificação do efeito da eficiência, apresenta-se o gráfico da figura 13.5, para BER=1e-5.
0 1,E-04 1,E-08 1,E-12 1,E-16 1,E-20 1,E-24 1,E-28 1,E-32 1,E-36 1,E-40 1,E-44 1,E-48 1,E-52 1,E-56 1,E-60 1,E-64 1,E-68 1,E-72 0,1 0,2 0,3 0,4 0,5 0,6 0,7 0,8 0,9

R(3)=H(3,1) R(5)

H(7,4)

H(15,11)

H(31,26)

BER'

R(31)

Eficiência

Figura 13.5 Códigos de repetição versus Hamming função da eficiência, para BER=1e-5.

76

Comunicação de Dados

Carlos Meneses

13.8 Verificação cíclica de redundância – CRC Um código de detecção de erros, bastante robusto na presença de erros em rajada, é o de verificação cíclica de redundância (CRC – Cyclic redundancy check). Estes códigos são simples de implementar e têm uma estrutura algébrica bem definida, sendo capazes de uma grande eficiência. O princípio dos códigos CRC é o seguinte: Suponha-se um número a enviar entre o transmissor e o receptor, por exemplo 327. Faça-se a divisão inteira deste número por 100. O resultado dá 3 e o resto 27. Se for enviada quer a informação, o número 327, quer o resto da divisão, o número 27, é possível no receptor verificar se houve erro. Para tal, subtraia-se à informação o resto (327-27=300) e divida-se novamente por 100. Se o resto for 0 então não houve erro entre o transmissor e o receptor. Restos diferentes de 0 correspondem à existência de erros. Contudo, um erro que resulte num dividendo múltiplo do divisor, ou seja, múltiplo de 100, não será detectado. Aplicando este princípio para transmissão binária, assumindo aritmética de módulo-2, em que somar ou subtrair são equivalentes, e considerando,
M (x ) – um número de k bits (mensagem a enviar); G ( x ) – um número de n − k + 1 bits (divisor ou polinómio gerador); R( x ) – um número de n − k bits, (resto da divisão inteira);

tem-se que,
M (x )2n − k R(x ) = Q( x ) + G(x ) G(x )

(13.22)

e,
M ( x )2 n − k − R( x ) M ( x )2 n − k + R( x ) R( x ) R( x ) = = Q(x ) + − = Q(x ) (13.23) G(x ) G (x ) G (x ) G (x )

Note-se que R( x ) tem como dimensão n − k bits. Se for transmitido

T ( x ) = M ( x )2n − k + R( x ) (equivalente a colocar R( x ) nos bits a zero de M ( x )2 n − k ),

Codificação de canal

77

não haverá erros se este polinómio for divisível por G ( x ) , ou seja se T ( x ) G ( x ) não produzir resto, como se pode ver na equação 13.23. Caso haja erro definido por um padrão E ( x ) , em que:

⎧ 1 quando é produzido um erro na posição i ei = ⎨ quando não existe erro na posição i ⎩0
então o que é recebido corresponde a T ( x ) + E ( x ) (módulo-2) e,

(13.24)

T (x ) + E (x ) T (x ) E (x ) = + . G (x ) G (x ) G(x )

(13.25)

T ( x ) G ( x ) não produz resto, pelo que os erros só não serão detectados se E (x ) G ( x ) não produzir resto, ou seja, se o padrão de erro for múltiplo do

polinómio gerador. A escolha do polinómio sai fora do contexto deste texto, mas é essencial no desempenho final do código. Contudo é possível garantir um desempenho que consiga detectar:

– 2 erros; – Número ímpar de erros; – Erros em rajada com dimensão inferior à dimensão do polinómio; – Alguns erros em rajada com dimensão igual ou superior à do polinómio;
Alguns dos polinómios geradores mais utilizados são:

– Paridade – Hamming (7,4) – CRC-6 ITU-T G.704 – CRC16 ITU-T V.42 – CRC32 ITU-T V.42

x1+1 x4+x1+1 x6+x1+1 x16+x12+x5+1

x32+x26+x23+x22+x16+x12+x11+x10+x8+x7+x5+x4+x2+x1+1

78

Comunicação de Dados

Carlos Meneses

14 Sumário Este texto focou a interface eléctrica da camada física e os algoritmos de detecção e correcção de erros de bit da camada de ligação do modelo OSI. Foram descritos os principais códigos de linha para transmissão em canais passa-baixo, quer utilizando códigos binários quer M-áreos. Para transmissão em canais passa-banda foram descritas as principais modulações digitais, também nas versões binária e M-área. Para todos os códigos de linha e modulações foram deduzidas as expressões da energia por bit, da largura de banda segundo o critério de Nyquist que evita a interferência inter-simbólica e da probabilidade de erro de bit em receptores óptimos com detecção por máxima verosimilhança. Constituem os atributos dos códigos e modulações digitais o débito binário, a energia por bit, a largura de banda, a probabilidade de erro de bit, a facilidade de sincronismo de símbolo e de portadora, a complexidade de implementação dos transmissores e receptores e a presença de componente DC. Existem claramente compromissos em relação a estes atributos, já que por exemplo para diminuir a banda ocupada dificulta-se o sincronismo de símbolo que por sua vez aumenta a complexidade do receptor, ou para melhorar a probabilidade de erro de bit poderá ter que se aumentar a energia transmitida por símbolo. Havendo ruído é impossível evitar erros de bit entre o transmissor e o receptor. Para atenuar este efeito, foram apresentados métodos básicos de detecção e de correcção desses erros, quer estes sejam erros esporádicos quer em rajada. Estes métodos introduzem bits de redundância, sendo necessário introduzir maior número de bits quando se pretender maior robustez e naturalmente é também necessário maior número de bits para correcção do que para detecção.

Formulário

79

Principais Fórmulas
Tb Rb A Ek Eb ST Tempo de símbolo Débito binário Amplitude do código de linha/modulação Energia do símbolo k, k=0 ou 1 Energia média por bit Potência transmitida Eficiência espectral factor de rolloff Largura de banda Potência do ruído após filtragem Potência por Hz do ruído no canal de transmissão Tensão após filtragem sem ruído para o símbolo k, k=0 ou 1 Tensão óptima de comparação na detecção binária probabilidade de erro de bit Capacidade de canal

ρ

α

BT
2 σn

No/2

yk

λopt
BER C

Rb =

1 Tb
Tb

(3.1) (3.2) (3.4) (3.5) (3.6)

2 Ek = ∫ sk (t )dt 0

Eb = P=

E 0 + E1 . 2

Eb . Tb

ρ=

Rb . BT

Potência de ruído após filtragem
2 σn =

N0 (2 BT ) = N 0 BT . 2
y 0 + y1 . 2

(7.1)

Filtro adaptado

λopt =

(7.6) (7.7)

BER = p1 p 01 + p 0 p10 ,

80

Comunicação de Dados

Carlos Meneses

d= Área =

y1 − y 0

2

.

(7.11)

⎛ d2 1 erfc⎜ 2 ⎜ 2σ n 2 ⎝
c(t ) = ks j (t )
2 σn =

⎞ 1 ⎟ = erfc( x ) ⎟ 2 ⎠

(7.12) (8.1) (8.5)

N0 Ec 2

Filtro adaptado normado

Ec = 1
2 σn =

(8.6) (8.9) (8.10)

N0 2

BER =

⎛ d2 ⎞ 1 ⎟ erfc⎜ ⎜ N0 ⎟ 2 ⎝ ⎠
Energia média por bit

Códigos de linha binários
Código binário PNRZ DC Fácil Sincronismo Não Largura de Banda BER

BT Rb (1 + α ) 2

Eb A 2Tb A2 Tb 2 A2 Tb 2 A 2Tb A2 Tb 2 A2 Tb 2
(1) (1)

Não(1)

PRZ

Não(1)

Sim

Rb (1 + α )
Rb (1 + α ) 2

UNRZ Manchester (SplitPhase) AMI

Sim

Não

Não

Sim Não(2) Sim(BNZS) Não

Rb (1 + α )
Rb (1 + α ) 2 Rb (1 + α ) 2

Não

NRZI

Não(1)

(1)

⎛ Eb ⎞ 1 ⎟ ercf ⎜ ⎜ N ⎟ 2 0 ⎠ ⎝ ⎛ Eb ⎞ 1 ⎟ ercf ⎜ ⎜ N ⎟ 2 0 ⎠ ⎝ ⎛ Eb ⎞ 1 ⎟ ercf ⎜ ⎜ 2N ⎟ 2 0 ⎠ ⎝ ⎛ Eb ⎞ 1 ⎟ ercf ⎜ ⎜ N ⎟ 2 0 ⎠ ⎝ ⎛ Eb ⎞ 3 ⎟ ercf ⎜ ⎜ 2N ⎟ 4 0 ⎠ ⎝ ⎛ Eb ⎞ ⎟ ercf ⎜ ⎜ N ⎟ 0 ⎠ ⎝

Com critério de 1º zero a largura de banda é dada com α=1. 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”.

Formulário

81

Modulações digitais binárias
Modelações binárias B-PSK Largura de Banda Energia média por bit BER

BT

Eb A2 Tb 2 A 2 (1) Tb 4 A12 + A0 2 (1) Tb 4

Rb (1 + α ) Rb (1 + α ) Rb (1 + α )

OOK

B-ASK

⎛ Eb ⎞ 1 ⎟ ercf ⎜ ⎜ N ⎟ 2 0 ⎠ ⎝ ⎛ Eb ⎞ 1 ⎟ ercf ⎜ ⎜ 2N ⎟ 2 0 ⎠ ⎝ ⎛ T ( A1 − A0)2 1 ercf ⎜ b ⎜ 2 8N 0 ⎝
⎛ E ⎞ 1 exp⎜ − b ⎟ ⎜ N ⎟ 2 0 ⎠ ⎝ ⎛ Eb ⎞ 1 ⎟ ercf ⎜ ⎜ 2N ⎟ 2 0 ⎠ ⎝

⎞ ⎟ ⎟ ⎠

DPSK

Rb (1 + α ) f1 − f 0 + Rb (1 + α )

A2 Tb 2 A2 Tb 2

B-FSK

1 – Desde que com 50% de ocorrência de bits a cada nível lógico.

82

Comunicação de Dados

Carlos Meneses

Transmissão M-área
K M

Rs Es Ps

Número de bits por símbolo Número de níveis Débito de símbolos [símbolos/s] Energia média por símbolo [J] Probabilidade de erro de símbolo

M = 2K . Ts = KTb , Rs =
Eb =

(10.1) (10.2) (10.3) (10.4) (10.16)

Rb . K
Es K

BER ≈
Capacidade de canal

Ps para código Gray K P⎞ ⎛ C = BT log 2 ⎜1 + ⎟ N⎠ ⎝

(10.8)

Códigos/Modulações M-áreas
Código/ Modelação 2B1Q Largura de Banda Distância símbolos d Energia por símbolo Energia média por bit

BT

Es 5 2 A Tb 9
d 2 ( M 2 − 1) Ts 12

Eb 5 2 A Tb 9 d 2 ( M 2 − 1) Tb 12 A2 Tb 2 A2 Tb 2 2(M − 1) E0 3 K

BER (Código Gray)

Rb (1 + α ) 4 Rb (1 + α ) 2K Rb (1 + α ) 2 Rb (1 + α ) K Rb (1 + α ) K

2 A 3 2A M −1
⎛π ⎞ Es sin ⎜ k ⎟ ⎝2 ⎠ ⎛π ⎞ Es sin ⎜ k ⎟ ⎝2 ⎠

⎛ 2 Eb 3 ercf ⎜ ⎜ 5N 8 0 ⎝ ⎛ ( M − 1) ercf ⎜ ⎜ KM ⎝

⎞ ⎟ ⎟ ⎠

M-PAM

(

3K Eb ⎞ ⎟ M 2 − 1 N0 ⎟ ⎠

)

Q-PSK

A2 Ts 2 A2 Ts 2 2(M − 1) E0 3

⎛ Eb ⎞ 1 ⎟ ercf ⎜ ⎜ N ⎟ 2 0 ⎠ ⎝

M-PSK

⎛ 1 ⎛π erfc⎜ K sin 2 ⎜ ⎜ K ⎝M ⎝

⎞ Eb ⎟ ⎠ No

⎞ ⎟ ⎟ ⎠
⎞ ⎟ ⎟ ⎠

QAM

E0

⎛ 2⎛ 1 ⎞ 3K Eb ⎜1 − ⎟ercf ⎜ ⎜ 2(M − 1) N K⎝ M ⎠ 0 ⎝

Formulário

83

Detecção e correcção de erros
BER Te
n k
' Rb Pr Pb

Probabilidade de erro de bit sem correcção Tempo médio entre erros de bit Dimensão do bloco em número de bits após aplicação do código Dimensão do bloco em número de bits antes da aplicação do código Débito binário após aplicação do código Probabilidade de detecção de erro e retransmissão do bloco Probabilidade de erro de bloco Probabilidade de erro de bit após correcção ou retransmissão
m −l

BER '

f (l m, p ) = Clm p l (1 − p ) Te =
1 Rb BER

Clm =

m! (m − l )!l!
n

Sem erro em n bits (1 − BER )

Eficiência =

Rb k = Rb' n

Código de Paridade Pr = nBER Aproximação a errar 1 bit (BER<<1 e n “pequeno”) Código Paridade Repetição de n bits

k n-1 1

Rb Rb' n −1 n 1 n
'

Pb

BER '
2 Pb = (n − 1)BER 2 n

C

n

2

BER 2 =

n(n − 1) BER 2 2 BER
n +1 2

C

n n +1 2

Pb = C

n n +1 2

BER

n +1 2

Valores de Pb e BER aproximados, assumindo BER<<1 e n “pequeno”

Código de Hamming
Distância mínima de 3 bits; Corrige 1 bit ou detecta até 2 bits errados; Rb Pb n-k n k BER ' Rb' 3 3 n(n − 1) k n 2 2 2 n-k 2n − k − 1 n-(n-k) C 2 BER = 2 BER n Pb = 2 (n − 1)BER n 0,33 3 1 2 (1) 3BER 2 3BER 2 0,57 3 7 4 21BER 2 9 BER 2 0,73 4 15 11 105BER 2 21BER 2 0,84 5 31 26 465BER 2 45BER 2 0,91 6 63 57 1953BER 2 93BER 2 ' Valores de Pb e BER aproximados, assumindo BER<<1 e n “pequeno”
(1)Equivalente

ao código de repetição de 3 bits

84

Comunicação de Dados

Carlos Meneses

Formulário

85

Apêndices Apêndice 1 – Densidade espectral de potência em códigos de linha

PNRZ
⎛ f ⎞ A2 sinc 2 ⎜ ⎟ G( f ) = ⎜R ⎟ Rb ⎝ b⎠

PRZ
⎛ f A2 sinc 2 ⎜ G( f ) = ⎜ 2R 4 Rb ⎝ b ⎞ ⎟ ⎟ ⎠

UNRZ
A2 A2 2⎛ f ⎞ ⎜ ⎟+ sinc ⎜ ⎟ G( f ) = δ(f ) 4 Rb ⎝ Rb ⎠ 4

Bipolar
G( f ) =

⎛ f ⎞ ⎛ πf A2 sinc 2 ⎜ ⎟ sin 2 ⎜ ⎜R ⎟ ⎜R Rb ⎝ b⎠ ⎝ b

⎞ ⎟ ⎟ ⎠

Manchester
G( f ) =

⎛ f A2 sinc 2 ⎜ ⎜ 2R Rb ⎝ b

⎞ 2 ⎛ πf ⎟ sin ⎜ ⎟ ⎜ 2R ⎠ ⎝ b

⎞ ⎟ ⎟ ⎠

NRZI
G( f ) =

⎛ f ⎞ A2 sinc 2 ⎜ ⎟ ⎜R ⎟ Rb ⎝ b⎠

Apêndices

87

Apêndice 2 – Relações de densidade espectral num SLIT Densidade espectral de potência do sinal de entrada: G x ( f ) Densidade espectral de potência do sinal de saída: G y ( f ) Resposta em frequência do SLIT: H ( f ) Potência do sinal de saída: Py Energia da resposta impulsiva h(t): Eh Densidade espectral de potência do ruído branco:
2 Potência do ruído de saída: σ n

N0 2

G y ( f ) = Gx ( f ) H ( f ) Py = ∫ G y ( f )df
−∞ ∞ ∞

2

Eh = ∫ h(t ) 2 dt =
−∞ ∞

−∞

∫ H( f )
2

2

df

σ = ∫ Gw ( f ) H ( f )
2 n
−∞

N df = 0 2

−∞

∫ H(f )

2

df =

N0 Eh 2

Sendo a entrada gaussiana e o filtro um SLIT, a distribuição das amplitudes do sinal (ruído ou não) de saída é também gaussiana. Assumindo que o SLIT é um filtro passa-baixo de frequência de corte B,
2 σn =

N0 2

−B

∫ df

B

= N0 B

Apêndices

89

Apêndice 3 – Função complementar de erro - dedução

Sabendo que a função erfc( x ) está tabelada e é definida por:
erfc( x ) =
2

π

∫e
x

−µ 2

e sabendo que a área a tracejado é dada por:

Área =

y +d

1
2 2πσ y

( y − y )2
2 2σ y

e

dy

Fazendo a mudança de variável:

µ=

y− y
2 2σ y

2 dy = 2σ y dµ

y− y
2 2σ y y= y +d

=

d
2 2σ y

Área =


d

2 2σ y 2 2πσ y

e − µ dµ =

2

1

π


d

e − µ dµ

2

2 2σ y

2 2σ y

Área =
d2 2 2σ y

⎛ d2 1 erfc⎜ 2 ⎜ 2σ y 2 ⎝

⎞ 1 ⎟ = erfc( x ) ⎟ 2 ⎠

Com x =

Apêndices

91

Apêndice 4 – Função complementar de erro - tabela
1 2 erfc( x ) = 2 π

∫e
x

−µ 2

x
0 0,05 0,1 0,15 0,2 0,25 0,3 0,35 0,4 0,45 0,5 0,55 0,6 0,65 0,7 0,75 0,8 0,85 0,9 0,95 1 1,05 1,1 1,15 1,2 1,25 1,3 1,35 1,4 1,45 1,5 1,55 1,6 1,65 1,7 1,75 1,8 1,85 1,9 1,95

1/2 erfc(x)
5,000E-01 4,718E-01 4,438E-01 4,160E-01 3,886E-01 3,618E-01 3,357E-01 3,103E-01 2,858E-01 2,623E-01 2,398E-01 2,183E-01 1,981E-01 1,790E-01 1,611E-01 1,444E-01 1,289E-01 1,147E-01 1,015E-01 8,955E-02 7,865E-02 6,878E-02 5,990E-02 5,194E-02 4,484E-02 3,855E-02 3,300E-02 2,812E-02 2,386E-02 2,015E-02 1,695E-02 1,419E-02 1,183E-02 9,812E-03 8,105E-03 6,664E-03 5,455E-03 4,444E-03 3,605E-03 2,910E-03

x
2 2,05 2,1 2,15 2,2 2,25 2,3 2,35 2,4 2,45 2,5 2,55 2,6 2,65 2,7 2,75 2,8 2,85 2,9 2,95 3 3,05 3,1 3,15 3,2 3,25 3,3 3,35 3,4 3,45 3,5 3,55 3,6 3,65 3,7 3,75 3,8 3,85 3,9 3,95

1/2 erfc(x)
2,339E-03 1,871E-03 1,490E-03 1,181E-03 9,314E-04 7,314E-04 5,716E-04 4,446E-04 3,443E-04 2,653E-04 2,035E-04 1,553E-04 1,180E-04 8,924E-05 6,717E-05 5,031E-05 3,751E-05 2,783E-05 2,055E-05 1,510E-05 1,105E-05 8,040E-06 5,824E-06 4,199E-06 3,013E-06 2,151E-06 1,529E-06 1,081E-06 7,610E-07 5,330E-07 3,715E-07 2,577E-07 1,779E-07 1,222E-07 8,358E-08 5,686E-08 3,850E-08 2,594E-08 1,740E-08 1,161E-08

x
4 4,05 4,1 4,15 4,2 4,25 4,3 4,35 4,4 4,45 4,5 4,55 4,6 4,65 4,7 4,75 4,8 4,85 4,9 4,95 5 5,05 5,1 5,15 5,2 5,25 5,3 5,35 5,4 5,45 5,5 5,55 5,6 5,65 5,7 5,75 5,8 5,85 5,9 5,95

1/2 erfc(x)
7,709E-09 5,094E-09 3,350E-09 2,192E-09 1,428E-09 9,253E-10 5,967E-10 3,830E-10 2,446E-10 1,554E-10 9,831E-11 6,187E-11 3,875E-11 2,415E-11 1,498E-11 9,243E-12 5,676E-12 3,469E-12 2,109E-12 1,277E-12 7,687E-13 4,606E-13 2,747E-13 1,630E-13 9,626E-14 5,657E-14 3,308E-14 1,926E-14 1,116E-14 6,439E-15 3,664E-15 2,109E-15 1,166E-15 6,661E-16 3,886E-16 2,220E-16 1,110E-16 5,551E-17 5,551E-17 0,000E+00

92

Comunicação de Dados

Carlos Meneses

93

Exercícios propostos 1. Suponha uma transmissão binária em PNRZ com um débito binário de 2400 bit/s, em que o sinal transmitido no canal tem uma amplitude de 1 Volt.

a) Calcule o valor mínimo da largura de banda e a potência do sinal transmitido. b) Desenhe o receptor com filtro adaptado em que a correlação é efectuada com um sinal com amplitude de 10 Volts. c) Calcule as tensões sem ruído, à saída do filtro adaptado, no instante de amostragem. d) Suponha que o sinal é corrompido com ruído branco, gaussiano e aditivo, com função densidade espectral de potência de 10 µW/Hz. Calcule a potência do ruído após o filtro adaptado. e) Calcule a probabilidade de erro de bit.

2. Suponha uma transmissão binária num canal com uma largura de banda de 3300 Hz (banda telefónica). O canal é AWGN com ruído de 1 mWatt/Hz. O código de linha usado é o split-phase, mas as amplitudes transmitidas são 2 volts para o símbolo “0” e 3 volts para o símbolo “1”.

a) Determine o máximo valor do débito binário se o filtro de formatagem tiver um factor de rolloff de 0,5. b) Desenhe o diagrama de blocos de um receptor óptimo ao símbolo “1”, normalizado (Assuma Rb da alínea anterior). c) Calcule as tensões correspondentes aos dois símbolos lógicos após o filtro de correlação. d) Calcule o BER desta transmissão. e) De quanto em quanto tempo, em média, é cometido um erro de bit?

94

Codificação de Forma de Onda

Carlos Meneses

3. Suponha uma transmissão digital binária URZ, com débito binário de 24 kbit/s. A amplitude do símbolo lógico “1” é de 2 Volt. O canal é AWGN com função densidade espectral de potência de 1µW/Hz.

a) Desenhe o esquema de blocos do receptor normalizado. b) Calcule as tensões sem ruído, à saída do filtro adaptado, correspondentes a cada símbolo lógico, bem como a potência do ruído. c) Calcule o BER.
4. Suponha 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 formatagem tem um factor de rolloff de 0,2. O sinal transmitido é polar, sendo a diferença entre símbolos adjacentes de 1 V. O canal é do tipo AWGN, com função densidade espectral de potência de 10-6 Watt/Hz.

a) Calcule o débito de símbolos. b) Desenhe o receptor óptimo com filtro adaptado normalizado. c) Calcule a potência do ruído à saída do filtro. d) Calcule as tensões de referência para distinguir as diversas hipóteses.
5. Suponha uma modulação PSK binária com um débito binário de 2400 bit/s, em que a portadora tem uma amplitude de 1 Volt. Calcule:

a) O valor mínimo e máximo da largura de banda e a potência do sinal transmitido. b) Desenhe o receptor com filtro de correlação em que a correlação é efectuada com um sinal com amplitude de 10 Volts (Assuma Rb mínimo). c) Calcule as tensões sem ruído, à saída do filtro adaptado, no instante de amostragem. d) Suponha que o sinal é corrompido com ruído branco, gaussiano e aditivo, com função densidade espectral de potência de 10 µW/Hz. Calcule a potência do ruído após o filtro de correlação. e) Calcule a probabilidade de erro de bit. f) Qual o débito binário que permite obter um BER de 7,709x10-9?

95

6. Suponha uma transmissão ASK, em que as amplitudes são respectivamente de 3 V para o símbolo “0” e 5 V para o símbolo “1”. O factor de rolloff é de 0,2. O canal de transmissão é AWGN com banda entre os 10 kHz e os 20 kHz e com uma densidade espectral de potência do ruído de 10-6 Watt/Hz.

a) Calcule a frequência da portadora e o débito binário máximo. b) Calcule a potência transmitida. c) Esboce o receptor óptimo normalizado para este sinal. d) Calcule o BER.

7. Suponha uma transmissão binária com os símbolos:

E em que o canal tem uma função densidade espectral de potência Gw(f)=N0/2 Watt/Hz. a) Qual a energia de bit (função da amplitude e duração dos símbolos)? b) Desenhe o receptor óptimo ao símbolo “1”. c) Calcule as tensões y1 e y0, correspondentes respectivamente ao símbolo “1” e “0” sem ruído, no momento de amostragem (função da energia de bit). d) Qual o valor do BER (função da energia de bit e da densidade espectral de potência do ruído)? e) Se o símbolo “0” fosse representado por S0(t)=0 Volts (unipolar), o BER seria alterado? Ganharia alguma coisa com esta mudança?

96

Codificação de Forma de Onda

Carlos Meneses

8. Suponha uma transmissão digital em PSK, em que o sinal de entrada tem uma amplitude de 2 Volts e um débito binário de 256 kbit/s.

a) Calcule a largura de banda e a potência do sinal transmitido. b) Para um receptor óptimo normalizado, calcule as tensões correspondentes aos dois símbolos, na ausência de ruído. c) Desenhe o diagrama de blocos do receptor óptimo normalizado.
9. Suponha uma transmissão digital binária, com um débito binário de 300 bit/s, em que os símbolos são representados em FSK, pelas frequências 1200 Hz e 2400 Hz, respectivamente para o símbolo lógico “0” e “1”. O factor de rolloff do filtro de formatagem é de 0,5, sendo a potência transmitida de 12,5 Watt. O canal é do tipo AWGN, com função densidade espectral de potência de 8x10-3 Watt/Hz.

a) Calcule a largura de banda do sinal transmitido. Qual a banda ocupada? b) Desenhe o esquema de blocos do receptor, assumindo que as correlações são efectuadas com um sinal de amplitude 1 volt. c) Qual o valor das tensões sem ruído correspondentes a cada nível lógico, à entrada do bloco de decisão? d) Qual a potência do ruído à entrada do bloco de decisão? e) Calcule a probabilidade de erro de bit.
10. Suponha uma modulação PSK binária com um débito binário de 2400 bit/s, em que a portadora tem uma amplitude de 1 Volt. Calcule:

a) O valor mínimo e máximo da largura de banda e a potência do sinal transmitido. b) Desenhe o receptor com filtro adaptado em que a correlação é efectuada com um sinal de amplitude 10 Volts (Assuma Rb mínimo). c) Calcule as tensões sem ruído à saída do filtro adaptado, no instante de amostragem. d) Suponha um canal AWGN com função densidade espectral de potência de 10 µW/Hz. Qual a potência do ruído após o filtro adaptado?. e) Calcule a probabilidade de erro de bit. f) Qual o débito binário que permite obter um BER de 7,709x10-9?

97

11. Suponha 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 formatagem tem um factor de rolloff de 0,2. O sinal transmitido é polar, sendo a diferença entre símbolos adjacentes de 1 V. O canal é do tipo AWGN, com função densidade espectral de potência de 10-6 Watt/Hz.

a) b) c)

Calcule o débito de símbolos. Desenhe o receptor óptimo normalizado. Calcule a potência do ruído à saída do filtro adaptado.

12. Numa transmissão digital com um BER de 10-6.

a) Num código de repetição de 7, qual a probabilidade de errar 5 ou mais bits da repetição? b) Suponha a sequência de bits de dados 0-1-0-1 (m7-m6-m5-m3). Qual o resultado da aplicação desta sequência a um código de correcção

H(7,4)?
c) Suponha que, durante a transmissão da alínea anterior, erra o bit m6 e p4. Quais os bits descodificados?
13. Assuma uma transmissão com um débito binário de 40 kbit/s e com um BER de 10-5.

a) Calcule, em média, de quanto em quanto tempo é cometido um erro. b) Se esta transmissão passar a ser protegida com um código de canal Hamming H(7,4), qual o débito binário necessário? c) Nas condições da alínea anterior, de quanto em quanto tempo é cometido um erro? Compare com o valor obtido em a). d) Se for transmitida a sequência de bits (m7-m6-m5-m3) 1-0-1-0, qual a sequência de bits transmitida após aplicação do código H(7,4)? e) Se for recebida a sequência de bits (m7-m6-m5-p4-m3-p2-p1) 1-1-1-0-1-0-1, qual a sequência de bits de dados após correcção?

98

Codificação de Forma de Onda

Carlos Meneses

14. Uma transmissão digital em PRZ, protegida através de um código Hamming H(7,4), tem em média 1 erro em cada 387 bit.

a) Calcule a probabilidade de erro após correcção. b) Calcule a relação Eb/No. c) Se receber a sequência 1-0-1-1-0-1-1 (m7-m6-m5-p4-m3-p2-p1), qual a sequência após correcção?
15. Uma transmissão digital em PRZ com um débito de 24 kbit/s, protegida através de um código de repetição de 3 bits, tem em média 1 erro em cada 1000 s.

a) Qual o débito binário se não fosse utilizada correcção? b) Calcule a probabilidade de erro após correcção. c) Calcule a relação Eb/No. d) 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 correcção? e) Se receber a sequência 1-0-1-1-1-1, qual a sequência após correcção?

99

Pergunta teóricas

16. Que atributos deve ter em conta num código de linha? 17. Compare os atributos dos códigos PRZ e PNRZ. 18. Quais os efeitos do canal de transmissão que contribuem para os erros de bit? 19. Que efeito se quer evitar com um filtro de formatagem? Como é conseguido? 20. Explique o objectivo do filtro adaptado de recepção. 21. Explique o funcionamento do filtro adaptado de recepção. 22. Em que limites se situa a probabilidade de erro de bit? 23. Qual as vantagens e desvantagens de uma transmissão binária em relação a uma transmissão M-área? 24. Qual a vantagem e desvantagens da introdução de códigos de canal numa transmissão digital? 25. Diga se são verdadeiras ou falsas, justificando, as seguintes afirmações: a) O aumento do débito de símbolos faz diminuir o BER; b) A medida de qualidade de um sistema de transmissão digital é a SNR; c) O filtro adaptado de recepção é implementado através de um produto interno entre o sinal recebido e uma réplica (a menos de um factor 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 transmitida; 2) mantendo a “distância” entre símbolos)

101

_____________________________________ Bibliografia _____________________________________
[Carlson (86)] A. B. Carlson,

“Communication

Systems”,

McGrawHill, 1986. [Haykin (01)] - S. Haykin, “Communication Systems”, Wiley, 2001. [LoCicero (97)] – J. L. LoCicero, B. P. Patel, Chapter 6 of Mobile Communication Handbook (J. D. Gibson) – “Line Coding”, Chapman & Hall/CRCnetBASE, 1999. [Halsall (90)] - F. Halsall – “Data Communication, Computer Networks and Open Systems”, Addison-Wesley, 1992. [Schwartz (90)] - M. Schwartz – “Information Transmission Modulation and Noise”, 4˚ Edition - Mc Graw Hill, 1990.

103

________________________________________ Glossário de Acrónimos ________________________________________
2B1Q – 2 binary 1 quaternary ARQ – Automatic repeat request ASCII - American Standards Committee for Information Interchange AWGN - additive white Gaussian noise B-ASK - Binary Amplitude Shift Key BCC – Block (sum) check character BER - Bit error rate bit - binary digit BNZS – Bipolar with N Zero Substitution BPF – band-pass filter B-PSK - Binary Phase Shift Key CRC – Cyclic redundancy check DPSK - diferencial em PSK FEC - Forward error correction FSK - Frequency Shift Key ISI – Inter-symbolic Interference ISO - International Organization for Standardization MAP – Maximum a posteriori ML – Maximum Likelihood NRZ – no return to zero OOK - On-Off Key OSI - Open System Interconnection PAM - Pulse Amplitude Modulation

104

Codificação de Forma de Onda

Carlos Meneses

QAM - Quadrature Amplitude Modulation RDIS - Rede Digital Integrada de Serviços RZ – return to zero S&H - Sampling & Hold SNR - Signal to Noise Ratio

You're Reading a Free Preview

Descarregar
scribd
/*********** DO NOT ALTER ANYTHING BELOW THIS LINE ! ************/ var s_code=s.t();if(s_code)document.write(s_code)//-->