看板 comm_and_RF 關於我們 聯絡資訊
我寫了以下一段matlab程式碼來畫出BPSK訊號的波形,顯示的波形中, 可以看出傳送bit 1 與 bit 0有相位差180度的差異,看起來沒什麼問題, 於是我想用計算BER來再次確認是否程式有誤。 在AWGN通道下,當SNR_db=4時,合理BER應該為1%而SNR_dB=7時,應為0.1%, 但我測試時,BER大多都維持0,僅在SNR非常差的情況(小於-20), BER才有0.1%左右,想請教是否有人能幫我檢察看看或是提供一些意見,謝謝。 for kk=1:1000 bitstream=[1 0]; d=0.01; Es=1; Ts=1; fc=2; tc=[0:d:0.99]; n=1; symbolbits=1; NRZ=2*bitstream-1; carrier=sqrt(2/Ts)*cos(2*pi*fc*tc); for i=1:symbolbits:length(bitstream) s(1,(n-1)*length(tc)+1:n*length(tc))=NRZ(i)*carrier; n=n+1; end SNR=4; snr=10^(SNR/10); E=sum(abs(s).^2)/length(s); N0=E/snr; noise=sqrt(N0)*randn(1,length(s)); z=s+noise; %% coherent detection for i=1:length(z)/length(tc) Q(1,(i-1)*length(tc)+1:i*length(tc))=z((i-1)*length(tc)+1:i*length(tc)).*carrier; end integral=[]; for i=1:2 integral(1,i)=trapz(Q((i-1)*100+1:i*100)); end detect=integral>0; ber(1,kk)=sum(detect~=bitstream)/length(bitstream); end final_ber=sum(ber)/1000; figure(1) time=[0:d:1.99]; subplot(2,1,1); plot(time,s); subplot(2,1,2); plot(time,z); -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 118.166.129.144 ※ 文章網址: https://www.ptt.cc/bbs/comm_and_RF/M.1545563246.A.88F.html
Leadgen: 未看先猜你noise加的power對嗎? 175.98.8.6 12/30 11:04
yymmbbtt: 我有懷疑過,但我用雜訊power N0與訊號p 36.231.33.197 12/30 23:32
yymmbbtt: ower E做計算,snr是等於4db沒錯,請問 36.231.33.197 12/30 23:32
yymmbbtt: 還有其他方式可以檢驗這部分嗎 36.231.33.197 12/30 23:32
yymmbbtt: 修正 ,是我另外計算雜訊power En 118.168.63.62 12/31 00:41
yymmbbtt: En=sum(abs(n))/length(n) ,然後與E 118.168.63.62 12/31 00:41
yymmbbtt: 驗證是否snr=4 118.168.63.62 12/31 00:41
bxxl: 你需要的是Eb/N0, Eb=Amp^2*Nb 114.45.100.195 01/04 09:49
bxxl: Nb是每個bit sample多少點. 114.45.100.195 01/04 09:49
bxxl: 你好像是sample了100點,這樣就差了20dB 114.45.100.195 01/04 09:49
yymmbbtt: 恩 我一個bit調變成一個載波 載波取樣 118.166.131.5 01/13 18:17
yymmbbtt: 了100點 118.166.131.5 01/13 18:17
yymmbbtt: 剛剛試了 ber大概6%上下,有了改善,請 118.166.131.5 01/13 18:29
yymmbbtt: 問一下,這樣算出來的Eb可以說是傳送訊 118.166.131.5 01/13 18:29
yymmbbtt: 號s的平均功率吧 118.166.131.5 01/13 18:29
yymmbbtt: 我之前有用關鍵字snr找過文獻,請問是否 118.166.131.5 01/13 18:32
yymmbbtt: 還有什麼關鍵字可以找到關於你說的這一 118.166.131.5 01/13 18:32
yymmbbtt: 部份,想一次搞懂,謝謝 118.166.131.5 01/13 18:32
bxxl: 你修過通訊原理(或數位通)跟數位訊號處理嗎?220.136.146.133 01/13 19:14
bxxl: 前者有講雜訊的模型跟BER推導.220.136.146.133 01/13 19:16
bxxl: 後者讓你知道進來的noise 頻寬應該是多少220.136.146.133 01/13 19:17
bxxl: 然後SNR是個不精確的詞, Eb/N0才是精確的220.136.146.133 01/13 19:19
bxxl: 假設你把前端的filter變寬, S不變, N卻變大220.136.146.133 01/13 19:24
bxxl: 這樣會造成SNR降低. 但其實不影響錯誤率220.136.146.133 01/13 19:25
bxxl: 因為那些是out-of-band noise, 可以再濾220.136.146.133 01/13 19:25
bxxl: 最終不影響結果.220.136.146.133 01/13 19:25
yymmbbtt: 通原有修過,但自己知道還是有些觀念不 118.166.131.5 01/13 21:24
yymmbbtt: 是非常清楚,所以想配合讀過後的心得用m 118.166.131.5 01/13 21:24
yymmbbtt: atlab來驗證或釐清,像經過這次我才知道 118.166.131.5 01/13 21:24
yymmbbtt: 這一部份的差別,是個很好的經驗 118.166.131.5 01/13 21:24
yymmbbtt: 數位訊號處理就沒有修了,但我有書籍, 118.166.131.5 01/13 21:25
yymmbbtt: 會再去翻翻看的,感謝指教 118.166.131.5 01/13 21:25
bxxl: 回想了一下應該不用去看數位訊號處理(很大本220.136.146.133 01/13 23:53
bxxl: 去看通原或數通裡面,band-limited noise特性220.136.146.133 01/13 23:54
bxxl: 跟了解sampling theorem, 應該就可以了220.136.146.133 01/13 23:55