一种IRALDPC码的构造方法及其编码器.pdf

上传人:a1 文档编号:4316076 上传时间:2018-09-13 格式:PDF 页数:24 大小:818.04KB
返回 下载 相关 举报
摘要
申请专利号:

CN201110411481.1

申请日:

2011.12.12

公开号:

CN102437857A

公开日:

2012.05.02

当前法律状态:

授权

有效性:

有权

法律详情:

授权|||实质审查的生效IPC(主分类):H03M 13/11申请日:20111212|||公开

IPC分类号:

H03M13/11

主分类号:

H03M13/11

申请人:

华中科技大学

发明人:

彭立; 张琦; 陈涛; 王渤

地址:

430074 湖北省武汉市洪山区珞喻路1037号

优先权:

专利代理机构:

华中科技大学专利中心 42201

代理人:

曹葆青

PDF下载: PDF下载
内容摘要

本发明属于无线通信信道编码技术领域,具体涉及一种高性能IRA-LDPC码的代数构造方法和相应的低复杂度快速编码器。代数构造方法包括步骤:构造剩余类数对阵列的方法和表达式;设计剩余类数对的第一个参数的方法和表达式;设计剩余类数对的第二个参数的方法和表达式;计算奇偶校验矩阵中每个“1”元素所在位置的行坐标的方法和表达式。编码器包括:编码器总体结构模块和电路;编码使能信号生成模块和电路;可并行执行的校验位选择信号发生器子模块和电路;可并行执行的校验位计算与存储子模块和电路;编码数据输出模块和电路。

权利要求书

1: 一 种 IRA-LDPC 码 的 构 造 方 法, 若 所 构 造 的 IRA-LDPC 码 信 息 位 长 度 为 A、 校验 d d 位长度为 B, 所构造的 H 矩阵的尺寸为 B×A, 所述 H 矩阵设定的约束条件为 : (一)信 d 息位长度 A 和校验位长度 B 存在大于 1 的公因数 L ; ( 二 )H 矩阵被分解为 k 个子矩阵 每个子矩阵的尺寸是 B×L, 其中 k = A/L ; ( 三 )Hd 矩阵的行重量只有 一种, 用 u 表示 ; ( 四 )Hd 矩阵的列重量最多有 k 种, 最少是两种, 分别用 v0, v1, ..., vk-1 表 示; ( 五 ) 每个子矩阵 d 的第一列循环下移 m 位, 得到第二列, 作依次循环 ( 六 )Hd 矩阵采用其紧凑形式的剩余类 下移 m 位操作, 得到整个 H 矩阵, 其中 m = B/L, 要求 m+1 是素数, 这个操作等效于计算每个 子矩阵 的第 ρ 列第 ψ 个 “1” 元素的行坐标 剩余类数对阵列 的存储形式为 阵列, 其特征在于 和 结构形式如 (I) 数对阵列 表示, 和 (I’ )式: 表达式 (I) 中每一列剩余类数对的数量是不等的, 由各个子矩阵 的 列重量 v0, v1, ..., vk-1 确定 ; 表达式 (I) 中每一行剩余类数对的数量是相等的, 均为行 重量 u ; 阵列 的尺寸为 m×k, 阵列 中剩余类数对的总数为 由于 k > u, 所 以阵列 是稀疏的, 阵列 中每一个位置的元素为一个整数对 (rθ,δqθδ), 其中 (rθ,δqθ, 1, ..., vδ-1, γ = 0, 1, ..., u-1} 表示阵列 中的一 γqψ, γ)|ψ = 0, δ) ∈ {Φ} ∪ {(rψ, 个元素, (rψ, Φ 是空集 ; 表达式 (I’ ) 中的 是阵列 的存储结构 ; 构 γqψ, γ) 是剩余类数对, 造剩余类数对阵列 需要设计剩余类数对中的第一个参数 rθ, 设计 rθ, γ = rψ, γ, γ = rψ, γ 的方法是 : 对于 m = B/L 且满足 m+1 是素数, 基于有限域 GF(m+1) 上的有限循环乘群至少有 u 个生成元 g0, g1, ..., gu-1, 利用 u 生成元的 1, 2, ..., m 次幂, 生成 m×u 个 rθ, γ = rψ, γ 元 素, 计算表达式如 (II) 式 : θ+1 rθ, -1](mod(m+1)) (II) γ = rψ, γ = [(gγ) 构造剩余类数对阵列 需要设计剩余类数对中的第二个参数 qθ, 可以利用式 γ = qψ, γ, (II)rθ, qθ, γ = rψ, γ 来设计 qθ, γ = qψ, γ, γ = qψ, γ 的计算方法如 (III) 式 : 2 根据剩余类数对阵列 能够计算 Hd 矩阵中每一个 “1” 元素所在位置的行坐标, 设 Hd 矩 阵的第 δ(δ = 0, 1, ..., k-1) 个子矩阵 的第 ρ(ρ = 0, 1, ..., L-1) 列第 ψ(ψ = 0, 1, ..., vδ-1) 个 “1” 元素的行坐标的计算表达式为 (IV) 式 : 最后, 利用上述构成的 Hd 矩阵, 即可得到系统形式 H 矩阵 H = [Hd Hp], 其中 Hp 矩阵具 有确定的双对角线结构。2: 一种 IRA-LDPC 码的编码器, 其特征在于, 在包括 CPLD 和 FPGA 在内的可编程逻辑器 件环境下的编码器硬件电路包括 : 编码使能信号生成模块、 校验位选择信号发生器模块、 校 验位计算与存储模块、 编码数据输出模块、 主时钟输入端口、 信息位数据串行输入端口、 R/W 控制信号输入端口和编码数据串行输出端口 ; 编码使能信号生成模块 ECEN 用于将阵列 中每个数对 (rθ, δqθ, δ) 的第一个元素 rθ, δ 值, 离线转换成 m×k 个二进制值, 将这 m×k 个使能信号分成 k 个分组, 每个分组 m 位使能 信号并行输出至校验位选择信号发生器子模块和校验位计算与存储子模块, 为它们提供使 能控制信号 E ; θ 校验位选择信号发生器模块由 m 个并行的校验位选择信号发生器子模块 PCθ 构成, = 0, 1, ..., m-1 ; 校验位选择信号发生器子模块 PCθ 用于计算出 qθ,γ 元素的值, 并由 qθ, γ 元素的值确定 位的选择信号 ch 输出, 选通校验位计算与存储子模块 PSθ 的 L 个 1 的计算与储存 ; 位寄存器阵列中的某一个寄存器参与 校 验 位 计 算 与 存 储 模 块 由 m 个 并 行 的 校 验 位 计 算 与 存 储 子 模 块 PSθ 构 成, θ= 0, 1, ..., m-1 ; m 个 PSθ 中 的 L 个 1 位 寄 存 器 阵 列 用 来 完 成 B 位 校 验 位 的 中 间 结 果 的计算与储存 ; m 个 PSθ 向编码数据输出模块输出 yθ ~ yθ+(L-1)m, θ = 0, 1, ..., m-1 ; 编 码 数 据 输 出 模 块 DATA-OUT 根 据 m 个 子 模 块 PSθ 传 来 的 完成校验位的迭代累加计算, 即 p0 = y0, p1 = p0+y1, p2 = p1+y2, ..., pB-1 = pB-2+yB-1, 并由编码数据串行输出端口 d-out 输出编码码字 ; 一个主时钟周期输入端口 CLK, 产生两个分频时钟, L 分频时钟 CLK1 和 m 分频时钟 CLK2 ; 一个 1 比特的信息位数据串行输入端口 d-in, 每个 CLK 周期输入一个信息位 ; 一个 1 比特的 R/W 控制信号输入端口, 每个 CLK 周期产生一个 R/W 信号, 有信息序列输 入时, 设置 R/W = 0 ; 无信息序列输入时, 设置 R/W = 1 ; 一个 1 比特的编码数据串行输出端口 d-out, 每个 CLK 周期输出一个编码位。3: 根据权利要求 2 所述的 IRA-LDPC 码的编码器, 其特征在于, 所述编码使能信号生成 模块 ECEN 包括一个反相器, 一个模 k 自加器 self-k, 一个 ROM 存储器, 一个 R/W 控制信号 输入端口, 一个 CLK1 时钟输入端口, 一个 m 位的并行输出端口 ; 反相器将输入的 R/W 控制 信号取反后作为 self-k 的使能端 en 输入 ; 使能端 en 为 0, self-k 不工作, 使能端 en 为 1, self-k 内的 位寄存器的值每 CLK1 周期自增 1, 作为 ROM 存储器的地址索引 adrs ; 3 ROM 存储器的尺寸为 k×m, 用于存储 k×m 阵列 中数对元素的状态, 存储规则是 : 如果数对 元素 (rθ,δqθ,δ) 是空集 Φ, ROM 中相应位置存 0, 如果 (rθ,δqθ,δ) 是剩余类数对, 则相应 位置存 1, 根据输入的地址索引 adrs, ROM 存储器并行输出 m 个使能信号 E, 作为校验位选择 信号发生器子模块和校验位计算与存储子模块的使能信号。4: 根据权利要求 2 或 3 所述的 IRA-LDPC 码的编码器, 其特征在于, 所述校验位选择信 号发生器子模块 PCθ(θ = 0, 1, ..., m-1) 包括两个 modL 的自加器 self-L 和 chos-L、 一个 寄存器 sum 和一个 modL 加法器 adder-L, 五个输入端口和一个校验位选择信号输出端口 ; 五个输入端口分别是一个 1 比特的使能信号 E 输入端口和一个 1 比特的 R/W 读写控制信号 输入端口以及三个时钟输入端口, CLK, CLK1 和 CLK2 ; 校验位选择信号输出端口为 并行的输出端口 ; self-L 中有一个设有初值的 器 adder-L 的 (modL) ; 寄存器 sum 是一个设有初值的 个连接到加法器 adder-L 的 位寄存器 ; sum 有一个使能 E 输入端和一个时 位的并行输入端口, 以及一 位寄存器设初值为 位的并行输出端口, sum 的 钟信号 CLK1 输入端, 有一个连接到加法器 adder-L 的 位寄存器, 该寄存器具有自加 1 功能和 modL 计 位寄存器的初值设为 [1+θ+3] 算功能 ; self-L 有一个使能信号 E 输入端口、 一个时钟输入端口 CLK1 和一个连接到加法 位的并行输出端口, self-L 中 位 [u+(θ+3)(θ+2)/2](modL) ; 当使能信号 E = 0 时, sum 不工作 ; 当 E = 1, CLK1 工作在边沿 时, sum 将寄存器中的值输出到 adder-L, 并从 adder-L 的输出端接收新的值 ; 当 CLK1 不工 作在边沿时, sum 寄存器中的值保持不变 ; 加法器 adder-L 是无进位的、 具有 modL 运算功能的、 两组 自加器 chos-L 包含一个设有初值的 (θ+2)/2](modL) ; 有 位并行输入端口和 位并行输入的二进制 加法器 ; adder-L 有一个使能控制 E 输入端口和一个时钟信号 CLK1 输入端口 ; 位寄存器, 具有自加 1 功能和 modL 计算功 位寄存器设初值为 [u+(θ+3) 位并行输出端口, 两个输入控制信 能, modL 运算主要完成自加到 L 回 0 的任务, chos-L 的 号即使能控制信号 E 和读写控制信号 R/W, 三个时钟信号输入端 CLK、 CLK1 和 CLK2。5: 根据权利要求 2 或 3 所述的 IRA-LDPC 码的编码器, 其特征在于, 所述校验位计算 与存储子模块 PSθ(θ = 0, 1, ..., m-1) 包括一个具有 L 个 1 位寄存器的阵列和一个两输 入异或门 ; 5 种类型的输入端口 : 一个 1 位的使能信号 E 输入端口、 一个 1 位的 R/W 控制 信号输入端口、 一个时钟信号 CLK 输入端口、 一个 chos-L 输出的 位的校验位选择信号输入端口和 一个 1 位的信息位数据串行输入端口 ; 一个 1 位的校验位数据串行输出端口 ; 其作用是在 位选择信号 ch 的控制下, m 个 PSθ 子模块完成 B 个校验位中间结果 值的计算与存储。6: 根据权利要求 4 所述的 IRA-LDPC 码的编码器, 其特征在于, 所述校验位计算与存 储子模块 PSθ(θ = 0, 1, ..., m-1) 包括一个具有 L 个 1 位寄存器的阵列和一个两输入 异或门 ; 5 种类型的输入端口 : 一个 1 位的使能信号 E 输入端口、 一个 1 位的 R/W 控制信 号输入端口、 一个时钟信号 CLK 输入端口、 一个 4 位的校验位选择信号输入端口和 一个 1 位的信息位数据串行输入端口 ; 一个 1 位的校验位数据串行输出端口 ; 其作用是在 chos-L 输出的 位选择信号 ch 的控制下, m 个 PSθ 子模块完成 B 个校验位中间结果 值的计算与存储。7: 根据权利要求 2 或 3 所述的 IRA-LDPC 码的编码器, 其特征在于, 所述编码数据输 出模块 DATA-OUT 包括一个具有 m+1 个输入端的多路数据选择器 MUL、 一个模 m+1 的自加器 self-(m+1)、 一个异或门和一个 D 触发器 ; 有 m+3 个输入端口 : 一个 1 比特的 R/W 控制信号 输入端口、 一个 CLK 信号输入端口、 一个 1 比特的信息位数据输入端口 d-in 和 m 个来自 PSθ 的并行数据输入端口 ; 一个 1 比特的编码数据串行输出端口 d-out。8: 根据权利要求 4 所述的 IRA-LDPC 码的编码器, 其特征在于, 所述编码数据输出 模块 DATA-OUT 包括一个具有 m+1 个输入端的多路数据选择器 MUL、 一个模 m+1 的自加器 self-(m+1)、 一个异或门和一个 D 触发器 ; 有 m+3 个输入端口 : 一个 1 比特的 R/W 控制信号 输入端口、 一个 CLK 信号输入端口、 一个 1 比特的信息位数据输入端口 d-in 和 m 个来自 PSθ 的并行数据输入端口 ; 一个 1 比特的编码数据串行输出端口 d-out。9: 根据权利要求 5 所述的 IRA-LDPC 码的编码器, 其特征在于, 所述编码数据输出 模块 DATA-OUT 包括一个具有 m+1 个输入端的多路数据选择器 MUL、 一个模 m+1 的自加器 self-(m+1)、 一个异或门和一个 D 触发器 ; 有 m+3 个输入端口 : 一个 1 比特的 R/W 控制信号 输入端口、 一个 CLK 信号输入端口、 一个 1 比特的信息位数据输入端口 d-in 和 m 个来自 PSθ 的并行数据输入端口 ; 一个 1 比特的编码数据串行输出端口 d-out。

说明书


一种 IRA-LDPC 码的构造方法及其编码器

    【技术领域】
     本发明属于无线通信信道编码技术领域, 具体涉及一种高性能 IRA-LDPC 码的代 数构造方法及相应的编码器结构。 本发明可作为移动通信、 固定无线通信、 卫星通信和空间 通信的长期演进 (LTE) 工业标准中物理层前向纠错码的最佳选择方案之一。背景技术
     信道纠错码技术主要用于解决传输可靠性问题, 本发明所涉及的 IRA-LDPC 码是 一种性能接近香农限, 并能高速运行的信道纠错编码技术。
     LDPC 码本质上是一种线性分组码, 它是由稀疏奇偶校验矩阵 H 来定义的, LDPC 码 的码字序列 与 H 矩阵互为零空间, 即 这个方程也称为校验方程, 由此可知, 对 LDPC 码的结构设计主要是对稀疏奇偶校验矩阵 H 的结构设计。LDPC 码是利用置信传播 (Belief Propagation) 迭代解码算法进行解码的, BP 解码算法是在 H 矩阵确定的 Tanner 图上传递 置信信息来进行迭代计算的。初期, LDPC 码没有特定的编码方法, 通常情况下, 特别是前期 在性能仿真实验过程中, 是将 LDPC 码的 H 矩阵经行列变换转换成生成矩阵, 然后用生成矩 阵进行编码。从 H 矩阵到生成矩阵的变换计算量大约为码长的平方, 并且虽然 H 矩阵是一 个稀疏矩阵 ( 即矩阵中的元素大部分是 ‘0’ , 为 ‘1’ 的元素数量非常少 ), 但经过行列变换 得到的生成矩阵却不一定是稀疏矩阵, 因此利用生成矩阵编码效率极低。为了降低编码器 的复杂度, 在设计实用的 LDPC 码时, 都是将 H 矩阵设计成有利于编码的形式, 这样可以不通 过生成矩阵, 而是直接利用 H 矩阵进行编码。目前在工业标准中采纳的 LDPC 码有下列两种 结构特征 : 一种是 IRA-LDPC 码 ; 另一种是 QC-LDPC 码。它们都可以直接利用 H 矩阵进行编 码, 而不用求出对应的生成矩阵, 并且可以做到编码算法为码长的线性复杂度。
     2001 年, Hui Jin 在其博士论文 《Analysis and design of turbo-like codes》 中提出不规则重复积累 (Irregular Repeat-Accumulate, ) 码, 简称 IRA 码。他从理论上 证明了在删余信道上, IRA 码是迄今为止唯一的香农信道容量可达码类, 而且在高斯白噪声 (AWGN) 信道上, IRA 码也显示出逼近香农容量限的优良性能。 IRA 码的编码器可以看作由一 个低密度生成 (LDGM) 矩阵和一个重复累加器级联而成, 由编码器的结构可以写出对应的 H d p p 矩阵。这个 H 矩阵的系统形式为 H = [H H ], 其中 H 矩阵具有确定的双对角线结构 :
     表达式 (1) 的 Hp 矩阵对应于 IRA 码编码器中的重复累加器 ; 而信息码位对应的 Hd 矩阵中 ‘1’ 元素的分布是不确定的, 对应于 IRA 码编码器中的低密度生成矩阵。因此, 设计 d 实用 IRA 码的主要任务就是设计 H 矩阵的结构。IRA 码可以看作 LDPC 码的一个子类, 本发
     明中把由双对角线 Hp 矩阵构成的 H 矩阵所定义的 IRA 码, 称为 IRA-LDPC 码。
     在应用方面, 2005 年, 欧洲卫星通信标准 《Digital Video Broadcasting(DVB) ; Second generation framing structure, channel coding and modulation systems for Broadcasting, Interactive Services, News Gathering and other broadband satellite applications》 ( 简称 DVB-S2 标准 ) 采纳了 IRA-LDPC 码作为前向纠错码的主要方案。标 准中没有给出 IRA-LDPC 码的 Hd 矩阵结构, 只给出了编码表和相应的编码算法, 而且标准中 没有介绍编码表是如何产生, 因此构造编码器时必须消耗大量的 ROM 空间来存储编码表中 的每一个数字。 发明内容
     为克服 DVB-S2 标准中采纳的 IRA-LDPC 码需要大量 ROM 空间来存储编码表的缺 点, 本发明提供了一种 IRA-LDPC 码的构造方法, 本发明解决了 IRA-LDPC 码 Hd 矩阵的存储 空间问题, 而且对应的编码器硬件复杂度更低, 运行速度更快, 仿真性能也略有优势, 能更 好的在无线通信的实际工程中得到应用。
     本发明提供的一种 IRA-LDPC 码的构造方法, 若所构造的 IRA-LDPC 码信息位长 d 度为 A、 校验位长度为 B, 所构造的 H 矩阵的尺寸为 B×A, 所述 Hd 矩阵设定的约束条件为 : ( 一 ) 信息位长度 A 和校验位长度 B 存在大于 1 的公因数 L ; ( 二 )Hd 矩阵被分解为 k 个子 矩阵 每个子矩阵的尺寸是 B×L, 其中 k = A/L ; ( 三 )Hd 矩阵的行重 的第一列循环下移 m 位, 得到第二列, 作依次 ( 六 )Hd 矩阵采用其紧凑形式的剩 量只有一种, 用 u 表示 ; ( 四 )Hd 矩阵的列重量最多有 k 种, 最少是两种, 分别用 v0, v 1, ..., vk-1 表示 ; ( 五 ) 每个子矩阵 每个子矩阵 循环下移 m 位操作, 得到整个 Hd 矩阵, 其中 m = B/L, 要求 m+1 是素数, 这个操作等效于计算 的第 ρ 列第 ψ 个 “1” 元素的行坐标 余类数对阵列 表示, 剩余类数对阵列 的存储形式为 阵列, 其特征在于 和 结构形式如 (I) 和 (I’ )式:
     表达式 (I) 中每一列剩余类数对的数量是不等的, 由各个子矩阵的列重量 v0, v1, ..., vk-1 确定 ; 表达式 (I) 中每一行剩余类数对的数量是相等的, 均为行 重量 u ; 阵列 的尺寸为 m×k, 阵列 中剩余类数对的总数为 由于 k > u, 所以阵列 是稀疏的, 阵列 中每一个位置的元素为一个整数对 (rθ,δ qθ,δ), 其中 (rθ,δ qθ, 1, ..., vδ-1, γ = 0, 1, ..., u-1} 表示阵列 中的一 γ qψ, γ)|ψ = 0, δ) ∈ {Φ} ∪ {(rψ, 个元素, (rψ, Φ 是空集 ; 表达式 (I’ ) 中的 是阵列 的存储结构 ; γ qψ, γ) 是剩余类数对,
     构造剩余类数对阵列 需要设计剩余类数对中的第一个参数 rθ,γ = rψ,γ, 设计 rθ, 对于 m = B/L 且满足 m+1 是素数, 基于有限域 GF(m+1) 上的有限循 γ = rψ, γ 的方法是 : 环乘群至少有 u 个生成元 g0, g1, ..., gu-1, 利用 u 生成元的 1, 2, ..., m 次幂, 生成 m×u 个 rθ, 计算表达式如 (II) 式 : γ = rψ, γ 元素, θ+1
     rθ, -1](mod(m+1)) (II) γ = rψ, γ = [(gγ)
     构造剩余类数对阵列 需要设计剩余类数对中的第二个参数 qθ, 可以利 γ = qψ, γ, 用式 (II)rθ, qθ, γ = rψ, γ 来设计 qθ, γ = qψ, γ, γ = qψ, γ 的计算方法如 (III) 式 :
     根据剩余类数对阵列 能够计算 Hd 矩阵中每一个 “1” 元素所在位置的行坐标, 设 的第 ρ(ρ = 0, 1, ..., L-1) 列第 ψ(ψHd 矩阵的第 δ(δ = 0, 1, ..., k-1) 个子矩阵
     = 0, 1, ..., vδ-1) 个 “1” 元素的行坐标的计算表达式为 (IV) 式 : 最后, 利用上述构成的 Hd 矩阵, 即可得到系统形式 H 矩阵 H = [Hd Hp], 其中 Hp 矩 阵具有确定的双对角线结构。
     本发明提供一种 IRA-LDPC 码的编码器, 其特征在于, 在可编程逻辑器件 ( 包括 CPLD 和 FPGA) 环境下的编码器硬件电路结构设计, 包括 : 附图 2 的 IRA-LDPC 码编码器的总 体电路结构、 附图 3 的编码器使能信号生成模块 ECEN、 附图 4 的校验位选择信号发生器子 模块 PCθ、 附图 5 的校验位计算与储存子模块 PSθ 和附图 6 的编码数据输出模块 DATA-OUT、 主时钟输入端口、 信息位数据串行输入端口、 R/W 控制信号输入端口和编码数据串行输出端 口;
     编码使能信号生成模块 ECEN 用于将阵列 中每个数对 (rθ, δqθ, δ) 的第一个元素 rθ, 离线转换成 m×k 个二进制值, 将这 m×k 个使能信号分成 k 个分组, 每个分组 m 位 δ 值, 使能信号并行输出至校验位选择信号发生器子模块和校验位计算与存储子模块, 为它们提 供使能控制信号 E ;
     校验位选择信号发生器模块由 m 个并行的校验位选择信号发生器子模块 PCθ 构
     成, θ = 0, 1, ..., m-1 ; 校验位选择信号发生器子模块 PCθ 用于计算出 qθ,γ 元素的值, 并 由 qθ, γ 元素的值确定
     位的选择信号 ch 输出, 选通校验位计算与存储子模块 PSθ 的 的计算与储存 ;L 个 1 位寄存器阵列中的某一个寄存器参与校验位计算与存储模块由 m 个并行的校验位计算与存储子模块 PSθ 构成, θ = 0, 1, ..., m-1 ; m 个 PSθ 中的 L 个 1 位寄存器阵列用来完成 B 位校验位的中间结果 的计算与储存 ; m 个 PSθ 向编码数据输出模块输出
     yθ ~ yθ+(L-1)m, θ = 0, 1, ..., m-1 ; 编 码 数 据 输 出 模 块 DATA-OUT 根 据 m 个 子 模 块 PSθ 传 来 的完成校验位的迭代累加计算, 即 p0 = y0, p1 = p0+y1, p2 = p1+y2, ..., pB-1 = pB-2+yB-1, 并由编码数据串行输出端口 d-out 输出编码码字 ;
     一个主时钟周期输入端口 CLK, 产生两个分频时钟, L 分频时钟 CLK1 和 m 分频时钟 CLK2 ;
     一个 1 比特的信息位数据串行输入端口 d-in, 每个 CLK 周期输入一个信息位 ;
     一个 1 比特的 R/W 控制信号输入端口, 每个 CLK 周期产生一个 R/W 信号, 有信息序 列输入时, 设置 R/W = 0 ; 无信息序列输入时, 设置 R/W = 1 ;
     一个 1 比特的编码数据串行输出端口 d-out, 每个 CLK 周期输出一个编码位。
     本发明的主要目的是提供一种基于剩余类数对代数结构的 IRA-LDPC 码 Hd 矩阵的 构造方法, 及其相应的编码器硬件结构, 并将这种码称为基于剩余类数对的 IRA-LAPC 码。 与 DVB-S2 标准中使用的 IRA-LDPC 码 ( 需要存储整个编码表 ) 不一样的特征是, 由本发明 d 提供的方法构造出来的 IRA-LDPC 码其 H 矩阵中每个 ‘1’ 元素的位置坐标均可以由代数表 达式计算得到。本发明所设计的 IRA-LDPC 码与现有工业标准中的 LDPC 码 ( 包括 DVB-S2 标准中的 IRA-LDPC 码和 IEEE802.16e 标准中的不规则 QC-LDPC 码 ) 相比性能相当, 甚至更 好, 占用的存储器容量更少, 编码器的硬件实现复杂度更低, 所占用的芯片面积更小。 附图说明
     附图 1 为本发明方法的流程图 ;
     附图 2 为本发明设计的 IRA-LDPC 码编码器的总体电路结构示意图 ;
     附图 3 为本发明设计的 IRA-LDPC 码编码使能信号生成模块 ECEN ;
     附图 4 为本发明设计的 IRA-LDPC 码校验位选择信号发生器子模块 PCθ ;
     附图 5 为本发明设计的 IRA-LDPC 码校验位计算与储存子模块 PSθ ; 附图 6 为本发明设计的 IRA-LDPC 码编码数据输出模块 DATA-OUT。具体实施方式
     本发明的 IRA-LDPC 编码器的构造方法包括两部分 : 第一部分是构造 Hd 矩阵, 以及 d d p d 根据 H 完成 H = [H H ] 的构造 ; 第二部分是根据 H 矩阵的结构特征设计 IRA-LDPC 码的编 码器的电路结构。下面我们首先介绍本发明要用到的数学概念 ; 接着描述第一部分 Hd( 或 H) 矩阵的结构特征和构造方法 ; 然后描述第二部分编码器的基本工作原理、 构造方法、 电 路结构和工作过程 ; 最后给出一个实例。 d
     构造 H 矩阵时使用了剩余类和有限循环乘群等数学原理, 其基本概念描述如下 :剩余类 : 由同余概念可将全体整数加以分类, 把余数相同的归为一类。设 n 表示 模数, r 和 q 为二个变量, 0 ≤ r < n, q 为整数, 即由 f = qn+r 定义余数同为 r 的整数构成 一个集合 所有整数可划分为 n 个这样的集合, 也称为 n 个剩余类。显然, 任意整数必属于 n 个剩余类中的一个。
     定义 [ 剩余类数对 ] : 从表达式 f = qn+r 中提取两个数 r 和 q, 构成数偶对 (r q), 称为剩余类数对, 表示以模 n 划分剩余类, 在剩余类 中的第 q 个元素是 f。例如, 设模数为 n = 5, (r q) = (23) 表示剩余类 中的第 3 个元素为 f = 17 = 3×5+2, (r q) = (30) 表示剩余类 中的第 0 个元素为 f = 3 = 0×5+3。
     有限循环乘群 : 由一个单独元素的一切幂次所构成的群称为循环群, 该元素称为 循环群的生成元。若 GF(n) 有限域中除 0 外的所有元素都可以由域中的某个元素 g 的幂次 构成, 则称 GF(n) 域中除 0 外的元素构成一个有限循环乘群, g 称为这个有限循环乘群的生 成元。
     本发明申请书中所使用的符号规定如下 : 结构描述符号如码长、 信息位长度等用 d p 26 个英文字母表示, 下标、 上标和索引用希腊字母表示。H = [H H ] 表示 IRA-LDPC 码的稀 d 疏奇偶校验矩阵, 其中 H 表示本发明要构造的信息位所对应的稀疏奇偶校验矩阵, Hp 表示 校验位所对应的双对角线矩阵。 A 表示信息位长度或 Hd 的列数, B 表示校验位长度或 Hd 的行 数, N 表示码长, N = A+B, R 表示码率, R = A/N。δ = 0, 1, ..., k-1 表示 Hd 所分解的子矩阵 的数量索引, 表示 Hd 所分解的第 δ 个子矩阵, 即 的某个大于 1 的公因数, 也表示 的列数, ρ = 0, 1, ..., L-1 表示 L 表示 A 和 B 列数的索引。 是 Hd 的一种紧凑表示形式, 称为剩余类数对阵列, 表示阵列 的存储结构。 k = A/L 表示 Hd 所分解 的子矩阵的数量或 的列数, δ = 0, 1, ..., k-1 亦表示 列数的索引 ; m = B/L 表示 的行数 或表示被并行执行的使能信号的数量, θ = 0, 1, ..., m-1 表示 的行索引或并行输出 m 个 使能信号的索引。 量 ), 其中 表示校验位的值,d表示信息序列 ( 或矢量 ), 其中 dη 表示信息位的值, η 表示校验位序列 ( 或矢 表示d= 0, 1, ..., A-1 表示信息位索引或 Hd 的列索引 ;表示校验位索引或 Hd 的行索引 ;码位序列 ( 或码矢量 )。 u 表示 H 的行重量, γ = 0, 1, ..., u-1 表示 H 每一行中 “1” 元素的数 量索引或 的每一行中剩余类数对的数量索引 ; vδ 表示 示 的列重量, ψ = 0, 1, ..., vδ-1 表 的每一列中 “1” 元素的数量索引, vmin 和 vmax 分别表示 Hd 的最小列重量和最大列重量。表示 中第 δ 个列矢量, T 表示阵列、 矢量或矩阵的转置。 (rθ, δqθ, δ) 表示 中第 θ 行第 δ 列的元素, (rψ, Φ 表示不包含剩余类数对的 γqψ, γ) 表示阵列 中的某一个剩余类数对, 空集。 令 表示不大于 x 的最大整数 ) 表示 Hd 的第 η 列位于的第 κ 个子矩阵 的第 σ 列。(rψ, (rψ, γqψ, γ), κqψ, 中, 令 σ = η(modL) 表示 Hd 的第 η 列位于子矩阵κ), (rψ, g0, g1, ..., gγ, ..., gu-1 表示 δqψ, δ) 和 (rθ, γqθ, γ) 均表示 中的同一个剩余类数对。 表示每个生成基于有限域 GF(m+1) 的循环乘群的 u 个生成元 ; 表示以 1, 2, 3, ..., m 为幂次由 u 个生成元所生成的 m×u 个元素。 元的 m+1 次幂是它本身。eψ,δ 表示子矩阵 示由剩余类数对 (rψ,δqψ,δ) 计算出来的第 δ 个子矩阵10中第 1 列第 ψ 个 “1” 元素的行坐标, 表 第 ρ 列第 ψ 个 “1” 元素的行102437857 A CN 102437865说明书6/15 页坐标。 表示 Hd 中第 η 列 ( 位于第 κ 个子矩阵 表示 Hd 中第 行第 η 列的元素值 ; 列的元素值中)第ψ个 “1” 元素的行坐标。 表示 Hd 中第 行第 η与第 η 个输入信息位 dη 的乘积 ; 表示 Hd 中第 行的所有乘积项的和, 即本发明第一部分所构造的 Hd 矩阵结构特点如下 : Hd 矩阵的维数为 B×A, 信息位长 度 A 和校验位长度 B 存在大于 1 的公因数 L( 若不存在, 则不属于本发明考虑的范围之内 )。
     即 Hd 矩阵可分解为 k(k = A/L) 个子矩阵,d d每个子矩阵的维数是 B×L。本发明规定 H 矩阵是等行重量的, 行重量为 u。H 矩阵最多有 k 个不同 的列重量, 最少有 2 个不同的列重量, 设 vδ(δ = 0, 1, ..., k-1) 表示 Hd 的列重量, Hd 矩阵 最大列重量为 3 < vmax ≤ m。vδ 也表示 的最小列重量为 vmin = 3, 的个数。对 到的, 则 矩阵第一列中 ‘1’ 元素 矩阵, 除了第一列外, 其余各列都是将前一列循环下移 m 次得 矩阵第一列矩阵中各列的重量相同 ( 即每列中 ‘1’ 元素的个数相同 )。因此只用设计每个矩阵第一列 ‘1’ 元素所在行坐标, 就能得到整个 Hd 矩阵。本发明规定每个 的紧凑表示形式, 称为剩余类数对阵列
     ‘1’ 元素的行坐标用一个剩余类数对 (rψ, 本发明构造了下列 Hd 矩阵 γqψ, γ) 来计算。为此,其中 (rθ,δqθ,δ) ∈ {Φ} ∪ {(rψ,γqψ,γ)|ψ = 0, 1, ..., vδ-1, γ = 0, 1, ..., u-1}。 的尺寸是 m×k 维, 规定 m+1 必须是素数。 阵列中剩余类数对的数量可以推导如
     “1” 元素的总数为 下: Hd 矩阵中 素的总数为消去 L 得到每个子矩阵中第一列 “1” 元这也是 中剩余类数对的总数。显然, 中每一列剩余类数对的数 的列重量 v0, v1, ..., vδ, ..., vk-1 确定 ;d量不一定相等, 由各个子矩阵中每一行剩余类数对的数量是相等的, 均为 H 矩阵的行重量 u, 通常 k > u, 所以阵列 是 稀疏的。 需要强调的是表达式 (2) 的阵列 不是数学意义上的矩阵, 它是本专利所发明的专 d 门用来表示 H 矩阵的一种紧凑的阵列结构。
     阵列 还可以写成更紧凑的形式其中表示剩余类数对列矢量这里 Rθ,δ ∈ {(rψδqψ,δ), Φ}。 中剩余类数 中第一列的第 ψ(ψ = 0, 1, ..., vδ-1)对 (rψ, 子矩阵 δqψ, δ) 的数量由列重量 vδ 确定, 的行坐标的计算表达式为 :11个 1 元素的行坐标, 也是 中第 ψ(ψ = 0, 1, ..., vδ-1) 个剩余类数对所决定的 ‘1’ 元素102437857 A CN 102437865
     说明书7/15 页eψ, (3) δ = (rψ, δ+m×qψ, δ)(mod B) 我们将剩余类数对的表示方法扩展到整个 Hd 矩阵中的每个 “1” 元素, 也就是计算 的第 ρ(ρ = 0, 1, ..., L-1) 列第 ψ(ψHd 矩阵的第 δ(δ = 0, 1, ..., k-1) 个子矩阵
     = 0, 1, ..., vδ-1) 个 “1” 元素的行索引 ( 行坐标 ), 表达式 (3) 扩展如下 : Hd 矩阵中每个 “1” 元素的位置坐标还有另一种表示方法。由于d等效于δ = 0, 1, ..., k-1, H 矩阵中第 η 列等效于第 κ 个子矩阵
     的第 σ 列中, 那么 Hd 矩阵第 η 列第 ψ 个 “1” 元素的行坐标值由剩余类数对 (rψ, κqψ, κ) 计算如下 : 本发明第一部分 Hd( 或 H) 矩阵的构造方法主要包括 阵列中剩余类数对 (rψ, γqψ, 剩余类数对阵列 和 的排列结构设计、 根据剩余类数对 γ 和 qψ, γ 的设计、 γ) 每个元素 rψ,
     ‘1’ 元素位置坐标 eψ, 阵列 和 计算 Hd 矩阵中 δ 或
     如图 1 所示, 具体包括以下步骤 :第 1 步, 设计剩余类数对中的第一个元素 rθ,γ(rψ,γ), θ = 0, 1, ..., m-1, γ= 0, 1, ..., u-1。rθ, γ 以剩余类数对第一个元素的形式分布在 m×k 的 阵列中。在 阵列中 一共有 m×u 个 rθ, 其中共有 m 个不同的 rθ, rθ, 1, 2, ..., m-1}。同一行的 γ, γ 值, γ ∈ {0,rθ,γ 值是相同的, 或者说一共有 m 组, 每一组 u 个值是相同的, 相同的 rθ,γ 值放在同一行 中。本发明采用由 u 个生成元 g0, g1, ..., gu-1 经乘法群结构计算产生 m×u 个 rθ, γ 值。设 rθ, γ 的 m×u 个值用 表示, 以 u 个生成元 g0, g1, ..., gu-1 的 m 次幂来计算 rθ, γ 的表 达式定义为 : θ+1
     rθ, -1](mod(m+1)) (6) γ = rψ, γ = [(gγ)
     将 (6) 式计算出来的 m×u 个 rθ, γ 值按 θ 行索引 γ 列索引的方式排列得到如下 的 [rθ, γ]m×u :
     在 [rθ,γ]m×u 中, 元素值的特点是 : 对大于 m 的值取 mod(m+1), 一共有 m 个不同元 素, 每个元素从序列 0, 1, ..., m-1 中取值, 每个元素值出现 u 次。
     第 2 步, 设计剩余类数对中的第二个元素 qθ, γ。若剩余类数对中的 rθ, γ 值按上述 (7) 的方式计算和排列, 则该剩余类数对中的 m×u 个 qθ, γ 的值由下列表达式计算得到 :
     (7) 式中取出一个 rθ, 就能由 (8) 式计算出一个 qθ, γ 值, γ 值。
     第 3 步, 设计剩余类数对阵列 的存储结构 为了便于描述, 以 Hd 矩阵中存在两 种列重量为例, 最小列重量 vmin = 3, 最大列重量 vmax 可以是大于 3 不大于 m 的任意正整数, 即 3 < vmax ≤ m。设阵列 中每列有 vmin = 3 个剩余类数对的列数为 j 列 ( 或 Hd 矩阵中每 列有 vmin = 3 个 “1” 元素的列为 j×L 列 ), 阵列 中每列有 vmax 个剩余类数对的列数为 k-j
     列 ( 或 Hd 矩阵中每列有 vmax 个 “1” 元素的列为 (k-j)×L 列 )。 的结构如下 :
     式 (9) 的剩余类数对阵列的存储结构 具体描述如下 : 首先, 是计算机软件搜索 最优 的存储结构, 在 阵列中按列放置的所有剩余类数对在 中按行放置, 如 阵列中的 第一列 ( 包括剩余类数对和空集 Φ) 在 中为第一行, 并且是连续放置, 每个剩余类数对之 间没有空格或空集元素 Φ。其次, 式 (7) 中计算出的 rθ, γ 值与式 (9) 中剩余类数对的位置 关系是 : 在 (7) 中按列取值, 每次取一列 m 个元素, 在 (9) 的 阵列中按行顺序放置在剩余类 数对的第一个位置上。最后, 本发明在搜索得到 后, 也可将其转换为 (2) 式的剩余类数对 阵列 的定义结构形式, 其转化方式如下 : 取 的第一行的 vmin( 或 vmax) 个剩余类数对放到 阵列的第一列中, 每个剩余类数对在 阵列中各列的行索引由剩余类数对的第一个元素的 值确定, 在 阵列的各列中, 没有剩余类数对的位置上放置空集元素 Φ。
     第 4 步, 根据阵列 可以确定每个子矩阵第一列的每个 ‘1’ 元素的行坐标, 具体 第一操作如下 : 取 第一行的 vmin( 或 vmax) 个剩余类数对, 利用 (3) 式计算第一个子矩阵 标。对每个子矩阵d列的每个 ‘1’ 元素的行坐标 ; 用同样的方法, 计算每个子矩阵第一列的每个 ‘1’ 元素的行坐 从第一列开始到第 L 列依次作循环下移 m 位操作, 就 能得到整个 H 矩阵。也可以直接利用 (4) 或 (5) 式计算 Hd 矩阵中每一列的每个 ‘1’ 元素 的行坐标。
     第 5 步, 利用上述构成的 Hd 矩阵, 即可得到系统形式 H 矩阵 H = [Hd Hp], 其中 Hp 矩 阵具有确定的双对角线结构。
     综上所述, 只用存储 A、 B、 L、 u、 vδ(δ = 0, 1, ..., k-1)、 gγ(γ = 0, 1, ..., u-1) d 这几个结构参数就能表示 H 矩阵, 存储这些结构参数需要的空间远少于 DVB-S2 标准中存 储一个编码表所需要的空间。
     本发明第二部分 IRA-LDPC 码编码器的工作原理描述如下 : LDPC 码编码的目的 是由信息序列 计算出校验序列 从而得到码字序列 本发明提供的基于剩余类数对的 IRA-LDPC 码的 编码算法基本原理与许多文献中发表的 IRA-LDPC 码编码算法基本原理是相似的, 区别在 d 于 H 矩阵的结构设计不同, 导致了不同的编码器硬件电路的设计差别。根据 将奇 偶校验矩阵 H 和码字矢量 分解为信息位对应的部分和校验位对应的部分, 即:
     给定二进制信息矢量由于 Hd 和 Hp 都是定义在二进制有限域GF(2) 上的矩阵, 在二进制运算规则下, 根据 (1) 和 (10) 式, 可得
     则 IRA-LDPC 码编码算法的一般递归计算表达式如下 :
     由于 (1) 式的 Hp 矩阵设计成了双对角线形式, 在求解 (11) 式时, 不需要对 Hp 矩 阵求逆, 而是根据 (12) 式, 先求得第一行对应的校验位 p0, 然后采用回代和递推的方式求得 p1, p2, ..., pB-1。从 (12) 的递归表达式可以看出, 第一, IRA-LDPC 码的编码算法是串行算 法; 第二, 主要的计算任务是完成求和运算 决定了实现d构造 Hd 矩阵的方法不同, 的的硬件电路的不同, 编码器的硬件实现复杂度也不同, 本发明采用剩余类数对构造 H 矩阵给出了到目前为止最简单的计算硬件电路结构。
     本发明第二部分 IRA-LDPC 码编码器的构造方法描述如下。编码器的主要功能 是: 拥有 B = m×L 个寄存器组形成的阵列, 对 Hd 矩阵每一行 编码器能计 算 的值, 并存入到 B 个寄存器阵列中。在硬件执行过程中, 我们将 再完成递归求和 p0 = y0, 控 在 B 个寄d(12) 式分解成两个过程, 先完成累加求和p1 = p0+y1, ..., pB-1 = pB-2+yB-1。累加计算过程由输入信息序列 ψ = 0, 1, ..., vδ-1 ; 这 vδ 个 乘 法 存器阵列中的位置由行坐标制, 每输入一个信息位 dη, 就计算这个 dη 所对应的 H 矩阵第 η 列的 vδ 个二进制乘法 确定 ; 对于 Hd 矩阵的每一行而言, 每计算一个就累加一次, 直到所有信息位输入完后, 每一行所对应的 B 个寄存器阵 列中的每一个寄存器均完成了 u 个乘积项 sψ, 即 γ 的求和,
     编码器硬件执行具体操作步骤如下 : 1) 初始化, 令 2) 依次读入信息位 dη(η = 0, 1, ..., A-1), 用表达式 (5) 计算 Hd 矩阵第 η 列 ( 其中 行坐标所对应的 vδ 个 的操作。当 dη = 1 时, 将B ), 作为 B = m×L 个寄存器阵列的指针, 由中 ‘1’元素所在行坐标, 所得到的行坐标的值分别记为 寄存器中均保存 dη 的值, 用来完成乘积项 个寄存器中以寻址的 vδ 个位置中的值取反 ; 当 dη = 0 时, 这 vδ 个位置中的值不变。当 dη(η = 0, 1, ..., A-1) 信息位输入完成后, B 个寄存器的每一个就完成了乘 积项的累加求和
     操作。3) 计算校验位 p0 = y0, p1 = p0+y1, p2 = p1+y2, ..., pB-1 = pB-2+yB-1, 编码后的输出 本发明第二部分的基于可编程逻辑器件 ( 包括 CPLD 和 FPGA) 的 IRA-LDPC 码编码14码字为
     102437857 A CN 102437865说明书10/15 页器硬件电路结构和工作过程描述如下。IRA-LDPC 码编码器的总体结构如图 2 所示, 包括如 下四种功能处理模块和四个端口 :
     一个编码使能信号生成模块, 用 ECEN 表示 ;
     校验位选择信号发生器模块由 m 个并行的校验位选择信号发生器子模块构成, 每 个子模块由 PCθ(θ = 0, 1, ..., m-1) 表示 ;
     校验位计算与存储模块由 m 个并行的校验位计算与存储子模块构成, 每个子模块 由 PSθ(θ = 0, 1, ..., m-1) 表示 ;
     一个编码数据输出模块, 用 DATA-OUT 表示 ;
     主时钟信号输入端口 CLK, 产生两个分频时钟信号, 即 L 分频时钟信号输入端口 CLK1 和 m 分频时钟信号输入端口 CLK2 ;
     一个 1 比特的信息位数据串行输入端口, 用 d-in 表示, 每个 CLK 周期输入一个信 息位 ;
     一个 1 比特的 R/W 控制信号输入端口, 每个 CLK 周期产生一个 R/W 信号。有信息 序列输入时, 设置 R/W = 0 ; 无信息序列输入时, 设置 R/W = 1 ;
     一个 1 比特的编码数据串行输出端口, 用 d-out 表示, 每个 CLK 周期输出一个编码 位。 在图 2 的编码器总体结构中, 各模块与端口之间的相互关系和工作过程描述如 下: 信息序列按顺序从 d-in 端口输入, 每个 CLK 周期输入一位信息位 dη, η = 0, 1, ..., A-1。编码使能信号生成模块 ECEN 事先将阵列 中每个数对 (rθ, δqθ, δ) 的第一个元素 rθ, 离线转换成 m×k 个二进制值, 存于尺寸为 m×k 的 ROM 中, 完成表达式 (2) 中所有 δ 值, rθ,δ 值的硬件实现。ECEN 将存于 ROM 中的 m×k 个二进制值作为其它功能模块的使能信 号使用, 并将这 m×k 个使能信号分成 k 个分组, 每个分组 m 位并行输出。当 R/W = 0 时, m 位使能信号并行输出, 为 m 个并行的校验位选择信号发生器子模块 PCθ(θ = 0, 1, ..., m-1) 和 m 个并行的校验位计算与存储子模块 PSθ(θ = 0, 1, ..., m-1) 提供使能控制信号 E。当 E = 1 时, PCθ 和 PSθ 工作 ; 当 E = 0 时, PCθ 和 PSθ 不工作。当输入信号为 dη 时,
     如果 dη 对应于 Hd 矩阵第 δ 个子矩阵 坐标值 个过程中, PCθ 输出的第 ρ 列, 那么在编码使能控制信号 E 作用下, 中第 ρ 列的 vδ 个 ‘1’ 元素所在的行 的累加求和操作。在这m 个并行的 PCθ 同时计算 Hd 矩阵第 δ 个子矩阵( 其中 δ = 0, 1, ..., k-1, ρ = 0, 1, ..., L-1, 见 (4) 式 ), 以这些 表示不小于 x 的最小整数 ) 位地址选择信号, m 个并行的 位地址信号去索引在 m 个 PSθ 所行坐标值作为地址, 选通 m 个并行的 PSθ 中的 vδ 个寄存器进行 PSθ 在使能信号 E = 1、 R/W = 0 作用下, 用 vδ 个联合形成的 B = m×L 个寄存器阵列中的 vδ 个寄存器, 对这 vδ 个位置的值进行更新, 即完 成编码步骤 2) 中 的计算。同时信息位 dη 也被输入到编码数据输出模块 DATA-OUT, 该模块在下一个信息位 dη+1 输入时将 dη 从编码数据串行输出端 口 ch 输出, 每个 CLK 周期输出一个比特数据, 从 A 个比特信息位输入到 A 个比特信息位输 出, 一共需要 A+1 个 CLK 周期。与此同时, 在 A+1 个 CLK 周期内, m 个并行的 PSθ 也完成了的运算, 使 m 个并行的 PSθ 中 B = m×L 个寄存器的最终存 储内容是 出B个 在 A 个信息位输入完成后, 使 R/W = 1, m 个并行的 PSθ 依次输 计算值到 DATA-OUT。 DATA-OUT 完成编码步骤 3) 里校验位的累加p1 = p0+y1, p2 = p1+y2, ..., pB-1 = pB-2+yB-1, 并将计算出的校验位 p0, p1, ..., 计算 p0 = y0, pB-1 从编码数据串行输出端口 d-out 输出。在信息序列输入完成后的第 A+2 个 CLK 周期, 输出第一个校验位比特, 一共需要 B 个 CLK 周期完成校验位的输出。在输出端口, 首先完成 A 个比特信息位输出, 再执行 B 个比特校验位的输出, 从第一个信息位输入到最后一个校验 位输出, 一共需要 A+B+1 = N+1 个 CLK 周期。
     编码使能信号生成模块 ECEN 的结构如图 3 所示, 包括一个模 k 自加器 ( 用具有自 加 1 功能的寄存器构成, 每个 CLK 周期自加 1, 加到 k 时, 做 mod k 运算返回到 0 值, 用 self-k 表示 ), 一个尺寸为 k×m 位的 ROM, 一个反相器, 一个 1 位的 R/W 信号输入端口, 一个分组 (m 比特 ) 的并行输出端口, 用于并行输出 m 个使能信号 E。 ROM 共有 k 个分组, 每个分组的数据 长度为 m 比特, ROM 由 k×m 位单元的存储阵列构成, 它的每一位存储的值可由 m×k 阵列 确定。规定如下 :中的数对 (rθ, 则由 0 元素取代 ; 如果是剩余类数对 δqθ, δ) 如果是空集, (rψ,γqψ,γ), 则由 1 元素取代。对得到的 m×k 位的 0-1 矩阵做转置, 再做镜像 ( 在 ROM 中 存储时, 要求高位在左边 ), 将得到的 k×m 位 0-1 矩阵中的元素依次输入 ROM 中, 即完成了 ROM 中存储内容的设计。由于 阵列中每一列有 vδ(δ = 0, 1, ..., k-1) 个剩余类数对, 因 此 k×m 的 ROM 中每一个分组有 vδ(δ = 0, 1, ..., k-1) 个 “1” 元素。self-k 的工作原理 是: 当 R/W = 1 时, 经反相器取反后, self-k 的使能端 en 输入为 0, 不工作 ; 当 R/W = 0 时, 经反相器取反后, self-k 的使能端 en 输入为 1, self-k 内寄存的值每 CLK1 周期增加 1, 加 到 k 时值变为 0。 self-k 的作用是产生控制 k×m 个 ROM 阵列的地址索引 adrs, 保证在 CLK1 周期之内 ( 也即 L 个 CLK 周期持续时间内 ) 并行输出同一组 m 个使能信号 E, 下一个 CLK1 周期到来时, 并行输出下一组 m 个使能信号 E。ECEN 并行输出的 m 个使能信号 E 用于控制 m 个 PCθ 和 m 个 PSθ 的工作状态。当 m 个使能信号的第 θ 位 E = 1 时, PCθ 和 PSθ 都工作 ; 当第 θ 位 E = 0 时, PCθ 和 PSθ 都不工作。在所有信息位串行输入的 A 个 CLK 周期内, 每 个 PCθ 和 PSθ 工作 u 次 ; 在当前 CLK1 周期内的每一个 CLK 周期, 均有 vδ(δ = 0, 1, ..., k-1) 个 PCθ 和 PSθ 并行工作 ; 当下一次 CLK1 周期来到时, self-k 自加 1, 指向 ROM 的下一 个分组, 输出新的 m 个使能信号 E, 又开始下一次 CLK1 周期的执行 ; ECEN 模块每 CLK1 个周 期, 输出一次 m 个使能信号 E。
     校验位选择信号发生器模块, 由 m 个校验位选择信号发生器子模块 PCθ(θ = 0, 1, ..., m-1) 构成。每个 PCθ 的结构如图 4 所示, 包括 self-L、 sum、 adder-L 和 chos-L4 个 单元。每个 PCθ 有 5 个输入端口 : 一个 1 比特的使能信号 E 输入端口和一个 1 比特的 R/W 读写控制信号输入端口, 三个时钟信号输入端口, 即主时钟 CLK, L 分频时钟 CLK1 和 m 分频 时钟 CLK2。 位并行的校验位选择信号输出端口, 用 ch 表示。该模块的作用是计算 的计算与储存。一个 PCθ 中每一个单 出 qθ,γ 元素的值, 并由 qθ,γ 元素的值确定 [log2 L] 位的选择信号输出, 选通 PSθ 中 L 个 寄存器组中的某一个寄存器参与 元的结构和工作原理描述如下 :1、 self-L 中有一个位的寄存器, 该寄存器具有自加 1 功能和 modL 计算功 根的并行输 位寄存器设初值 位的并行输入端口。self-L 中能。self-L 有一个使能信号 E 输入端口和一个时钟输入端口 CLK1。有 出线连接到 adder-L 的一个取γ= 为 [1+θ+3](modL)( 即式 (8) 求解 qθ,γ 元素的第二个表达式增量部分的计算值, 1)。self-L 的工作模式描述如下, 如果 E = 0, self-L 不工作 ; 如果 E = 1, CLK1( 即 L 整数 倍主频 CLK) 边沿 ( 上升沿或下降沿 ) 到达时, self-L 的 时, self-L 的
     位寄存器中的值自加 1( 相当于式 (8) 中第二个表达式的 γ 值递增 ), 当 CLK1 不工作在边沿 ( 即不为 L 整数倍 CLK) 位寄存器中的值保持不变。 位的寄存器, sum 有一个使能 E 输入端和一个时钟信号 CLK1 位的并行输入端口, 还有 位寄存器 位并行输出端。sum 中 根并行输出线连接到 adder-L 的另一个 2、 sum 是一个输入端, 有根并行输入线连接到 adder-L 的的初值设为 [u+(θ+3)(θ+2)/2](modL)( 即式 (8) 求解 qθ,γ 元素的第一个表达式的计算 值 )。当使能信号 E = 0 时, sum 不工作 ; 当 E = 1 时, CLK1 工作在边沿时, sum 将寄存器中 的值输出到 adder-L, 并从 adder-L 的输出端接收新的值 ; 当 CLK1 不工作在边沿时, sum 寄 存器中的值保持不变。
     3、 adder-L 加法器是无进位的、 具有 modL 运算功能的、 两组位输入的二进制加法器, 一个使能控制 E 输入端和一个时钟信号 CLK1 输入端。adder-L 的工作原理 是: 当 E = 0 时, adder-L 不工作 ; 当 E = 1, 且 CLK1 工作在边沿时, adder-L 将 self-L 输 入的 位与 sum 输入的 位对应相加, 得到的 位求和结果输出给 sum 和 chos-L。当 CLK1 不工作在边沿时, adder-L 的输出值保持不变。adder-L 的目的是将从 self-L 和 sum 传入到两个输入端口的
     位值对应求和, 将计算结果 qθ, γ 值输出到 sum 位的寄存器, 具有自加 1 功能和 modL 计算功能, 位并行输入端口和 位并行输中保存, 以备下一个 CLK1 周期到达时, 求和运算使用, 同时将计算结果传递到 chos-L 中。 4、 chos-L 单元包含一个 modL 主要完成自加到 L 回 0 的任务。chos-L 有 端, 即主频 CLK、 L 分频 CLK1 和 m 分频 CLK2。 chos-L 的 (θ+2)/2](modL), 以保证第一个出端口 ch ; 两个输入控制信号, 即使能控制信号 E 和读写控制信号 R/W ; 三个时钟信号输入 位寄存器需设初值 [u+(θ+3) 位选通地址不丢失。 chos-L 的工作原理是 : 当有信息序列输入时, R/W = 0, 在 E = 1 时, CLK 和 CLK1 同时工作, 当 CLK1 边沿到达时, 位寄存器的初值变为 adder-L 的输出结果, 当 CLK1 不为边沿时, 每来一个 CLK, chos-L 的 位寄存器自加 1, 并输出 位的地址信号 ch, 当 位寄存器加到 L 时, 自 位寄存器的初值 动回 0, 准备下一次接收 adder-L 的传来的初值, 并累加到 L。当 R/W = 0, E = 0 时, chos-L 不工作。当无信息序列输入时, R/W = 1, 这时不管 E 的值是什么, 设为 0, 每来一个 CLK2, chos-L 的 CLK2 周期时输出 位寄存器自加 1, 从 0 一直加到 L-1, 同时在每个 位的位选择地址信号 ch, 使位地址信号 ch。chos-L 的目的是 : 有信息位输入时 (R/W = 0), 为 运算, 这时如果 CLK1 边沿到达, chos-L17每一个并行子模块 PSθ 中 L 个 1 位长的寄存器阵列提供 m 个 PSθ 子模块完成 (12) 式中102437857 A CN 102437865说明书13/15 页从 adder-L 输出端接收计算好的 qθ, 如果 CLK1 不工作在边沿处, 则对每一个 CLK 周期, γ 值, 位寄存器所做的 L 次加 1 操作, 等效于完成将子矩阵 寄存器从 0 开始自加 1, 直到 L-1, 提供一个 中的后面 L-1 列的每一列进 位 行循环下移 m 次操作 ; 无信息位输入时 (R/W = 1), 每一个 CLK2 周期, chos-L 的位的地址信号 ch, 依次寻址 PSθ 中 L 个值。 的 1 位寄存器中的某一个, 依次输出
     校验位计算与储存模块由 m 个校验位计算与储存子模块 PSθ(θ = 0, 1, ..., m-1) 构成, 每个子模块 PSθ 的结构如图 5 所示。一个 PSθ 包括一个有 L 个 1 位寄存器的阵列 FPS(θ) 和一个两输入异或门。 有 5 种类型的输入端口 : 一个 1 位的使能信号 E 输入端口、 一 个 1 位的 R/W 控制信号输入端口、 一个时钟信号 CLK 输入端口、 一个 位的校验位选择 信号输入端口 ch 和一个 1 位的信息位数据串行输入端口 d-in, 总的输入端口为 个。 一个 1 位的校验位数据串行输出端口。 m 个 PSθ 的作用是计算并存储编码递归算法 (12) 式中的 B 个 的中间值和最后计算结果。L 个 1 位寄存器阵列中存储的内 容表示如下, PSθ 中 L 个 1 位寄存器的存储内容依次为 y0, ym, y2m, ..., y(L-1)m,……, PSθ 中 L 个 1 位寄存器的存储内容依次为 yθ, yθ+m, yθ+2m, ..., yθ+(L-1)m,……, PSm-1 中 L 个 1 位寄 存器的存储内容依次为 ym-1, y2m-1, y3m-1, ..., ymL-1。m 个 PSθ 的基本工作原理是 : 当 R/W = 0 时, PSθ 的 L 个 1 位寄存器执行 yθ ~ yθ+(L-1)m 的计算与存储工作 ; 当 R/W = 1 时, m 个 PSθ 依次将 B = m×L 个 1 位寄存器中存储的最后计算结果 值输出到数据输 出模块 DATA-OUT。具体工作过程是 : 当 R/W = 0, E = 0 时, m 个 PSθ 不工作 ; 当 E = 1 时, m 个 PSθ 工作, 每来一个 CLK 时钟, 在 1 位寄存器中有 vδ 个 1 位寄存器进行 在图 4 中 chos-L 输出的 位选择信号 ch 到来时, m 个 PSθ 的 B = m×L 个 的求和运算, 针对一个 PSθ 而言,位选择信号 ch 的控制下, 图 5 中 PSθ 的 1 位寄存器与输入的信息位 dη 通过异或门进行异或操作, 将计算结果仍然存入 PSθ 中 L 个 1 位寄存器的第 ρ 个位置上, 相当于完成编码步骤 2) 的取反操作, 当所有信息位 dη(η = 0, 1, ..., A-1) 输 入完后, m 个 PSθ 子模块就完成了 = 1 时, 无论使能信号 E 是何值, chos-L 中的 次将 B 个 模块。 编码数据输出模块 DATA-OUT 的结构如图 6 所示, 包括具有一个 m+1 个输入端的 多路数据选择器 MUL、 一个模 m+1 的自加器 self-(m+1)( 结构为寄存器, 具有自加 1 功能和 mod(m+1) 计算功能, mod(m+1) 计算功能是为了完成当寄存器自加 1 到 m+1 时, 能返回到初 始值 1)、 一个异或门和一个 D 触发器。有 m+3 个输入端口 : 一个 1 比特的 R/W 控制信号输入 端口、 一个 CLK 信号输入端口、 一个 1 比特的信息位数据输入端口 d-in 和 m 个来自并行 PSθ 的数据输入端口。 一个 1 比特的编码数据串行输出端口 d-out。 该模块的作用是完成编码步 骤 3) 中的校验位迭代累加计算 p0 = y0, p1 = p0+y1, p2 = p1+y2, ..., pB-1 = pB-2+yB-1, 并输出编 码码字。 其工作过程如下 : 当 R/W = 0 时, self-(m+1) 的输出始终为 ‘0’ , 多路数据选择器选 择信息位数据输入端口输入的数据, 并从编码数据串行输出端口输出 ; 当 A 个 CLK 周期后,
     18的计算与存储工作 ; 当 R/W 位寄存器依次从 0 加到 L-1, 提供一个位的地址信号, 依次并行寻址 m 个 PSθ 中 L 个 1 位寄存器阵列中的一个寄存器, 依 的计算结果按 m 个并行提供给图 6 的 DATA-OUT102437857 A CN 102437865说明书14/15 页信息序列输入完毕, 从第 A+1 个 CLK 周期开始, 使 R/W = 1。 在 R/W = 1 的控制下, self-(m+1) 的工作原理是 : 从 1 依次自增到 m, 当加到 m+1 时又从 1 开始循环自加 1。self-(m+1) 的作 用是 : 每一个 CLK 周期自增一次, 控制多路数据选择器依次选择来自 PS0, PS1,…, PSm-1 数 据 y0, y1, ..., ym-1 到多路数据选择器的输出端。在 R/W = 1 时, MUL、 self-(m+1)、 D 触发 器和异或门的联合工作过程是 : 当第 A+1 个 CLK 周期到来时, self-(m+1) 单元自加 1, 控制 MUL 输出 y0, DATA-OUT 输出最后一个信息位 dA-1 ; 当第 A+2 个 CLK 周期到来时, self-(m+1) 自加 1, 控制 MUL 输出 y1, 同时 D 触发器将 p0 = y0 反馈到异或门输入端, 完成累加计算 p1 = p0+y1, 并存入 D 寄存器, DATA-OUT 输出 p0 = y0 ; 当第 A+3 个 CLK 周期到来时, self-(m+1) 自 加 1, 控制 MUL 输出 y2, 这时异或门完成的累加计算 p2 = p1+y2, 并存入 D 寄存器, DATA-OUT 输出 p1 = p0+y1。……; 当第 m 个 CLK 周期后, 第 A+m+1 个 CLK 周期到来时, 图 5 的 m 个 PSθ 又将下一组 ym, ym+1, ..., y2m-1 送到图 6 的多路数据选择器的输入端,……, 一直这样操作下 去, 直到第 A+B+1-m 个 CLK 周期到来, 图 5 的 m 个 PSθ 将最后一组 y(L-1)m, y1+(L-1)m, ..., ymL-1 送到图 6 的多路数据选择器的输入端, 在第 A+B+1 个 CLK 周期时, 输出最后一个校验位 pB-1 = pB-2+yB-1。
     应用举例
     假设要构造一个码长为 288, 码率为 1/2 的 IRA-LDPC 码编码器, 这个码的结构参数 为: A = 144 ; B = 144 ; L=8; 行重量 u = 4 ; 列重量 v0 ~ v8 为 5, v9 ~ v17 为 3 ; 优化搜索 得到 4 个生成元为 g0 = 2, g1 = 6, g2 = 7, g3 = 11。计算可得 m = B/L = 18, k = A/L = 18。
     步骤 1 : 构造剩余类数对阵列 利用用 7) 式和 8) 式计算出剩余类数对第一个参 数 rθ, 将剩余类数对按照 (2) 排列, 构成如下阵列 : 。 γ 和第二个参数 qθ, γ,
     也可以由计算机搜索得到, 搜索程序中 的存储结构为
     步骤 2 : 构造编码使能控制模块 ROM 中的数据。剩余类数对阵列存储结构 的第一 其中 r 元素的值为 1, 3, 7, 12, 15, 因此在编码使能控 其中 r 元素的值为 0, 2, 8, 地址为 17 的 ROM 中所存储的最行为 以此类推,
     制模块地址为 0 的 ROM 中所存储的 m = 18 个数据为 001001000010001010( 左边是高位 )。 后一组数据为 000000000100000101。由此, 可以构造出 ROM 中的 18 组数据。 步骤 3 : 设置各模块中的初值, 主要是确定各子模块中 L、 m 和 k 的值。编码使能控 制模块 ECEN 的 self-k 需要设初值 0(self-k 自加到 k = 18 时回到 0), ROM 中每个分组的 数据长度设为 m = 18 位, 共有 k = 18 个分组, 并行输出端口设为一个分组 (m = 18 位 ) 长 度。校验位选择信号发生器模块要在 self-L 和 chos-L 中设置递增初值 L = 8, chos-L 中 寄存器的长度设为 位。每个校验位计算与储存单元有 L = 8 个 1 位的 比特。 编码数据输出单元中的 寄存器阵列, 校验位选择信号输入端口 ch 长度设为多路数据选择器有 m+1 = 19 个输入端、 self-(m+1) 的初值设为 1(self-(m+1) 自加到 m+1 = 19 时回到 1)。
     步骤 4 : 设置 m 个 PCθ(θ = 0, 1, ..., m-1) 的初始值。在 m 个 PCθ(θ = 0, 1, ..., m-1) 中, chos-L 和 sum 中 (modL), self-L 中
     位寄存器的初值分别为 [4+(θ+3)(θ+2)/2] 位寄存器的初值分别为 [1+θ+3](modL)。本发明适用于任意码长 N = A+B 和码率 R = A/N, 只要 k×m 只读 ROM、 B = m×L 个 1 位寄存器设计成实际要求的最大尺寸即可。 以上举例仅用于说明本发明, 而非对本发明的 限制, 有关技术领域的人员, 在不脱离本发明的精神和范围的情况下, 还可以做各种变化和 d 变型, 因此, 所有基于剩余类数对的 H 矩阵构造方法和编码器结构均属于本发明的范畴, 本发明的专利保护范围应由权利要求限定。

一种IRALDPC码的构造方法及其编码器.pdf_第1页
第1页 / 共24页
一种IRALDPC码的构造方法及其编码器.pdf_第2页
第2页 / 共24页
一种IRALDPC码的构造方法及其编码器.pdf_第3页
第3页 / 共24页
点击查看更多>>
资源描述

《一种IRALDPC码的构造方法及其编码器.pdf》由会员分享,可在线阅读,更多相关《一种IRALDPC码的构造方法及其编码器.pdf(24页珍藏版)》请在专利查询网上搜索。

1、(10)申请公布号 CN 102437857 A (43)申请公布日 2012.05.02 C N 1 0 2 4 3 7 8 5 7 A *CN102437857A* (21)申请号 201110411481.1 (22)申请日 2011.12.12 H03M 13/11(2006.01) (71)申请人华中科技大学 地址 430074 湖北省武汉市洪山区珞喻路 1037号 (72)发明人彭立 张琦 陈涛 王渤 (74)专利代理机构华中科技大学专利中心 42201 代理人曹葆青 (54) 发明名称 一种IRA-LDPC码的构造方法及其编码器 (57) 摘要 本发明属于无线通信信道编码技术领域。

2、,具 体涉及一种高性能IRA-LDPC码的代数构造方法 和相应的低复杂度快速编码器。代数构造方法包 括步骤:构造剩余类数对阵列的方法和表达式; 设计剩余类数对的第一个参数的方法和表达式; 设计剩余类数对的第二个参数的方法和表达式; 计算奇偶校验矩阵中每个“1”元素所在位置的 行坐标的方法和表达式。编码器包括:编码器总 体结构模块和电路;编码使能信号生成模块和电 路;可并行执行的校验位选择信号发生器子模块 和电路;可并行执行的校验位计算与存储子模块 和电路;编码数据输出模块和电路。 (51)Int.Cl. (19)中华人民共和国国家知识产权局 (12)发明专利申请 权利要求书 4 页 说明书 1。

3、5 页 附图 4 页 CN 102437865 A 1/4页 2 1.一种IRA-LDPC码的构造方法,若所构造的IRA-LDPC码信息位长度为A、校验 位长度为B,所构造的H d 矩阵的尺寸为BA,所述H d 矩阵设定的约束条件为:(一)信 息位长度A和校验位长度B存在大于1的公因数L;(二)H d 矩阵被分解为k个子矩阵 每个子矩阵的尺寸是BL,其中kA/L;(三)H d 矩阵的行重量只有 一种,用u表示;(四)H d 矩阵的列重量最多有k种,最少是两种,分别用v 0 ,v 1 ,.,v k-1 表 示;(五)每个子矩阵的第一列循环下移m位,得到第二列,作依次循环 下移m位操作,得到整个H。

4、 d 矩阵,其中mB/L,要求m+1是素数,这个操作等效于计算每个 子矩阵的第列第个“1”元素的行坐标(六)H d 矩阵采用其紧凑形式的剩余类 数对阵列表示,剩余类数对阵列的存储形式为阵列,其特征在于和结构形式如(I) 和(I)式: 表达式(I)中每一列剩余类数对的数量是不等的,由各个子矩阵的 列重量v 0 ,v 1 ,.,v k-1 确定;表达式(I)中每一行剩余类数对的数量是相等的,均为行 重量u;阵列的尺寸为mk,阵列中剩余类数对的总数为由于ku,所 以阵列是稀疏的,阵列中每一个位置的元素为一个整数对(r , q ),其中(r , q , )(r , q , )|0,1,.,v -1,0。

5、,1,.,u-1表示阵列中的一 个元素,(r , q , )是剩余类数对,是空集;表达式(I)中的是阵列的存储结构;构 造剩余类数对阵列需要设计剩余类数对中的第一个参数r , r , ,设计r , r , 的方法是:对于mB/L且满足m+1是素数,基于有限域GF(m+1)上的有限循环乘群至少有 u个生成元g 0 ,g 1 ,.,g u-1 ,利用u生成元的1,2,.,m次幂,生成mu个r , r , 元 素,计算表达式如(II)式: r , r , (g ) +1 -1(mod(m+1) (II) 构造剩余类数对阵列需要设计剩余类数对中的第二个参数q , q , ,可以利用式 (II)r , 。

6、r , 来设计q , q , ,q , q , 的计算方法如(III)式: 权 利 要 求 书CN 102437857 A CN 102437865 A 2/4页 3 根据剩余类数对阵列能够计算H d 矩阵中每一个“1”元素所在位置的行坐标,设H d 矩 阵的第(0,1,.,k-1)个子矩阵的第(0,1,.,L-1)列第(0, 1,.,v -1)个“1”元素的行坐标的计算表达式为(IV)式: 最后,利用上述构成的H d 矩阵,即可得到系统形式H矩阵HH d H p ,其中H p 矩阵具 有确定的双对角线结构。 2.一种IRA-LDPC码的编码器,其特征在于,在包括CPLD和FPGA在内的可编程。

7、逻辑器 件环境下的编码器硬件电路包括:编码使能信号生成模块、校验位选择信号发生器模块、校 验位计算与存储模块、编码数据输出模块、主时钟输入端口、信息位数据串行输入端口、R/W 控制信号输入端口和编码数据串行输出端口; 编码使能信号生成模块ECEN用于将阵列中每个数对(r , q , )的第一个元素r , 值,离线转换成mk个二进制值,将这mk个使能信号分成k个分组,每个分组m位使能 信号并行输出至校验位选择信号发生器子模块和校验位计算与存储子模块,为它们提供使 能控制信号E; 校验位选择信号发生器模块由m个并行的校验位选择信号发生器子模块PC 构成, 0,1,.,m-1;校验位选择信号发生器子。

8、模块PC 用于计算出q , 元素的值,并由q , 元素的值确定位的选择信号ch输出,选通校验位计算与存储子模块PS 的L个1 位寄存器阵列中的某一个寄存器参与的计算与储存; 校验位计算与存储模块由m个并行的校验位计算与存储子模块PS 构成, 0,1,.,m-1;m个PS 中的L个1位寄存器阵列用来完成B位校验位的中间结果 的计算与储存;m个PS 向编码数据输出模块输出y y +(L-1)m ,0,1,.,m-1; 编码数据输出模块DATA-OUT根据m个子模块PS 传来的 完成校验位的迭代累加计算,即p 0 y 0 ,p 1 p 0 +y 1 ,p 2 p 1 +y 2 ,.,p B-1 p 。

9、B-2 +y B-1 ,并由编码数据串行输出端口d-out输出编码码字; 一个主时钟周期输入端口CLK,产生两个分频时钟,L分频时钟CLK1和m分频时钟 CLK2; 一个1比特的信息位数据串行输入端口d-in,每个CLK周期输入一个信息位; 一个1比特的R/W控制信号输入端口,每个CLK周期产生一个R/W信号,有信息序列输 入时,设置R/W0;无信息序列输入时,设置R/W1; 一个1比特的编码数据串行输出端口d-out,每个CLK周期输出一个编码位。 3.根据权利要求2所述的IRA-LDPC码的编码器,其特征在于,所述编码使能信号生成 模块ECEN包括一个反相器,一个模k自加器self-k,一。

10、个ROM存储器,一个R/W控制信号 输入端口,一个CLK1时钟输入端口,一个m位的并行输出端口;反相器将输入的R/W控制 信号取反后作为self-k的使能端en输入;使能端en为0,self-k不工作,使能端en为1, self-k内的位寄存器的值每CLK1周期自增1,作为ROM存储器的地址索引adrs; 权 利 要 求 书CN 102437857 A CN 102437865 A 3/4页 4 ROM存储器的尺寸为km,用于存储km阵列中数对元素的状态,存储规则是:如果数对 元素(r , q , )是空集,ROM中相应位置存0,如果(r , q , )是剩余类数对,则相应 位置存1,根据输入。

11、的地址索引adrs,ROM存储器并行输出m个使能信号E,作为校验位选择 信号发生器子模块和校验位计算与存储子模块的使能信号。 4.根据权利要求2或3所述的IRA-LDPC码的编码器,其特征在于,所述校验位选择信 号发生器子模块PC (0,1,.,m-1)包括两个modL的自加器self-L和chos-L、一个 寄存器sum和一个modL加法器adder-L,五个输入端口和一个校验位选择信号输出端口; 五个输入端口分别是一个1比特的使能信号E输入端口和一个1比特的R/W读写控制信号 输入端口以及三个时钟输入端口,CLK,CLK1和CLK2;校验位选择信号输出端口为位 并行的输出端口; self-。

12、L中有一个设有初值的位寄存器,该寄存器具有自加1功能和modL计 算功能;self-L有一个使能信号E输入端口、一个时钟输入端口CLK1和一个连接到加法 器adder-L的位的并行输出端口,self-L中位寄存器的初值设为1+3 (modL); 寄存器sum是一个设有初值的位寄存器;sum有一个使能E输入端和一个时 钟信号CLK1输入端,有一个连接到加法器adder-L的位的并行输入端口,以及一 个连接到加法器adder-L的位的并行输出端口,sum的位寄存器设初值为 u+(+3)(+2)/2(modL);当使能信号E0时,sum不工作;当E1,CLK1工作在边沿 时,sum将寄存器中的值输出。

13、到adder-L,并从adder-L的输出端接收新的值;当CLK1不工 作在边沿时,sum寄存器中的值保持不变; 加法器adder-L是无进位的、具有modL运算功能的、两组位并行输入的二进制 加法器;adder-L有一个使能控制E输入端口和一个时钟信号CLK1输入端口; 自加器chos-L包含一个设有初值的位寄存器,具有自加1功能和modL计算功 能,modL运算主要完成自加到L回0的任务,chos-L的位寄存器设初值为u+(+3) (+2)/2(modL);有位并行输入端口和位并行输出端口,两个输入控制信 号即使能控制信号E和读写控制信号R/W,三个时钟信号输入端CLK、CLK1和CLK2。

14、。 5.根据权利要求2或3所述的IRA-LDPC码的编码器,其特征在于,所述校验位计算 与存储子模块PS (0,1,.,m-1)包括一个具有L个1位寄存器的阵列和一个两输 入异或门;5种类型的输入端口:一个1位的使能信号E输入端口、一个1位的R/W控制 信号输入端口、一个时钟信号CLK输入端口、一个位的校验位选择信号输入端口和 一个1位的信息位数据串行输入端口;一个1位的校验位数据串行输出端口;其作用是在 chos-L输出的位选择信号ch的控制下,m个PS 子模块完成B个校验位中间结果 值的计算与存储。 6.根据权利要求4所述的IRA-LDPC码的编码器,其特征在于,所述校验位计算与存 储子模。

15、块PS (0,1,.,m-1)包括一个具有L个1位寄存器的阵列和一个两输入 异或门;5种类型的输入端口:一个1位的使能信号E输入端口、一个1位的R/W控制信 号输入端口、一个时钟信号CLK输入端口、一个位的校验位选择信号输入端口和 权 利 要 求 书CN 102437857 A CN 102437865 A 4/4页 5 一个1位的信息位数据串行输入端口;一个1位的校验位数据串行输出端口;其作用是在 chos-L输出的位选择信号ch的控制下,m个PS 子模块完成B个校验位中间结果 值的计算与存储。 7.根据权利要求2或3所述的IRA-LDPC码的编码器,其特征在于,所述编码数据输 出模块DAT。

16、A-OUT包括一个具有m+1个输入端的多路数据选择器MUL、一个模m+1的自加器 self-(m+1)、一个异或门和一个D触发器;有m+3个输入端口:一个1比特的R/W控制信号 输入端口、一个CLK信号输入端口、一个1比特的信息位数据输入端口d-in和m个来自PS 的并行数据输入端口;一个1比特的编码数据串行输出端口d-out。 8.根据权利要求4所述的IRA-LDPC码的编码器,其特征在于,所述编码数据输出 模块DATA-OUT包括一个具有m+1个输入端的多路数据选择器MUL、一个模m+1的自加器 self-(m+1)、一个异或门和一个D触发器;有m+3个输入端口:一个1比特的R/W控制信号。

17、 输入端口、一个CLK信号输入端口、一个1比特的信息位数据输入端口d-in和m个来自PS 的并行数据输入端口;一个1比特的编码数据串行输出端口d-out。 9.根据权利要求5所述的IRA-LDPC码的编码器,其特征在于,所述编码数据输出 模块DATA-OUT包括一个具有m+1个输入端的多路数据选择器MUL、一个模m+1的自加器 self-(m+1)、一个异或门和一个D触发器;有m+3个输入端口:一个1比特的R/W控制信号 输入端口、一个CLK信号输入端口、一个1比特的信息位数据输入端口d-in和m个来自PS 的并行数据输入端口;一个1比特的编码数据串行输出端口d-out。 权 利 要 求 书C。

18、N 102437857 A CN 102437865 A 1/15页 6 一种 IRA-LDPC 码的构造方法及其编码器 技术领域 0001 本发明属于无线通信信道编码技术领域,具体涉及一种高性能IRA-LDPC码的代 数构造方法及相应的编码器结构。本发明可作为移动通信、固定无线通信、卫星通信和空间 通信的长期演进(LTE)工业标准中物理层前向纠错码的最佳选择方案之一。 背景技术 0002 信道纠错码技术主要用于解决传输可靠性问题,本发明所涉及的IRA-LDPC码是 一种性能接近香农限,并能高速运行的信道纠错编码技术。 0003 LDPC码本质上是一种线性分组码,它是由稀疏奇偶校验矩阵H来定义。

19、的,LDPC码 的码字序列与H矩阵互为零空间,即这个方程也称为校验方程,由此可知,对LDPC 码的结构设计主要是对稀疏奇偶校验矩阵H的结构设计。LDPC码是利用置信传播(Belief Propagation)迭代解码算法进行解码的,BP解码算法是在H矩阵确定的Tanner图上传递 置信信息来进行迭代计算的。初期,LDPC码没有特定的编码方法,通常情况下,特别是前期 在性能仿真实验过程中,是将LDPC码的H矩阵经行列变换转换成生成矩阵,然后用生成矩 阵进行编码。从H矩阵到生成矩阵的变换计算量大约为码长的平方,并且虽然H矩阵是一 个稀疏矩阵(即矩阵中的元素大部分是0,为1的元素数量非常少),但经过。

20、行列变换 得到的生成矩阵却不一定是稀疏矩阵,因此利用生成矩阵编码效率极低。为了降低编码器 的复杂度,在设计实用的LDPC码时,都是将H矩阵设计成有利于编码的形式,这样可以不通 过生成矩阵,而是直接利用H矩阵进行编码。目前在工业标准中采纳的LDPC码有下列两种 结构特征:一种是IRA-LDPC码;另一种是QC-LDPC码。它们都可以直接利用H矩阵进行编 码,而不用求出对应的生成矩阵,并且可以做到编码算法为码长的线性复杂度。 0004 2001年,Hui Jin在其博士论文Analysis and design of turbo-like codes 中提出不规则重复积累(Irregular Re。

21、peat-Accumulate,)码,简称IRA码。他从理论上 证明了在删余信道上,IRA码是迄今为止唯一的香农信道容量可达码类,而且在高斯白噪声 (AWGN)信道上,IRA码也显示出逼近香农容量限的优良性能。IRA码的编码器可以看作由一 个低密度生成(LDGM)矩阵和一个重复累加器级联而成,由编码器的结构可以写出对应的H 矩阵。这个H矩阵的系统形式为HH d H p ,其中H p 矩阵具有确定的双对角线结构: 0005 0006 表达式(1)的H p 矩阵对应于IRA码编码器中的重复累加器;而信息码位对应的H d 矩阵中1元素的分布是不确定的,对应于IRA码编码器中的低密度生成矩阵。因此,设。

22、计 实用IRA码的主要任务就是设计H d 矩阵的结构。IRA码可以看作LDPC码的一个子类,本发 说 明 书CN 102437857 A CN 102437865 A 2/15页 7 明中把由双对角线H p 矩阵构成的H矩阵所定义的IRA码,称为IRA-LDPC码。 0007 在应用方面,2005年,欧洲卫星通信标准Digital Video Broadcasting(DVB); Second generation framing structure,channel coding and modulation systems for Broadcasting,Interactive Servi。

23、ces,News Gathering and other broadband satellite applications(简称DVB-S2标准)采纳了IRA-LDPC码作为前向纠错码的主要方案。标 准中没有给出IRA-LDPC码的H d 矩阵结构,只给出了编码表和相应的编码算法,而且标准中 没有介绍编码表是如何产生,因此构造编码器时必须消耗大量的ROM空间来存储编码表中 的每一个数字。 发明内容 0008 为克服DVB-S2标准中采纳的IRA-LDPC码需要大量ROM空间来存储编码表的缺 点,本发明提供了一种IRA-LDPC码的构造方法,本发明解决了IRA-LDPC码H d 矩阵的存储 空间。

24、问题,而且对应的编码器硬件复杂度更低,运行速度更快,仿真性能也略有优势,能更 好的在无线通信的实际工程中得到应用。 0009 本发明提供的一种IRA-LDPC码的构造方法,若所构造的IRA-LDPC码信息位长 度为A、校验位长度为B,所构造的H d 矩阵的尺寸为BA,所述H d 矩阵设定的约束条件为: (一)信息位长度A和校验位长度B存在大于1的公因数L;(二)H d 矩阵被分解为k个子 矩阵每个子矩阵的尺寸是BL,其中kA/L;(三)H d 矩阵的行重 量只有一种,用u表示;(四)H d 矩阵的列重量最多有k种,最少是两种,分别用v 0 ,v 1 ,., v k-1 表示;(五)每个子矩阵的。

25、第一列循环下移m位,得到第二列,作依次 循环下移m位操作,得到整个H d 矩阵,其中mB/L,要求m+1是素数,这个操作等效于计算 每个子矩阵的第列第个“1”元素的行坐标(六)H d 矩阵采用其紧凑形式的剩 余类数对阵列表示,剩余类数对阵列的存储形式为阵列,其特征在于和结构形式如 (I)和(I)式: 0010 0011 说 明 书CN 102437857 A CN 102437865 A 3/15页 8 0012 0013 表达式(I)中每一列剩余类数对的数量是不等的,由各个子矩阵 的列重量v 0 ,v 1 ,.,v k-1 确定;表达式(I)中每一行剩余类数对的数量是相等的,均为行 重量u;。

26、阵列的尺寸为mk,阵列中剩余类数对的总数为由于ku,所以 阵列是稀疏的,阵列中每一个位置的元素为一个整数对(r , q , ),其中(r , q , )(r , q , )|0,1,.,v -1,0,1,.,u-1表示阵列中的一 个元素,(r , q , )是剩余类数对,是空集;表达式(I)中的是阵列的存储结构; 0014 构造剩余类数对阵列需要设计剩余类数对中的第一个参数r , r , ,设计 r , r , 的方法是:对于mB/L且满足m+1是素数,基于有限域GF(m+1)上的有限循 环乘群至少有u个生成元g 0 ,g 1 ,.,g u-1 ,利用u生成元的1,2,.,m次幂,生成mu个 。

27、r , r , 元素,计算表达式如(II)式: 0015 r , r , (g ) +1 -1(mod(m+1) (II) 0016 构造剩余类数对阵列需要设计剩余类数对中的第二个参数q , q , ,可以利 用式(II)r , r , 来设计q , q , ,q , q , 的计算方法如(III)式: 0017 0018 根据剩余类数对阵列能够计算H d 矩阵中每一个“1”元素所在位置的行坐标,设 H d 矩阵的第(0,1,.,k-1)个子矩阵的第(0,1,.,L-1)列第( 0,1,.,v -1)个“1”元素的行坐标的计算表达式为(IV)式: 0019 0020 最后,利用上述构成的H d。

28、 矩阵,即可得到系统形式H矩阵HH d H p ,其中H p 矩 阵具有确定的双对角线结构。 0021 本发明提供一种IRA-LDPC码的编码器,其特征在于,在可编程逻辑器件(包括 CPLD和FPGA)环境下的编码器硬件电路结构设计,包括:附图2的IRA-LDPC码编码器的总 体电路结构、附图3的编码器使能信号生成模块ECEN、附图4的校验位选择信号发生器子 模块PC 、附图5的校验位计算与储存子模块PS 和附图6的编码数据输出模块DATA-OUT、 主时钟输入端口、信息位数据串行输入端口、R/W控制信号输入端口和编码数据串行输出端 口; 0022 编码使能信号生成模块ECEN用于将阵列中每个。

29、数对(r , q , )的第一个元素 r , 值,离线转换成mk个二进制值,将这mk个使能信号分成k个分组,每个分组m位 使能信号并行输出至校验位选择信号发生器子模块和校验位计算与存储子模块,为它们提 供使能控制信号E; 0023 校验位选择信号发生器模块由m个并行的校验位选择信号发生器子模块PC 构 说 明 书CN 102437857 A CN 102437865 A 4/15页 9 成,0,1,.,m-1;校验位选择信号发生器子模块PC 用于计算出q , 元素的值,并 由q , 元素的值确定位的选择信号ch输出,选通校验位计算与存储子模块PS 的 L个1位寄存器阵列中的某一个寄存器参与的计。

30、算与储存; 0024 校验位计算与存储模块由m个并行的校验位计算与存储子模块PS 构成, 0,1,.,m-1;m个PS 中的L个1位寄存器阵列用来完成B位校验位的中间结果 的计算与储存;m个PS 向编码数据输出模块输出 0025 y y +(L-1)m ,0,1,.,m-1; 0026 编码数据输出模块DATA-OUT根据m个子模块PS 传来的 完成校验位的迭代累加计算,即p 0 y 0 ,p 1 p 0 +y 1 ,p 2 p 1 +y 2 ,.,p B-1 p B-2 +y B-1 ,并由编码数据串行输出端口d-out输出编码码字; 0027 一个主时钟周期输入端口CLK,产生两个分频时钟。

31、,L分频时钟CLK1和m分频时钟 CLK2; 0028 一个1比特的信息位数据串行输入端口d-in,每个CLK周期输入一个信息位; 0029 一个1比特的R/W控制信号输入端口,每个CLK周期产生一个R/W信号,有信息序 列输入时,设置R/W0;无信息序列输入时,设置R/W1; 0030 一个1比特的编码数据串行输出端口d-out,每个CLK周期输出一个编码位。 0031 本发明的主要目的是提供一种基于剩余类数对代数结构的IRA-LDPC码H d 矩阵的 构造方法,及其相应的编码器硬件结构,并将这种码称为基于剩余类数对的IRA-LAPC码。 与DVB-S2标准中使用的IRA-LDPC码(需要存。

32、储整个编码表)不一样的特征是,由本发明 提供的方法构造出来的IRA-LDPC码其H d 矩阵中每个1元素的位置坐标均可以由代数表 达式计算得到。本发明所设计的IRA-LDPC码与现有工业标准中的LDPC码(包括DVB-S2 标准中的IRA-LDPC码和IEEE802.16e标准中的不规则QC-LDPC码)相比性能相当,甚至更 好,占用的存储器容量更少,编码器的硬件实现复杂度更低,所占用的芯片面积更小。 附图说明 0032 附图1为本发明方法的流程图; 0033 附图2为本发明设计的IRA-LDPC码编码器的总体电路结构示意图; 0034 附图3为本发明设计的IRA-LDPC码编码使能信号生成模。

33、块ECEN; 0035 附图4为本发明设计的IRA-LDPC码校验位选择信号发生器子模块PC ; 0036 附图5为本发明设计的IRA-LDPC码校验位计算与储存子模块PS ; 0037 附图6为本发明设计的IRA-LDPC码编码数据输出模块DATA-OUT。 具体实施方式 0038 本发明的IRA-LDPC编码器的构造方法包括两部分:第一部分是构造H d 矩阵,以及 根据H d 完成HH d H p 的构造;第二部分是根据H d 矩阵的结构特征设计IRA-LDPC码的编 码器的电路结构。下面我们首先介绍本发明要用到的数学概念;接着描述第一部分H d (或 H)矩阵的结构特征和构造方法;然后描。

34、述第二部分编码器的基本工作原理、构造方法、电 路结构和工作过程;最后给出一个实例。 0039 构造H d 矩阵时使用了剩余类和有限循环乘群等数学原理,其基本概念描述如下: 说 明 书CN 102437857 A CN 102437865 A 5/15页 10 0040 剩余类:由同余概念可将全体整数加以分类,把余数相同的归为一类。设n表示 模数,r和q为二个变量,0rn,q为整数,即由fqn+r定义余数同为r的整数构成 一个集合所有整数可划分为n个这样的集合,也称为n个剩余类。显 然,任意整数必属于n个剩余类中的一个。 0041 定义剩余类数对:从表达式fqn+r中提取两个数r和q,构成数偶对。

35、(r q), 称为剩余类数对,表示以模n划分剩余类,在剩余类中的第q个元素是f。例如,设模数为 n5,(r q)(23)表示剩余类中的第3个元素为f1735+2,(r q)(30) 表示剩余类中的第0个元素为f305+3。 0042 有限循环乘群:由一个单独元素的一切幂次所构成的群称为循环群,该元素称为 循环群的生成元。若GF(n)有限域中除0外的所有元素都可以由域中的某个元素g的幂次 构成,则称GF(n)域中除0外的元素构成一个有限循环乘群,g称为这个有限循环乘群的生 成元。 0043 本发明申请书中所使用的符号规定如下:结构描述符号如码长、信息位长度等用 26个英文字母表示,下标、上标和索。

36、引用希腊字母表示。HH d H p 表示IRA-LDPC码的稀 疏奇偶校验矩阵,其中H d 表示本发明要构造的信息位所对应的稀疏奇偶校验矩阵,H p 表示 校验位所对应的双对角线矩阵。A表示信息位长度或H d 的列数,B表示校验位长度或H d 的行 数,N表示码长,NA+B,R表示码率,RA/N。0,1,.,k-1表示H d 所分解的子矩阵 的数量索引,表示H d 所分解的第个子矩阵,即L表示A和B 的某个大于1的公因数,也表示的列数,0,1,.,L-1表示列数的索引。是H d 的 一种紧凑表示形式,称为剩余类数对阵列,表示阵列的存储结构。kA/L表示H d 所分解 的子矩阵的数量或的列数,0。

37、,1,.,k-1亦表示列数的索引;mB/L表示的行数 或表示被并行执行的使能信号的数量,0,1,.,m-1表示的行索引或并行输出m个 使能信号的索引。表示信息序列(或矢量),其中d 表示信息位的值, 0,1,.,A-1表示信息位索引或H d 的列索引;表示校验位序列(或矢 量),其中表示校验位的值,表示校验位索引或H d 的行索引;表示 码位序列(或码矢量)。u表示H d 的行重量,0,1,.,u-1表示H d 每一行中“1”元素的数 量索引或的每一行中剩余类数对的数量索引;v 表示的列重量,0,1,.,v -1表 示的每一列中“1”元素的数量索引,v min 和v max 分别表示H d 的。

38、最小列重量和最大列重量。 表示中第个列矢量,T表示阵列、矢量或矩阵的转置。(r , q , )表示中第行第 列的元素,(r , q , )表示阵列中的某一个剩余类数对,表示不包含剩余类数对的 空集。令表示不大于x的最大整数)表示H d 的第列位于的第个子矩阵 中,令(modL)表示H d 的第列位于子矩阵的第列。(r , q , ),(r , q , ),(r , q , )和(r , q , )均表示中的同一个剩余类数对。g 0 ,g 1 ,.,g ,.,g u-1 表示 基于有限域GF(m+1)的循环乘群的u个生成元; 表示以1,2,3,.,m为幂次由u个生成元所生成的mu个元素。表示每个。

39、生成 元的m+1次幂是它本身。e , 表示子矩阵中第1列第个“1”元素的行坐标,表 示由剩余类数对(r , q , )计算出来的第个子矩阵第列第个“1”元素的行 说 明 书CN 102437857 A CN 102437865 A 6/15页 11 坐标。表示H d 中第列(位于第个子矩阵中)第个“1”元素的行坐标。 表示H d 中第行第列的元素值;表示H d 中第行第 列的元素值与第个输入信息位d 的乘积;表示H d 中第行的所有乘积项的和,即 0044 本发明第一部分所构造的H d 矩阵结构特点如下:H d 矩阵的维数为BA,信息位长 度A和校验位长度B存在大于1的公因数L(若不存在,则不。

40、属于本发明考虑的范围之内)。 H d 矩阵可分解为k(kA/L)个子矩阵,即每个子矩 阵的维数是BL。本发明规定H d 矩阵是等行重量的,行重量为u。H d 矩阵最多有k个不同 的列重量,最少有2个不同的列重量,设v (0,1,.,k-1)表示H d 的列重量,H d 矩阵 的最小列重量为v min 3,最大列重量为3v max m。v 也表示矩阵第一列中1元素 的个数。对矩阵,除了第一列外,其余各列都是将前一列循环下移m次得 到的,则矩阵中各列的重量相同(即每列中1元素的个数相同)。因此只用设计每个 矩阵第一列1元素所在行坐标,就能得到整个H d 矩阵。本发明规定每个矩阵第一列 1元素的行坐。

41、标用一个剩余类数对(r , q , )来计算。为此,本发明构造了下列H d 矩阵 的紧凑表示形式,称为剩余类数对阵列 0045 0046 其中(r , q , )(r , q , )|0,1,.,v -1,0,1,., u-1。的尺寸是mk维,规定m+1必须是素数。阵列中剩余类数对的数量可以推导如 下:H d 矩阵中“1”元素的总数为消去L得到每个子矩阵中第一列“1”元 素的总数为这也是中剩余类数对的总数。显然,中每一列剩余类数对的数 量不一定相等,由各个子矩阵的列重量v 0 ,v 1 ,.,v ,.,v k-1 确定; 中每一行剩余类数对的数量是相等的,均为H d 矩阵的行重量u,通常ku,。

42、所以阵列是 稀疏的。需要强调的是表达式(2)的阵列不是数学意义上的矩阵,它是本专利所发明的专 门用来表示H d 矩阵的一种紧凑的阵列结构。 0047 阵列还可以写成更紧凑的形式其中表示剩余 类数对列矢量这里R , (r q , ),。中剩余类数 对(r , q , )的数量由列重量v 确定,子矩阵中第一列的第(0,1,.,v -1) 个1元素的行坐标,也是中第(0,1,.,v -1)个剩余类数对所决定的1元素 的行坐标的计算表达式为: 说 明 书CN 102437857 A CN 102437865 A 7/15页 12 0048 e , (r , +mq , )(mod B) (3) 004。

43、9 我们将剩余类数对的表示方法扩展到整个H d 矩阵中的每个“1”元素,也就是计算 H d 矩阵的第(0,1,.,k-1)个子矩阵的第(0,1,.,L-1)列第( 0,1,.,v -1)个“1”元素的行索引(行坐标),表达式(3)扩展如下: 0050 0051 H d 矩阵中每个“1”元素的位置坐标还有另一种表示方法。由于等效于 0,1,.,k-1,H d 矩阵中第列等效于第个子矩阵的第列中,那么H d 矩阵 第列第个“1”元素的行坐标值由剩余类数对(r , q , )计算如下: 0052 0053 本发明第一部分H d (或H)矩阵的构造方法主要包括阵列中剩余类数对(r , q , )每个元。

44、素r , 和q , 的设计、剩余类数对阵列和的排列结构设计、根据剩余类数对 阵列和计算H d 矩阵中1元素位置坐标e , 或如图1所示,具体包括以下步骤: 0054 第1步,设计剩余类数对中的第一个元素r , (r , ),0,1,.,m-1, 0,1,.,u-1。r , 以剩余类数对第一个元素的形式分布在mk的阵列中。在阵列中 一共有mu个r , ,其中共有m个不同的r , 值,r , 0,1,2,.,m-1。同一行的 r , 值是相同的,或者说一共有m组,每一组u个值是相同的,相同的r , 值放在同一行 中。本发明采用由u个生成元g 0 ,g 1 ,.,g u-1 经乘法群结构计算产生mu。

45、个r , 值。设 r , 的mu个值用表示,以u个生成元g 0 ,g 1 ,.,g u-1 的m次幂来计算r , 的表 达式定义为: 0055 r , r , (g ) +1 -1(mod(m+1) (6) 0056 将(6)式计算出来的mu个r , 值按行索引列索引的方式排列得到如下 的r , mu : 0057 0058 在r , mu 中,元素值的特点是:对大于m的值取mod(m+1),一共有m个不同元 素,每个元素从序列0,1,.,m-1中取值,每个元素值出现u次。 0059 第2步,设计剩余类数对中的第二个元素q , 。若剩余类数对中的r , 值按上述 (7)的方式计算和排列,则该剩。

46、余类数对中的mu个q , 的值由下列表达式计算得到: 0060 0061 (7)式中取出一个r , 值,就能由(8)式计算出一个q , 值。 0062 第3步,设计剩余类数对阵列的存储结构为了便于描述,以H d 矩阵中存在两 种列重量为例,最小列重量v min 3,最大列重量v max 可以是大于3不大于m的任意正整数, 即3v max m。设阵列中每列有v min 3个剩余类数对的列数为j列(或H d 矩阵中每 列有v min 3个“1”元素的列为jL列),阵列中每列有v max 个剩余类数对的列数为k-j 说 明 书CN 102437857 A CN 102437865 A 8/15页 1。

47、3 列(或H d 矩阵中每列有v max 个“1”元素的列为(k-j)L列)。的结构如下: 0063 0064 0065 式(9)的剩余类数对阵列的存储结构具体描述如下:首先,是计算机软件搜索 最优的存储结构,在阵列中按列放置的所有剩余类数对在中按行放置,如阵列中的 第一列(包括剩余类数对和空集)在中为第一行,并且是连续放置,每个剩余类数对之 间没有空格或空集元素。其次,式(7)中计算出的r , 值与式(9)中剩余类数对的位置 关系是:在(7)中按列取值,每次取一列m个元素,在(9)的阵列中按行顺序放置在剩余类 数对的第一个位置上。最后,本发明在搜索得到后,也可将其转换为(2)式的剩余类数对 阵列的定义结构形式,其转化方式如下:取的第一行的v min (或v max )个剩余类数对放到 阵列的第一列中,每个剩余类数对在阵列中各列的行索引由剩余类数对的第一个元素的 值确定,。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 电学 > 基本电子电路


copyright@ 2017-2020 zhuanlichaxun.net网站版权所有
经营许可证编号:粤ICP备2021068784号-1