文獻(xiàn)標(biāo)識碼: A
文章編號: 0258-7998(2015)01-0042-04
0 引言
LTE-A(Long Term Evolution-Advanced)是3GPP最大的新技術(shù)研發(fā)項(xiàng)目,,它以其優(yōu)異的性能成為4G通信的標(biāo)準(zhǔn)。它上行峰值速率500 Mb/s,,上行峰值頻譜利用率15 Mbps/Hz,,下行峰值速率1 Gb/s,下行峰值頻譜利用率30 Mbps/Hz[1-2],。LTE-A的研究和開發(fā)已經(jīng)成為現(xiàn)在通信領(lǐng)域的熱點(diǎn),。
然而,其高速率的比特處理為LTE-A的實(shí)現(xiàn)帶來了巨大的挑戰(zhàn),。Bickerstaff等設(shè)計了支持卷積碼和Turbo碼的可配置譯碼器[3],。Vogt等實(shí)現(xiàn)了對卷積碼、Turbo碼和LDPC碼的譯碼[4-6],。但是,,這些協(xié)處理器僅支持信道編解碼處理,缺少對CRC校驗(yàn)和交織的支持,,且速率偏低,。
為了適應(yīng)LTE-A上行300 Mb/s、下行600 Mb/s的通信要求,,本文設(shè)計了一種兼容CRC校驗(yàn),、卷積碼、Turbo碼和交織的通用并行比特協(xié)處理器,。這種協(xié)處理器通過時分的方法,,可以實(shí)現(xiàn)并行的CRC校驗(yàn)[7]、卷積碼的Viterbi譯碼[8],、Turbo碼MAX-Log-MAP譯碼[9]與信道交織[10],。通過可配置的結(jié)構(gòu),可實(shí)現(xiàn)面向2G/3G/LTE/LTE-A等模式的高速比特處理,。這種通用的并行比特協(xié)處理器降低了系統(tǒng)復(fù)雜度,,實(shí)現(xiàn)了運(yùn)算器的通用化。
1 面向LTE-A的比特處理
2G/3G/LTE/LTE-A通信的比特處理包含CRC校驗(yàn),、卷積/Turbo編碼和交織,如圖1所示,。特別對于LTE-A系統(tǒng)來說,,首先輸入數(shù)據(jù),進(jìn)行CRC校驗(yàn);然后校驗(yàn)的數(shù)據(jù)進(jìn)行1/3碼率的卷積/Turbo編碼,,輸出編碼數(shù)據(jù),;編碼數(shù)據(jù)再進(jìn)行內(nèi)交織合并,組成一個交織編碼序列,;編碼序列進(jìn)行速率匹配截斷,,變成刪截序列輸出。
對于接收端,,HARQ模式可以將多個接收得到的符號序列組合,,輸入給解交織模塊;解交織模塊將數(shù)據(jù)進(jìn)行解交織,,變成3路數(shù)據(jù),;解碼器將3路數(shù)據(jù)進(jìn)行解碼,得到比特輸出,,然后進(jìn)行CRC校驗(yàn),,輸出最終比特。
典型LTE-A上行300 Mb/s,、下行600 Mb/s的需求,,要求發(fā)送端的信息速率為300 Mb/s,接收端的信息速率為600 Mb/s,。其高速率的比特處理為LTE-A的實(shí)現(xiàn)帶來了巨大的挑戰(zhàn),。因此,需要采用并行的模式,,實(shí)行高速率的比特處理,。
2 并行比特協(xié)處理器
協(xié)處理器結(jié)構(gòu)如圖2所示,共有硬件執(zhí)行單元6個,,其中:(1)CRCEnc/CRCDec,,執(zhí)行CRC編解碼;(2)Intlv/Deintlv,,執(zhí)行交織和解交織,;(3)FECEnc/FECDec,執(zhí)行核心卷積碼和Turbo碼的編碼及解碼,。
同時,,協(xié)處理器還有4類存儲器,其中:(1)C0~C5/P0~P1,,其中C0~C5為256×192的RAM,,P0~P1為256×256的RAM。RAM中,,C0~C2/P0為第一組,,C3~C5/P1為第二組。8塊RAM通過乒乓的結(jié)構(gòu)進(jìn)行數(shù)據(jù)處理。這兩組RAM主要供編碼的比特或譯碼的軟信息的輸入或輸出,。(2)B0~B4,,為768×64的RAM,主要供交織運(yùn)算,。(3)ExRAM,,為256×1 280的大塊RAM,主要供譯碼中間狀態(tài)的保存,。(4)IntlvRAM,,為512×32的小塊RAM,主要供Turbo碼的編解碼交織器的暫存,。
此外,,協(xié)處理器還包括3個總線。一個256位寬總線,,供DMA輸入輸出,;一個64比特總線,供交織數(shù)據(jù)傳遞,;一個32位總線,,供APB端口進(jìn)行協(xié)處理器的配置處理。
2.1 CRCEnc/CRCDec
CRC校驗(yàn)的基本思想是利用線性編碼理論,,在發(fā)送端根據(jù)要傳送的k位二進(jìn)制碼序列,,以一定的規(guī)則產(chǎn)生一個校驗(yàn)用的監(jiān)督碼(既CRC碼)r bit,并附在信息后邊,,構(gòu)成一個新的二進(jìn)制碼序列數(shù)共(k+r)bit,,最后發(fā)送出去。在接收端,,則根據(jù)信息碼與CRC碼之間所遵循的規(guī)則進(jìn)行檢驗(yàn),,以確定傳送中是否出錯。
并行CRC的硬件結(jié)構(gòu)如圖3所示,。首先,,完成CRC生成矩陣的配置,然后進(jìn)行CRC的計算,。由于系統(tǒng)32 bit字的要求,,其輸入/輸出均為32 bit字,內(nèi)部CRC并行位數(shù)M由配置決定,。CRC并行硬件包含3步:
(1)首先完成32 bit并行字到M bit并行字的轉(zhuǎn)換,,為CRC矩陣乘法提供輸入;
(2)實(shí)現(xiàn)M bit并行數(shù)據(jù)加r bit余數(shù)與M×(r+M)矩陣的比特乘法,;
(3)最后將r bit并行余數(shù)字轉(zhuǎn)換為32 bit并行字,,為CRC的輸出,。
這里,,編解碼的操作實(shí)際上是一樣的,,不過,CRC編碼輸入k bit數(shù)據(jù),,需要給出r+k bit比特輸出,;CRC解碼輸入r+k bit數(shù)據(jù),輸出為k bit比特和CRC校驗(yàn)指示符,。
2.2 FECEnc/FECDec
卷積碼和Turbo碼等FEC碼的編解碼,,在待發(fā)送的原始信息流中,按照一定的規(guī)律附加一些監(jiān)督碼元,,這些多余的碼元與信息碼元之間以某種確定的規(guī)則相互約束,。在接收端接收到通過差錯控制編碼的信息后,再按照既定的規(guī)則檢驗(yàn)信息碼元與監(jiān)督碼元之間的關(guān)系,,一旦傳輸過程中發(fā)生錯誤,,信息碼元與監(jiān)督碼元之間的關(guān)系就會受到破壞,而從中發(fā)現(xiàn)錯誤,,乃至糾正錯誤,。
典型的卷積碼/Turbo碼信道編碼器框圖如圖4所示。FECEnc采用Turbo碼編碼結(jié)構(gòu),,采取巧妙,、獨(dú)特的措施將普通的RSC(遞歸系統(tǒng)卷積碼)組成元素重新排列,達(dá)到了非凡的性能,。當(dāng)FECEnc進(jìn)行卷積碼編碼時,,將Intlv模式配制成直通模式即可。
FECDec并行譯碼器的結(jié)構(gòu)如圖5所示,,包含交織地址生成模塊(TurboIntlv),、數(shù)據(jù)并行分發(fā)(Parallel Reshp)、狀態(tài)度量計算(Metric)和似然比軟信息計算(LLR)模塊,,此外,,還包含一個寬口存儲ExRAM。
交織地址生成模塊(TurboIntlv)計算3G/LTE/LTE-A等系統(tǒng)中的Turbo碼交織器序列,,并傳遞給數(shù)據(jù)并發(fā)單元,。由于在Turbo譯碼時有前向遞歸和后向遞歸,因此其交織器有正反序交織輸出的能力,。
數(shù)據(jù)并行分發(fā)模塊將輸入的32路信道信息Mesg,、32路信道校驗(yàn)Parity和32路外信息LLR根據(jù)交織器的交織地址進(jìn)行行內(nèi)交織,分發(fā)到32路支路度量計算單元,。
度量計算模塊包含支路度量的計算和狀態(tài)度量的計算,。
支路度量將分發(fā)過來的信道信息,、校驗(yàn)信息和及外信息Le(uk),根據(jù)卷積碼或Turbo碼的狀態(tài)轉(zhuǎn)移圖進(jìn)行組合,,輸出信道度量,、校驗(yàn)度量和支路度量Ek。即:
根據(jù)支路度量進(jìn)行遞歸運(yùn)算,,即可得到前向狀態(tài)度量Ak(s)和后向狀態(tài)度量Bk(s)為:
這里,,由于Turbo碼前向狀態(tài)度量、Turbo碼后向狀態(tài)度量和卷積碼狀態(tài)度量計算的輸入是不同的,,所以輸入是根據(jù)配置3選1的,。同時,為了保證輸出的量化精度,,輸出需要?dú)w一化,,所以其執(zhí)行模塊是3選1的加比選后再歸一化,歸一化參數(shù)為,。
似然比軟信息計算模塊計算譯碼的軟信息,,主要包含4步:
(1)加法,即完成前后度量的綜合,,當(dāng)uk=+1/-1時,,其狀態(tài)轉(zhuǎn)移各有8個。
(2)最小狀態(tài)轉(zhuǎn)移,,即完成兩個8選1的最小值比較:
(3)似然比計算,,即+1的似然比減去-1的似然比,得到先驗(yàn)信息為:
(4)最后,,計算判決似然比,,即:
整個模塊以可配置的模式,完成對各種卷積碼和Turbo碼的解碼運(yùn)算,。
2.3 Intlv/Deintlv
為了實(shí)現(xiàn)各種速率的要求,,在編碼之后需要進(jìn)行速率匹配。
速率匹配的作用是根據(jù)系統(tǒng)要求,,通過增減比特數(shù),,將編碼器的輸出速率調(diào)整到所需要的碼率。LTE針對Turbo碼和咬尾卷積碼采用了不同的速率匹配機(jī)制,。速率匹配是通過交織來實(shí)現(xiàn)的,。然而,LTE-A上行信息速率300 Mb/s,,速率較高,,需要并行的交織器完成數(shù)據(jù)交織,交織結(jié)構(gòu)如圖6所示,。交織器根據(jù)8路交織地址,,選擇8路比特,,然后對這些比特進(jìn)行合并,組成32 bit的字輸出,。
解交織結(jié)構(gòu)如圖7所示,,需要將索引間隔為32的數(shù)據(jù)變換成索引間隔為L(L為滑窗譯碼的窗長)的數(shù)據(jù)。解交織分兩步進(jìn)行:首先將索引間隔為32的數(shù)據(jù)變換成索引間隔為1的數(shù)據(jù),;然后將索引間隔為1的數(shù)據(jù)變換成索引間隔為L(L為滑窗譯碼的窗長)的數(shù)據(jù),。
(1)將索引間隔為32的數(shù)據(jù)變換成索引間隔為1的數(shù)據(jù),。解交織器根據(jù)交織索引,,生成列數(shù)據(jù)讀地址。每次讀入1列,,讀8次,,讀入8列。然后8列數(shù)據(jù)進(jìn)行裝置,,再按照行輸出,,即完成數(shù)據(jù)的第一步解交織。
(2)將索引間隔為1的數(shù)據(jù)變換成索引間隔為L(L為滑窗譯碼的窗長)的數(shù)據(jù),。解交織器根據(jù)交織索引,,生成行數(shù)據(jù)讀地址。每次讀入1行,,讀8次,,讀入8行。然后8行數(shù)據(jù)進(jìn)行裝置,,再按照列輸出,,即完成數(shù)據(jù)的解交織。這樣的數(shù)據(jù)可以被后面的解碼器并行使用,,便于譯碼,。
3 性能資源
本文在65 nm CMOS工藝下,實(shí)現(xiàn)了可配置多模式并行比特協(xié)處理器,。譯碼器面積1.9 mm×2.1 mm,,slow case下時鐘速率達(dá)600 Mb/s。支持CRC校驗(yàn),、卷積碼/Turbo碼和交織,。并行比特協(xié)處理器版圖如圖8所示。
協(xié)處理器進(jìn)行LTE-A上行比特處理時,,占用帶寬431 MHz,;進(jìn)行下行解交織處理時,占用帶寬506 MHz,;進(jìn)行下行解碼時,,占用帶寬508 MHz,。由于系統(tǒng)采用乒乓結(jié)構(gòu)完成,且時鐘頻率可達(dá)550 MHz,,故可以通過時分的結(jié)構(gòu)完成面向LTE-A的高速比特處理,。運(yùn)行速率如表1所示。
4 結(jié)論
本文介紹了一種面向LTE-A寬帶通信的PBC協(xié)處理器,。通過可配置的結(jié)構(gòu),,該協(xié)處理器支持2G/3G/LTE/LTE-A標(biāo)準(zhǔn)的高速比特處理,包括600 Mb/s的CRC校驗(yàn)編解碼,、卷積/Turbo編解碼和交織/解交織,。在65 nm CMOS工藝下,該譯碼器資源約為1.9 mm×2.1 mm,,slow case下時鐘速率550 MHz,;工作在510 MHz時,可完成面向LTE-A的600 Mb/s高速比特處理需求,。
參考文獻(xiàn)
[1] 秉毅,,張?jiān)朴?LTE/LTE-A技術(shù)及標(biāo)準(zhǔn)進(jìn)展[J].電信網(wǎng)技術(shù),2010(5):25-28.
[2] 張光輝,,孫震強(qiáng),,許森.4G在3GPP的演進(jìn)和5G展望[J].電信技術(shù),2013(12):12-17.
[3] BICKERSTAFF M A,,GARRETT D,,THOMAS C,et al.A unifed turbo/viterbi channel decoder for 3GPP mobile wire-less in 0.18 um CMOS[C].IEEE International Solid-State Cuircuits Conference(ISSCC'02).San Francisco,,CA:Feb.2002:124,,451.
[4] VOGT T,WEHN N.A reconfigurable application specific instruction set processor for convolutional and turbo decodingin a sdr environment[C].Proceedings of Design,,Automation Test in Europe(DATE'08).Munich,,Germany:Mar.2008.
[5] ALLES M,VOGT T,,WEHN N.Flexichap: A reconfigurable ASIP for convolutional, turbo, and LDPC code decoding[C].International Symposium on Turbo Coding(TURBO CODING′08).Lausanne,,Switzerland:Sept.2008.
[6] DIELISSEN J,ENGIN N,,SAWITZKI S,,et al.Multistandard FEC decoders for wireless devices[J].IEEE Transaction onCircuits And Systems—II:Express Briefs,2008,,55(3): 284-288.
[7] 許培培,,賈鉑奇,余金培,,等.一種通用并行CRC計算原理及其實(shí)現(xiàn)[J].微計算機(jī)信息,,2010,,26(27):110-111.
[8] 段高攀,杜慧敏,,韓俊剛,,等.可編程Viterbi譯碼器設(shè)計與實(shí)現(xiàn)[J].電子技術(shù)應(yīng)用,2014,,40(3):29-31.
[9] 汪漢新,,葉俊民.基于Turbo碼的Max-Log-MAP譯碼算法的改進(jìn)[J].現(xiàn)代電子技術(shù),2013(16):37-39.
[10] 劉輝,,陳小亭,,李小文.LTE系統(tǒng)中基于FPGA速率匹配算法的仿真及實(shí)現(xiàn)[J].電子技術(shù)應(yīng)用,2013(7):14-16.