Salta al contenuto
Note per Studenti Esercizio 3 · PSD con righe, filtro passa-basso e due quantizzatori per un segnale esponenziale (tema d'esame febbraio 2025)

Esercizio 3PSD con righe, filtro passa-basso e due quantizzatori per un segnale esponenziale (tema d'esame febbraio 2025)

Esame
In questa pagina 5

Testo (tema d'esame febbraio 2025, esercizio 1). Un segnale è descritto da un processo aleatorio stazionario con densità spettrale di potenza P(f)=A1Brect⁡(f2B)+A2 δ(f)+A3 δ(f−B),B=20 kHz, A1=2 V2, A2=A3=0,5 V2\mathcal P(f)=\frac{A_1}B\operatorname{rect}\left(\frac f{2B}\right)+A_2\,\delta(f)+A_3\,\delta(f-B),\qquad B=20\ \text{kHz},\ A_1=2\ \text{V}^2,\ A_2=A_3=0{,}5\ \text{V}^2 (nel testo il fattore del primo termine è illeggibile: si assume A1B\frac{A_1}B, coerente con le unità V²/Hz). Il segnale è filtrato con un passa-basso ideale G(f)=G0rect⁡(2fB)G(f)=G_0\operatorname{rect}\left(\frac{2f}B\right); in uscita c'è un'impedenza puramente resistiva R=10 ΩR=10\ \Omega. Dopo il filtro il segnale ha densità esponenziale p(x)=λe−λxu(x)p(x)=\lambda e^{-\lambda x}u(x) con varianza σ2=1λ2=2 V2\sigma^2=\frac1{\lambda^2}=2\ \text{V}^2.

  1. (2p) Si calcoli la potenza statistica in ingresso al filtro.
  2. (3p) Si valuti il guadagno in ampiezza G0G_0 del filtro che garantisce una potenza elettrica in uscita di 600600 mW. Quanto vale il guadagno in potenza (in dB)?
  3. (3p) Per quantizzare il segnale in uscita si hanno a disposizione due quantizzatori uniformi: (a) range dinamico [−vsat,1,vsat,1][-v_{sat,1},v_{sat,1}] con vsat,1=7v_{sat,1}=7 V e L=8L=8 livelli; (b) range [0,vsat,2][0,v_{sat,2}] con vsat,2=5v_{sat,2}=5 V e L=6L=6 livelli. Si calcoli la probabilità di saturazione nei due casi. Quale quantizzatore sceglieresti? Giustifica.
  4. (3p) Si utilizza un diverso quantizzatore che permette di ottenere L=6L=6 e p1=0,35p_1=0{,}35, p2=0,31p_2=0{,}31, p3=0,09p_3=0{,}09, p4=0,08p_4=0{,}08 e p5=0,06p_5=0{,}06 con un periodo di simbolo in uscita T=1T=1 ms. Quanto vale il bitrate in uscita se si utilizza un codice binario a lunghezza fissa? È possibile progettare una codifica migliore? Se sì, se ne calcoli il bitrate.

Teoria usata: Processi aleatori stazionari e densità spettrale di potenzaUn processo aleatorio è un segnale i cui valori a ogni istante sono variabili aleatorie. Se è stazionario in senso lato (WSS) la media è costante e l'autocorrelazione $r_x(\tau)$ dipende solo dalla differenza dei tempi; la sua trasformata è la densità spettrale di potenza $\mathcal P_x(f)$, il cui integrale è la potenza statistica $r_x(0)$. Un filtro LTI dà $m_y=m_xH(0)$ e $\mathcal P_y=\mathcal P_x\lvert H\rvert^2$; se l'ingresso è gaussiano anche l'uscita lo è. Il rumore bianco ha $\mathcal P(f)=\frac{N_0}2$.Processi aleatori stazionari e densità spettrale di potenza →, Bipoli, doppi bipoli e adattamento di impedenzaUn generatore con impedenza $Z_S$ che alimenta un carico $Z_L$ trasferisce la massima potenza se $Z_L=Z_S^$ (adattamento): la densità di potenza elettrica è $p_L(f)=\mathcal P_{v}(f)\frac{R_L}{\lvert Z_L+Z_S\rvert^2}$ e vale $\frac{\mathcal P_v}{4R_S}$ nel caso adattato. Il rumore termico di una resistenza ha $\mathcal P_w(f)=2kTR_S$ e, adattato, trasferisce $\frac12kT$ W/Hz. Un doppio bipolo (quadripolo) è adattato se $Z_1=Z_S^$ e $Z_L=Z_2^*$; il guadagno in potenza $g=\frac{P_{out}}{P_{in}}$ coincide con $\lvert G_{ch}\rvert^2$ e in dB è il doppio del guadagno in ampiezza.Bipoli, doppi bipoli e adattamento di impedenza →, Quantizzatore uniforme - livelli, mid-riser ed erroriUn quantizzatore mappa i campioni reali su $L=2^b$ livelli. Quello uniforme (PCM) sceglie un range dinamico $[-V_{sat},V_{sat}]$ e un passo $\Delta=\frac{2V_{sat}}L$; nel tipo mid-riser i livelli sono $\pm\frac\Delta2,\pm\frac{3\Delta}2,\dots$ e non c'è lo zero. L'errore $e_q=a_q-a$ ha una parte granulare (in $[-\frac\Delta2,\frac\Delta2]$, circa uniforme, potenza $\frac{\Delta^2}{12}$) e una di saturazione (fuori range). Per renderlo piccolo servono $P_{sat}$ piccola e $L$ grande.Quantizzatore uniforme - livelli, mid-riser ed errori →, SNR di quantizzazione e progetto del quantizzatoreL'SNR di quantizzazione è $\Lambda_q=\frac{M_a}{M_e}$. Con errore granulare uniforme e saturazione trascurabile vale $\Lambda_q=\frac{\sigma^2}{\Delta^2/12}=3\frac{\sigma^2}{V_{sat}^2},2^{2b}$, cioè $[\Lambda_q]{dB}=6{,}02,b+4{,}77+20\log{10}\frac\sigma{V_{sat}}$: ogni bit in più dà $+6$ dB. Per progettare: $V_{sat}$ dalla probabilità di saturazione ($V_{sat}=\sigma,Q^{-1}\left(\frac{P_{sat}}2\right)$ per un gaussiano), poi $b$ dall'SNR richiesto, arrotondando per eccesso.SNR di quantizzazione e progetto del quantizzatore →, Codici di Shannon-Fano e di HuffmanIn un codice ottimo le parole più probabili non sono più lunghe di quelle meno probabili e le due parole più lunghe differiscono solo per l'ultimo simbolo. Shannon-Fano costruisce l'albero dall'alto dividendo ripetutamente i simboli in due gruppi di probabilità quasi uguali; Huffman lo costruisce dal basso unendo ogni volta i due simboli meno probabili ed è sempre ottimo tra i codici a prefisso. La lunghezza media $L_y$ è la somma delle probabilità dei nodi uniti, l'efficienza è $\eta=\frac{H}{L_y}$.Codici di Shannon-Fano e di Huffman →.

(1) Potenza statistica in ingresso

La potenza statistica è l'integrale della PSD, Mx=∫P(f) dfM_x=\int\mathcal P(f)\,df. Il termine rettangolare vale A1B\frac{A_1}B su [−B,B][-B,B] (larghezza 2B2B); le due righe δ\delta contribuiscono con la loro area: Mx=A1B⋅2B+A2+A3=2A1+A2+A3=4+0,5+0,5=5 V2.M_x=\frac{A_1}B\cdot2B+A_2+A_3=2A_1+A_2+A_3=4+0{,}5+0{,}5=5\ \text{V}^2.

(2) Guadagno del filtro

Il filtro G0rect⁡(2fB)G_0\operatorname{rect}\left(\frac{2f}B\right) lascia passare ∣f∣<B4=5\lvert f\rvert<\frac B4=5 kHz. Nell'uscita sopravvivono quindi il tratto rettangolare con ∣f∣<B4\lvert f\rvert<\frac B4 e la riga in 00; la riga in f=Bf=B è tagliata. Con Py=P ∣G∣2\mathcal P_y=\mathcal P\,\lvert G\rvert^2: My=G02[A1B⋅2⋅B4+A2]=G02[A12+A2]=G02 (1+0,5)=1,5 G02 V2.M_y=G_0^2\left[\frac{A_1}B\cdot2\cdot\frac B4+A_2\right]=G_0^2\left[\frac{A_1}2+A_2\right]=G_0^2\,(1+0{,}5)=1{,}5\,G_0^2\ \text{V}^2. La potenza elettrica su una resistenza è P=MyRP=\frac{M_y}R: per P=0,6P=0{,}6 W su R=10 ΩR=10\ \Omega serve My=P R=6 V2M_y=P\,R=6\ \text{V}^2, da cui G02=61,5=4 ⟹ G0=2 (guadagno in ampiezza, 6,02 dB come 20log⁡102).G_0^2=\frac6{1{,}5}=4\ \Longrightarrow\ G_0=2\ (\text{guadagno in ampiezza},\ 6{,}02\ \text{dB come }20\log_{10}2). Il guadagno in potenza è G02=4G_0^2=4, cioè 10log⁡104=6,0210\log_{10}4=6{,}02 dB.

(Nota: la densità esponenziale con σ2=2\sigma^2=2 V² ha media 2\sqrt2 e potenza M=σ2+m2=4 V2M=\sigma^2+m^2=4\ \text{V}^2, che non coincide con i 66 V² ottenuti dalla PSD: il testo, trascritto da una foto, è incoerente su questo punto. Per i punti successivi serve solo la densità esponenziale con λ=12\lambda=\frac1{\sqrt2} V⁻¹.)

(3) Scelta del quantizzatore per il segnale esponenziale

Con λ=12 V−1=0,7071 V−1\lambda=\frac1{\sqrt{2}}\ \text{V}^{-1}=0{,}7071\ \text{V}^{-1}. La densità è nulla per x<0x<0: il segnale è solo positivo, e P[x>v]=e−λvP[x>v]=e^{-\lambda v}.

(a) [−7,7][-7,7] V, L=8L=8: Δ=148=1,75\Delta=\frac{14}8=1{,}75 V; Psat,a=P[x>7]=e−0,7071⋅7=e−4,95=7,1⋅10−3P_{sat,a}=P[x>7]=e^{-0{,}7071\cdot7}=e^{-4{,}95}=7{,}1\cdot10^{-3} (nessuna saturazione sul lato negativo). I 44 livelli con x<0x<0 (a −6,125,−4,375,−2,625,−0,875-6{,}125,-4{,}375,-2{,}625,-0{,}875 V) non vengono mai usati: restano 44 livelli utili tra 00 e 77 V.

(b) [0,5][0,5] V, L=6L=6: Δ=56=0,833\Delta=\frac56=0{,}833 V; Psat,b=e−0,7071⋅5=e−3,54=2,9⋅10−2P_{sat,b}=e^{-0{,}7071\cdot5}=e^{-3{,}54}=2{,}9\cdot10^{-2}. Tutti i 66 livelli (0,417, 1,25, 2,083, 2,917, 3,75, 4,5830{,}417,\ 1{,}25,\ 2{,}083,\ 2{,}917,\ 3{,}75,\ 4{,}583 V) sono sul semiasse utile.

Confronto. Il quantizzatore (a) ha la probabilità di saturazione più bassa (0,71%0{,}71\% contro 2,9%2{,}9\%) ma ha il passo più grosso (1,751{,}75 V contro 0,8330{,}833 V): il suo errore granulare Δ212\frac{\Delta^2}{12} è 0,2550{,}255 V², contro 0,05790{,}0579 V² di (b). Per decidere conviene confrontare la potenza totale dell'errore (granulare più saturazione, calcolata integrando numericamente con la densità esponenziale) e l'SNR sul segnale di potenza Mx=2λ2=4M_x=\frac2{\lambda^2}=4 V²:

PsatP_{sat} Δ\Delta potenza errore totale Λq\Lambda_q
(a) [−7,7][-7,7], L=8L=8 0,71%0{,}71\% 1,751{,}75 V 0,3170{,}317 V² 11,011{,}0 dB
(b) [0,5][0,5], L=6L=6 2,9%2{,}9\% 0,8330{,}833 V 0,2130{,}213 V² 12,712{,}7 dB

In (b) l'errore è per più di metà dovuto alla saturazione (0,1560{,}156 V² su 0,2130{,}213), ma resta più piccolo che in (a) perché (a) spreca la metà dei livelli. Scelta: il quantizzatore (b), che usa tutta la dinamica sul semiasse utile e ha l'SNR più alto (12,712{,}7 contro 11,011{,}0 dB). Se invece la specifica fosse "Psat≤1%P_{sat}\le1\%" solo (a) la rispetterebbe: il progetto migliore sarebbe un range [0,Vsat][0,V_{sat}] più largo (per esempio [0,7][0,7] V con tutti gli 88 livelli: Δ=0,875\Delta=0{,}875 V e Psat=0,7%P_{sat}=0{,}7\%).

(4) Bit-rate con codice a lunghezza fissa e con Huffman

Le probabilità date sommano 0,890{,}89: la sesta è p6=1−0,89=0,11p_6=1-0{,}89=0{,}11. Con L=6L=6 livelli un codice a lunghezza fissa usa ⌈log⁡26⌉=3\lceil\log_26\rceil=3 bit per simbolo; con un simbolo ogni T=1T=1 ms il bit-rate è Rfisso=3 bit1 ms=3 kbit/s.R_{fisso}=\frac{3\ \text{bit}}{1\ \text{ms}}=3\ \text{kbit/s}. L'entropia è H=2,252H=2{,}252 bit: l'efficienza del codice fisso è 2,2523=0,75\frac{2{,}252}3=0{,}75, quindi si può fare meglio con un codice a lunghezza variabile (Codici di Shannon-Fano e di HuffmanIn un codice ottimo le parole più probabili non sono più lunghe di quelle meno probabili e le due parole più lunghe differiscono solo per l'ultimo simbolo. Shannon-Fano costruisce l'albero dall'alto dividendo ripetutamente i simboli in due gruppi di probabilità quasi uguali; Huffman lo costruisce dal basso unendo ogni volta i due simboli meno probabili ed è sempre ottimo tra i codici a prefisso. La lunghezza media $L_y$ è la somma delle probabilità dei nodi uniti, l'efficienza è $\eta=\frac{H}{L_y}$.Codici di Shannon-Fano e di Huffman →). Unioni di Huffman: 0,08+0,06=0,140{,}08+0{,}06=0{,}14, 0,11+0,09=0,200{,}11+0{,}09=0{,}20, 0,20+0,14=0,340{,}20+0{,}14=0{,}34, 0,34+0,31=0,650{,}34+0{,}31=0{,}65, 0,65+0,35=10{,}65+0{,}35=1. Lunghezze: 11 bit per p1=0,35p_1=0{,}35, 22 bit per p2=0,31p_2=0{,}31, 44 bit per gli altri quattro (per esempio 0, 10, 1110, 1111, 1100, 11010,\ 10,\ 1110,\ 1111,\ 1100,\ 1101). Lunghezza media (e somma dei nodi interni 0,14+0,20+0,34+0,65+10{,}14+0{,}20+0{,}34+0{,}65+1): Ly=0,35⋅1+0,31⋅2+(0,11+0,09+0,08+0,06)⋅4=2,33 bit ⟹ RHuffman=2,33 kbit/s,η=2,2522,33=0,97,L_y=0{,}35\cdot1+0{,}31\cdot2+(0{,}11+0{,}09+0{,}08+0{,}06)\cdot4=2{,}33\ \text{bit}\ \Longrightarrow\ R_{Huffman}=2{,}33\ \text{kbit/s},\quad\eta=\frac{2{,}252}{2{,}33}=0{,}97, il 22%22\% in meno del codice fisso, e molto vicino al rate di informazione H/T=2,252H/T=2{,}252 kbit/s.

(Calcoli verificati: PsatP_{sat} da e−λve^{-\lambda v}; potenze d'errore da integrazione numerica ∫(x−Q(x))2p(x) dx\int(x-Q(x))^2p(x)\,dx.)

Errori comuni

  • Dimenticare che P(f)\mathcal P(f) ha righe δ\delta: l'area di una riga è la potenza della componente.
  • Non tagliare con il filtro le righe fuori banda (qui δ(f−B)\delta(f-B)) o contare l'intera banda del rettangolo invece di B2\frac B2 (la rect⁡(2fB)\operatorname{rect}\left(\frac{2f}B\right) è larga B2\frac B2 in totale).
  • Confondere guadagno in ampiezza G0G_0 e in potenza G02G_0^2 (dB: 20log⁡10G0=10log⁡10G0220\log_{10}G_0=10\log_{10}G_0^2).
  • Scegliere il quantizzatore guardando solo PsatP_{sat} senza notare che un range simmetrico spreca metà dei livelli per un segnale unipolare.

Versione ripasso

Testo. P(f)=A1Brect⁡f2B+A2δ(f)+A3δ(f−B)\mathcal P(f)=\frac{A_1}B\operatorname{rect}\frac f{2B}+A_2\delta(f)+A_3\delta(f-B) (B=20B=20 kHz, A1=2A_1=2, A2=A3=0,5A_2=A_3=0{,}5 V²); filtro G0rect⁡2fBG_0\operatorname{rect}\frac{2f}B, R=10 ΩR=10\ \Omega; quantizzatori [−7,7][-7,7] V, L=8L=8 e [0,5][0,5] V, L=6L=6 per un esponenziale con σ2=2\sigma^2=2 V² (febbraio 2025).

Teoria collegata