CN108880562A - 循环冗余校验电路及其方法、装置以及芯片、电子设备 - Google Patents

循环冗余校验电路及其方法、装置以及芯片、电子设备 Download PDF

Info

Publication number
CN108880562A
CN108880562A CN201710330855.4A CN201710330855A CN108880562A CN 108880562 A CN108880562 A CN 108880562A CN 201710330855 A CN201710330855 A CN 201710330855A CN 108880562 A CN108880562 A CN 108880562A
Authority
CN
China
Prior art keywords
crc
generator polynomial
iteration
coefficient
power
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.)
Granted
Application number
CN201710330855.4A
Other languages
English (en)
Other versions
CN108880562B (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.)
Zhuhai Zero Boundary Integrated Circuit Co Ltd
Original Assignee
Gree Electric Appliances Inc of Zhuhai
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 Gree Electric Appliances Inc of Zhuhai filed Critical Gree Electric Appliances Inc of Zhuhai
Priority to CN201710330855.4A priority Critical patent/CN108880562B/zh
Priority to PCT/CN2017/118622 priority patent/WO2018205633A1/zh
Priority to US16/612,681 priority patent/US11403166B2/en
Publication of CN108880562A publication Critical patent/CN108880562A/zh
Application granted granted Critical
Publication of CN108880562B publication Critical patent/CN108880562B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

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
    • 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/13Linear codes
    • H03M13/15Cyclic codes, i.e. cyclic shifts of codewords produce other codewords, e.g. codes defined by a generator polynomial, Bose-Chaudhuri-Hocquenghem [BCH] codes
    • H03M13/151Cyclic 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/157Polynomial evaluation, i.e. determination of a polynomial sum at a given value

Landscapes

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

Abstract

本发明涉及计算机技术领域,特别是涉及一种循环冗余校验电路及其方法、装置以及芯片、电子设备。其中该循环冗余校验电路包括:配置模块用于获取配置信息与信息字段;CRC仲裁模块用于根据配置信息确定生成多项式;CRC控制模块用于响应于CRC仲裁模块的触发,输出时钟信号、生成多项式中各次幂对应的系数及信息字段;并行迭代模块用于响应于时钟信号,根据生成多项式中各次幂对应的系数将信息字段进行并行迭代处理以输出迭代结果;CRC输出模块用于根据迭代结果封装信息字段。一方面,其只需一个周期的时钟信号便完成信息字段的并行迭代处理,提高CRC计算的效率。另一方面,其灵活配置各类配置信息,以适应多种多样CRC计算需求。

Description

循环冗余校验电路及其方法、装置以及芯片、电子设备
技术领域
本发明涉及计算机技术领域,特别是涉及一种循环冗余校验电路及其方法、装置以及芯片、电子设备。
背景技术
循环冗余校验码(Cyclic Redundancy Check,CRC)用于校验数据传输的正确性与完整性,CRC运算具有很强的检错能力,易于用编码器或检测电路实现。
图1是传统技术提供一种CRC8串行移位电路的结构示意图。如图1所示,该电路的生成多项式为:G=g8X8+g7X7+...+g1X1+1,其能够进行移位以计算出CRC校验码。
发明人在实现本发明的过程中,发现传统技术至少存在以下问题:进行CRC计算时,每输入一位信息码d,便需要一个时钟周期,当输入d0、d1......dn-1共n bit信息码,则需要n个时钟周期。因此,进行CRC计算时,需要较多时间输入多位信息码,导致CRC计算时间比较冗长。
发明内容
本发明实施例的一个目的旨在提供一种循环冗余校验电路及其方法、装置以及芯片、电子设备,其解决了现有技术存在着CRC计算效率低下的问题。
为解决上述技术问题,本发明实施例提供以下技术方案:
在第一方面,本发明实施例公开一种循环冗余校验电路,所述电路包括:配置模块,用于获取配置信息与信息字段;CRC仲裁模块,用于根据所述配置信息,确定生成多项式;CRC控制模块,用于响应于所述CRC仲裁模块的触发,输出时钟信号、所述生成多项式中各次幂对应的系数及信息字段;并行迭代模块,用于响应于所述时钟信号,根据所述生成多项式中各次幂对应的系数,将所述信息字段进行并行迭代处理,以输出迭代结果;CRC输出模块,用于根据所述迭代结果,封装所述信息字段。
可选的,所述配置信息包括j-1位CRC初始值,所述并行迭代模块包括i*j个迭代单元;第i-1行第0列迭代单元用于接收所述信息字段中对应位的信息值;第0行第j-1列迭代单元用于响应于所述时钟信号,根据所述CRC初始值及生成多项式中对应次幂的系数,计算出第0行第j-1列迭代单元的输出值;第i行第j列迭代单元用于响应于所述时钟信号,根据第i-1行第j-1迭代单元的输出值与生成多项式中对应次幂的系数,计算出第i行第j列迭代单元的输出值,i与j皆为正整数。
可选的,每个所述迭代单元至少包括一个乘法器与异或器;第i-1行第j-1列的乘法器用于将最高次幂对应的系数、最高位对应的CRC初始值及对应次幂的系数进行相乘,并且输出相乘结果;第i-1行第0列的异或器用于将相乘结果与所述信息字段中对应位的信息值进行异或,输出第i-1行第0列迭代单元的输出值;第0行第j列的异或器用于将相乘结果与第j-1位对应CRC初始值进行异或,输出第0行第j列迭代单元的输出值;第i行第j列的异或器用于将相乘结果与第i-1行第j-1迭代单元的输出值进行异或,输出第i行第j列迭代单元的输出值。
可选的,所述配置信息包括CRC类型与生成多项式的各项系数;所述CRC仲裁模块用于根据所述配置信息,确定生成多项式,包括:所述CRC仲裁模块用于根据所述CRC类型与生成多项式的各项系数,确定生成多项式的类型与所述生成多项式中各次幂对应的系数。
可选的,所述CRC类型包括以下任意一种:CRC4、CRC7、CRC8、CRC12、CRC16、CRC32。
在第二方面,本发明实施例提供一种循环冗余校验方法,所述方法包括:获取配置信息与信息字段;根据所述配置信息,确定生成多项式与所述生成多项式中各次幂对应的系数;根据所述生成多项式中各次幂对应的系数,将所述信息字段进行并行迭代处理,以输出迭代结果;根据所述迭代结果,封装所述信息字段。
可选的,所述配置信息包括CRC初始值;所述根据所述生成多项式中各次幂对应的系数,将所述信息字段进行并行迭代处理,以输出迭代结果,包括:根据所述生成多项式中各次幂对应的系数与CRC初始值,将所述信息字段进行并行迭代处理,以输出迭代结果。
可选的,所述配置信息包括CRC类型与生成多项式的各项系数;所述根据所述配置信息,确定生成多项式与所述生成多项式中各次幂对应的系数,包括:根据所述CRC类型与生成多项式的各项系数,确定生成多项式的类型与所述生成多项式中各次幂对应的系数。
在第三方面,本发明实施例提供一种循环冗余校验装置,所述装置包括:获取模块,用于获取配置信息与信息字段;确定模块,用于根据所述配置信息,确定生成多项式与所述生成多项式中各次幂对应的系数;迭代模块,用于根据所述生成多项式中各次幂对应的系数,将所述信息字段进行并行迭代处理,以输出迭代结果;封装模块,用于根据所述迭代结果,封装所述信息字段。
可选的,所述配置信息包括CRC初始值;所述迭代模块具体用于:根据所述生成多项式中各次幂对应的系数与CRC初始值,将所述信息字段进行并行迭代处理,以输出迭代结果。
可选的,所述配置信息包括CRC类型与生成多项式的各项系数;所述确定模块具体用于:根据所述CRC类型与生成多项式的各项系数,确定生成多项式的类型与所述生成多项式中各次幂对应的系数。
在第四方面,本发明实施例提供一种芯片,所述芯片包括如上述任一的循环冗余校验电路。
在第五方面,本发明实施例提供一种非易失性计算机可读存储介质,所述非易失性计算机可读存储介质存储有电子设备的可执行指令,所述可执行指令用于使所述电子设备执行如上述任一的循环冗余校验方法。
在第六方面,一种电子设备,包括:至少一个处理器;以及与所述至少一个处理器通信连接的存储器;其中,所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够用于执行如上述任一的循环冗余校验方法。
在本发明各个实施例中,配置模块获取配置信息与信息字段,CRC仲裁模块根据配置信息,确定生成多项式,CRC控制模块响应于CRC仲裁模块的触发,输出时钟信号与生成多项式中各次幂对应的系数,并行迭代模块响应于时钟信号,根据生成多项式中各次幂对应的系数,将信息字段进行并行迭代处理,以输出迭代结果,CRC输出模块根据迭代结果,封装信息字段。因此,一方面,其只需一个周期的时钟信号便可以完成信息字段的并行迭代处理,从而提高CRC计算的效率。另一方面,其可以灵活配置各类配置信息,以适应多种多样的CRC计算需求。
附图说明
一个或多个实施例通过与之对应的附图中的图片进行示例性说明,这些示例性说明并不构成对实施例的限定,附图中具有相同参考数字标号的元件表示为类似的元件,除非有特别申明,附图中的图不构成比例限制。
图1是传统技术提供一种CRC8串行移位电路的结构示意图;
图2是本发明实施例提供一种CRC校验的应用场景示意图;
图3是本发明实施例提供一种循环冗余校验电路的结构示意图;
图4是本发明实施例提供一种CRC校验的时序图;
图5是本发明实施例提供一种采用CRC8类型的并行迭代模块的结构示意图;
图6是本发明实施例提供一种采用CRC8类型并且迭代四位信息字段的并行迭代模块的结构示意图;
图7是图6的迭代表;
图8是本发明实施例提供一种循环冗余校验装置的结构示意图;
图9是本发明实施例提供一种循环冗余校验方法的流程示意图;
图10是本发明实施例提供一种电子设备的结构示意图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明。
CRC校验原理是在一个K位二进制数据序列之后附加一个(N-R)位二进制校验码(序列),从而构成一个总长为N=K+R位的二进制序列。附加在数据序列之后的校验码与数据序列的内容之间存在着某种特定的关系。若因干扰等原因使数据序列中的某一位或某些位发生错误,此种特定关系被破坏,特此,通过CRC校验算法或CRC校验电路校验此类关系,便可以校验数据序列的正确性。
当进行CRC校验时,发送方与接收方需要事先约定一个除数,即生成多项式,一般记作G(x)。生成多项式的最高位与最低位必须是1。常用的CRC码的生成多项式有:
CRC8=X8+X5+X4+1;
CRC-CCITT=X16+X12+X5+1;
CRC16=X16+X15+X5+1;
CRC12=X12+X11+X3+X2+1;
CRC32=X32+X26+X23+X22+X16+X12+X11+X10+X8+X7+X5+X4+X2+X1+1;
进一步的,如上所述,为了进行差错校验,需要在k位的信息字段后添加的(N-R)位冗余码。
进一步的,在CRC校验过程中,需要用到模2计算方法,所谓的模2计算方法是按位异或(Exclusive OR)运算,即相同为0,相异为1,也就是不考虑进位、借位的二进制加减运算。如:10011011+11001010=01010001。
CRC校验码的计算原理如下:
设信息字段为K位,校验字段为R位,则码字长度为N(N=K+R)。设双方事先约定了一个R次多项式g(x),则CRC码:
V(x)=A(x)g(x)=xRm(x)+r(x)
其中:m(x)为K次信息多项式,r(x)为R-1次校验多项式。
r(x)对应的代码即为冗余码,亦即,冗余码加在原信息字段后即形成CRC码。
r(x)的计算方法为:在K位信息字段的后面添加R个0,再除以g(x)对应的代码序列,得到的余数即为r(x)对应的代码(应为R-1位;若不足,而在高位补0)。
例如:
信息字段代码为:1011001;对应m(x)=x6+x4+x3+1
假设生成多项式为:g(x)=x4+x3+1;则对应g(x)的代码为:11001
x4m(x)=x10+x8+x7+x4对应的代码记为:10110010000;
采用多项式除法,得到余数为:1010(即校验字段为:1010)
发送方:发出的传输字段为:
1 0 1 1 0 0 1 1 0 1 0
信息字段 校验字段
接收方:使用相同的生成码进行校验:接收到的字段/生成码(二进制除法),如果能够除尽,则正确。
为了进一步阐述CRC校验的工作原理,本发明实施例提供一种CRC校验的应用场景。如图2所示,该应用场景200包括以下元素:电子标签21、读写器22及云端服务器23。云端服务器23可以是一个物理服务器或者多个物理服务器虚拟而成的一个逻辑服务器。云端服务器23也可以是多个可互联通信的服务器组成的服务器群。
电子标签21由芯片和耦合元件构成,内置天线与读写器通讯。读写器22内嵌有CRC校验模块,当读写器22向电子标签21发送通信数据时,CRC校验模块使用预设的生成多项式校验与封装该通信数据,从而使传输通信数据更加可靠。电子标签21接收到该通信数据之后,使用同样的生成多项式对该通信数据进行校验,并且校验成功,电子标签21向读写器22返回校验成功信息,读写器22将该校验成功信息发送至云端服务器23进行存储,以便用户在云端服务器23进一步开发该校验成功信息。
CRC校验模块根据该通信数据计算CRC校验码时,需要一个时钟信息方可输入通信数据中一位信息码,导致读写器22未能够迅速响应电子标签21以完成读写过程。并且,CRC校验模块未能够根据通信协议要求灵活配置对应的生成多项式以更加迅速或精确地计算出CRC校验码。
特此,本发明实施例提供一种循环冗余校验电路。如图3所示,该循环冗余校验电路300包括配置模块31、CRC仲裁模块32、CRC控制模块33、并行迭代模块34及CRC输出模块35。
配置模块31获取配置信息与信息字段。配置信息可以包括CRC类型、生成多项式、CRC初始值、信息字段翻转处理信息及迭代结果异或与翻转处理信息,配置信息用于指示循环冗余校验电路300选择对应的配置信息完成CRC校验与输出数据的处理。CRC类型包括以下任意一种:CRC4、CRC7、CRC8、CRC12、CRC16、CRC32。生成多项式包括生成多项式类型与该生成多项式中各次幂对应的系数,其中,生成多项式类型与CRC类型对应,并且用户可以根据协议或者产品需求自行定义生成多项式类型与生成多项式中各次幂对应的系数。CRC初始值用于初始化并行迭代模块34,其中,该CRC初始值可以是协议定义值或上一次并行迭代出的输出值,CRC初始值的位数与并行迭代模块34的迭代位数关联。信息字段翻转处理信息用于指示配置模块31根据协议预先将信息字段的各个信息码进行翻转。迭代结果异或与翻转处理信息用于指示CRC输出模块35对迭代结果进行异或与翻转处理。
例如,配置信息包括信息字段翻转处理信息,配置模块21根据该信息字段翻转处理信息,对信息字段预先进行翻转处理,以便符合协议输出预处理的对应信息字段。
例如,配置信息包括CRC类型或生成多项式。当CRC类型是CRC8(CRC8=X8+X5+X4+1)时,则CRC仲裁模块32选择CRC8对应的生成多项式进行校验,并且确定g0=1,g1=g2=g3=g4=0,g5=g6=1,g7=0,g8=1。当CRC类型是CRC16时,同理可得,可以确定对应的生成多项式进行校验。当然,用户可以不选择标准CRC类型,而选择自定义的生成多项式进行校验,例如,g(x)=x5+x3+1。此时,CRC仲裁模块32根据该生成多项式,确定5次幂的系数为1,3次幂的系数为1,0次幂的系数为1,1次幂、2次幂及4次幂的系数为0。
再例如,配置信息包括CRC初始值。当CRC初始值为01010101时,并行迭代模块34同时接收CRC初始值的输入与信息字段进行迭代处理。
信息字段是发送方向接收方发送的通信数据,其是二进制序列。
CRC仲裁模块32根据配置信息,确定生成多项式之后,向CRC控制模块33发送触发信号,CRC控制模块33根据该触发信号向并行迭代模块34发送时钟信号、生成多项式中各次幂对应的系数及信息字段,并行迭代模块34响应于该时钟信号,并行完成信息字段的输入,并且根据生成多项式中各次幂对应的系数,将信息字段进行并行迭代处理,以输出迭代结果。CRC输出模块35根据迭代结果,封装信息字段。在封装该信息字段,并且配置信息包括迭代结果异或与翻转处理信息时,CRC输出模块35可以对迭代结果进行异或与翻转处理。
综上,采用该循环冗余校验电路300,一方面,如图4所示,其只需一个周期1T的时钟信号便可以完成信息字段的并行迭代处理,从而提高CRC计算的效率。另一方面,其可以灵活配置各类配置信息,以适应多种多样的CRC计算需求。
在一些实施例中,配置信息包括j-1位CRC初始值,并且,并行迭代模块34包括i*j个迭代单元。其中,第i-1行第0列迭代单元用于接收信息字段中对应位的信息值。第0行第j-1列迭代单元用于响应于时钟信号,根据CRC初始值及生成多项式中对应次幂的系数,计算出第0行第j-1列迭代单元的输出值。第i行第j列迭代单元用于响应于时钟信号,根据第i-1行第j-1迭代单元的输出值与生成多项式中对应次幂的系数,计算出第i行第j列迭代单元的输出值,i与j皆为正整数。
每个迭代单元至少包括一个乘法器与异或器。第i-1行第j-1列的乘法器用于将最高次幂对应的系数、最高位对应的CRC初始值及对应次幂的系数进行相乘,并且输出相乘结果。第i-1行第0列的异或器用于将相乘结果与信息字段中对应位的信息值进行异或,输出第i-1行第0列迭代单元的输出值。第0行第j列的异或器用于将相乘结果与第j-1位对应CRC初始值进行异或,输出第0行第j列迭代单元的输出值。第i行第j列的异或器用于将相乘结果与第i-1行第j-1迭代单元的输出值进行异或,输出第i行第j列迭代单元的输出值。
为了详细阐述并行迭代模块34,本发明实施例以CRC8为例子,详细阐述并行迭代模块34的工作原理。如图5所示,CRC初始值分别为:并行迭代模块34包括n*8个迭代单元341(i=n,j=1、2、3、4、5、6、7),n是正整数。其中,第0行第0列迭代单元用于接收信息字段(d0、d1......dn-2、dn-1)中对应位的信息值。第0行第j-1列迭代单元用于响应于时钟信号,根据CRC初始值及生成多项式中对应次幂的系数(g0、g1、g2......g6、g7、g8),计算出第0行第j-1列迭代单元的输出值。第n行第j列迭代单元用于响应于时钟信号,根据第n-1行第j-1迭代单元的输出值与生成多项式中对应次幂的系数,计算出第n行第j列迭代单元的输出值,n与j皆为正整数。
每个迭代单元341至少包括一个乘法器3411与异或器3412。第i-1行第j-1列的乘法器3411用于将最高次幂对应的系数g8、最高位对应的CRC初始值及对应次幂的系数进行相乘,并且输出相乘结果。第n-1行第0列的异或器3412用于将相乘结果与信息字段中对应位的信息值进行异或,输出第n-1行第0列迭代单元341的输出值。第0行第j列的异或器3412用于将相乘结果与第j-1位对应CRC初始值进行异或,输出第0行第j列迭代单元341的输出值。第i行第j列的异或器3412用于将相乘结果与第i-1行第j-1迭代单元341的输出值进行异或,输出第i行第j列迭代单元341的输出值。
为了进一步详细阐述图5所示实施例的迭代过程,本发明实施例提供4位信息字段的迭代过程,如图6与图7所示,信息字段为d0、d1、d2、d3分别为0011,CRC初始值分别为01010101,生成多项式中对应次幂的系数g0、g1、g2......g6、g7、g8分别为100001111。并行迭代模块34根据CRC初始值、生成多项式中对应次幂的系数与信息字段进行迭代,迭代结果分别为:01101111。
在一些实施例中,与上述各个实施例的不同点在于,配置信息包括CRC类型与生成多项式的各项系数。CRC仲裁模块根据CRC类型与生成多项式的各项系数,确定生成多项式的类型与所述生成多项式中各次幂对应的系数。因此,CRC仲裁模块既可以根据CRC类型便可以确定生成多项式的各项系数,又可以根据协议自定义生成多项式的各项系数以确定各次幂对应的系数,从而实现灵活配置生成多项式。
作为本发明实施例的另一方面,本发明实施例提供一种芯片,其包括如图2至图7任一项所述的循环冗余校验电路。芯片通过该循环冗余校验电路,其只需一个周期1T的时钟信号便可以完成信息字段的并行迭代处理,从而提高CRC计算的效率。另一方面,其可以灵活配置各类配置信息,以适应多种多样的CRC计算需求。
该芯片为通用处理器、数字信号处理器(DSP)、专用集成电路(ASIC)、现场可编程门阵列(FPGA)、单片机、ARM(Acorn RISC Machine)或其它可编程逻辑器件、分立门或晶体管逻辑、分立的硬件组件或者这些部件的任何组合。还有,嵌入式装置112还可以是任何传统处理器、控制器、微控制器或状态机。处理器也可以被实现为计算设备的组合,例如,DSP和微处理器的组合、多个微处理器、一个或多个微处理器结合DSP核、或任何其它这种配置。
作为本发明实施例的又另一方面,本发明实施例提供一种循环冗余校验装置。该循环冗余校验装置可借助软件加通用硬件平台的方式来实现循环冗余校验。并且,与上述各个实施例的不同点在于,本发明实施例还可以通过灵活配置用于指示CRC校验的各类配置信息以满足各类应用需求。特此,如图8所示,该循环冗余校验装置800包括获取模块81、确定模块82、迭代模块83及封装模块84。
获取模块81用于获取配置信息与信息字段。确定模块82用于根据配置信息,确定生成多项式与生成多项式中各次幂对应的系数。迭代模块83用于根据生成多项式中各次幂对应的系数,将信息字段进行并行迭代处理,以输出迭代结果。封装模块84用于根据迭代结果,封装信息字段。
配置信息可以包括CRC类型、生成多项式、CRC初始值、信息字段翻转处理信息及迭代结果异或与翻转处理信息,配置信息用于指示循环冗余校验装置800选择对应的配置信息完成CRC校验与输出数据的处理。CRC类型包括以下任意一种:CRC4、CRC7、CRC8、CRC12、CRC16、CRC32。生成多项式包括生成多项式类型与该生成多项式中各次幂对应的系数,其中,生成多项式类型与CRC类型对应,并且用户可以根据协议或者产品需求自行定义生成多项式类型与生成多项式中各次幂对应的系数。CRC初始值用于初始化,其中,该CRC初始值可以是协议定义值或上一次并行迭代出的输出值,CRC初始值的位数与并行迭代位数关联。信息字段翻转处理信息用于指示获取模块81根据协议预先将信息字段的各个信息码进行翻转。迭代结果异或与翻转处理信息用于指示封装模块84对迭代结果进行异或与翻转处理。
例如,配置信息包括信息字段翻转处理信息,获取模块81根据该信息字段翻转处理信息,对信息字段预先进行翻转处理,以便符合协议输出预处理的对应信息字段。
例如,配置信息包括CRC类型或生成多项式。当CRC类型是CRC8(CRC8=X8+X5+X4+1)时,则CRC仲裁模块32选择CRC8对应的生成多项式进行校验,并且确定g0=1,g1=g2=g3=g4=0,g5=g6=1,g7=0,g8=1。当CRC类型是CRC16时,同理可得,可以确定对应的生成多项式进行校验。当然,用户可以不选择标准CRC类型,而选择自定义的生成多项式进行校验,例如,g(x)=x5+x3+1。此时,确定模块82根据该生成多项式,确定5次幂的系数为1,3次幂的系数为1,0次幂的系数为1,1次幂、2次幂及4次幂的系数为0。
再例如,配置信息包括CRC初始值。当CRC初始值为01010101时,迭代模块83同时接收CRC初始值的输入与信息字段进行迭代处理。
信息字段是发送方向接收方发送的通信数据,其是二进制序列。
综上,采用该循环冗余校验装置800,一方面,其只需一个周期1T的时钟信号便可以完成信息字段的并行迭代处理,从而提高CRC计算的效率。另一方面,其可以灵活配置各类配置信息,以适应多种多样的CRC计算需求。
并且,由于循环冗余校验装置800的构思与上述各个实施例所述的循环冗余校验电路实现CRC校验的构思一样,在内容不互相冲突下,循环冗余校验装置800的实施例可以引用上述各个实施例的内容,在此不赘述。
在一些实施例中,配置信息包括CRC初始值,因此,迭代模块83具体用于:根据生成多项式中各次幂对应的系数与CRC初始值,将信息字段进行并行迭代处理,以输出迭代结果。
在一些实施例中,配置信息包括CRC类型与生成多项式的各项系数,因此,确定模块84具体用于:根据CRC类型与生成多项式的各项系数,确定生成多项式的类型与生成多项式中各次幂对应的系数。
作为本发明实施例的又另一方面,本发明实施例提供一种循环冗余校验方法。与上述各个实施例的不同点在于,本发明实施例还可以通过灵活配置用于指示CRC校验的各类配置信息以满足各类应用需求。如图9所示,该循环冗余校验方法900包括:
步骤91、获取配置信息与信息字段;
步骤92、根据配置信息,确定生成多项式与生成多项式中各次幂对应的系数;
步骤93、根据生成多项式中各次幂对应的系数,将信息字段进行并行迭代处理,以输出迭代结果;
步骤94、根据迭代结果,封装信息字段。
配置信息可以包括CRC类型、生成多项式、CRC初始值、信息字段翻转处理信息及迭代结果异或与翻转处理信息,配置信息用于指示循环冗余校验装置800选择对应的配置信息完成CRC校验与输出数据的处理。CRC类型包括以下任意一种:CRC4、CRC7、CRC8、CRC12、CRC16、CRC32。生成多项式包括生成多项式类型与该生成多项式中各次幂对应的系数,其中,生成多项式类型与CRC类型对应,并且用户可以根据协议或者产品需求自行定义生成多项式类型与生成多项式中各次幂对应的系数。CRC初始值用于初始化,其中,该CRC初始值可以是协议定义值或上一次并行迭代出的输出值,CRC初始值的位数与并行迭代位数关联。信息字段翻转处理信息用于根据协议预先将信息字段的各个信息码进行翻转。迭代结果异或与翻转处理信息用于对迭代结果进行异或与翻转处理。
例如,配置信息包括信息字段翻转处理信息,根据该信息字段翻转处理信息,对信息字段预先进行翻转处理,以便符合协议输出预处理的对应信息字段。
例如,配置信息包括CRC类型或生成多项式。当CRC类型是CRC8(CRC8=X8+X5+X4+1)时,则CRC仲裁模块32选择CRC8对应的生成多项式进行校验,并且确定g0=1,g1=g2=g3=g4=0,g5=g6=1,g7=0,g8=1。当CRC类型是CRC16时,同理可得,可以确定对应的生成多项式进行校验。当然,用户可以不选择标准CRC类型,而选择自定义的生成多项式进行校验,例如,g(x)=x5+x3+1。此时,根据该生成多项式,确定5次幂的系数为1,3次幂的系数为1,0次幂的系数为1,1次幂、2次幂及4次幂的系数为0。
再例如,配置信息包括CRC初始值。当CRC初始值为01010101时,同时接收CRC初始值的输入与信息字段进行迭代处理。
信息字段是发送方向接收方发送的通信数据,其是二进制序列。
综上,采用该循环冗余校验方法900,一方面,其只需一个周期1T的时钟信号便可以完成信息字段的并行迭代处理,从而提高CRC计算的效率。另一方面,其可以灵活配置各类配置信息,以适应多种多样的CRC计算需求。
在一些实施例中,配置信息包括CRC初始值。步骤93包括:根据生成多项式中各次幂对应的系数与CRC初始值,将信息字段进行并行迭代处理,以输出迭代结果。
在一些实施例中,配置信息包括CRC类型与生成多项式的各项系数。步骤92包括:根据CRC类型与生成多项式的各项系数,确定生成多项式的类型与生成多项式中各次幂对应的系数。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加通用硬件平台的方式来实现循环冗余校验方法,当然也可以通过硬件实现。并且,由于循环冗余校验方法的构思与上述各个实施例所述的循环冗余校验装置实现循环冗余校验的构思一样,在内容不互相冲突下,循环冗余校验方法的实施例可以引用上述各个实施例的内容,在此不赘述。
作为本发明实施例的又一方面,本发明实施例提供一种电子设备。如图10所示,该电子设备100包括:存储介质11与处理器12,处理器12和存储介质11可以通过总线或者其他方式连接,图10中以通过总线连接为例。该存储介质作为一种非易失性计算机可读存储介质,可用于存储非易失性软件程序、非易失性计算机可执行程序以及模块,如本发明实施例中的循环冗余校验方法对应的程序指令/模块。处理器12通过运行存储在存储器11中的非易失性软件程序、指令以及模块,从而执行循环冗余校验方法的各种功能应用以及数据处理,即实现上述方法实施例的循环冗余校验方法的各个模块的功能。
存储介质11可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他非易失性固态存储器件。在一些实施例中,存储介质11可选包括相对于处理器12远程设置的存储器,这些远程存储器可以通过网络连接至处理器12。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
所述程序指令/模块存储在所述存储器11中,当被所述一个或者多个处理器12执行时,执行上述任意方法实施例中的循环冗余校验方法,例如,执行以上描述的各个步骤的功能。
本发明实施例还提供了一种非易失性计算机存储介质,非易失性计算机可读存储介质存储有电子设备的可执行指令,该可执行指令被一个或多个处理器执行,例如图10中的一个处理器12,可使得上述一个或多个处理器可执行上述任意方法实施例中的循环冗余校验方法,例如,执行上述任意方法实施例中的循环冗余校验方法。
以上所描述的装置或设备实施例仅仅是示意性的,其中所述作为分离部件说明的单元模块可以是或者也可以不是物理上分开的,作为模块单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络模块单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对相关技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分所述的方法。
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;在本发明的思路下,以上实施例或者不同实施例中的技术特征之间也可以进行组合,步骤可以以任意顺序实现,并存在如上所述的本发明的不同方面的许多其它变化,为了简明,它们没有在细节中提供;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的范围。

Claims (14)

1.一种循环冗余校验电路,其特征在于,包括:
配置模块,用于获取配置信息与信息字段;
CRC仲裁模块,用于根据所述配置信息,确定生成多项式;
CRC控制模块,用于响应于所述CRC仲裁模块的触发,输出时钟信号、所述生成多项式中各次幂对应的系数及信息字段;
并行迭代模块,用于响应于所述时钟信号,根据所述生成多项式中各次幂对应的系数,将所述信息字段进行并行迭代处理,以输出迭代结果;
CRC输出模块,用于根据所述迭代结果,封装所述信息字段。
2.根据权利要求1所述的电路,其特征在于,所述配置信息包括j-1位CRC初始值,所述并行迭代模块包括i*j个迭代单元;
第i-1行第0列迭代单元用于接收所述信息字段中对应位的信息值;
第0行第j-1列迭代单元用于响应于所述时钟信号,根据所述CRC初始值及生成多项式中对应次幂的系数,计算出第0行第j-1列迭代单元的输出值;
第i行第j列迭代单元用于响应于所述时钟信号,根据第i-1行第j-1迭代单元的输出值与生成多项式中对应次幂的系数,计算出第i行第j列迭代单元的输出值,i与j皆为正整数。
3.根据权利要求2所述的电路,其特征在于,每个所述迭代单元至少包括一个乘法器与异或器;
第i-1行第j-1列的乘法器用于将最高次幂对应的系数、最高位对应的CRC初始值及对应次幂的系数进行相乘,并且输出相乘结果;
第i-1行第0列的异或器用于将相乘结果与所述信息字段中对应位的信息值进行异或,输出第i-1行第0列迭代单元的输出值;
第0行第j列的异或器用于将相乘结果与第j-1位对应CRC初始值进行异或,输出第0行第j列迭代单元的输出值;
第i行第j列的异或器用于将相乘结果与第i-1行第j-1迭代单元的输出值进行异或,输出第i行第j列迭代单元的输出值。
4.根据权利要求1至3任一项所述的电路,其特征在于,所述配置信息包括CRC类型与生成多项式的各项系数;
所述CRC仲裁模块用于根据所述配置信息,确定生成多项式,包括:
所述CRC仲裁模块用于根据所述CRC类型与生成多项式的各项系数,确定生成多项式的类型与所述生成多项式中各次幂对应的系数。
5.根据权利要求4所述的电路,其特征在于,所述CRC类型包括以下任意一种:CRC4、CRC7、CRC8、CRC12、CRC16、CRC32。
6.一种循环冗余校验方法,其特征在于,包括:
获取配置信息与信息字段;
根据所述配置信息,确定生成多项式与所述生成多项式中各次幂对应的系数;
根据所述生成多项式中各次幂对应的系数,将所述信息字段进行并行迭代处理,以输出迭代结果;
根据所述迭代结果,封装所述信息字段。
7.根据权利要求6所述的方法,其特征在于,所述配置信息包括CRC初始值;
所述根据所述生成多项式中各次幂对应的系数,将所述信息字段进行并行迭代处理,以输出迭代结果,包括:
根据所述生成多项式中各次幂对应的系数与CRC初始值,将所述信息字段进行并行迭代处理,以输出迭代结果。
8.根据权利要求6或7所述的方法,其特征在于,所述配置信息包括CRC类型与生成多项式的各项系数;
所述根据所述配置信息,确定生成多项式与所述生成多项式中各次幂对应的系数,包括:
根据所述CRC类型与生成多项式的各项系数,确定生成多项式的类型与所述生成多项式中各次幂对应的系数。
9.一种循环冗余校验装置,其特征在于,包括:
获取模块,用于获取配置信息与信息字段;
确定模块,用于根据所述配置信息,确定生成多项式与所述生成多项式中各次幂对应的系数;
迭代模块,用于根据所述生成多项式中各次幂对应的系数,将所述信息字段进行并行迭代处理,以输出迭代结果;
封装模块,用于根据所述迭代结果,封装所述信息字段。
10.根据权利要求9所述的装置,其特征在于,所述配置信息包括CRC初始值;
所述迭代模块具体用于:根据所述生成多项式中各次幂对应的系数与CRC初始值,将所述信息字段进行并行迭代处理,以输出迭代结果。
11.根据权利要求9或10所述的装置,其特征在于,所述配置信息包括CRC类型与生成多项式的各项系数;
所述确定模块具体用于:根据所述CRC类型与生成多项式的各项系数,确定生成多项式的类型与所述生成多项式中各次幂对应的系数。
12.一种芯片,其特征在于,包括如权利要求1至5任一项所述的循环冗余校验电路。
13.一种非易失性计算机可读存储介质,其特征在于,所述非易失性计算机可读存储介质存储有电子设备的可执行指令,所述可执行指令用于使所述电子设备执行如权利要求6至8任一项所述的循环冗余校验方法。
14.一种电子设备,其特征在于,包括:
至少一个处理器;以及
与所述至少一个处理器通信连接的存储器;其中,所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够用于执行如权利要求6至8任一项所述的循环冗余校验方法。
CN201710330855.4A 2017-05-11 2017-05-11 循环冗余校验电路及其方法、装置以及芯片、电子设备 Active CN108880562B (zh)

Priority Applications (3)

Application Number Priority Date Filing Date Title
CN201710330855.4A CN108880562B (zh) 2017-05-11 2017-05-11 循环冗余校验电路及其方法、装置以及芯片、电子设备
PCT/CN2017/118622 WO2018205633A1 (zh) 2017-05-11 2017-12-26 循环冗余校验电路及其方法、装置以及芯片、电子设备
US16/612,681 US11403166B2 (en) 2017-05-11 2017-12-26 Cyclic redundancy check circuit and method and apparatus thereof, chip and electronic device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201710330855.4A CN108880562B (zh) 2017-05-11 2017-05-11 循环冗余校验电路及其方法、装置以及芯片、电子设备

Publications (2)

Publication Number Publication Date
CN108880562A true CN108880562A (zh) 2018-11-23
CN108880562B CN108880562B (zh) 2020-06-19

Family

ID=64104359

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710330855.4A Active CN108880562B (zh) 2017-05-11 2017-05-11 循环冗余校验电路及其方法、装置以及芯片、电子设备

Country Status (3)

Country Link
US (1) US11403166B2 (zh)
CN (1) CN108880562B (zh)
WO (1) WO2018205633A1 (zh)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109861788A (zh) * 2019-01-11 2019-06-07 中电海康集团有限公司 一种并行crc计算的实现方法及装置
CN110188415A (zh) * 2019-05-13 2019-08-30 北京遥感设备研究所 一种通用循环冗余校验电路ip核实现方法及系统
CN112311527A (zh) * 2020-09-17 2021-02-02 裴文耀 一种主密钥变换为多项式表格子密钥查表的加密方法
CN113191113A (zh) * 2021-06-03 2021-07-30 湖南国科微电子股份有限公司 基于寄存器传输电平级的功耗优化方法、系统及相关组件
CN114328003A (zh) * 2022-03-16 2022-04-12 宜科(天津)电子有限公司 通过crc硬件模块实现数据倒序处理的方法
CN114389752A (zh) * 2021-12-15 2022-04-22 上海金仕达软件科技有限公司 循环冗余校验码生成方法、装置、设备、介质和程序产品

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20210392497A1 (en) * 2020-06-15 2021-12-16 Cisco Technology, Inc. Dynamically encrypted radio frequency fingerprinting
CN117220833B (zh) * 2023-11-09 2024-01-26 新华三网络信息安全软件有限公司 Crc计算电路、芯片、报文处理方法及网络安全设备

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7434150B1 (en) * 2004-03-03 2008-10-07 Marvell Israel (M.I.S.L.) Ltd. Methods, circuits, architectures, software and systems for determining a data transmission error and/or checking or confirming such error determinations
CN103684682A (zh) * 2012-08-30 2014-03-26 英特尔移动通信有限责任公司 用于并行turbo解码器的工作器和迭代控制
CN103731239A (zh) * 2013-12-31 2014-04-16 中国科学院自动化研究所 一种适用于向量处理器的通用crc并行计算部件及方法
CN105099466A (zh) * 2015-08-17 2015-11-25 中国航天科技集团公司第九研究院第七七一研究所 一种用于128位并行数据的crc校验矩阵生成方法

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101795175B (zh) 2010-02-23 2014-03-19 中兴通讯股份有限公司 数据的校验处理方法及装置
US8468439B2 (en) * 2011-06-02 2013-06-18 Nexus Technology, Inc. Speed-optimized computation of cyclic redundancy check codes
CN102318250B (zh) 2011-08-02 2014-03-05 华为技术有限公司 通信系统中的循环冗余校验处理方法、装置和lte终端
CN102891685B (zh) * 2012-09-18 2018-06-22 国核自仪系统工程有限公司 基于fpga的并行循环冗余校验运算电路
CN103199873B (zh) * 2013-04-23 2016-03-30 常熟理工学院 两级分块crc运算的快速配置方法
CN103795502B (zh) * 2014-02-28 2017-04-12 杭州华三通信技术有限公司 一种数据帧校验码生成方法和装置
US9823960B2 (en) * 2015-09-10 2017-11-21 Cavium, Inc. Apparatus and method for parallel CRC units for variably-sized data frames

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7434150B1 (en) * 2004-03-03 2008-10-07 Marvell Israel (M.I.S.L.) Ltd. Methods, circuits, architectures, software and systems for determining a data transmission error and/or checking or confirming such error determinations
CN103684682A (zh) * 2012-08-30 2014-03-26 英特尔移动通信有限责任公司 用于并行turbo解码器的工作器和迭代控制
CN103731239A (zh) * 2013-12-31 2014-04-16 中国科学院自动化研究所 一种适用于向量处理器的通用crc并行计算部件及方法
CN105099466A (zh) * 2015-08-17 2015-11-25 中国航天科技集团公司第九研究院第七七一研究所 一种用于128位并行数据的crc校验矩阵生成方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
陈小莹等: "《一种改进的40Gb/s以太网循环冗余校验方法及电路设计》", 《微电子学》 *

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109861788A (zh) * 2019-01-11 2019-06-07 中电海康集团有限公司 一种并行crc计算的实现方法及装置
CN109861788B (zh) * 2019-01-11 2021-12-10 中电海康集团有限公司 一种并行crc计算的实现方法及装置
CN110188415A (zh) * 2019-05-13 2019-08-30 北京遥感设备研究所 一种通用循环冗余校验电路ip核实现方法及系统
CN110188415B (zh) * 2019-05-13 2023-05-26 北京遥感设备研究所 一种通用循环冗余校验电路ip核实现方法及系统
CN112311527A (zh) * 2020-09-17 2021-02-02 裴文耀 一种主密钥变换为多项式表格子密钥查表的加密方法
CN113191113A (zh) * 2021-06-03 2021-07-30 湖南国科微电子股份有限公司 基于寄存器传输电平级的功耗优化方法、系统及相关组件
CN114389752A (zh) * 2021-12-15 2022-04-22 上海金仕达软件科技有限公司 循环冗余校验码生成方法、装置、设备、介质和程序产品
CN114328003A (zh) * 2022-03-16 2022-04-12 宜科(天津)电子有限公司 通过crc硬件模块实现数据倒序处理的方法

Also Published As

Publication number Publication date
US20200081767A1 (en) 2020-03-12
WO2018205633A1 (zh) 2018-11-15
CN108880562B (zh) 2020-06-19
US11403166B2 (en) 2022-08-02

Similar Documents

Publication Publication Date Title
CN108880562A (zh) 循环冗余校验电路及其方法、装置以及芯片、电子设备
US9166624B2 (en) Error-correcting code processing method and device
CN102412847B (zh) 用联合节点处理来解码低密度奇偶校验码的方法和设备
CN103473088B (zh) 一种单片机在线升级方法和系统
CN104769556B (zh) 更新可靠性数据
CN101273532B (zh) 解码装置及接收装置
CN109379086A (zh) 低复杂度的码率兼容的5g ldpc编码方法和编码器
CN108809506B (zh) 一种编码方法及装置
CN101227194B (zh) 用于并行bch编码的电路、编码器及方法
WO2010115371A1 (zh) 一种循环冗余校验crc码的实现方法和装置
CN110326221A (zh) 一种用于为极化码生成有序序列的方法
CN109347488B (zh) 极化码编码和译码的方法、发送设备和接收设备
CN101296053A (zh) 计算循环冗余校验码之方法及系统
CN109669669B (zh) 误码生成方法及误码生成器
CN114389752A (zh) 循环冗余校验码生成方法、装置、设备、介质和程序产品
WO1989003621A1 (en) Hypersystolic reed-solomon encoder
CN109412999A (zh) 一种概率成型的映射方法及装置
CN102891689B (zh) 一种错误位置多项式求解方法及装置
CN114884517A (zh) 一种crc硬件计算系统及芯片
CN115632662A (zh) 一种rs译码中的伴随式计算方法、装置、设备及介质
Gilbert et al. FPGA implementation of error control codes in VHDL: An undergraduate research project
CN108628698A (zh) 计算crc编码的方法和装置
CN101001089A (zh) 一种纠错码解码中的钱搜索方法及装置
WO2018004941A1 (en) Methods and apparatus for performing reed-solomon encoding by lagrangian polynomial fitting
WO2003019790A1 (en) Universal device for processing reed-solomon forward error-correction encoded messages

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
TA01 Transfer of patent application right

Effective date of registration: 20191030

Address after: 519360 Room 1001, Lianshan Lane, Jida Jingshan Road, Xiangzhou District, Zhuhai City, Guangdong Province

Applicant after: Zhuhai Zero Boundary Integrated Circuit Co.,Ltd.

Applicant after: GREE ELECTRIC APPLIANCES Inc. OF ZHUHAI

Address before: 519070 Guangdong city of Zhuhai Province Qianshan

Applicant before: GREE ELECTRIC APPLIANCES Inc. OF ZHUHAI

TA01 Transfer of patent application right
GR01 Patent grant
GR01 Patent grant
TR01 Transfer of patent right

Effective date of registration: 20221229

Address after: 519000 room 1001, No. 8, Lianshan lane, Jingshan Road, Jida, Xiangzhou District, Zhuhai City, Guangdong Province

Patentee after: Zhuhai Zero Boundary Integrated Circuit Co.,Ltd.

Address before: Room 1001, No.8, Lianshan lane, Jingshan Road, Jida, Xiangzhou District, Zhuhai City, Guangdong Province

Patentee before: Zhuhai Zero Boundary Integrated Circuit Co.,Ltd.

Patentee before: GREE ELECTRIC APPLIANCES Inc. OF ZHUHAI

TR01 Transfer of patent right