文獻標識碼: A
文章編號: 0258-7998(2015)01-0042-04
0 引言
LTE-A(Long Term Evolution-Advanced)是3GPP最大的新技術(shù)研發(fā)項目,,它以其優(yōu)異的性能成為4G通信的標準。它上行峰值速率500 Mb/s,,上行峰值頻譜利用率15 Mbps/Hz,,下行峰值速率1 Gb/s,下行峰值頻譜利用率30 Mbps/Hz[1-2],。LTE-A的研究和開發(fā)已經(jīng)成為現(xiàn)在通信領域的熱點,。
然而,其高速率的比特處理為LTE-A的實現(xiàn)帶來了巨大的挑戰(zhàn),。Bickerstaff等設計了支持卷積碼和Turbo碼的可配置譯碼器[3],。Vogt等實現(xiàn)了對卷積碼、Turbo碼和LDPC碼的譯碼[4-6],。但是,,這些協(xié)處理器僅支持信道編解碼處理,缺少對CRC校驗和交織的支持,,且速率偏低,。
為了適應LTE-A上行300 Mb/s、下行600 Mb/s的通信要求,,本文設計了一種兼容CRC校驗,、卷積碼,、Turbo碼和交織的通用并行比特協(xié)處理器。這種協(xié)處理器通過時分的方法,,可以實現(xiàn)并行的CRC校驗[7],、卷積碼的Viterbi譯碼[8]、Turbo碼MAX-Log-MAP譯碼[9]與信道交織[10],。通過可配置的結(jié)構(gòu),可實現(xiàn)面向2G/3G/LTE/LTE-A等模式的高速比特處理,。這種通用的并行比特協(xié)處理器降低了系統(tǒng)復雜度,,實現(xiàn)了運算器的通用化。
1 面向LTE-A的比特處理
2G/3G/LTE/LTE-A通信的比特處理包含CRC校驗,、卷積/Turbo編碼和交織,,如圖1所示。特別對于LTE-A系統(tǒng)來說,,首先輸入數(shù)據(jù),,進行CRC校驗;然后校驗的數(shù)據(jù)進行1/3碼率的卷積/Turbo編碼,,輸出編碼數(shù)據(jù),;編碼數(shù)據(jù)再進行內(nèi)交織合并,組成一個交織編碼序列,;編碼序列進行速率匹配截斷,,變成刪截序列輸出。
對于接收端,,HARQ模式可以將多個接收得到的符號序列組合,,輸入給解交織模塊;解交織模塊將數(shù)據(jù)進行解交織,,變成3路數(shù)據(jù),;解碼器將3路數(shù)據(jù)進行解碼,得到比特輸出,,然后進行CRC校驗,,輸出最終比特。
典型LTE-A上行300 Mb/s,、下行600 Mb/s的需求,,要求發(fā)送端的信息速率為300 Mb/s,接收端的信息速率為600 Mb/s,。其高速率的比特處理為LTE-A的實現(xiàn)帶來了巨大的挑戰(zhàn),。因此,需要采用并行的模式,,實行高速率的比特處理,。
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)進行數(shù)據(jù)處理。這兩組RAM主要供編碼的比特或譯碼的軟信息的輸入或輸出,。(2)B0~B4,,為768×64的RAM,主要供交織運算,。(3)ExRAM,,為256×1 280的大塊RAM,主要供譯碼中間狀態(tài)的保存,。(4)IntlvRAM,,為512×32的小塊RAM,主要供Turbo碼的編解碼交織器的暫存,。
此外,,協(xié)處理器還包括3個總線。一個256位寬總線,,供DMA輸入輸出,;一個64比特總線,供交織數(shù)據(jù)傳遞,;一個32位總線,,供APB端口進行協(xié)處理器的配置處理。
2.1 CRCEnc/CRCDec
CRC校驗的基本思想是利用線性編碼理論,,在發(fā)送端根據(jù)要傳送的k位二進制碼序列,,以一定的規(guī)則產(chǎn)生一個校驗用的監(jiān)督碼(既CRC碼)r bit,并附在信息后邊,構(gòu)成一個新的二進制碼序列數(shù)共(k+r)bit,,最后發(fā)送出去,。在接收端,則根據(jù)信息碼與CRC碼之間所遵循的規(guī)則進行檢驗,,以確定傳送中是否出錯,。
并行CRC的硬件結(jié)構(gòu)如圖3所示。首先,,完成CRC生成矩陣的配置,,然后進行CRC的計算。由于系統(tǒng)32 bit字的要求,,其輸入/輸出均為32 bit字,,內(nèi)部CRC并行位數(shù)M由配置決定。CRC并行硬件包含3步:
(1)首先完成32 bit并行字到M bit并行字的轉(zhuǎn)換,,為CRC矩陣乘法提供輸入;
(2)實現(xiàn)M bit并行數(shù)據(jù)加r bit余數(shù)與M×(r+M)矩陣的比特乘法,;
(3)最后將r bit并行余數(shù)字轉(zhuǎn)換為32 bit并行字,,為CRC的輸出。
這里,,編解碼的操作實際上是一樣的,,不過,CRC編碼輸入k bit數(shù)據(jù),,需要給出r+k bit比特輸出,;CRC解碼輸入r+k bit數(shù)據(jù),輸出為k bit比特和CRC校驗指示符,。
2.2 FECEnc/FECDec
卷積碼和Turbo碼等FEC碼的編解碼,,在待發(fā)送的原始信息流中,按照一定的規(guī)律附加一些監(jiān)督碼元,,這些多余的碼元與信息碼元之間以某種確定的規(guī)則相互約束,。在接收端接收到通過差錯控制編碼的信息后,再按照既定的規(guī)則檢驗信息碼元與監(jiān)督碼元之間的關系,,一旦傳輸過程中發(fā)生錯誤,,信息碼元與監(jiān)督碼元之間的關系就會受到破壞,而從中發(fā)現(xiàn)錯誤,,乃至糾正錯誤,。
典型的卷積碼/Turbo碼信道編碼器框圖如圖4所示。FECEnc采用Turbo碼編碼結(jié)構(gòu),,采取巧妙,、獨特的措施將普通的RSC(遞歸系統(tǒng)卷積碼)組成元素重新排列,達到了非凡的性能。當FECEnc進行卷積碼編碼時,,將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路信道校驗Parity和32路外信息LLR根據(jù)交織器的交織地址進行行內(nèi)交織,,分發(fā)到32路支路度量計算單元。
度量計算模塊包含支路度量的計算和狀態(tài)度量的計算,。
支路度量將分發(fā)過來的信道信息,、校驗信息
和
及外信息Le(uk),根據(jù)卷積碼或Turbo碼的狀態(tài)轉(zhuǎn)移圖
進行組合,,輸出信道度量
,、校驗度量
和支路度量Ek。即:
根據(jù)支路度量進行遞歸運算,,即可得到前向狀態(tài)度量Ak(s)和后向狀態(tài)度量Bk(s)為:
這里,,由于Turbo碼前向狀態(tài)度量、Turbo碼后向狀態(tài)度量和卷積碼狀態(tài)度量計算的輸入是不同的,,所以輸入是根據(jù)配置3選1的,。同時,為了保證輸出的量化精度,,輸出需要歸一化,,所以其執(zhí)行模塊是3選1的加比選后再歸一化,歸一化參數(shù)為,。
似然比軟信息計算模塊計算譯碼的軟信息,,主要包含4步:
(1)加法,即完成前后度量的綜合,,當uk=+1/-1時,,其狀態(tài)轉(zhuǎn)移各有8個。
(2)最小狀態(tài)轉(zhuǎn)移,,即完成兩個8選1的最小值比較:
(3)似然比計算,,即+1的似然比減去-1的似然比,得到先驗信息為:
(4)最后,計算判決似然比,,即:
整個模塊以可配置的模式,,完成對各種卷積碼和Turbo碼的解碼運算。
2.3 Intlv/Deintlv
為了實現(xiàn)各種速率的要求,,在編碼之后需要進行速率匹配,。
速率匹配的作用是根據(jù)系統(tǒng)要求,通過增減比特數(shù),,將編碼器的輸出速率調(diào)整到所需要的碼率,。LTE針對Turbo碼和咬尾卷積碼采用了不同的速率匹配機制。速率匹配是通過交織來實現(xiàn)的,。然而,,LTE-A上行信息速率300 Mb/s,速率較高,,需要并行的交織器完成數(shù)據(jù)交織,,交織結(jié)構(gòu)如圖6所示。交織器根據(jù)8路交織地址,,選擇8路比特,,然后對這些比特進行合并,組成32 bit的字輸出,。
解交織結(jié)構(gòu)如圖7所示,,需要將索引間隔為32的數(shù)據(jù)變換成索引間隔為L(L為滑窗譯碼的窗長)的數(shù)據(jù),。解交織分兩步進行:首先將索引間隔為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ù)進行裝置,,再按照行輸出,,即完成數(shù)據(jù)的第一步解交織。
(2)將索引間隔為1的數(shù)據(jù)變換成索引間隔為L(L為滑窗譯碼的窗長)的數(shù)據(jù),。解交織器根據(jù)交織索引,,生成行數(shù)據(jù)讀地址。每次讀入1行,,讀8次,,讀入8行。然后8行數(shù)據(jù)進行裝置,再按照列輸出,,即完成數(shù)據(jù)的解交織,。這樣的數(shù)據(jù)可以被后面的解碼器并行使用,便于譯碼,。
3 性能資源
本文在65 nm CMOS工藝下,,實現(xiàn)了可配置多模式并行比特協(xié)處理器。譯碼器面積1.9 mm×2.1 mm,,slow case下時鐘速率達600 Mb/s,。支持CRC校驗、卷積碼/Turbo碼和交織,。并行比特協(xié)處理器版圖如圖8所示,。
協(xié)處理器進行LTE-A上行比特處理時,占用帶寬431 MHz,;進行下行解交織處理時,,占用帶寬506 MHz;進行下行解碼時,,占用帶寬508 MHz,。由于系統(tǒng)采用乒乓結(jié)構(gòu)完成,且時鐘頻率可達550 MHz,,故可以通過時分的結(jié)構(gòu)完成面向LTE-A的高速比特處理,。運行速率如表1所示。
4 結(jié)論
本文介紹了一種面向LTE-A寬帶通信的PBC協(xié)處理器,。通過可配置的結(jié)構(gòu),,該協(xié)處理器支持2G/3G/LTE/LTE-A標準的高速比特處理,包括600 Mb/s的CRC校驗編解碼,、卷積/Turbo編解碼和交織/解交織,。在65 nm CMOS工藝下,該譯碼器資源約為1.9 mm×2.1 mm,,slow case下時鐘速率550 MHz,;工作在510 MHz時,可完成面向LTE-A的600 Mb/s高速比特處理需求,。
參考文獻
[1] 秉毅,,張云勇.LTE/LTE-A技術(shù)及標準進展[J].電信網(wǎng)技術(shù),2010(5):25-28.
[2] 張光輝,,孫震強,,許森.4G在3GPP的演進和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計算原理及其實現(xiàn)[J].微計算機信息,,2010,,26(27):110-111.
[8] 段高攀,杜慧敏,,韓俊剛,,等.可編程Viterbi譯碼器設計與實現(xiàn)[J].電子技術(shù)應用,2014,,40(3):29-31.
[9] 汪漢新,,葉俊民.基于Turbo碼的Max-Log-MAP譯碼算法的改進[J].現(xiàn)代電子技術(shù),2013(16):37-39.
[10] 劉輝,,陳小亭,,李小文.LTE系統(tǒng)中基于FPGA速率匹配算法的仿真及實現(xiàn)[J].電子技術(shù)應用,,2013(7):14-16.