CN101273532B - 解码装置及接收装置 - Google Patents

解码装置及接收装置 Download PDF

Info

Publication number
CN101273532B
CN101273532B CN2006800354137A CN200680035413A CN101273532B CN 101273532 B CN101273532 B CN 101273532B CN 2006800354137 A CN2006800354137 A CN 2006800354137A CN 200680035413 A CN200680035413 A CN 200680035413A CN 101273532 B CN101273532 B CN 101273532B
Authority
CN
China
Prior art keywords
variable
mentioned
register
verification
check
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN2006800354137A
Other languages
English (en)
Other versions
CN101273532A (zh
Inventor
神谷典史
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
NEC Corp
Original Assignee
NEC Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by NEC Corp filed Critical NEC Corp
Publication of CN101273532A publication Critical patent/CN101273532A/zh
Application granted granted Critical
Publication of CN101273532B publication Critical patent/CN101273532B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/65Purpose and implementation aspects
    • H03M13/6577Representation or format of variables, register sizes or word-lengths and quantization
    • H03M13/658Scaling by multiplication or division
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/03Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
    • H03M13/05Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits
    • H03M13/11Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits using multiple parity bits
    • H03M13/1102Codes on graphs and decoding on graphs, e.g. low-density parity check [LDPC] codes
    • H03M13/1105Decoding
    • H03M13/1111Soft-decision decoding, e.g. by means of message passing or belief propagation algorithms
    • H03M13/1117Soft-decision decoding, e.g. by means of message passing or belief propagation algorithms using approximations for check node processing, e.g. an outgoing message is depending on the signs and the minimum over the magnitudes of all incoming messages according to the min-sum rule
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/03Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
    • H03M13/05Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits
    • H03M13/11Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits using multiple parity bits
    • H03M13/1102Codes on graphs and decoding on graphs, e.g. low-density parity check [LDPC] codes
    • H03M13/1105Decoding
    • H03M13/1111Soft-decision decoding, e.g. by means of message passing or belief propagation algorithms
    • H03M13/1117Soft-decision decoding, e.g. by means of message passing or belief propagation algorithms using approximations for check node processing, e.g. an outgoing message is depending on the signs and the minimum over the magnitudes of all incoming messages according to the min-sum rule
    • H03M13/1122Soft-decision decoding, e.g. by means of message passing or belief propagation algorithms using approximations for check node processing, e.g. an outgoing message is depending on the signs and the minimum over the magnitudes of all incoming messages according to the min-sum rule storing only the first and second minimum values per check node
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/03Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
    • H03M13/05Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits
    • H03M13/11Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits using multiple parity bits
    • H03M13/1102Codes on graphs and decoding on graphs, e.g. low-density parity check [LDPC] codes
    • H03M13/1105Decoding
    • H03M13/1131Scheduling of bit node or check node processing
    • H03M13/1134Full parallel processing, i.e. all bit nodes or check nodes are processed in parallel
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/03Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
    • H03M13/05Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits
    • H03M13/11Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits using multiple parity bits
    • H03M13/1102Codes on graphs and decoding on graphs, e.g. low-density parity check [LDPC] codes
    • H03M13/1148Structural properties of the code parity-check or generator matrix
    • H03M13/116Quasi-cyclic LDPC [QC-LDPC] codes, i.e. the parity-check matrix being composed of permutation or circulant sub-matrices
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/65Purpose and implementation aspects
    • H03M13/6502Reduction of hardware complexity or efficient processing
    • H03M13/6505Memory efficient implementations

Abstract

提供一种不使用RAM、无需复杂控制、构造简单、且可进行高速处理的低密度奇偶校验码的解码装置,该装置具有:变量-校验信息生成部(11),在和校验矩阵中的一个配置对应的寄存器31之间,设置了包括加法器(41)的变量-校验计算块(32);和校验-变量信息生成部(12),在和校验矩阵中的一个配置对应的寄存器(61)之间,设置了包括比较器的校验-变量计算块(62)。

Description

解码装置及接收装置
技术领域
本发明涉及到一种将接收数据序列分割为一定长度的块,并按照各个块独立地附加冗余序列的块纠错的解码装置、及含有解码装置的接收装置,尤其涉及到一种低密度奇偶校验(LDPC)码的解码装置及含有解码装置的接收装置。
背景技术
在卫星通信系统、移动通信系统等中,为了满足所需电力的降低、天线的小型化等系统构成上的要求,导入了具有较大编码优势的纠错编码技术。低密度奇偶校验码作为具有非常大的编码优势的纠错码为世人所知,正被导入到各种通信系统、磁记录等存储装置中。
低密度奇偶校验码不仅表示一种纠错编码方式,而是具有校验矩阵稀疏(矩阵中的成分基本为0,是1的成分个数非常少)的特征的纠错码的总称。
并且还具有以下特征:通过稀疏的校验矩阵的选择,使用和积(sum-product)算法、最小和(min-sum)算法等反复解码方式,从而可构成具有与理论界限接近的非常大的编码优势的纠错编码方式(例如参照非专利文献1、及非专利文献2)。
低密度奇偶校验码的解码装置交互进行:变量节点处理装置的变量-校验信息的更新、及校验节点处理装置的校验-变量信息的更新,在以一定次数更新了各信息后,根据校验-变量信息和接收数据获得发送数据的推定结果(例如参照非专利文献2及非专利文献3)。
非专利文献1:Robert G.Gallager著,“Low-Density Parity-CheckCodes”,美国,MIT出版,1963年,第39~56页
非专利文献2:David J.C.MacKay著,“Good Error-CorrectingCodes Based on Very Sparse Matrices”,美国,IEEE Transactions onformation Theory,Vol.45,No2,1999年3月,第399~431页
非专利文献3:Jinghu Chen,Marc P.C.Fossorier著,“NearOptimun Universal Belief Propagation Based Decoding of Low-DensityParity Check Codes”,美国,IEEE Transactions on Communications,Vol.50,No.3,2002年3月,第406~414页
发明内容
发明要解决的问题
低密度奇偶校验码的解码方式的技术问题包括:为了存储在解码处理过程中产生的数据而需要较多的随机存取存储器(RAM);因RAM的存取速度而限制了解码处理整体的速度等。
具体而言,低密度奇偶校验码的解码处理由二种处理装置进行的信息更新构成,暂时存储信息的存储装置是必不可少的。并且,当存在与校验矩阵中的一个数成比例的个数的信息、并由作为存储装置的RAM将其保持时,需要多个RAM,存在解码处理的容许量被对RAM的存取速度限制的问题。
并且,为了减少RAM个数会伴随着对可同时存取的信息的限制,因此需要仔细调整信息更新的时间、及地址的生成,存在装置构成变得复杂的问题。
因此,本发明的目的在于提供一种可高速进行低密度奇偶校验码的解码处理、构成简单、规模小的解码装置,及含有解码装置的接收装置。
用于解决问题的手段
本发明的解码装置,对纠错编码方式中的模拟循环型低密度奇偶校验码进行解码,输出作为解码结果的推定发送位列,其特征在于,具有:变量-校验信息生成单元,含有多个具有多个寄存器的规定级数的反馈移位寄存器,输入接收数据列,生成并输出变量-校验信息、及推定发送位列,该变量-校验信息是包括对数似然比和事前值的和的数据;校验-变量信息生成单元,含有多个具有多个寄存器的规定级数的反馈移位寄存器,当输入变量-校验信息生成单元所输出的变量-校验信息时,输出包括根据输入的变量-校验信息生成的数据的校验-变量信息;和标准化计算单元,对校验-变量信息生成单元输出的校验-变量信息所包括的规定数据乘以提前确定的常数,并输入到变量-校验信息生成单元,变量-校验信息生成单元包括变量-校验计算单元,在该变量-校验信息生成单元包括的反馈移位寄存器所具有的寄存器中保存的数据中,向规定的数据加上和校验-变量信息生成单元的输出对应的数据,并保存到下一级的寄存器中,在规定的时间下,输出作为寄存器所保存的数据的变量-校验信息、及推定发送位列,校验-变量信息生成单元包括校验-变量计算单元,在该校验-变量信息生成单元包括的反馈移位寄存器所具有的寄存器中保存的数据中的二个、及变量-校验信息生成单元输出的数据中,选择值最小的数据、及第2小的数据,并保存到下一级的寄存器中,在规定的时间下,将寄存器所保存的数据作为校验-变量信息输出,变量-校验计算单元分别设置在变量-校验信息生成单元包括的反馈移位寄存器所具有的寄存器之间,校验-变量计算单元分别设置在校验-变量信息生成单元包括的反馈移位寄存器所具有的寄存器之间。
优选的是,变量-校验信息生成单元包括与该变量-校验信息生成单元所包括的反馈移位寄存器的动作时钟同步的第1时钟计数器,校验-变量信息生成单元包括与该校验-变量信息生成单元所包括的反馈移位寄存器的动作时钟同步的第2时钟计数器,变量-校验计算单元根据第1时钟计数器的值,选择与变量-校验信息生成单元包括的寄存器中保存的数据的一部分相加的数据,校验-变量信息生成单元的寄存器存储第2时钟计数器计数的值,校验-变量计算单元,在和变量-校验信息生成单元的输出对应的数据为最小值时,输出和寄存器存储的第2时钟计数器计数的值对应的数值,并保存到下一级的寄存器中。
优选的是,变量-校验信息生成单元包括与该变量-校验信息生成单元所包括的反馈移位寄存器的动作时钟同步的第1时钟计数器,校验-变量信息生成单元包括与该校验-变量信息生成单元所包括的反馈移位寄存器的动作时钟同步的第2时钟计数器,变量-校验计算单元,根据第1时钟计数器的值、及分配到变量-校验信息生成单元的寄存器的数值,选择与变量-校验信息生成单元包括的反馈移位寄存器所具有的寄存器中保存的数据的一部分相加的数据,校验-变量信息生成单元的寄存器存储第2时钟计数器计数的值,校验-变量计算单元,在和变量-校验信息生成单元的输出对应的数据为最小值时,输出寄存器存储的第2时钟计数器计数的值、及分配到变量-校验信息生成单元的寄存器的数据的组,并保存到下一级寄存器中。
优选的是,变量-校验信息生成单元、及校验-变量信息生成单元,分别以规定次数重复进行变量-校验信息的生成及输出、和校验-变量信息的生成及输出,变量-校验信息生成单元,以规定次数重复进行变量-校验信息的生成后,输出推定发送位列。
优选的是,变量-校验信息生成单元分别包括:与构成模拟循环型低密度奇偶校验码的校验矩阵的循环矩阵的尺寸同数的寄存器、及变量-校验计算单元,校验-变量信息生成单元分别包括:与构成模拟循环型低密度奇偶校验码的校验矩阵的循环矩阵的尺寸同数的寄存器、及校验-变量计算单元。
本发明的接收装置具有解码装置,该解码装置对纠错编码方式中的模拟循环型低密度奇偶校验码进行解码,输出推定发送位列,该接收装置的特征在于,具有:解调器,解调并输出接收的信息;和同步控制-数据变换装置,将解调器的输出数据变换为和解码装置对应的形式的输入数据,使帧同步,并输出到解码装置,解码装置具有:变量-校验信息生成单元,含有多个具有多个寄存器的规定级数的反馈移位寄存器,输入接收数据列,生成并输出变量-校验信息、及推定发送位列,该变量-校验信息是包括对数似然比和事前值的和的数据;校验-变量信息生成单元,含有多个具有多个寄存器的规定级数的反馈移位寄存器,当输入变量-校验信息生成单元所输出的变量-校验信息时,输出包括根据输入的变量-校验信息生成的数据的校验-变量信息;和标准化计算单元,对校验-变量信息生成单元输出的校验-变量信息所包括的规定数据乘以提前确定的常数,并输入到变量-校验信息生成单元,变量-校验信息生成单元包括变量-校验计算单元,在该变量-校验信息生成单元包括的反馈移位寄存器所具有的寄存器中保存的数据中,向规定的数据加上和校验-变量信息生成单元的输出对应的数据,并保存到下一级的寄存器中,在规定的时间下,输出作为寄存器所保存的数据的变量-校验信息、及推定发送位列,校验-变量信息生成单元包括校验-变量计算单元,在该校验-变量信息生成单元包括的反馈移位寄存器所具有的寄存器中保存的数据中的二个、及变量-校验信息生成单元输出的数据中,选择值最小的数据、及第2小的数据,并保存到下一级的寄存器中,在规定的时间下,将寄存器所保存的数据作为校验-变量信息输出,变量-校验计算单元分别设置在变量-校验信息生成单元包括的反馈移位寄存器所具有的寄存器之间,校验-变量计算单元分别设置在校验-变量信息生成单元包括的反馈移位寄存器所具有的寄存器之间。
发明效果
根据本发明,是不使用用于暂时存储信息的存储装置(RAM)的构成,因此可高速地进行低密度奇偶校验码的解码处理。并且,无需RAM的地址生成控制等,可使控制、构造简化。
并且,校验-变量计算单元在变量-校验信息生成单元的输出所对应的数据为最小值时,输出与寄存器存储的第2时钟计数器计数的值对应的数值,这种构造下可缩小解码装置整体的装置规模。
并且,校验-变量计算单元在变量-校验信息生成单元的输出所对应的数据为最小值时,输出寄存器存储的第2时钟计数器计数的值、及分配到变量-校验信息生成单元的寄存器的数值的组,这种构造下可生成高精度的校验-变量信息。
附图说明
图1是表示本发明的解码装置的第1实施方式的一个构成例的框图。
图2是表示变量-校验信息生成部的一个构成例的框图。
图3是表示变量-校验寄存器块的一个构成例的框图。
图4是表示变量-校验计算器块的一个构成例的框图。
图5是表示校验-变量信息生成部的一个构成例的框图。
图6是表示校验-变量寄存器块的一个构成例的框图。
图7是表示校验-变量计算器块的一个构成例的框图。
图8是表示解码装置整体动作的说明图。
图9是表示使用了RAM的低密度奇偶校验码的解码装置的一个构成例的框图。
图10是表示简化的变量-校验计算器块的一个构成例的框图。
图11是表示简化的校验-变量计算器块的一个构成例的框图。
图12是表示使用了本发明的解码装置的数据通信(存储)装置的一个构成例的框图。
标号说明
11  变量-校验信息生成部
12  校验-变量信息生成部
13  标准化计算部
21  变量-校验寄存器块
22、52  计数器块
23、41、101  加法器
31、61  寄存器
32  变量-校验计算器块
33、63  连线开关
34、64  输出开关
42、102  正负反转装置
43、73、74、113  选择器
44、71、72、111、112  比较器
45、75、103、114  XOR门
51  校验-变量寄存器块
62  校验-变量计算器块
81  变量节点处理装置
82  地址生成控制装置
83  校验节点处理装置
84  信息存储器块
121  数据发送装置
122  编码装置
123、127  同步控制/数据变换装置
124  调制器
125  数据接收装置
126  解调器
128  解码装置
具体实施方式
实施方式1
参照附图对本发明的解码装置的第1实施方式进行说明。图1是表示本发明的解码装置的第1实施方式的一个构成例的框图。
本发明的解码装置包括:变量-校验信息生成部(变量-校验信息生成单元)11、校验-变量信息生成部(校验-变量信息生成单元)12、及标准化计算部(标准化计算单元)13。
在变量-校验信息生成部11中,从连接了解码装置的通信线路输入接收数据序列。一般情况下,在接收数据中产生噪声等引起的错误,因此解码装置推定发送位列,并输出作为推定的发送位列的推定发送位列。
模拟循环型低密度奇偶校验码在校验矩阵的形式上具有特征。模拟循环型低密度奇偶校验码的校验矩阵如(公式1)所示,是以a×a循环矩阵为成分的m×n块矩阵(a,m,n表示正整数)。
[数学式1]
Figure S2006800354137D00081
其中,(公式1)的Hi、j表示下述(公式2)所述的a×a循环矩阵。(i表示0到m-1之间的整数,j表示0到n-1之间的整数)。
[数学式2]
Figure S2006800354137D00091
循环矩阵如(公式2)所示,第2行的行矢量是使第1行的行矢量向左循环1位而成。以下,第k行的列矢量(k表示2到n之间的整数)是使第1行的行矢量向左循环k-1位而成。
以下说明校验矩阵为(公式1)的矩阵的模拟循环型的低密度奇偶校验码的解码装置。
在变量-校验信息生成部11中,输入从通信线路输入的接收数据序列,并经由标准化计算部13输入校验-变量信息生成部12的输出。校验-变量信息生成部12的输出由分类为和校验矩阵的行块数m相同种类的数据序列。此外对校验-变量信息生成部12的输出稍后论述。
图2是表示变量-校验信息生成部11的一个构成例的框图。变量-校验信息生成部11包括:与校验矩阵的列块总数n同数的变量-校验寄存器块21、加法器23;与变量-校验寄存器块21所包括的寄存器31的时钟同步的作为计数器的计数器块(第1时钟计数器)22。
下述校验-变量信息生成部12的输出经由标准化计算部13被输入到各变量-校验寄存器块21。并且,各变量-校验寄存器块21的输出由加法器23加到相当于该变量-校验寄存器块21所对应的校验矩阵的列块的、各接收数据列的一部分上,该加法结果成为变量-校验信息生成部11的输出。变量-校验寄存器块21具有和校验矩阵的列块总数n相同的个数,变量-校验信息生成部11的输出由和各变量-校验寄存器块21的输出对应的n个系统构成。
图3是表示变量-校验寄存器块21的一个构成例的框图。变量-校验寄存器块21包括:和构成校验矩阵的循环矩阵的尺寸同数的a个寄存器31、配置在寄存器31之间的变量-校验计算器块(变量-校验计算单元)32、连线开关33、输出开关34。此外,循环矩阵的尺寸是指循环矩阵的行数或列数。其中,循环矩阵是正方形矩阵,因此行数和列数相同。
各寄存器31经由各变量-校验计算器块32串联连接。并且,输出开关34与最后一级的寄存器31连接。输出开关34,将最后一级的寄存器31的输出反馈到最前一级的寄存器31的输入,在反馈规定次数后,进行切换以输出到加法器23。
此外,以将寄存器的输出输入到后一级的寄存器的方式串联连接,并以使最后一级的寄存器的输出反馈到最前一级的寄存器的输入的方式进行连接的块,被称为反馈移位寄存器。
在变量-校验寄存器块21中输入和校验矩阵的行块数相同个数的m系统的数据列,当所有数据被输入后,输出开关34进行切换,依次输出a个寄存器31所保存的数据的一部分。
连线开关33,通过根据校验矩阵提前确定的m个的每一个由a位构成的位列h0 (i),h1 (i),...,ha-1 (i),确定对变量-校验寄存器块21的输入是否输入到变量-校验计算器块32中(i表示0到m-1之间的整数)。即,连线开关33根据是否连接了变量-校验寄存器块21的输入端(未图示)、及各变量-校验计算器块32之间,来确定对变量-校验寄存器块21的输入是否输入到变量-校验计算器块32中。
具体而言,例如hk (i)为1时,在图3中,连接标记为hk (i)的部分,为0时不连接标记为hk (i)的部分(k表示从0到a-1之间的整数)。变量-校验寄存器块21包括与连线数相同个数的变量-校验计算器块32。对该m个a位的位列h0 (i),h1 (i),...,ha-1 (i)(i=0,1,...,m-1)的选择方法稍后论述。
图4是表示变量-校验计算器块32的一个构成例的框图。变量-校验计算器包括加法器41、比较器44、选择器43、正负反转装置42、及XOR门45。对变量-校验计算器块32的动作稍后论述。
图5是表示校验-变量信息生成部12的一个构成例的框图。校验-变量信息生成部12包括:与校验矩阵的行块总数m同数的校验-变量寄存器块51、与校验-变量寄存器块51所含有的寄存器61的时钟同步的作为计数器的计数器块(第2时钟计数器)52。
各校验-变量寄存器块51的输入是变量-校验信息生成部11的输出。即,变量-校验信息生成部11的各校验-变量寄存器块21的输出经由加法器23输入到校验-变量信息生成部11。
校验-变量寄存器块51与校验矩阵的行块数m同数,校验-变量信息生成部11的输出由与各校验-变量寄存器块51的输出对应的m个系统构成。
图6是表示校验-变量寄存器块51的一个构成列的框图。校验-变量寄存器块51包括:与构成校验矩阵的循环矩阵的尺寸同数的a个寄存器61、设置在寄存器61之间的校验-变量计算器块(校验-变量计算单元)62、连线开关63、输出开关64。
各寄存器61经由各校验-变量计算器块62串联连接。并且,输出开关64与最后一级的寄存器61连接。输出开关64,将最后一级寄存器61的输出反馈到最前一级寄存器61的输入,在反馈规定次数后,进行切换以输出到标准化计算部13。
校验-变量寄存器块51中输入和校验矩阵的行块数同数的m系统的数据列,当输入了所有数据后,切换输出开关64,依次输出a个寄存器61所保存的数据。
连线开关63,通过根据校验矩阵提前确定的n个的每一个由a位构成的位列g0 (i),g1 (i),...,ga-1 (i),确定对校验-变量寄存器块51的输入是否输入到校验-变量计算器块62中(j表示0到n-1之间的整数)。即,连线开关63根据是否连接了校验-变量寄存器块51的输入端(未图示)、及各校验-变量计算器块62之间,来确定对校验-变量寄存器块51的输入是否输入到校验-变量计算器块62中。
具体而言,例如gk (j)为1时,在图6中,连接标记为gk (j)的部分,为0时不连接标记为gk (j)的部分(k表示从0到a-1之间的整数)。校验-变量计算器块62包括与连线数相同个数的校验-变量计算器。对该n个a位的位列g0 (j),g1 (j),...,ga-1 (j)(j=0,1,...,n-1)的选择方法稍后论述。
图7是表示校验-变量计算器块62的一个构成例的框图。校验-变量计算器块62包括比较器71及72、选择器73及74、XOR门75。对校验-变量计算器块62的动作稍后论述。
本发明的解码装置将变量-校验信息生成部的输出输入到校验-变量信息生成部12,将校验-变量信息生成部12的输出输入到变量-校验信息生成部11。以下将重复规定次数的该处理后硬判断变量-校验信息生成部11的输出而获得的位序列作为推定发送位列,并作为解码装置的输出。在一次重复处理中,需要2×a块(a是构成校验矩阵的循环矩阵的尺寸),在2×a×重复次数的块中结束解码处理。
对确定上述变量-校验寄存器块21的连线的m个a位列的选择进行说明。
如上所述,变量-校验寄存器块21与校验矩阵的列块的总数n同数,分别对应于校验矩阵的列块。如(公式1)及(公式2)所示,第j列块(j表示从0到n-1之间的整数)由m个a×a循环矩阵H0,j,H1,j,...,Hm-1,j构成,这些循环矩阵的各行矢量与将(f0 (0,j),f1 (0,j),...,fa-1 (0,j)),(f0 (1,j),f1 (1,j),...,fa-1 (1,j)),...,(f0 (m-1,j),f1 (m-1,j),...,fa-1 (m-1,j))循环移位后的矢量一致。确定变量-校验寄存器块21的连线的m个a位列h0 (i),h1 (i),...,ha-1 (i)(i=0,1,...,m-1),利用上述行矢量并通过下述(公式3)来确定。
[数学式3]
h k ( l ) = f k ( i , j ) , k=0,1,----,a-1;i=0,1,----,m--1;---(3)
如上所示,n个变量-校验寄存器块21中的连线取决于其对应的校验矩阵的列块。以下对其进行区分,将校验矩阵的第j列块(j表示从0到n-1之间的整数)所对应的连线标记为hk (i,j)
接着说明在各变量-校验寄存器块21中在寄存器31中保存、更新的信息(数据)。在寄存器31中保存、更新的信息由信息部分、及其他1位构成。信息部分是相当于变量-校验信息(VC信息)的数据,其他1位部分表示在上一次的重复处理中由变量-校验计算器块32计算的信息部分的数据的正负。对该数据稍后详述。
说明确定上述校验-变量寄存器块51的连线的n个a位列的选择。如上所述,校验-变量寄存器块51与校验矩阵的行块总数m同数,其对应于各校验矩阵的行块。
如(公式1)及(公式2)所示,第i行块(i表示从0到m-1之间的整数)由n个a×a循环矩阵Ho,j,H1,j,...,Hm-1,j构成,这些循环矩阵的各行矢量与将(f0 (i,0),f1 (i,0),...,fa-1 (i,0)),(f0 (i,1),f1 (i,1),...,fa-1 (i,1)),...,(f0 (i,n-1),f1 (i,n-1,...,fa-1 (i,n-1)循环移位后的矢量一致。
确定上述校验-变量寄存器块51的连线的n个a位列g0 (j),g1 (j),...,ga-1 (j)(j=0,1,...,n-1),利用上述行矢量通过下述(公式4)来确定。
[数学式4]
g k ( j ) = f ( k - 1 ) mod a ( i , j ) , k=0,1,---,a-1;j=0,1,---,n-1;---(4)
如上所示,n个校验-变量寄存器块51中的连线取决于其对应的校验矩阵的行块。以下对其进行区分,将校验矩阵的第i列块(i表示从0到m-1之间的整数)所对应的连线标记为gk (i,j)
接着说明在各校验-变量寄存器块51中在寄存器61中保存、更新的信息(数据)。在寄存器61中保存、更新的信息由信息部分、时钟计数器的值、及其他1位构成。信息部分是相当于校验-变量信息(CV信息)的数据。
并且,其他1位部分是由变量-校验信息生成部11计算、与输入到校验-变量信息生成部12的信息的硬判断结果(以1位量化)对应的出错,这些值全部为0时,变量-校验信息生成部11计算出的信息的硬判断结果变为代码字,成为解码装置输出的推定发送位列。对该数据稍后详述。
接着说明本发明的第1实施方式的动作。首先说明变量-校验信息生成部11的输入及输出、校验-变量信息生成部12的输入及输出。校验-变量信息生成部12的输出数据经由标准化计算部13被输入到变量-校验信息生成部11。
该校验-变量信息生成部12的输出数据分为四大种类,将其分别标记为Lt,1 (s)、Lt,2 (s)、P2(s,t)及μ(s,t)。其中,s表示0到m-1之间的整数,t表示0到a-1之间的整数。Lt,1 (s)、Lt,2 (s)是相当于校验-变量信息的数据。P2(s,t)是表示校验-变量信息生成部12的输入数据(变量-校验信息生成部11的输出数据)的硬判断结果(例如最上位的位)与(公式1)的校验矩阵的积的1位数据。
μ(s,t)根据计算精度而分别使用。具体而言,当要求最高计算精度时,μ(s,t)是表示二个整数的组的数据,在比其粗略些的计算精度即可的情况下,μ(s,t)是表示一个整数的数据。再粗略些的计算精度即可的情况下,不使用μ(s,t)的数据。随着计算精度下降,μ(s,t)的数据量变少,因此装置规模变小。
以下说明μ(s,t)表示二个整数的组的最高精度的情况。对μ(s,t)稍后论述。
在标准化计算部13中输入校验-变量信息生成部12的输出数据Lt,1 (s)、Lt,2 (s)、P2(s,t)及μ(s,t)。标准化计算部13对P2(s,t)及μ(s,t)直接输出和输入完全相同的数据,对Lt,1 (s)、Lt,2 (s)输出乘以提前确定的常数α后的αLt,1 (s)及αLt,2 (s)
因此,实际如图1所示,校验-变量信息生成部12的输出数据Lt,1 (s)、Lt,2 (s)、P2(s,t)及μ(s,t)并不是直接输入到变量-校验信息生成装置,而是经由标准化计算部13将校验-变量信息生成部12的输出数据αLt,1 (s)、αLt,2 (s)、P2(s,t)及μ(s,t)输入到变量-校验信息生成部11。
此外,在以下说明中,为了防止标记混乱,省略该记述(乘以常数α的记述),将输入到变量-校验信息生成部11的数据以校验-变量信息生成部12的输出数据的记法、即Lt,1 (s)、Lt,2 (s)、P2(s,t)及μ(s,t)表示。
变量-校验信息生成部11的输入数据是校验-变量信息生成部12的输出、及通信线路的输出Fi(i表示0到na-1之间的整数)。
校验-变量信息生成部12如上所述,包括和校验矩阵(公式1)的行块总数m同数的校验-变量寄存器块51,第s个校验-变量寄存器块51在时刻t下的输出变为Lt,1 (s)、Lt,2 (s)、P2(s,t)及μ(s,t)(s表示0到m-1之间的整数,t表示0到a-1之间的整数)。这些输出是输出时在校验-变量寄存器块51中由各寄存器61保存的数据。
变量-校验信息生成部11的输出成为校验-变量信息生成部12的输入数据。将该输入数据用Zr (l)表示。其中,l表示0到n-1之间的整数,r表示0到a-1之间的整数。变量-校验信息生成部11如上所述,包括和校验矩阵(公式1)的列块总数n同数的变量-校验寄存器块21,第1个变量-校验寄存器块21的第r个输出变为Zr (l)(l表示0到n-1之间的整数,r表示0到a-1之间的整数),Zr (l)及下述1位信息P1 (l,r)是在输出时在变量-校验寄存器块21中由各寄存器31保存的数据。
说明变量-校验信息生成部11的动作。变量-校验信息生成部11中,如上所述,输入Lt,1 (s)、Lt,2 (s)、P2(s,t)、μ(s,t)及通信线路的输出Fi(i表示0到na-1之间的整数,s表示0到m-1之间的整数,t表示0到a-1之间的整数)。并且,变量-校验信息生成部11采用下述(公式5)计算出Zr (l)(l表示0到n-1之间的整数,r表示0到a-1之间的整数)。
[数学式5]
Z r ( l ) = F la + r + Σ j = 0 a - 1 ( Σ i = 0 ( l , r ) ≠ μ ( i , j ) m - 1 ( - 1 ) P 1 ( l , r ) ⊕ P 2 ( i , j ) h r + j ( i , l ) L j , 1 ( i )
+ Σ i = 0 ( l , r ) = μ ( i , j ) m - 1 ( - 1 ) P 1 ( l , r ) ⊕ P 2 ( i , j ) h r + j ( i , l ) L j , 2 ( i ) ) - - - ( 5 )
在(公式5)中,第1项表示对数似然比,第2项表示事前值。其中,各P1 (l,r)是1位数据,由变量-校验信息生成部11中的变量-校验寄存器块21的各寄存器31提前保存。变量-校验信息生成部11采用(公式5)计算变量-校验信息数据Zr (l)(l表示0到n-1之间的整数,r表示0到a-1之间的整数),并且使用计算出的Zr (l),通过以下(公式6)更新P1 (l,r)
[数学式6]
即,P1 (l,r)是相当于Zr (l)的最上位的位的1位数据,该数据的列(位列)作为推定发送位列从解码装置输出。
说明变量-校验寄存器块21的动作。变量-校验信息生成部11具有与校验矩阵(公式1)的列块总数n同数的变量-校验寄存器块21,各变量-校验寄存器块21具有与构成校验矩阵的循环矩阵的尺寸同数的a个寄存器31。
其中,将第1个变量-校验寄存器块21中的第r个寄存器31中保存的信息数据的初始状态(时刻0下的值)记作Zr (l)(a),将时刻a-j下的信息数据记作Zr (l)(j)(l表示0到n-1之间的整数,r表示0到a-1之间的整数,j表示0到a-1之间的整数)。初始状态为Zr (l)(a)=0时,时刻a-j下的信息数据根据时刻a-j-1下的信息数据通过下述(公式7)计算。
[数学式7]
Z r ( l ) ( j ) = Z r + 1 ( l ) ( j + 1 ) + Σ i = 0 ( l , r - j ) ≠ μ ( i , j ) m - 1 ( - 1 ) P 1 ( l , r + 1 ) i + 1 ⊕ P 2 ( i , j ) h r ( i , l ) L j , 1 ( i )
+ Σ i = 0 ( l , r - j ) = μ ( i , j ) m - 1 ( - 1 ) P 1 ( l , r + 1 ) j + 1 ⊕ P 2 ( i , j ) h r ( i , l ) L j , 2 ( i ) - - - ( 7 )
其中(公式7)的标记P1 (l,r) j,使初始状态(时刻0下的值)为P1 (l,r) a=P1 (l,r),在时刻a-j中,通过以下(公式8)更新。
[数学式8]
P1(l,r)j=P1(l,r)j+1      -----(8)
在变量-校验信息生成部11的、第1个变量-校验寄存器块21中,在时刻a-j下保存在第r个寄存器31中的数据是Zr (l)(j)和P1 (l,r) j,在各时刻下通过(公式7)和(公式8)对其更新的装置是图4所示的变量-校验计算器块32。
对变量-校验计算器块32进行说明。在变量-校验计算器块32中输入cnt、μ、L1、L2、P2、P1-in及Zin。具体而言,比较器44中输入cnt和μ。选择器43中输入L1、L2及比较器44的输出。XOR门45中输入P2及P1-in。在正负反转装置42中输入选择器43的输出、XOR门45的输出。在加法器41中输入正负反转装置42的输出、及Zin
因此,加法器41,将选择器43根据作为输入到比较器44的时钟计数器的值的cnt、与分配到寄存器的0到n-1之间的整数的比较结果而选择的L1或L2加到Zin
即,根据时钟计数器的值、及分配到寄存器31的0到n-1之间的整数,选择加到Zin的值。
并且,μ、L1、L2及P2分别对应于(公式7)的μ(i,j)、Lj,1 (s)、Lj,2 (s)及P2 (i,j),cnt表示在每个变量-校验寄存器块21中提前确定的0到n-1之间的整数1、及与时钟同步的计数器的值所对应的0到a-1之间的整数的组。并且,变量-校验计算器块32相对于输入Zin及P1-in,而输出下述(公式9)、(公式10)所示的z1-out及P1-out
[数学式9]
Figure S2006800354137D00191
[数学式10]
P1-out=P1-in  ----(10)
并且,输出的z1-out及P1-out经由寄存器31分别作为Zin及P1-in输入到下一级的变量-校验计算器块32中。
通过在第1个变量-校验寄存器块21中的第r个寄存器31和第r+1个寄存器31之间,设置与{hr (0,1),hr (1,1),hr (2,1),...,hr (m-1,1)}中含有的1的个数相同个数的该变量-校验计算器块32(其中,l表示0到n-1之间的整数,r表示0到a-1之间的整数),可实现(公式7)所示的计算处理。
通过(公式7)及(公式8)的计算,在时刻a下,第1个变量-校验寄存器块21中的第r个寄存器31中所保存的信息数据Zr (l)(0)、与通信线路输出Fla+r的算术和如下述(公式11)所示,与(公式5)中的Zr (l)一致。
[数学式11]
Z r ( l ) = F la + r + Z r ( l ) ( 0 ) - - - - ( 11 )
在输入完所有输入数据的时刻(时刻a),变量-校验信息生成部11的、第1个变量-校验寄存器块21中的第r个寄存器31中保存的数据是Zr (l)(0)和P1 (l,r) 0。并且,利用(公式11)加上Zr (l)(0),将各变量-校验寄存器块21的第0个寄存器31中保存的数据输出到校验-变量信息生成部12。
变量-校验寄存器块21在输出的同时,将第j+1个寄存器31中保存的数据移位到第j个寄存器31(j表示0到a-2之间的整数),并经过第0个寄存器31而依次输出。并且,变量-校验寄存器块21使第a-1个寄存器31的信息部分初始化,向另外的1位数据部分输入由(公式6)从输出的信息数据Zr (l)导出的1位数据,从而在所有输出完成的时刻将各寄存器31初始化。
从而,在变量-校验信息生成处理中,在输入及与之相伴的处理中需要a时钟,在输出中需要a时钟,将这些动作分别称为:变量-校验信息生成部11的输入处理模式、变量-校验信息生成部11的输出模式。
根据以上处理,通过图2、图3、图4所示的各构成部,变量-校验信息Zr (l)不使用RAM,而由在寄存器31和寄存器31之间设置的主要由加法器41构成的变量-校验计算器块32计算出来。
接着说明校验-变量信息生成部12的动作。校验-变量信息生成部12的输出经由标准化计算部13被输入到变量-校验信息生成部11。如上所述,将这些数据标记为Lt,1 (s)、Lt,2 (s)、P2(s,t)及μ(s,t)(s表示0到m-1之间的整数,t表示0到a-1之间的整数)。
校验-变量信息生成部12如上所述,具有与校验矩阵(公式1)的列块总数m同数的校验-变量寄存器块51,第s个变量-校验寄存器块51中的a-1-t个的输出变为Lt,1 (s)、Lt,2 (s)、P2(s,t)及μ(s,t)(s表示0到m-1之间的整数,t表示0到a-1之间的整数)。并且,其成为在输出时在校验-变量寄存器块12中由各寄存器61保存的数据。
校验-变量信息生成部12如上所述,输入变量-校验信息生成部11的输出Zr (l)(l表示0到n-1之间的整数,r表示0到a-1之间的整数),通过下述(公式12)及(公式13)计算出Lt,1 (s)、Lt,2 (s)
[数学式12]
L t , 1 ( s ) = min W t ( s ) - - - - - ( 12 )
[数学式13]
L t , 2 ( s ) = min W t ( s ) \ { L t , 1 ( s ) } - - - - - ( 13 )
其中,Wt (s)表示下述(公式14)所示的集合。即,Lt,1 (s)成为(公式14)的集合Wt (s)的要素中值最小的,Lt,2 (s)成为集合Wt (s)的要素中值第2小的。
[数学式14]
W t ( s ) = { | Z j ( i ) | : f t + j ( s , i ) = 1,0 &le; i < n , 0 &le; j < a } - - - - ( 14 )
此外,|Zj (i)|表示Zj (i)的绝对值。并且,P2(s,t)由下述(公式15)计算出来。
[数学式15]
P 2 ( s , t ) = &Sigma; j = 0 a - 1 &Sigma; i = 0 n - 1 f t + j ( s , i ) P 1 ( i , j ) - - - - - ( 15 )
其中,(公式15)的各P1 (i,j)如上述(公式6)所示,是表示Zj (i)的正负的1位数据。从而,虽然变量-校验信息生成部11的输出Zr (l)被输入到校验-变量信息生成部12,但在校验-变量信息生成部12的内部,以分割为表示Zr (l)的正负的1位(最上位的位)、及表示其以外的绝对值的数据的形式进行处理。
并且,在(公式14)的集合Wt (s)的要素中,μ(s,t)的值最小的数是|ZY (λ)|时(即Lt,1 (s)=|ZY (λ)|时),满足下述(公式16)。
[数学式16]
μ(S,t)=(λ,γ)-----(16)
对校验-变量寄存器块51的动作进行说明。校验-变量信息生成部12具有与(公式1)所示的校验矩阵的行块总数m同数的校验-变量寄存器块51,各校验-变量寄存器块51具有与构成校验矩阵的循环矩阵的尺寸同数的a个寄存器61。
其中,将第s个校验-变量寄存器块51中的第t个寄存器61所保存的信息数据部分的初始状态(时刻0下的值)标记为Lt,1 (s)(0)、Lt,2 (s)(0),将相当于1位信息P2(s,t)的数据的初始状态标记为P2(s,t)0,将各数据的时刻j下的数据分别标记为Lt,1 (s)(j)、Lt,2 (s)(j)、P2(s,t)j(s表示0到m-1之间的整数,t表示0到a-1之间的整数,j表示1到a之间的整数)。
作为初始状态,将Lt,1 (s)(0)、Lt,2 (s)(0)设为寄存器61可表现的最大数、P2(s,t)0=0时,时刻j下的各数据根据时刻j-1下的各数据通过下述(公式17)、(公式18)及(公式19)计算。
[数学式17]
L t , 1 ( s ) ( j ) = min W t - 1 ( s ) ( j - 1 ) - - - - - ( 17 )
[数学式18]
L t , 2 ( s ) ( j ) = min W t - 1 ( s ) ( j - 1 ) \ { L t , 1 ( s ) ( j ) } - - - - - ( 18 )
[数学式19]
P 2 ( s , t ) j = P 2 ( s , t - 1 ) j - 1 + &Sigma; i = 0 n - 1 g t ( s , i ) P 1 ( i , j - 1 ) - - - ( 19 )
其中,(公式17)及(公式18)的Wt-1 (s)(j-1)表示下述(公式20)所示的集合。
[数学式20]
W t - 1 ( s ) ( j - 1 ) = { | Z j - 1 ( i ) | : g t ( s , i ) = 1,0 &le; i < n }
U { L t - 1,1 ( s ) ( j - 1 ) , L t - 1,2 ( s ) ( j - 1 ) } - - - - - ( 20 )
即,(公式17)的Lt,1 (s)(j)是Wt-1 (s)(j-1)的要素中值最小的,(公式18)的Lt,2 (s)(j)是Wt-1 (s)(j-1)的要素中值第2小的。即,在Wt-1 (s)(j-1)的要素中,选择值最小的及值第2小的,保存到下一级的寄存器61中。
(公式16)的μ(s,t)也一样,将时刻0下的初始状态设为μ(s,t)0时,时刻j下的数据μ(s,t)j通过下述(公式21)计算。
[数学式21]
在校验-变量信息生成部12的第s个校验-变量寄存器块51中,时刻j下的第t个寄存器61中保存的数据是Lt,1 (s)(j)、Lt,2 (s)(j)、P2(s,t)j及μ(s,t)j,在各时刻下通过(公式17)、(公式18)、(公式19)及(公式21)对其进行更新处理的块是校验-变量计算器块62。
对校验-变量计算器块62进行说明。在校验-变量计算器块62中输入Z、cnt、P2-in、μin、L1-in及L2-in
具体而言,在XOR门75中输入P2-in和表示Z的正负的信息(Z的最上位的位)。在比较器71中输入L2-in和Z的绝对值(Z的最上位以外的位)。在比较器72中输入L1-in和Z的绝对值。在选择器73中输入Z的绝对值、L1-in、L2-in及比较器71的输出,并根据比较器71的输出结果来切换输出。在选择器74中输入cnt、μin及比较器72的输出,并根据比较器72的输出结果来切换输出。
此外,在图7中,用白色菱形表示将Z分割为最上位的位(表示Z的正负的信息)、及最上位以外的位(Z的绝对值)的情况,将Z的最上位的位输入到XOR门75,将Z的最上位以外的位输入到比较器71、72、选择器73。
并且,Z对应于(公式20)的Zj-1 (i),cnt表示0到n-1之间的整数、及与时钟同步的计数值所对应的0到a-1之间的整数的组。校验-变量计算器块62相对于输入L1-in、L2-in、P2-in及μin,输出下述(公式22)、(公式23)、(公式24)及(公式25)所示的L1-out、L2-out、P2-out及μout
[数学式22]
Figure S2006800354137D00241
[数学式23]
Figure S2006800354137D00251
[数学式24]
Figure S2006800354137D00252
[数学式25]
Figure S2006800354137D00253
即,校验-变量计算器块62如(公式24)所示,将目前为止计算出的Z中最小的值设为L1-out,经由寄存器61输出到下一级的校验-变量计算器块62。并且,下一级的校验-变量计算器块62如(公式25)所示,在作为L1-in输入的前一级的L1-out值最小时,作为μout输出作为cnt的0到n-1之间的整数、及与时钟同步的计数值所对应的0到a-1之间的整数的组。
在第s个校验-变量寄存器块51中的第t个寄存器61及第t+1个寄存器61之间,设置与矩阵{gt (s,0),gt (s,1),gt (s,2)...,gt (s,n-1)}中含有的1的个数相同个数的校验-变量计算器块62(s表示0到m-1之间的整数,t表示0到a-1之间的整数),从而可实现(公式17)、(公式18)、(公式19)及(公式21)所示的计算处理。
通过(公式17)、(公式18)、(公式19)及(公式21)的计算,在时刻a下,第s个校验-变量寄存器块51中的第t个寄存器61中所保存的数据Lt,1 (s)(a)、Lt,2 (s)(a)、P2(s,t)a及μ(s,t)a如下述(公式26)、(公式27)、(公式28)及(公式29)所示,与(公式12)中的Lt,1 (s)、(公式13)中的Lt,2 (s)、(公式15)中的P2(s,t)、及(公式16)中的μ(s,t)一致。
[数学式26]
L t , 1 ( s ) = L t , 1 ( s ) ( a ) - - - - - ( 26 )
[数学式27]
L t , 2 ( s ) = L t , 2 ( s ) ( a ) - - - - - ( 27 )
[数学式28]
P2(s,t)=P2(s,t)a  ------(28)
[数学式29]
μ(s,t)=μ(s,t)a  -----(29)
在输入完所有输入数据的时刻(时刻a),校验-变量信息生成部12的第s个校验-变量寄存器块51中的第t个寄存器61中所保存的数据是Lt,1 (s)(a)、Lt,2 (s)(a)、P2(s,t)a及μ(s,t)a,从各校验-变量寄存器块51的第a-1个寄存器61将上述数据输出到变量-校验信息生成部11。校验-变量信息生成部12在输出的同时将第j个寄存器61中保存的数据向第j+1个寄存器61移位(j表示0到a-2之间的整数),经过第a-1个寄存器61而依次输出。
通过使第0个寄存器61初始化,在所有输出完成的时刻,各寄存器61被初始化。从而在校验-变量信息生成处理中,输入及与之相伴的处理需要a时钟、输出需要a时钟,将这些动作分别称为:校验-变量信息生成部12的输入处理模式、校验-变量信息生成部12的输出模式。根据以上处理,通过图5、图6、图7所示的块,校验-变量信息生成处理不使用RAM,而由在移位寄存器和移位寄存器之间设置的主要由加法器构成的校验-变量计算器块62实现。
并且,变量-校验信息生成部11、校验-变量信息生成部12、及标准化计算部13分别由IC(Integrated Circuit,集成电路)等半导体器件实现。因此,变量-校验信息生成部11含有的各个块、校验-变量信息生成部12含有的各个块分别由IC等半导体器件实现。
接着说明图1所示的本发明的解码装置的整体动作。图8是表示解码装置的整体动作的说明图。
解码装置的处理在变量-校验信息生成部11为输出模式、校验-变量信息生成部12为输入处理模式的情况下开始。
解码处理开始时,将变量-校验寄存器块21中的寄存器31所保存的数据全部初始化为0,将校验-变量寄存器块51中的寄存器61所保存的数据初始化。
从开始到经过a时钟为止的期间内,变量-校验信息生成部11输出到校验-变量信息生成部12的信息数据,通过开始时将变量-校验寄存器块21中的寄存器31所保存的数据全部初始化为0,从而与接收数据Fla+r一致(l表示0到n-1之间的整数,r表示0到a-1之间的整数)。
从开始经过了a时钟后,变量-校验信息生成部11对校验-变量信息生成部12的信息数据的输出结束。在该时刻下,在变量-校验寄存器块21中的寄存器31中,如上所述设置(保存)表示Fla+r的正负的1位,在校验-变量寄存器块51中的寄存器61中保存下一个输出到变量-校验信息生成部12的数据。
以下如图8所示,按照a时钟切换输入处理模式、输出模式。即,交互进行:由校验-变量信息生成部12向变量-校验信息生成部11输出信息数据;及从变量-校验信息生成部11向校验-变量信息生成部12输出信息数据。
各模式下的校验-变量信息生成部12和变量-校验信息生成部11,以提前设定的次数重复上述处理。并且,最后使变量-校验信息生成部11为输出模式、校验-变量信息生成部12为输入处理模式,变量-校验信息生成部11将表示输出数据正负的1位作为解码装置的输出而依次输出。
此外,在校验-变量信息生成部12中处理的数据Ps(s,t)可作为用于判断上述解码处理结果中是否校正了接收数据中含有的错误的数据来使用。
如上所述,根据本实施方式,可不使用RAM,而通过多个寄存器31和设置在各寄存器31之间的主要由加法器构成的变量-校验计算器块32,计算出变量-校验信息和推定发送位。
并且,根据本实施方式,可不使用RAM,而通过多个寄存器61和设置在各寄存器61之间的主要由比较器构成的校验-变量计算器块62计算出校验-变量信息。
并且,通过重复上述处理,解码装置解码输入的接收数据序列,输出推定发送位列。即,不使用RAM的简单构造的解码装置不受RAM存取速度的限制,可高速地对输入的接收数据序列进行解码,并输出推定发送位列。
并且,根据本实施方式,在校验-变量信息生成部12中处理的数据P2(s,t)可作为用于判断是否可校正接收数据中含有的错误的数据来使用。
此外,参照附图对使用了作为存储装置的RAM的低密度奇偶校验码的解码装置的一个构成例进行说明。图9是表示使用了RAM的低密度奇偶码的解码装置的一个构成例的框图。该解码装置包括:作为存储装置的RAM(未图示),用于保存作为纠错对象的接收数据;信息存储器块84,由作为存储装置的RAM实现,该RAM用于保存被称为信息的、在解码处理过程中产生的数据;地址生成控制装置82,生成并控制RAM的地址;变量节点处理装置81,用于更新信息;和校验节点处理装置83。
信息分为变量-校验信息及校验-变量信息二大类。这些信息进一步被详细分类。校验矩阵H的行数为M、列数为N时(M和N分别表示正整数),变量-校验信息被分类为Zi、j,校验-变量信息被分类为Li、j。
附加字母i和j分别表示0到M-1之间的整数、及0到N-1之间的整数。i对应于校验矩阵的行矢量或列矢量成分,j对应于校验矩阵的列矢量成分或行矢量成分。变量节点处理装置81根据校验-变量信息及接收数据,进行更新变量-校验信息的处理。变量节点处理具体如下述(公式30)表示。
[数学式30]
Z i , j = F j + &Sigma; i &prime; L i &prime; , j - - - - - - ( 30 )
其中,j表示0到N-1之间的整数,i表示0到M-1之间的整数,Fj表示对应的接收数据,i′是和i不一致的0到M-1之间的整数、且对应的校验矩阵的行矢量的与j对应的成分为1的所有成分。校验节点处理装置83根据变量-校验信息进行更新校验-变量信息的处理。校验节点处理具体以下述(公式31)表示。
[数学式31]
L i , j = ( - 1 ) P i , j min j &prime; | Z i , j &prime; | . - - - - - - ( 31 )
其中,j表示0到N-1之间的整数,i表示0到M-1之间的整数,Pi,j表示0或1的任一个。并且j′是和j不一致的0到N-1之间的整数、且对应的校验矩阵的列矢量的与i对应的成分为1的所有成分。
此外,当校验矩阵是由循环矩阵块构成的低密度奇偶校验码(模拟循环型低密度奇偶校验码)时,如果利用校验矩阵的规则性,则可使(公式30)中的加法部分、及(公式31)中的最小值计算处理部分的索引成图,可简化用于RAM存取的地址生成处理。
实施方式2
接下来说明本发明的第2实施方式。首先,说明在第1实施方式的说明中上述校验-变量信息生成部12计算出的四种数据之一的μ(s,t)的作用(s表示0到m-1之间的整数,t表示0到a-1之间的整数)。
数据μ(s,t)如上所述,由0到n-1之间的整数、及0到a-1之间的整数的二个整数组构成,在(公式7)所示的变量-校验信息生成部11所进行的处理中,为了确定加上校验-变量信息生成部12输出的二个数据Lt,1 (s)和Lt,2 (s)的哪一个,而变得必要。
Lt,1 (s)和Lt,2 (s)如上所述,在(公式14)中的集合Wt (s)的要素中,分别表示值最小的、及第2小的,将(公式7)所示的变量-校验信息生成部11的处理置换为下述(公式32)时,在该计算中算出的值取决于校验矩阵(公式1)及(公式2)的选择,但比较近似于(公式7)计算出的值。
[数学式32]
Z r ( l ) &prime; = F la + r + &Sigma; j = 0 a - 1 &Sigma; i = 0 m - 1 ( - 1 ) P 1 ( l , r ) &CirclePlus; P 2 ( i , j ) h r + j ( i , l ) L j , 2 ( i ) - - - - - - ( 32 )
即,在公式(14)中的集合Wt (s)的要素中不是同时使用值最小的和第2小这两者,而仅使用第2小的,从而在校验-变量信息生成部12中无需计算μ(s,t)。
因此,可减少校验-变量寄存器块51中的各寄存器61的位尺寸、简化校验-变量计算器块62构造、及简化变量-校验计算器块32的构造,从而可减小解码装置整体的装置规模、并简化处理。
图10是表示简化的变量-校验计算器块32的一个构成例的框图。
如图10所示,简化的变量-校验计算器块32包括正负反转装置102、加法器101、和XOR门103。在XOR门103中输入P2和P1-in。在正负反转装置102中输入L2和XOR门103的输出。在加法器101中输入Zin和正负反转装置102的输出。此外,图10所示的输入输出数据和在图4中用相同标记的(P1-in等)所示的数据相同,因此省略说明。
如上所述,由于简化的变量-校验计算器块32不需要输入μ、及L1,因此和图4所示的第1实施方式的变量-校验计算器32相比,构造简化,可减少对应的变量-校验寄存器块21中的寄存器31的位尺寸。
图11是表示简化的校验-变量计算器块62的一个构成例的框图。
如图11所示,简化的校验-变量计算器块62包括选择器113、比较器111及112。在XOR门114中输入表示Z的正负的信息(Z的最上位的位)和P2-in。在比较器111中输入Z的绝对值(Z的最上位以外的位)和L2-in。在比较器112中输入Z的绝对值和L1-in。在选择器113中输入Z的绝对值、L1-in、L2-in、比较器111的输出、及比较器112的输出。
此外,图11中用白色菱形表示将Z分割为最上位的位(表示Z正负的信息)、及最上位以外的位(Z的绝对值)的情况,将Z的最上位的位输入到XOR门75,Z的最上位以外的位输入到比较器111、112、选择器113。
此外,图11所示的输入输出数据在图7中分别与同一标记(P2-in等)所示的数据相同,因此省略说明。
如上所述,简化的校验-变量计算器块62无需输入μ,因此和图7所示的第1实施方式的校验-变量计算器62相比,构造简化,可减少对应的校验-变量寄存器块51中的寄存器61的位尺寸。
如上所述,根据本实施方式,由于可减少校验-变量寄存器块51中的寄存器61的位尺寸,因此可减小解码装置整体的装置规模、并简化处理。
此外,通过利用下述(公式33)进行计算,和(公式32)相比计算精度较高,可以比(公式7)简单的处理计算出消息数据。
[数学式33]
Z r ( l ) &prime; &prime; = F la + r + &Sigma; j = O a - 1 ( &Sigma; i = O r &NotEqual; &mu; , ( i , j ) m - 1 ( - 1 ) P 1 ( l , r ) &CirclePlus; P 2 ( i , j ) h r + j ( i , j ) L j , 1 ( i )
+ &Sigma; i = 0 r = &mu; &prime; ( i , j ) m - 1 ( - 1 ) P 1 ( l , r ) &CirclePlus; P 2 ( i , j ) h r + j ( i , l ) L j , 2 ( i ) ) - - - - - ( 33 )
(公式33)中的μ’(i,j)表示0到a-1之间的整数。校验-变量计算器块62在和第1实施方式相同的时间下(作为L1-in输入的前一级的L1-out的值变得最小时),输出μ’(i,j)。其中,μ’(i,j)在第1实施方式的(公式7)及(公式25)中,与μ(i,j)表示0到n-1之间的整数、与0到a-1之间的整数的组时相比,减少了信息量,因此变量-校验信息数据的计算精度下降。
校验-变量计算器块62、及变量-校验计算器块32的基本构造分别和第1实施方式所示的图7及图4相同,但减小了校验-变量寄存器块51中的各寄存器61的位尺寸,从而可减小解码装置整体的装置规模。
如上所述,如采用(公式33),通过μ(s,t)的选择,在计算精度和装置规模的平衡中,对于计算精度和装置规模的均衡,可从三种中进行选择(如第1实施方式那样使用μ(s,t),如第2实施方式那样使用μ’(i,j),或不使用μ)。
实施例1
图12是表示使用了本发明的解码装置128的数据通信(存储)装置的一个构成例的框图。
数据通信(存储)装置包括数据发送装置121、和数据接收装置(接收装置)125。并且,数据发送装置121包括:模拟循环型低密度奇偶校验码的编码装置122;同步控制/数据变换装置(同步控制-数据变换装置)123,用于进行与帧同步的控制、及用于变换为和调制器124对应的数据;和调制器124。调制器124将信息输出到通信线路或存储装置。
数据接收装置125包括:解调器126,对从通信线路或存储装置接收的信息进行解调;同步控制/数据变换装置127,将解调器126的输出数据变换为解码装置126的输入数据,并进行与帧同步的处理;及本发明的解码装置128。
作为数值例,使校验矩阵的列块的总数n为65、校验矩阵的行块的总数m为8、循环矩阵的尺寸a为63时,可将帧长4095位的位列作为帧单位。
并且,(公式2)所示的校验矩阵中的各个块的行矢量(f0 (i,j),f1 (i,j),...,fa-1 (i,j)的加权为1以下(i表示0到7之间的整数,j表示0到64之间的整数),在65个变量-校验寄存器块21所分别含有的多个寄存器31中,使设置在一组寄存器31之间的变量-校验计算器块32的个数为2以下。并且,8个校验-变量寄存器块51所分别含有的多个寄存器61中,设置在一组寄存器61之间的校验-变量计算器块62的个数设定为2以下。
这样一来,通过数百千门的装置规模可实现数百兆位每秒的处理。
工业利用性
本发明可作为用于满足卫星通信、移动通信系统等中的所需电力的降低、天线的小型化等系统构成上的要件的纠错技术来使用。并且,也可作为提高磁记录等存储装置的可靠性的纠错技术来使用。

Claims (23)

1.一种解码装置,对纠错编码方式中的模拟循环型低密度奇偶校验码进行解码,输出作为解码结果的推定发送位列,其特征在于,
具有:变量-校验信息生成单元,含有多个具有多个寄存器的规定级数的反馈移位寄存器,输入接收数据列,生成并输出变量-校验信息、及推定发送位列,该变量-校验信息是包括对数似然比和事前值的和的数据;
校验-变量信息生成单元,含有多个具有多个寄存器的规定级数的反馈移位寄存器,当输入上述变量-校验信息生成单元所输出的变量-校验信息时,输出包括根据输入的上述变量-校验信息生成的数据的校验-变量信息;和
标准化计算单元,对上述校验-变量信息生成单元输出的校验-变量信息所包括的规定数据乘以提前确定的常数,并输入到上述变量-校验信息生成单元,
上述变量-校验信息生成单元包括变量-校验计算单元,在该变量-校验信息生成单元包括的反馈移位寄存器所具有的寄存器中保存的数据中,向规定的数据加上和上述校验-变量信息生成单元的输出对应的数据,并保存到下一级的寄存器中,在规定的时间下,输出作为上述寄存器所保存的数据的变量-校验信息、及推定发送位列,
上述校验-变量信息生成单元包括校验-变量计算单元,在该校验-变量信息生成单元包括的反馈移位寄存器所具有的寄存器中保存的数据中的二个、及上述变量-校验信息生成单元输出的数据中,选择值最小的数据、及第2小的数据,并保存到下一级的寄存器中,在规定的时间下,将上述寄存器所保存的数据作为校验-变量信息输出,
上述变量-校验计算单元分别设置在上述变量-校验信息生成单元包括的反馈移位寄存器所具有的寄存器之间,
上述校验-变量计算单元分别设置在上述校验-变量信息生成单元包括的反馈移位寄存器所具有的寄存器之间。
2.根据权利要求1所述的解码装置,其中,
上述变量-校验信息生成单元包括与该变量-校验信息生成单元所包括的反馈移位寄存器的动作时钟同步的第1时钟计数器,
上述校验-变量信息生成单元包括与该校验-变量信息生成单元所包括的反馈移位寄存器的动作时钟同步的第2时钟计数器,
上述变量-校验计算单元根据上述第1时钟计数器的值,选择与上述变量-校验信息生成单元包括的寄存器中保存的数据的一部分相加的数据,
上述校验-变量信息生成单元的寄存器存储上述第2时钟计数器计数的值,
上述校验-变量计算单元,在和上述变量-校验信息生成单元的输出对应的数据为最小值时,输出和上述寄存器存储的上述第2时钟计数器计数的值对应的数值,并保存到下一级的寄存器中。
3.根据权利要求1所述的解码装置,其中,
上述变量-校验信息生成单元包括与该变量-校验信息生成单元所包括的反馈移位寄存器的动作时钟同步的第1时钟计数器,
上述校验-变量信息生成单元包括与该校验-变量信息生成单元所包括的反馈移位寄存器的动作时钟同步的第2时钟计数器,
上述变量-校验计算单元,根据上述第1时钟计数器的值、及分配到上述变量-校验信息生成单元的寄存器的数值,选择与上述变量-校验信息生成单元包括的反馈移位寄存器所具有的寄存器中保存的数据的一部分相加的数据,
上述校验-变量信息生成单元的寄存器存储上述第2时钟计数器计数的值,
上述校验-变量计算单元,在和上述变量-校验信息生成单元的输出对应的数据为最小值时,输出上述寄存器存储的上述第2时钟计数器计数的值、及分配到上述变量-校验信息生成单元的寄存器的数据的组,并保存到下一级寄存器中。
4.根据权利要求1至3的任意一项所述的解码装置,其中,
上述变量-校验信息生成单元、及上述校验-变量信息生成单元,分别以规定次数重复进行上述变量-校验信息的生成及输出、和上述校验-变量信息的生成及输出,
上述变量-校验信息生成单元,以上述规定次数重复进行变量-校验信息的生成后,输出推定发送位列。
5.根据权利要求1至3的任意一项所述的解码装置,其中,
上述变量-校验信息生成单元分别包括:与构成模拟循环型低密度奇偶校验码的校验矩阵的循环矩阵的尺寸同数的上述寄存器、及上述变量-校验计算单元,
上述校验-变量信息生成单元分别包括:与构成模拟循环型低密度奇偶校验码的校验矩阵的循环矩阵的尺寸同数的上述寄存器、及上述校验-变量计算单元。
6.根据权利要求4所述的解码装置,其中,
上述变量-校验信息生成单元分别包括:与构成模拟循环型低密度奇偶校验码的校验矩阵的循环矩阵的尺寸同数的上述寄存器、及上述变量-校验计算单元,
上述校验-变量信息生成单元分别包括:与构成模拟循环型低密度奇偶校验码的校验矩阵的循环矩阵的尺寸同数的上述寄存器、及上述校验-变量计算单元。
7.根据权利要求1所述的解码装置,其中,
上述变量-校验信息生成单元具有:
与校验矩阵的列块的总数n同数的变量-校验寄存器块;
加法器;和
与上述变量-校验寄存器块包括的寄存器的时钟同步的第1时钟计数器,
上述变量-校验寄存器块的输出,通过上述加法器与相当于上述变量-校验寄存器块所对应的校验矩阵的列块的、接收数据列的一部分相加,并输出相加结果,
上述变量-校验寄存器块具有:
与构成上述校验矩阵的循环矩阵的尺寸a同数的级数的寄存器;
分别配置在上述寄存器之间的多个变量-校验计算单元;和
输出开关,输入最后一级的寄存器的输出,并进行切换以将上述最后一级的寄存器的输出连接到初始级的寄存器的输入、或提供到上述加法器的输入,
在上述变量-校验寄存器块中输入和校验矩阵的行块数m同数的系统的数据列,
还具有连线开关,根据通过上述校验矩阵提前确定的m个的每一个由a位构成的位列,来确定对上述变量-校验寄存器块的输入是否输入到上述变量-校验计算单元中,
上述变量-校验计算单元,根据上述第1计数器的计数值,选择与输入的信息数据相加的数据,由上述变量-校验计算单元在上述寄存器中保存、更新的信息包括:相当于变量-校验信息(VC信息)的数据;和表示上述变量-校验计算单元计算的信息部分的数据的正负的信息。
8.根据权利要求7所述的解码装置,其中,
在第1个变量-校验寄存器块中的第r个寄存器及第r+1个寄存器之间,设置有与校验矩阵{hr (0,1),hr (1,1),hr (2,1),...,hr (m-1,1)}中含有的1的个数相同个数的上述变量-校验计算单元,其中,1表示0到n-1之间的整数,r表示0到a-1之间的整数。
9.根据权利要求7或8所述的解码装置,其中,
上述变量-校验计算单元,将cnt、μ、相当于校验-变量信息的第1、第2数据L1、L2、P2、P1-in、及Zin作为输入,
其中,μ、L1、L2及P2分别对应于将第r个寄存器中保存的信息数据的初始状态、即时刻0下的值以Zr (1)(a)表示时,对于时刻a-j下的信息数据Zr (1)(j)的公式
Z r ( l ) ( j ) = Z r + 1 ( l ) ( j + 1 ) + &Sigma; i = 0 ( l , r - j ) &NotEqual; &mu; ( i , j ) m - 1 ( - 1 ) P 1 ( l , r + 1 ) j + 1 &CirclePlus; P 2 ( i , j ) h r ( i , l ) L j , 1 ( i )
+ &Sigma; i = 0 ( l , r - j ) = &mu; ( i , j ) m - 1 ( - 1 ) P 1 ( l , r + 1 ) j + 1 P 2 ( i , j ) h r ( i , l ) L j , 2 ( i )
中的μ(i,j)、Lj,1 (a)、Lj,2 (s)、及P2(i,j),
cnt表示按照各变量-校验寄存器块提前确定的0到n-1之间的整数1、及与时钟同步的计数器的值所对应的0到a-1之间的整数的组,
上述变量-校验计算单元具有:
输入cnt、μ的比较器;
选择器,将L1、L2作为输入,将上述比较器的输出作为选择控制信号而输出其中一个;
输入P2、P1-in的“异”电路;
正负反转装置,接收上述选择器的输出,根据上述“异”电路的输出,反转上述选择器的输出的极性;和
加法器,将Zin和上述正负反转电路的输出相加,将相加结果作为Z1-out输出,
对输入Zin及P1-in,输出以如下公式
P1-out=P1-in
给出的Z1-out及P1-out,经由上述寄存器向下一级的变量-校验计算单元分别作为Zin及P1-in提供。
10.根据权利要求9所述的解码装置,其中,
在上述变量-校验计算单元中,去除了上述比较器和上述选择器,
具有上述”异”电路、上述正负反转装置、上述加法器,
将L2、P2、P1-in及Zin作为输入,输出Z1-out及P1-out
11.根据权利要求1所述的解码装置,其中,
上述校验-变量信息生成单元具有:与校验矩阵的行块总数m同数的校验-变量寄存器块;和与上述校验-变量寄存器块包括的寄存器的时钟同步的作为计数器的第2时钟计数器,
上述校验-变量寄存器块包括:
与构成校验矩阵的循环矩阵的尺寸同数的级数的寄存器;
分别设置在上述寄存器之间的校验-变量计算单元;
连线开关,根据通过校验矩阵提前确定的n个的每一个由a位构成的位列,来确定对上述校验-变量寄存器块的输入是否输入到上述校验-变量计算单元中;和
输出开关,进行切换以将最后一级的寄存器的输出连接到初始级的寄存器的输入、或输出到上述标准化计算单元,
在上述校验-变量寄存器块中,由上述校验-变量计算单元在上述寄存器中保存、更新的信息包括:相当于校验-变量信息(CV信息)的数据;上述第2时钟计数器的值;及由上述变量-校验信息生成单元算出、成为与输入到上述校验-变量信息生成单元的信息的硬判断结果相对的出错的信息。
12.根据权利要求11所述的解码装置,其中,
在第s个校验-变量寄存器块中的第t个寄存器及第t+1个寄存器之间,设置有与矩阵G{gt (s,0),gt (s,1),gt (s,2)...,gt (s,n-1)}中含有的1的个数相同个数的上述校验-变量计算单元,其中矩阵G与校验矩阵H相关,GTH=0,GT是G的转置矩阵,s表示0到m-1之间的整数,t表示0到a-1之间的整数。
13.根据权利要求11或12所述的解码装置,其中,
上述校验-变量计算单元,
将Z、cnt、P2-in、μin、L1-in、及L2-in作为输入,
具有:“异”电路,输入P2-in及表示Z的正负的信息;
第1比较器,输入L2-in和Z的绝对值;
第2比较器,输入L1-in和Z的绝对值;
第1选择器,输入Z的绝对值、L1-in、L2-in,将上述第1比较器的输出作为选择控制信号输入,根据上述第1比较器的输出结果切换输出,而输出L1-out、L2-out;和
第2选择器,输入cnt、μin,将上述第2比较器的输出作为选择控制信号输入,根据上述第2比较器的输出结果切换输出,而输出μout
Z对应于Zj-1 (i)
cnt表示0到n-1之间的整数、及和时钟同步的计数值所对应的0到a-1之间的整数的组,
校验-变量计算器块,相对于输入L1-in、L2-in、P2-in及μin,输出以如下公式给出的L1-out、L2-out、P2-out及μout
Figure FSB00000372091400071
Figure FSB00000372091400072
Figure FSB00000372091400073
Figure FSB00000372091400074
14.根据权利要求13所述的解码装置,其中,
在上述校验-变量计算单元中去除了上述第2选择器,
具有上述”异”电路、上述第1、第2比较器、上述第1选择器,
将Z、P2-in、L1-in及L2-in作为输入,输出L1-out、L2-out及P2-out
15.一种解码装置,至少包括:变量-校验信息生成单元,输入接收数据列,生成并输出变量-校验信息(VC信息)、及推定发送位列,该变量-校验信息是包括对数似然比和事前值的和的数据;及
校验-变量信息生成单元,输出包括根据上述变量-校验信息而生成的数据的校验-变量信息(CV信息),
对纠错编码方式中的模拟循环型低密度奇偶校验码进行解码,输出作为解码结果的推定发送位列,该解码装置的特征在于,
上述变量-校验信息生成单元具有:
与校验矩阵的列块总数n同数的变量-校验寄存器块;
加法器;和
与上述变量-校验寄存器块包括的寄存器的时钟同步的第1时钟计数器,
上述变量-校验寄存器块的输出,通过上述加法器而与相当于上述变量-校验寄存器块所对应的校验矩阵的列块的、接收数据列的一部分相加,并输出相加结果,
上述变量-校验寄存器块具有:
与构成上述校验矩阵的循环矩阵的尺寸a同数的级数的寄存器;
分别配置在上述寄存器之间的多个变量-校验计算单元;和
输出开关,输入最后一级的寄存器的输出,并进行切换以将上述最后一级的寄存器的输出连接到初始级的寄存器的输入、或提供到上述加法器的输入,
在上述变量-校验寄存器块中输入和校验矩阵的行块数m同数的系统的数据列,
还具有连线开关,根据通过上述校验矩阵提前确定的m个的每一个由a位构成的位列,来确定对上述变量-校验寄存器块的输入是否输入到上述变量-校验计算单元中,
上述变量-校验计算单元根据上述第1计数器的计数值,选择与输入的信息数据相加的数据,
由上述变量-校验计算单元在上述寄存器中保存、更新的信息包括:相当于变量-校验信息的数据;和表示上述变量-校验计算单元计算的信息部分的数据的正负的信息,
上述校验-变量信息生成单元具有:
与校验矩阵的行块总数m同数的校验-变量寄存器块;和
与上述校验-变量寄存器块包括的寄存器的时钟同步的作为计数器的第2时钟计数器,
上述校验-变量寄存器块包括:
与构成校验矩阵的循环矩阵的尺寸同数的级数的寄存器;
分别设置在上述寄存器之间的校验-变量计算单元;
连线开关,根据通过上述校验矩阵提前确定的n个的每一个由a位构成的位列,来确定对上述校验-变量寄存器块的输入是否输入到上述校验-变量计算单元中;和
输出开关,进行切换以将最后一级的寄存器的输出反馈连接到初始级的寄存器的输入、或作为输出而输出,
在上述校验-变量寄存器块中,由上述校验-变量计算单元在上述寄存器中保存、更新的信息包括:相当于校验-变量信息(CV信息)的数据;上述第2时钟计数器的值;及由上述变量-校验信息生成单元算出、成为与输入到上述校验-变量信息生成单元的信息的硬判断结果相对的出错的信息。
16.根据权利要求15所述的解码装置,其中,
在第1个变量-校验寄存器块中的第r个寄存器及第r+1个寄存器之间,设置有与校验矩阵{hr (0,1),hr (1,1),hr (2,1),...,hr (m-1,1)}中含有的1的个数相同个数的上述变量-校验计算单元,其中,1表示0到n-1之间的整数,r表示0到a-1之间的整数。
17.根据权利要求15所述的解码装置,其中,
在第s个校验-变量寄存器块中的第t个寄存器及第t+1个寄存器之间,设置有与矩阵G{gt (s,0),gt (s,1),gt (s,2)...,gt (s,n-1)}中含有的1的个数相同个数的上述校验-变量计算单元,其中矩阵G与校验矩阵H相关,GTH=0,GT是G的转置矩阵,s表示0到m-1之间的整数,t表示0到a-1之间的整数。
18.根据权利要求15或16所述的解码装置,其中,
上述变量-校验计算单元,将cnt、μ、相当于校验-变量信息的第1、第2数据L1、L2、P2、P1-in、及Zin作为输入,
其中,μ、L1、L2及P2分别对应于将第r个寄存器中保存的信息数据的初始状态、即时刻0下的值以Zr (1)(a)表示时,对于时刻a-j下的信息数据Zr (1)(j)的公式
Z r ( l ) ( j ) = Z r + 1 ( l ) ( j + 1 ) + &Sigma; i = 0 ( l , r - j ) &NotEqual; &mu; ( i , j ) m - 1 ( - 1 ) P 1 ( l , r + 1 ) j + 1 &CirclePlus; P 2 ( i , j ) h r ( i , l ) L j , 1 ( i )
+ &Sigma; i = 0 ( l , r - j ) = &mu; ( i , j ) m - 1 ( - 1 ) P 1 ( l , r + 1 ) j + 1 P 2 ( i , j ) h r ( i , l ) L j , 2 ( i )
中的μ(i,j)、Lj,1 (s)、Lj,2 (s)、及P2(i,j),
cnt表示按照各变量-校验寄存器块提前确定的0到n-1之间的整数1、及与时钟同步的计数器的值所对应的0到a-1之间的整数的组,
上述变量-校验计算单元具有:
输入cnt、μ的比较器;
选择器,将L1、L2作为输入,将上述比较器的输出作为选择控制信号而输出其中一个;
输入P2、P1-in的“异”电路;
正负反转装置,接收上述选择器的输出,根据上述“异”电路的输出,反转上述选择器的输出的极性;和
加法器,将Zin和上述正负反转电路的输出相加,将相加结果作为Z1-out输出,
对输入Zin及P1-in,输出以如下公式
Figure FSB00000372091400103
P1-out=P1-in
给出的Z1-out及P1-out,经由上述寄存器向下一级的变量-校验计算单元分别作为Zin及P1-in提供。
19.根据权利要求15或17所述的解码装置,其中,
上述校验-变量计算单元,
将Z、cnt、P2-in、μin、L1-in、及L2-in作为输入,
具有:“异”电路,输入P2-in及表示Z的正负的信息;
第1比较器,输入L2-in和Z的绝对值;
第2比较器,输入L1-in和Z的绝对值;
第1选择器,输入Z的绝对值、L1-in、L2-in,将上述第1比较器的输出作为选择控制信号输入,根据上述第1比较器的输出结果切换输出,而输出L1-out、L2-out;和
第2选择器,输入cnt、μin,将上述第2比较器的输出作为选择控制信号输入,根据上述第2比较器的输出结果切换输出,而输出μout
Z对应于Zj-1 (i)
cnt表示0到n-1之间的整数、及和时钟同步的计数值所对应的0到a-1之间的整数的组,
校验-变量计算器块,相对于输入L1-in、L2-in、P2-in及μin,输出以如下公式给出的L1-out、L2-out、P2-out及μout
Figure FSB00000372091400111
Figure FSB00000372091400112
Figure FSB00000372091400113
20.根据权利要求18所述的解码装置,其中,
在上述变量-校验计算单元中,去除了上述比较器和上述选择器,
具有上述”异”电路、上述正负反转装置、上述加法器,
将L2、P2、P1-in及Zin作为输入,输出Z1-out及P1-out
21.根据权利要求19所述的解码装置,其中,
在上述校验-变量计算单元中去除了上述第2选择器,
具有上述”异”电路、上述第1、第2比较器、上述第1选择器,
将Z、P2-in、L1-in及L2-in作为输入,输出L1-out、L2-out及P2-out
22.一种接收装置,具有解码装置,该解码装置对纠错编码方式中的模拟循环型低密度奇偶校验码进行解码,输出推定发送位列,该接收装置的特征在于,
具有:解调器,解调并输出接收的信息;和
同步控制-数据变换装置,将上述解调器的输出数据变换为和上述解码装置对应的形式的输入数据,使帧同步,并输出到上述解码装置,
上述解码装置具有:变量-校验信息生成单元,含有多个具有多个寄存器的规定级数的反馈移位寄存器,输入接收数据列,生成并输出变量-校验信息、及推定发送位列,该变量-校验信息是包括对数似然比和事前值的和的数据;
校验-变量信息生成单元,含有多个具有多个寄存器的规定级数的反馈移位寄存器,当输入上述变量-校验信息生成单元所输出的变量-校验信息时,输出包括根据输入的上述变量-校验信息生成的数据的校验-变量信息;和
标准化计算单元,对上述校验-变量信息生成单元输出的校验-变量信息所包括的规定数据乘以提前确定的常数,并输入到上述变量-校验信息生成单元,
上述变量-校验信息生成单元包括变量-校验计算单元,在该变量-校验信息生成单元包括的反馈移位寄存器所具有的寄存器中保存的数据中,向规定的数据加上和上述校验-变量信息生成单元的输出对应的数据,并保存到下一级的寄存器中,在规定的时间下,输出作为上述寄存器所保存的数据的变量-校验信息、及推定发送位列,
上述校验-变量信息生成单元包括校验-变量计算单元,在该校验-变量信息生成单元包括的反馈移位寄存器所具有的寄存器中保存的数据中的二个、及上述变量-校验信息生成单元输出的数据中,选择值最小的数据、及第2小的数据,并保存到下一级的寄存器中,在规定的时间下,将上述寄存器所保存的数据作为校验-变量信息输出,
上述变量-校验计算单元分别设置在上述变量-校验信息生成单元包括的反馈移位寄存器所具有的寄存器之间,
上述校验-变量计算单元分别设置在上述校验-变量信息生成单元包括的反馈移位寄存器所具有的寄存器之间。
23.一种接收装置,具有权利要求1至21中的任意一项所述的解码装置。
CN2006800354137A 2005-09-26 2006-09-21 解码装置及接收装置 Active CN101273532B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP278429/2005 2005-09-26
JP2005278429A JP4320418B2 (ja) 2005-09-26 2005-09-26 復号装置および受信装置
PCT/JP2006/318728 WO2007034870A1 (ja) 2005-09-26 2006-09-21 復号装置および受信装置

Publications (2)

Publication Number Publication Date
CN101273532A CN101273532A (zh) 2008-09-24
CN101273532B true CN101273532B (zh) 2011-11-16

Family

ID=37888913

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2006800354137A Active CN101273532B (zh) 2005-09-26 2006-09-21 解码装置及接收装置

Country Status (6)

Country Link
US (1) US8074142B2 (zh)
EP (1) EP1940032B1 (zh)
JP (1) JP4320418B2 (zh)
CN (1) CN101273532B (zh)
RU (1) RU2391774C2 (zh)
WO (1) WO2007034870A1 (zh)

Families Citing this family (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8020072B2 (en) * 2006-10-25 2011-09-13 International Business Machines Corporation Method and apparatus for correcting data errors
KR100938068B1 (ko) * 2007-01-30 2010-01-21 삼성전자주식회사 통신 시스템에서 신호 수신 장치 및 방법
JP5333233B2 (ja) 2007-12-13 2013-11-06 日本電気株式会社 復号装置、データ蓄積装置、データ通信システム、および復号方法
US8261166B2 (en) * 2008-09-17 2012-09-04 Seagate Technology Llc Node processor for use with low density parity check decoder using multiple variable node degree distribution codes
US8667376B2 (en) 2008-11-07 2014-03-04 Nec Corporation Decoding device, data communication apparatus having the decoder device, and data memory
CN101807928B (zh) * 2009-02-13 2013-06-05 瑞昱半导体股份有限公司 记录控制器及奇偶校验码译码器
WO2010103757A1 (ja) * 2009-03-13 2010-09-16 日本電気株式会社 復号装置および復号方法
JP5445829B2 (ja) * 2009-05-29 2014-03-19 ソニー株式会社 受信装置、受信方法、およびプログラム、並びに受信システム
CN101699770B (zh) * 2009-10-23 2013-03-06 山东大学 一种高速ldpc码编码器及其编码方法
JP2012080283A (ja) * 2010-09-30 2012-04-19 Jvc Kenwood Corp 復号装置および復号方法
US9048867B2 (en) * 2013-05-21 2015-06-02 Lsi Corporation Shift register-based layered low density parity check decoder
US9543984B2 (en) * 2014-04-25 2017-01-10 Infinera Corporation Efficient storage architecture for low-density parity-check decoding
US20160020783A1 (en) * 2014-07-17 2016-01-21 Lsi Corporation Low Density Parity Check Decoder With Relative Indexing
RU2586338C2 (ru) * 2014-10-08 2016-06-10 Общество с ограниченной ответственностью НПО "Квантрон" Способ установки стойки в грунт и стойка, установленная в грунт
US10110249B2 (en) * 2016-08-23 2018-10-23 Sandisk Technologies Llc Column-layered message-passing LDPC decoder
JP2023037446A (ja) * 2021-09-03 2023-03-15 日本電気株式会社 無線受信装置及びその方法

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1855731A (zh) * 2005-04-25 2006-11-01 索尼株式会社 解码装置及解码方法

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6757122B1 (en) * 2002-01-29 2004-06-29 Seagate Technology Llc Method and decoding apparatus using linear code with parity check matrices composed from circulants
JP4224777B2 (ja) * 2003-05-13 2009-02-18 ソニー株式会社 復号方法および復号装置、並びにプログラム
JP2005045735A (ja) * 2003-07-25 2005-02-17 Sony Corp 符号検出装置及び方法、復号装置及び方法、並びに情報処理装置及び方法
US7484158B2 (en) * 2003-12-03 2009-01-27 Infineon Technologies Ag Method for decoding a low-density parity check (LDPC) codeword
US20050283707A1 (en) * 2004-06-22 2005-12-22 Eran Sharon LDPC decoder for decoding a low-density parity check (LDPC) codewords
US20070089019A1 (en) * 2005-10-18 2007-04-19 Nokia Corporation Error correction decoder, method and computer program product for block serial pipelined layered decoding of structured low-density parity-check (LDPC) codes, including calculating check-to-variable messages
US20090049357A1 (en) * 2007-08-16 2009-02-19 Yeong-Luh Ueng Decoding Method for Quasi-Cyclic Low-Density Parity-Check Codes and Decoder for The Same
US8181083B2 (en) * 2007-08-27 2012-05-15 Stmicroelectronics S.R.L. Methods and architectures for layered decoding of LDPC codes with minimum latency
JP5333233B2 (ja) * 2007-12-13 2013-11-06 日本電気株式会社 復号装置、データ蓄積装置、データ通信システム、および復号方法

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1855731A (zh) * 2005-04-25 2006-11-01 索尼株式会社 解码装置及解码方法

Also Published As

Publication number Publication date
JP4320418B2 (ja) 2009-08-26
JP2007089064A (ja) 2007-04-05
US8074142B2 (en) 2011-12-06
WO2007034870A1 (ja) 2007-03-29
US20100153810A1 (en) 2010-06-17
CN101273532A (zh) 2008-09-24
EP1940032A4 (en) 2015-03-04
EP1940032A1 (en) 2008-07-02
RU2008116679A (ru) 2009-11-10
RU2391774C2 (ru) 2010-06-10
EP1940032B1 (en) 2019-10-30

Similar Documents

Publication Publication Date Title
CN101273532B (zh) 解码装置及接收装置
Lee et al. A Gaussian noise generator for hardware-based simulations
CN101490963B (zh) 纠错编码方法及装置
US20110131462A1 (en) Matrix-vector multiplication for error-correction encoding and the like
CN107786211B (zh) 一种ira-qc-ldpc码的代数结构获取方法、编码方法和编码器
KR100202206B1 (ko) 유한체의 곱셈적역원을 계산하는 데이타 처리 장치
CN102084335A (zh) 任意伽罗瓦域算术在可编程处理器上的实施
US6525679B1 (en) Binary to decimal coder/decoder
JP2009503996A (ja) Ldpc符号のブロックおよびレートに独立な復号の方法および装置
WO2017113507A1 (zh) 一种集合译码方法和集合译码器
JP2007215089A (ja) 復号装置及び復号方法
CN109802688B (zh) 一种多进制ldpc译码系统和方法
Heinlein et al. Projective divisible binary codes
CN104617959A (zh) 一种基于通用处理器的ldpc编译码方法
CN112114776A (zh) 一种量子乘法运算方法、装置、电子装置及存储介质
CN112332857B (zh) 一种用于ldpc码的循环移位网络系统及循环移位方法
CN112364985A (zh) 一种基于分布式编码的卷积优化方法
CN101436864B (zh) 一种低密度奇偶校验码的译码方法及装置
CN107534450B (zh) 矩阵应用装置、矩阵应用方法、以及存储介质
Chervyakov et al. A new model to optimize the architecture of a fault-tolerant modular neurocomputer
Rulling A remark on carry-free binary multiplication
Raviv Asymptotically optimal regenerating codes over any field
CN105450235A (zh) Dtmb中的全对角线准循环矩阵乘法器
CN101741397A (zh) Rs译码装置及其使用的关键多项式求解装置
CN101662291B (zh) 编码装置和方法

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant