当前位置:首页 > 工业控制 > 电子设计自动化

摘 要: 对空间数据系统委员会(CCSDS)推荐的QC-LDPC码进行了研究,给出了改进的分层译码算法。基于改进的分层译码算法设计部分并行结构QC-LDPC译码器,译码速率较快,适合应用需求,并通过仿真验证所设计的译码器的性能。
关键词: LDPC码;准循环;分层译码算法;部分并行结构

LDPC码[1](Low-Density Parity-Check Code)已经被证明是实用的好码,因其优异的纠错性能和高效的迭代译码算法而具有广阔的应用前景。QC-LDPC码(Quasi-Cyclic LDPC Code)是根据系统化构造方法构造的一类非常重要的LDPC码,目前已经成为LDPC码硬件实现研究的热点。空间数据系统委员会(CCSDS)推荐了多种码长和码率的QC-LDPC码作为卫星通信和深空通信的信道编码标准[2]。
为满足不同码率的需要,同时考虑译码器应当具有低复杂度和低功耗,本文设计了一种基于改进分层译码算法的译码器结构,以满足实际需要。

其中每个子矩阵Ai,j都是一个z×z的循环方阵,此方阵只可能是零矩阵、单位阵或者单位循环移位后的矩阵。
置信传播算法[3-4]BP(Belief-propagation decoding algorithm)是很重要的一类基于LDPC码的译码算法,因其具有严格的数学结构和良好的性能,可以对译码算法的性能做定量分析。修正最小和(MMSP)译码算法[5]实际采用的是BP算法机制,虽然具有较低复杂度并保持良好的性能,但在实际应用中会占用大量硬件资源,且译码延时较长。基于OMS(Offset Min-Sum)的分层译码算法[6]能保证信息马上得到传递,从而改进信息的收敛性。


2 译码器的FPGA实现
2.1 译码器结构总体设计
译码器有三种不同的译码结构:全并行结构、串行结构和部分并行结构。部分并行结构避免了全并行结构资源消耗过大、硬件实现难度大的缺点,同时译码速率比串行结构快得多,十分适于实际应用。然而,部分并行结构对校验矩阵中非零元素的分布有特定的要求,而现有的大多数LDPC码其校验矩阵中“l”的分布具有随机性,因此译码器采用部分并行结构十分困难。
QC-LDPC校验矩阵H的每行校验子矩阵中所有行对应的校验节点自然地被划分为一个校验节点集合,而且任意两个集合Li和Lj,满足Li∩Lj=?准。集合Li中的任意两个校验节点Ci、Cj不与相同的变量节点相连,因此可以并行地对每一集合中的校验节点Ci进行更新。
为此,借鉴全并行结构的思想,对串形结构进行修改,增加译码器中的并行节点更新模块(NUU)个数,得到的部分并行结构共有b个NUU单元。b为循环子矩阵的行数。
QC-LDPC并行译码器模块主要由以下几个模块构成:输入缓冲模块、控制模块、节点更新模块(NUU)、数据存储模块、数据重构模块、校验模块和译码输出缓冲模块,如图1所示。其中,控制模块分别产生各子模块的使能,它是译码器的核心控制模块,控制着迭代的正确进行;NUU为译码器的核心运算模块;数据缓冲模块用来判断译码器速率是否大于进入译码器的数据速率;数据存储模块完成中间数据的存储;数据重构模块将变量节点更新的输出数据按照校验节点运算的取数顺序重新排列;校验模块用来校验判决出的码字是否满足校验矩阵。

2.2 节点更新模块(NUU)
本文实现的译码器采用基于修正因子的分层译码算法,每一层的校验节点处理完成以后,信息立即被用来更新变量节点。它的结果被用来提供给下一层的校验节点处理。因而校验节点处理模块和变量节点处理模块可以合并成同一个模块,简称节点更新模块NUU(Node Update Unit)。
本文只研究信息位k=1 024的QC-LDPC码,其结构如表1所示。

图2所示的模块是每层b路并行处理单元中的一个,b为校验矩阵H的循环子矩阵的行数。为了降低部分并行LDPC码译码器中连接的复杂度,节点更新模块(NUU)中节点更新的信息都采用数据串行方法。变量节点的度决定了校验节点单元一次处理的节点数,将校验节点单元处理的节点数设为节点变量的最大值,可以通过逻辑选通来适应不同的码率。

2.3 数据存储模块
本文对接收到的原始数据和计算过程产生的中间数据都采用了8 bit整数量化,其中1 bit为符号位,7 bit为数据位。将译码开始时外部输入的数据存入判决信息存储器时,将接收的前b个二进制数据的最高位依次级联为一个b bit的数据,存入判决信息存储器1,地址为0;将前b个数据的次高位级联为一个b bit的数据,存入判决信息存储器2;然后依次将b个数据剩下的相同位置的数据级联,存入判决信息存储器2:7,地址为0;将接收的后b个数据按上述同样的方式存入判决信息存储器1:7,地址为1;当待译码字的所有数据都存入了判决信息存储器后,就开始译码。图3为数据存储模块框图。

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

随着科技的飞速进步,人工智能(AI)已经逐渐成为了引领新一轮科技革命和产业变革的核心驱动力。AI不仅在改变着我们的日常生活,还在推动各行各业的创新发展。展望未来,人工智能的发展将呈现出哪些趋势呢?本文将从技术、应用、伦理...

关键字: 人工智能 算法 AI技术

机器学习算法不会要求一个问题被 100%求解,取而代之的是把问题转化为最优化的问题,用不同的算法优化问题,从而比较得到尽量好的结果。

关键字: 机器学习 算法 最优化

据数据类型的不同,对一个问题的建模有不同的方式。在机器学习或者人工智能领域,人们首先会考虑算法的学习方式。在机器学习领域,有几种主要的学习方式。

关键字: 机器学习 人工智能 算法

NVIDIA 量子模拟平台将通过各大云提供商提供,帮助科学家推进量子计算和算法研究

关键字: 量子计算 算法 量子云

随着科技的飞速发展,人工智能(AI)已经成为当今科技研究的热点和前沿。AI的快速发展不仅带来了许多新的应用场景和商业模式,也在推动科技进步的同时,引发了一系列关于其未来发展方向和潜在影响的深入讨论。本文将对人工智能的科技...

关键字: 人工智能 AI技术 算法

机器学习算法:机器学习是一种让计算机通过学习数据和模式来改进自身算法的技术。这些算法包括监督学习、无监督学习和强化学习。

关键字: 人工智能 机器学习 算法

随着信息技术的快速发展,机器学习作为人工智能的核心技术之一,正逐渐渗透到各个领域,引领着一场前所未有的科技变革。在机器学习的实际应用中,有三大重点至关重要,它们分别是数据质量、算法选择与模型评估。本文将深入探讨这三大重点...

关键字: 机器学习 数据质量 算法

在人工智能的浪潮中,机器学习已逐渐成为推动科技进步的核心动力。机器学习技术的广泛应用,从图像识别到自然语言处理,从智能推荐到自动驾驶,都离不开其三个基本要素:数据、算法和模型。本文将深入探讨这三个基本要素在机器学习中的作...

关键字: 机器学习 算法 人工智能

随着信息技术的迅猛发展,机器学习作为人工智能的核心技术之一,已经深入到了各个领域,为我们的生活和工作带来了翻天覆地的变化。无论是智能语音助手、自动驾驶汽车,还是个性化推荐、疾病预测,这些令人惊叹的应用背后,都离不开机器学...

关键字: 机器学习 人工智能 算法

机器学习的方法是指利用统计学方法和算法让计算机自动学习模式和规律,并通过数据进行预测和决策的一门学科。机器学习的主要目标是让计算机能够从数据中自我学习,通过训练模型来提高自身的性能。机器学习的方法可以从高层次上分为监督学...

关键字: 机器学习 算法
关闭
关闭