CN113467987A - 使用实时可重构生成多项式的快速crc码计算电路 - Google Patents

使用实时可重构生成多项式的快速crc码计算电路 Download PDF

Info

Publication number
CN113467987A
CN113467987A CN202110331628.XA CN202110331628A CN113467987A CN 113467987 A CN113467987 A CN 113467987A CN 202110331628 A CN202110331628 A CN 202110331628A CN 113467987 A CN113467987 A CN 113467987A
Authority
CN
China
Prior art keywords
rank
bit
output
bits
multiplexer
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.)
Pending
Application number
CN202110331628.XA
Other languages
English (en)
Inventor
N.布鲁尼
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.)
Kalray SA
Original Assignee
Kalray SA
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 Kalray SA filed Critical Kalray SA
Publication of CN113467987A publication Critical patent/CN113467987A/zh
Pending legal-status Critical Current

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/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/09Error detection only, e.g. using cyclic redundancy check [CRC] codes or single parity bit
    • H03M13/091Parallel or block-wise CRC computation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/08Error detection or correction by redundancy in data representation, e.g. by using checking codes
    • G06F11/10Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
    • G06F11/1004Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's to protect a block of data words, e.g. CRC or checksum

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Computing Systems (AREA)
  • Probability & Statistics with Applications (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Quality & Reliability (AREA)
  • General Physics & Mathematics (AREA)
  • Error Detection And Correction (AREA)

Abstract

本发明涉及一种用于生成k位数位d的N位循环冗余校验码(CRC)的电路,该码基于N次的可重构生成多项式P,该电路包括动态表,该动态表包括乘法子表(MULT),该乘法子表按k位元素的标量值的顺序,存储由在k位上可定义的每个元素的多项式P相乘得到的乘积;除法子表(DIV),按照k位元素的标量值的顺序,存储左移N位的每个k位元素的多项式P按欧几里德除法相除产生的商;以及一组第一多路复用器(MUX),每个多路复用器被连接以由该除法表的各自单元来索引,以将该乘法表的与该除法表的各自的单元具有相同的秩(v)的相应单元的内容传输到该动态表的输出。

Description

使用实时可重构生成多项式的快速CRC码计算电路
技术领域
本发明涉及对数据流的签名或循环冗余校验码(CRC码)的实时(on-the-fly)计算。
背景技术
CRC码特别用于通过比较在目的端计算出的码与在源处插入流中的码、验证通过通信链路传输的数据的完整性。
一般来说,对二进制报文计算的CRC码是多项式的性能2GF(2N)的有限域中的除法的余数,其中该多项式表示有限域的生成多项式(generator polynmial)的报文。更具体地,CRC码以多项式形式表示为:
CRC({m})={m}XN mod P,
其中{m}为以多项式形式表示的二进制报文,P为生成多项式,N为生成多项式的次数(degree)。
此后,符号“{x}”用于指定代表x的二进制值的有限域的元素或多项式,其中x有时会用标量值表示。例如{5}是与二进制值“101”对应的有限域元素或多项式X2+1。
如今,通信链路可用于根据不同的标准来串行传输多个嵌套流。不同的标准可以使用具有不同的生成多项式的CRC码。因此,接收流的设备应该能够通过应用合适的生成多项式来处理高速到达的这种数据。
如果该报文和码的尺寸很大,则CRC码的计算可能很复杂。为了实现复杂性和计算速度之间的折衷,专用硬件运算符依赖于将报文分解成小数位,并使用根据生成多项式填充的表对各个数位(digit)进行操作。这些表可以包含部分计算结果或完整的CRC值。然后,对数位计算出的码通过使用递归属性进行组合,以计算整个报文的码。例如,在美国专利6,223,320中描述了这种运算符。
发明内容
本发明提供了一种用于生成k位数位d的N位循环冗余校验码(CRC)的电路,该码基于N次的可重构生成多项式P,该电路包括动态表,该动态表包括乘法子表,该乘法子表按k位元素的标量值的顺序,存储由在k位上可定义的每个元素的多项式P相乘得到的乘积;除法子表,按照k位元素的标量值的顺序,存储左移N位的每个k位元素的多项式P按欧几里德除法相除产生的商;以及一组第一多路复用器,每个多路复用器被连接以由该除法表的各自单元来索引,以将该乘法表的相应单元的内容传输到该动态表的与该除法表的各自的单元具有相同的秩的输出。
该电路还可以包括由数位d索引的第二多路复用器,以将该动态表的相应秩的输出作为数位d的码来传输。
该除法子表可以包括:
对于该除法子表的秩2i的每个输出,其中i从0到k-1变化:
多路复用器,其由该生成多项式的i个最高有效位来索引,并在其输入上分别接收该除法子表的秩0到秩2i-1的输出;
位对位异或门,其从二进制数{2i}产生该除法子表的秩2i的输出和与秩2i相关联的多路复用器的输出;以及
对于秩j的每个输出,其中j从(2i+1)到(2i+1-1)变化:
位对位异或(XOR)门,其接收该除法子表的秩2i和秩j-2i的输出。
与秩2i相关联的异或门可以包括产生秩2i的输出、使得权重i的位被设置为1并且小于i的权重的位对应于与秩2i相关联的多路复用器的输出的布线。
为了对由k个最高有效位的数位d和s个最低有效位的数位d’形成的数据项生成CRC码,该电路还可以包括由第二s位数位索引的第三多路复用器,以传输该动态表的相应秩的输出;第一位对位异或门,其从由数位d’和该第二多路复用器提供的数位d的编码的s个最高有效位中形成第二s位数位;以及第二位对位异或门,其接收该第三多路复用器的输出的数位d的编码的N-s个最低有效位和N-s个最高有效位,其中该数据项的编码由该第二异或门的输出的N-s个最高有效位和该第三多路复用器的输出的s个最低有效位构成。
还提供了一种生成该除法子表的方法,包括以下步骤:
对于从0到k-1变化的i:
生成秩2i的输出,作为二进制数{2i}和由该生成多项式的i个最高有效位定义的先前秩的输出之间的位对位异或运算;以及
对于从(2i+1)到(2i+1-1)变化的j:
通过秩2i和秩j-2i的输出之间的位对位异或运算产生秩j的输出。
还提供了一种用于生成该乘法子表的方法,包括以下步骤:
对于从0到k-1变化的i:
通过将该生成多项式向左移动i个位置来生成秩2i的输出;以及
对于从(2i+1)到(2i+1-1)变化的j:
通过秩2i和秩j-2i的输出之间的位对位异或运算生成秩j的输出。
附图说明
下面将给出实施例,以下描述仅出于示例性目的,将结合附图进行展示,其中:
图1示出了使用基于该生成多项式的可重构动态表的CRC计算运算符的实施例的框图;
图2示出了结合在图1的动态表中的示例性乘法子表的框图;
图3A示出了结合在图1的动态表中的示例性除法子表的框图;
图3B示出了图3A的结构的布线简化;以及
图4示出了扩展到一条报文的几个数位的CRC计算操作符的框图,其多次利用了图1的结构。
具体实施例
在本公开中,为了计算对报文的CRC码,建议使用根据生成多项式的动态可重构的CRC值表,并且这在数据传输时钟的一个周期中、或者至少在与流水线运算兼容的数量减少的周期中进行。为此,尽管表在外部表现为存储固定值的静态表,但它在组合逻辑中具有动态内部结构,该结构响应于作为表的唯一参数被提供的生成多项式P而生成表值。
为了响应于该生成多项式的变化以实现足够快的重构,该表包括两个动态子表,其值响应于被应用作为参数的生成多项式而生成。两个子表被配置以使得一个表的值操作另一个表的值的选择。
图1在为k位数位d计算32位CRC码的上下文下,更详细地说明了这种结构。该动态表记为CRCP,k,,其中P是该生成多项式,这里次数N=32,k是为其计算编码的数位d的位数码。
第一个子表、或称乘法表MULT包含该多项式P的倍数{q}·P乘以在k位上可定义的所有元素{q},即GF(2k)的元素。这些倍数在表中按照元素{q}的标量值q的顺序组织。
因此,表MULT显示为按顺序包含乘积{0}·P,{1}·P,{2}·P...{q}·P...{2k-1}·P。
每个乘积是次数为32的多项式与次数为k-1的多项式相乘的结果,该乘积是次数k+31的多项式,即k+32位的数量。为了计算32位码,结果只可以存储乘积的32个最低有效位,因为该码取自除法的余数,其中只有最低有效位是重要的。因此,如图中断开的线所示,乘积的k个最高有效位被忽略(并且不被存储)。作为进一步的结果,对应于始终为1的秩33的一位的多项式P的32次数的项也被省略。
第二子表、除法表DIV包含按欧几里德除法由该多项式P除以多项式{v}·X32产生的商Q,其中{v}假设GF(2k)的所有元素。(二进制的元素{v}·X32不是别的,而是左移32位的二进制值{v},即k+32位的二进制值,其中32个最低有效位全部为零)。该商记为Q({0}),Q({1})...Q({v})...Q({2k-1}),它们按照元素{v}的标量值v的顺序组织。该商是在k位上编码的二进制值。
除法表DIV的每个单元Q({v})与全局表CRCP,k的秩v的输出相关联。单元Q({v})的内容的标量值q用于选择该乘法表MULT的秩q的单元,并将该单元的内容{q}·P传输到全局表的秩v的输出(如行v和列q之间的虚线所示)。因此,秩v的输出提供乘积{q}·P=Q({v})·P,根据CRC的属性,该乘积的32个最低有效位也是除法的余数,即搜索到的{v}的CRC码。
根据所示的实施例,为了执行这种切换功能,单元Q({v})的内容q用作各自的多路复用器的索引,该多路复用器的输出形成该全局表的秩v的输出。该多路复用器在其各自的输入上按照该表MULT的单元的秩的顺序接收该表MULT的单元的内容。
为了产生给定k位数位d的CRC码,提供了多路复用器10,其以数位d为索引,并在其各自的输入上按照这些输出的秩的顺序接收该全局表的输出。
如果只使用了一个生成多项式P,则该表CRCP,k具有相对复杂的结构。事实上,在这种情况下,只存储值Q({0})·P to Q({2k-1})·P就足够了。当该多项式P是任意变量时,附加的复杂性有意义,因为这种划分为子表的特定选择允许在多项式改变时,使用如下所述的相对简单和快速的硬件手段,实时更新这些子表。
图2示出了乘法表MULT的优化示例的更详细的图,对于k=3,该乘法表可由多项式P动态配置。为了以简单的方式在组合逻辑中建立这样一个表,每个输出{i}·P可以通过将P加到先前的输出{i-1}·P来产生,该加法是位对位异或运算。然而,这将在第一个输出和最后一个输出之间级联多达2k-1个异或门,在相应的组合逻辑电路中形成相当关键的路径。
下面的递归规则大大减少了组合逻辑中的关键路径。需要指出的是,出于CRC码计算的目的,二进制值被截断为32个最低有效位,且该多项式P的X32中的项被省略。
{0}·P={0}
对于从0到k-1变化的i:
{2i}·P=P<<i
也就是说,该多项式P的二进制表示的位被向左移动i个位置,用零填充创建到右边的i个位,并丢弃溢出到左边的i个位。
对于从(2i+1)到(2i+1-1)变化的j:
{j}·P={2i}·Pxor{j-2i}·P,
其中“异或(xor)”是指逐位异或运算,即有限域中的加法运算。
分解j=(2i)+(j-2i)允许在这个迭代步骤中重复使用秩中相对接近的两个先前计算的项,以便使用尽可能少的串联的异或门。
图2的图表是到针对k=3的该递归规则的数位电路元素的直接转录,根据该转录获得下面的分解:
{0}·P={0}
{1}·P=P<<0=P
{2}·P=P<<1
{3}·P={2}·Pxor{1}·P
{4}·P=P<<2
{5}·P={4}·Pxor{1}·P
{6}·P={4}·Pxor{2}·P
{7}·P={4}·Pxor{3}·P
左移元素“<<1”和“<<2”通过简单的交叉布线实现,不引入任何延迟。很明显,该关键路径最多有两个异或门XOR,即输出{3}·P的异或门,后跟着输出{7}·P的异或门,而不是输出{1}·P和输出{7}·P之间的不重要的结构的6个异或门。
图3A显示了针对k=3的由该多项式P动态配置的除法表DIV的优化示例的更详细的图。使用的迭代构造规则如下。仅考虑该多项式P的小于或等于31次的项,即32个位。
Q({0})={0}
对于从0到k-1变化的i:
Q({2i})={2i}xorQ(P>>32-i),
其中P>>32-i,即向右移动了32-i个位置(没有项X32)的该多项式P的二进制表示,是一种简洁的符号,以表示只保留P的i个最高有效位。
对于从(2i+1)到(2i+1-1)变化的j:
Q({j})=Q({2i})xorQ({j-2i})。
图3A的图是到针对k=3的递归规则的数位电路元素的直接转录,根据该转录,获得以下分解,其中商在k=3个位上编码:
Q({0})={0}
Q({1})={1}xorQ(P>>32)={1}xor Q({0})={1}
Q({2})={2}xorQ(P>>31)={2}xor Q(P[31])
Q({3})=Q({2})xorQ({1})
Q({4})={4}xorQ(P>>30)={4}xor Q(P[31:30])
Q({5})=Q({4})xorQ({1})
Q({6})=Q({4})xorQ({2})
Q({7})=Q({4})xorQ({3})
与计算的其他项相反,项Q(P[31])和Q(P[31:30])不能独立于该多项式P而定位于的表中——它们确实取决于应用于表的多项式的各个位。因此,分别依赖于它们的商Q({2})和Q({4})在其生成路径中具有多路复用器MUX,该多路复用器MUX根据被应用的多项式P选择要使用的商。
更具体地,为了提供在商Q({2})的生成中涉及的项Q(P[31]),由位P[31]索引的多路复用器30在其输入上依次接收常数{0}和{1},这些常数也是表的输出Q({0})和Q({1})。事实上,通过直接为Q(P[31])提供位P[31]作为k的数量=3个位中的最低有效位,这个多路复用器可以被省略。
为了提供在商Q({4})的生成中涉及的项Q(P[31:30]),由位P[31:30]索引的多路复用器32在其输入上依次接收表的Q({0})到Q({3})的输出。
对于较高的k值,显示的第一个元素保持不变。要生成的下一个商Q({8})由下式表示:
Q({8})={8}xorQ(P[31:29])。
项Q(P[31:29])由三个位P[31:29]索引的、并在其输入上分别接收商Q({0})至Q({7})、事实上是在Q({8})之前的所有商的多路复用器来实现。
生成以下商Q({9})到Q({15})相对简单,每个商都是根据迭代规则的第二步在表中可静态定位的两个先前商的异或组合。
以下的商Q({16})涉及项Q(P[31:28]),该项由四个位P[31:28]索引并且在其输入上分别接收商Q({0})到Q({15})的多路复用器实现。等等。
假设与多路复用器的输出相关联的异或门具有接收在1处有单个固定位的值({2},{4})的输入和接收具有低阶的有效位的值的输入,这些门在实践中不一定被使用。事实上,它们的功能可以通过简单地将传输异或门的两个输入的位的布线并列来获得。
图3B说明了由此属性产生的简化结构。商Q({2})由位0、1和P[31]按重要性递减顺序形成,而商Q({4})由位1和与该商相关联的多路复用器的两个输出位形成。
给定图1中的CRC表的结构,其大小随着2k而二次方地增加。因此,可能希望通过利用CRC计算属性,获得在运算符复杂性和计算速度之间的折衷。
图4示出了表CRCP,k的应用,该表最初适用于k位数位(类似于图1的数位),以对k+s位的扩展的数字dd’计算CRC码。假设扩展的数字dd’由高阶k位数位d和低阶s位数位d’组成。在示例中,假设s小于或等于k。
该电路使用可以对报文的连续数位递归计算CRC码、来形成完整报文的码的特性。图4中的电路被设计成在组合逻辑中同时执行两次迭代。
更具体地说,所使用的递归关系如下,记住位的移动在32位窗口中操作,使得离开窗口的位被丢弃,进入窗口的位被设置为0。
CRC(dd')=(CRC(d)<<s)xor CRC(d')>>(32-s))
图1的结构被完全再现、即该表CRCP,k和该多路复用器10、以生成数位d的中间码CRC32(d)。
数位d’和码CRC32(d)的s个最高有效位由控制多路复用器40的异或门组合。该多路复用器40在表CRCP,k的前2s个输出上与该多路复用器10并联连接。
码CRC32(d)的32-s个最低有效位和多路复用器40的输出的32-s个最高有效位由异或门组合,以形成该扩展的数位dd’的CRC码的32-s个最高有效位。该码的s个最低有效位由多路复用器40的输出的s个最低有效位形成。因此,单个CRC表可用于计算两倍长(s=k)的数字的CRC码,而复杂性几乎没有增加。

Claims (7)

1.一种用于生成k位数位d的N位循环冗余校验码(CRC)的电路,该码基于N次的可重构生成多项式P,该电路包括动态表,所述动态表包括:
乘法子表(MULT),其被连接以接收二进制形式的生成多项式,并在各自的输出上、按k位元素的标量值的顺序、提供由在k位上可定义的每个元素的多项式P相乘得到的乘积;
除法子表(DIV),其被连接以接收二进制形式的生成多项式,并且在相应的输出上、按k位元素的标量值的顺序、提供用左移N位的每个k位元素的多项式P按欧几里德除法相除产生的商;以及
一组第一多路复用器(MUX),每个多路复用器被连接以由除法表的各自的输出来索引,从而发送所述乘法表的相应的输出的内容到所述动态表的与所述除法表的各自的输出具有相同的秩(v)的输出。
2.根据权利要求1所述的电路,进一步包括:
第二多路复用器(10),其通过由数位d来索引,以将所述动态表的相应秩的输出作为数位d的码来传输。
3.根据权利要求1所述的电路,其中所述除法子表(DIV)被配置为:对于从0到k-1变化的i:
生成秩2i的输出,作为二进制数{2i}和由所述生成多项式的i个最高有效位定义的先前秩的输出之间的位对位异或运算;以及
对于从(2i+1)到(2i+1-1)变化的j:
通过秩2i和秩j-2i的输出之间的位对位异或运算产生秩j的输出。
4.根据权利要求3所述的电路,其中所述除法子表(DIV)包括:对于所述除法子表的秩2i的每个输出,其中i从0到k-1变化:
多路复用器(MUX),由所述生成多项式(P)的i个最高有效位来索引,并在其输入处分别接收所述除法子表的秩0到秩2i-1的输出;
位对位异或门(XOR),其从二进制数{2i}以及与秩2i相关联的多路复用器的输出产生所述除法子表的秩2i的输出;以及
对于每个秩j的输出,其中j从(2i+1)到(2i+1-1)变化:
位对位异或门(XOR),其接收所述除法子表的秩2i和秩j-2i的输出。
5.根据权利要求4所述的电路,其中与秩2i相关联的异或门包括产生秩2i的输出、使得权重i的位被设置为1并且小于i的权重的位对应于与秩2i相关联的多路复用器的输出的布线。
6.根据权利要求1所述的电路,其中所述乘法子表(MULT)被配置为:
对于从0到k-1变化的i:
通过将所述生成多项式向左移动i个位置来生成秩2i的输出;以及
对于从(2i+1)到(2i+1-1)变化的j:
通过秩2i和秩j-2i的输出之间的位对位异或运算生成秩j的输出。
7.根据权利要求2所述的电路,为了对由k个最高有效位的数位d和s个最低有效位的数位d’形成的数据项(dd’)生成CRC码,还包括:
第三多路复用器(40),其由第二s位数位来索引,以发送所述动态表的相应秩的输出;
第一位对位异或门,其从由数位d’和所述第二多路复用器(10)提供的数位d的码(CRC32(d))的s个最高有效位中形成第二s位数位;以及
第二位对位异或门,其接收数位d的码(CRC32(d))的N-s个最低有效位和所述第三多路复用器的输出的N-s个最高有效位,所述数据项的码(CRC32(dd’))由所述第二异或门的输出的N-s个最高有效位和所述第三多路复用器的输出的s个最低有效位形成。
CN202110331628.XA 2020-03-30 2021-03-26 使用实时可重构生成多项式的快速crc码计算电路 Pending CN113467987A (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
FR2003134 2020-03-30
FR2003134A FR3108812B1 (fr) 2020-03-30 2020-03-30 Circuit de calcul de CRC rapide utilisant un polynôme réducteur reconfigurable au vol

Publications (1)

Publication Number Publication Date
CN113467987A true CN113467987A (zh) 2021-10-01

Family

ID=71662019

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110331628.XA Pending CN113467987A (zh) 2020-03-30 2021-03-26 使用实时可重构生成多项式的快速crc码计算电路

Country Status (4)

Country Link
US (1) US11489544B2 (zh)
EP (1) EP3890192B1 (zh)
CN (1) CN113467987A (zh)
FR (1) FR3108812B1 (zh)

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6223320B1 (en) 1998-02-10 2001-04-24 International Business Machines Corporation Efficient CRC generation utilizing parallel table lookup operations
US7458006B2 (en) * 2002-02-22 2008-11-25 Avago Technologies General Ip (Singapore) Pte. Ltd. Methods for computing the CRC of a message from the incremental CRCs of composite sub-messages
US7320101B1 (en) * 2003-08-19 2008-01-15 Altera Corporation Fast parallel calculation of cyclic redundancy checks
US20060168495A1 (en) * 2005-01-25 2006-07-27 Analog Devices, Inc. Computation of cyclic redundancy check
US7590930B2 (en) * 2005-05-24 2009-09-15 Intel Corporation Instructions for performing modulo-2 multiplication and bit reflection
US7761776B1 (en) * 2005-11-03 2010-07-20 Xilinx, Inc. Method and apparatus for a modular, programmable cyclic redundancy check design
US7886214B2 (en) * 2007-12-18 2011-02-08 Intel Corporation Determining a message residue
US9350385B2 (en) * 2013-03-15 2016-05-24 Xilinx, Inc. Modular and scalable cyclic redundancy check computation circuit
US20170063493A1 (en) * 2015-08-25 2017-03-02 Signalchip Innovations Private Limited Methods and circuits for performing cyclic redundancy check (crc) of an input data stream
US10404278B2 (en) * 2016-12-16 2019-09-03 Stmicroelectronics International N.V. Parallel pipeline logic circuit for generating CRC values utilizing lookup table
US10866857B2 (en) * 2017-10-09 2020-12-15 Tsofun Algorithms Ltd. Encoding and decoding of permuted cyclic codes

Also Published As

Publication number Publication date
US20210306002A1 (en) 2021-09-30
FR3108812B1 (fr) 2022-03-18
EP3890192B1 (fr) 2023-04-26
US11489544B2 (en) 2022-11-01
EP3890192A1 (fr) 2021-10-06
FR3108812A1 (fr) 2021-10-01

Similar Documents

Publication Publication Date Title
Campobello et al. Parallel CRC realization
Mastrovito VLSI designs for multiplication over finite fields GF (2m)
US6760742B1 (en) Multi-dimensional galois field multiplier
EP0480621B1 (en) Apparatus and method for parallel generation of cyclic redundancy check (CRC) codes
JPH09507110A (ja) 有限体反転
JPH11346157A (ja) リードソロモン符号化装置および方法
US7539918B2 (en) System and method for generating cyclic codes for error control in digital communications
JP2019110522A (ja) バイト誤り位置信号の決定および使用
Deshpande et al. Fast and efficient hardware implementation of HQC
Qaqos Optimized FPGA implementation of the CRC using parallel pipelining architecture
KR100322739B1 (ko) 유한체연산방법및그장치
US6052704A (en) Exponentiation circuit and inverter based on power-sum circuit for finite field GF(2m)
Dubrova et al. A BDD-based approach to constructing LFSRs for parallel CRC encoding
JP2000004169A (ja) Crc演算方法及びcrc演算回路
CN113467987A (zh) 使用实时可重构生成多项式的快速crc码计算电路
JP4045872B2 (ja) 符号化方法および符号化装置
JP4081875B2 (ja) 符号化装置および方法、復号装置および方法、並びに提供媒体
WO1991020028A1 (en) Universal galois field multiplier
Li et al. Low-complexity versatile finite field multiplier in normal basis
Shukla LFSR based versatile divider architectures for BCH and RS error correction encoders
KR100578721B1 (ko) XOR 논리를 이용한 n 비트 순환 중복 검사 생성 방법및 이를 이용한 병렬 순환 중복 검사 생성기
Bharathwaj et al. An alternate approach to modular multiplication for finite fields [GF (2/sup m/)] using Itoh Tsujii algorithm
Ahmad On design of 8-bit CRC circuits equipped with primitive characteristic polynomials
Reddy An Optimization Technique for CRC Generation
Fenn et al. The design of Reed-Solomon codecs over the, dual basis

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination