Scaricare la presentazione
La presentazione è in caricamento. Aspetta per favore
PubblicatoCross Esposito Modificato 11 anni fa
1
Tema 1: Misura della probabilità di eventi Esempio: Sistema di trasmissione dati
Schema di principio di un semplice sistema di trasmissione dati binario in banda base g R (t) tk=kTb Campionamento Decisore a 2 livelli Simboli binari decisi Zk ak n(t) s(t) T Sorgente binaria cadenza Tb Ex.: Ethernet, Tx. dati PC-stampante 1 ak: sequenza di bit da trasmettere gT(t): risposta impulsiva filtro sagomatore d’impulsi in Tx. s(t): segnale trasmesso n(t): disturbo in ricezione gR(t): risposta impulsiva filtro anti-disturbo in Ric. Tb: intervallo temporale tra i bit Zk: variabile aleatoria (v.a.) campione in ingresso al decisore Wk: v.a. effetto del disturbo filtrato
2
Variabili Aleatorie Binarie & Binomiali
Teorema di Bernoulli (o Legge dei grandi numeri): ovvero, la frequenza di presentazione F tende alla probabilità p che l’evento si verifichi
3
Statistiche della sorgente binaria
Generare una sequenza di n=105 bit {ak} equiprobabili (p=0.5) Sugg.: si utilizzi una trasformazione di v.a. del tipo funzione a gradino, applicandola ad una v.a. uniforme su [0,1] [istruzioni utili: rand, round, save] Verificare che i bit trasmessi sono equiprobabili (ovvero misurare p) Sugg.: interpretazione della probabilità come frequenza relativa ... [istruzioni utili: load, mean] Ripetere la verifica utilizzando solo i primi m bit e tracciare un grafico della frequenza relativa di presentazione dell’evento {ak =1} in funzione di m, con 1<m<n
4
Esempio di file.m & risultati
% Generatore sequenza bit trasmessi: genseq.m % OUT: fileseqtx con la sequenza dei simboli binari ed equiprobab. clear clc %bit trasmessi equiprobabili ns=1e4 %lunghezza sequenza seqtx=rand(1,ns); % genera v.a. uniforme su [0,1] seqtx=round(seqtx); % trasf. di v.a. per ottenere la v.a. % discreta valore del bit save fileseqtx seqtx Valutazione sperimentale di Pr{ak=1}: con n=105 bit Ex.: con m=50 bit per un generico m<n = = >>mean(seqtx) >>mean(seqtx(1:50)) >>mean(seqtx(1:m)) Valore effettivo: p=Pr{Ak=1}=0.5
5
Statistiche del segnale decodificato
V.A. campione in ricezione al decisore: con v.a. Gaussiana a media nulla e varianza Regola del decisore: La probabilità di errore sui bit è, per il Teorema della Probabilità Totale, La soglia di decisione è equidistante rispetto ai valori La Gaussiana è una distribuzione simmetrica rispetto al val. medio Uguali probabilità di errore per la decisione sui bit 1 e sui bit 0
6
Statistiche del segnale decodificato (2)
Generare i campioni osservati Zk in ricezione, in ingresso al decisore, a partire dalla sequenza di bit trasmessi, includendo il disturbo Gaussiano, e ricavare i bit decodificati Utilizzare i valori e [istruzioni utili: load, size, randn, sign] Valutare sperimentalmente la probabilità di errore (BER, bit error rate) confrontando la sequenza trasmessa (n=105 bit) e quella ricevuta per i due valori di [istruzioni utili: xor, mean] Confrontare il risultato sperimentale con quello teorico [istruzioni utili: normcdf] Ripetere la valutazione sperimentale utilizzando solo i primi m=500 bit
7
Esempio di file.m & risultati
% Simulazione decisore e valutazione della BER: valber.m function ber = valber(sigma) % IN: deviaz. standard disturbo load fileseqtx seqtx % carica la sequenza bit trasmessi zeta=seqtx+randn(1,size(seqtx,2))*sigma; % simula i campioni al decisore seqri=(1+sign(zeta-1/2))/2; % effettua le decisioni seqer=xor(seqri,seqtx); % calcola la sequenza degli errori ber=mean(seqer) % calcola la probabilità di errore Valutazione sperimentale di Pe utilizzando n=105 bit: con con = = (valore effettivo: BER=10-2) (valore effettivo: BER=10-1) = = Utilizzando solo m=500 bit: (valore effettivo: BER=10-2) (valore effettivo: BER=10-1)
8
Esempio di risultati: Misura della BER
Andamento teorico della BER: Pe misurata utilizzando n=10000 bit Pe misurata utilizzando n=105 bit Pe misurata utilizzando m=500 bit BER misurata:
9
% bersnr.m % Confronto tra valutazione e valore teorico della BER % al variare della deviazione standard del disturbo % generatore sequenza bit trasmessi clear clc % bit trasmessi equiprobabili ns= % lunghezza sequenza seqtx=rand(1,ns); % genera v.a. uniforme su [0,1] seqtx=round(seqtx); % trasf. di v.a. per ottenere la v.a. discreta valore del bit % simulazione decisore e valutazione probabilita' di errore sequenza bit ricevuti sigma2i=[.001:5:80]; % valori di 1/sigma^2 del termine di disturbo (SNR=1/sigma^2) sigma=sqrt(1./sigma2i); % valori di sigma zeta=repmat(seqtx.',1,size(sigma,2))+randn(1,size(seqtx,2)).'*sigma; % simula i campioni al decisore % per le varie deviazioni standard seqri=(1+sign(zeta-1/2))/2; % effettua le decisioni % per le varie sequenze seqer=xor(seqri,repmat(seqtx.',1,size(sigma,2))); % calcola le sequenze degli errori ber=mean(seqer); % calcola le probabilità di errore semilogy(sigma2i,ber,'-o') % grafica le probabilità di errore grid axis([min(sigma2i) max(sigma2i) 1e-5 1]) xlabel('SNR(db)') ylabel('BER') hold on semilogy(sigma2i,1-normcdf(.5./sigma),'-xr') % grafica i valori teorici
Presentazioni simili
© 2024 SlidePlayer.it Inc.
All rights reserved.