CN104917535B - 用于分组码的高阶伴随式计算器和计算高阶伴随式的方法 - Google Patents
用于分组码的高阶伴随式计算器和计算高阶伴随式的方法 Download PDFInfo
- Publication number
- CN104917535B CN104917535B CN201410840383.3A CN201410840383A CN104917535B CN 104917535 B CN104917535 B CN 104917535B CN 201410840383 A CN201410840383 A CN 201410840383A CN 104917535 B CN104917535 B CN 104917535B
- Authority
- CN
- China
- Prior art keywords
- bit
- value
- zero
- multithread
- syndrome
- 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
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L27/00—Modulated-carrier systems
- H04L27/26—Systems using multi-frequency codes
- H04L27/2601—Multicarrier modulation systems
- H04L27/2626—Arrangements specific to the transmitter only
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, 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/03—Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
- H03M13/05—Error 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/13—Linear codes
- H03M13/15—Cyclic codes, i.e. cyclic shifts of codewords produce other codewords, e.g. codes defined by a generator polynomial, Bose-Chaudhuri-Hocquenghem [BCH] codes
- H03M13/151—Cyclic codes, i.e. cyclic shifts of codewords produce other codewords, e.g. codes defined by a generator polynomial, Bose-Chaudhuri-Hocquenghem [BCH] codes using error location or error correction polynomials
- H03M13/1545—Determination of error locations, e.g. Chien search or other methods or arrangements for the determination of the roots of the error locator polynomial
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, 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/03—Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
- H03M13/05—Error 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/13—Linear codes
- H03M13/15—Cyclic codes, i.e. cyclic shifts of codewords produce other codewords, e.g. codes defined by a generator polynomial, Bose-Chaudhuri-Hocquenghem [BCH] codes
- H03M13/159—Remainder calculation, e.g. for encoding and syndrome calculation
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, 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/03—Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
- H03M13/05—Error 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/13—Linear codes
- H03M13/15—Cyclic codes, i.e. cyclic shifts of codewords produce other codewords, e.g. codes defined by a generator polynomial, Bose-Chaudhuri-Hocquenghem [BCH] codes
- H03M13/159—Remainder calculation, e.g. for encoding and syndrome calculation
- H03M13/1595—Parallel or block-wise remainder calculation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L25/00—Baseband systems
- H04L25/02—Details ; arrangements for supplying electrical power along data transmission lines
- H04L25/03—Shaping networks in transmitter or receiver, e.g. adaptive shaping networks
- H04L25/03006—Arrangements for removing intersymbol interference
- H04L25/03343—Arrangements at the transmitter end
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L25/00—Baseband systems
- H04L25/02—Details ; arrangements for supplying electrical power along data transmission lines
- H04L25/03—Shaping networks in transmitter or receiver, e.g. adaptive shaping networks
- H04L25/03828—Arrangements for spectral shaping; Arrangements for providing signals with specified spectral properties
- H04L25/03866—Arrangements for spectral shaping; Arrangements for providing signals with specified spectral properties using scrambling
- H04L25/03872—Parallel scrambling or descrambling
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L7/00—Arrangements for synchronising receiver with transmitter
- H04L7/0016—Arrangements for synchronising receiver with transmitter correction of synchronization errors
- H04L7/002—Arrangements for synchronising receiver with transmitter correction of synchronization errors correction by interpolation
- H04L7/0029—Arrangements for synchronising receiver with transmitter correction of synchronization errors correction by interpolation interpolation of received data signal
Landscapes
- Physics & Mathematics (AREA)
- Engineering & Computer Science (AREA)
- Mathematical Physics (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- General Physics & Mathematics (AREA)
- Pure & Applied Mathematics (AREA)
- Probability & Statistics with Applications (AREA)
- Algebra (AREA)
- Theoretical Computer Science (AREA)
- Power Engineering (AREA)
- Spectroscopy & Molecular Physics (AREA)
- Error Detection And Correction (AREA)
Abstract
提供一种用于分组码的高阶伴随式计算器和计算高阶伴随式的方法。所述高阶伴随式计算器包括:串并转换器,被构造为将从发送器接收的串行比特序列转换成并行多流;异或(XOR)运算器,被构造为对所述多流的比特值执行XOR运算;零插值器,被构造为在执行了XOR运算的比特之间插入零值;线性反馈移位寄存器,被构造为基于通过将从插入了零值的所述多流产生的多项式除以本原多项式所获得的余数的系数,来计算高阶伴随式值。
Description
技术领域
以下描述涉及一种被构造为计算用于分组码的低复杂度的高阶伴随式的高阶伴随式计算器和计算高阶伴随式的方法。
背景技术
分组码(block code)是在纠错码中广泛使用的编码。分组码的示例包括能够对单个比特执行纠错的汉明码(Hamming code)、能够对多个比特执行纠错的博斯-乔赫里-霍克文黑姆(BCH)码和能够将多个比特视为单个符号并基于符号单位进行纠错的里德-索罗门(RS)码。
在解码的情况下而不是在编码的情况下,分组码增加了复杂度。当发生接收错误时,与具有单个比特纠错能力的汉明码相比,被构造为基于多个比特或符号单位纠错的BCH码或RS码可具有卓越的效率,但是增加了计算复杂度。
在低功耗发送器和接收器中,发送信号的功率可以相对低,因此,发送器和接收器之间的通信可靠性会劣化。当应用纠错码时,通信系统可能需要低复杂度计算。例如,用于各种无线传感器网络和近场通信系统的小型传感器通常需要使用低功耗和低复杂度的计算。
发明内容
提供本发明内容以用简单形式介绍对在以下具体实施方式中进一步描述的构思的选择。本发明内容不意在确定要求保护的主题的关键特征或必要特征,也不意在用作确定要求保护的主题的范围的帮助。
在一个总体方面,一种高阶伴随式计算器包括:串并转换器,被构造为将从发送器接收的串行比特序列转换成并行多流;异或(XOR)运算器,被构造为对所述多流的比特值执行XOR运算;零插值器,被构造为在执行了XOR运算的比特之间插入零值;线性反馈移位寄存器,被构造为基于通过将从插入了零值的所述多流产生的多项式除以本原多项式所获得的余数的系数,来计算高阶伴随式值。
串并转换器还可被构造为响应于n/j的值是整数,通过将接收的串行比特序列延迟预定比特数的整数倍来将接收的串行比特序列转换成L比特多流,其中,L表示满足L≥2的自然数,D表示所述预定比特数且D=n/j,n表示分组码的块尺寸,j表示将被计算的伴随式阶数,n/j表示整数。
串并转换器可包括(L-1)个延迟元件,并且还可被构造为在不延迟比特序列的情况下输出比特序列作为所述多流的第一比特,并在将比特序列延迟(i-1)×D比特之后输出比特序列作为所述多流的第i比特,其中,i是满足2≤i≤L的整数。
串并转换器还可被构造为响应于n/j的值不是整数,在不延迟接收的串行比特序列的情况下将接收的串行比特序列输出到零插值器。
零插值器还可被构造为响应于n/j的值不是整数,在执行了XOR运算的所述多流的比特之间周期性地插入N(其中,N=j-1)个零值。
零插值器还可被构造为在执行了XOR运算的所述多流的比特之间周期性地插入N(其中,N=L-1)个零值。
在另一总体方面,一种高阶伴随式计算器包括:串并转换器,被构造为将从发送器接收的串行比特序列转换成基于符号单位构造的并行多流,其中,符号单位包括多个比特;异或(XOR)运算器,被构造为基于符号单位对所述多流的比特值执行XOR运算;零插值器,被构造为在执行了XOR运算的所述多流的比特之间插入零值;线性反馈移位寄存器,被构造为基于通过将从插入了零值的所述多流产生的多项式除以本原多项式所获得的余数的系数,来计算高阶伴随式值。
串并转换器还可被构造为响应于n/j的值是整数,通过将接收的串行比特序列延迟预定比特数的整数倍来将接收的串行比特序列转换成(符号单位×L)-比特多流,其中,L表示满足L≥2的自然数,D表示所述预定比特数且D=n/j,n表示分组码的块尺寸,j表示将被计算的伴随式阶数,n/j表示整数,(符号单位×L)-比特表示L个符号单位中的比特数。
串并转换器还可被构造为响应于n/j的值不是整数,在不延迟接收的串行比特序列的情况下将接收的串行比特序列输出到零插值器。
零插值器还可被构造为响应于n/j的值不是整数,在执行了XOR运算的所述多流的比特之间周期性地插入N(其中,N=j-1)个符号单位的零值。
零插值器还可被构造为在执行了XOR运算的所述多流的比特之间周期性地插入N(其中,N=L-1)个符号单位的零值。
在另一总体方面,一种计算高阶伴随式的方法包括:将从发送器接收的串行比特序列转换成并行多流;对所述多流的比特值执行异或(XOR)运算;在执行了XOR运算的比特之间插入零值;基于通过将从插入了零值的所述多流产生的多项式除以本原多项式所获得的余数的系数,来计算高阶伴随式值。
在另一总体方面,一种非暂时性计算机可读存储介质存储包括用于控制计算机执行以上描述的方法的指令的程序。
在另一总体方面,一种计算高阶伴随式的方法包括:将从发送器接收的串行比特序列转换成基于符号单位构造的并行多流,其中,符号单位包括多个比特;基于符号单位对所述多流的比特值执行异或XOR运算;在执行了XOR运算的所述多流的比特之间插入零值;基于通过将从插入了零值的所述多流产生的多项式除以本原多项式所获得的余数的系数,来计算高阶伴随式值。
在另一总体方面,一种非暂时性计算机可读存储介质存储包括用于控制计算机执行以上描述的方法的指令的程序。
其他特征和方面将从下面的具体实施方式、附图和权利要求中是清楚的。
附图说明
图1示出被构造为在发送器中对分组码进行编码的信道编码器的示例。
图2示出被构造为在接收器中对分组码进行解码的信道解码器的示例。
图3示出使用传统的伴随式计算方法的用于伽罗瓦域中的本原多项式的运算的查找表(LUT)的示例。
图4示出使用传统的伴随式计算方法计算m=6且n=63时的S3的处理的示例。
图5示出高阶伴随式计算器的示例。
图6示出高阶伴随式计算器的详细示例。
图7示出为了计算m=6且n=63时的S3在高阶伴随式计算器的每个部分执行的处理的示例。
图8示出高阶伴随式计算器的另一示例。
图9示出计算高阶伴随式的方法的示例。
图10示出计算高阶伴随式的方法的另一示例。
图11示出了显示使用传统的伴随式计算方法的计算复杂度和使用在本申请中公开的高阶伴随式计算方法的计算复杂度的比较结果的表格的示例。
图12示出了显示为了计算m=6且n=2m-1=63时的S3使用传统的伴随式计算方法的计算复杂度和使用在本申请中公开的高阶伴随式计算方法的计算复杂度的比较结果的表格的示例。
具体实施方式
提供以下详细描述以帮助读者获得对在此描述的方法、设备和/或系统的全面理解。然而,在此描述的方法、设备和/或系统的各种改变、修改和等同物对本领域的普通技术人员而言将是清楚的。除了必需按特定顺序发生的操作之外,在此描述的操作的次序仅是示例,不限于在此阐述的次序,而是可以改变,这对本领域的普通技术人员而言将是清楚的。此外,为了更加清楚和简明,可省略对本领域的普通技术人员公知的功能和构造的描述。
贯穿附图和详细描述,相同的参考标号表示相同的元件。附图可以不按比例绘制,并且为了清楚、说明和方便,可夸大附图中元件的相对大小、比例和描绘。
纠错码是能够在数字通信系统中提高通信可靠性的技术。例如,由于各种非理想的通信信道环境(例如,随机噪声),在接收器接收的比特信息中可发生差错。在此示例中,接收器可使用纠错码检测差错并对差错进行纠正,发送器可恢复将被发送的比特信息,从而增强通信可靠性。
纠错码可被划分成分组码和卷积码。分组码是广泛使用的基本码并且基于预定长度的块单元被编码。分组码通过将被称作校验位的冗余位添加到将被发送的预定长度的消息比特信息,来构造预定长度的编码比特序列。
作为最基本的分组码的汉明码是具有一个比特的纠错能力的分组码。详细地讲,当在从发送器接收的单个块的比特序列中发生单比特差错时,汉明码可进行纠错,但是当在两个或更多个比特中发生差错时,汉明码不能适当地进行纠错。
博斯-乔赫里-霍克文黑姆(BCH)码可使用各种参数对两个或更多个比特中的差错进行纠正。汉明码可被视为BCH码的一种类型。
里德-索罗门(RS)码将多个比特视为单个符号,并基于符号单位执行信号处理。RS码可将多个比特视为单个符号,并将预定数量的符号构造为单个块。
RS码可基于符号单位执行编码和解码,并可基于预定数量的符号单位执行纠错。当在单个符号中存在多个比特时,RS码可基于符号单位进行纠错。因此,RS码可针对在相邻比特中发生错误的突发错误是稳健的。
图1示出被构造为在发送器中对分组码进行编码的信道编码器100的示例。
信道编码器100通过将与冗余位对应的(n-k)个校验位适当地添加到与原始比特信息对应的k个消息比特来构造总共n个比特的序列块,并将这n个比特的序列块发送到接收器。
信道编码器100使用上述方法发送的n比特序列块被称为(n,k)分组码,从信道编码器100输出的n比特序列被称为码字。在此示例中,n比特序列中的k个消息比特在不被修改的情况下通过添加(n-k)个校验位而被发送,因此,该n比特序列被称为系统码。接收器对由信道编码器100编码的比特序列进行接收和解码。参照图2描述接收器的信道解码器。
图2示出被构造为在接收器中对分组码进行解码的信道解码器200的示例。
在接收器中,通过解调器解调为“0”或“1”的比特序列被输入到信道解码器200。由于一些非理想的通信信道环境(例如,噪声),在解调的比特序列中可存在差错比特。
参照图2,信道解码器200通过对解调的n比特序列适当地执行信号处理来进行纠错,并获得解码的k个输出比特序列。当超过分组码的纠错能力,在解调的比特序列的比特中发生差错时,输出比特序列将不同于从发送器发送的原始比特序列。
信道解码器200包括伴随式(syndrome)计算器210、差错位置计算器230和纠错器250。
伴随式计算器210计算伴随式值。
术语“伴随式值”表示用作能够检验在从发送器发送到接收器的比特序列中是否存在差错的确定标准的值。例如,非零的伴随式值指示差错的发生,因此,接收器可执行信号处理以进行纠错。
为了进行纠错,需要知道在整个比特序列中已经发生差错的比特的位置。当该位置已知时,可对该比特进行纠错。差错位置计算器230计算已经发生差错的比特的位置。可使用伴随式值来计算已经发生差错的比特的位置。
纠错器250对由差错位置计算器230计算的比特的位置处的比特的差错进行纠正。例如,纠错器250可将已经发生差错的比特从“1”纠正到“0”,或者可将该比特从“0”纠正到“1”。
当使用具有单比特纠错能力的汉明码时,仅需要计算单个伴随式值。当使用具有多比特纠错能力的编码时,需要计算多个伴随式值,从而增加了计算复杂度。
当计算多个伴随式值时,假设伴随式阶数=j,第j伴随式=Sj。下面将提供Sj的详细定义及其相关数学描述。根据表示伴随式阶数的j的增加,例如,根据高阶伴随式值的增加,计算复杂度会进一步增加。
在一个示例中,将描述在具有多比特纠错能力的分组码中减小“j”大于“1”的高阶伴随式的计算复杂度的方法。
在描述伴随式计算方法之前,将描述作为分组码的基础的伽罗瓦域和伽罗瓦域的运算。
伽罗瓦域可通过素数p和正整数m表示为GF(pm),并且由于伽罗瓦域具有有限数量的元素,还可被称为有限域。
pm个元素存在于GF(pm)中。可按如下定义在伽罗瓦域中使用的本原元素和本原多项式。
在本原元素的情况下,如果在GF(q)中满足第(q-1)本原单位根,则α∈GF(q)被称为有限域GF(q)的本原元素。有限域GF(q)的除了“0”之外的所有组成元素可通过正整数n被表示为αn。
在本原多项式的情况下,如果具有GF(p)中的系数的多项式f(x)具有次数m并且具有满足GF(pm)中的{0,1,α,α2,…,α^(pm-2)}的根α,则该多项式被称为本原多项式。如果f(x)/(xn+1)是满足n=2m-1的最小正整数n,则不可约多项式f(x)的次数m被称为本原。
如果基于以上作出的定义,伽罗瓦域GF(pm)的本原元素=α并且m次 则建立已经已知的等式和f(α)=0。
例如,如果m=6,则α63=1,且f(α)=1+α+α6=0。伽罗瓦域运算包括模加法运算,诸如1+1=0和αl+αl=0。使用模加法运算,可获得α6=1+α。
此外,伽罗瓦域运算包括乘法,诸如αi·αj=αi+j。使用乘法,可获得α7=α·α6=α(1+α)=α+α2。使用相似的伽罗瓦域运算处理,m=6的GF(pm)的元素可被构造为如下面的表1所示。
下面的表1示出了基于本原多项式“1+x+x6”产生的GF(26)组成元素。
表1
幂表示 | 多项式表示 | 矢量表示 |
0 | 0 | [000000] |
1 | 1 | [100000] |
α | 0+α | [010000] |
α<sup>2</sup> | 0+0+α<sup>2</sup> | [001000] |
α<sup>3</sup> | 0+0+0+α<sup>3</sup> | [000100] |
α<sup>4</sup> | 0+0+0+0+α<sup>4</sup> | [000010] |
α<sup>5</sup> | 0+0+0+0+0+α<sup>5</sup> | [000001] |
α<sup>6</sup> | 1+α | [110000] |
α<sup>7</sup> | 0+α+α<sup>2</sup> | [011000] |
… | … | … |
α<sup>61</sup> | 1+0+0+0+α<sup>4</sup>+α<sup>5</sup> | [100011] |
α<sup>62</sup> | 1+0+0+0+0+α<sup>5</sup> | [100001] |
在表1中,第一列是表示本原元素α的乘数的幂表示,第二列是将第一列的同一元素表示为的多项式表示。cl表示值为“0”或“1”的系数。
第三列是以矢量形式(诸如[c0c1c2c3c4c5])表示cl的值的矢量表示。当构造使用与乘数α对应的整数作为输入索引并使用矢量值作为输出的查找表(LUT)时,如图3所示地表示LUT。
图3示出使用传统的伴随式计算方法的用于伽罗瓦域中的本原多项式的运算的LUT的示例。
下文中,将描述计算伴随式的基本等式。
当将由接收器接收且包括具有差错的n比特的比特矢量表示为[r0r1r2…rn-1]时,该比特矢量的多项式可被表示为r(x)=r0+r1x+r2x2+...+rn-1xn-1。可根据下面的等式1计算与第j伴随式对应的Sj。
[等式1]
Sj=r(αj)
其中,r(x)=r0+r1x+r2x2+...+rn-1xn-1是接收的多项式。
在等式1中,α表示GF(pm)的本原元素且n=2m-1。
如上所述,计算伴随式的过程对应于当对分组码进行解码时最初执行的信号处理过程。不是“0”的伴随式值指示由于在接收的比特中差错的发生而需要纠错。
下文中,将描述用于计算S3的传统的伴随式计算方法。
使用等式1,S3可被如下表示:
bxor(l)表示作为包括m比特的矢量的bxor的第l个值,并且bxor可按如下获得:
fLUT(·)表示图3的LUT函数,并且满足LUT_output_vector=fLUT(LUT_input_index)的关系。
为了进一步容易地描述上述信号处理,当m=6,n=2m-1=63,且r(x)=1+x2+…+x22+…+x62时,获得S3=r(α3)=1+α3×2+…+α3×22+…+α3×62。
因此,计算S3的伴随式的处理对应于计算逐渐增大的乘数αi并将计算结果相加的处理。使用传统的伴随式计算方法计算S3的伴随式的处理可如图4所示表示。
图4示出使用传统的伴随式计算方法计算m=6且n=63时的S3的处理的示例。
参照图4,当计算第一列的乘数值α时,传统的伴随式计算方法执行将比特序列的索引乘以与伴随式阶数对应的值的处理。
在第二列中,传统的伴随式计算方法执行模-(2m-1),也就是,对计算的乘数执行模-63运算。如上所述,在伽罗瓦域中,满足属性并且即使模-(2m-1)被应用到乘数值α,也获得相同的值。因此,传统的伴随式计算方法执行模-63运算。
传统的伴随式计算方法执行如下处理:当在执行模-63运算之后获得的乘数值α被用作输入值时,获得LUT的输出矢量(LUT_output_vector),并输出获得的输出值。
传统的伴随式计算方法对每个输出矢量执行按位异或(XOR)运算,并通过将与最终值对应的bxor(l)用作系数来获得伴随式
然而,如上所述,传统的伴随式计算方法使用乘法和模运算。传统的伴随式计算方法使用用于存储大尺寸的比特信息的存储空间来构造LUT。
另外,传统的伴随式计算方法需要执行使用输入索引查找映射到输入索引的存储信息的连续搜索处理。因此,频繁地执行LUT函数调用。频繁的LUT函数调用增加了运算复杂度和功耗的量。
图5示出高阶伴随式计算器500的示例。
参照图5,高阶伴随式计算器500包括串并转换器510、XOR运算器530、零插值器(插入器)550和线性反馈移位寄存器570。
串并转换器510将从发送器接收的串行比特序列转换成并行多流(multi-stream)。
响应于n/j的值是整数,串并转换器510通过将接收的串行比特序列延迟预定比特数的整数倍,来将接收的串行比特序列转换成L比特多流,其中,所述预定比特数满足“D=n/j”。L表示满足L≥2的自然数,D表示预定比特数,n表示分组码的块尺寸,j表示将被计算的伴随式阶数,n/j表示整数。
XOR运算器530对转换的多流的比特值执行XOR运算。例如,当第一多流是[a0a1a2a3a4a5]并且第二多流是[b0b1b2b3b4b5]时,XOR运算器530对比特值执行如[a0⊕b0a1⊕b1a2⊕b2a3⊕b3a4⊕b4a5⊕b5]表示的XOR运算。在此示例中,⊕表示XOR运算,例如,模-2运算。
零插值器(插入器)550(下文中,称为零插值器550)在执行了XOR运算的比特之间插入零值。零插值器550在执行了XOR运算的多流的比特之间周期性地插入N(其中,N=L-1)个零值。
当串并转换器510计算的预定比特数D(也就是,n/j的值)不是整数时,零插值器550在执行了XOR运算的多流的比特之间周期性地插入N(其中,N=j-1)个零值。
线性反馈移位寄存器570基于通过将从插入了零值的多流产生的多项式除以本原多项式而获得的余数的系数,来计算高阶伴随式值。
图6示出高阶伴随式计算器600的详细示例。
参照图6,高阶伴随式计算器600包括串并转换器610、XOR运算器630、零插值器(插入器)650和线性反馈移位寄存器670。
从发送器接收的串行比特序列通过串并转换器610。串并转换器610包括(L-1)个延迟元件611。延迟元件可以是与触发器或单位延迟元件对应的寄存器。
串并转换器610在不延迟所输入的比特序列的情况下输出所输入的比特序列来作为多流的第一比特,并且在将所输入的比特序列延迟(L-1)×D比特之后输出比特序列来作为多流的第L比特。
在串并转换器610将串行比特序列转换成L比特多流的示例中,串并转换器610包括L个并行路径,针对L个并行路径将接收的串行比特序列延迟与预定比特数的整数倍对应的时间量,并输出延迟的串行比特序列。
在第一路径中,接收的比特序列在没有被延迟的情况下被输出。在第二路径中,比特序列相比于第一路径被延迟D比特并被输出。在第三路径中,比特序列相比于第一路径被延迟2D比特并被输出。以相同的方式,在第L路径中,比特序列相比于第一路径被延迟(L-1)×D比特并被输出。
XOR运算器630对多流的比特值执行XOR运算。
零插值器(插入器)650(下文中,称为零插值器650)在执行了XOR运算的多流的比特之间周期性地插入N(其中,N=L-1)个零值。下文中,将描述设置L、D和N的方法。
当分组码的块尺寸是n并且将被计算的伴随式阶数是j时(也就是,当Sj将被计算时),高阶伴随式计算器600可使用值L=j,D=n/j和N=L-1。
当n/j的值不是整数时,高阶伴随式计算器600可将L、D和N的值设置为L=1、D=0和N=j-1。在此示例中,高阶伴随式计算器600在不使用串并转换器610进行转换处理的情况下,如使用零插值器650对接收的比特序列执行零插值。
插入了零值的多流被用作线性反馈移位寄存器670的输入。
触发器(FF)673中的每一个可被与单位延迟元件对应的寄存器所替代。
线性反馈移位寄存器670包括满足“n=2m-1”的“m”个FF 673。在线性反馈移位寄存器670中,fl可具有值“0”或“1”。
在线性反馈移位寄存器670中,如果fl具有值“0”,则不存在连接到XOR运算器671的线。如果fl具有值“1”,则存在连接到XOR运算器671的线。
fl表示具有m次的本原多项式f(x)的系数,并且满足
当在线性反馈移位寄存器670的输入值全部被输入之后最后存储的第lFF值是lfsr(l)时,可使用包括系数lfsr(l)的来计算高阶伴随式值。
线性反馈移位寄存器670被构造为输出与通过将输入多项式除以本原多项式f(x)所获得的余数对应的结果。
在线性反馈移位寄存器670接收到所有输入序列的时间点在每个FF 673中存储的值对应于当将输入多项式除以f(x)时获得的余数多项式的系数。
为了进一步描述高阶伴随式计算器600的操作,将描述计算伴随式S3的示例。
例如,当m=6且n=2m-1=63时,计算S3的整体操作可由下面的等式2表示。
[等式2]
S3=r(α3)=r0+r1α3+r2(α3)2+…+rn-1(α3)n-1
=r0+r1α3+r2α6+…+r21αmod(3×21,63)+r22αmod(3×22,63)+r23αmod(3×23,63)+…+rn-1αmod(3(n-1),63)
=(r0⊕r21⊕r42)+(r1⊕r22⊕r43)α3+(r2⊕r23⊕r44)α6+…+(r20⊕r41⊕r62)α60
=Q(α)f(α)+R(α)=Q(α)(1+α+α6)+R(α)=R(α)
在等式2中,r(x)=r0+r1x+r2x2+...+rn-1xn-1表示接收的多项式,Q(x)和R(x)分别表示当将接收的多项式除以作为本原多项式的f(x)时获得的商和余数。
在伽罗瓦域中,针对本原元素α满足f(α)=0,因此获得等式2的最终结果。
为了易于描述,可利用图7中示出的高阶伴随式计算器直观地表示当“n=63”时计算S3=r(α3)=r0+r1α3×1+r2α3×2+...+r62α3×62的方法。
图7示出为了计算m=6且n=63时的S3在高阶伴随式计算器的每个部分执行的处理的示例。
参照图7,可以看出三个值被组合在一起并从而被表示为单个项,例如,r1α3+r22α3×22+r43α3×43=(r1⊕r22⊕r43)α3。这样的表示是可行的,因为满足属性并且如果m=6,则在伽罗瓦域中满足α3×22=α63+3=α3并且满足α3×43=α2×63+3=α3。
在伽罗瓦域中,通过使用属性从S3的第一等式将三个值组合成单个项来获得S3的第二等式701。
由串并转换器710执行如下处理:将由S3的第一等式表示的输入串行比特序列延迟预定比特数的整数倍,并按并行路径输出延迟的比特序列。
由XOR运算器730执行对S3的第二等式701中的多流的比特值的XOR运算。
在时间上最初接收的比特是r62并且时间上最后接收的比特是r0的示例中,串并转换器710处理比特,使得比特流在第一路径中按照r62、r61、r60、…、r44、r43、r42的顺序被依次接收,相比于第一路径被延迟21个样本的比特流(即,r41、r40、r30、…、r23、r22、r21)在第二路径中被接收,并且相比于第一路径被延迟42(=21×2)个样本的比特流(即,r20、r19、r18、…、r2、r1、r0)在第三路径中被接收。
每当新的比特被输入时,XOR运算器730对并行输入的流的比特值执行XOR运算,并输出XOR运算的结果。
在XOR运算器730获得的结果中,乘数值αi的幂增加“3”,因此,如等式703所示,零插值器750在第二等式701的值之间插入项αi。在此示例中,插入的项αi的系数被设置为“0”。零插值器750由于以下原因而插入均具有零系数的项。
如已经获知的,可由线性反馈移位寄存器770容易地执行在伽罗瓦域中计算与当将预定多项式a(x)除以另一多项式b(x)时获得的余数对应的多项式c(x)的信号处理。
在此示例中,序列(例如,作为线性反馈移位寄存器770的输入而应用的多流)是包括多项式a(x)的系数xi的序列。
当根据与乘数对应的i的变化在不省略任何系数的情况下与系数xi对应的序列被输入时,线性反馈移位寄存器770可基于最终存储在FF中的值来计算余数多项式R(α)。在此示例中,零插值器750如第二等式703表示插入系数为零的αi项,以在不省略任何系数的情况下输入与系数xi对应的序列。
当从插入了零值的多流产生的多项式作为输入被应用时,线性反馈移位寄存器770基于最终存储在FF中的值来计算S3。
如上所述,线性反馈移位寄存器770获得多项式的信息,例如,与当将插入了零值的输入多项式除以本原多项式时获得的余数对应的多项式的系数。
作为线性反馈移位寄存器770的输入而应用的值是与多项式形式的系数项αi对应的比特序列。当所有的比特序列被输入时并且当存储在线性反馈移位寄存器770中的第lFF值是lfsr(l)时,获得
当m=6时,本原多项式是f(x)=1+x+x6,并且f1=1,f2=f3=f4=f5=0。因此,在线性反馈移位寄存器770中,与f1=1对应的线被连接,与f2、f3、f4、f5对应的线不被连接。
虽然以上已经描述了在使用二进制分组码的情况下高阶伴随式计算器的运算,但是高阶伴随式计算器可基本上类似地应用于非二进制码,例如,RS码。在非二进制码中,基于包括多个比特(例如,m比特)的符号单位而不是基于单个比特单位来执行信号处理。
例如,信号可被输入到串并转换器710,并且零插值器750可插入N个零符号。在此示例中,单个零符号可包括m个零比特。包括m比特的符号可被存储在包括在线性反馈移位寄存器770中的FF中。
将参照图8描述被构造为对于基于符号单位构造的比特序列计算伴随式值的高阶伴随式计算器的示例。
图8示出高阶伴随式计算器800的另一示例。
高阶伴随式计算器800被构造为对于基于符号单位构造的比特序列计算伴随式值。
参照图8,高阶伴随式计算器800包括串并转换器810、XOR运算器830、零插值器850和线性反馈移位寄存器870。
串并转换器810将从发送器接收的串行比特序列转换成基于符号单位构造的并行多流。符号单位包括多个比特。
响应于n/j的值是整数,串并转换器810通过将接收的串行比特序列延迟预定比特数的整数倍,来将接收的串行比特序列转换成(符号单位×L)-比特多流,其中,所述预定比特数满足“D=n/j”。“符号单位”表示一个符号单位中的比特数,L表示满足L≥2的自然数,D表示预定比特数,n表示分组码的块尺寸,j表示将被计算的伴随式阶数,n/j表示整数。因此,“(符号单位×L)-比特”表示L个符号单位中的比特数。
当n/j的值不是整数时,串并转换器810在不延迟接收的串行比特序列的情况下将接收的串行比特序列输出到零插值器850。
XOR运算器830基于符号单位对并行多流的比特值执行XOR运算。
零插值器850在执行了XOR运算的多流的比特之间插入零值。零插值器850在执行了XOR运算的多流的比特之间周期性地插入N(其中,N=L-1)个符号单位的零值。
当n/j的值不是整数时,零插值器850在执行了XOR运算的多流的比特之间周期性地插入N(其中,N=j-1)个零值。
线性反馈移位寄存器870基于通过将从插入了零值的多流产生的多项式除以本原多项式而获得的余数的系数,来计算高阶伴随式值。
图9示出计算高阶伴随式的方法的示例。
参照图9,在操作910,高阶伴随式计算器(下文中,计算器)将从发送器接收的串行比特序列转换成并行多流。
在操作920,计算器对多流的比特值执行XOR运算。
在操作930,计算器在执行了XOR运算的比特之间插入零值。
在操作940,计算器基于通过将从插入了零值的多流产生的多项式除以本原多项式而获得的余数的系数,来计算高阶伴随式值。
图10示出计算高阶伴随式的方法的另一示例。
参照图10,在操作1010,高阶伴随式计算器(下文中,计算器)将从发送器接收的串行比特序列转换成基于符号单位构造的并行多流。符号单位包括多个比特。
在操作1020,计算器基于符号单位对多流的比特值执行XOR运算。以与图5的示例类似的方式,对符号的每个比特执行基于符号单位的XOR运算。
在操作1030,计算器在执行了XOR运算的多流的比特之间插入零值。
在操作1040,计算器基于通过将从插入了零值的多流产生的多项式除以本原多项式而获得的余数的系数,来计算高阶伴随式值。
图11示出了显示使用传统的伴随式计算方法的计算复杂度和使用在本申请中公开的高阶伴随式计算方法的计算复杂度的比较结果的表格的示例。
图11的表格显示了基于伽罗瓦域GF(2m)(其中,满足n=2m-1)针对线性分组码(n,k)使用传统的伴随式计算方法和所公开的高阶计算方法获得的伴随式计算结果。
参照图11,可以得知,当使用传统的伴随式计算方法计算伴随式时,模运算的数量是n,用于存储信息的寄存器中的比特数和XOR运算的数量均是m×n。另外,可以得知,当使用传统的伴随式计算方法计算伴随式时,用于搜索输出值而调用LUT函数的次数也是n。
与之相比,所公开的高阶计算方法不使用用于构造LUT的寄存器的存储空间,也不使用用于搜索输出值的LUT函数调用。所公开的高阶计算方法使用用于构造线性反馈移位寄存器的寄存器的m比特,并执行((L-1)×(n/L)+m'×n)次XOR运算。m'表示本原多项式f(x)-1的非零系数的数量。
图12示出了显示为了计算m=6且n=2m-1=63时的S3使用传统的伴随式计算方法的计算复杂度和使用在本申请中公开的高阶伴随式计算方法的计算复杂度的比较结果的表格的示例。
参照图12,可以得知,当使用传统的伴随式计算方法计算伴随式时,乘法的数量和模运算的数量均是“63”,用于存储信息的寄存器中的比特数和XOR运算的数量均是“6×63=378”。另外,可以得知,当使用传统的伴随式计算方法计算伴随式时,用于搜索输出值而调用LUT函数的次数也是“63”。
与之相比,所公开的高阶计算方法不使用用于构造LUT的寄存器的存储空间,也不使用用于搜索输出值的LUT函数调用。所公开的高阶计算方法使用用于构造线性反馈移位寄存器的寄存器的6比特,并执行(42+126=)168次XOR运算。
执行参照图1、图2和图5至图12描述的各种运算的图1中的校验位计算器和系统码字构造器、图2中的伴随式计算器210、差错位置计算器230和纠错器250、图5至图8中的串并转换器510、610、710和810、XOR运算器530、630、730和830、零插值器550、650、750和850以及线性反馈移位寄存器570、670、770和870可使用一个或多个硬件组件、一个或多个软件组件、或者一个或多个硬件组件和一个或多个软件组件的组合来实现。
硬件组件可以是例如在物理上执行一个或多个操作的物理装置,但是不限于此。硬件组件的示例包括电阻器、电容器、电感器、电源、频率发生器、运算放大器、功率放大器、低通滤波器、高通滤波器、带通滤波器、模数转换器、数模转换器和处理装置。
软件组件可以例如通过由软件或指令控制的执行一个或多个操作的处理装置实现,但是不限于此。计算机、控制器或其他控制装置可使处理装置运行软件或执行指令。一个软件组件可通过一个处理装置实现,或者两个或更多个软件组件可通过一个处理装置实现,或者一个软件组件可通过两个或更多个处理装置实现,或者两个或更多个软件组件可通过两个或更多个处理装置实现。
例如,处理装置可使用一个或多个通用或专用计算机来实现,诸如处理器、控制器和算术逻辑单元、数字信号处理器、微计算机、场可编程阵列、可编程逻辑单元、微处理器或能够运行软件或执行指令的任何其他装置。处理装置可运行操作系统(OS),并可运行在OS下操作的一个或多个软件应用。处理装置可在运行软件或执行指令时访问、存储、操纵、处理和创建数据。为了简洁,可在描述中使用单数术语“处理装置”,但是本领域的普通技术人员将理解,处理装置可包括多个处理元件和多种类型的处理元件。例如,处理装置可包括一个或多个处理器,或者包括一个或多个处理器和一个或多个控制器。另外,不同的处理配置是可行的,诸如并行处理器或多核处理器。
被构造为实现软件组件以执行操作A的处理装置可包括被编程为运行软件或执行指令的处理器,其中,所述软件或指令用于控制处理器执行操作A。另外,被构造为实现软件组件以执行操作A、操作B和操作C的处理装置可具有各种配置,诸如被构造为实现软件组件以执行操作A、B和C的处理器;被构造为实现软件组件以执行操作A的第一处理器以及被构造为实现软件组件以执行操作B和C的第二处理器;被构造为实现软件组件以执行操作A和B的第一处理器以及被构造为实现软件组件以执行操作C的第二处理器;被构造为实现软件组件以执行操作A的第一处理器,被构造为实现软件组件以执行操作B的第二处理器以及被构造为实现软件组件以执行操作C的第三处理器;被构造为实现软件组件以执行操作A、B和C的第一处理器以及被构造为实现软件组件以执行操作A、B和C的第二处理器,或者均实现操作A、B和C中的一个或多个操作的一个或多个处理器的任何其他配置。虽然这些示例参考了三个操作A、B和C,但是可实现的操作的数量不限于三,而可以是实现期望结果或执行期望任务所需的任意数量的操作。
用于控制处理装置实现软件组件的软件或指令可包括用于独立地或共同地指示或配置处理装置执行一个或多个期望操作的计算机程序、代码段、指令或其某个组合。软件或指令可包括诸如由编译器产生的机器代码的可由处理装置直接执行的机器代码和/或可由处理装置使用解释器执行的高级代码。软件或指令以及任何关联的数据、数据文件和数据结构可被永久地或暂时地实施在任何类型的机器、组件、物理或虚拟设备、计算机存储介质或装置或者能够向处理装置提供指令或数据或由处理装置解译的传播信号波中。软件或指令以及任何关联的数据、数据文件和数据结构还可分布于联网的计算机系统中,从而软件或指令以及任何关联的数据、数据文件和数据结构以分布式方式被存储和执行。
例如,软件或指令以及任何关联的数据、数据文件和数据结构可被记录、存储或固定在一个或多个非暂时性计算机可读存储介质中。非暂时性计算机可读存储介质可以是能够存储软件或指令以及任何关联的数据、数据文件和数据结构使得它们可由计算机系统或处理装置读取的任何数据存储装置。非暂时性计算机可读存储介质的示例包括只读存储器(ROM)、随机存取存储器(RAM)、闪存、CD-ROM、CD-R、CD+R、CD-RW、CD+RW、DVD-ROM、DVD-R、DVD+R、DVD-RW、DVD+RW、DVD-RAM、BD-ROM、BD-R、BD-R LTH、BD-RE、磁带、软盘、磁光数据存储装置、光学数据存储装置、硬盘、固态盘或对本领域的普通技术人员公知的任何其他非暂时性计算机可读存储介质。
用于实现这里公开的示例的功能程序、代码和代码段可由示例所属领域的编程技术人员基于这里提供的附图和它们的相应描述容易地解释。
仅作为非穷尽说明,这里描述的发送器或接收器可表示移动装置(诸如蜂窝电话、个人数字助理(PDA)、数码相机、便携式游戏机、MP3播放器、便携式/个人多媒体播放器(PMP)、手持电子书、便携式膝上型PC、全球定位系统(GPS)导航装置、平板或传感器)或静态装置(诸如桌上型PC、高清晰度电视(HDTV)、光盘播放器、机顶盒或家用电器)或对本领域的普通技术人员公知的能够进行无线通信或与这里公开的通信一致的网络通信的任何其他装置。
尽管本公开包括具体示例,但是本领域的普通技术人员将清楚的是,在不脱离权利要求及其等同物的精神和范围的情况下,可对这些示例中进行形式和细节上的各种改变。这里描述的示例将仅被视为描述性意义,而不是为了限制的目的。对每个示例中的特征或方面的描述将被视为可应用于其他示例中的类似特征或方面。如果描述的技术按不同顺序执行,和/或如果描述的系统、架构、装置或电路中的组件按不同方式组合和/或被其他组件或其等同物替代或补充,则可实现合适的结果。因此,本公开的范围不是由具体实施方式限定,而是由权利要求及其等同物限定,并且在权利要求及其等同物的范围内的所有变化应被解释为包括在本公开中。
Claims (13)
1.一种用于分组码的高阶伴随式计算器,包括:
串并转换器,被构造为将从发送器接收的串行比特序列转换成并行多流;
异或XOR运算器,被构造为对所述并行多流的比特值执行XOR运算;
零插值器,被构造为在执行了XOR运算的比特值之间插入零值;
线性反馈移位寄存器,被构造为基于通过将从插入了零值的所述并行多流产生的多项式除以本原多项式所获得的余数的系数,来计算高阶伴随式值。
2.如权利要求1所述的高阶伴随式计算器,其中,串并转换器还被构造为响应于n/j的值是整数,通过将接收的串行比特序列延迟预定比特数的整数倍,来将接收的串行比特序列转换成L比特多流,其中,L表示满足L≥2的自然数,D表示所述预定比特数且D=n/j,n表示分组码的块尺寸,j表示将被计算的伴随式阶数,n/j表示整数。
3.如权利要求2所述的高阶伴随式计算器,其中,串并转换器包括(L-1)个延迟元件,并且还被构造为在不延迟比特序列的情况下输出比特序列作为所述多流的第一比特,并在将比特序列延迟(i-1)×D比特之后输出比特序列作为所述多流的第i比特,其中,i是满足2≤i≤L的整数。
4.如权利要求2所述的高阶伴随式计算器,其中,串并转换器还被构造为响应于n/j的值不是整数,在不延迟接收的串行比特序列的情况下将接收的串行比特序列输出到零插值器。
5.如权利要求4所述的高阶伴随式计算器,其中,零插值器还被构造为响应于n/j的值不是整数,在执行了XOR运算的所述并行多流的比特值之间周期性地插入N个零值,其中,N=j-1。
6.如权利要求2所述的高阶伴随式计算器,其中,零插值器还被构造为在执行了XOR运算的所述并行多流的比特值之间周期性地插入N个零值,其中,N=L-1。
7.一种用于分组码的高阶伴随式计算器,包括:
串并转换器,被构造为将从发送器接收的串行比特序列转换成基于符号单位构造的并行多流,其中,符号单位包括多个比特;
异或XOR运算器,被构造为基于符号单位对所述并行多流的比特值执行XOR运算;
零插值器,被构造为在执行了XOR运算的所述并行多流的比特值之间插入零值;
线性反馈移位寄存器,被构造为基于通过将从插入了零值的所述并行多流产生的多项式除以本原多项式所获得的余数的系数,来计算高阶伴随式值。
8.如权利要求7所述的高阶伴随式计算器,其中,串并转换器还被构造为响应于n/j的值是整数,通过将接收的串行比特序列延迟预定比特数的整数倍来将接收的串行比特序列转换成(符号单位×L)-比特多流,其中,L表示满足L≥2的自然数,D表示所述预定比特数且D=n/j,n表示分组码的块尺寸,j表示将被计算的伴随式阶数,n/j表示整数,(符号单位×L)-比特表示L个符号单位中的比特数。
9.如权利要求8所述的高阶伴随式计算器,其中,串并转换器还被构造为响应于n/j的值不是整数,在不延迟接收的串行比特序列的情况下将接收的串行比特序列输出到零插值器。
10.如权利要求9所述的高阶伴随式计算器,其中,零插值器还被构造为响应于n/j的值不是整数,在执行了XOR运算的所述并行多流的比特值之间周期性地插入N个符号单位的零值,其中,N=j-1。
11.如权利要求8所述的高阶伴随式计算器,其中,零插值器还被构造为在执行了XOR运算的所述并行多流的比特值之间周期性地插入N个符号单位的零值,其中,N=L-1。
12.一种计算高阶伴随式的方法,所述方法包括:
将从发送器接收的串行比特序列转换成并行多流;
对所述并行多流的比特值执行异或XOR运算;
在执行了XOR运算的比特值之间插入零值;
基于通过将从插入了零值的所述并行多流产生的多项式除以本原多项式所获得的余数的系数,来计算高阶伴随式值。
13.一种计算高阶伴随式的方法,所述方法包括:
将从发送器接收的串行比特序列转换成基于符号单位构造的并行多流,其中,符号单位包括多个比特;
基于符号单位对所述并行多流的比特值执行异或XOR运算;
在执行了XOR运算的所述并行多流的比特值之间插入零值;
基于通过将从插入了零值的所述并行多流产生的多项式除以本原多项式所获得的余数的系数,来计算高阶伴随式值。
Applications Claiming Priority (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR10-2014-0030490 | 2014-03-14 | ||
KR20140030490 | 2014-03-14 | ||
KR10-2014-0089739 | 2014-07-16 | ||
KR1020140089739A KR102118605B1 (ko) | 2014-03-14 | 2014-07-16 | 블록 코드에 대하여 저복잡도로 고차 신드롬을 계산하는 고차 신드롬 계산기 및 고차 신드롬 계산 방법 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN104917535A CN104917535A (zh) | 2015-09-16 |
CN104917535B true CN104917535B (zh) | 2019-10-25 |
Family
ID=54070142
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410840383.3A Active CN104917535B (zh) | 2014-03-14 | 2014-12-30 | 用于分组码的高阶伴随式计算器和计算高阶伴随式的方法 |
Country Status (2)
Country | Link |
---|---|
US (1) | US9467174B2 (zh) |
CN (1) | CN104917535B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR102359265B1 (ko) * | 2015-09-18 | 2022-02-07 | 삼성전자주식회사 | 프로세싱 장치 및 프로세싱 장치에서 연산을 수행하는 방법 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH11196006A (ja) * | 1997-12-26 | 1999-07-21 | Nec Corp | 並列処理シンドロ−ム計算回路及びリ−ド・ソロモン複合化回路 |
CN101834615A (zh) * | 2009-03-12 | 2010-09-15 | 普然通讯技术(上海)有限公司 | 里德-索罗蒙编码器实现方法 |
US8347192B1 (en) * | 2010-03-08 | 2013-01-01 | Altera Corporation | Parallel finite field vector operators |
Family Cites Families (19)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4633470A (en) | 1983-09-27 | 1986-12-30 | Cyclotomics, Inc. | Error correction for algebraic block codes |
JP2874933B2 (ja) | 1990-02-06 | 1999-03-24 | 富士通株式会社 | デジタル信号の誤り訂正処理装置及びその誤り訂正処理方法 |
JP3223513B2 (ja) | 1991-01-16 | 2001-10-29 | 三菱電機株式会社 | 誤り訂正復号装置 |
JPH05224967A (ja) | 1992-02-15 | 1993-09-03 | Mitsubishi Electric Corp | 誤り訂正装置 |
JP2940386B2 (ja) | 1994-03-16 | 1999-08-25 | 日本電気株式会社 | 誤り訂正復号装置 |
US5600582A (en) * | 1994-04-05 | 1997-02-04 | Texas Instruments Incorporated | Programmable horizontal line filter implemented with synchronous vector processor |
KR100212829B1 (ko) | 1996-02-29 | 1999-08-02 | 전주범 | 리드 솔로몬 복호기의 신드롬 계산장치 |
KR100192803B1 (ko) | 1996-11-29 | 1999-06-15 | 전주범 | 에러 정정 신드롬 계산 장치 |
KR100201839B1 (ko) | 1996-11-30 | 1999-06-15 | 전주범 | 병렬 순회 리던던시 코드 인코더 및 디코더 |
US6597745B1 (en) * | 1999-04-06 | 2003-07-22 | Eric M. Dowling | Reduced complexity multicarrier precoder |
JP3442703B2 (ja) | 1999-11-05 | 2003-09-02 | 松下電器産業株式会社 | シンドローム演算方法及び装置 |
US20030140302A1 (en) * | 2002-01-23 | 2003-07-24 | Litwin, Louis Robert | Chien search cell for an error-correcting decoder |
KR20040041294A (ko) | 2002-11-09 | 2004-05-17 | 조용석 | Bch 부호의 나눗셈 없는 복호방법 및 그 장치 |
JP2006340205A (ja) | 2005-06-03 | 2006-12-14 | Sharp Corp | 誤り訂正装置 |
US20080080598A1 (en) * | 2006-09-29 | 2008-04-03 | Shaomin Samuel Mo | Method and apparatus for processing communication using different modulation schemes |
JP2008112522A (ja) | 2006-10-31 | 2008-05-15 | Fujitsu Ltd | 誤り検出装置および誤り検出方法 |
US8065355B2 (en) * | 2006-12-01 | 2011-11-22 | Samsung Electronics Co., Ltd. | Interpolation FIR filter having multiple data rates in mobile communication system and method of filtering data using the same |
US8416019B2 (en) * | 2009-08-14 | 2013-04-09 | That Corporation | System and method for interpolating digitally-controlled amplifier gain |
TWI426715B (zh) * | 2010-05-07 | 2014-02-11 | Univ Ishou | Error detection decoding module and error detection correction device |
-
2014
- 2014-09-29 US US14/500,803 patent/US9467174B2/en active Active
- 2014-12-30 CN CN201410840383.3A patent/CN104917535B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH11196006A (ja) * | 1997-12-26 | 1999-07-21 | Nec Corp | 並列処理シンドロ−ム計算回路及びリ−ド・ソロモン複合化回路 |
CN101834615A (zh) * | 2009-03-12 | 2010-09-15 | 普然通讯技术(上海)有限公司 | 里德-索罗蒙编码器实现方法 |
US8347192B1 (en) * | 2010-03-08 | 2013-01-01 | Altera Corporation | Parallel finite field vector operators |
Also Published As
Publication number | Publication date |
---|---|
US20150263764A1 (en) | 2015-09-17 |
CN104917535A (zh) | 2015-09-16 |
US9467174B2 (en) | 2016-10-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Berlekamp | Algebraic coding theory (revised edition) | |
CN105322973B (zh) | 一种rs码编码器及编码方法 | |
US20050204268A1 (en) | Decoding and error correction for algebraic geometric codes | |
KR20120093238A (ko) | 비-이진 코드들의 복호화 방법 | |
CN101277119A (zh) | 里德所罗门码解码器硬件复用方法及其低硬件复杂度解码装置 | |
CN110971243B (zh) | 解码bch编码码字的系统和方法 | |
El Kasmi Alaoui et al. | Two new fast and efficient hard decision decoders based on hash techniques for real time communication systems | |
JP7116374B2 (ja) | 短縮レイテンシ誤り訂正復号 | |
CN102820892A (zh) | 一种用于并行bch编码的电路、编码器及方法 | |
Shum et al. | Regenerating codes over a binary cyclic code | |
CN105099467A (zh) | Qc-ldpc码的编码方法及编码装置 | |
CN104917535B (zh) | 用于分组码的高阶伴随式计算器和计算高阶伴随式的方法 | |
CN106201433B (zh) | 一种基于rs码的有限域乘法器 | |
WO2019104345A2 (en) | Method and apparatus for efficient data decoding | |
US9287898B2 (en) | Method and circuit for shortening latency of Chien'S search algorithm for BCH codewords | |
US9236890B1 (en) | Decoding a super-code using joint decoding of underlying component codes | |
Kuijper et al. | List-decoding Gabidulin codes via interpolation and the euclidean algorithm | |
JP2000295116A (ja) | 誤り修正符号化方法 | |
Lee et al. | Algebraic decoding of the binary systematic (71, 36, 11) quadratic residue code | |
US8296632B1 (en) | Encoding and decoding of generalized Reed-Solomon codes using parallel processing techniques | |
Roy et al. | Two dimensional algebraic error correcting codes | |
Najarian | Modeling, Simulation, and Implementation of Reed-Solomon Encoder/decoder System | |
TW201603500A (zh) | 用於具有不同GF(2m)中m值的BCH碼之多模式秦式搜尋電路 | |
Ghodeswar et al. | Three-parallel syndrome computation block for RS decoder | |
Jin | Design and implementation of efficient Reed-Solomon decoder for intelligent home networking |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |