循环冗余检验处理方法及装置、电路、电子设备和介质制造方法及图纸

技术编号:37050956 阅读:7 留言:0更新日期:2023-03-29 19:28
本申请提供了一种循环冗余检验处理方法及装置、电路、电子设备和介质,涉及通信技术领域,其中,方法包括:将待发送的原始数据中的每位数据按列写入第一忆阻器阵列中,并在待发送的原始数据的末尾填充第一预设位数的空白校验码;根据预设校验多项式系数控制第一忆阻器阵列的输入电压,以进行多轮异或运算,并在空白校验码的位置生成待发送的原始数据的冗余校验码;根据待发送的原始数据和冗余校验码,得到待发送数据。本申请实施例通过利用忆阻器阵列的存算一体的特性异或计算的能力,在忆阻器阵列中完成循环冗余检验算法的操作,可以减少数据搬运,进而可以减少对访存带宽的需求,同时,提高了生成数据的冗余校验码的效率,降低处理功耗。低处理功耗。低处理功耗。

【技术实现步骤摘要】
循环冗余检验处理方法及装置、电路、电子设备和介质


[0001]本申请涉及通信
,特别是涉及循环冗余检验处理方法及装置、电路、电子设备和介质。

技术介绍

[0002]CRC(Cyclic redundancy check,循环冗余检验)算法作为一种处理数据错误的强大方法被广泛应用于数据通信和存储设备中。它也应用于集成电路的测试和逻辑故障的检测等许多其他领域。CRC算法的基本原理是基于串行数据传输的长除法,即将要发送的信息左移若干位,然后与生成多项式进行模2 除法,即按位进行异或计算,得到的余数即为CRC校验信息;产生的校验码附加在原始数据后面, 形成一个新的二进制数据, 最后一起发送出去。
[0003]随着数据量的不断上升,通过软件处理CRC算法的处理效率受到严重的限制。因为在软件处理CRC算法生成冗余校验码的过程中,存储于存储器的数据,通常需要读取到CPU(Central Processing Unit,中央处理器)中,再通过运算器进行计算生成冗余校验码。因此,所有的数据都需要从存储器读取到CPU端,再通过运算器进行计算,存储器与运算器之间频繁搬运,会产生较大的功耗,效率也大大降低。
[0004]需要说明的是,在上述
技术介绍
部分公开的信息仅用于加强对本公开的背景的理解,因此可以包括不构成对本领域普通技术人员已知的现有技术的信息。

技术实现思路

[0005]鉴于上述问题,提出了本申请以便提供克服上述问题或者至少部分地解决上述问题的循环冗余检验处理方法及装置、电路、电子设备和介质,包括:一种循环冗余检验处理方法,应用于发送端,所述方法包括:将待发送的原始数据中的每位数据按列写入第一忆阻器阵列中,并在所述待发送的原始数据的末尾填充第一预设位数的空白校验码;根据预设校验多项式系数控制所述第一忆阻器阵列的输入电压,以进行多轮异或运算,并在所述空白校验码的位置生成所述待发送的原始数据的冗余校验码;根据所述待发送的原始数据和所述冗余校验码,得到待发送数据。
[0006]一种循环冗余检验处理方法,应用于接收端,所述方法包括:将待接收数据中的每位数据按列写入第一忆阻器阵列中,所述待接收数据包括待接收的原始数据和第一预设位数的冗余校验码;根据预设校验多项式系数控制所述第一忆阻器阵列的输入电压,以进行多轮异或运算,得到循环冗余校验结果;根据所述循环冗余校验结果确定是否接收所述待接收的原始数据。
[0007]一种循环冗余检验处理装置,应用于发送端,所述装置包括:第一数据写入模块,用于将待发送的原始数据中的每位数据按列写入第一忆阻器
阵列中,并在所述待发送的原始数据的末尾填充第一预设位数的空白校验码;第一数据运算模块,用于根据预设校验多项式系数控制所述第一忆阻器阵列的输入电压,以进行多轮异或运算,并在所述空白校验码的位置生成所述待发送的原始数据的冗余校验码;加密数据生成模块,用于根据所述待发送的原始数据和所述冗余校验码,得到待发送数据。
[0008]一种循环冗余检验处理装置,应用于接收端,所述装置包括:第二数据写入模块,用于将待接收数据中的每位数据按列写入第一忆阻器阵列中,所述待接收数据包括待接收的原始数据和第一预设位数的冗余校验码;第二数据运算模块,用于根据预设校验多项式系数控制所述第一忆阻器阵列的输入电压,以进行多轮异或运算,得到循环冗余校验结果;校验结果确定模块,用于根据所述循环冗余校验结果确定是否接收所述待接收的原始数据。
[0009]一种循环冗余检验处理电路,所述电路包括分别与运算单元连接的第一存储单元和第二存储单元;所述第一存储单元包括第二忆阻器阵列,以及分别与所述第二忆阻器阵列连接的第二字线控制器、第二位线控制器、第二模数转换模块,其中,所述第二字线控制器用于控制所述第二忆阻器阵列中字线的选通,所述第二位线控制器用于控制所述第二忆阻器阵列中位线的选通,所述第二忆阻器阵列用于存储预设检验多项式系数,所述第二模数转换模块用于将所述第二忆阻器阵列输出的模拟值转换为数字值;所述第二存储单元包括第三忆阻器阵列,以及分别与所述第三忆阻器阵列连接的第三字线控制器、第三位线控制器、第三模数转换模块,其中,所述第三字线控制器用于控制所述第三忆阻器阵列中字线的选通,所述第三位线控制器用于控制所述第三忆阻器阵列中位线的选通,所述第三忆阻器阵列用于存储待发送的原始数据,所述第三模数转换模块用于将所述第三忆阻器阵列输出的模拟值转换为数字值;所述运算单元包括第一忆阻器阵列,分别与所述第一忆阻器阵列连接的第一字线控制器、第一位线控制器、第一模数转换模块,以及与所述第一模数转换模块连接的控制电路模块,其中,所述第一字线控制器用于控制所述第一忆阻器阵列中字线的选通,所述第一位线控制器用于控制所述第一忆阻器阵列中位线的选通,所述第一模数转换模块用于将所述第一忆阻器阵列输出的模拟值转换为数字值,所述控制电路模块用于读取所述第三忆阻器阵列存储的待发送的原始数据,并将所述待发送的原始数据按列写入所述第一忆阻器阵列中,以及根据所述第二忆阻器阵列存储的预设校验多项式系数,通过控制所述第一字线控制器和第一位线控制器来控制所述第一忆阻器阵列的输入电压,以使所述第一忆阻器阵列进行多轮异或运算,生成所述待发送的原始数据的冗余校验码。
[0010]一种电子设备,包括处理器、存储器及存储在所述存储器上并能够在所述处理器上运行的计算机程序,所述计算机程序被所述处理器执行时实现如上所述的循环冗余检验处理方法的步骤。
[0011]一种计算机可读存储介质,所述计算机可读存储介质上存储计算机程序,所述计算机程序被处理器执行时实现如上所述的循环冗余检验处理方法的步骤。
[0012]本申请具有以下优点:在本申请实施例中,将待发送的原始数据中的每位数据按列写入第一忆阻器阵列中,并在待发送的原始数据的末尾填充第一预设位数的空白校验码;根据预设校验多项式系数控制第一忆阻器阵列的输入电压,以进行多轮异或运算,并在空白校验码的位置生成待发送的原始数据的冗余校验码;根据待发送的原始数据和冗余校验码,得到待发送数据。本申请实施例通过利用忆阻器阵列的存算一体的特性异或计算的能力,在忆阻器阵列中完成循环冗余检验算法的操作,使得数据不需要送往CPU进行循环冗余校验码的计算,再送回寄存器中,因此,可以减少数据搬运,进而可以减少对访存带宽的需求,同时,提高了生成数据的冗余校验码的效率,降低处理功耗。
附图说明
[0013]为了更清楚地说明本申请的技术方案,下面将对本申请的描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
[0014]图1为本申请实施例的一种循环冗余检验处理方法的步骤流程图;图2为忆阻器的结构示意图;图3为忆阻器在电压作用下的电流电压特性曲线图;图4为利用忆阻器进行逻辑实现时的逻辑定义;图5为本申请一示例中忆阻器实现异或逻辑的具体方法示意图;图6为本申请一示例中忆阻器阵列实现异或逻辑的本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种循环冗余检验处理方法,其特征在于,应用于发送端,所述方法包括:将待发送的原始数据中的每位数据按列写入第一忆阻器阵列中,并在所述待发送的原始数据的末尾填充第一预设位数的空白校验码;根据预设校验多项式系数控制所述第一忆阻器阵列的输入电压,以进行多轮异或运算,并在所述空白校验码的位置生成所述待发送的原始数据的冗余校验码;根据所述待发送的原始数据和所述冗余校验码,得到待发送数据。2.根据权利要求1所述的方法,其特征在于,所述将待发送的原始数据中的每位数据按列写入第一忆阻器阵列中,并在所述待发送的原始数据的末尾填充第一预设位数的空白校验码,包括:将所述待发送的原始数据的最高位数据写入到所述第一忆阻器阵列的第一列的忆阻器中,并将所述待发送的原始数据的相邻位数据写入到所述第一忆阻器阵列的相邻列的忆阻器中;在所述第一忆阻器阵列剩余的列中,按照从左到右的顺序填充第一预设位数的空白校验码。3.根据权利要求1所述的方法,其特征在于,所述将待发送的原始数据中的每位数据按列写入第一忆阻器阵列中,并在所述待发送的原始数据的末尾填充第一预设位数的空白校验码,包括:将所述待发送的原始数据的最高位数据写入到所述第一忆阻器阵列的第一列的忆阻器中,并将所述待发送的原始数据的相邻位数据写入到所述第一忆阻器阵列的相邻列的忆阻器中,所述待发送的原始数据在所述第一忆阻器阵列中呈对角线排列;在所述第一忆阻器阵列剩余的列中,按照从左到右的顺序填充第一预设位数的空白校验码,并且所述空白校验码与所述待发送的原始数据在所述第一忆阻器阵列中呈对角线排列。4.根据权利要求3所述的方法,其特征在于,所述预设校验多项式系数存储在第二忆阻器阵列中,所述根据预设校验多项式系数控制所述第一忆阻器阵列的输入电压,以进行多轮异或运算,并在所述空白校验码的位置生成所述待发送的原始数据的冗余校验码,包括:读取所述第二忆阻器阵列的电压,并根据所述第二忆阻器阵列的电压确定所述预设校验多项式系数;根据所述预设校验多项式系数控制所述第一忆阻器阵列的输入电压,以进行多轮异或运算,并在所述空白校验码的位置生成所述待发送的原始数据的冗余校验码。5.根据权利要求4所述的方法,其特征在于,所述根据所述预设校验多项式系数控制所述第一忆阻器阵列的输入电压,以进行多轮异或运算,并在所述空白校验码的位置生成所述待发送的原始数据的冗余校验码,包括:根据所述预设校验多项式系数的最高位数据控制所述第一忆阻器阵列的目标列中对应的忆阻器的输入电压,并根据所述预设校验多项式系数的相邻位数据控制所述第一忆阻器阵列中对应的相邻列的忆阻器的输入电压,以进行当前轮次的异或运算;其中,当所述当前轮次为1时,所述目标列为第一列;根据所述当前轮次的异或运算的结果更新所述第一忆阻器阵列中存储的数据;将所述当前轮次加1,以及将所述目标列对应的列数加1,继续执行所述根据所述预设
校验多项式系数的最高位数据控制所述第一忆阻器阵列的目标列中对应的忆阻器的输入电压,并根据所述预设校验多项式系数的相邻位数据控制所述第一忆阻器阵列中对应的相邻列的忆阻器的输入电压,以进行当前轮次的异或运算;当所述当前轮次达到预设轮次时,获取所述空白校验码的位置存储的数据,并将所述空白校验码的位置存储的数据确定为所述待发送的原始数据的冗余校验码。6.根据权利要求1所述的方法,其特征在于,所述方法还包括:将所述待发送数据存入第三忆阻器阵列中。7.根据权利要求6所述的方法,其特征在于,所述将待发送数据存入第三忆阻器阵列中,包括:根据所述待发送数据的每一位数据控制所述第三忆阻器阵列的输入电压,以将所述待发送数据存入所述第三忆阻器阵列中。8.根据权利要求1所述的方法,其特征在于,在所述将待发送的原始数据中的每位数据按列写入第一忆阻器阵列中,并在所述待发送的原始数据的末尾填充第一预设位数的空白校验码之前,所述方法还包括:从第三忆阻器阵列中获取待发送的原始数...

【专利技术属性】
技术研发人员:段庆熙郑文明刘禄仁卢士鹏
申请(专利权)人:天翼云科技有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1