|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有账号?我要加入
x
<DIV>clc<BR>clear<BR>tic;<BR>fd=1;fs=3;flag1=0;flag2=0;suma=0;sumb=0;<BR>k=10000;er=1;M=4;snr_db=0:12;<FONT style="BACKGROUND-COLOR: #80c0ff">snr1_db=0:0.1:12</FONT>;<BR>for i=1:length(snr_db)<BR> flag1=0;flag2=0;<BR>for n=1:k<BR> suma=0;sumb=0;<BR>matrix=randint<FONT style="BACKGROUND-COLOR: #ff0000"><FONT style="BACKGROUND-COLOR: #40a0ff">(1071,1,2);</FONT><BR></FONT>syn=[1 1 1 0 0 1 0];<BR>matrix_syn=[syn,matrix']';<BR>modata=dmodce(matrix_syn,fd,fs,'psk',M);<BR>modata_nois=awgn(modata,snr_db(i));<BR>y=ddemodce(modata_nois,fd,fs,'psk',M);<BR>suma=y(1)+y(2)+y(3)+~y(4)+~y(5)+y(6)+~y(7);<BR>if suma>=<FONT style="BACKGROUND-COLOR: #40a0ff">7</FONT>;<BR> flag1=flag1+1;<BR> else flag2=flag2+1; <BR>end<BR>end<BR>pm(i)=flag2/k; %实际漏同步概率<BR>end<BR>for j=1:length(snr1_db)<BR> eb_n0=10^(snr1_db(j)/10);<BR> pm_theory(j)=2*qfunct(sqrt(2*log2(M)*eb_n0)*sin(pi/M));%理论误符号率<BR> per(j)=pep(pm_theory(j),<FONT style="BACKGROUND-COLOR: #40a0ff">13</FONT>,er); %理论漏同步概率<BR>end<BR>semilogy(snr_db,pm,'*',snr1_db,per);<BR>xlabel('信噪比/dB');<BR>ylabel('漏同步概率');<BR>legend('实际漏同步概率','理论漏同步概率');<BR>toc</DIV>
<DIV>我有几个地方不明白,请教你一下,<FONT style="BACKGROUND-COLOR: #ff4040">1</FONT>.取1071位是什么意思呢,就算加上7位巴克码,是1078位,说是5个语音帧插入一个同步帧,可是语音帧不是137bit吗?那同步帧又是多少位呢?<FONT style="BACKGROUND-COLOR: #ff4040">2</FONT>.这个程序的信噪比就是设计成等差数列吗?<FONT style="BACKGROUND-COLOR: #ff4040">3</FONT>.if suma>=<FONT style="BACKGROUND-COLOR: #80c0ff">7</FONT>,这里为什么是7呢,下面理论漏同步概率中er取的是1,既是允许码组中错误码元的最大数是1,那这里就应该是6啊,因为允许有一位出错阿。<FONT style="BACKGROUND-COLOR: #ff4040">4</FONT>.per(j)=pep(pm_theory(j),<FONT style="BACKGROUND-COLOR: #80c0ff">13</FONT>,er)中为什么取13呢? %漏同步概率<BR>function [y]=pep(pe,n,k)<BR>% pe 误码率<BR>% n 码长<BR>y=0;<BR>for i=k:n<BR> y=y+factorial(n)/(factorial(i)*factorial(n-i))*pe^i*(1-pe)^(n-i);<BR>end</DIV>
<DIV>n是同步码组的码元数,这里取13说明同步帧是13位吗?还是别的什么原因?</DIV> |
|