1.一種快速收斂的估計(jì)LDPC碼錯誤概率的方法,其特征在于,所述方法包括以下步驟:
(1)利用蒙特卡羅仿真方法確定參考信噪比SNRref;
(2)輸入待仿真的信噪比SNRobj,判斷輸入信噪比SNRobj是否小于SNRref,當(dāng)SNRobj≤SNRref時,采用蒙特卡羅法估計(jì)系統(tǒng)的錯誤概率,流程結(jié)束;當(dāng)SNRobj>SNRref時,執(zhí)行步驟(3);
(3)定義控制變量V,將V的范圍劃分為若干個子區(qū)間,確定可信區(qū)間;定義輔助函數(shù),確定仿真預(yù)設(shè)區(qū)域Ω;
(4)估計(jì)在SNRobj下噪聲落入V的第k個子區(qū)間且導(dǎo)致譯碼錯誤的概率Perr,k,obj;
(5)估計(jì)在SNRobj下導(dǎo)致譯碼錯誤的所有噪聲中,落入V的第k個子區(qū)間的噪聲占總數(shù)的條件概率Pk|err,obj;
(6)計(jì)算在SNRobj下的錯誤概率Perr,obj。
2.根據(jù)權(quán)利要求1所述的一種快速收斂的估計(jì)LDPC碼錯誤概率的方法,其特征在于,所述定義控制變量V,將V的范圍劃分為若干個子區(qū)間,確定可信區(qū)間;定義輔助函數(shù),確定仿真預(yù)設(shè)區(qū)間Ω步驟具體為:
(3.1)控制變量其中n為LDPC碼的碼長,zl是噪聲z的第l個分量,當(dāng)zl與調(diào)制后的信號符號相反時,H(qlzl)=1,當(dāng)zl與調(diào)制后的信號符號相同時,H(qlzl)=0;
(3.2)將V的取值范圍劃分為若干個子區(qū)間,SNRref下的劃分步驟具體為,
(3.2.1)將SNRref下的控制變量范圍[Vmin,ref,Vmax,ref]和子區(qū)間數(shù)目Lref暫設(shè)定為[0,1]和1000,子區(qū)間的長度ΔV=(Vmax,ref-Vmin,ref)/Lref;
(3.2.2)運(yùn)行不包含譯碼的無約束仿真,獲得仿真樣本;
(3.2.3)當(dāng)仿真樣本數(shù)超過107時,選取第一個噪聲數(shù)不為零的子區(qū)間k對應(yīng)的V值為Vmin,ref,選取最后一個噪聲數(shù)不為零的子區(qū)間k對應(yīng)的V值為Vmax,ref;
(3.2.4)將[Vmin,ref,Vmax,ref]劃分為Lref=L0個子區(qū)間,L0可根據(jù)不同的LDPC碼的參數(shù)設(shè)定,并計(jì)算ΔV0=(Vmax,ref-Vmin,ref)/L0;
(3.3)確定可信區(qū)間具體為,
(3.3.1)采用包含譯碼的無約束仿真估計(jì)在SNRref下噪聲落入V的第k個子區(qū)間,且導(dǎo)致譯碼錯誤的聯(lián)合概率Perr,k,ref;采用約束仿真估計(jì)SNRref下在導(dǎo)致譯碼錯誤的所有噪聲中,落入V的第k個子區(qū)間的噪聲數(shù)占總數(shù)的條件概率Pk|err,ref;
(3.3.2)選取聯(lián)合概率Perr,k,ref不為零的一段連續(xù)區(qū)域;
(3.3.3)在Perr,k,ref不為零的連續(xù)區(qū)域內(nèi),從最左端開始,選取子區(qū)間數(shù)為δ的區(qū)域并暫定為[V*,V**];
(3.3.4)在子區(qū)間數(shù)為δ的區(qū)域內(nèi)計(jì)算錯誤概率Perr,ref=Perr,k,ref/Pk|err,ref,與MC的仿真結(jié)果進(jìn)行對比,當(dāng)錯誤概率Perr,ref與MC的仿真結(jié)果之間的相對誤差小于等于10%時,得到可信區(qū)間[V*,V**],當(dāng)相對誤差大于10%時,保持區(qū)域內(nèi)的子區(qū)間數(shù)為δ,增大區(qū)間左右端點(diǎn)的值,重復(fù)步驟(3.3.4)以修正可信區(qū)間[V*,V**];
(3.4)輔助函數(shù)其中β>1,γ=2;Ω為[kmin,L]。
3.根據(jù)權(quán)利要求2所述的一種快速收斂的估計(jì)LDPC碼錯誤概率的方法,其特征在于,所述估計(jì)在SNRobj下噪聲落入V的第k個子區(qū)間且導(dǎo)致譯碼錯誤的概率Perr,k,obj具體為:
(4.1)初始化不包含譯碼的無約束仿真中的控制變量范圍[Vmin,obj,Vmax,obj],子區(qū)間長度ΔV及子區(qū)間的數(shù)目Lobj,具體為,
(4.1.1)將SNRobj下的控制變量范圍[Vmin,obj,Vmax,obj]和子區(qū)間數(shù)目Lobj暫設(shè)定為[0,V**]和1000,子區(qū)間的長度ΔV=(Vmax,obj-Vmin,obj)/Lobj;
(4.1.2)運(yùn)行不包含譯碼的無約束仿真,獲得仿真樣本;
(4.1.3)選取噪聲數(shù)不為零且序號k最小的子區(qū)間對應(yīng)的V值為Vmin,obj,Vmax,obj=V**;
(4.1.4)將[Vmin,obj,Vmax,obj]劃分為Lobj個子區(qū)間,Lobj=(Vmax,obj-Vmin,obj)/ΔV0;
(4.2)運(yùn)行包含譯碼的無約束仿真,估計(jì)Perr,k,obj。
4.根據(jù)權(quán)利要求2所述的一種快速收斂的估計(jì)LDPC碼錯誤概率的方法,其特征在于,所述估計(jì)在SNRobj下導(dǎo)致譯碼錯誤的所有噪聲中,落入V的第k個子區(qū)間的噪聲數(shù)占總數(shù)的條件概率Pk|err,obj具體為:
(5.1)初始化約束仿真中的控制變量范圍[V′min,obj,V′max,obj],子區(qū)間長度ΔV及子區(qū)間的數(shù)目L'obj;具體為,
(5.1.1)將[V′min,obj,V′max,obj]暫設(shè)定為[0,Vmax,obj],即[0,V**],子區(qū)間長度ΔV=ΔV0,運(yùn)行包含譯碼的約束仿真,獲得仿真樣本;
(5.1.2)選取第一個噪聲數(shù)目不等于零的子區(qū)間對應(yīng)的V值為V′min,obj,則控制變量范圍為[V′min,obj,V**];
(5.1.3)計(jì)算L'obj=(V′max,obj-V′min,obj)/ΔV=(V**-V′min,obj)/ΔV0;
(5.2)運(yùn)行約束仿真,估計(jì)Pk|err,obj。
5.根據(jù)權(quán)利要求1所述的一種快速收斂的估計(jì)LDPC碼錯誤概率的方法,其特征在于,所述計(jì)算在SNRobj下的錯誤概率Perr,obj具體為,
在可信區(qū)間內(nèi)計(jì)算平均值
6.根據(jù)權(quán)利要求3所述的一種快速收斂的估計(jì)LDPC碼錯誤概率的方法,其特征在于,步驟(3.2.2)、(4.1.2)中不包含譯碼的無約束仿真具體為,
1)設(shè)定噪聲個數(shù)i=0,迭代次數(shù)j=1,第一次迭代過程中需要的總噪聲數(shù)目為N1,噪聲落入控制變量第k個子區(qū)間的概率其中1≤k≤L;
2)選取一個導(dǎo)致譯碼器出現(xiàn)判決錯誤的噪聲z0,i增1;
3)采用Metropolis算法生成一個新的噪聲,i增1;
4)計(jì)算新的噪聲落入的控制變量子區(qū)間k,k內(nèi)的噪聲數(shù)增1;
5)若i<N1,重復(fù)步驟3)~5);否則,執(zhí)行步驟6);
6)采用Berg遞歸公式計(jì)算
7)若輸出否則,i=0,j增1,下一次迭代過程中的總樣本數(shù)等于本次迭代中總樣本數(shù)的1.3倍,重復(fù)步驟2)至7),直至輸出
7.根據(jù)權(quán)利要求2所述的一種快速收斂的估計(jì)LDPC碼錯誤概率的方法,其特征在于,步驟(3.2)中包含譯碼的無約束仿真具體為,
1)設(shè)定噪聲個數(shù)i=0,迭代次數(shù)j=1,迭代過程中需要的總噪聲數(shù)目為N1和N′1,第一次迭代中Ω=[kmin,L];
2)選取一個導(dǎo)致譯碼器出現(xiàn)判決錯誤的噪聲z0,i增1;
3)采用Metropolis算法生成一個新的噪聲,i增1;
4)計(jì)算新的噪聲落入控制變量的子區(qū)間號k,k內(nèi)的噪聲數(shù)增1;
5)將新的噪聲加在全零碼字上,送入LDPC譯碼器;若譯碼器輸出端的錯誤碼字?jǐn)?shù)為1,第k個子區(qū)間內(nèi)的錯誤幀數(shù)增1;若譯碼器輸出端的錯誤碼字?jǐn)?shù)為0,第k個子區(qū)間內(nèi)的錯誤幀數(shù)不變;
6)若i<N1,重復(fù)步驟3)~6)直至不滿足判斷條件;否則,執(zhí)行步驟7);
7)采用Berg遞歸公式計(jì)算
8)若計(jì)算Ω區(qū)域內(nèi)的概率和j增1,執(zhí)行步驟9);否則,i=0,j增1,重復(fù)步驟2)~8),直至執(zhí)行步驟9);
9)采用Metropolis算法從引入了輔助函數(shù)之后的偏置分布中抽取一個新的噪聲,i增1;計(jì)算新的噪聲落入的控制變量的區(qū)間號k,k內(nèi)的噪聲數(shù)增1;
10)將新的噪聲加在全零的LDPC碼字上,送入譯碼器進(jìn)行判決;若新的噪聲導(dǎo)致譯碼器出現(xiàn)判決錯誤,k內(nèi)的錯誤幀數(shù)增1;若未導(dǎo)致錯誤,k內(nèi)的錯誤幀數(shù)不變;
11)若i<N′1,重復(fù)步驟9)~11),直至判斷條件成立,執(zhí)行步驟12);否則,執(zhí)行步驟12);
12)采用Berg遞歸公式計(jì)算進(jìn)一步計(jì)算
13)若輸出并計(jì)算Perr|k;否則,i=0,j增1,重復(fù)步驟9)~13),直到Ω區(qū)域內(nèi)的Pk估計(jì)值收斂,輸出并計(jì)算Perr|k;
14)計(jì)算Perr,k=PkPerr|k。
8.根據(jù)權(quán)利要求4所述的一種快速收斂的估計(jì)LDPC碼錯誤概率的方法,其特征在于,所述的步驟(3.3.1)、(5.1)、(5.2)中約束仿真具體為,
1)設(shè)定噪聲個數(shù)i=0,迭代次數(shù)j=1,迭代過程中需要的總噪聲數(shù)目為N2和N'2,第一次迭代中Ω=[kmin,L'];
2)選取一個導(dǎo)致譯碼器出現(xiàn)判決錯誤的噪聲z0,i增1;
3)采用修改后的Metropolis算法生成一個新的噪聲,i增1;
4)計(jì)算新的噪聲落入控制變量的子區(qū)間號k,k內(nèi)的噪聲數(shù)增1;
5)若i<N2,重復(fù)步驟3)~5)直至該判斷條件不成立;否則,執(zhí)行步驟6);若判斷條件成立;
6)采用Berg遞歸公式計(jì)算
7)若計(jì)算Ω區(qū)域內(nèi)的概率和i=0,j增1,執(zhí)行步驟8);否則,i=0,j增1,重復(fù)步驟2)~7),直至滿足執(zhí)行步驟8);
8)采用修改后的Metropolis算法從引入了輔助函數(shù)之后的偏置分布中抽取一個新的噪聲,i增1;計(jì)算新的噪聲落入的控制變量的區(qū)間號k,k內(nèi)的噪聲數(shù)增1;
9)若i<N'2,重復(fù)步驟8)~9),直至i=N'2,執(zhí)行步驟10);否則,執(zhí)行步驟10);
10)采用Berg遞歸公式計(jì)算進(jìn)一步計(jì)算
11)若輸出并計(jì)算Pk|err;否則,i=0,j增1,重復(fù)步驟8)~11),直到Ω區(qū)域內(nèi)的Pk|err估計(jì)值收斂,輸出并計(jì)算Pk|err。
9.根據(jù)權(quán)利要求8所述的一種快速收斂的估計(jì)LDPC碼錯誤概率的方法,其特征在于,所述的步驟3)修改后的Metropolis算法具體為:
1)提取噪聲個數(shù)i,迭代次數(shù)j,噪聲z*,(i),表示噪聲維數(shù)的l=1;
2)令噪聲的第l維分量的下一個可能狀態(tài)其中,ε2為最大步長因子,調(diào)整ε2使得每一次迭代過程中被接受的狀態(tài)數(shù)目除以總的狀態(tài)數(shù)目接近0.234,Δz~N(0,σ2);
3)產(chǎn)生兩個服從U(0,1)均勻分布的隨機(jī)數(shù)α1與α2,判斷
4)若l等于碼長n,得到下一個可能的狀態(tài)執(zhí)行步驟5);否則,l增1,重復(fù)步驟2)~4),直至滿足條件l=n,執(zhí)行步驟5);
5)計(jì)算與
6)判斷E表示能夠?qū)е伦g碼器出現(xiàn)判決錯誤的噪聲的集合;
7)輸出z*,(i+1)。