coldstar88 发表于 2005-11-4 09:25

[求助]帮忙看看这个matlab程序

<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=;<BR>matrix_syn=';<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&gt;=<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&gt;=<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 =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>

suffer 发表于 2005-11-4 15:26

回复:(coldstar88)[求助]帮忙看看这个matlab程序

这个问题好像不是matlab问题,好像是语音信号处理问题吧
页: [1]
查看完整版本: [求助]帮忙看看这个matlab程序