译码器的结构

1 串行结构

串行译码器是译码器中设计最为简单的一种,在信息处理过程中因为只有一对信息处理单元,因此各个节点需要排队处理,所以校验节点的更新是逐行进行的,变量节点的更新是逐列进行的。

含有m个校验节点和n个变量节点的校验矩阵的译码时间可如下计算:如果进行一次变量节点更新的时间为,进行一次校验节点更新所需时间为,那么进行串行译码,一次处理过程所需要的时间就为,下图描述了串行译码器的结构。

串行译码器结构简单,占用硬件资源少,但是这种串行的结构,减少硬件资源的同时也会拖慢译码速度,对于高吞吐率、高译码速率的译码要求来说不符合设计要求。

2 并行结构

全并行译码器的吞吐率最高,这种高吞吐率是以庞大的硬件资源作为支撑的,这种结构每一个节点都需要一个处理模块,规模庞大。

如上一小结所述的𝑚 × 𝑛大小的校验矩阵,那么在校验矩阵中的每一个节点都需要一个处理模块,共需要𝑚 + 𝑛个处理单元,对应变量节点和校验节点的信息更新处理模块。

进行一次变量节点更新的时间为,进行一次校验节点更新所需时间为,那么并行译码器的时间就为+,这相较于串行译码器的结构,虽然消耗了大量的资源,但是带来了译码速度的大幅度提高。下图为并行译码器的结构示意图。

如上图所示为全并行的译码器结构,在三种结构中译码速率最高、时延低,吞吐量比串行译码器有很大提升,但是硬件资源的消耗也十分庞大,当码长增大时,需要的硬件资源会平方倍的增长。

此外,这种译码器的结构灵活性较差,不适合可变码长和码率的译码器结构,因此全并行结构适合有高吞吐量要求的固定码长、固定码率和固定校验矩阵的LDPC码。

3 部分并行结构

为了使译码速率和资源消耗能够得到一个折中,部分并行译码器在这种需求下被提出。这种部分并行的结构能够提升译码速率、根据并行度的大小可以提高译码系统的吞吐量而且减少资源消耗。

所以这种部分并行的结构应用更为广泛。如果一个部分并行结构的译码器,它的行并行度设为,列并行度为,按照前文提到的校验节点处理时间和变量节点处理时间,那么进行一次迭代所需要的时间为

可以看到相较于串行译码器的结构,时间上有不小提升,提升的时间多少和并行度的设定有关。

部分并行译码器与串行译码相比,提升了译码速率,同时也减少了全并行译码大量资源的消耗。部分并行译码器的结构如下图所示。

对于QC-LDPC 码来说,行并行度和列并行度的划分就可以根据子矩阵来进行划分,每个子矩阵内节点的更新由一对变量节点更新模块和校验节点更新模块处理。

同一时刻,所有并行模块共同处理同一行的节点,下一时刻处理下一行,直到所有行都被处理完,就完成了一次水平迭代;水平迭代完成之后,所有校验阶段处理单元同时更新对应子矩阵的某一列,直到所有列都被处理完成,完成了一次垂直迭代。就完成了一次迭代处理过程。

相关推荐
夏鹏今天学习了吗8 小时前
【LeetCode热题100(57/100)】括号生成
算法·leetcode·职场和发展
三花聚顶<>8 小时前
310.力扣LeetCode_ 最小高度树_直径法_DFS
算法·leetcode·深度优先
mit6.8248 小时前
[VT-Refine] 仿真平台 | Isaac Gym引擎 | easysim-envs配置
算法
温柔一只鬼.8 小时前
Java数组
java·开发语言·算法
努力学算法的蒟蒻8 小时前
day04(11.2)——leetcode面试经典150
算法·leetcode
CoovallyAIHub9 小时前
视觉语言模型(VLM)深度解析:如何用它来处理文档?
深度学习·算法·计算机视觉
Cyyyy_g9 小时前
【2025 SWPU-NSSCTF 秋季训练赛】gift_F12
网络协议·网络安全·https·状态模式
CoovallyAIHub9 小时前
估值百亿独角兽创始人硕士论文曝光!宇树科技王兴兴的“性价比”思维10年前就已注定
深度学习·算法·计算机视觉
敲代码的嘎仔9 小时前
数据结构算法学习day3——二分查找
java·开发语言·数据结构·学习·程序人生·算法·职场和发展