[Elaborazione Numerica Dei Segnali] Quantizzatore e Codifica

Lionel2
Salve a tutti,

devo capire come funzionano alcuni tipo di codifiche. Sugli appunti ho trovato un esempio in cui si dice:

"...andiamo alla codifica ed esaminiamone alcune considerando il massimo valore di fondoscala pari a 10V e con 12 bit di risoluzione...

La prima codifica che viene analizzata è CODICE BINARIO UNIPOLARE, tale codifica accetta in ingresso solo segnali maggiori di 0. In questo caso il codice di uscita è dato da:

$V_(out)=\sum_{N=1}^\N (a_(n)/2^N)$

Poi scrive questa cosa:

$V_(MAX) =$ $111$ $111$ $111$ $111$ $111$ (Questi valori come li prende? E da dove? Assegna 1 quando il valore e positivo e 0 quando è negativo su quello che può essere il grafico dell'errore di quantizzazione?)
$V_(MIN) =$ $000$ $000$ $000$ $000$ $000$

da qui si ricava

$LSB = V_(MAX)/2^N = 10 / 2^12 = 2.4 mV$ se ho capito questo è il campione che perdo quando vado a codificare e quindi ricostruire il segnale? Cioè non avrò più 10V ma 10V - 0.0024V = 9.9976?"

"Seconda codifica, CODICE COMPLEMENTO A 2, accetta sia valori positivi che negativi,

$V_(MAX) =$ $011$ $111$ $111$ $111$ $111$ Perché il primo bit risulta 0?E perché prende un valore medio?
$V_(MEDIO) =$ $000$ $000$ $000$ $000$
$V_(MIN) =$ $100$ $000$ $000$ $000$ $000$

GRAZIE MILLE.

Risposte
elgiovo
La prima codifica è una banale conversione binaria dei numeri. Ad esempio, 2 diventa 000 000 000 010. E' ovvio che il minimo numero rappresentabile è 0, il cui codice è 000 000 000 000, e il massimo sarà 111 111 111 111. E' esattamente come in base 10: con due bit di informazione, qual è il massimo numero che puoi rappresentare? Sarà 99.
Per quanto riguarda l'LSB, hai sbagliato l'interpretazione. Per avere 12 bit su 10V devi essere in grado di distinguere una tensione minima pari all'LSB, che si calcola come hai mostrato tu. Quindi il tuo convertitore analogico - digitale dovrà avere una sensibilità almeno pari a 2.4mV. Prova a ragionare con numeri più piccoli: se vuoi avere 3 bit di informazione, avrai 2^3=8 possibili valori, e dovrai suddividere la tua scala di tensione in 8 livelli, a ciascuno dei quali corrisponderà un valore.
Per quanto riguarda la seconda codifica, non sto a spiegartela, perché basta che ti leggi come funziona in internet, su wikipedia cerca "2's complement", "complemento a 2" o qualcosa di simile. Ti dico solo che il primo bit rappresenta il segno, quindi se inizi con 0 hai un numero positivo, se inizi con 1 è un numero negativo.

Rispondi
Per rispondere a questa discussione devi prima effettuare il login.