深空通信中基于四級(jí)流水線的高速qc-ldpc編碼器的制造方法
【技術(shù)領(lǐng)域】
[0001] 本發(fā)明涉及信道編碼領(lǐng)域,特別涉及一種CCSDS深空通信系統(tǒng)中基于四級(jí)流水線 的高速Q(mào)C-LDPC編碼器。
【背景技術(shù)】
[0002] 低密度奇偶校驗(yàn)(Low-Density Parity-Check, LDPC)碼是高效的信道編碼技術(shù) 之一,而準(zhǔn)循環(huán) LDPC(Quasi-Cyclic LDPC,QC-LDPC)碼是一種特殊的 LDPC 碼。QC-LDPC 碼 的生成矩陣G和校驗(yàn)矩陣H都是由循環(huán)矩陣構(gòu)成的陣列,具有分段循環(huán)的特點(diǎn),故被稱為 QC-LDPC碼。循環(huán)矩陣的首行是末行循環(huán)右移1位的結(jié)果,其余各行都是其上一行循環(huán)右 移1位的結(jié)果,因此,循環(huán)矩陣完全由其首行來(lái)表征。通常,循環(huán)矩陣的首行被稱為它的生 成多項(xiàng)式。
[0003] 深空通信標(biāo)準(zhǔn)采用系統(tǒng)形式的QC-LDPC碼,其生成矩陣G的左半部分是一個(gè)單位 矩陣,右半部分是由eXc個(gè)bXb階循環(huán)矩陣彡i〈e, e彡j〈t, t = e+c)構(gòu)成的陣列, 如下所示:
[0005] 其中,I是bXb階單位矩陣,0是bXb階全零矩陣。G的連續(xù)b行和b列分別被 稱為塊行和塊列。由式(1)可知,G有e塊行和t塊列。深空通信標(biāo)準(zhǔn)采用了一種碼率η =1/2 的 QC-LDPC 碼,對(duì)于該碼,t = 20, e = 8, c = 12, b = 2048。
[0006] 深空通信標(biāo)準(zhǔn)中1/2碼率QC-LDPC編碼器的現(xiàn)有解決方案是基于12個(gè)I型移位 寄存器加累加器(Type-I Shift-Register-Adder-Accumulator,SRAA-I)電路的串行編碼 器。由12個(gè)SRAA-I電路構(gòu)成的串行編碼器,在16384個(gè)時(shí)鐘周期內(nèi)完成編碼。該方案需 要49152個(gè)寄存器、24576個(gè)二輸入與門和24576個(gè)二輸入異或門,還需要196608比特ROM 存儲(chǔ)循環(huán)矩陣的生成多項(xiàng)式。該方案有兩個(gè)缺點(diǎn):一是需要大量存儲(chǔ)器,導(dǎo)致電路成本高; 二是串行輸入?目息比特,編碼速度慢。
【發(fā)明內(nèi)容】
[0007] 深空通信系統(tǒng)中1/2碼率QC-LDPC編碼器的現(xiàn)有實(shí)現(xiàn)方案存在成本高、編碼速度 慢的缺點(diǎn),針對(duì)這些技術(shù)問(wèn)題,本發(fā)明提供了一種基于四級(jí)流水線的高速Q(mào)C-LDPC編碼器。
[0008] 如圖2所示,深空通信系統(tǒng)中基于四級(jí)流水線的高速Q(mào)C-LDPC編碼器主要由4部 分組成:稀疏矩陣與向量的乘法器、I型后向迭代電路、高密度矩陣與向量的乘法器和II型 后向迭代電路。編碼過(guò)程分4步完成:第1步,使用稀疏矩陣與向量的乘法器計(jì)算向量f和 w ;第2步,使用I型后向迭代電路計(jì)算向量q和X ;第3步,使用高密度矩陣與向量的乘法 器計(jì)算部分校驗(yàn)向量Px;第4步,使用II型后向迭代電路計(jì)算向量y,y與向量q異或得到 部分校驗(yàn)向量Py,從而得到校驗(yàn)向量P = (Px, Py)。
[0009] 本發(fā)明提供的深空通信系統(tǒng)中1/2碼率高速Q(mào)C-LDPC編碼器結(jié)構(gòu)簡(jiǎn)單,能在顯著 提高編碼速度的條件下,減少存儲(chǔ)器,從而降低成本,提高吞吐量。
[0010] 關(guān)于本發(fā)明的優(yōu)勢(shì)與方法可通過(guò)下面的發(fā)明詳述及附圖得到進(jìn)一步的了解。
【附圖說(shuō)明】
[0011] 圖1是行列交換后近似下三角校驗(yàn)矩陣的結(jié)構(gòu)示意圖;
[0012] 圖2是基于四級(jí)流水線的QC-LDPC編碼過(guò)程;
[0013] 圖3是循環(huán)左移累加器RLA電路的功能框圖;
[0014] 圖4是由4個(gè)RLA電路構(gòu)成的一種高密度矩陣與向量的乘法器;
[0015] 圖5是稀疏矩陣與向量的乘法器;
[0016] 圖6給出了稀疏矩陣與向量的乘法器中各個(gè)多輸入異或門與寄存器的連接關(guān)系;
[0017] 圖7是I型后向迭代電路;
[0018] 圖8給出了矩陣Q中非零循環(huán)矩陣所在的塊位置及其循環(huán)右移位數(shù);
[0019] 圖9是II型后向迭代電路;
[0020] 圖10給出了矩陣Y中非零循環(huán)矩陣所在的塊位置及其循環(huán)右移位數(shù);
[0021] 圖11總結(jié)了編碼器各編碼步驟以及整個(gè)編碼過(guò)程所需的硬件資源和處理時(shí)間。
【具體實(shí)施方式】
[0022] 下面結(jié)合附圖對(duì)本發(fā)明的較佳實(shí)施例作詳細(xì)闡述,以使本發(fā)明的優(yōu)點(diǎn)和特征能更 易于被本領(lǐng)域技術(shù)人員理解,從而對(duì)本發(fā)明的保護(hù)范圍作出更為清楚明確的界定。
[0023] 循環(huán)矩陣的行重和列重相同,記作w。如果w = 0,那么該循環(huán)矩陣是全零矩陣。如 果w = 1,那么該循環(huán)矩陣是可置換的,稱為置換矩陣,它可通過(guò)對(duì)單位矩陣I循環(huán)右移若干 位得到。QC-LDPC碼的校驗(yàn)矩陣H是由cXt個(gè)bXb階循環(huán)矩陣H j, k (1彡j彡c,1彡k彡t,t =e+c)構(gòu)成的如下陣列:
[0024]
[0025] 通常情況下,校驗(yàn)矩陣H中的任一循環(huán)矩陣要么是全零矩陣(w = 0)要么是置換 矩陣O = 1)。令循環(huán)矩陣Hjik的首行g(shù)_jik= (g_jikil, g_jiki2,…,g_jikib)是其生成多項(xiàng)式,其中 0或I (1彡m彡b)。因?yàn)镠是稀疏的,所以g ]ik只有1個(gè)'1',甚至沒(méi)有'1'。
[0026] 對(duì)于深空通信系統(tǒng)中1/2碼率的QC-LDPC碼,H的前8塊列對(duì)應(yīng)的是信息向量 a,后12塊列對(duì)應(yīng)的是校驗(yàn)向量p。以b比特為一段,信息向量a被等分為8段,即a = (a!,a2,…,as);校驗(yàn)向量p被等分為12段,即p = (P1, p2,…,p12)。
[0027] 對(duì)校驗(yàn)矩陣H進(jìn)行列交換操作,將其變換成近似下三角形狀HAW,如圖1所示。列 交換的過(guò)程如下:前8塊列保持不動(dòng),第9~16塊列與后4塊列互換。
[0028] 在圖1中,所有矩陣的單位都是b = 2048比特而不是1比特。A是由8X8個(gè)bXb 階循環(huán)矩陣構(gòu)成,B是由8X4個(gè)bXb階循環(huán)矩陣構(gòu)成,T是由8X8個(gè)bXb階循環(huán)矩陣 構(gòu)成,C是由4X8個(gè)bXb階循環(huán)矩陣構(gòu)成,D是由4X4個(gè)bXb階循環(huán)矩陣構(gòu)成,E是由 4X8個(gè)bXb階循環(huán)矩陣構(gòu)成。T是下三角矩陣,u = 4反映了校驗(yàn)矩陣與下三角矩陣 的接近程度。在圖1中,矩陣A和C對(duì)應(yīng)信息向量a,矩陣B和D對(duì)應(yīng)一部分校驗(yàn)向量px = (P1, P2,…,P4),矩陣T和E則對(duì)應(yīng)余下的校驗(yàn)向量py= (p 5, p6,…,p12)。p = (px, py)。上 述矩陣和向量滿足如下關(guān)系:
[0029] ρχτ= Φ (ET 1AaVCax) (3)
[0030] p/= T 1Max+BpxT) (4)
[0031] 其中,Φ = (ET 4+D) \上標(biāo)"和1分別表示轉(zhuǎn)置和逆。眾所周知,循環(huán)矩陣的逆、 乘積、和仍然是循環(huán)矩陣。因此,Φ也是由循環(huán)矩陣構(gòu)成的陣列。雖然矩陣E、T、B和D都 是稀疏矩陣,但通常情況下Φ不再稀疏而是高密度的。
[0032] 令 fT= Aa T,qT= T -1fT,wT= Ca T,xT= Eq T+wT,pxT= Φχ T,yT= T -1BpxT以及 p /= qT+yT。向量f和W可由下式計(jì)算得到:
[0040] -旦計(jì)算得出px,yT= T MBpx1可改寫為:
[0041] [B T] [px y]T= Y[px y]T= 0 (9)
[0042] 其中,
[0043] Y = [B T] (10)
[0044] 因?yàn)镼和Y與T 一樣都是下三角矩陣,所以式(7)中的[q χ]和式(9)中的y都 可采用后向迭代的計(jì)算方式。
[0045] Φ涉及高密度矩陣與向量的乘法,F(xiàn)涉及稀疏矩陣與向量的乘法,而Q和Y涉及 后向迭代計(jì)算。根據(jù)以上討論,可給出一種基于四級(jí)流水線的QC-LDPC編碼過(guò)程,如圖2所 不。
[0046] ρχτ= Φχ τ等價(jià)于 p χ= χΦ τ。令 χ = (X1, X2,…,xuXb)。定義 u 比特向量 Sn = (xn, xn+b,…,xn+(u 1)xb),其中1彡η彡b。令Φ』(1彡j彡u)是由Φτ的第j塊列中所有循 環(huán)矩陣生成多項(xiàng)式構(gòu)成的uXb階矩陣。則有
[0047] Pj=(…((0+s 丄^^產(chǎn)⑴+如①.)1"1)+…+~?.)1"1) (11)
[0048] 其中,上標(biāo)ls(1)表示循環(huán)左移1位。
[0049] 由式(11)可得到一種循環(huán)左移累加器(Rotate-Left-Accumulator,RLA)電路,如 圖3所示。查找表的索引是u比特向量S n,查找表1^事先存儲(chǔ)可變的u比特向量與固定的 iVj的所有可能乘積,故需2ub比特的只讀存儲(chǔ)器(Read-Only Memory,R0M)。b比特寄存器 R1, R2,…,匕分別用于緩沖向量X的向量段X D X2,…,xu,b比特寄存器Ru+j用于存儲(chǔ)p x的校 驗(yàn)段Pj。1個(gè)RLA電路計(jì)算向量Pj需要b個(gè)時(shí)鐘周期。
[0050] 對(duì)于深空通信系統(tǒng),使用4個(gè)RLA電路同時(shí)計(jì)算px= (Pl,p2,…,p4)是一種合理方 案,如圖4所示的高密度矩陣與向量的乘法器。高密度矩陣與向量的乘法器由4個(gè)查找表 L1, L2,…,L4、8個(gè)b比特寄存器R3, i,R3,2,…,R3i8和4個(gè)b位二輸入異或門X 3il,X3i2,…,X3i4 組成。查找表L1, L2,…,L#別存儲(chǔ)可變的4比特向量與固定的矩陣Φ ^ Φ2,…,〇4的 所有可能乘積,寄存器R3ii,R 3i2,…,R3i4分別用于緩沖向量X的向量段X i,X2,…,X4,寄存器 R3^ R3^…,Rw分別用于存儲(chǔ)p x的校驗(yàn)段p ^