Salta al contenuto
Note per Studenti Ricevitore a minima distanza e filtro adattato

Ricevitore a minima distanza e filtro adattato

In questa pagina 7
In questa pagina 5

La teoria della decisione (Decisione ottima - criteri MAP e MLIl ricevitore osserva il vettore $\mathbf r$ e deve stimare il simbolo trasmesso $a_0$: lo spazio $\mathbb R^I$ si divide in $M$ regioni di decisione $\mathcal R_j$. La probabilità di decisione corretta è $P[C]=\sum_j\int_{\mathcal R_j}D_j(\boldsymbol\rho),d\boldsymbol\rho$ con $D_j=p_{\mathbf r|a_0}(\boldsymbol\rho|j),p_j$ e si massimizza assegnando ogni $\boldsymbol\rho$ alla regione con $D_j$ più alto: criterio MAP (massimo a posteriori, ottimo). Il criterio ML ($\arg\max_jp_{\mathbf r|a_0}(\boldsymbol\rho|j)$) ignora le probabilità a priori e coincide con MAP per simboli equiprobabili. Il criterio MD (minima distanza, $\arg\min\lVert\boldsymbol\rho-\mathbf s_j\rVert$) coincide con ML se il rumore è AWGN, quindi con simboli equiprobabili e AWGN è ottimo.Decisione ottima - criteri MAP e ML →) dice che, con rumore AWGN e simboli equiprobabili, il criterio ottimo è la minima distanza. Qui si vede come costruirlo con circuiti reali: da r(t)r(t) si deve ottenere il vettore r∈RI\mathbf r\in\mathbb R^I e poi scegliere il punto della costellazione più vicino. Versione per Ing. Elettronica: Ricevitore a correlatori e filtro adattatoIl ricevitore a minima distanza proietta $r(t)$ sulla base, $r_i=\langle r,\phi_i\rangle=\int r\phi_i^dt$, e sceglie il punto $\mathbf s_m$ più vicino. Ogni proiezione è un filtro con risposta impulsiva $g_i(t)=\phi_i^(t_0-t)$ (filtro adattato) campionato in $t_0$, la durata dell'impulso. Alternativa: $\hat m=\arg\max_m\left{\operatorname{Re}\langle r,s_m\rangle-\frac{E_m}2\right}$, con $M$ filtri adattati ai segnali: conviene la prima se $M\gg I$, la seconda se $M\approx I$ (non serve calcolare la base).Ricevitore a correlatori e filtro adattato →.

1. Come ottenere il vettore r\mathbf r

Si vorrebbe "leggere" r\mathbf r con mezzi elettrici, per poi dare le coordinate a un microprocessore che calcola le distanze dai punti della costellazione e prende l'arg⁡min⁡\arg\min. Data la base {φj(t)}j=1I\{\varphi_j(t)\}_{j=1}^I (Spazio dei segnali e Gram-SchmidtNella modulazione digitale ogni simbolo di un alfabeto di $M$ elementi è associato a una forma d'onda $s_j(t)$ di energia finita, trasmessa in un tempo di simbolo $T$. Le forme d'onda sono elementi dello spazio $\mathcal L^2$ con prodotto scalare $\langle x,y\rangle=\int xy^,dt$ e energia $E_x=\lVert x\rVert^2$; con una base ortonormale ${\varphi_i}_{i=1}^I$ ($I\le M$, trovata con Gram-Schmidt) ogni segnale è un punto $\mathbf s_j=[\langle s_j,\varphi_i\rangle]_i$ e l'insieme dei punti è la costellazione. Il rumore bianco gaussiano ha componenti sulla base indipendenti $\mathcal N(0,\frac{N_0}2)$ (la parte fuori dallo spazio dei segnali è irrilevante), quindi il ricevuto è $\mathbf r=\mathbf s_j+\mathbf w$.Spazio dei segnali e Gram-Schmidt →) le coordinate sono i prodotti scalari rj=⟨r,φj⟩=∫−∞+∞r(t) φj∗(t) dt,j=1,…,I.r_j=\langle r,\varphi_j\rangle=\int_{-\infty}^{+\infty}r(t)\,\varphi_j^*(t)\,dt,\qquad j=1,\dots,I . Come si calcolano con un circuito? Con un filtro lineare tempo-invariante (Sistemi LTI, risposta impulsiva e convoluzioneUn sistema lineare tempo-invariante (LTI) è completamente descritto dalla sua risposta impulsiva $h=\Sigma[\delta]$: l'uscita è la convoluzione $y=xh$, cioè $y(t)=\int x(u)h(t-u)du$ (somma $\sum_k x(k)h(n-k)$ nel discreto). Il teorema discende da linearità e tempo-invarianza applicate alla scomposizione del segnale in impulsi.Sistemi LTI, risposta impulsiva e convoluzione →) seguito da un campionatore. Si costruisce il filtro con risposta impulsiva ψj(t)=φj∗(t0−t)\boxed{\psi_j(t)=\varphi_j^*(t_0-t)} (la funzione di base ribaltata nel tempo, coniugata, e ritardata di t0t_0). Quando r(t)r(t) entra nel filtro, l'uscita campionata in t=t0t=t_0 è (r∗ψj)(t0)=∫−∞+∞r(τ) ψj(t0−τ) dτ=∫r(τ) φj∗(t0−t0+τ)dτ=∫r(τ) φj∗(τ) dτ=⟨r,φj⟩=rj.(r*\psi_j)(t_0)=\int_{-\infty}^{+\infty}r(\tau)\,\psi_j(t_0-\tau)\,d\tau=\int r(\tau)\,\varphi_j^*\left(t_0-t_0+\tau\right)d\tau=\int r(\tau)\,\varphi_j^*(\tau)\,d\tau=\langle r,\varphi_j\rangle=r_j . Il filtro con questa risposta impulsiva, "adattato" alla funzione di base, è il filtro adattato (matched filter). Se si ripete lo schema per tutte le II coordinate si ottiene il vettore r\mathbf r, da mandare a un microprocessore per arg⁡min⁡\arg\min.

Il ritardo t0t_0 e la causalità. Perché il filtro sia realizzabile deve essere causale (ψj(t)=0\psi_j(t)=0 per t<0t<0), e t0t_0 si sceglie per ottenere questo. Se i segnali sj(t)s_j(t) (e quindi le φj(t)\varphi_j(t)) hanno durata limitata in [0,T][0,T] basta t0=Tt_0=T: ψj(t)=φj∗(T−t)\psi_j(t)=\varphi_j^*(T-t) è ancora in [0,T][0,T]. In generale i segnali non hanno durata limitata (è anzi il caso pratico), ma appartengono a L2(R)\mathcal L^2(\mathbb R), quindi sono praticamente nulli fuori da un intervallo, e un t0t_0 abbastanza grande rende il filtro quasi causale: le modifiche sono quelle ingegneristiche del troncamento.

Il filtro adattato può anche essere visto come correlatore: per φj\varphi_j a durata finita [0,T][0,T], rj=∫0Tr(t)φj∗(t) dtr_j=\int_0^Tr(t)\varphi_j^*(t)\,dt si ottiene moltiplicando r(t)r(t) per φj(t)\varphi_j(t) e integrando sul tempo di simbolo ("integra e scarica").

Esempio. φ(t)=1Trect⁡(t−T/2T)\varphi(t)=\frac1{\sqrt T}\operatorname{rect}\left(\frac{t-T/2}T\right) (t0=Tt_0=T): r1=1T∫0Tr(t) dtr_1=\frac1{\sqrt T}\int_0^Tr(t)\,dt, cioè T\sqrt T volte il valor medio di r(t)r(t) sul simbolo. Poiché φ\varphi è simmetrica rispetto a T2\frac T2, ψ(t)=φ(T−t)=φ(t)\psi(t)=\varphi(T-t)=\varphi(t) (stessa forma).

2. Ricevitore a minima distanza, tipo I

Lo schema di tipo I ha II rami in parallelo, uno per funzione di base: r(t)→ψj→r(t)\to\psi_j\to campionatore in t0t_0 →rj\to r_j. Poi un blocco calcola le distanze Dn=∥r−sn∥D_n=\lVert\mathbf r-\mathbf s_n\rVert da tutti gli MM punti e un ultimo blocco sceglie a^0=arg⁡min⁡nDn\hat a_0=\arg\min_nD_n. È lo schema "naturale": II filtri, ma serve prima trovare la base (con Gram-Schmidt, scomodo a mano).

3. Ricevitore a minima distanza, tipo II

Si può evitare di calcolare la base lavorando direttamente con i segnali. Si sviluppa il quadrato della distanza: ∥r−sj∥2=∑i∣ri−sj,i∣2=∥r∥2+∥sj∥2−2Re⁡⟨r,sj⟩=∥r∥2+Ej−2Re⁡⟨r,sj⟩.\lVert\mathbf r-\mathbf s_j\rVert^2=\sum_i\lvert r_i-s_{j,i}\rvert^2=\lVert\mathbf r\rVert^2+\lVert\mathbf s_j\rVert^2-2\operatorname{Re}\langle\mathbf r,\mathbf s_j\rangle=\lVert\mathbf r\rVert^2+E_j-2\operatorname{Re}\langle r,s_j\rangle . (Si è usato che il prodotto scalare non cambia passando dai segnali ai vettori di coordinate: ⟨r,sj⟩=⟨r,sj⟩\langle\mathbf r,\mathbf s_j\rangle=\langle r,s_j\rangle, perché sj\mathbf s_j sta nel sottospazio.) Il termine ∥r∥2\lVert\mathbf r\rVert^2 è lo stesso per tutte le ipotesi e non conta nel minimo. Minimizzare la distanza equivale a massimizzare una correlazione corretta con l'energia: a^0=arg⁡min⁡j∥r−sj∥2=arg⁡max⁡j{Re⁡⟨r,sj⟩−Ej2}.\boxed{\hat a_0=\arg\min_j\lVert\mathbf r-\mathbf s_j\rVert^2=\arg\max_j\left\{\operatorname{Re}\langle r,s_j\rangle-\frac{E_j}2\right\}.} Lo schema ha MM rami: in ciascuno il filtro adattato al segnale ξj(t)=sj∗(t0−t)\xi_j(t)=s_j^*(t_0-t), campionato in t0t_0, dà ⟨r,sj⟩\langle r,s_j\rangle; si prende la parte reale, si sottrae la costante Ej2\frac{E_j}2 (nota) e un ultimo blocco sceglie il massimo UjU_j. Se tutti i segnali hanno la stessa energia, il termine Ej2\frac{E_j}2 si può omettere (è uguale in tutti i rami).

Quale schema scegliere? Dipende dai numeri. Poiché I≤MI\le M:

  • se I≪MI\ll M (per esempio una 64-QAM, con M=64M=64 ma I=2I=2) conviene il tipo I: pochi filtri;
  • se I≈MI\approx M (per esempio segnali ortogonali, in cui I=MI=M) conviene il tipo II: non serve calcolare la base.

Attenzione al segnale ricevuto. In tutte queste formule sjs_j indica in realtà il segnale ricevuto srcs_{rc}. In banda stretta il canale riscala soltanto stxs_{tx} in srcs_{rc} e non cambia nulla; ma se il canale distorce la forma d'onda, i filtri vanno adattati ai segnali dopo il canale ("matched filter receiver" rispetto al canale).

4. Il filtro adattato massimizza l'SNR

Perché si chiama "adattato" e perché è ottimo? Si prova a filtrare r(t)=s(t)+w(t)r(t)=s(t)+w(t) (con ww bianco, PSD N02\frac{N_0}2) con un filtro generico ψ(t)\psi(t) e a campionare in t0t_0. L'uscita campionata ha una parte di segnale e una di rumore: y(t0)=∫s(τ) ψ(t0−τ) dτ⏟ys+∫w(τ) ψ(t0−τ) dτ⏟yw.y(t_0)=\underbrace{\int s(\tau)\,\psi(t_0-\tau)\,d\tau}_{y_s}+\underbrace{\int w(\tau)\,\psi(t_0-\tau)\,d\tau}_{y_w}. La parte di rumore ha media nulla e varianza (potenza) E[yw2]=N02∫∣ψ(t)∣2dt=N02∥ψ∥2E[y_w^2]=\frac{N_0}2\int\lvert\psi(t)\rvert^2dt=\frac{N_0}2\lVert\psi\rVert^2 (conseguenza dell'autocorrelazione impulsiva del rumore bianco). La parte di segnale è un prodotto scalare, e per la disuguaglianza di Cauchy-Schwarz (Prodotto scalare, norma e angoliIl prodotto scalare aggiunge a uno spazio vettoriale lunghezze e angoli: norma, disuguaglianza di Cauchy-Schwarz, angolo tra vettori in R^n, ortogonalità, proiezione su una retta, aree e volumi con il determinante della matrice dei prodotti scalari.Prodotto scalare, norma e angoli →) ∣ys∣2≤∥s∥2∥ψ∥2=E∥ψ∥2\lvert y_s\rvert^2\le\lVert s\rVert^2\lVert\psi\rVert^2=E\lVert\psi\rVert^2. L'SNR all'istante di campionamento è dunque SNR=∣ys∣2E[yw2]≤E∥ψ∥2N02∥ψ∥2=2EN0,\text{SNR}=\frac{\lvert y_s\rvert^2}{E[y_w^2]}\le\frac{E\lVert\psi\rVert^2}{\frac{N_0}2\lVert\psi\rVert^2}=\frac{2E}{N_0}, con uguaglianza se e solo se ψ(t0−τ)∝s∗(τ)\psi(t_0-\tau)\propto s^*(\tau), cioè se ψ(t)∝s∗(t0−t)\psi(t)\propto s^*(t_0-t): è proprio il filtro adattato. Il filtro adattato è il filtro che massimizza l'SNR in t0t_0 e il valore massimo 2EN0\frac{2E}{N_0} è esattamente quello che compare nell'argomento della funzione QQ per la modulazione antipodale (Probabilità d'errore e funzione QPer due segnali di energie $E_1,E_2$ con coefficiente di correlazione $\rho=\frac{\langle s_1,s_2\rangle}{\sqrt{E_1E_2}}$ la distanza è $d_{12}=\sqrt{E_1+E_2-2\rho\sqrt{E_1E_2}}$ e, con rumore AWGN, simboli equiprobabili e criterio MD, $P[E]=Q\left(\frac{d_{12}}{2\sigma_I}\right)=Q\left(\sqrt{\frac{E_s(1-\rho)}{N_0}}\right)$ con $\sigma_I^2=\frac{N_0}2$ e $Q$ la coda della gaussiana. Il caso antipodale ($\rho=-1$) dà $Q\left(\sqrt{\frac{2E_s}{N_0}}\right)$, l'ortogonale ($\rho=0$) $Q\left(\sqrt{\frac{E_s}{N_0}}\right)$: 3 dB peggio. Con $M>2$ segnali si usano limiti: $\frac{N^*}M Q\left(\frac{d_{min}}{2\sigma_I}\right)\le P[E]\le(M-1)Q\left(\frac{d_{min}}{2\sigma_I}\right)$ (union bound); la probabilità dipende solo da $\frac{E_s}{N_0}$, cioè dall'SNR.Probabilità d'errore e funzione Q →).

Esempio (forma dell'uscita). Impulso rettangolare di ampiezza A=1A=1 V e durata T=1T=1 ms, filtro adattato: l'uscita è la convoluzione del rettangolo con se stesso (normalizzato), un triangolo che cresce da 00 a t=Tt=T e poi scende, e il massimo si ha in t=Tt=T: usando il filtro adattato alla base φ=1Trect⁡\varphi=\frac1{\sqrt T}\operatorname{rect} il picco è ⟨s,φ⟩=AT=E=0,0316\langle s,\varphi\rangle=A\sqrt T=\sqrt E=0{,}0316 Vs\sqrt{\text{s}}. Campionando esattamente in t0=Tt_0=T si prende il massimo; campionando prima o dopo si perde SNR.

Grafico interattivo: Uscita del filtro adattato per un impulso rettangolare di ampiezza A = 1 e durata T = 1 (unità normalizzate): è un triangolo con picco in t = T = t₀ pari a A√T = √E. Il campionamento va fatto proprio in t₀ = T; a t = 0,8T il valore è già sceso al 80%, a 0,5T al 50%

5. Casi particolari: un solo filtro per le modulazioni binarie

Nel caso binario (M=2M=2) la distanza dai due punti si può calcolare con una sola coordinata: ruotando gli assi in modo che il segmento s1s2\mathbf s_1\mathbf s_2 sia parallelo a un asse (coordinata φ1′\varphi_1'), conta solo la proiezione lungo quella direzione. Si calcola φ1′(t)\varphi_1'(t) (la direzione di s2−s1s_2-s_1 normalizzata) e la si usa come risposta impulsiva del filtro: basta un filtro seguito da un rivelatore a soglia (nessun microprocessore): se l'uscita è sopra la soglia si decide un simbolo, se sotto l'altro. In generale una scelta analoga riduce di 1 il numero dei filtri.

Esempio: modulazione antipodale (s2=−s1s_2=-s_1, dimensione I=1I=1). La direzione φ1′\varphi_1' coincide con la base φ1=s1E\varphi_1=\frac{s_1}{\sqrt{E}}. Con s1=Arect⁡(t−T/2T)s_1=A\operatorname{rect}\left(\frac{t-T/2}T\right), A=1A=1 V, T=1T=1 ms: E=A2T=10−3E=A^2T=10^{-3} V2^2s, punti s1=+E=+0,0316\mathbf s_1=+\sqrt E=+0{,}0316 e s2=−E\mathbf s_2=-\sqrt E Vs\sqrt{\text{s}}. Il filtro adattato campionato in TT dà r1=±E+w1r_1=\pm\sqrt E+w_1 e la decisione a minima distanza è: se r1>0r_1>0 si decide s1s_1, altrimenti s2s_2 (soglia a metà, in 00).

6. Il ricevitore reale

Nella pratica il ricevitore ha altri blocchi oltre alla proiezione e alla decisione: la sincronizzazione (conoscere t0t_0 e i tempi di simbolo, altrimenti l'ISI cresce), la stima del canale, la stima del tempo (timing) e della frequenza della portante (ogni errore di sincronizzazione fa perdere SNR). Nel corso si assume sincronizzazione perfetta.

Errori comuni

  • Dimenticare di ribaltare la funzione di base nel filtro adattato: ψ(t)=φ∗(t0−t)\psi(t)=\varphi^*(t_0-t) (con φ\varphi simmetrica non si vede, ma in generale è diverso).
  • Campionare in un istante diverso da t0t_0 (fine del segnale): il massimo SNR è lì.
  • Nel tipo II, sottrarre Ej2\frac{E_j}2 solo se le energie sono diverse; scambiare max e min (la forma con la distanza chiede il minimo, quella con la correlazione il massimo).
  • Usare il tipo II quando I≪MI\ll M (serve un filtro per ogni segnale, tanti).
  • Costruire il filtro sul segnale trasmesso quando il canale lo distorce (va adattato al segnale ricevuto).

Versione ripasso

Con rumore AWGN e simboli equiprobabili il criterio ottimo è la minima distanza (Decisione ottima - criteri MAP e MLIl ricevitore osserva il vettore $\mathbf r$ e deve stimare il simbolo trasmesso $a_0$: lo spazio $\mathbb R^I$ si divide in $M$ regioni di decisione $\mathcal R_j$. La probabilità di decisione corretta è $P[C]=\sum_j\int_{\mathcal R_j}D_j(\boldsymbol\rho),d\boldsymbol\rho$ con $D_j=p_{\mathbf r|a_0}(\boldsymbol\rho|j),p_j$ e si massimizza assegnando ogni $\boldsymbol\rho$ alla regione con $D_j$ più alto: criterio MAP (massimo a posteriori, ottimo). Il criterio ML ($\arg\max_jp_{\mathbf r|a_0}(\boldsymbol\rho|j)$) ignora le probabilità a priori e coincide con MAP per simboli equiprobabili. Il criterio MD (minima distanza, $\arg\min\lVert\boldsymbol\rho-\mathbf s_j\rVert$) coincide con ML se il rumore è AWGN, quindi con simboli equiprobabili e AWGN è ottimo.Decisione ottima - criteri MAP e ML →). Il ricevitore la realizza con filtri lineari sulla base (Spazio dei segnali e Gram-SchmidtNella modulazione digitale ogni simbolo di un alfabeto di $M$ elementi è associato a una forma d'onda $s_j(t)$ di energia finita, trasmessa in un tempo di simbolo $T$. Le forme d'onda sono elementi dello spazio $\mathcal L^2$ con prodotto scalare $\langle x,y\rangle=\int xy^*,dt$ e energia $E_x=\lVert x\rVert^2$; con una base ortonormale ${\varphi_i}_{i=1}^I$ ($I\le M$, trovata con Gram-Schmidt) ogni segnale è un punto $\mathbf s_j=[\langle s_j,\varphi_i\rangle]_i$ e l'insieme dei punti è la costellazione. Il rumore bianco gaussiano ha componenti sulla base indipendenti $\mathcal N(0,\frac{N_0}2)$ (la parte fuori dallo spazio dei segnali è irrilevante), quindi il ricevuto è $\mathbf r=\mathbf s_j+\mathbf w$.Spazio dei segnali e Gram-Schmidt →).

Proiezione con il filtro adattato

Tipo I e tipo II

  • Tipo I (II filtri): II rami r→ψj→rjr\to\psi_j\to r_j, poi Dn=∥r−sn∥D_n=\lVert\mathbf r-\mathbf s_n\rVert per tutti gli MM punti e a^0=arg⁡min⁡nDn\hat a_0=\arg\min_nD_n. Serve la base.
  • Tipo II (MM filtri), senza calcolare la base: ∥r−sj∥2=∥r∥2+Ej−2Re⁡⟨r,sj⟩\lVert\mathbf r-\mathbf s_j\rVert^2=\lVert\mathbf r\rVert^2+E_j-2\operatorname{Re}\langle r,s_j\rangle a^0=arg⁡min⁡j∥r−sj∥2=arg⁡max⁡j{Re⁡⟨r,sj⟩−Ej2}\boxed{\hat a_0=\arg\min_j\lVert\mathbf r-\mathbf s_j\rVert^2=\arg\max_j\left\{\operatorname{Re}\langle r,s_j\rangle-\frac{E_j}2\right\}} Ogni ramo ha il filtro sj∗(t0−t)s_j^*(t_0-t) campionato in t0t_0. Se le energie sono uguali, Ej2\frac{E_j}2 si omette.
  • Scelta: se I≪MI\ll M (es. 64-QAM con M=64M=64, I=2I=2) conviene il tipo I; se I≈MI\approx M (es. segnali ortogonali, I=MI=M) il tipo II.
  • Canale: i filtri vanno adattati al segnale ricevuto srcs_{rc}, non a quello trasmesso, se il canale distorce la forma d'onda.

Massimo SNR

Caso binario: un solo filtro

  • Con M=2M=2 si ruotano gli assi in modo che s1s2\mathbf s_1\mathbf s_2 sia parallelo a un asse, e si usa la direzione di s2−s1s_2-s_1 come unica risposta impulsiva. Basta un filtro e un rivelatore a soglia.
  • Antipodale (s2=−s1s_2=-s_1, I=1I=1): con A=1A=1 V e T=1T=1 ms, E=10−3E=10^{-3} V2^2s, punti ±E=±0,0316\pm\sqrt E=\pm0{,}0316 Vs\sqrt{\text{s}}. Il filtro campionato in TT dà r1=±E+w1r_1=\pm\sqrt E+w_1: se r1>0r_1>0 si decide s1s_1, altrimenti s2s_2.

Errori tipici

  • Dimenticare di ribaltare la funzione di base: ψ(t)=φ∗(t0−t)\psi(t)=\varphi^*(t_0-t), non φ∗(t)\varphi^*(t).
  • Campionare in un istante diverso da t0t_0: il massimo SNR è in t0t_0.
  • Nel tipo II, omettere Ej2\frac{E_j}2 quando le energie sono diverse.
  • Scambiare max e min: la forma con la distanza chiede il minimo, quella con la correlazione il massimo.
  • Usare il tipo II quando I≪MI\ll M (servirebbe un filtro per ogni segnale).
  • Adattare il filtro al segnale trasmesso quando il canale lo distorce.

Esercizi su questo argomento

Lezioni in cui compare

Teoria collegata