Ldpc译码方法及译码器的制作方法

文档序号:7513502阅读:293来源:国知局
专利名称:Ldpc译码方法及译码器的制作方法
技术领域
本发明涉及低密度奇偶校验(Low Density Parity Check)译码,
更具体地,涉及一种LDPC译码方法及译码器,用于高速无线系统 或其它场合。
背景技术
低密度奇偶校验(Low Density Parity Check, LDPC)码是一类 具有稀疏校验矩阵的线性分组码,不仅有逼近Shannon限的良好性 能,而且译码复杂度较低,结构灵活,是近年信道编码领域的研究热 点,目前己广泛应用于深空通信、光纤通信、卫星数字视频和音频广 播等领域。此外,LDPC码已成为第四代通信系统(4G)强有力的竞争 者。本申请涉及LDPC译码器在硬件中的实现,特别是在FPGA、 或现场可编程门阵列器件的实现。
在硬件实现LDPC译码器之前,首先要解决的技术问题是对校 验节点的变换函数进行近似处理,而不同的近似处理会导致不同的实 现精度与实现复杂度。因此,必须在实现精度与实现复杂度这两者之 间进行折中处理。
下面给出根据现有技术的LDPC和积(SP)译码算法。如图1 和2所示,标准SP算法可描述为
初始化首先,对变量节点到校验节点(mv2c)信息以及校验 节点消息(Qc)进行初始化。其中mv2c信息保存边沿信息,而Qc 消息保存来自所有变量节点的信息和。在初始化中,将mv2c初始化 为变量节点的先验知识,即,对数似然比yv。利用变换函数F(x)与yv 对校验节点消息进行初始化,-
迭代译码利用变换函数F (X)及其反函数F"(X),通过迭代来计算所有变
量节点n以及计算所有校验节点m; 译码判决
进行后验信息计算和判决输出。
可以看出,F(x)与F、x)两个变换函数是LDPC和积译码算法 中两个非常重要的函数,F(x)与F、x)这两个函数互为反函数,且表 达式相同,它们均可以表达为^g2(^ + i)/(^-1》。直接实现这个函数 对于FPGA来说是几乎不可能的。因此对这个函数的近似处理的研 究一直在继续。
下文给出了一种较为常见的一种近似方法。该近似方法的近似过 程包括
1. 首先计算并近似得到
F一i(jc) = F—'( (x),|x|) = *[C2 — (y/oor)log2(|;c|)]
2. 然后,对近似后结果进行累加
力F-1 (x,)=力(—1),") *[C2 - log2(|x,I)]
,=1 ,=1
以上方法比较简单,但是它也较大地损伤了性能。其原因在于
1. 在计算F、X)时,近似方法被使用一次,这引入一定的误差; 在第二个计算时进行了累加处理,所以误差在最坏的情况下也随之线 性增加。随着n的增加,在某些场合下使用它性能有可能是无法接受 的;
2. 函数(,or)log,也是近似处理的当一个数使用二进制表示时,
它返回从MSB到LSB方向第一个不为O比特的位置,如 (floor)log2(0011 1000)=5。这种近似处理比较容易实现,但是它没有 考虑次低比特位置上不为O比特的影响,例如(floor)log2(0011 1000) 是5,而(floor)log2(0010 0000)也是5,所以这种近似方法不够 精确。鉴于这种情况,本文提出了一种在LDPC译码中校验节点的处理
方法,有效地克服现有技术存在的不足,并且容易在FPGA上编程
实现。

发明内容
本发明提供了一种低密度奇偶校验码译码方法,包括步骤对变
量节点到校验节点mv2c信息以及校验节点消息Qc进行初始化;利 用变换函数F(x)的反函数P1(x),通过迭代来计算变量节点n以及校
验节点m;进行后验信息计算和判决输出,其中,对所述反函数F、X)
进行累加求和,并对累加求和的结果进行近似处理。 根据本发明的另一方面,提供了一种低密度奇偶校验码译码器,
包括初始化模块,对变量节点到校验节点mv2c信息以及校验节点
消息QC进行初始化;迭代译码模块,利用变换函数F(X)的反函数P 1(x),通过迭代来计算变量节点n以及校验节点m;判决模块,进行
后验信息计算和判决输出,其中,在所述迭代译码模块中,对所述反
函数F人x)进行累加求和,并对累加求和的结果进行近似处理。
利用本发明,能够在FPGA或硬件电路中实现LDPC码译码中有
关变换函数的计算,提高了系统性能。


图1示出了 LDPC译码的框架;
图2示出了标准和积算法的译码算法;
图3示出了根据本发明的译码器的方框图4示出了本发明与现有技术近似方法对于浮点函数拟合的性能 比较(n为6, (32为6);
图5示出了本发明与现有技术近似方法对于浮点函数拟合的性能 比较(n为20, 。2为6);
图6示出了本发明与现有技术近似方法对于浮点函数拟合的性能 比较(n为6, 。2为8);图7示出了本发明与现有技术近似方法对于浮点函数拟合的性能
比较(n为6, q为10);
具体实施例方式
如图3所示,根据本发明的LDPC译码器10可以包括初始化模 块11、迭代译码模块12以及判决模块13。下面将参考图1-3来详细 描述根据本发明的LDPC译码方法。
首先,在初始化模块11中,对变量节点到校验节点mv2c信息 以及校验节点消息Qc进行初始化。其中mv2c信息保存边沿信息, 而Qc消息保存来自所有变量节点的信息和。在初始化中,将mv2c 初始化为变量节点的先验知识,即,对数似然比y^利用变换函数F(x) 与y,对校验节点消息进行初始化。
接下来,在迭代译码模块12中,利用变换函数F(x)及其反函数 F、x),通过迭代来计算所有变量节点n以及所有校验节点m。其中, 如图2所示,信息节点接收到的所有信息S可以表示为
'(Q广F(mvc》
ceN(v)
将利用S和变换函数F(x)及其反函数F、x)来计算变量节点和校 验节点的信息。根据本发明,在所述迭代译码模块中,对反函数F、x) 进行累加求和,并对累加求和的结果进行近似处理。下文将对根据本 发明的反函数F-乂x)的计算进行详细描述。
最后,在判决模块13,进行后验信息计算和判决输出。
下面将对计算反函数F、x)累加和的近似处理进行详细描述。
根据现有技术的方法,可以得到 F-' (x)=厂1 (*"W,|x|) = (—* [C2 - (/7離)log2
以及
t F-' (x,)=力(一i),") * [c2 — (y/縱)iog2 (卜,|)],在根据本发明的改进方法中,并不逐个对F、X)进行近似,而是 先进行累计求和,在累加求和基础上进行有效近似处理
力厂1 (x,) = X[(-l)她)*C2] - W離)》。g2(|《 )]
':".)公式(1)
=t [(-1),") * c2 ] - (y/。。r) i。g2 (n卜,r'一)]
不妨假设
a) ^'为正(符号位位0),''从1到"';
b) ^为负(符号位位1), z从","到"。
对于、,W可以被表达为二进制形式 |x,| = 2A x + 2Pi—1 x _i + 2P',2 x _2 +…+ "o
这里应当注意,a的取值为0或者1,是一个数表示为二进制数 时对应比特位置上的值;p为对应的比特位置的索引;C是一个预设 定好的常数,n是与变量节点有连接的校验节点的数目。在二进制表
达式中,多个因子"p,, .-',…,"。中,""'为1,其它因子可以为 1或者为0。
如果近似W为x、 ' x"W),即只使用其高两阶表达式 (2P' x + 2" x —,),然后公式(1 )可以近似表达为
f[(2、f x —,) |>-'(x,) = t[(-l)、'g"")*C2]-C/7o。01og2(^-)]公式(2)而公式(2)的分子分母,即 f[(2P'x +2"-'与
f](2P'x +2^ ,如果只使用其高两阶因子,公式(2)可以进一
'=",+1 '
步简化为
'、 ", 公式(3)
-[!>- !>+( g"i+a5xix-i) g"i+a5x
/=i/,+i '=1 '=",+1
在公式(3)中,加法器、(floor)log2与0.5的乘法均可以很容易在FPGA 或硬件电路中实现。
为了证明本发明所取得的性能增益,本发明提供了计算机仿真结 果,进行了 4种不同参数设置的仿真。
仿真1中n设置为6, 。2设置为6。仿真2中n设置为20, C2 设置为6。仿真3中n设置为6, C2设置为8。仿真4中n设置为6, 〇2设置为10。比较当前近似方法和提出的方法的在实现累加后性能 的比较,其性能参照浮点的性能,具体仿真结果参照图4、 5、 6和7。
从图4、 5、 6和7中可以看出,提出的方法相对于当前方法拟 合的更好,更接近浮点函数累加后的值。
权利要求
1.一种低密度奇偶校验码译码方法,包括步骤对变量节点到校验节点mv2c信息以及校验节点消息Qc进行初始化;利用变换函数F(x)的反函数F-1(×),通过迭代来计算变量节点n以及校验节点m;进行后验信息计算和判决输出,其中,对所述反函数F-1(x)进行累加求和,并对累加求和的结果进行近似处理。
2. 根据权利要求1所述的方法,其特征在于,利用变量的二进制 形式对累加求和的结果进行近似处理。
3. 根据权利要求2所述的方法,其特征在于,利用以下公式对累 加求和的结果进行近似处理ZD =力(-*C2]-[|>, - |>, +C/7。。/)l。g2(l+O.5x|]Vl)-C/7。。01。g2(l+O.5x iX』其中,a的取值为0或1,是当一个数表示为二进制数时对应比特位 置上的值;p为对应的比特位置的索引;C是一个预设定好的常数, n是与变量节点有连接的校验节点的数目。
4. 一种低密度奇偶校验码译码器,包括初始化模块,对变量节点到校验节点mv2c信息以及校验节点 消息Qc进行初始化-,迭代译码模块,利用变换函数F(x)的反函数F"(x),通过迭代 来计算变量节点n以及校验节点m;判决模块,进行后验信息计算和判决输出, 其中,在所述迭代译码模块中,对所述反函数F-、x)进行累加求 和,并对累加求和的结果进行近似处理。
5. 根据权利要求4所述的译码器,其特征在于,在所述迭代译码 模块中,利用变量的二进制形式对累加求和的结果进行近似处理。
6. 根据权利要求5所述的方法,其特征在于,在所述迭代译码模块中,利用以下公式对累加求和的结果进行近似处理/=力[(一D.、'-,) *C2]—[|>, — ^>,. +C/7OW)lo&(l+0.5x|X—,)—C/7oo力lo&(l+0,5x i^,,)]其中,a的取值为0或者1,是一个数表示为二进制数时对应比特位 置上的值;p为对应的比特位置的索引;C是一个预设定好的常数, n是与变量节点有连接的校验节点的数目。
全文摘要
一种低密度奇偶校验码译码方法,包括步骤对变量节点到校验节点mv2c信息以及校验节点消息Qc进行初始化;利用变换函数F(x)的反函数F<sup>-1</sup>(x),通过迭代来计算变量节点n以及校验节点m;进行后验信息计算和判决输出,其中,对所述反函数F<sup>-1</sup>(x)进行累加求和,并对累加求和的结果进行近似处理。利用本发明,能够在FPGA或硬件电路中实现LDPC码译码中有关变换函数的计算,提高了系统性能。
文档编号H03M13/11GK101552612SQ20081009184
公开日2009年10月7日 申请日期2008年4月3日 优先权日2008年4月3日
发明者伟 白, 黄周松 申请人:三星电子株式会社;北京三星通信技术研究有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1