论文部分内容阅读
低密度奇偶校验(Low-density Parity-check,LDPC)分组码,这种码型在定义的时候是利用了它自身的校验矩阵的,因为校验矩阵具有稀疏特性,所以LDPC码在译码的时候,可以采用置信传播(Belief Propagation,BP)这种译码算法进行译码,此种码的错误性能和香农极限之间的差异非常小。卷积码是一种具有编码器记忆特性的码,在误码性能上,分组码是比这种码的性能差的。低密度奇偶校验卷积码(Low-density Parity-check Convolutional Codes,LDPC-CC)是包含卷积特性这个特性的LDPC码,其校验矩阵具有与LDPC码相同的特性。同时,它也具有卷积码编码器的记忆特性,所以其编码器和译码器的结构设计很特殊。本文通过研究和分析LDPC-CC码的概念和结构,引出它的校验矩阵的构造方法。因为LDPC-CC码校验矩阵的特性和LDPC码类似,也有稀疏性这个特性,所以LDPC-CC码在译码的时候也可以采用BP译码算法;同时,由于它还具有卷积码的优点,其校验矩阵是包含记忆特性的,因此编码后其变量节点与校验节点之间的约束关系被限制为固定长度,所以LDPC-CC码这种码的译码结构可以设计为流水线结构。本文的主要内容是LDPC-CC码的译码器结构设计。本文通过仿真LDPC-CC码的编码和译码获得了大量的模拟数据。根据这些数据,影响LDPC-CC码译码性能的几个关键因素如译码算法、记忆长度、比重因子就被分析得到了。因为LDPC-CC码译码器是具有较高的译码时延和较低的存储效率这两个缺点的,所以针对LDPC-CC码的流水线译码器,本文重点研究了三种改进方案:一种是设计一个规则,使处理器暂停计算,即部分校验是由处理器每次做出硬判决而获得的序列来完成的。一种是采用按需变量节点激活计划(On-Demand Variable Node Activation Schedule,OVA),在校验节点和变量节点的信息更新时,做出一些调整,这样的调整不会更改校验节点的激活顺序,但是只要校验节点激活需要消息,就激活变量节点,而不是激活将要离开操作区域的变量节点。最后一种是采用紧凑型流水线译码架构,让相邻的操作区域重叠以减少译码器的总存储需求。在这种布置中,由于属于重叠区域的比特尚未为下一次迭代做好准备,所以误码率(Bit Error Rate,BER)有望增加。仿真结果表明,采用这三种改进的译码算法,不仅能够降低译码器的初始时延,同时也会减小译码的复杂度,从而提高了译码器的性能。论文在对LDPC-CC码译码器进行了深入地研究和分析之后,构建出了译码器的整体硬件实现结构。在QuartusⅡ这个软件中,使用Verilog硬件描述语言(Hardware Description Language,HDL)这种输入的方式,分别对译码器的每个子模块进行硬件语言程序的编写。然后使用PowerPlay Early Power Estimator这个工具,通过设置不同的频率值来对LDPC-CC码译码器整体的结构进行了功耗的测试,最后通过功耗测试结果分析了LDPC-CC码译码器的相关资源使用情况。结果表明,与流水线译码算法相比,虽然OVA译码算法的逻辑单元和寄存器使用量都增加了,但是OVA译码算法性能却明显优于流水线译码算法。因此,牺牲一些硬件资源来达到提高译码性能的目的是非常有价值的。