余 蕾,黃 河
(96901部隊(duì)26分隊(duì),北京,100085)
當(dāng)前常規(guī)的迭代均衡算法,接收數(shù)據(jù)均衡后若譯碼結(jié)果錯(cuò)誤,則需對(duì)譯碼結(jié)果重新進(jìn)行編碼、調(diào)制、加擾,與訓(xùn)練序列按照發(fā)送數(shù)據(jù)的幀結(jié)構(gòu)組合,作為已知數(shù)據(jù)重新對(duì)接收數(shù)據(jù)進(jìn)行信道估計(jì),得到更加可靠的信道估計(jì)值,利用該信道估計(jì)值重新對(duì)接收數(shù)據(jù)進(jìn)行均衡[1]。該算法利用第一次譯碼軟判決的糾錯(cuò)增益,提高信道估計(jì)的性能,進(jìn)而提高接收性能。本文先具體介紹當(dāng)前迭代均衡算法思想及實(shí)施步驟,然后在原有算法基礎(chǔ)上進(jìn)行優(yōu)化并給出仿真結(jié)果。
本文中的迭代[3]均衡算法應(yīng)用的數(shù)據(jù)結(jié)構(gòu)為信息頭+N包數(shù)據(jù),其中每一包數(shù)據(jù)中包含M個(gè)子幀,每個(gè)子幀由未知數(shù)據(jù)和已知數(shù)據(jù)組成,未知數(shù)據(jù)就是該數(shù)據(jù)包發(fā)送的原始信息比特經(jīng)過編碼、調(diào)制、加擾后的符號(hào),依次填入M個(gè)子幀中;信息頭包含TLC/AGC序列和同步頭等,由于本文只用到信息頭的信道估計(jì)結(jié)果,因此數(shù)據(jù)前面統(tǒng)一以信息頭代替。數(shù)據(jù)結(jié)構(gòu)[2]如圖1所示。
迭代均衡算法主要思想是:利用第一次譯碼軟判決的糾錯(cuò)增益,提高信道估計(jì)的性能。每包數(shù)據(jù)第一次譯碼錯(cuò)誤后,將第一次譯碼結(jié)果重新編碼、調(diào)制、加擾,作為已知數(shù)據(jù)與接收數(shù)據(jù)再次進(jìn)行信道估計(jì),然后重新對(duì)當(dāng)前數(shù)據(jù)包進(jìn)行均衡譯碼。第一次譯碼雖然錯(cuò)誤,但譯碼采用軟判決具有一定糾錯(cuò)能力,較之前的硬判決會(huì)提高正確性。
迭代均衡算法具體步驟如下。
第1步,若為第一包數(shù)據(jù),利用信息頭進(jìn)行RLS迭代計(jì)算得到的信道估計(jì),若為第二包及后面的每一包數(shù)據(jù),則利用前一包數(shù)據(jù)的最后一幀進(jìn)行RLS迭代計(jì)算得到的信道估計(jì),對(duì)第一幀數(shù)據(jù)進(jìn)行均衡。
第2步,均衡后的數(shù)據(jù)進(jìn)行RLS迭代得到新的信道估計(jì),并對(duì)本幀數(shù)據(jù)尾部1/2數(shù)據(jù)重新進(jìn)行均衡。
第3步,利用第2步得到的信道估計(jì)值對(duì)第2幀數(shù)據(jù)進(jìn)行均衡,然后對(duì)第二幀數(shù)據(jù)重復(fù)步驟2。
第4步,從第3幀到本數(shù)據(jù)包最后一幀重復(fù)第2幀的過程。
第5步,M幀數(shù)據(jù)聯(lián)合譯碼。
第6步,若CRC校驗(yàn)正確或CRC校驗(yàn)錯(cuò)誤但當(dāng)前數(shù)據(jù)包的檢測(cè)次數(shù)達(dá)到2次,則當(dāng)前包檢測(cè)結(jié)束,檢測(cè)下一包數(shù)據(jù);否則,轉(zhuǎn)到步驟7。
圖1 數(shù)據(jù)結(jié)構(gòu)
第7步,若CRC校驗(yàn)錯(cuò)誤,且本包數(shù)據(jù)檢測(cè)次數(shù)小于2,則利用本次譯碼的結(jié)果重新對(duì)本包數(shù)據(jù)進(jìn)行檢測(cè);第2次檢測(cè)時(shí),在步驟4RLS迭代采用第一次檢測(cè)的譯碼結(jié)果作為已知數(shù)據(jù)進(jìn)行迭代。
其中迭代次數(shù)通常為1次,多次迭代的效果不大,所以只取1次迭代的結(jié)果。
本文針對(duì)原有的迭代均衡算法,從復(fù)雜度和性能兩個(gè)角度分別進(jìn)行優(yōu)化。
由章節(jié)1.2迭代均衡算法流程可知,每個(gè)子幀數(shù)據(jù)均衡后,會(huì)進(jìn)行判決,重新編碼調(diào)制,進(jìn)行RLS信道估計(jì),該信道估計(jì)值用于下一幀數(shù)據(jù)的均衡;原算法每個(gè)符號(hào)都會(huì)調(diào)用RLS模塊進(jìn)行信道迭代。為降低復(fù)雜度,優(yōu)化只利用每個(gè)子幀尾部的部分符號(hào)進(jìn)行RLS迭代,可取子幀尾部的1/2或1/3或其他長度數(shù)據(jù)(長度要超過已知數(shù)據(jù)長度),即利用重新編碼后的未知數(shù)據(jù)尾部的部分符號(hào)和已知數(shù)據(jù)符號(hào)進(jìn)行RLS迭代,原波形與新波形RLS迭代流程如圖2所示。
由章節(jié)1.2均衡迭代流程可知,當(dāng)?shù)谝淮螜z測(cè)CRC錯(cuò)誤時(shí),會(huì)進(jìn)行第二次檢測(cè),第二次檢測(cè)RLS算法模塊以及RLS模塊的調(diào)用頻率一致,因此,新波形與原波形RLS算法復(fù)雜度總結(jié)如下。
數(shù)據(jù)包只檢測(cè)一次時(shí):新波形RLS算法復(fù)雜度是原波形算法的1/n。
數(shù)據(jù)包檢測(cè)二次時(shí):新波形RLS算法復(fù)雜度是原波形算法的2/n。
在降低復(fù)雜度的同時(shí),算法的性能也略有所降。因此在實(shí)際情況中,可綜合信道情況以及性能要求考慮復(fù)雜度的降低,適當(dāng)調(diào)整n值。
原算法在第一次CRC校驗(yàn)失敗后,利用第一次譯碼輸出的數(shù)據(jù)重新編碼、調(diào)制、加擾,更新迭代信道估計(jì),即進(jìn)行第二次迭代。由于每一個(gè)數(shù)據(jù)包分為M幀,后面M-1幀都是按照第一次迭代的譯碼輸出重新信道估計(jì)進(jìn)行均衡,但第一幀還是按照上一數(shù)據(jù)包的信道估計(jì)進(jìn)行均衡的(準(zhǔn)確說是第一幀的前半幀,因?yàn)楹蟀霂€會(huì)利用第一次譯碼輸出的數(shù)據(jù)結(jié)果進(jìn)行RLS迭代得到新的信道估計(jì)重新進(jìn)行均衡,即利用了第一次譯碼結(jié)果),即與第一次迭代采用的相同信道估計(jì),相當(dāng)于還是第一次迭代,并沒有利用上一幀第一次迭代的譯碼結(jié)果信道估計(jì)。針對(duì)第一幀的這種情況,在第二次迭代之前增加一個(gè)模塊:用緩存器保存上一數(shù)據(jù)包的信道譯碼結(jié)果以及上一數(shù)據(jù)包倒數(shù)第2幀末尾迭代信道估計(jì)值。若當(dāng)前數(shù)據(jù)包CRC正確,則清除緩存器中上一包數(shù)據(jù)的譯碼數(shù)據(jù),并將當(dāng)前信道譯碼數(shù)據(jù)存入緩存器,再繼續(xù)處理下一數(shù)據(jù)包;若當(dāng)前數(shù)據(jù)包CRC錯(cuò)誤,需要二次迭代,則將保存的上一數(shù)據(jù)包倒數(shù)第2幀末尾迭代信道估計(jì)值作為初始值,用緩存器中上一數(shù)據(jù)包的信道譯碼結(jié)果重新進(jìn)行編碼、調(diào)制、加擾,取最后一幀的數(shù)據(jù)(相當(dāng)于本次第一幀的前一幀數(shù)據(jù))重新迭代計(jì)算新的信道估計(jì)值。這樣,每一個(gè)數(shù)據(jù)包的第一幀數(shù)據(jù)就和后面幀的數(shù)據(jù)一樣進(jìn)行了第二次迭代。注意第一個(gè)數(shù)據(jù)包的第一幀數(shù)據(jù)不需要做此操作,因?yàn)榈谝粋€(gè)數(shù)據(jù)包前面的信息頭是已知數(shù)據(jù),因此不需要重復(fù)二次迭代。
優(yōu)化算法流程如圖3所示。
圖4為修改算法與原算法區(qū)別示意圖。
圖2 迭代均衡算法流程
圖3 優(yōu)化迭代均衡算法流程圖
圖4 優(yōu)化算法與原算法區(qū)別示意圖
圖4中,實(shí)線部分是原算法中的CRC迭代:每一包數(shù)據(jù)需要迭代時(shí),第一幀數(shù)據(jù)實(shí)際上沒有進(jìn)行迭代,而是重復(fù)第一次的均衡譯碼過程(因?yàn)槠渚馐褂玫男诺拦烙?jì)與第一次相同),后面的幾幀數(shù)據(jù)都是用本包中前一幀數(shù)據(jù)根據(jù)第一次譯碼結(jié)果重新進(jìn)行信道估計(jì)迭代得到的新的信道估計(jì)進(jìn)行均衡。虛線部分是修改算法后增加的模塊,即每一包數(shù)據(jù)需要迭代時(shí),第一幀數(shù)據(jù)使用上一幀數(shù)據(jù)(即前一包數(shù)據(jù)的最后一幀)的譯碼結(jié)果重新進(jìn)行信道估計(jì)迭代得到的新的信道估計(jì)進(jìn)行均衡。
當(dāng)一包數(shù)據(jù)中分為M幀時(shí),修改后的算法復(fù)雜度為原算法的M/(M-1),即比原算法多了對(duì)一幀數(shù)據(jù)的信道估計(jì)迭代,還有一幀數(shù)據(jù)的編碼、調(diào)制和加擾,以及多了一個(gè)緩存器。但不是每一包數(shù)據(jù)都會(huì)增加復(fù)雜度,僅在第一次CRC校驗(yàn)錯(cuò)誤的數(shù)據(jù)包增加。
根據(jù)章節(jié)2.1和2.2的優(yōu)化算法,本節(jié)將仿真以對(duì)比復(fù)雜度優(yōu)化和性能優(yōu)化后與原算法的性能對(duì)比。仿真信道:AWGN,數(shù)據(jù)包數(shù):1 000。分別仿真了原算法(即圖中原算法-起始位置0)、原算法+降低復(fù)雜度(即圖中原算法-起始位置120)、新算法+降低復(fù)雜度(即圖中優(yōu)化算法-起始位置120)的性能曲線,仿真結(jié)果如圖5所示。
圖5 BER仿真曲線
根據(jù)仿真結(jié)果,對(duì)比原算法與原算法+降低復(fù)雜度可知,降低復(fù)雜度后性能下降并不多,與原算法基本相同。對(duì)比原算法+降低復(fù)雜度與優(yōu)化算法+降低復(fù)雜度可知,優(yōu)化算法性能略有提升,且在信噪比較高時(shí)提升更多。最后綜合對(duì)比優(yōu)化算法+降低復(fù)雜度(優(yōu)化算法-起始位置120)與原算法(原算法-起始位置0)相比,優(yōu)化算法+降低復(fù)雜度整體性能更好。
因此,綜合兩種優(yōu)化算法,可以同時(shí)使用降低復(fù)雜度和性能優(yōu)化的算法,在降低復(fù)雜度的同時(shí),性能還可以有提升。
本文在原有迭代均衡算法基礎(chǔ)上,提出了降低復(fù)雜度和優(yōu)化性能兩種優(yōu)化算法,具體改進(jìn)如下。
(1)通過減少RLS迭代長度降低復(fù)雜度。
(2)通過更新每一個(gè)數(shù)據(jù)包第一幀(除第一包數(shù)據(jù))第二次均衡時(shí)采用的信道估計(jì)值,即采用前一包數(shù)據(jù)最后一個(gè)子幀譯碼結(jié)果重新經(jīng)過編碼、調(diào)制、加擾后再次進(jìn)行的信道估計(jì)值進(jìn)行第二次均衡,彌補(bǔ)了原算法對(duì)數(shù)據(jù)包第一子幀二次均衡仍采用第一次均衡時(shí)的信道估計(jì)值的漏洞。
仿真證明,降低復(fù)雜度對(duì)性能沒有明顯影響,而性能優(yōu)化更適用于信噪比較好的情況。根據(jù)實(shí)際情況和對(duì)復(fù)雜度的要求,可以選擇合適參數(shù)使用文中兩種算法。