《电子技术应用》

面向LTE-A宽带通信的并行比特协处理器

2015年电子技术应用第1期 作者: 管 武,梁利平,胡巧芝
2015/8/17 16:35:00

  摘  要: 通过时分复用的硬件方法,设计实现了面向LTE-A宽带通信的PBC(Parallel Bit Coprocessor)并行比特协处理器。该协处理器支持2G/3G/LTE/LTE-A标准的高速比特处理。协处理器以并行计算的结构,支持CRC校验卷积码/Turbo码编解码、比特交织等宽带通信中的比特处理,吞吐率达600 Mb/s。在65 nm CMOS工艺下,该译码器面积约为1.9 mm×2.1 mm,slow case下时钟速率550 MHz;工作在510 MHz时,可完成面向LTE-A的600 Mb/s高速比特处理需求。

  关键词: LTE-A;CRC校验;卷积码;Turbo码;交织;并行比特处理

0 引言

  LTE-A(Long Term Evolution-Advanced)是3GPP最大的新技术研发项目,它以其优异的性能成为4G通信的标准。它上行峰值速率500 Mb/s,上行峰值频谱利用率15 Mbps/Hz,下行峰值速率1 Gb/s,下行峰值频谱利用率30 Mbps/Hz[1-2]。LTE-A的研究和开发已经成为现在通信领域的热点。

  然而,其高速率的比特处理为LTE-A的实现带来了巨大的挑战。Bickerstaff等设计了支持卷积码和Turbo码的可配置译码器[3]。Vogt等实现了对卷积码、Turbo码和LDPC码的译码[4-6]。但是,这些协处理器仅支持信道编解码处理,缺少对CRC校验和交织的支持,且速率偏低。

  为了适应LTE-A上行300 Mb/s、下行600 Mb/s的通信要求,本文设计了一种兼容CRC校验、卷积码、Turbo码和交织的通用并行比特协处理器。这种协处理器通过时分的方法,可以实现并行的CRC校验[7]、卷积码的Viterbi译码[8]、Turbo码MAX-Log-MAP译码[9]与信道交织[10]。通过可配置的结构,可实现面向2G/3G/LTE/LTE-A等模式的高速比特处理。这种通用的并行比特协处理器降低了系统复杂度,实现了运算器的通用化。

1 面向LTE-A的比特处理


001.jpg

  2G/3G/LTE/LTE-A通信的比特处理包含CRC校验、卷积/Turbo编码和交织,如图1所示。特别对于LTE-A系统来说,首先输入数据,进行CRC校验;然后校验的数据进行1/3码率的卷积/Turbo编码,输出编码数据;编码数据再进行内交织合并,组成一个交织编码序列;编码序列进行速率匹配截断,变成删截序列输出。

  对于接收端,HARQ模式可以将多个接收得到的符号序列组合,输入给解交织模块;解交织模块将数据进行解交织,变成3路数据;解码器将3路数据进行解码,得到比特输出,然后进行CRC校验,输出最终比特。

  典型LTE-A上行300 Mb/s、下行600 Mb/s的需求,要求发送端的信息速率为300 Mb/s,接收端的信息速率为600 Mb/s。其高速率的比特处理为LTE-A的实现带来了巨大的挑战。因此,需要采用并行的模式,实行高速率的比特处理。

2 并行比特协处理器


002.jpg

  协处理器结构如图2所示,共有硬件执行单元6个,其中:(1)CRCEnc/CRCDec,执行CRC编解码;(2)Intlv/Deintlv,执行交织和解交织;(3)FECEnc/FECDec,执行核心卷积码和Turbo码的编码及解码。

  同时,协处理器还有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通过乒乓的结构进行数据处理。这两组RAM主要供编码的比特或译码的软信息的输入或输出。(2)B0~B4,为768×64的RAM,主要供交织运算。(3)ExRAM,为256×1 280的大块RAM,主要供译码中间状态的保存。(4)IntlvRAM,为512×32的小块RAM,主要供Turbo码的编解码交织器的暂存。

  此外,协处理器还包括3个总线。一个256位宽总线,供DMA输入输出;一个64比特总线,供交织数据传递;一个32位总线,供APB端口进行协处理器的配置处理。

  2.1 CRCEnc/CRCDec

  CRC校验的基本思想是利用线性编码理论,在发送端根据要传送的k位二进制码序列,以一定的规则产生一个校验用的监督码(既CRC码)r bit,并附在信息后边,构成一个新的二进制码序列数共(k+r)bit,最后发送出去。在接收端,则根据信息码与CRC码之间所遵循的规则进行检验,以确定传送中是否出错。

  并行CRC的硬件结构如图3所示。首先,完成CRC生成矩阵的配置,然后进行CRC的计算。由于系统32 bit字的要求,其输入/输出均为32 bit字,内部CRC并行位数M由配置决定。CRC并行硬件包含3步:

  (1)首先完成32 bit并行字到M bit并行字的转换,为CRC矩阵乘法提供输入;

  (2)实现M bit并行数据加r bit余数与M×(r+M)矩阵的比特乘法;

  (3)最后将r bit并行余数字转换为32 bit并行字,为CRC的输出。

  这里,编解码的操作实际上是一样的,不过,CRC编码输入k bit数据,需要给出r+k bit比特输出;CRC解码输入r+k bit数据,输出为k bit比特和CRC校验指示符。

  2.2 FECEnc/FECDec

  卷积码和Turbo码等FEC码的编解码,在待发送的原始信息流中,按照一定的规律附加一些监督码元,这些多余的码元与信息码元之间以某种确定的规则相互约束。在接收端接收到通过差错控制编码的信息后,再按照既定的规则检验信息码元与监督码元之间的关系,一旦传输过程中发生错误,信息码元与监督码元之间的关系就会受到破坏,而从中发现错误,乃至纠正错误。

004.jpg

  典型的卷积码/Turbo码信道编码器框图如图4所示。FECEnc采用Turbo码编码结构,采取巧妙、独特的措施将普通的RSC(递归系统卷积码)组成元素重新排列,达到了非凡的性能。当FECEnc进行卷积码编码时,将Intlv模式配制成直通模式即可。

005.jpg

  FECDec并行译码器的结构如图5所示,包含交织地址生成模块(TurboIntlv)、数据并行分发(Parallel Reshp)、状态度量计算(Metric)和似然比软信息计算(LLR)模块,此外,还包含一个宽口存储ExRAM。

  交织地址生成模块(TurboIntlv)计算3G/LTE/LTE-A等系统中的Turbo码交织器序列,并传递给数据并发单元。由于在Turbo译码时有前向递归和后向递归,因此其交织器有正反序交织输出的能力。

  数据并行分发模块将输入的32路信道信息Mesg、32路信道校验Parity和32路外信息LLR根据交织器的交织地址进行行内交织,分发到32路支路度量计算单元。

  度量计算模块包含支路度量的计算和状态度量的计算。

  支路度量将分发过来的信道信息(}I{J]IC)$B_`~N5U9G5H{6.png、校验信息8PIM7OYISP09YM[WRTYI1(V.pngQSNZ1~RJ}@L1D@THV~C[3U5.png及外信息Le(uk),根据卷积码或Turbo码的状态转移图`)NF1XQW@C0QN7]`%`AK}UB.png进行组合,输出信道度量90K2PW$HML_VM_8X5HA5]IL.jpg、校验度量`_YI9@C1}DLC[$QNRY]F(SC.png和支路度量Ek。即:

  123.png

  根据支路度量进行递归运算,即可得到前向状态度量Ak(s)和后向状态度量Bk(s)为:

  45.png

  这里,由于Turbo码前向状态度量、Turbo码后向状态度量和卷积码状态度量计算的输入是不同的,所以输入是根据配置3选1的。同时,为了保证输出的量化精度,输出需要归一化,所以其执行模块是3选1的加比选后再归一化,归一化参数为

  似然比软信息计算模块计算译码的软信息,主要包含4步:

  (1)加法,即完成前后度量的综合,当uk=+1/-1时,其状态转移各有8个。

  67.png

  (2)最小状态转移,即完成两个8选1的最小值比较:

  89.png

  (3)似然比计算,即+1的似然比减去-1的似然比,得到先验信息为:

  10.png

  (4)最后,计算判决似然比,即:

  11.png

  整个模块以可配置的模式,完成对各种卷积码和Turbo码的解码运算。

  2.3 Intlv/Deintlv

  为了实现各种速率的要求,在编码之后需要进行速率匹配。

  速率匹配的作用是根据系统要求,通过增减比特数,将编码器的输出速率调整到所需要的码率。LTE针对Turbo码和咬尾卷积码采用了不同的速率匹配机制。速率匹配是通过交织来实现的。然而,LTE-A上行信息速率300 Mb/s,速率较高,需要并行的交织器完成数据交织,交织结构如图6所示。交织器根据8路交织地址,选择8路比特,然后对这些比特进行合并,组成32 bit的字输出。

006.jpg

007.jpg

  解交织结构如图7所示,需要将索引间隔为32的数据变换成索引间隔为L(L为滑窗译码的窗长)的数据。解交织分两步进行:首先将索引间隔为32的数据变换成索引间隔为1的数据;然后将索引间隔为1的数据变换成索引间隔为L(L为滑窗译码的窗长)的数据。

  (1)将索引间隔为32的数据变换成索引间隔为1的数据。解交织器根据交织索引,生成列数据读地址。每次读入1列,读8次,读入8列。然后8列数据进行装置,再按照行输出,即完成数据的第一步解交织。

  (2)将索引间隔为1的数据变换成索引间隔为L(L为滑窗译码的窗长)的数据。解交织器根据交织索引,生成行数据读地址。每次读入1行,读8次,读入8行。然后8行数据进行装置,再按照列输出,即完成数据的解交织。这样的数据可以被后面的解码器并行使用,便于译码。

3 性能资源

  本文在65 nm CMOS工艺下,实现了可配置多模式并行比特协处理器。译码器面积1.9 mm×2.1 mm,slow case下时钟速率达600 Mb/s。支持CRC校验、卷积码/Turbo码和交织。并行比特协处理器版图如图8所示。

008.jpg

  协处理器进行LTE-A上行比特处理时,占用带宽431 MHz;进行下行解交织处理时,占用带宽506 MHz;进行下行解码时,占用带宽508 MHz。由于系统采用乒乓结构完成,且时钟频率可达550 MHz,故可以通过时分的结构完成面向LTE-A的高速比特处理。运行速率如表1所示。

009.jpg

4 结论

  本文介绍了一种面向LTE-A宽带通信的PBC协处理器。通过可配置的结构,该协处理器支持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技术及标准进展[J].电信网技术,2010(5):25-28.

  [2] 张光辉,孙震强,许森.4G在3GPP的演进和5G展望[J].电信技术,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计算原理及其实现[J].微计算机信息,2010,26(27):110-111.

  [8] 段高攀,杜慧敏,韩俊刚,等.可编程Viterbi译码器设计与实现[J].电子技术应用,2014,40(3):29-31.

  [9] 汪汉新,叶俊民.基于Turbo码的Max-Log-MAP译码算法的改进[J].现代电子技术,2013(16):37-39.

  [10] 刘辉,陈小亭,李小文.LTE系统中基于FPGA速率匹配算法的仿真及实现[J].电子技术应用,2013(7):14-16.


继续阅读>>