胡巖,張為,王令宇,王旸
(天津大學(xué)微電子學(xué)院,300072,天津)
差錯(cuò)控制編碼是使用信道編譯碼技術(shù)對(duì)信道噪聲產(chǎn)生的錯(cuò)誤進(jìn)行控制糾正以提高數(shù)字信息傳輸準(zhǔn)確性的基本方法,目前廣泛應(yīng)用的差錯(cuò)控制編碼主要有Turbo碼、低密度奇偶校驗(yàn)碼、極化碼和里德-所羅門(mén)(Reed-Solomon,RS)碼[1]等,其中RS碼因其能夠糾正隨機(jī)錯(cuò)誤和突發(fā)錯(cuò)誤的特性而被廣泛應(yīng)用。RS碼的譯碼算法直接決定了信息傳輸?shù)臏?zhǔn)確性,目前,RS譯碼算法主要分為兩種,分別是硬判決譯碼(hard decision decoding,HDD)[2]和代數(shù)軟判決譯碼(algebraic soft decoding,ASD)[3],相比較于HDD,ASD譯碼算法能夠獲得更加顯著的譯碼增益和更好的譯碼性能,軟判決譯碼算法中,低復(fù)雜度蔡斯(low-complexity chase,LCC)[4]算法因?yàn)槠渲財(cái)?shù)為1、計(jì)算簡(jiǎn)單而得到廣泛研究。
近幾年來(lái),高速數(shù)字通信系統(tǒng)中隨機(jī)錯(cuò)誤譯碼算法取得了很多突破性的進(jìn)展[5],然而,突發(fā)錯(cuò)誤譯碼算法的研究仍然被復(fù)雜的計(jì)算和結(jié)構(gòu)所限制。最近,有研究者提出了新的糾正突發(fā)錯(cuò)誤的譯碼算法并取得了廣泛的關(guān)注[6-9],其中,改進(jìn)于突發(fā)錯(cuò)誤糾正(burst-error correction, BC)算法[6]的新型無(wú)逆突發(fā)錯(cuò)誤糾正(reformulated inversionless BC, RiBC)[7]算法已經(jīng)取得實(shí)際應(yīng)用,但該算法為硬判決譯碼算法,沒(méi)有充分利用信道軟信息,譯碼復(fù)雜度高;改進(jìn)于基于硬判決的LCC(HDD-LCC)算法[10]與RiBC的BCHDD-LCC算法[11]將突發(fā)錯(cuò)誤譯碼和隨機(jī)錯(cuò)誤譯碼相融合,取得了更好的譯碼性能,但該算法中采用的信道模型不能完成對(duì)隨機(jī)錯(cuò)誤信道與突發(fā)錯(cuò)誤信道的識(shí)別,此外,采用的突發(fā)錯(cuò)誤預(yù)判斷機(jī)制缺乏理論依據(jù),且對(duì)突發(fā)錯(cuò)誤位置的判斷范圍較大,準(zhǔn)確度差。
為解決上述問(wèn)題,從信道中獲取突發(fā)錯(cuò)誤軟信息并且將突發(fā)錯(cuò)誤信道與隨機(jī)錯(cuò)誤信道相結(jié)合,實(shí)現(xiàn)兩種信道的識(shí)別和轉(zhuǎn)換以便更加有針對(duì)性地進(jìn)行譯碼,本文提出了一種新的混合信道模型,從該模型出發(fā)提出了基于突發(fā)錯(cuò)誤檢測(cè)的新型重?cái)?shù)分配(BD-RCMA)算法,通過(guò)在傳統(tǒng)RS碼軟判決獲得的信道軟信息中,充分挖掘符號(hào)中各子碼的電平信息,獲取突發(fā)錯(cuò)誤的準(zhǔn)確位置,降低后續(xù)譯碼的迭代次數(shù),充分發(fā)揮RS碼糾正突發(fā)錯(cuò)誤的能力。與現(xiàn)有算法相比,該算法能夠顯著提高突發(fā)錯(cuò)誤信道下的譯碼性能。
隨機(jī)噪聲指的是通信系統(tǒng)中的加性白噪聲,而突發(fā)噪聲通常由脈沖干擾和多徑衰落的原因引入。經(jīng)隨機(jī)噪聲與突發(fā)噪聲干擾的RS碼編譯碼的數(shù)字通信系統(tǒng)框圖如圖1所示。圖1中的數(shù)字信道由隨機(jī)噪聲源ng(n)和突發(fā)噪聲源nb(n)組成。對(duì)于RS(n,k)碼,n=2q-1,一個(gè)編碼后的RS碼符號(hào)由q個(gè)子碼組成,因此信息傳輸?shù)幕締卧亲哟a而非編碼后的符號(hào)。對(duì)于子碼進(jìn)行研究,可以在僅增加少量計(jì)算量的條件下更好地反映信道噪聲對(duì)電平的作用與影響,因此本文以子碼作為研究信道噪聲的基本單元,突發(fā)錯(cuò)誤是指由突發(fā)噪聲脈沖干擾造成的的連續(xù)子碼錯(cuò)誤。為簡(jiǎn)化模型建立,首先做幾點(diǎn)合理性假設(shè):
(2)突發(fā)噪聲脈沖到來(lái)的概率為泊松分布,泊松到達(dá)率為τ[12];
(3)突發(fā)噪聲脈沖具有固定長(zhǎng)度其造成的突發(fā)錯(cuò)誤所包含的子碼數(shù)量為L(zhǎng)[13]。
圖1 有噪聲干擾的RS碼數(shù)字通信系統(tǒng)框圖
(1)
(2)
假設(shè)在1 s內(nèi)通過(guò)方差為σ2的加性高斯白噪聲(AWGN)信道傳輸f個(gè)子碼,則譯碼器在1 s內(nèi)收到的子碼序列為x=[x1,x2,…,xf],且期望E(x)=0,方差D(x)=E(x2)=σ2,該子碼序列的能量E為每一個(gè)子碼的電平的平方和
(3)
由此可得
(4)
(5)
(6)
式中:Eg、Eb與Ec分別為受隨機(jī)噪聲ng(n)、突發(fā)噪聲nb(n)與信道噪聲nc(n)干擾后的子碼的能量。由于信息發(fā)送端發(fā)送功率保持不變,因此在給定信道信噪比RSN的條件下,信道的噪聲能量為常數(shù),從而有
(7)
則突發(fā)噪聲的能量越大,隨機(jī)噪聲的能量就越小,據(jù)此定義信道噪聲占比參數(shù)
(8)
參數(shù)ψ反映了在信道噪聲中突發(fā)噪聲的占比情況,仿真給出了當(dāng)RSN=5,ψ=0.2~1.0時(shí),信道中突發(fā)噪聲與隨機(jī)噪聲的干擾造成的子碼電平波動(dòng)如圖2所示。從圖2可以發(fā)現(xiàn),當(dāng)ψ≥0.4時(shí),受突發(fā)噪聲干擾的子碼電平值通常是受隨機(jī)噪聲干擾的子碼電平值的3倍或更多,此時(shí),子碼錯(cuò)誤通常成串出現(xiàn),所以通過(guò)參數(shù)ψ來(lái)區(qū)分信道狀態(tài)。當(dāng)ψ≥0.4時(shí),信道被認(rèn)為是突發(fā)錯(cuò)誤信道,此時(shí)引入馬爾科夫轉(zhuǎn)狀態(tài)移鏈(MC)模型[11]來(lái)描述錯(cuò)誤內(nèi)部特性,反之則認(rèn)為是隨機(jī)錯(cuò)誤信道,用AWGN信道進(jìn)行描述。
圖2 信道傳輸后的子碼電平
當(dāng)ψ≥0.4時(shí),為了描述突發(fā)錯(cuò)誤內(nèi)部特性,引入MC模型[11]描述突發(fā)錯(cuò)誤的記憶特性,模型如圖3所示。由于突發(fā)噪聲所能干擾的子碼數(shù)為L(zhǎng),因此MC模型有L+1個(gè)狀態(tài),每一次狀態(tài)轉(zhuǎn)移對(duì)應(yīng)每一個(gè)子碼到來(lái)。
圖3 馬爾科夫狀態(tài)轉(zhuǎn)移鏈模型
新型混合信道模型實(shí)現(xiàn)了隨機(jī)錯(cuò)誤信道與突發(fā)錯(cuò)誤信道的一體化建模,并通過(guò)噪聲占比參數(shù)實(shí)現(xiàn)了2種信道的識(shí)別與轉(zhuǎn)換方式,根據(jù)信道下譯碼方式的相似性實(shí)現(xiàn)譯碼算法的結(jié)合和譯碼器結(jié)構(gòu)的復(fù)用,相較于傳統(tǒng)的隨機(jī)錯(cuò)誤信道或突發(fā)錯(cuò)誤信道單一建模的方式更加接近實(shí)際信道隨機(jī)噪聲與突發(fā)噪聲共同存在的環(huán)境,在此新型混合信道下進(jìn)行合理性研究可以充分發(fā)揮RS碼糾正隨機(jī)錯(cuò)誤與突發(fā)錯(cuò)誤的能力,相較于針對(duì)單一高斯分布隨機(jī)錯(cuò)誤[14]或突發(fā)錯(cuò)誤的譯碼方式具有更加優(yōu)異的性能。
在RS(n,k)碼譯碼條件下,RCMA算法[15]的偽代碼如下。
1 Input:接收電平ri,k與插值點(diǎn)個(gè)數(shù)η;
2 對(duì)于每一個(gè)符號(hào)i(0≤i≤n-1)與其第t(0≤t≤q-1)個(gè)子碼,計(jì)算
4 fori=0:n-1
5 begin
10 end
11 Output:2η個(gè)測(cè)試向量。
該算法經(jīng)過(guò)理論推導(dǎo)得到結(jié)論:符號(hào)的可靠度僅與該符號(hào)內(nèi)電平絕對(duì)值最小的子碼有關(guān),即
(9)
式中:Γi為第i個(gè)符號(hào)的可靠度;|ri,k|為第i個(gè)符號(hào)第k個(gè)子碼接收電平的絕對(duì)值,|ri,k|越小,則Γi越大,該符號(hào)越不可靠。
BCHDD-LCC譯碼算法由重?cái)?shù)分配(MA)、校驗(yàn)子計(jì)算(SC)、校驗(yàn)子更新(SU)、關(guān)鍵方程求解(KES)、多項(xiàng)式選擇(PS)、錢(qián)搜索和福尼算法(CSFA)6個(gè)模塊組成。該算法是通過(guò)將KES模塊中求解隨機(jī)錯(cuò)誤的RiBM算法與求解突發(fā)錯(cuò)誤的RiBC算法相結(jié)合,通過(guò)2種算法迭代的相似性復(fù)用譯碼器單元,從而實(shí)現(xiàn)對(duì)信道中產(chǎn)生的隨機(jī)錯(cuò)誤與突發(fā)錯(cuò)誤進(jìn)行糾正。該算法產(chǎn)生2個(gè)關(guān)于突發(fā)錯(cuò)誤的信號(hào)變量b和p,分別表示是否有突發(fā)錯(cuò)誤產(chǎn)生以及突發(fā)錯(cuò)誤的大致位置。若b為1,代表有突發(fā)錯(cuò)誤產(chǎn)生,則采用RiBC算法進(jìn)行關(guān)鍵方程求解,反之采用RiBM算法求解。RiBC算法只在產(chǎn)生突發(fā)錯(cuò)誤并且突發(fā)錯(cuò)誤所包含的子碼數(shù)在碼字糾錯(cuò)范圍內(nèi)時(shí)應(yīng)用,而在其他情況下則使用求解隨機(jī)錯(cuò)誤下關(guān)鍵方程的RiBM算法。
在采用RiBC算法糾正突發(fā)錯(cuò)誤時(shí),需要對(duì)突發(fā)錯(cuò)誤位置進(jìn)行預(yù)判斷,用b進(jìn)行記錄并作為RiBC算法的輸入,這將在MA模塊中進(jìn)行。MA模塊為后續(xù)模塊提供插值點(diǎn)和突發(fā)錯(cuò)誤位置信息,BCHDD-LCC譯碼器中采用的獲取插值點(diǎn)的算法是RCMA算法,而獲取突發(fā)錯(cuò)誤位置的方法是根據(jù)經(jīng)驗(yàn)確定一個(gè)閾值,使得隨機(jī)錯(cuò)誤位置處的電平在該閾值以下,而突發(fā)錯(cuò)誤位置處的電平在該閾值以上,并據(jù)此給出突發(fā)錯(cuò)誤位置信息。
由于BCHDD-LCC譯碼算法中獲取突發(fā)錯(cuò)誤位置的經(jīng)驗(yàn)閾值方法缺少一定的理論基礎(chǔ),對(duì)于突發(fā)噪聲下頻繁變動(dòng)的子碼電平很難給出準(zhǔn)確的突發(fā)錯(cuò)誤位置信息,因此本文提出基于突發(fā)錯(cuò)誤檢測(cè)的新型重?cái)?shù)分配算法,將獲取插值點(diǎn)與突發(fā)錯(cuò)誤位置統(tǒng)一于重?cái)?shù)分配算法中,在提高算法性能的同時(shí)降低運(yùn)算復(fù)雜度。
由圖1可知,隨機(jī)噪聲與突發(fā)噪聲將導(dǎo)致子碼電平產(chǎn)生不同的波動(dòng),突發(fā)錯(cuò)誤信道下突發(fā)噪聲的影響較大,導(dǎo)致子碼電平的波動(dòng)較大,且通常為連續(xù)波動(dòng),而隨機(jī)噪聲對(duì)子碼電平波動(dòng)的影響較小,因此可根據(jù)符號(hào)內(nèi)子碼電平的波動(dòng)情況獲取突發(fā)錯(cuò)誤位置。符號(hào)內(nèi)子碼電平波動(dòng)越大即電平絕對(duì)值越大,則該符號(hào)越有可能處于突發(fā)錯(cuò)誤狀態(tài)。用|ri,l|表示第i個(gè)符號(hào)的第l個(gè)子碼接收電平的絕對(duì)值,該子碼為該符號(hào)內(nèi)接收電平絕對(duì)值最大的子碼。類(lèi)似于符號(hào)可靠度,定義突發(fā)錯(cuò)誤狀態(tài)的可能性即突發(fā)度為
(10)
由式(10)可知,|ri,l|越大,Bi越小,該符號(hào)越有可能為突發(fā)錯(cuò)誤位置。
(11)
式中:κTH=max{|μ-3σc|,|μ+3σc|}對(duì)于第i個(gè)符號(hào),若|ri,l|≥κTH,即Bi≤BTH,該符號(hào)為突發(fā)錯(cuò)誤位置,反之則為隨機(jī)錯(cuò)誤位置。綜上,BD-RCMA算法的偽代碼如下:
1 Input:子碼接收電平ri,k與插值點(diǎn)個(gè)數(shù)η;
2 對(duì)于每一個(gè)符號(hào)i(0≤i≤n-1)與其第k個(gè)子碼(0≤k≤q-1),計(jì)算:
突發(fā)閾值κTH=max{|μ-3σ2|,|μ+3σ2|};
4 fori=0:n-1
5 begin
然而,作為一名大學(xué)教師,筆者感到當(dāng)代大學(xué)生家庭感恩教育和社會(huì)感恩教育的缺乏和不成功,由此在大學(xué)階段進(jìn)行感恩教育更加必要。
10 ifκi>κTH
12 end
BD-RCMA算法的輸入同RCMA算法,對(duì)于每一個(gè)符號(hào)i以及它的第k個(gè)子碼,在RCMA基礎(chǔ)上計(jì)算該符號(hào)內(nèi)子碼電平絕對(duì)值的最大值κi與突發(fā)閾值κTH,如果κi≥κTH,則i為突發(fā)錯(cuò)誤位置,反之則不是。BD-RCMA算法在獲取插值點(diǎn)的同時(shí)更精確地獲取突發(fā)錯(cuò)誤位置信息,最后輸出突發(fā)錯(cuò)誤位置信息到KES模塊進(jìn)行突發(fā)錯(cuò)誤譯碼。
由于BD-RCMA與RCMA算法具有相似性,因此可以在RCMA的硬件實(shí)現(xiàn)基礎(chǔ)上增加突發(fā)錯(cuò)誤檢測(cè)模塊(burst detection module,BD)來(lái)追蹤突發(fā)錯(cuò)誤的位置信息。BD模塊的電路結(jié)構(gòu)如圖4所示。
圖4 BD模塊的電路結(jié)構(gòu)
本文BD-RCMA算法可以與校驗(yàn)子計(jì)算(SC)模塊同時(shí)工作,而后續(xù)的校驗(yàn)子更新(SU)、關(guān)鍵方程求解(KES)、錢(qián)搜索與福尼算法(CSFA)等模塊則是采用BCHDD-LCC譯碼器的串行流水線(xiàn)結(jié)構(gòu)。將BD-RCMA模塊應(yīng)用在BCHDD-LCC譯碼器架構(gòu)中,得到如圖5所示的BD-BCHDD-LCC譯碼器,采用該譯碼器對(duì)RS(255,239)碼進(jìn)行譯碼,在η=3條件下采用Verilog HDL語(yǔ)言進(jìn)行建模,并采用SMIC 0.13 μm工藝下的Design Compiler進(jìn)行綜合,得到該譯碼器的總面積為0.49 mm2(47 050個(gè)異或門(mén)),最大頻率為143 MHz,由此計(jì)算得到該譯碼器的吞吐率為1.14 Gbit/s。
圖5 BD-BCHDD-LCC譯碼器流水線(xiàn)架構(gòu)
混合信道模型由隨機(jī)噪聲方差、突發(fā)噪聲方差、突發(fā)脈沖的泊松到達(dá)率與突發(fā)錯(cuò)誤包含的子碼數(shù)這4個(gè)參數(shù)唯一確定。
(a)L=65 bit
(b)L=71 bit圖6 5種譯碼算法對(duì)RS(255,239)碼的仿真結(jié)果
在上述混合信道模型下,設(shè)置信道總信噪比為5~9 dB,設(shè)置突發(fā)噪聲方差為10倍隨機(jī)噪聲方差,突發(fā)脈沖的泊松到達(dá)率可由泊松分布公式唯一確定。仿真實(shí)驗(yàn)分析表明,對(duì)于RS(255,239)碼,當(dāng)突發(fā)錯(cuò)誤包含的子碼的數(shù)量大于RS碼的糾錯(cuò)半徑64時(shí),RiBM算法與RiBC算法的譯碼性能開(kāi)始產(chǎn)生較大差異。因此,在64到RiBC算法的譯碼數(shù)量極限之內(nèi)選取L=65與L=71進(jìn)行仿真分析,計(jì)算得到噪聲占比參數(shù)ψ大于突發(fā)信道閾值,仿真信道狀態(tài)為突發(fā)錯(cuò)誤信道。每組環(huán)境下設(shè)置10 000次差異信息作為數(shù)據(jù)輸入,經(jīng)仿真實(shí)驗(yàn)得到誤幀率與信噪比的關(guān)系如圖6所示。由圖6可以看出,當(dāng)信道信噪比一定時(shí),BD-BCHDD-LCC譯碼器的譯碼性能要好于原始BCHDD-LCC譯碼器以及傳統(tǒng)的針對(duì)隨機(jī)錯(cuò)誤的RS碼譯碼器。當(dāng)突發(fā)錯(cuò)誤包含的子碼數(shù)增加時(shí),采用BD-RCMA算法的譯碼性能要更好,這是因?yàn)橥话l(fā)錯(cuò)誤所包含的子碼數(shù)越多,則BD-RCMA算法根據(jù)電平信息提取突發(fā)錯(cuò)誤位置的效果就越好,而原始BCHDD-LCC算法對(duì)于突發(fā)錯(cuò)誤位置的判斷越不準(zhǔn)確,誤碼率也就越高。
論文提出了一種結(jié)合隨機(jī)錯(cuò)誤信道與突發(fā)錯(cuò)誤信道的新型突發(fā)錯(cuò)誤信道,基于該信道中所傳輸?shù)淖哟a的電平特性提出了基于突發(fā)錯(cuò)誤檢測(cè)的重?cái)?shù)分配算法——BD-RCMA,采用該算法可以在獲取信息可靠度的同時(shí)精確地定位突發(fā)錯(cuò)誤的位置。對(duì)該算法采用硬件電路實(shí)現(xiàn)并應(yīng)用在BCHDD-LCC譯碼器架構(gòu)中,仿真結(jié)果表明,采用BD-RCMA算法的譯碼器可顯著提高該譯碼器糾正突發(fā)錯(cuò)誤的性能。
[1] REED G, SOLOMON I. Polynomial codes over certain finite fields [J]. Society for Industrial and Applied Mathematics, 1960, 8(2): 300-304.
[2] SARWATE D V, SHANBHAG N R. High-speed architectures for Reed-Solomon decoders [J]. Very Large Scale Integration Systems IEEE Transactions on, 2001, 9(5): 641-655.
[3] LI X, ZHANG W, LIU Y. Efficient architecture for algebraic soft-decision decoding of Reed-Solomon codes [J]. Communications IET, 2014, 9(1): 10-16.
[4] BELLOADO J, KAVCIC A. A low-complexity method for chase-type decoding of Reed-Solomon codes [C]∥IEEE International Symposium on Information Theory. Piscataway, NJ, USA: IEEE, 2006: 2037-2041.
[5] 白婷婷. 高速通信系統(tǒng)中RS編解碼的應(yīng)用 [J]. 電子測(cè)試, 2015(23): 57-59. BAI Tingting. Application of RS code in high speed communication system [J]. Electronic Test, 2015(23): 57-59.
[6] YIN L, LU J, LETAIEF K B, et al. Burst-error-correcting algorithm for Reed-Solomon codes [J]. Electronics Letters, 2001, 37(11): 695-697.
[7] WU Yingquan. Novel burst error correction algorithms for Reed-Solomon codes [J]. IEEE Transactions on Information Theory, 2012, 58(2): 519-529.
[8] 季文潔. 可重構(gòu)的環(huán)境自適應(yīng)RS碼軟判決譯碼器設(shè)計(jì) [D]. 天津: 天津大學(xué), 2015: 47-53.
[9] WU Yingquan. New scalable decoder architectures for Reed-Solomon codes [J]. IEEE Transactions on Communications, 2015, 63(8): 2741-2761.
[10]張為, 潘博陽(yáng), 王皓. 一種基于LCC算法的新型RS碼譯碼器 [J]. 北京理工大學(xué)學(xué)報(bào), 2013, 33(3): 276-279. ZHANG Wei, PAN Boyang, WANG Hao. A novel RS decoder based on LCC algorithm [J]. Transactions of Beijing Institute of Technology, 2013, 33(3): 276-279.
[11]WANG Lingyu, ZHANG Wei, WANG Yang, et al. Multiple channel error-correction algorithms for LCC decoding of Reed-Solomon codes and its high-speed architecture design [J]. IET Communications, 2017, 11(9): 1407-1415.
[12]HAN Gang, LU Jia, WANG Junhui, et al. MIM: A new class of hybrid channel error model [C]∥IEEE Third International Conference on Information Science and Technology. Piscataway, NJ, USA: IEEE, 2013: 1182-1185.
[13]BERMAN T, FREEDMAN J. Non-interleaved Reed-Solomon coding over a bursty channel [C]∥Military Communications Conference. Piscataway, NJ, USA: IEEE, 1992(2): 580-583.
[14]FOSSORIER M. Gaussian elimination decoding of error correcting Reed-Solomon codes in steps and complexity [J]. IEEE Communications Letters, 2015, 19(7): 1101-1104.
[15]PENG Xingru. Reduced-complexity multiplicity assignment algorithm and architecture for low-complexity chase decoder of Reed-Solomon codes [J]. IEEE Communications Letters, 2015, 19(11): 1-4.