文献标识码:A
文章编号: 0258-7998(2015)01-0042-04
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的比特处理
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 并行比特协处理器
协处理器结构如图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码的编解码,在待发送的原始信息流中,按照一定的规律附加一些监督码元,这些多余的码元与信息码元之间以某种确定的规则相互约束。在接收端接收到通过差错控制编码的信息后,再按照既定的规则检验信息码元与监督码元之间的关系,一旦传输过程中发生错误,信息码元与监督码元之间的关系就会受到破坏,而从中发现错误,乃至纠正错误。
典型的卷积码/Turbo码信道编码器框图如图4所示。FECEnc采用Turbo码编码结构,采取巧妙、独特的措施将普通的RSC(递归系统卷积码)组成元素重新排列,达到了非凡的性能。当FECEnc进行卷积码编码时,将Intlv模式配制成直通模式即可。
FECDec并行译码器的结构如图5所示,包含交织地址生成模块(TurboIntlv)、数据并行分发(Parallel Reshp)、状态度量计算(Metric)和似然比软信息计算(LLR)模块,此外,还包含一个宽口存储ExRAM。
交织地址生成模块(TurboIntlv)计算3G/LTE/LTE-A等系统中的Turbo码交织器序列,并传递给数据并发单元。由于在Turbo译码时有前向递归和后向递归,因此其交织器有正反序交织输出的能力。
数据并行分发模块将输入的32路信道信息Mesg、32路信道校验Parity和32路外信息LLR根据交织器的交织地址进行行内交织,分发到32路支路度量计算单元。
度量计算模块包含支路度量的计算和状态度量的计算。
支路度量将分发过来的信道信息、校验信息和及外信息Le(uk),根据卷积码或Turbo码的状态转移图进行组合,输出信道度量、校验度量和支路度量Ek。即:
根据支路度量进行递归运算,即可得到前向状态度量Ak(s)和后向状态度量Bk(s)为:
这里,由于Turbo码前向状态度量、Turbo码后向状态度量和卷积码状态度量计算的输入是不同的,所以输入是根据配置3选1的。同时,为了保证输出的量化精度,输出需要归一化,所以其执行模块是3选1的加比选后再归一化,归一化参数为。
似然比软信息计算模块计算译码的软信息,主要包含4步:
(1)加法,即完成前后度量的综合,当uk=+1/-1时,其状态转移各有8个。
(2)最小状态转移,即完成两个8选1的最小值比较:
(3)似然比计算,即+1的似然比减去-1的似然比,得到先验信息为:
(4)最后,计算判决似然比,即:
整个模块以可配置的模式,完成对各种卷积码和Turbo码的解码运算。
2.3 Intlv/Deintlv
为了实现各种速率的要求,在编码之后需要进行速率匹配。
速率匹配的作用是根据系统要求,通过增减比特数,将编码器的输出速率调整到所需要的码率。LTE针对Turbo码和咬尾卷积码采用了不同的速率匹配机制。速率匹配是通过交织来实现的。然而,LTE-A上行信息速率300 Mb/s,速率较高,需要并行的交织器完成数据交织,交织结构如图6所示。交织器根据8路交织地址,选择8路比特,然后对这些比特进行合并,组成32 bit的字输出。
解交织结构如图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所示。
协处理器进行LTE-A上行比特处理时,占用带宽431 MHz;进行下行解交织处理时,占用带宽506 MHz;进行下行解码时,占用带宽508 MHz。由于系统采用乒乓结构完成,且时钟频率可达550 MHz,故可以通过时分的结构完成面向LTE-A的高速比特处理。运行速率如表1所示。
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.