Índice
 
QUANTIZAÇÃO E CODIFICAÇÃO
 
Agora que temos o sinal analógico amostrado, em forma de amostras ou pulsos PAM, ainda analógicos, precisamos quantificar (ou quantizar) esta infinidade de valores possíveis em outros que passam ser representados por uma quantidade finita de bits, para obter um sinal digital.
Esta conversão é feito por um circuito chamado conversor analógico-digital A/D ou ADC.

Cada amostra ou pulso PAM é transformada em uma quantidade predefinida de n bits.
Por exemplo, com n = 8 bits é possível representar 256 valores diferentes (0 a 255).
Para facilitar, vamos supor que os pulsos PAM são limitados entre 0 e 255 Volts.
Um pulso qualquer pode ter como valor real 147,39 V, mas terá de ser quantizado como tendo 147 V ou 148 V, pois não é possível representar 147,39 com 8 bits. O valor quantizado (para mais ou para menos) depende dos valores dos níveis de decisão no projeto do ADC.
Teremos então um erro, no caso de -0,39 V ou +0,61 V respectivamente, chamado erro de quantização. Esta falta ou excesso no valor do sinal provoca o surgimento de um sinal aleatório, chamado ruído de quantização. Se prova matematicamente que a máxima relação sinal/ruído de quantização possível é da ordem de:  S/N max = 6n , onde n é o numero de bits.
Por ex.  8 bits : S/N de quantização max = 48 dB
            16 bits : S/N de quantização max = 96 dB
Esta relação só é atingida para um sinal de valor máximo Vmax. Se o sinal V for menor, por ex. 1/10 do máximo, a relação S/N será 100 vezes pior ou 20 dB menor, e assim por diante.
S/N de quantização = 1,76 + 6,02 n - 20 log ( Vmax / V )
A figura seguinte mostra o aspecto do erro ou ruído de quantização para um sinal senoidal :

Para contornar este novo problema, que faz com que sinais fracos tenham baixa S/N, usam-se quantizações não lineares, onde os níveis de quantização não são iguais como na figura acima, mas são muito pequenos para sinais pequenos e maiores para sinais maiores, provocando o efeito de compressão. Por ex., em telefonia digital é usada quantização logarítmica, conhecidas com lei  A  no padrão ITU ou a lei  Mu  no padrão americano, o que piora um pouco a máxima S/N atingível, mas em compensação melhora muito a S/N para sinais fracos.
Existem outras formas para se conseguir uma S/N de quantização boa para sinais fracos.

Como quantizar valores de tensão negativos ? Também existem varias formas.
O exemplo seguinte mostra o caso para arquivos digitais de sons no formato *.WAV com 8 bits :

O eixo vertical da figura é graduado no valor das amostras quantizadas com 8 bits : 0 a 255.
O eixo de tensão, 0 Volts, é deslocado (off-set) para 128. Podemos assim representar valores negativos de -1 até -128  com  127 até 0 respectivamente, sem necessidade de sinal.
A forma de onda quantizada acima, no formato decimal é :

118,135,130,138,151,165,179,179,182,195,179,144,109,78,51,37,39,62,97,123.

O que representa os seguintes valores quantizados de tensão (em V), supondo deltaVmax=255 V.

-10,+7,+2,+10,+23,+37,+51,+51,+54,+67,+51,+16,-19,-50,-77,-91,-89,-66,-31,-5 .

 

Codificação :

Os valores quantizados precisam ser codificados em seqüências de bits, pois um sinal digital binário só pode ter dois valores diferentes "0" ou "1". Em binário puro, a codificação seria como mostra a figura acima, que é um exemplo de um sinal digital  PCM (Pulse Code Modulation), onde cada pulso PAM de amplitude variável é transformado em uma seqüência de bits com amplitude fixa e valores 0 ou 1, com um código tal que representa o valor do pulso PAM original, arredondado pelo erro de quantização.

PCM significa modulação de pulsos por código, pois agora os pulsos são os bits 0 ou 1, com amplitude fixa (ao contrario de PAM), posição fixa determinada pelo relógio (ao contrário de PPM), duração ou largura fixa (ao contrário de PWM). O que é modulado agora é a combinação dos bits 0 e 1, usando um código pre-estabelecido, que pode ser por exemplo binário puro com ou sem off-set, sinal-magnitude, sinal-complemento de 2, etc...O código depende de uma serie de fatores como por exemplo como o sinal digital vai ser transmitido, ou armazenado.

PPM (Pulse Position Modulation) e PWM (Pulse Width Modulation) são formas analógicas de transformar a amplitude do pulso PAM em sinais de amplitude sempre fixa. Em PPM o valor do nível modula analogicamente a posição relativa do pulso (de duração fixa) em relação ao relógio (referencia de tempo). Em PWM o valor do nível modula analógicamente a duração de um pulso cuja posição é fixa em relação ao relógio em PWM.

Em PCM para telefonia, se usa uma notação com sinal-magnitude com 8 bits. O eixo de tensão não é deslocado como no exemplo anterior. São quantizados 127 valores positivos e 127 valores negativos, ou magnitude do sinal, com 7 bits. O oitavo bit (o mais significativo) indica o sinal , 1 = positivo e 0 = negativo. Por ex. 11111111=FFh representa +127 e 01111111=7Fh= -127. Em telefonia, ainda ocorrem outras codificações, como inversão de todos os bits da magnitude (lei Mu), ou inversão dos bits pares da magnitude (lei A). A tabela seguinte ilustra estas duas formas de codificação PCM para telefonia a 64 k bits por segundo (estas codificações permitem evitar longas seqüências de bits zero na ausência de sinal, para facilitar a extração do sinal de sincronismo ou relógio, na recepção) :

 
Valor decimal Sinal-magnitude Lei Mu lei A
+127  11111111 10000000 10101010
+96  11100000 10011111 10110101
+64  11000000 10111111 10010101
+32  10100000 11011111 11110101
+0  10000000 11111111 11010101
-0  00000000 01111111 01010101
-32 00100000 01011111 01110101
-64 01000000 00111111 00010101
-96 01100000 00011111 00110101
-126 01111110 00000001 00101011
-127 01111111 00000000 00101010
 

A figura seguinte mostra o conteudo hexadecimal e ascii de um pequeno arquivo *.wav :

Observe o cabeçalho padrão de 44 bytes, que contem uma serie de informações, como formato, quantidade de amostras, etc... Após o cabeçalho, estão as amostras quantizadas, byte a byte (porque o formato é PCM de 8 bits) : por ex., a primeira vale 80h=128. Como se trata de um arquivo no formato PCM de 8 bits, 128 eqüivale a um nível de tensão do sinal igual a zero (off-set de 128).

Um arquivo de som digital PCM no formato *.WAV de 16 bits usa codificação em sinal-complemento de 2.
Valores positivos são codificados de 0000h=0 até 7FFFh=+32767 e valores negativos são codificados de FFFFh=-1 até 8001h=-32767. O zero é codificado 0000H=0.
A figura seguinte representa esta codificação (eixo vertical):

 

A figura seguinte representa a parte inicial de um arquivo *.WAV de 16 bits :

Observe que agora cada amostra ocupa dois bytes, e é usada a notação sinal-complemento de 2, onde o bit mais significativo representa o sinal : 0 = positivo e 1 = negativo. A magnitude de um número negativo é obtida invertendo-se os bits todos e somando-se 1.

  Índice