解码设备、解码方法和程序的制作方法

文档序号:7514079阅读:325来源:国知局
专利名称:解码设备、解码方法和程序的制作方法
技术领域
本发明涉及解码设备、解码方法和程序。更具体地,本发明涉及能够 对具有互相不同的结构的多个LDPC(低密度奇偶校验)码进行解码并具有 较小电路尺寸的解码设备。本发明还涉及该解码设备所采用的解码方法和 实施该解码方法的程序。
背景技术
通信系统采用编码技术来执行通过有噪声的通信信道的可靠通信。在 例如卫星网络这样的无线系统(或无线电系统)中,有许多因地理和环境原 因造成的噪声源。各通信信道可被视为具有固定容量的信道、可被视为能 够在特定SNR(信噪比)呈示每符号比特数的信道,并规定了被称为香农极 限的理论上限。因此,编码设计具有达到逼近香农极限的速率这一目的。 这一目的与带宽受限的卫星系统具有特别紧密的关系。
近年来,开发出各自呈现出接近香农极限的性能的编码方法。各编码 方法还被称作在基于Turbo码的编码处理中采用的所谓Turbo编码才支术, Turbo码如PCCC(Parallel Concatenated Convolutional Code,并行^# 巻积码)和SCCC(Serially Concatenated Convolutional Code,串行链接巻 积码)。尽管开发了这些Turbo码,但LDPC码(低密度奇偶校验码)已吸 引了很大注意力。LDPC码是在为人所知很长时间的编码方法中使用的 码。
LDPC码是由R. GL Gallager在《Low Density Parity Check Codes》 (Cambridge, Massachusetts, MIT Press, 1963年)中首先提出的。此后, 如在D. J. C Mackay所著的《Good error correcting codes, based on veryparse matrices》(提交至IEEE Trans. Inf. Theory, IT一5, pp. 399 ~ 431, 1999)以及M. GL Luby、 M. Mitzenmacher、 M. A. Shokrollahi和D. A. Spielman所著的《Analysis of low density codes and improved designs using irregular graphs》(ACM Symposium on Theory of Computing的论 文集,pp. 249 ~258, 1998)中所记威,LDPC码再次引^A们的关注。
近年来开展的研究结果逐渐表明在LDPC码的情况下,通过增加 码长度,有可能以与Turbo码相同的方式展示出接近香农极限的性能。 此外,LDPC码具有示出最小距离与码长度成比例的性质。因此,LDPC 码的特征在于LDPC码提供这样的优点即良好的分组误差概率特性、 以及几乎不发生所谓误差平底(error floor)现象。误差平底现象是在如 Turbo码的码的解码特性中》见察到的现象。
以下具体"^兌明LDPC码。注意,LDPC码是线性码,而且不一定是 二维码。不过,在以下说明中将LDPC码作为二维码来进行解释。
LDPC码的最显著特征是定义该LDPC码的奇偶校验矩阵是稀疏 矩阵。稀疏矩阵是这样的矩阵其中值为1的元素个数非常少。设记号H 表示稀疏奇偶校验矩阵。图1是示出典型的稀疏奇偶校验矩阵H的图。 如图1所示,各列的汉明权是3,而各行的汉明权是6。列或行的汉明权 是作为值均为1的元素而均包含在列或行中的矩阵元素的个数。
如上所述,由对于各列具有恒定的汉明权并对于各行具有恒定的汉明 权的奇偶校验矩阵H定义的LDPC码被称作规则LDPC码。另 一方面, 由汉明权随各列而变且汉明权随各行而变的奇偶校验矩阵H定义的 LDPC码被称作不规则LDPC码。
基于该LDPC码的编码处理是如下执行的即基于定义LDPC码的 奇偶校验矩阵H而创建生成矩阵G。接着将该生成矩阵G乘以二维信息 消息u从而产生编码字c。具体地,用于执行基于LDPC码的编码处理的 编码设备创建生成矩阵G,对于该生成矩阵G,关于从定义LDPC码的 奇偶校验矩阵H而得的重排序后的矩阵H1,等式GlC成立。如果生 成矩阵G是kxn矩阵,则编码设备将生成矩阵G乘以k位的信息消息, 以产生由n位组成的编码字(-uG)。在以下的说明中,由k位组成的信息 消息也称作向量u。编码设备最后通过将值为0的各编码字位映射至 并将值为1的各编码字位映射至"-l"、从而将编码字c经过预先确定的 通信线路而发送至接收方。总之,编码设备基于由奇偶校验矩阵H定义 的LDPC码而将信息消息u编码为编码字c。注意,如果例如由n位组成的编码字c是这样的组织码其与由I^ 是(n-k)个奇偶校验位的k位信息消息组成的n位序列相匹配,则在图2 所示的由(n-k)行和n列组成的(n-k)行xn列奇偶校验矩阵H中,与由n位 组成的编码字中的k位信息消息u对应的(n-k)行xk列矩阵部分称作信息 部,而与由n位组成的编码字中的(n-k)个奇偶校验位对应的(n-k)行x(n-k) 列矩阵部分称作奇偶校验部。如果奇偶校验部是下三角矩阵或上三角矩 阵,则采用基于LDPC码的编码方法对信息消息u进行编码的这一处理 是通过使用定义LDPC码的奇偶校验矩阵H来执行的。
也就是说,如图2所示,奇偶校验矩阵H包括信息部和用作奇偶校 验部的下三角矩阵,而用作奇偶校验部的下三角矩阵的每个元素是l。在 这种情况下,奇偶校验位的序列如下求得。首先,编码字c的奇偶校验位 序列的第1奇偶校验位具有作为对均包括在信息消息u中的位执行 EXOR(异或逻辑和)处理的结果而得到的值,所述均包括在信息消息u中 的位是对应于包括在奇偶校验矩阵H的信息部的第一行中的作为具有值 1的元素的矩阵元素的位。
接着,编码字c的奇偶校验位序列的第2奇偶校验位具有作为对奇偶 校验序列的第一奇偶校验位和均包括在信息消息u中的消息位执行 EXOR处理的结果而得到的值,所述消息位是对应于包括在奇偶校验矩 阵H的信息部的第二行中的作为具有值1的元素的矩阵元素的位。
1^,编码字c的奇偶校验位序列的第3奇偶校验位具有作为对奇偶 校验位序列的第一和第二奇偶核J^位和均包括在信息消息u中的的消息 位执行EXOR处理的结果而得到的值,所述消息位是对应于包括在奇偶 校验矩阵H的信息部的第三行中的作为具有值1的元素的矩阵元素的位。
然后,以同样方式求得奇偶校验位序列的第4和后续的奇偶校验位。 一般而言,编码字c的奇偶校验位序列的第i奇偶校验位具有对奇偶校验 序列的第一至第(i- 1)奇偶校验位和均包括在信息消息u中的消息位执 行EXOR处理的结果而得到的值,所述消息位^i对应于包括在奇偶校验 矩阵H的信息部的第i行中的作为具有值1的元素的矩阵元素的位。
如上所述计算奇偶校验位序列的(n-k)个奇偶校验位,然后再将该奇 偶校验位序列放置在跟随由k位组成的信息消息的位置处,从而生成由n 位组成的编码字c。
另一方面,使用LDPC码的解码处理还可根据消息传递算法来执行,该消息传递算法基于由可变节点(各可变节点也称作消息节点)和校验节
点组成的所谓Tanner图上的置信传播(belief propagation )。该消息传递 算法是由Gallager作为称作概率解码的算法而提出的算法。以下随意地 将可变节点和校验节点简称作节点。
然而,在概率解码算法的情况下,在节点间传递的消息是实数值。因 此,为了以解析方式来求解消息,需要追踪具有连续的值的消息的概率分 布。也就是说,需#行极其困难的分析。为了解决这一问题,Gallager 提出了算法A和B作为均用于对LDPC码进行解码,或严格地说,是对 已使用LDPC码来编码的数据进行解码的算法,
对使用LDPC码来编码的数据进行解码的解码处理通常是根据图3 所示的流程图代表的步骤来执行的。在以下说明中,对使用LDPC码来 编码的lt据进行解码的处理也简称为对LDPC码进行解码的处理,而用 作解码对象的LDPC码指的是已使用LDPC码来编码的数据。要注意, 在步骤中,记号U。(u。i)表示基于具有特定码长度的LDPC码而编码的接
收数据的笫i个值,记号Uj表示从校验节点输出的第j个消息、或严格地 说是从连接至校验节点的第j个边输出的消息,而记号Vi表示从可变节点 输出的笫i个消息、或严格地说是从连接至可变节点的第i个边输出的消 息。此夕卜,在这种情况下,消息是用于表示所谓的对数似然比等的实数值, 作为代表值0的似然度的值。
如图3所示,代表解码处理的步骤的流程图开始于步骤S101,在该 步骤中接收数据值Uo(u。0,而将消息Uj和变量k的每一个初始化为O。变 量k是代表迭代处理的次数的整数。接着,解码处理的流程转至步骤S102。 在步骤S102,结合消息Ui而使用接收数据值U。(u。i)、以根据式(l)在可变 节点执行处理,从而求得消息Vi。接着,使用该消息Vi以根据式(2)在校
验节点执行处理,从而求得消息Uj。
<formula>formula see original document page 11</formula> (1)
<formula>formula see original document page 11</formula> …(2)
注意,式(l)中使用的记号dv表示这样的^:其代表纵(或列)方向 上值为1的元素的数目,而式(2)中使用的记号de表示这样的^:其代
表横(或行)方向上值为1的元素的数目。也就是说,记号dy和de表示这样的^lt:其分别代表各列的汉明权和^4t的汉明权。这些^ltdv和dc 的值可任意选择。例如在码(3, 6)的情况下,各列的汉明权的值设为3(即 dv-3)而各行的汉明权的值设为6(即dc=6)。
注意,在根据式(l)的求和处理中,从试图输出消息的边输入的消息 不被用作处理的对象。因此,求和处理的范围从1开始到(dy-l)为止。同 理,在根据式(2)的乘法处理中,从试图输出消息的边输入的消息不被用 作处理的对象。因此,乘法处理的范围从1开始到(dc-l)为止。此外,根 据式(2)求得消息Uj的值的乘法处理可如下才艮据式(3)和(4)来执行。预先创 建对于2个给定输入^和V2的函数R(Vl, v。的值1的表作为根据式(3)
的表。如式(3)所示,函数R(V" V2)的值X是输入Vi和V2的函数。接着通
过使用值x可求得消息Uj的值,该Uj的值^JL据式(4)以递推方式从上述 表求得的。
x=21如h -1 {ta nli (v /2) t a n h (v2/2) 1 = R 01, v 2)…(3) Llj =R (v,, R (v2, R (V3,…R (v《一2, vdcH))〉)…(4)
此外,在步骤S102,将变量k加1。接着解码处理的流程转至步骤 S103。在步骤S103,将变量k与预先确定的迭代解码计数值N做比较, 以产生对变量k是否等于或大于迭代解码计数值N所做判断的结果。如 果在步骤S103执行的处理产生的判断结果表示变量k既不等于也不大于 预先确定的迭代解码计数值N,则解码处理的流程返回步骤S102,以重 复步骤S102和S103的处理。
另一方面,如果在步骤S103执行的处理产生的判断结果表示变量k 等于或大于预先确定的迭代解码计数值N,则解码处理的流程转至步骤 S104,在该步骤中通过执行根据式(5)的处理来求得消息v,作为最#^输 出的解码结果。然后,对使用LDPC码来编码的数据进行解码的解码处 理结束。

V,十Z Uj
",…(5)
根据式(5)的计算处理与根据式(1)的计算处理的不同在于根据式(5) 的计算处理是通过使用来自连接至可变节点的所有边的消息Uj而执行的。
在对使用LDPC码来编码的数据进行解码的解码处理中,在例如(3, 6)码的情况下,如图4所示,消息在节点之间交换。要注意,在图4+,由"="(等号)表示的各节点是可变节点,在此执行根据式(l)的求和处理。
另一方面,由"+"(加号)表示的各节点是校验节点,在此执行根据式(2) 的乘法处理。
特别地,根据前面提到的算法A,使消息成为二维,并在"+"(加号)
所示的校验节点处,对提供给校验节点的(de-l)个输入消息Vi执行异或逻 辑和处理,而在"="(等号)所示的可变节点处,如果提供给可变节点的(dvl)
个输入消息Uj具有4^P不同的比特值,则在输出数据R之前使接收数据 R的符号反转。
此外,近年来研究了对用于对使用LDPC码来编码的数据进行解码 的处理的方法的实施。在说明对使用LDPC码来编码的数据进行解码的 处理的执行方法前,首先创建并解释对使用LDPC码来编码的数据进行 解码的处理的模型。
图5是示出了定义作为编码率为1/2且码长度为12的LDPC码的(3, 6)码的LDPC码的典型的奇偶校验矩阵H的图。图5所示的作为定义 LDPC码的矩阵的奇偶校验矩阵H可由如图6所示那样的Tanner图来表 示。在图6中,由"="(等号)表示的各节点是可变节点,而由"+"(加 号)表示的各节点是校验节点。校验节点和可变节点对应于奇偶校验矩阵 H中的行和列。使校验节点和可变节点相互连接的线称作边,其对应于值 为l的矩阵元素。即,如果存在于奇偶核^验矩阵H中的作为第j行和第i 列的交点的交点处矩阵元素的值为1,则将图6的从上起第i个可变节点 (即,由"="(等号)表示的第i个节点)和图6的从上起第j个校验节点(即, 由"+"(加号)表示的第j个节点)以与值为1的矩阵元素处的交点对应的 边iM目互连接。使可变节点和校验节点相互连接的ii^示作为与可变节 点关联的位的包括在使用LDPC码来编码的接收数据中的位具有关于校 验节点的约束条件。注意,图6所示的Tanner图表示上述图5所示的奇 偶校验矩阵H。
用作对使用LDPC码来编码的数据进行解码的方法的和积算法是用 于重复执行可变节点和校验节点的处理的算法。
在可变节点处,如图7所示,执行作为对可变节点的处理的式(l)所 代表的求和处理。在图7所示的求和处理中,与连接至可变节点的边中存
在的第i边对应的消息Vi是从来自连接至可变节点的其余边的消息lh和
u2、以及接收数据值U。i计算的。对应于任何其它边的消息也以同样方式 计算。在解释于校验节点处执行的处理前,通过使用关系
<formula>formula see original document page 14</formula>(6)
此外,对于x20,定义非线性函数(Kx)^ln(tanh(x/2))。在这种情况下, 该非线性函数(l)(x)的反函数(l)"(x)可如下表示(1)"(x)-2tanh"(e-x)。因此, 从式(l)"(x)-2tanh"(e-x)可如下将式(6)改写成式(7):
/^-1 、 t,
(=1
(7)
在核^验节点处,如图8所示,执行根据式(7)的校验节点处理。在图8 所示的乘法处理中,与连接至校验节点的边中存在的第j边对应的消息
Uj是从来自连接至校验节点的其余边的消息Vi、 V2、 V3、 V4和Vs计算的。
对应于任何其它边的消息也以同样方式来计算。
要注意,非线性函数(Kx)也可表示为<|>(x)=ln((ex+l)/(ex-l))。在这种 情况下,对于x>0则(Kx)—"(x)。即,执行非线性函数(Kx)的处理结果与 执行非线性函数(Kx)的反函数(l)"(x)的处理结^目等。在实际中,使用硬件
来实施非线性函数())(X)和该非线性函数(I)(X)的反函数(^(X)中的每一个。用
于实施非线性函数(Kx)和该非线性函数(j)(x)的反函数(l)"(x)的每一个的硬件 谭常是LUT(查询表)。因此在这种情况下,可使用对于非线性函数(()(x)和 该非线性函数(Kx)的反函数(l)"(x)共同的LUT。
此外,作为根据式(l)的求和处理的在可变节点处执行的处理可被分 成祁^据式(5)的求和处理和才艮据式(8)的减法处理。
Vi = v—udv …(8)
因此,通过重复进行根据式(5)和(8)的处理,可重复进行对可变节点的处理,即,可重复进行根据式(l)的可变节点的处理。同理,通过重复
进行根据式(7)的处理,可重复进行校验节点的处理。在这种情况下,可 将作为重复进行才艮据式(5)和(8)的处理的结果所得的、根据式(8)的最终处 理的结果原样地用作解码处理的最终结果。
如果由硬件来实施作为用于解码设备的算法的和积算法,则需务使用 尺寸适当的电路、以适当的工作频率来重复进行可变节点处理和校验节点 处理。可变节点处理是根据式(1)或式(5)和(8)在每一可变节点处执行的处 理,而校验节点处理是根据式(7)在每一校验节点处执行的处理。
以下解释这种解码设备的例子。
对使用LDPC码来编码的数据进行解码所用的算法的特征在于该 算法可以实施性能非常高的完全并行处理解码i殳备。然而,意图用于码长 度较大的数据的完全并行处理解码设备具有极大的电路尺寸,以致难以实 施该设备。
为了解决这一问题,近年来已提出了具有适于实施具有可行的电路尺 寸的解码i殳备的结构的LDPC码,该LDPC码作为在如DVB-S.2 (ETSI EN302307)的传送系统中使用的LDPC码。因此,在以下说明中将该提议 的LDPC码称作DVB-S.2 LDPC码。
DVB-S.2 LDPC码可由具有如下结构的矩阵来定义,该结构通过重 排序上述奇偶校验矩阵的行和列而获得。
即,DVB-S.2 LDPC码可由具有如下结构的奇偶校验矩阵来表示, 该结构通过组合多个配置矩阵而得到,该多个配置矩阵包括PxP单位矩 阵(其中P-360)、 PxP准单位矩阵、PxP移位矩阵、PxP和矩阵和PxP零 矩阵。准单位矩阵是将一个或多个值为1的矩阵元素的每一个置0的单位 矩阵。移位矩阵是作为对单位矩阵或准单位矩阵执行循环移位运算的结果
所得的矩阵。和矩阵是对单位矩阵、准单位矩阵和移位矩阵中的至少2 个执行矩阵加法运算而得的矩阵。注意,在以下说明中,将具有这种结构 的奇偶校验矩阵称作由各具有PxP结构的配置矩阵组成的奇偶校验矩阵, 而将该由各具有PxP结构的配置矩阵组成的奇偶校验矩阵所定义的 LDPC码称作P码。
通过使用这种P码,有可能实施这样的解码设备其同时处理分别 代表P个接收值的P位和分别代表P个消息的P位。
然而,为了使以下说明容易理解,对P-6做出说明。图9是示出了定义了编码率为2/3且码长度为108的LDPC码的奇偶校验矩阵H的图。 图9所示的奇偶校验矩阵H是由各具有6x6结构的配置矩阵组成的典型 的奇偶校验矩阵。为了使各具有6x6结构的每一个配置矩阵更容易识别, 在图9所示的奇偶校验矩阵H中,在6x6配置矩阵之间设有间隔。为了 使图9容易观看,以句点"."来代表奇偶校验矩阵H中值为0的各矩阵 元素。即,图9所示的奇偶校验矩阵具有这样的结构该结构是通itl且合 多个配置矩阵而得到的,该多个配置矩阵包括6x6单位矩阵、6x6准单位 矩阵、6x6移位矩阵、6x6和矩阵和6x6零矩阵。如前面所述,准单位矩 阵是将一个或多个值为1的矩阵元素置0的单位矩阵。
图10是示出了对^f吏用上述LDPC码即P=6的LDPC码来编码的数 据进行解码的典型的现有技术的解码设备的框图。
图10的框图所示的典型的解码设备的结构包括接收值緩冲器200、 接收值存储器201、节点处理部202、移位部203、消息存储器204和解 码结果存储器205。
接收值緩冲器200是这样的緩冲器其用于在数据D200被作为数据 D201转移到接收值存储器201之前,将从通信线路接收的数据D200作 为具有一个码的尺寸的数据存储起来。根据将数据D200传输至接收值緩 冲器200的传输方法, 一些情况下可执行对存储在接收值緩冲器200中的 数据D200的码位(code bit)进行重排序的处理。
才艮据图9所示的奇偶校验矩阵H的列的顺序、同时以6个为单位(其 中每个由6位组成)从接收值存储器201读出数据D201。即,以每个都是 由6行和6列组成的矩阵的单位从接收值存储器201读出数据D201,并 将其作为接收数据D202而提供给节点处理部202。
节点处理部202分别采用由附图标记210-1至210-6标示的6个节点 处理器。这6个节点处理器210-1至210-6的每一个根据由图10的框图 中未示出的控制部发出的命令,对从接收值存储器201读出的6个数据 D202中的预定的一个和同时从消息存储器204接收的6个消息D205中 的预定的一个执行校验节点处理或可变节点处理,并将消息D203作为处 理结果输出至移位部203。即,节点处理器210—1至210-6将6个消息 D203作为同时执行的处理的结果分别提供给移位部203。此外,节点处 理器210-1至210-6此时还分别将节点处理器210-1至210-6同时执行 的可变节点处理的6个解码结果D206分别同时输出至解码结果存储器 205。当在节点处理部202中采用的节点处理器210-1至210-6将6个消息 D203分别提供给移位部203时,图10的框图中未示出的控制部向移位部 203提供如下信息,该信息指示对应于6个消息D203的边各自是如下边: 其中已在配置矩阵上对该边执行了一些循环移位运算,配置矩阵如用作图 9所示的奇偶校验矩阵H的元素矩阵的单位矩阵。基于这一信息,移位部 203执行对6个消息D203进行重排序的循环移位运算,并将6个消息D204 作为运算结果而输出至消息存储器204。
在消息存储器204中,将从移位部203接收到的6个消息D204存储 在由图10的框图中未示出的控制部所指定的地址处。消息存储器204将 从由图10的框图中未示出的控制部所指定的地址读出的6个数据作为6 个消息D205而输出至节点处理部202。
解码结果存储器205用于同时存储由节点处理部202的节点处理器 210 -1至210-6执行的可变节点处理的6个解码结果D206。这6个解码 结果D206实际上是6位的数据。在完成解码处理后,作为解码结果D207 而输出该6位的数据。
注意,通过适当地控制将数据写入各存储器的顺序、从各存储器读出 数据的顺序以及移位量,图10的框图所示的典型的解码i殳备不仅能够对 单个码进行解码,也能够对具有相同结构的其它码进行解码。
图11是示出了在节点处理部202中采用的6个节点处理器210-1至 210-6中的每一个的典型配置的框图。以下,如果不必彼此区分这6个节 点处理器210-1至210-6,则仅由通用的附图标记210来标示这6个节点 处理器210-1至210-6中的每一个。
具有图11的框图所示的典型配置的节点处理器210能够通it^一个 处理切换倒另一个处理来交替地执行才艮据式(l)的可变节点处理和才艮据式 (7)的^1验节点处理。
节点处理器210具有每个用于从外部源接收消息或数据的两个输入 端口 P301和P302。更具体地,在图lO的框图所示的典型的解码i史备中, 输入端口 P301是用于从接收值存储器201接收数据D202的端口 ,而输 入端口 P302是用于从消息存储器204接收消息D205的端口 。
此夕卜,节点处理器210还具有每个用于输出消息或处理结果的两个输 出端口 P303和P304。更具体地,在图10的框图所示的典型的解码i更备 中,输出端口 P303是用于向移位部203输出消息D203的端口,而输出端口 P304是用于向解码结果存储器205提供解码结果D206的端口 。
除此之外,节点处理器210还采用各自具有V和C输入端子的选择 器301、 316和318。在各选择器301、 316和318选择V输入端子的情况 下,节点处理器210执行可变节点处理。另一方面,在各选择器301、 316 和318选择C输入端子的情况下,节点处理器210执行校验节点处理。
首先,解释由用作可变节点的节点处理器210执行的可变节点处理。
节点处理器210通过输入端口 P302接收来自图10的框图所示的典 型的解码设备的消息存储器204的、源自校验节点的一列消息D205。将 该消息D205作为消息D301(或消息Uj)而依次逐个地提供^^择器301。 选择器301将消息D301作为消息D306而4^供给加法器302。加法器302 还接收选择器317输出的数据D323。加法器302将由选择器317输出的 数据D323加到由选择器301输出的消息D306以产生和,然后该和被存 储在寄存器303中。
如果选择器317选择了其自身的输入端子连接到输出数据D307的寄 存器303,则加法器302将寄存器303经由选择器317而提供给加法器302 的数据D307加到由选择器301输出的消息D306,以产生和,该和然后 被存储在寄存器303中。
另一方面,如果选择器317选择了其自身的输入端子连接到输出数据 D322的选择器318,则加法器302将选择器318经由选择器317而提供 给加法器302的数据D322加到由选择器301输出的消息D306,以产生 和。顺便提一下,由选择器318输出的数据D322是由输入端口 P301作 为数据D300而接收的数据D202(或uQi)。因而,加法器302将接收数据 D202(或u。i)加至由选择器301输出的消息D306,以产生和,该和被存储 在寄存器303中。
当对一列重复进行上述操作时,在寄存器303中积累总值等于1^+ uoi的数据D307,其中求和Suj覆盖了 j=l - dv的范围。接着将总值等于Suj +u0i的数据D307经由选择器304转移到寄存器305。
与此同时,延迟FIFO 310用于通过将消息D306保持在延迟FIFO 310中,直到由寄存器305输出了总值等于i:iij+u。i的新数据D308为止, 其中求和Suj覆盖了 j=l-dv的范围,从而使由选择器301输出的、作为 源自校验节点的消息的消息D306延迟。接着,延迟FIFO 310将延迟的 消息D306作为延迟的输入消息D315而输出至减法器312。减法器312从由寄存器305输出的新数据D308中减去由延迟FIFO 310输出的延迟的输入消息D315,以产生大小等于i:Uj+u。i的差D316,其 中求和Eiij覆盖了 j-l-(dv-l)的范围。减法器312将差D316输出至选择 器316。接4选择器316将差D316作为消息D321而输出至输出端口 P303。 最后,输出端口 P303将消息D321作为输出消息D203而传递到在图10 的框图所示的典型的解码i殳备中采用的移位部203。
换言之,当执行根据式(l)的可变节点的处理时,用作可变节点的节 点处理器210从连接至用作可变节点的节点处理器210的4^P校验节点而 接收的消息与接收数据之和中,减去由特定的校验节点提供的消息,从而 计M通过边输出到特定的校验节点的消息。
接下来解释由用作校验节点的节点处理器210执行的校验节点处理。
节点处理器210通过输入端口 P302接收来自图10的框图所示的典 型的解码设备的消息存储器204、源自可变节点的一行消息D205。将该 消息D205作为消息D301(或消息vO而依次逐个消息地由输入端口 P302 传递,并作为绝对值D303(或IVil)而提供给LUT300。
LUT 300是这样的LUT:其用于存储在表示校验节点处理的式(7)中 使用的非线性函数(Kx)的值,作为各自与自变量x相关联的值,该自变量 x是绝对值D303(或lvil)。也就是说,LUT 300用于存储值0305(或(|)(|"|))。 当将绝对值D303(或lvil)提供给LUT 300时,LUT 300输出值D305(或
WVil))。
从LUT 300读出的值D305(或(j)(lvil))经由选择器301作为消息D306 而提供给加法器302。加法器302将由选择器301输出的消息D306加到 由选择器317输出的数据D323,以产生和,然后该和被存储在寄存器303 中。在这种情况下,选择器317选择了其输入端子连接到输出数据D307 的寄存器303。因而,加法器302将寄存器303经由选择器317提供给加 法器302的数据D307加至由选择器301输出的消息D306,以产生和, 该和然后再次被存储在寄存器303中。因而,数据D307是值D305的累 积和(或(Khl))。
当对于一行的消息D301(或消息Vi)从LUT 300读出的值D305(或 小(lvil))被累加以产生一行累加和D307时,在i-l - dc的范围上计算的大小 4于2(KlVil)的和D307经由选择器304而被提供给寄存器305。
与此同时,延迟FIFO 310用于通过将消息D306保持在延迟FIFO310中,直到由寄存器305输出了在i-l-dc的范围上计算的总值等于 2(KlVil)的新数据D308为止,从而延迟由选择器301输出的消息D306。 即,延迟FIFO 310用于使从LUT 300读出的值D305(或(j)(lvil))延迟。接 着,延迟FIFO 310将延迟的值D305作为延迟的输入消息D315而输出至 减法器312。
减法器312从由寄存器305输出的新数据D308中减去延迟的输入消 息D315,以产生在i=l - (de-l)的范围上计算的大小等于S(j)(lvil)的差D316。 接着减法器312将差D316输出至LUT 314。
LUT 314是如下工作的LUT。在LUT 314中,将差D316视为自变 量x。对于自变量x,从LUT314读出在根据式(7)的校验节点处理中作为
非线性函数(J)(X)的反函数(l)"(X)而使用的反函数(j)"(X)的值。具体地,当减法
器312向LUT 314提供^ i=l - (de-l)的范围上计i的大小等于S(KIVil)的 差D316时,LUT 314输出值0318(=小_1(5:(()(|^|))),该值^1^函数(()"(2:(|)(|^|)) 的值。
与上述操作同时,EXOR电路306对各消息D301的符号位D304(或 sign(Vi))和存储在寄存器307中的值D310执行异或逻辑和处理,以产生逻 辑和D309并再将该和D309存储在寄存器307中。消息D301的符号位 D304是表示消息D301是正消息还是负消息的位。
当一行的消息D301(或消息vO的符号位被EXOR电路306累加求和 并存储在寄存器307中时,寄存器307将由在i-l-de的范围上计算的 nsign(vO代表的累加值D310经由选择器308而提供给^存器309。
与此同时,延迟FIFO 310用于通过将符号位D304(或sign(Vi))保持在 延迟FIFO 310中,直到由寄存器309输出了由在从i=l到dc的范围上计 算的nsign(Vi)代表的新数据D311为止,而将用于乘法运算的符号位 D304(或sign(Vi))延迟。接着,延迟FIFO 310将延迟的符号位D304作为 延迟的符号位D313而输出至EXOR电路315。
EXOR电路315对从延迟FIFO 310接收的延迟的符号位D313和存 储在寄存器309中的累加值D311执行异或逻辑和处理,以产生由在从i=l 到(de-l)的范围上计算的IIsign(Vi)表达的符号位D319并将该符号位D319 提供给选择器316。
最终,选择器316将从EXOR电路315接收的符号位D319附加至由 LUT 314输出的值D318(—"(i:(t)(lvil)))以产生消息D321 ,并将该消息D321输出至输出端口 P303,该输出端口 P303接着将消息D321传递到图10 的框图所示的典型的解码i殳备的移位部203。
换言之,当执行根据式(7)的校验节点的处理时,节点处理器210从 连接至用作校验节点的节点处理器210的全部校验节点而接收的消息之 和中,减去由特定的可变节点供给的消息,从而计算要通过边输出至特定 的可变节点的消息。
在解码的最后阶段,节点处理器210不执行根据式(l)的可变节点处 理,而^l^戈之以扭i行才艮据式(5)的处理,并将该处理结果所得的数据D308 作为解码结果D206,经由输出端口 P304而输出至图10的框图所示的典 型的解码设备的解码结果存储器205。解码的最后阶段一M在重复进行 了 N次(其中N是预先确定的整lt)可变节点处理和核J睑节点处理后执行的 最后的可变节点处理。
要注意,尽管图10的框图所示的典型的解码设备是对P-6的码进行 解码的解码i殳备,但对P为6以外的P码进行解码的解码设备可基本地 被设计成具有与图10的框图所示的典型的解码该:^^目同的配置。

发明内容
然而,如果将用于解码P码的解码^殳备实施成利用相关技术并具有 与图10的框图所示的典型的解码设备相同的配置,则不是仅需要并行连 接的6个节点处理器,而是需要并行连接的P个节点处理器。此外,移位 部不是仅执行6x6循环移位运算,而是需JNMt PxP循环移位运算。除 此之外,各存储器不是仅需要同时写入和读出6个数据、而是必须能够同 时写入和读出P个数据。
因此,对于较大的P值,产生了整个解码设备的电路尺寸不被希望 地增大的这一问题。
此外,现有技术的解码i殳备不能对P码以外的码进行解码。例如, 现有技术的解码设备不能对Q码进行解码。因此,在一个传输系统中使 用的码必须全部是P码。结果,产生了以下不希望出现的另一问题在通 常使用了针对面向各具有高传输率的固定接收机的服务的P码和针对面 向各具有低传输率但是具有较大的功耗限制的便携式接收机的服务的Q 码的传输系统中,为了配置对P码和Q码共用的接收机,必须相互分离 地设计对P码进行解码专用的解码设备和对Q码进行解码专用的解码设备。
有鉴于上述问题,本发明的发明人提议了 一种能够对以不同结构提供
并使用LDPC码来编码的多个码进行解码的解码设备,并有可能减小其 电路尺寸。
为了解决上述问题,根据本发明的实施例,提供了一种对LDPC(低 密度奇偶校验)码进行解码的解码设备。在该解码设备中,LDPC码由具 有第一结构的原奇偶校验矩阵表示,该第一结构是通iti且合多个第 一配置 矩阵而得到的,该多个第一配置矩阵包括PxP单位矩阵、将PxP单位矩 阵的一个或多个矩阵元素各自的值从1置为0而得到的PxP准单位矩阵、 作为对PxP单位矩阵或PxP准单位矩阵执行循环移位运算的结果而得到 的PxP移位矩阵、通过对PxP单位矩阵、PxP准单位矩阵和PxP移位矩 阵中的至少两个执行矩阵加法运算而得到的PxP和矩阵、以及PxP零矩
阵,或者所述低密度奇偶校验码由通过重排序所述原奇偶校验矩阵中的至 少一行和一列而得到的、作为具有所述第一结构的矩阵的矩阵i^示,其
中记号P表示整数。解码设备包括
消息计算装置,用于通过同时进行F个校验节点处理或F个可变节
接收值进行解码的处理,并输出作为所述F个校验节点处理或所述F个 可变节点处理的结果而得到的F个消息,其中记号F表示整数P的非1 约数;
移位装置,用于对由消息计算装置生成的F个消息执行FxF循环移 位运算,并输出作为FxF循环移位运算的结果的F个消息;
存储装置,用于存储由移位装置生成的F个消息并允许所存储的F 个消息被读出,或用于存储上述F个接收值并允许所存储的F个接收值 被读出。
该解码设备进一步包括控制装置,用于通过对由具有第一结构的奇偶
校验矩阵表示的接收值至少执行列重排序处理或与列重排序处理等同的
处理,来控制向消息计算装置提供由对应于第二配置矩阵的F个接收值组
成的单位这一操作,作为向消息计算装置提供接收值的操作,第二配置矩 阵作为从第一配置矩阵而得的第二配置矩阵包含在具有第二结构的矩阵
中,其中第二结构是通过组合多个第二配置矩阵而得到的结构,多个第二
配置矩阵包括FxF单位矩阵、将FxF单位矩阵的一个或多个矩阵元素各自的值从1置为0而得到的FxF准单位矩阵、作为对FxF单位矩阵或 FxF准单位矩阵执行循环移位运算的结果而得到的FxF移位矩阵、对FxF 单位矩阵、FxF准单位矩阵和FxF移位矩阵中的至少两个执行矩阵加法 运算而得到的FxF和矩阵、以及FxF零矩阵。
为了解决上述问题,根据本发明的另一实施例,提供了一种程序以实 施在解码设备中采用的解码方法,该解码设备是+艮据本发明的前述实施
例、作为对LDPC(低密度奇偶校验)码进行解码的解码设备而提供的。 LDPC码由具有第一结构的原奇偶校验矩阵表示,该第一结构是通iti且合 多个第一配置矩阵而得到的,该多个第一配置矩阵包括PxP单位矩阵、 将PxP单位矩阵的一个或多个矩阵元素各自的值从l置为0而得到的PxP 准单位矩阵、作为对pxp单位矩阵或PxP准单位矩阵执行循环移位运算
的结果而得到的PxP移位矩阵、通过对PxP单位矩阵、PxP准单位矩阵 和PxP移位矩阵中的至少两个执行矩阵加法运算而得到的PxP和矩阵、 以及PxP零矩阵,或者所述低密度奇偶校验码由通过重排序所述原奇偶 校验矩阵中的至少一行和一列而得到的、作为具有所述第一结构的矩阵的 矩阵来表示,其中记号P表示整数。该程序实施包括以下步骤的处理
通过同时进行F个校验节点处理或F个可变节点处理,从而执行对 每个作为接收低密度奇偶校验码的结果而得到的接收值进行解码的处理, 并输出作为F个校验节点处理或F个可变节点处理的结果而得到的F个 消息,其中记号F表示整数P的非1约数;
对在消息运算处理中生成的F个消息执行FxF循环移位运算,并输 出作为FxF循环移位运算的结果的F个消息;以及
存储在移位处理中生成的F个消息并允许所存储的F个消息被读出, 或用于存储上述F个接收值并允许所存储的F个接收值被读出。
该程序所实施的处理进一步包括以下步骤通过对由具有第一结构的 奇偶校验矩阵表示的接收值至少执行列重排序处理或与列重排序处理等 同的处理,来控制向消息计算装置提供由对应于第二配置矩阵的F个接收 值组成的单位这一操作,作为向消息计算装置提供接收值的操作,第二配 置矩阵作为从第一配置矩阵而得的第二配置矩阵包含在具有第二结构的 矩阵中,其中第二结构是通过组合多个第二配置矩阵而得到的结构,多个
第二配置矩阵包括FxF单位矩阵、将FxF单位矩阵的一个或多个矩阵 元素各自的值从1置为0而得到的FxF准单位矩阵、作为对FxF单位矩 阵或FxF准单位矩阵执行循环移位运算的结果而得到的FxF移位矩阵、对FxF单位矩阵、FxF准单位矩阵和FxF移位矩阵中的至少两个执行矩 阵加法运算而得到的FxF和矩阵、以及FxF零矩阵。
根据本发明,有可能提供能够对LDPC(低密度奇偶校验)码进行解码 的解码设备。特别地,根据本发明的解码设备能够对彼此结构不同的 LDPC码进行解码。


图1是示出了定义LDPC码的典型的稀疏的奇偶校验矩阵的图2是示出了定义LDPC码的包含下三角矩阵作为奇偶校验矩阵的 典型的奇偶校验矩阵的图3示出了为了对LDPC码进行解码而执行的一系列处理的说明性 流程图4是示出了消息的流的i兌明图5是示出了定义(3, 6)码的LDPC码的典型的奇偶校验矩阵的图6是示出了代表图5所示的典型的奇偶校验矩阵的Tanner图的图7是当说明在可变节点处执行处理以计算消息时所参考的说明图8是当说明在校验节点处执行处理以计算消息时所参考的说明图9是示出了由各具有6x6结构的配置矩阵組成的典型的奇偶校验矩 阵的图10是示出了对使用上述LDPC码即P=6的LDPC码来编码的数据 进行解码的典型的现有技术的解码设备的框图ll是示出了在图IO所示的解码设备中包含的节点处理部中采用的 节点处理器的典型配置的框图12是示出了作为对使用上述LDPC码即P=6的LDPC码来编码的 数据进行解码的设备而由本发明的实施例提供的典型的解码设备的框图13是示出了用作奇偶校验矩阵的配置矩阵的典型的6x6移位矩阵 的图14是在说明对图13所示的6x6移位矩阵中的行和列进行重排序以 生成3x3配置矩阵所执行的处理的步骤时所参考的说明图;图15示出了作为对图9所示的典型的6x6奇偶校验矩阵执行图14 的i兌明图所示的步骤的结果所得的重排序后的矩阵、即由各具有3x3配置 的配置矩阵组成的重排序后的矩阵的图16是在说明对图13所示的6x6移位矩阵中的行和列进行重排序、 以生成2x2配置矩阵所执行的处理的步骤时所参考的说明图;以及
图17是示出了根据本发明的另一实施例的用作解码设备的计算机的 典型配置的框图。
具体实施例方式
在说明本发明的优选实施例前,先在以下的有关说明中解释所公开的 发明和实施例之间的关系。要注意,即使有这样的实施例其虽记载于本 说明书中但却未被作为对应于本发明的实施例而包含在以下的有关说明 中,这样的实施例也不应解释为不对应于本发明的实施例。反过来说,作 为对应于特定发明的实施例而包含在以下的有关说明中的实施例不应解 释为不对应于除特定发明以外的发明的实施例。
此外,以下的有关说明不应解释为涵盖本说明书所公开的所有发明的 综合性说明。换言之,以下的有关说明绝非否定存在有虽记载于本说明书 但却未包括在对其提交专利申请的权利要求书中的发明。也就是说,以下 的有关说明绝非否定存在有将来要包含在不同的专利申请中的发明、包含 在对本说明书的补正中的发明或要添加的发明。
根据本发明的一个实施例,提供一种对LDPC(低密度奇偶校验)码进 行解码的解码设备(如图12的框图所示的解码设备)。LDPC码是使用 LDPC码来编码的数据。LDPC码由具有第一结构的原奇偶校验矩阵(如 作为P = 6的矩阵图9所示的奇偶校验矩阵)表示,该第一结构是通过组 合多个第一配置矩阵而得到的,该多个第一配置矩阵包括PxP单位矩阵、 将PxP单位矩阵的一个或多个矩阵元素各自的值从l置为0而得到的PxP 准单位矩阵、作为对PxP单位矩阵或PxP准单位矩阵执行循环移位运算 的结果而得到的PxP移位矩阵、通过对PxP单位矩阵、PxP准单位矩阵 和PxP移位矩阵中的至少两个执行矩阵加法运算而得到的PxP和矩阵、 以及PxP零矩阵,或LDPC码由通过重排序原奇偶校验矩阵中的至少一 行和一列而得到的矩阵表示,其中原奇偶校验矩阵是具有第一结构的矩 阵,其中记号P表示整数。该解码设备采用以下装置消息计算装置(如在图12的框图所示的解码设备中采用的节点处理部 502,即,对于F=3的包括3个节点处理器510-1至510-3的节点处理部 502),用于通过同时进行F个校验节点处理或F个可变节点处理,并输出 作为F个校验节点处理或F个可变节点处理的结果而得到的F个消息, 从而对每个作为接收LDPC码的结果而得到的接收值进行解码,其中记 号F表示整数P的非1约数;
移位装置(如在图12的框图所示的解码设备中采用的移位部503),用 于对由消息计算装置生成的F个消息执行FxF循环移位运算,并输出作 为FxF循环移位运算的结果的F个消息;
存储装置(如在图12的框图所示的解码设备中采用的消息存储器504 和接收值存储器501),用于存储由移位装置生成的F个消息并允许所存 储的F个消息被读出,或用于存储上述F个接收值并允许所存储的F个 接收值被读出;以及
控制装置(如在图12的框图所示的解码设备中采用的控制部506),用 于通过对由具有第一结构的奇偶校验矩阵表示的接收值至少执行列重排 序处理或与列重排序处理等同的处理,来控制向消息计算装置提供由对应 于第二配置矩阵的F个接收值组成的单位这一^Mt,作为向消息计算装置 提供接收值的操作,第二配置矩阵包含在作为从第一配置矩阵而得的第二 配置矩阵(如作为对图13所示的6x6移位矩阵中的行和列进行重排序而执 行的处理的结果所得到的配置矩阵之一的每个都包围在图14中的虚线框 中的3x3配置矩阵)的具有第二结构的矩阵中,其中第二结构是通itla合 多个上述第二配置矩阵而得到的结构,多个第二配置矩阵包括FxF单位 矩阵、将FxF单位矩阵的一个或多个矩阵元素各自的值从1置为0而得 到的FxF准单位矩阵、作为对FxF单位矩阵或FxF准单位矩阵执行循环 移位运算的结果而得到的FxF移位矩阵、对FxF单位矩阵、FxF准单位 矩阵和FxF移位矩阵中的至少两个执行矩阵加法运算而得到的FxF和矩 阵、以及FxF零矩阵。
该解码设备进一步采用緩沖装置(如在图12的框图所示的解码i殳备中 采用的接收值緩冲器500),用于对每个作为接收LDPC码的结果而得到 的接收值进行緩冲。控制装置执行緩冲控制,以在緩冲装置中,对以遵循 具有第 一结构的奇偶校验矩阵的到来形态而接收的接收值进行重排序,从 而将到来形态转换成遵循具有第二结构的矩阵的另 一形态。然后控制装置 执行控制,以将以遵循具有第二结构的矩阵的另一形态而緩沖在緩冲装置中的接收值以与具有第二结构的矩阵的第二配置矩阵对应的f个接收值 组成的单位、经由存储装置而提供给消息计算装置。
接着,以下对本发明的技术进行解释。
在本专利说明书中使用的技术术语"p码"是ldpc码的一种。该p 码具有QC(quasi cyclic,准循环)码的性质。
QC码是这样的码其编码字是对任意的原编码字进行N个周期(N
是自然数)的循环移位运算而得到的一系列位,以产生与原编码字不同的 另一编码字。
定义QC码的奇偶校验矩阵可以使用典型的循环矩阵来表示。该循环 矩阵在本专利说明书中称作移位矩阵。也称作移位矩阵的循环矩阵被定义 为通过对从另一矩阵的所有列中选出的特定列执行循环移位运算而得到 的矩阵。特定列的一例是第一列。
如上所述,包含在定义P码的奇偶校验矩阵中的移位矩阵是通it^ PxP单位矩阵或准单位矩阵执行循环移位运算而得到的矩阵。具体地说, 通过依次逐列地对PxP单位矩阵或PxP准单位矩阵的特定列执行循环移 位运算,可依次逐个矩阵地生成种类相互不同的移位矩阵。当完成对PxP 单位矩阵或PxP准单位矩阵的P列所执行的循环移位运算时,再度生成 原PxP单位矩阵或原PxP准单位矩阵。也就是说,循环移位运算的单位 是P列。
需要注意的情况是严格地说,用于定义P码的PxP准单位矩阵和 该准单位矩阵的PxP移位矩阵不包含在定义qc码的矩阵中。也就^I3兌, 只在对含p码的dvb-S2 ldpc码进行定义的奇偶校验矩阵的右上角位 置处,才出现准单位矩阵。因而,按这一观点,严格地说,DVB-S2LDPC 码不是qc码。不过,在对dvb-S2 ldpc码进行解码的解码设备中, 对该缺欠部分仅执行简单的例外处理。因此对于对DVB-S2 LDPC码进 行解码的解码设备和对qc码进行解码的解码设备,其解码设备的架构之
间没什么区别。由于上述理由,不将P码说成是qc码之一。而是如上述 声明p码是具有qc(准循环)码的性质的ldpc码。
换言之,由各具有PxP结构的配置矩阵组成的奇偶校验矩阵是通过 规则地布置其配置矩阵而得到的矩阵,其配置矩阵包含PxP单位矩阵、 将PxP单位矩阵的一个或多个矩阵元素各自的值从l置为0而得到的PxP 准单位矩阵、作为对PxP单位矩阵或PxP准单位矩阵执行循环移位运算的结果而得到的PxP移位矩阵、通过对PxP单位矩阵、PxP准单位矩阵 和PxP移位矩阵中的至少两个执行矩阵加法运算而得到的PxP和矩阵、
以及PxP零矩阵。由于P码可表示为具有这种规则结构的奇偶校验矩阵,
故将P码i兌成是具有QC(准循环)码的性质的LDPC码。
也就是说,P码具有规则性质,这意味着p码可由具有通im则地排
列如下单元而配置的结构的奇偶校验矩阵来表示,该单元是P x P配置矩 阵,如PxP单位矩阵、PxP准单位矩阵、PxP移位矩阵、PxP和矩阵、 以及PxP零矩阵。如果采用现有技术实施用于解码P码的解码设备,以 与图10的框图所示的典型的解码设备具有相同的配置,则不是仅需要并 行连接的6个节点处理器、而是需要并行连接的P个节点处理器。此夕卜, 移位部不是仅执行6x6循环移位运算、而是需^L行PxP循环移位运算。 除此之外,各存储器不是仅需要同时写入和读出6个数据、而是必须能够 同时写入和读出P个lt据。
为了解决上述问题,本发明的发明人创新了 一种技术。根据这种技术, 通过对由各具有PxP结构的配置矩阵组成的奇偶校验矩阵的行和列进行 重排序,从而执行重排序处理,以生成使FxF配置矩阵规则地布置的矩 阵,或执行与该排序处理等同的处理,并在最后对作为根据具有FxF配 置矩阵的排序后矩阵的数据的、作为重排序处理或与该排序处理等同的处 理结果所得的数据执行解码处理。在这种情况下,记号F表示整数P的 约数。在以下说明中,重排序处理和与该排序处理等同的处理这两者皆简 称为重排序处理。FxF配置矩阵分为与PxP配置矩阵相同的种类,也就 是说,FxF配置矩阵分为以下种类即,FxF单位矩阵、将该FxF单位 矩阵的一个或多个矩阵元素各自的值从1置为0而得的FxF准单位矩阵、 作为对FxF单位矩阵或FxF准单位矩阵执行循环移位运算的结果而得到 的FxF移位矩阵、对FxF单位矩阵、FxF准单位矩阵和FxF移位矩阵中 的至少2个执行矩阵加法运算而得的FxF和矩阵、以及FxF零矩阵。
注意,重排序处理和与该排序处理等同的处理这两者皆简称重排序处 理,原因如下在对数据进行解码的处理(或将数据提供给节点处理器的 处理)前,以下不是必须的在经过紧挨在节点处理器之前的一级设置的 存储器而将排序后矩阵提供给节点处理器之前,通it^存储在緩沖器中的 奇偶校验矩阵即由各具有PxP结构的配置矩阵组成的原矩阵中的行和/或 列实际地进行重排序来执行重排序处理,以生成由各具有FxF结构的配 置矩阵组成的排序后矩阵并再度将排序后矩阵存储在緩冲器中。也就是说,根据为与该排序处理等同的处理提供的等同的技术,也可执行等同的 处理以将数据原样地、以遵循由各具有PxP结构的配置矩阵组成的奇偶 校验矩阵的到来形态而存储在緩冲器中,接着再将数据从緩冲器转移至存 储器,然后对存储器中的由各具有PxP结构的配置矩阵组成的奇偶校验
矩阵中的行和/或列进行重排序,以生成由各具有FxF结构的配置矩阵组 成的排序后矩阵,然后执行将该数据提供给节点处理器的操作。也就是说, 从节点处理器来看,重排序处理和等同处理会导致相同的状态,其中由各 具有PxP结构的配置矩阵组成的奇偶校验矩阵中的行和/或列已被重排 序,以生成由各具有FxF结构的配置矩阵组成的矩阵。这种状态对于节 点处理器的处理需求来说^L够的。
换言之,本发明提供的技术是用于执行重排序处理的技术,该重排序 处理包含对作为由各具有PxP结构的配置矩阵组成的奇偶校验矩阵所表 示的值、存储在緩冲器中的接收值的至少列进行重排序的处理,或包含与 该处理等同的处理。因此,本发明提供的技术也可说成是实施这样的操作 的技术以各由对应于FxF配置矩阵的F个接收值组成的单位而将接收 值提供给节点处理器,作为对将接收值提供给节点处理器这一操作的控 制。
于是,通过采用本发明提供的技术,即使在对P码进行解码的处理 中,也可将P个节点处理器同时执行的P个并行处理削减至仅由F个节 点处理器同时执行的F个并行处理。此外,移位部不需J^L行PxP循环 移位运算,而是仅需J^L行FxF循环移位运算。除此之外,各存储器不 需要同时写入和读出P个数据,而是仅需同时写入和读出F个数据。
如上所述,通过采用本发明提供的技术,才艮据本发明的实施例的整个 解码设备的电路尺寸可以比现有技术的解码设备小得多。不过,如后面要 详细说明的,存在整数P存在多个约数的情况。在这种情况下,不必取最 小约数作为约数F。而是,恰当的做法是选择对传输速率和工作频率最佳 的约数作为约数F。
此外,如后面要详细说明的,存在与整数P不同的非1整数Q同样 具有约数F的情况。也就是说,约数F是整数P和Q共同的约数。在这 种情况下,根据本发明提供的技术的、采用F个并行节点处理器的解码设 备不仅能够对P码进行解码,而且还能够选择性地对P码或Q码进行解 码。
接着,对根据本发明的实施例的解码设4^t出如下具体说明。设整数P为6(P-6)且该整数P的约数F是3(F=3)。在这种情况下,通过采用本 发明提供的技术,有可能构造具有如图12的框图所示的配置的解码设备。 也就是说,图12是示出了应用本发明的实施例的解码设备的典型配置的 框图。
图12的框图所示的典型的解码设备具有这样的配置包括接收值緩 冲器500、接收值存储器501、节点处理部502、移位部503、消息存储器 504、解码结果存储器505和控制部506。
图12的框图所示的典型的解码设备的整体配置除了控制部506外、 与图10的框图所示的典型的解码设备基^目同。也就是说,在图12的框 图所示的典型的解码设备中,各自代表功能配置要素的方框的相互联系、 以及各个功能配置要素所充当的角色即各功能配置要素的功能除了控制 部506外、与图10的框图所示的典型的解码设^^基4^目同。然而,从各 功能配置要素的观点来看,图12的框图所示的典型的解码设备和图10 的框图所示的典型的解码该:备有以下不同。
在图10的框图所示的典型的解码i殳备中采用的接收值緩冲器200、 接收值存储器201 、消息存储器204和解码结果存储器205各自具有允许 同时读取P-6的6个数据(或6位)的配置。另一方面,在图12的框图所 示的典型的解码设备中采用的接收值緩冲器500、接收值存储器501、消 息存储器504和解码结果存储器505各自具有仅允许同时读取F=3的3 个l^据(或3位)的配置。
此外,在图10的框图所示的典型的解码设备中采用的移位部203具 有能够执行PxP循环移位运算的配置,其中P-6。另一方面,在图12的 框图所示的典型的解码设备中采用的移位部503具有仅能执行FxF循环 移位运算的配置,其中F-3。
除此之外,在图10的框图所示的典型的解码i殳备中采用的节点处理 部202具有6(-P)个节点处理器210-1至210-6。另一方面,在图12的框 图所示的典型的解码设备中采用的节点处理部502仅具有3^F)个节点处 理器510-1至510-3。
因而,由于图12的框图所示的典型的解码i殳备和图10的框图所示的 典型的解码设备具有如上i^各功能配置要素的观点来看的不同之处,因 此图12的框图所示的典型的整个解码i殳备与图IO的框图所示的典型的解 码设备相比,可被配置成电路尺寸较小的设备。注意,作为各节点处理器510-1至510-3,可原样使用具有图11的 框图所示的配置的节点处理器210。即使节点处理器510-1至510-3自身 各自具有不同于图ll的框图所示的配置,不用说、本发明仍可应用于图 12的框图所示的解码设备。
此外,不用说、本发明还可应用于具有如下配置的解码设备该配置 包括3个可变节点处理器作为与3个校验节点处理器的电路分离的电路, 以取代各自既用作可变节点处理器、又用作校验节点处理器的节点处理器 510-1至510-3。
除此之外,不用说,本发明也可应用于不使用节点处理器510-1至 510-3而执行可变节点处理的情况。
接着解释图12的框图所示的典型的解码设备所执行的操作。
注意,如后面将要说明的,如图12的框图所示的典型的解码设备能 够对P码进行解码,其中P是具有约数F的任意整数值。不过,为了在 以下说明由图12的框图所示的典型的解码设备所执行的操作时,使图12 的框图所示的典型的解码i殳备容易与图10的框图所示的典型的解码设备 做比较,设解码对象是由图9所示的、各具有6x6结构的配置矩阵组成的 奇偶校验矩阵所定义的P^6)码。
接收值緩冲器500是这样的緩冲器其用于在数据D500被作为数据 D501转移到接收值存储器501之前,将^Jt信线絲收到的数据D500 存储为尺寸为1个码的数据。
对奇偶校验矩阵的列进行重排序的重排序处理对应于对码位序列的 码位进行重排序的处理。因而,根据由控制部506执行的控制,如下执行 对存储在接收值緩冲器500中的数据D500的重排序处理。
图9所示的奇偶校验矩阵被视为6x6配置矩阵的集合体,将各6x6 配置矩阵作为重排序的单位。对各6x6配置矩阵进行如下重排序处理基 于图13和14所示的预先确定的规则而将该6x6配置矩阵重排序为成为 3x3配置矩阵的集合体的重排序后的矩阵。根据预先确定的规则,图14 所示的各3x3配置矩阵是由特定行和特定列组成的矩阵,其中特定行具有 提供作为各行序号除以2的结果而获得的相同的余数的行序号,且特定列 具有拔JHt为各列序号除以2的结果而获得的相同的余数的列序号。因而 如图14所示,3x3配置矩阵是由各具有偶数或奇数行序号的行和各具有 偶数或奇数列序号的列组成的矩阵。换句话说,图13所示的6x6配置矩阵可说成是被区分成了 4个图14所示的3x3配置矩阵。
具体地,请读者参照图13,图13是示出了图9所示的由各具有6x6 结构的配置矩阵组成的奇偶核^验矩阵的典型的6x6移位矩阵的图。在图 13中,圆團(O)所围的各数字是列序号,而方框(口)所围的各数字是行序号。
例如,对图13所示的6x6移位矩阵进行根据上述规则的重排序处理, 从而将该6x6移位矩阵转换成如图14所示的由4个3x3配置矩阵组成的 重排序后的矩阵。显然,图14所示的重排序后的矩阵使用虚线被区分成 如图14所示的2个3x3零矩阵、1个3x3准单位矩阵和1个3x3移位矩 阵这4个3x3配置矩阵。
组成图9所示的由各具有6x6结构的配置矩阵组成的奇偶核_验矩阵的 其它各6x6配置矩阵也进行上述重排序处理。结果,将图9所示的由各具 有6x6结构的配置矩阵组成的奇偶校验矩阵重排序为具有图15所示结构 的重排序后的矩阵。注意,为了容易识别对图9所示的由各具有6x6结构 的配置矩阵组成的奇偶校验矩阵进行重排序的处理所得的各配置矩阵、即 各具有3x3结构的配置矩阵,在图15所示的奇偶校验矩阵中,在3x3配 置矩阵之间设有间隔。图15所示的典型的排序后的矩阵包括3x3单位矩 阵、3x3准单位矩阵、3x3移位矩阵、3x3和矩阵以及3x3零矩阵。
因而,除了在图IO的框图所示的典型的解码设备中采用的接收值存 储器201的后续级处执行的操作是对于P=6的操作,而在图12的框图所 示的典型的解码设备中采用的接收值存储器501的后续级处执行的操作 是对于F-3的操作这一情况以外,在图12的框图所示的典型的解码i殳备 中采用的接收值存储器501的后续级处执行的^Mt与在图10的框图所示 的典型的解码设备中采用的接收值存储器201的后续级处执行的操作是 相似的。换言之,在图12的框图所示的典型的解码设备中采用的接收值 存储器501的后续级处执行的操作与仿佛图12的框图所示的解码设备是 对P-3的P码进行解码的设备而执行的操作完全相同。
如果首先将以下方法实施为传输方法在将重排序后的码位通过通信 线路而输出至在图12的框图所示的解码设备中采用的接收值緩冲器500 前,对接收的码位进行重排序,则与上述重排序处理同时地以相反的方式 在接收值緩冲器500中对码位进行重排序。对码位进行重排序也可以不是 与上述重排序处理同时地以相反的方式来进行,而是在重排序处理之前或 之后在接收值緩冲器500中对码位进行重排序。在以上说明中,取约数F为3(F-3)作为整数P即6(P-6)的约数。当 然,因为如上述约数必须为非1约数,所以除约数F为1以外,还可以取 整数Pe6)的另一约数(即约数F为2)。然而在这种情况下,如下所述根据 预先确定的规则对图9所示的由各具有6x6结构的配置矩阵组成的奇偶校 验矩阵执行重排序处理。对各6x6配置矩阵进行重排序处理,以将该6x6 配置矩阵重排序为图16所示的重排序后的矩阵。如图16所示,重排序后 的矩阵是2x2配置矩阵的集合体,该2x2配置矩阵每个都是由特定行和特 定列组成的矩阵,其中特定行具有提供作为^ff序号除以3的结果而获得 的相同的余数的行序号,特定列具有提供作为各列序号除以3的结果而获 得的相同的余数的列序号。
具体地,例如,对图13所示的6x6移位矩阵进行根据上g则的重 排序处理,从而将该6x6移位矩阵转换成如图16所示的由9个2x2配置 矩阵组成的重排序后的矩阵。显然,图16所示的重朝夂序后的矩阵^^吏用虚 线而区分成2x2零矩阵、2x2准单位矩阵以及2x2移位矩阵这9个2x2配 置矩阵。
因而,在约数F为2的情况下,同样地,除了在图10的框图所示的 典型的解码设备中采用的接收值存储器201的后续级处执行的操作是对 于P-6的操作,而在图12的框图所示的典型的解码设备中采用的接收值 存储器501的后续级处执行的操作是对于F=2的^Mt这一情况以外,在 图12的框图所示的典型的解码设备中采用的接收值存储器501的后续级 处执行的操作与在图10的框图所示的典型的解码设备中采用的接收值存 储器201的后续级处执行的操作相似。换言之,在图12的框图所示的典 型的解码设备中采用的接收值存储器501的后续级处执行的操作与仿佛 图12的框图所示的解码设备是对P=2的LDPC码进行解码的设备而执行 的^^作完全相同。
也就是说,对于F-2,解码i殳备不必采用图12的框图所示的配置。 换句话说,采取如下配置就足够了该配置包含两个并行的节点处理器、 执行2x2循环移位运算的移位部以及各自使得可同时写入或读出2个数据 (或2位)的存储器。
此外,以上说明的实施例是对于P=6的实施例。不过当然本发明也 可应用于整数P为除6以外的整数的情况。例如本发明可应用于由各具有 PxP结构的配置矩阵组成的奇偶校验矩阵,其中P-360。这样,对于任何 P值的情况可采^f艮据本发明的技术。此外,根据本发明提供的技术,在确定整数P的值后,可取除1以外的任何约数F。
也就是说,在确定了整数P的值和该整数P的非1约数F后,对由 各具有PxP结构的配置矩阵组成的奇偶校验矩阵,即定义与LDPC码相 关的P码的奇偶校验矩阵,执行根据以下描述的规则的重排序处理,以构 造包括F个并行的节点处理器、执行FxF循环移位运算的移位部、以及 各自使得可同时写入或读出F个数据(或F位)的存储器的配置。
根据上面提到的规则, 一般来说,各具有PxP结构的配置矩阵的每 一个被区分成FxF配置矩阵,该FxF配置矩阵各由以下行和列组成,其 中^ft具有提供作为行序号除以J(-P/F)的结果而得到的相同余数的行序 号,各列具有提供作为列序号除以J的结果而得到的相同的余数的列序 号,其中从等式p-FxJ得出J(=P/F),其中行序号作为分配给组成奇偶校 验矩阵的各PxP配置矩阵中所含的P行的每一行的序号,是包括在范围 0至(P-1)中的数字,且列序号作为分配给组成奇偶校验矩阵的各PxP配 置矩阵中所含的P列的每一列的序号,是包括在范围0至(P-1)中的数字。
注意,如上所述,重排序处理不限于这一处理在经由存储器将排序 后的矩阵提供给节点处理器之前,对存储在緩冲器中的奇偶校验矩阵即由 各具有PxP结构的配置矩阵组成的矩阵进行重排序,以生成由各具有FxF 结构的配置矩阵组成的排序后矩阵并再度将排序后矩阵存储在緩冲器中。 也就是说,在上述实施例的情况下,在经由接收值存储器501而将排序后 矩阵提供给节点处理部502之前,执行重排序处理以对存储在接收值緩冲 器500中的奇偶校验矩阵即由各具有PxP结构的配置矩阵组成的矩阵进 行重排序,以生成由各具有FxF结构的配置矩阵组成的排序后矩阵并再 度将排序后矩阵存储在接收值緩冲器500中。然而根据为与排序处理等同 的处理提供的等同的技术,还可执行该等同的处理以将数据原样地、以遵 循由各具有PxP结构的配置矩阵组成的奇偶校验矩阵的到来形态而存储 在接收值緩沖器500中,然后根据上述预定的规则对接收值存储器501 中由各具有PxP结构的配置矩阵组成的奇偶校验矩阵中的行和/或列进行 重排序,以生成由各具有FxF结构的配置矩阵组成的排序后矩阵,然后 执行将该数据提供给节点处理部502的操作。也就是说,根据预先确定的 规则有选择ilk^接收值存储器501读出数据,并将该数据提供给节点处理 部502。也就是说,重排序处理是包括根据等同技术的等同处理在内的广 义概念的处理。注意,通过将控制部指定为控制根据上述预定的规则而从 接收值存储器501读出数据这一操作的部件,从而可容易地执行控制。在图12的框图所示的解码i殳备的情况下,控制部506用作该控制部。
此外,上述实施例是为编码率为2/3且码长度为108而提供的实施例, 当然这些值仅是典型的值。也就是说,例如对于P=6 W目同或更少的边 总数,即使采取任意的码长度和任意的编码率,也可使用同一解码设备来 通过仅改变控制信号对数据进行解码。除此之外,^Li殳计为满足4吏用相同 P值、码长度不超过预先确定的值并且总边数不大于预先确定的整数这一 条件、对数据进行解码的设备的解码设备也能够对码长度满足该条件但编 码率不同的数据进行解码。
以上内容总结如下。通过应用本发明,从而可不受整数P自身的值 所强加的约束,根据传输速率和工作频率来从整数P的约数范围内任意选 择代表解码处理的并行程度的约数F的值。结果,可使解码设备的电路尺 寸变得更小。
例如,对于P-360,可从包括值360、 180和120在内的范围中任意 选择其约数F。从如上所述该约数F是并行节点处理器的数量这一情况显 然可看到采用本发明意味着该约数F的值可被说成是代表解码处理的并 行程度的值。因此,解码设备的设计者可以在考虑解码处理的并行程度的 情况下,选择对于传输速率和工作频率最佳的约数F。
也就是说,如果对于所需的传输速率选择了整数P的较大约数F,则 解码处理的并行程度会高于实际需要的值。因而,数据以比执行解码处理 所需的时间长度更长的间隔到达,这是由于执行解码处理所需的时间因解 码处理中的并行程度高而较短。因此,从整数P的约数的范围中选择最佳 的约数F,使得各间隔大致等于执行解码处理所需的时间长度。在这种情 况下,减小约数F以使解码处理的并行程度也降低。结果,解码设备的电 路尺寸会更小。此外,如果将来解码设备的电路在更高速度操作,则可选 择更小的约数F以提供较低的解码处理的并行程度。即使在这种情况下, 也有可能达到与现有解码i更^^目同的性能。
此外,如果整数P和小于整数P的整数Q(PXJ)具有公约数,则将该 公约数视为代表解码处理的并朽难度的约数F的解码设备能够对P和Q 码二者进行解码。
因而,即使对于需要高传输速率的业务而选择P较大的码,而对于 不需要高传输速率的便携型接收机的业务而选择Q较小的码,也可使用 同一解码设备来实现如下接收机设备,该接收机设备设有能够对需要高传为两种业务共用的接收机设备。 ' ' '
也就是说,共用的接收机设备的实现使得P码和Q码二者可在传输 系统中共存。
例如,如果例如以8PSK(相移键控)和30Msym/s来发送DVB-S.2 LDPC码,则码位的比特率是卯Mbps。由于奇偶校验矩阵中的列权重的 平均值是约3.5,假设解码处理重复进行50次,则每一码位所需的处理量 约是3.5x50x2=350。因而,需将时钟频率设为作为该处理量乘以反映电 路效率的值1.5的结果所得的乘积。因而,解码设备需要工作在 131.25MHz(=^Mbps x 350 x 1.5/360)的工作频率处,其中值卯Mbps是码 位的比特率,值350是各码所需的处理量,值1.5反映电路的效率,而值 360代表解码处理的并行程度'
在这种情况下,对于代表解码处理的并#^度的P=360的现有技术 的解码设备需要一些RAM作为允许同时写入和读出360个数据的存储 器。这种RAM由于代表存储大的位数的数据所需的各RAM的存储容量 的字数小,因而导致较差的面积效率。此外,现有技术的解码i殳备还需要 360个并行的节点处理器。结果,现有技术的解码设备的电路尺寸非常大。
因而,假设将DVB-S.2 LDPC码应用于传输速率低于90Mbps的传 输系统,则即使将代表解码处理的并行程度的约数F设为60(F=60),也 有可能实现相同的工作频率和相同的解码处理被重复的次数,从而有可能 实现相同的解码性能。低于卯Mbps的传输速率的一例是15Mbps的传输 速率。
如果将代表解码处理的并行程度的约数F设为60(F=60),则允许同 时仅写入和读出60个数据的存储器就足够了。因此,当配置存储器时, 由于所存储的数据的位数更小,因此可以采拟目同总数的新RAM,该新 RAM各自具有是以往使用的RAM的6倍的字数。与以往使用的RAM 即上述导致较差的面积效率的RAM相比,各新RAM应具有显著改进了 面积效率的较小的物理尺寸。作为替代,也可使用各与以往使用的RAM 具有相同字数但数量更少的新RAM。在任一情况中,都实质上改进了用 于存储相同位数的面积效率。此外,由于所需的并行节点处理器的数量仅 为60,因此可进一步减小现有技术的解码设备的电路尺寸。
也就是说,如果将DVB-S.2 LDPC码用于例如地面波的传播,则因功率消耗问题而难以使用便携型移动接^来接收地面波。为了解决这一
困难,可以设想这种情况其中使用码长度短于0=60的码的码来提供业 务以作为面向便携型移动接收机的业务。即使在这种情况下,通过将本发 明应用于这种情况,也有可能容易地实施作为代表解码处理的并行程度的 值而将约数F设为60(F-60)的解码设备。该解码设备能够对码长度达 64800的码进行解码,还能够对P^360)码和Q(-60)码二者进行解码。因 而,采用该解码设备的接收机能够接收供固定接收机用的业务和供便携型 接收机用的业务。供固定接收机用的业务是使用P(-360)码的业务,而供 便携型接收机用的业务是使用Q(-60)码的业务。
以上内容总结如下。通过应用本发明,有可能实施基于整数P的约 数F而对具有大的P值的LDPC码进行解码的解码设备。也就是说,有 可能实施这样的解码设备,该解码设备用于具有低比特率的传输系统和将 来的采用更高处理速度的电路的系统。与现有技术的解码设备相比,根据 本发明的实施例的解码i更备具有较小的电路尺寸。
此外,通过应用本发明,基于具有多个约数F的整数P的码可由基 于所有约数F而设计的解码设备来解码。于是,具有根据不同传输速率和 供不同业务接收者用的不同业务而适当调整的尺寸的LDPC码可共存于 一个传输系统中。
也就是说,尽管在上述典型的传输系统中仅使用两个不同类型的P 码和Q码,但一般地,可使用K个不同类型的a码(如P和Q码),其中 记号a表示所使用的码的类型,而记号K表示所使用的码的不同的类型 的数量。该不同的类型的数量等于或大于2(K^2)。记号K还表示系统的 设计者等从各作为非1约数F的倍数的多个不同整数中选择的整数的个 数。也就是说,可使用的不同的a码的数量也是K。
顺便提及,前述一系列处理可由硬件和/或软件的执行来执行。
如果上述一系列处理由软件的执行来执行,则由计算机来执行组成软 件的程序,该计算机实施根据本发明的实施例的解码设备。该计算机具有 如图17的框图所示的配置。
在图17的框图所示的解码i更备中,CPU(中央处理单元)1001通过执 行存储在ROM(只读存储器)1002中的程序或从存储部1008载入RAM(随 ^"W!"储器)1003的程序,从而执行各种处理。RAM 1003还用于适当 地存储如在执行处理时所需的数据的各种信息。CPU 1001、 ROM 1002和RAM 1003由总线1004相互连接,该总线 1004还连接至输川输出接口 1005。
输V输出接口 1005连接至输入部1006、输出部1007、上述存储部 1008、以及通信部1009。输入部1006包括键盘和鼠标,而输出部1007 包括显示单元。存储部1008包括硬盘。通信部1009具有调制解调器或终 端适配器。通信部1009是经过附图的框图中未示出的网络(如因特网)而 执行与其它设备的通信处理的单元。
输A/输出接口 1005还根据需要而连接至驱动器1110,在该驱动器 1110中装配有记录介质。记录介质是可移动介质1111,可以是磁盘、光 盘、磁光盘或半导*储器。如上所述,将CPU 1001所执行的计算* 序从可移动介质1111安装到存储部1008中。
如前述,前述一系列处理可由硬件和/或软件的执行来执行。如果上
述一系列处理由软件的执行来执行,则可通常从网络或可移动介质1111
将组成软件的程序安*^嵌入专用硬件的计算机、通用个人计算机等中。
在这种情况下,该计算机或个人计算机是上述计算机,即用作解码设备的
计算机。通用个人计算机是能够通过将各种程序安装在该个人计算机上从 而执行各种功能的个人计算机。
如图17所示,用于对要^A计算机或通用个人计算机的程序、即要 由计算机或通用个人计算机分别执行的程序进行记录的上述可移动介质 1111是从解码设备的主体单元分离地提供给用户的可移动记录介质。该可 移动记录介质也称作封装介质,其例子包括如软盘的磁盘、如 CD-ROM(光盘只读存储器)或DVD(数字多功能光盘)的光盘、如MD(小 型盘)的磁光盘、以及半导体存储器。也可不从可移动记录介质上安装程 序,而是将程序预先存储在解码设备的主体单元所含的嵌入式记录介质 中。嵌入式记录介质的例子是存储部1008所含的硬盘、以及ROM 1002。
需要注意的是,在本专利说明书中,上述流程图的步骤不仅可按预定 顺序沿时间轴来执行,也可同时或单个地执行。
此外,本领域的普通人员应当理解根据设计需求和其它因素,可出 现各种修改、组合、子组合和变化,只要它们落入所附权利要求书或其等 同物的范围内即可。
还要注意,在本说明书中使用的技术术语"系统"指的是包含多个设 备的总体的配置。
权利要求
1. 一种对低密度奇偶校验码进行解码的解码设备,其中所述低密度奇偶校验码由具有第一结构的原奇偶校验矩阵来表示,该第一结构是通过组合多个第一配置矩阵而得到的,该多个第一配置矩阵包括P×P单位矩阵、将所述P×P单位矩阵的一个或多个矩阵元素各自的值从1置为0而得到的P×P准单位矩阵、作为对所述P×P单位矩阵或所述P×P准单位矩阵执行循环移位运算的结果而得到的P×P移位矩阵、通过对所述P×P单位矩阵、所述P×P准单位矩阵和所述P×P移位矩阵中的至少两个执行矩阵加法运算而得到的P×P和矩阵、以及P×P零矩阵,或者所述低密度奇偶校验码由通过重排序所述原奇偶校验矩阵中的至少一行和一列而得到的、作为具有所述第一结构的矩阵的矩阵来表示,其中记号P表示整数,所述解码设备包括消息计算装置,用于通过同时进行F个校验节点处理或F个可变节点处理,从而执行对每个作为接收所述低密度奇偶校验码的结果而得到的接收值进行解码的处理,并输出作为所述F个校验节点处理或所述F个可变节点处理的结果而得到的F个消息,其中记号F表示整数P的非1约数;移位装置,用于对由所述消息计算装置生成的F个所述消息执行F×F循环移位运算,并输出作为所述F×F循环移位运算的结果的F个消息;存储装置,用于存储由所述移位装置生成的F个所述消息并允许所存储的F个消息被读出,或用于存储F个上述接收值并允许所存储的F个接收值被读出;以及控制装置,用于通过对由具有所述第一结构的所述奇偶校验矩阵表示的所述接收值至少执行列重排序处理或与所述列重排序处理等同的处理,来控制向所述消息计算装置提供由对应于第二配置矩阵的F个所述接收值组成的单位这一操作,作为向所述消息计算装置提供所述接收值的操作,所述第二配置矩阵作为从所述第一配置矩阵而得的第二配置矩阵包含在具有第二结构的矩阵中,其中所述第二结构是通过组合多个所述第二配置矩阵而得到的结构,所述多个第二配置矩阵包括F×F单位矩阵、将所述F×F单位矩阵的一个或多个矩阵元素各自的所述值从1置为0而得到的F×F准单位矩阵、作为对所述F×F单位矩阵或所述F×F准单位矩阵执行循环移位运算的结果而得到的F×F移位矩阵、对所述F×F单位矩阵、所述F×F准单位矩阵和所述F×F移位矩阵中的至少两个执行矩阵加法运算而得到的F×F和矩阵、以及F×F零矩阵。
2. 根据权利要求1所述的解码设备,其中所述列重排序处理包括 通过将每个所述第一配置矩阵视为处理单位,进行对每个用作处理对象的 所述第一配置矩阵的每一个中的列重排序的操作而执行的处理,以将每个 所述第一配置矩阵区分成所述第二配置矩阵,该第二配置矩阵的每一个由 以下列组成,所述列中的每一个具有提供相同的作为所述列序号除以J 的结果而获得的余数的列序号,其中J是从等式P-FxJ而得的P/F,其中 所述列序号是包括在0到(P-1)的范围内的数字,是分配给组成具有所述第 一结构的所述奇偶校验矩阵的每个所述第一配置矩阵中包括的P列的每 一个的序号。
3. 根据权利要求1所述的解码设备,其中所述解码设备进一步包括緩冲装置,用于对分别作为接收所述低密度奇偶校验码的结果而得到 的所述接收值进行緩冲,其中所述控制装置执行緩冲控制,以在所述緩冲装置中,对以遵循具有所 述第 一结构的所述矩阵的到来形态而接收的所述接收值进行重排序,从而 将所述到来形态转换成遵循具有所述第二结构的所述矩阵的另 一形态;且 然后所述控制装置执行控制,以将以遵循具有所述第二结构的所述矩阵的 所述另一形态而緩冲在所述緩冲装置中的所述接收值以由与具有所述第 二结构的所述矩阵的所述第二配置矩阵对应的所述F个接收值组成的单 位、经由所述存储装置而提供给所述消息计算装置。
4. 根据权利要求1所述的解码设备,其中所述控制装置从以遵循具有所述第 一结构的所述奇偶校验矩阵的到来形态而接收的所述接收值中 选捧与具有所述第二结构的所述矩阵的所述第二配置矩阵相对应的f个所述接收值,并将F个所述接收值经由所述存储装置而提供给所述消息计 算装置,其中所述接收值的重排序后形态遵循具有所述第二结构的所述矩 阵。
5. —种对低密度奇偶校验码进行解码的解码设备中采用的解码方法,其中所述低密度奇偶校验码由具有第一结构的原奇偶校验矩阵表示,该第 一结构是通过组合多个第一配置矩阵而得到的,该多个第一配置矩阵包括PxP单位矩阵、将所述PXP单位矩阵的一个或多个矩阵元素各自的值从1置为0而得到的PxP准单位矩阵、作为对所述PxP单位矩阵或所述PxP 准单位矩阵执行循环移位运算的结果而得到的PxP移位矩阵、通过对所 述PxP单位矩阵、所述PxP准单位矩阵和所述PxP移位矩阵中的至少两 个执行矩阵加法运算而得到的PxP和矩阵、以及PxP零矩阵,或者所述低密度奇偶校验码由通过重排序所述原奇偶校验矩阵中的至少 一行和一 列而得到的、作为具有所述第一结构的矩阵的矩阵来表示,其中记号p表示整数,所述解码设备包括消息计算装置,用于通过同时ii行F个校验节点处理或F个可变节 点处理,从而执行对每个作为接收所述低密度奇偶校验码的结果而得到的 接收值进行解码的处理,并输出作为所述F个;^验节点处理或所述F个 可变节点处理的结果而得到的F个消息,其中记号F表示整数P的非1 约数;移位装置,用于对由所述消息计算装置生成的F个所述消息执行FxF 循环移位运算,并输出作为所述FxF循环移位运算的结果的F个消息; 以及存储装置,用于存储由所述移位装置生成的F个所述消息并允许所存 储的F个消息被读出,或用于存储F个上述接收值并允许所存储的F个 接收值被读出;以及所述解码i殳^L行以下步骤通过对由具有所述第 一结构的所述奇偶校验矩阵表示的所述接收值 至少执行列重排序处理或与所述列重排序处理等同的处理,来控制向所述 消息计算装置提供由对应于第二配置矩阵的所述F个接收值组成的单位 这一操作,作为向所述消息计算装置提供所述接收值的操作,所述第二配置矩阵作为从所述第一配置矩阵而得的第二配置矩阵包含在具有第二结 构的矩阵中,其中所述第二结构是通过组合多个所述第二配置矩阵而得到 的结构,所述多个第二配置矩阵包括FxF单位矩阵、将所述FxF单位 矩阵的一个或多个矩阵元素各自的所述值从1置为0而得到的FxF准单 位矩阵、作为对所述FxF单位矩阵或所述FxF准单位矩阵执行循环移位 运算的结果而得到的FxF移位矩阵、对所述FxF单位矩阵、所述FxF准 单位矩阵和所述FxF移位矩阵中的至少两个执行矩阵加法运算而得到的FxF和矩阵、以及FxF零矩阵。
6. —种由计算机执行的程序,该计算机用作对低密度奇偶校验码进 行解码的解码设备,其中所述低密度奇偶校验码由具有第一结构的原奇偶校验矩阵表示,该第 一结构是通过组合多个第一配置矩阵而得到的,该多个第一配置矩阵包括 PxP单位矩阵、将所述PxP单位矩阵的一个或多个矩阵元素各自的值从1 置为0而得到的PxP准单位矩阵、作为对所述PxP单位矩阵或所述PxP 准单位矩阵执行循环移位运算的结果而得到的PxP移位矩阵、通过对所 述PxP单位矩阵、所述PxP准单位矩阵和所述PxP移位矩阵中的至少两 个执行矩阵加法运算而得到的PxP和矩阵、以及PxP零矩阵,或者所述 低密度奇偶校验码由通过重排序所述原奇偶校验矩阵中的至少 一行和一 列而得到的、作为具有所述第一结构的矩阵的矩阵来表示,其中记号P 表示整数,所述解码设备包括消息计算装置,用于通过同时进行F个校验节点处理或F个可变节 点处理,从而执行对每个作为接收所述低密度奇偶校验码的结果而得到的 接收值进行解码的处理,并输出作为所述F个校验节点处理或所述F个 可变节点处理的结果而得到的F个消息,其中记号F表示整数P的非1 约数;移位装置,用于对由所述消息计算装置生成的F个所述消息执行FxF 循环移位运算,并输出作为所述FxF循环移位运算的结果的F个消息; 以及存储装置,用于存储由所述移位装置生成的F个所述消息并允许所存 储的F个消息被读出,或用于存储F个上述接收值并允许所存储的F个 接收值被读出,以及所述程序包括以下步骤通过对由具有所述第 一结构的所述奇偶校验矩阵表示的所述接收值 至少执行列重排序处理或与所述列重排序处理等同的处理,来控制向所述 消息计算装置4^供由对应于笫二配置矩阵的所述F个接收值组成的单位 这一操作,作为向所述消息计算装置提供所述接收值的操作,所述第二配置矩阵作为从所述第一配置矩阵而得的笫二配置矩阵包含在具有第二结 构的矩阵中,其中所述第二结构是通过组合多个所述第二配置矩阵而得到的结构,所述多个第二配置矩阵包括FxF单位矩阵、将所述FxF单位 矩阵的一个或多个矩阵元素各自的所述值从1置为0而得到的FxF准单 位矩阵、作为对所述FxF单位矩阵或所述FxF准单位矩阵执行循环移位 运算的结果而得到的FxF移位矩阵、对所述FxF单位矩阵、所述FxF准 单位矩阵和所述FxF移位矩阵中的至少两个执行矩阵加法运算而得到的 FxF和矩阵、以及FxF零矩阵。
7. —种用于对低密度奇偶校验码进行解码的解码设备,其中所述低 密度奇偶校验码由具有第一结构的原奇偶校验矩阵表示,该第一结构是通 过组合多个第一配置矩阵而得到的,该多个第一配置矩阵包括PxP单位 矩阵、将所述PxP单位矩阵的一个或多个矩阵元素各自的值从1置为0 而得到的PxP准单位矩阵、作为对所述PxP单位矩阵或所述PxP准单位 矩阵执行循环移位运算的结果而得到的pxp移位矩阵、通过对所述PxP单位矩阵、所述PxP准单位矩阵和所述PxP移位矩阵中的至少两个执行 矩阵加法运算而得到的PxP和矩阵、以及PxP零矩阵,或者所述低密度 奇偶校验码由通过重排序所述原奇偶校验矩阵中的至少 一行和一列而得 到的、作为具有所述第一结构的矩阵的矩阵来表示,其中记号P表示整数, 所述解码i殳备包括消息计算部,被配置成通过同时进行F个校验节点处理或F个可变 节点处理,从而执行对每个作为接收所述低密度奇偶校验码的结果而得到 的接收值进行解码的处理,并输出作为所述F个校验节点处理或所述F 个可变节点处理的结果而得到的F个消息,其中记号F表示整数P的非1 约数;移位部,被配置成对由所述消息计算部生成的F个所述消息执行FxF 循环移位运算,并输出作为所述FxF循环移位运算的结果的F个消息;存储部,被配置成存储由所述移位部生成的F个所述消息并允许所存 储的F个消息被读出,或用于存储F个上述接收值并允许所存储的F个 接收值被读出;以及控制部,被配置成通过对由具有所述第一结构的所述奇偶校验矩阵表 示的所述接收值至少执行列重排序处理或与所述列重排序处理等同的处 理,来控制向所述消息计算部提供由对应于第二配置矩阵的所述F个接收 值组成的单位这一操作,作为向所述消息计算部提供所述接收值的操作, 所述第二配置矩阵作为从所述第一配置矩阵而得的第二配置矩阵包含在 具有第二结构的矩阵中,其中所述第二结构是通it^合多个所述第二配置矩阵而得到的结构,所述多个第二配置矩阵包括FxF单位矩阵、将所述 FxF单位矩阵的一个或多个矩阵元素各自的所述值从1置为0而得到的 FxF准单位矩阵、作为对所述FxF单位矩阵或所述FxF准单位矩阵执行 循环移位运算的结果而得到的FxF移位矩阵、对所述FxF单位矩阵、所 述FxF准单位矩阵和所述FxF移位矩阵中的至少两个执行矩阵加法运算 而得到的FxF和矩阵、以及FxF零矩阵。
全文摘要
本发明公开了一种对LDPC码进行解码的解码设备,该解码设备包括消息计算部,用于执行对接收值进行解码的处理,其中记号F表示整数P的非1约数,并输出F个消息;移位部,被配置成对该F个消息执行F×F循环移位运算、并输出F个消息;存储部,被配置成存储F个消息并允许所存储的该F个所述消息被读出,或是存储上述F个接收值并允许所存储的该F个接收值被读出;和控制部,被配置成通过对该接收值至少执行列重排序处理或与该列重排序处理等同的处理,从而控制向消息计算部提供由F个接收值组成的单位这一操作。
文档编号H03M13/11GK101414834SQ20081017053
公开日2009年4月22日 申请日期2008年10月17日 优先权日2007年10月19日
发明者横川峰志 申请人:索尼株式会社
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1