发明名称 基于FIFO分段存储的QC-LDPC码部分并行译码方法
摘要 本发明公开了一种基于FIFO分段存储的QC-LDPC码部分并行译码方法,主要解决现有技术在QC-LDPC译码硬件实现中存在的大量地址控制逻辑的问题。其技术要点是:根据校验矩阵H的准循环特性,确定独立的译码单元,并对其分块;将译码更新过程转化成了独立译码单元的行更新和列更新;利用一组FIFO建立形成CFU存储空间和VFU存储空间,将存储单元进行连接,并加入切换信号;在独立译码单元的行更新和列更新时,通过切换信号对CFU存储空间和VFU存储空间进行选择,并通过对CFU存储空间或者VFU存储空间的内部循环移位完成。该译码方法操作简单,取消了硬件实现中的大量地址控制逻辑操作,便于在工程上实现QC-LDPC码的高速并行译码,可用于QC-LDPC码部分并行译码器的硬件实现。
申请公布号 CN102064837A 申请公布日期 2011.05.18
申请号 CN201010604644.3 申请日期 2010.12.24
申请人 西安电子科技大学 发明人 陈彦辉;刘玲;闫建华;黄兴
分类号 H03M13/11(2006.01)I 主分类号 H03M13/11(2006.01)I
代理机构 陕西电子工业专利中心 61205 代理人 王品华;朱红星
主权项 1.一种基于FIFO分段存储的QC-LDPC码部分并行译码方法,包括如下步骤:(1)已知校验矩阵H<sub>bM×bN</sub>由M×N个大小为b×b的循环方阵A<sup>i,j</sup>构成,其中A<sup>i,j</sup>由ω个b×b的单位阵循环右移<img file="FDA0000040373260000011.GIF" wi="61" he="55" />次的方阵相加而成,这些方阵记为<img file="FDA0000040373260000012.GIF" wi="95" he="55" />并以<img file="FDA0000040373260000013.GIF" wi="69" he="55" />作为独立的译码单元,下标d的取值范围为1~ω,<img file="FDA0000040373260000014.GIF" wi="61" he="55" />是方阵<img file="FDA0000040373260000015.GIF" wi="69" he="55" />第一行中“1”的位置,<img file="FDA0000040373260000016.GIF" wi="61" he="55" />称为起始地址,<img file="FDA0000040373260000017.GIF" wi="61" he="55" />的取值范围为0~(b-1);(2)将独立的译码单元<img file="FDA0000040373260000018.GIF" wi="69" he="55" />分成均匀的块,设块的大小为J×J,分成的块数K=b/J,该块数K称为译码并行度,<img file="FDA0000040373260000019.GIF" wi="69" he="55" />中第m行第n列的块用<img file="FDA00000403732600000110.GIF" wi="79" he="58" />表示,并以<img file="FDA00000403732600000111.GIF" wi="79" he="58" />作为最小的译码单元,<img file="FDA00000403732600000112.GIF" wi="79" he="58" />中下标m和n的取值范围都为1~K;(3)设起始地址<img file="FDA00000403732600000113.GIF" wi="61" he="55" />的表达式为<img file="FDA00000403732600000114.GIF" wi="309" he="57" />其中a是<img file="FDA00000403732600000115.GIF" wi="61" he="55" />被J整除的最大整数,a称为空间起始位置,a的可能取值为0~(K-1),β是<img file="FDA00000403732600000116.GIF" wi="61" he="55" />除以J的余数,β称为偏移地址,β的可能取值为0~(J-1);(4)将<img file="FDA00000403732600000117.GIF" wi="205" he="58" />一共K个最小译码单元合并成一个大块,记为<img file="FDA00000403732600000118.GIF" wi="89" he="55" />则<img file="FDA00000403732600000119.GIF" wi="538" he="58" />每个<img file="FDA00000403732600000120.GIF" wi="62" he="55" />包含J行,b列,则<img file="FDA00000403732600000121.GIF" wi="512" he="56" />把每一个<img file="FDA00000403732600000122.GIF" wi="62" he="55" />作为译码时校验节点更新的最小更新单元,根据每个<img file="FDA00000403732600000123.GIF" wi="62" he="55" />构建对应的一个CFU存储空间R’<sub>m</sub>,下标m的取值范围是1~K,在每个周期内完成对K个最小更新单元<img file="FDA00000403732600000124.GIF" wi="62" he="55" />中同一行的更新,经过J=b/K个周期,完成对独立译码单元<img file="FDA00000403732600000125.GIF" wi="69" he="55" />的行更新;(5)将<img file="FDA00000403732600000126.GIF" wi="196" he="58" />一共K个最小译码单元合并成一个大块,记为<img file="FDA00000403732600000127.GIF" wi="97" he="55" />则<img file="FDA00000403732600000128.GIF" wi="533" he="58" />每个<img file="FDA00000403732600000129.GIF" wi="72" he="55" />包含b行,J列,则<img file="FDA00000403732600000130.GIF" wi="520" he="55" />把每一个<img file="FDA00000403732600000131.GIF" wi="72" he="55" />作为译码时变量节点更新的最小更新单元,根据每个<img file="FDA00000403732600000132.GIF" wi="72" he="55" />构建对应的一个VFU存储空间R”<sub>n</sub>,下标n的取值范围是1~K,在每个周期内完成对K个最小更新单元<img file="FDA0000040373260000021.GIF" wi="72" he="55" />中同一列的更新,经过J=b/K个周期,完成对独立译码单元<img file="FDA0000040373260000022.GIF" wi="69" he="55" />的列更新;(6)设译码过程的迭代次数为N,重复步骤(4)和步骤(5)N次,得到译码结果为C,直到满足译码终止条件时<img file="FDA0000040373260000023.GIF" wi="354" he="67" />完成QC-LDPC码部分并行译码。
地址 710071 陕西省西安市太白南路2号
您可能感兴趣的专利