并行向下兼容的多模ira_ldpc译码器及其译码方法_3

文档序号:9581379阅读:来源:国知局
值,用于归一化最小值算法的处理,最终完成校 验节点的更新。
[0077] 在行扫描的同时,根据本次迭代取出的后验信息,可W对上次迭代的后验信息截 取最高位即符号位,通过异或逻辑能够实时完成硬判决,实现提前迭代判断,节约单次迭代 需要的译码时间。
[0078] 步骤3)列扫描,变量节点Am的更新。
[0079] 变量节点的更新是根据输入信息与本次迭代过程中完成行扫描得到的校验节点 对应的先验信息的更新值与输入信息得到。其公式为:
[0081] 列扫描遍历校验矩阵的每列的所有的非零元,得到每列列重个数的先验信息的累 加和值,与输入信息相加,最终完成后验信息的更新。
[0082] 在列扫描时,由于先验信息的自符号存储地址相对行扫描而言寻址地址并不一 样,所W需要HR0M3来指示列扫描的地址,由主控制器来控制获取HR0M3的值。
[0083] 步骤4)迭代次数加1,重复步骤2和3,直至达到最大迭代次数。
[0084] 对于LDPC译码器来说,需要多次迭代不断更新校验节点和变量节点才能得到正 确的译码结果,降低误码率。设计中通过最大迭代参数来控制迭代的最多次数,在保证性能 的基础上,避免过长时间的译码或者死循环,提高吞吐率。
[0085] 步骤5)译码结果进行调序译码输出。
[0086] 当译码结束W后,需要对正确的译码结果输出。由于在输入LDPC码信息存储时, 对校验矩阵进行了QC变换和拆分变换处理,对应的在译码结束时,需要将译码输出时做对 应输入的反变换。送里反变换的实现方案是通过变换QRAM的地址来实现的。
[0087] 根据图2描绘的整个系统的操作流程,可W看出LDPC译码器可W粗略划分为H个 部分,即初始化、译码迭代和译码输出。为了提高性能,减少LDPC译码器的译码时间,LDPC 译码器采用Pipeline的设计方案。可W得到图3的LDPC译码器的整体时序图。
[0088] 结合图3,将第1顿和第3顿等统称为奇顿,第2顿和第4顿等统称为偶顿。
[0089] 第1顿和第3顿两顿复用0DD_QRAM,第1顿的硬判输出结束先于第3顿的初始化 输入开始送样保证避免读写冲突
[0090] 第2顿和第4顿两顿复用EVEN_QRAM,第2顿的硬判输出结束先于第4顿的初始化 输入开始,送样保证避免读写冲突。
[0091] 每一顿的译码由初始化、译码迭代W及译码输出H个部分构成。可W看出奇顿共 用一块0DD_QRAM,偶顿共用一块EVEN_QRAM,因而QRAM需要两块RAM存储分别存储奇顿和 偶顿的数据,也解释了前面QRAM是IRAM两倍存储量的原因。对于奇顿和偶顿之间,它们可 W有交叠部分,如第2顿的初始化可W在第一顿的译码迭代和译码输出工作的同时进行。 奇顿之间没有交叠部分,比如第1顿的硬判决输出结束先于第3顿的初始化输入开始,偶顿 之间也得满足同样的设计要求,送样能够避免QRAM的读写冲突。针对如此的Pipeline设 计,LDPC译码器需要提供一个状态,来指示LDPC译码器工作在什么样的状态,在何种情况 下可W对LDPC进行初始化操作。对此,设计了一个如图4所示的状态来解决送个问题。P_ IDLE表示的是LDPC译码器处于空闲状态,外部可W连续输入两顿需要等待译码的数据;P_ 0NE_WK表示的是LDPC译码器有一个QRAM处于工作状态,此时外部只能输入一顿需要等待 译码的数据;P_TW0_WK表示的是LDPC译码器两个QRAM都处于工作状态,此时外部不能够 输入译码数据。图中的触发信号INIT_END是初始化结束信号,皿_END是硬判决结束信号。 初始化结束意味着其中一块QRAM已经有有效的数据,需要等待译码迭代和译码输出模块 对其译码,硬判决结束意味着某一块QRAM中数据已经译码完毕,此QRAM中的数据已经译码 完毕,可W输入下一组数据对其重新初始化。
[0092] 前面基本操作步骤中已经说明QC列变换和拆分因子的不同决定了存入QRAM的数 据方式不同。根据IRA-LDPC的构造特点,经过QC变换之后的校验矩阵由PXP块组成,每 个PXP子矩阵都是零矩阵或者单位矩阵或者由循环移位矩阵构成,其中也有一些块包含 有多对角线矩阵,进行拆分变换,一方面是减少双对角线个数,另一方面也是为了降低并行 度,来减少硬件资源的损耗。故进一步对PXP块进行处理,使之尽量不含有双对角线。下 面将采用一种变换方式,可W将原矩阵拆成维度较低的不含有双对角线的子矩阵,W下称 送种变换方式为拆分变换,W9X9矩阵为例,来说明矩阵拆分变换过程W及其特点。
[0093] 如图5可见9X9的矩阵,它是由两个循环移位矩阵重叠而成,偏移量分别为2和 6。选择拆分因子S= 3,则将原9X9矩阵拆成9个3X3的子矩阵。
[0094]拆分公式:^帅KKi巧+[//.Sj。其中,S表示拆分因子,Ps表示拆分之后子 矩阵维度。当拆分因子S= 3时,Ps= 3,拆分公式变为拆分步 骤如下:
[0095] (1)行变换。按照拆分公式进行行变换,i表示当前行号,根据公式计算可W得到 变换之后的行号O(i),计算结果如表1所示。也即是把第0行保持不变,第1行移到第3 行,第2行移到第6行…依次类推。行变换之后的矩阵如图6所示。
[0096]
[0097]表1
[0098] (2)列变换。与行变换类似,此时i表示列号,也就是依照变换规则,将第i列变换 到第O(i)列,同样依照表1进行。列变换后的矩阵如图7所示。
[0099] 由图7可W看出,经过行列变换后,原来的9 X 9矩阵已经变成了9个3 X 3子矩阵, 并且子矩阵不含有双对角线。
[0100] 对应于上述的拆分变换,对初始化输入存入QRAM的存储数据需要相应存储。由于 在拆分变换之前,需要对IRA-LDPC码的校验矩阵做QC变换。我们通过相对简单的实例对 拆分变换的初始化输入存储进行分析。不妨设QC变换后的IRA-LDPC码得到的PXP子矩 阵的准循环特性P为24,拆分因子S等于4,码长为240,码率为1/2,q值为5 (q值由码长 和码率决定,将q值列出来只是为了方便图形说明,实际参数化中并不需要),则QC变换后 对应的QRAM的存储方式如图8上半部所示。郝么在拆分变换W后,对应的QRAM的存储方 式如图8下半部所示。
[0101] 对于任何一种IRA-LDPC码,有着固定的码长、码率。从图9中可W看出,QC变换 后的准循环子矩阵的维度为P值,也可W通过拆分因子的S的设置来减少多对角线矩阵的 个数。由于拆分因子S和维度P的选取决定了并行度Z,通过对Z的灵活设置就能够达到输 入数据存储并行向下兼容的效果。为了保证译码器具有通用性,我们还需要对数据处理单 元等模块做并行向下兼容的处理,后面的介绍相应模块中有所说明。
[0102] 参照图9,W-个4X7的QC-LDPC矩阵为例,说明译码步骤2)和步骤3)。LDPC译 码器本身实际操作的H矩阵相对复杂,行和列的数目远大于此,所述奇偶校验矩阵存储在 片上存储器中,存储内容为非零子矩阵在奇偶校验矩阵中的位置和所有子矩阵的行寻址W 及列寻址的索引,通过主控制读取所述片上存储器中的数据,为译码操作提供有效的数据。 对于不同的码率和码长,仅仅需要更新存储器中的数据,其它的逻辑阵列、运算单元和数据 切换模块只需要通过简单的开关控制即可实现多码率的融合,从而使得解码器具有更高的 灵活性、可配置性,为LDPC译码器的兼容提供了依据。基于LDPC码的检验矩阵,校验节点 和变量节点分别对应奇偶校验矩阵中的行CO~C4和列VO~V6。图中的每个方块是ZXZ 的单位阵的循环右移,方块中的数字是该非零循环子矩阵的偏移量。方框中有一个数字,用 虚线藍色框圈出的原框中的2,表示的是一个度数为1,偏移量为2的非零矩阵。用红色框 圈出的方框中有两个数字,框中的{1,4},表示的是一个双对角阵,即偏移量分别是1和4的 非零循环矩阵。
[010引针对图9中校验矩阵,可W分别得到图10、图11W及图12的行扫描处理、列扫描 处理和提前迭代的时序分布图。图中对单次迭代的行更新和列更新流程有了基本的示意, 下面对行序扫描更新、列序扫描更新W及提前迭代进行具体的描述。
[0104] 在图10中可W看出,行更新扫描分为四级流水线数据处理通路。第一级为QRAM 的依次读取和RRAM的一次性读取操作,读取操作按照并行的方式操作;第二级为QRAM的循 环移位操作和RRAM的数据恢复操作,与此同时,将循环移位得到的QRAM值和RRAM数据恢 复得到的值相减处理,其中循环移位的偏移量来源于HR0M1,主控制器从HROMl中读取该行 块对应的非零子块矩阵的偏移量并传送给循环移位寄存器,该偏移量与当前所处理的非零 子矩阵相对应;第H级通过归一化最小和算法将QRAM和RRAM的差值进行串行搜索,得到更 新的先验信息,归一化最小和算法得到行块对应的并行Z路的集合(最小绝对值、次小绝对 值、异或符号、最小绝对值索引W及先验信息的自符号信息);第四级即将更新的先验信息 存入到RRAM中,主控制结束行更新扫描译码过程。
[0105] 由图11示意得到,列更新扫描也分为四级流水线数据处理通路。第一级为RRAM 的读取操作,读取操作按照并行组的方式操作;第二级为RRAM的循环移位操作,其中循环 移位的偏移量来源于HR0M2,主控制器从HR0M2中读取该列块对应的非零子块矩阵的偏 移量并传送给循环移位寄存器,该偏移量与当前所处理的非零子矩阵相对应;第H级为将 RRAM循环移位后的结果进行数据恢复操作,与此同时,在每一列恢复的第一个列子块的同 时,需要将此列对应的IRAM的值并行读出,数据恢复单元采用的是上次迭代得到的归一化
当前第3页1 2 3 4 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1