您的位置  > 互联网

高速率低译码器:基于路径存储的混合回溯模式

概括:

在解码器的实现中,由于路径存储方式不同,分为回溯和寄存器交换两种方式,造成的效果是延迟和资源消耗一般只能选其一,这是相互矛盾的。 采用3~6个长度的RE寄存器交换和混合回溯模式,大大减少了回溯时间和路径存储空间需求,代价是每个ACS增加2~5个LUT; 结合其他解码器优化算法,如一次分支度量计算、每ACS搜索-即4中的1等措施,实现高吞吐量(340 Mb/s)、低延迟、低资源的全并行解码器消耗。

中文引文格式:杨敏. 高速率低时延解码器的设计与实现[J]. 电子技术应用, 2018, 44(9): 56-58, 62.

英文引文格式:Yang Min. 高速与低速的研究[J]. , 2018, 44(9): 56-58, 62.

0 前言

解码是AJ于1967年提出的概率解码算法,是一种最大似然解码方法。 后来发现该算法可用于多种数字估计问题,如码间干扰下的决策、连续相位FSK信号的最优接收、字识别、序列跟踪和源编码等。 该算法的这些应用都可以归因于时间离散、有限状态马尔可夫过程的最优估计问题。 因此,它不仅是卷积码的重要译码算法,而且具有重要的理论意义。

由于其优异的纠错性能和简单的硬件解码器(易于实现高速解码),卷积码广泛应用于深空通信、卫星通信、IEEE 802.11、超宽带(UWB)系统、DAB、DVB、2G ,在3G、LTE、Wimax和电力线通信中。

自1986年以来,国际上发表了许多关于解码器设计的文章,如文献[1]~[6]。 为了追求解码速度,大多采用全并行结构,吞吐量可高达1.74 Gb/s[3]和2.8 Gb/s[4]。 同时各大FPGA厂商也提供了很多IP核[7]。

由于内部互连机制不同,基于FPGA的解码器的工作速度与结构化ASIC和定制ASIC并不相同。 在 FPGA 上实现的解码器的工作频率一般在 140~510 MHz 之间[6, 7],如果同样的设计结构用定制的 ASIC 实现,应该能够达到一个工作频率(800 MHz~1.4 GHz)与文献[3-4]类似。

从工程应用的角度来看,解码器的性能评价指标主要包括解码速度、处理延迟和资源占用情况。 传统的解码器结构无法兼顾低资源消耗和低延迟的优点。 在高速通信系统中,解码时延要求往往非常高。 本文提出一种采用部分寄存器交换的方法,兼顾译码延迟和逻辑资源消耗的性能。 测试结果表明,采用这种部分寄存器交换回溯方法存储幸存路径,具有寄存器交换延迟小的优点,同时所需逻辑资源与普通回溯方法相当,且所需存储单元远小于普通回溯方法。方法。

1 部分寄存器交换路径存储

1.1 传统路径存储

幸存者路径存储器主要有两种结构:一种是寄存器交换结构(RE),另一种是回溯结构(TB)[1-2]。

前者采用专用寄存器作为存储体,存储路径上的输入信号信息,利用寄存器数组中数据的不断交换来实现译码。 虽然这种方法具有存储单元少、译码延迟短的优点,但由于其互连过于复杂、功耗较高(每个新的判决位输入时必须翻转寄存器),因此不适合大型状态译码器。 FPGA 实现。

回溯法采用通用RAM作为存储体,存储幸存路径的点阵连接关系。 数据写入和回溯输出是通过读写RAM来完成的。 其优点是内部连接关系简单、有规律; 第一个缺点是解码延迟大——一般并行解码中回溯法的延迟是寄存器交换法的4倍; 第二个缺点是它需要许多存储单元。 具体性能差异分析如下。

假设卷积码编码约束长度为L,解码深度V=6×L; 对于码率R=1/2的解码器,每个系统时钟输入2比特的编码传输信息,输出1比特的解码信息。 信息。

对于radix-2加位选的全并行RE模式:路径存储部分需要锁存和交换2L-1状态的长V路径信息,即需要V×2L-1个逻辑单元和寄存器,并且解码延迟是V系统时钟。

对于完全并行的传统TB方法,每解码1比特,至少回溯V比特。 为了实现连续解码,需要在一次回溯中解码多个比特,将其设置为x。 然后从解码输入到准备回溯需要等待V+x系统时钟。 如果每个系统时钟仅回溯y=1位,那么一个解码输出需要回溯V+x个系统时钟。 采用多片轮读模式(写入1片,读2至多片),在回溯期间写入V+x个符号的路径信息。

当工作在流水线模式时,在(n+1)x系统时钟内至少完成n次回溯解码x位。 读取2个芯片时,需要在2x时钟内完成(V+x)个符号的回溯,所以一般取x=V。

这样,2x时钟读取的两个RAM的深度分别为2V,宽度为1位路径信息的2L-1状态,总深度为4V(根据前面的标记为1a、1b) 4V系统时钟内的写序列,然后开始写2a,深度为2V的2b RAM),写到2V深度后,开始回溯读取1b、1a; V深度后,另一块读取2a、1b,从而回溯1a、1b处的传输信息,同时写入2b、1a路径。

在此期间,再次写入2V深度的路径信息(1a,1b),与两个读RAM中的前一个2V深度RAM的读信息(1b,1a)相交。 当路径存储RAM实现为一读一写双口RAM时,两片RAM即可实现一写二读的写入和回溯功能。

因此,总的存储单元应该是2L-1个状态路径信息,深度为4V符号,宽度为4V×2L-1比特存储单元。 实际深度对应满足(M=2N>4V)的最小正整数N。 M。

解码延迟:解码器需要2V时钟才能开始接收并准备回溯。 (V+x),即2V深度需要2V系统时钟,总共4V系统时钟。

1.2 改进的部分寄存器交换回溯方法

从上述传统TB方法可以看出,为了减少译码延迟和存储单元,可以一次并行读出多比特符号的路径信息。 本文提出采用部分寄存器交换的方法,累加多符号(2~6)路径信息,然后一次对一个地址的存储单元进行存储和写入,从而加快后续的读取过程。

设 RE 部分的长度为 y。 采用1个存储单元1读1写方式,每次回溯解码x位,则回溯延迟为t=(V+x)/y; 在这个回溯期间,写入t位路径信息,保证路径信息存储单元中不出现有用信息覆盖,要求t≤x,即x≥(V+x)/y,即x≥V /(y-1)。 一般情况下,x取满足条件的最小整数值。

解码延迟是等待时间加上回溯时间。 对于每条解码信息,从开始接收到回溯的等待时间为:V+x比特解码信息接收时间V+x系统时钟。 总解码延迟为V+x+t≈V+2x。

路径信息存储单元深为(V+2x)/y(实际深度为满足M=2N>(V+2x)/y的最小正整数N对应的M),宽为y×2L-1,总位数为(V+2x)×2L-1。

另外,回溯时还消耗y个2L-1个选定逻辑资源,即y×2L-1个组合LUT; 由于使用部分寄存器交换,需要2L-1个y长度寄存器来锁存当前路径信息。

2 其他优化措施

当采用文献[5]中提到的分支度量线性变换对3比特的解调信号进行量化时,分支度量仍然是3比特的非负数,简化了后续的路径度量溢出处理。

分支度量计算一次并搜索多次 - 对于 (2, 1, n) 代码,它是 4 的选择。

简单累积路径度量溢出。 对于(2,1,7)3位量化卷积码,路径度量的最大和最小范围在3+log27位内。 由于所有路径度量和分支度量均为非负数,因此额外添加一位最高位溢出位,确定存储路径度量的寄存器位宽为3+log27+17。

由于全并行结构,1个ACS(Add--,加选)必须在1个时钟内完成,因此ACS部分没有采用文献[7]中的流水线结构。 ACS是限制全并行结构解码器最大工作频率的因素。 一。 而采用两级计算锁存器的分支度量算法来缓解分支度量选择的延迟,与一级分支度量锁存器相比,最大工作频率提高了约10 MHz。

3 解码器设计

解码器的结构框图如图1所示。

4 资源占用实验性能

根据图1设计的radix-2全并行解码器在0.1下时序仿真正确后,综合自适应结果如表1至表4所示,其中:V=6×L,量化位数是 3。

5 解码器的其他性能

5.1 解码器解码性能

3 位量化的定点模拟和 3 位量化前的模拟:50 段 (2, 1, 3)、(2, 1, 5)、(2, 1, 7) 和 (2, 1, 9) 分别。 (当信噪比小于或等于4.4 dB时)或100段(当信噪比大于4.4 dB时),长度为40 000的编码序列有一个信号-信噪比(SNR=Eb/no)为3至5.4 dB(仅在下文中,在下文中,对于每个卷积码,仅接收由AGWN BPSK信道发送的信号,解码BER=10-3和10选择-4进行仿真,误码性能如图2所示。在后续的仿真中[2, 7],四个卷积码(2, 1, 3), (2, 1, 5)均选择5.2 dB。 )、(2, 1, 7)、(2, 1, 9)、4.8 dB、4.0 dB、3.4 dB,长度为 40 000 的噪声编码接收序列用于误码性能测试,即与图2完全一致。

5.2 吞吐量

当吞吐量定义为解码器输出信息率时(而文献[5]中吞吐量定义为解码器输入率,与量化位数无关),对于本文中基2全并行码率R=1/2解码器的吞吐量为 2fmax。 也就是说,所实现的(2,1,7)全并行解码器的吞吐量在290到350Mb/s之间。

当结构化ASIC器件消耗与上述相同的逻辑资源时,(2,1,7)卷积码的最大工作频率为340Hz,吞吐量为680Mb/s。

如果使用定制 ASIC 实现,吞吐量应满足简介中提到的使用解码 (500 Mb/s) 的各种当前标准的要求。

5.3 并行解码器性能与其他文献的比较

(2,1,3)全并行解码器(EP3-)与其他文献的性能比较如表5所示。

从表中数据可以看出,本文设计的(2,1,3)卷积码全并行解码器明显优于该公司提供的IP核,仅占用其25%的逻辑资源,并且解码延迟仅为其25%。 (2,1,7)全并行解码器与其他文献的性能比较如表6所示。

六,结论

本文采用部分寄存器交换的解码器,在交换长度为3时,消耗的逻辑资源与简单回溯模式几乎相同,在存储单元减少25%至66的情况下,达到了解码延迟减半的效果%。

对于约束长度较短的卷积码,如(2, 1, 3),(2, 1, 5),全寄存器交换的资源消耗不会增加太多,但解码时延相比交换时会减少长度为3. 50%,更具实用价值。

对于约束长度较长的卷积码,如(2,1,7),(2,1,9),全寄存器交换的资源消耗增加太多。 使用4或6的寄存器交换长度比较合适。这种情况下的延迟与完整的寄存器交换类似,但消耗的逻辑资源与简单回溯模式相当。 内存单元比简单回溯模式要小很多(小50%或62.5%),虽然本文在FPGA下实现时消耗的内存块数量更多,但那是因为每个内存块都比较大(大深度)和有限的宽度)。 如果使用最小深度为16的小存储块(例如定制ASIC技术),其优势将显而易见。

参考

[1] TK,SHIH MT,REED IS,等。 一种用于回溯的 VLSI [J]. IEEE,1992,40(3):616-624。

[2] G, GULAK P G. for in [J].IEEE Trans on, 1993, 41(3): 425–429.

[3] GOO YJ,LEE H. 用于高 UWB 的两个位级 [C]。 IEEE 和 ,ISCAS 2008,2008:1012-1015。

[4] N、E、LOEW M 等人。 2.8 Gb/s、32 状态、基 4 附加单元 [C]。 2004 年关于超大规模集成电路,2004 年:170-173。

[5]杨敏. 基于FPGA的设计[C]. 2011年和,2001年,5:4129-4131。

[6] 唐. 与FPGA之一:使用与协的案例研究[C]. 2009 年 IEEE 上和 (),2009:1-6。

[7] . v9.1 用户指南[Z].2009。

[8] 夏玉文. 数字系统设计教程(第二版)[M]. 北京:北京航空航天大学出版社,2008。

作者信息:

杨敏

(华中科技大学电子信息与通信学院,湖北 武汉)

工作邀请