首页> 中国专利> 一种基于忆阻器的二元域矩阵运算电路

一种基于忆阻器的二元域矩阵运算电路

摘要

本发明公开了一种基于忆阻器的二元域矩阵运算电路,属于微电子器件领域,基于忆阻器的二元域矩阵运算电路包括:处理器用于获取待处理的二元数据序列及其对应的二元校验矩阵,并基于处理算法生成开关控制信号,处理算法为编码算法或解码算法;与处理器连接的脉冲发生器用于基于二元数据序列中元素数值生成逻辑电平信号;开关阵列用于在开关控制信号作用下使连接的处理器和脉冲发生器对应开关导通;忆阻器阵列,与处理器、脉冲发生器和开关阵列连接,用于接收写入的二元校验矩阵,且在接入的直流脉冲信号和逻辑电平信号的作用下输出目标序列。本申请方案在计算过程中无需在存储器和运算器中大量数据搬移,能够提高计算速率、降低能耗和减少延时。

著录项

  • 公开/公告号CN112182495A

    专利类型发明专利

  • 公开/公告日2021-01-05

    原文格式PDF

  • 申请/专利权人 华中科技大学;

    申请/专利号CN202010962411.4

  • 发明设计人 缪向水;杨岭;李祎;

    申请日2020-09-14

  • 分类号G06F17/16(20060101);G11C7/10(20060101);G11C16/10(20060101);

  • 代理机构42201 华中科技大学专利中心;

  • 代理人李智

  • 地址 430074 湖北省武汉市洪山区珞喻路1037号

  • 入库时间 2023-06-19 09:26:02

说明书

技术领域

本发明属于微电子器件领域,更具体地,涉及一种基于忆阻器的二元域矩阵运算电路。

背景技术

在信息的处理、传输、存储中,存在大量的编码解码以及纠错运算,而编码解码以及纠错运算的本质和核心及为二元域的矩阵向量乘法以及非齐次线性方程组的求解,每一种编码方式都有其生成矩阵和校验矩阵,信号序列即为一个二元向量,通过生成矩阵和原始信号序列的乘法即可完成编码过程,运算得到一个新的二元向量,该二元向量即为编码之后的信息序列。

在解码的时候,需要将编码后的序列与校验矩阵相乘,先进行校验和纠错,纠错完成之后即可进行解码。解码的过程即为求解方程组的过程,编码序列和生成矩阵组成增广矩阵,对增广矩阵进行高斯消元,即可解出原始信号。

在CPU中进行编码和解码运算中的矩阵向量乘法运算和非齐次方程组求解时,往往需要耗费大量的时间、能耗和硬件开销,特别是信号序列规模较大时,延时较为严重。

发明内容

针对现有技术的以上缺陷或改进需求,本发明提供了一种基于忆阻器的二元域矩阵运算电路,其目的在于能够快速进行编码运算和解码运算,提高运算效率、降低内存及减少延时,由此解决现有技术中编码运算和解码运算效率低,占用内存大忌延时严重的技术问题。

为实现上述目的,按照本发明的一个方面,提供了一种基于忆阻器的二元域矩阵运算电路,包括:

处理器,用于获取待处理的二元数据序列及其对应的二元校验矩阵,并基于处理算法生成开关控制信号,所述处理算法为编码算法或解码算法;

脉冲发生器,与所述处理器连接,用于基于所述二元数据序列中元素数值生成逻辑电平信号;

开关阵列,与所述处理器和脉冲发生器连接,用于在所述开关控制信号作用下使对应的开关导通,以使所述处理器控制输出直流脉冲信号的链路和所述脉冲发生器输出逻辑电平信号的链路导通;

忆阻器阵列,与所述处理器、所述脉冲发生器和所述开关阵列对应连接,用于接收所述处理器写入的所述二元校验矩阵,且在接入的所述直流脉冲信号和所述逻辑电平信号的作用下输出目标序列,

其中,当所述处理算法为编码算法时,所述目标序列为所述二元数据序列对应的编码序列;当所述处理算法为解码算法时,所述目标序列为所述二元数据序列解码对应的原始码序列。

在其中一个实施例中,当所述基于忆阻器的二元域矩阵运算电路用于执行所述二元数据序列的编码算法时,

所述脉冲发生器,用于根据原始码序列x

所述忆阻器阵列,用于接收所述处理器写入的校验矩阵A,元素0写入高阻态,元素1写入低阻态;导通开关对应的忆阻器正极接入所述逻辑电平信号,负极接入所述直流脉冲信号,以输出所述目标序列,所述目标序列为所述二元数据序列x

在其中一个实施例中,当所述基于忆阻器的二元域矩阵运算电路用于执行所述二元数据序列的解码算法时,

所述忆阻器阵列用于存储校验矩阵A以及编码序列y组成的增广矩阵,所述忆阻器阵列中各个忆阻器的字线上接入所述逻辑电平信号,以执行忆阻器阵列行与行之间的异或运算,以输出所述的目标序列x

在其中一个实施例中,所述处理器还用于,

当所述二元校验矩阵中的元素和所述二元数据序列中的元素进行乘法运算时,将所述开关控制信号设为导通信号;

当所述二元校验矩阵中的元素和所述二元数据序列中的元素进行加法运算时,将进行叠加的两个元素对应的开关控制信号设为导通信号。

在其中一个实施例中,所述开关阵列包括:

行开关阵列,包括多个行开关,多个所述行开关分别与所述忆阻器阵列中各个忆阻器的字线一一连接;

列开关阵列,包括多个列开关,多个所述列开关分别与所述忆阻器阵列中各个忆阻器的位线一一连接;

当所述忆阻器阵列中任一忆阻器对应连接的行开关和列开关均处于导通状态时,所述忆阻器阵列中任一忆阻器接收到所述直流脉冲信号。

在其中一个实施例中,所述忆阻器阵列的结构为十字交叉杆结构、晶体管-忆阻器级联结构、单晶体管-多忆阻器级联结构或三维堆叠结构,其中所述忆阻器为二值器件。

在其中一个实施例中,所述忆阻器阵列中的忆阻器为阻变存储器、相变存储器、自选转移力矩-磁随机存储器、NOR Flash器件或NAND Flash器件。

总体而言,通过本发明所构思的以上技术方案与现有技术相比,包括如下有益效果:

1.由于将编码算法或者解码算法对应的校验矩阵存储在忆阻器阵列中,再将待编码或待解码的序列以电压形式输入该忆阻器阵列中,以使忆阻器阵列直接输出目标序列,无需在存储器和运算器中进行大量数据来回搬移,相比使用CPU等现有技术执行编码算法和解码算法,能够提高计算速率、降低能耗和减少延时;

2.由于对二元域的向量和矩阵来说,与运算相当于乘法,异或相当于加法,本申请中在忆阻器阵列中存储有二元矩阵,再将二元向量通过电压形式输入该忆阻器阵列,能够快速实现二元域矩阵向量乘法及二元非齐次方程求解。

附图说明

图1为本申请一实施例中基于忆阻器的二元域矩阵运算电路的示意图图;

图2为本申请一实施例中单个忆阻器的进行与逻辑运算的示意图;

图3为本申请一实施例中三个忆阻器进行异或逻辑运算的示意图;

图4为本申请一实施例中忆阻器阵列执行与逻辑运算的示意图;

图5为本申请一实施例中忆阻器阵列中批量执列异或累计运算的示意图;

图6为本申请一实施例中忆阻器阵列中通过行异或进行方程组求解的操作示意图。

具体实施方式

为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。此外,下面所描述的本发明各个实施方式中所涉及到的技术特征只要彼此之间未构成冲突就可以相互组合。

本申请提供了一种基于忆阻器的二元域矩阵运算电路,包括:处理器、脉冲发生器、开关阵列和忆阻器阵列。如图1所示,处理器,指的是计算机系统和读写控制/电路的组合,用于获取待处理的二元数据序列及其对应的二元校验矩阵,并基于处理算法生成开关控制信号,处理算法为编码算法或解码算法。脉冲发生器,与处理器连接,用于基于二元数据序列中元素数值生成逻辑电平信号,开关阵列,与处理器和脉冲发生器连接,用于在开关控制信号作用下使对应的开关导通,以使处理器控制输出直流脉冲信号及脉冲发生器输出逻辑电平信号至忆阻器阵列;忆阻器阵列,与处理器、脉冲发生器和开关阵列对应连接,用于接收处理器写入的二元校验矩阵,且在接入的直流脉冲信号和逻辑电平信号的作用下输出目标序列。

具体的,处理器获取待处理的二元数据序列及其对应的二元校验矩阵。即处理器获取待编码的原始序列及对应的编码校验矩阵,或,处理器获取待解码的编码序列及对应的解码校验矩阵。其中,编码校验矩阵和解码校验矩阵可以相同,也可以不同,此处不做限定。在其中一个实施例中,处理器还用于,当二元校验矩阵中的元素和二元数据序列中的元素进行乘法运算(与运算)时,将开关控制信号设为导通信号并传输给开关阵列;当二元校验矩阵中的元素和二元数据序列中的元素进行加法运算(异或运算)时,将进行叠加的两个元素对应的开关控制信号设为导通信号并传输给开关阵列。

进一步地,处理器还根据二元数据序列的中元素数值控制脉冲发生器产生电压序列。当二元数据序列的中元素0,则电压序列中对应的低电平;当二元数据序列的中元素1,则电压序列中对应的高电平。处理器还根据校验矩阵的中元素数值往忆阻器阵列中写入阻态,当校验矩阵的中元素数值为1时,对应位置的忆阻器中写入低阻态;当校验矩阵的中元素数值为0时,对应位置的忆阻器中写入高阻态。开关阵列在开关信号的作用下导通或者截,能够控制忆阻器阵列中的忆阻器参与工作。在其中一个实施例中,开关阵列包括:行开关阵列,包括多个行开关,多个行开关分别与忆阻器阵列中各个忆阻器的字线一一连接;列开关阵列,包括多个列开关,多个列开关分别与忆阻器阵列中各个忆阻器的位线一一连接;当所述忆阻器阵列中任一忆阻器对应连接的行开关和列开关均处于导通状态时,所述忆阻器阵列中任一忆阻器接收到直流脉冲信号。

最后,将写入检验矩阵的忆阻器阵列中输入直流脉冲信号和二元数据序列对应的逻辑电平信号,能够使对应位置的忆阻器进行工作,从而是的忆阻器阵列输出目标序列。其中,当处理算法为编码算法时,目标序列为二元数据序列对应的编码序列;当处理算法为解码算法时,目标序列为二元数据序列解码对应的原始码序列。

在其中一个实施例中,当基于忆阻器的二元域矩阵运算电路用于执行二元数据序列的编码算法时,脉冲发生器,用于根据原始码序列x

举例来说,基于忆阻器的二元域矩阵运算电路用于进行二元数据序列x

S101、将第一个输入变量A写入忆阻器阵列,如果是0就写入高阻态,如果是1就写入低阻态;

S102、将第二个输入变量x

S103、将逻辑电平x和一个VDD脉冲同时分别施加在器件的正极和负极完成与运算。

其中,图2为本发明中忆阻器实现逻辑与运算的示意图;当A中的元素和x

另外,需要补充的是,二元矩阵A和向量x

S201、将M×N的矩阵A写入对应规模的阵列中;

S202、将向量x

S203、在A所在的阵列的位线上同时施加电压序列,在字线上施加VDD脉冲;

S204、对执行完与操作的阵列继续执列异或累加,累加的结果即为y;

每次异或操作分为两步,如图3的列异或所示,该方法可以同时对一列中的元素进行并行的操作。如图4所示,将电压向量施加到忆阻器的字线上。累加的步骤如图5所示,对第一列和第二列进行第一次异或运算得到m1,存在中间结果区的第一列,第二次将第二列和m1进行异或运算,得到m2,存在中间结果区的第二列,直到将整个与运算之后的矩阵进行N-1次异或累加,得到y为止。

在其中一个实施例中,当基于忆阻器的二元域矩阵运算电路用于执行二元数据序列的解码算法时,忆阻器阵列用于存储校验矩阵A以及编码序列y组成的增广矩阵,忆阻器阵列中各个忆阻器的字线上接入逻辑电平信号,以执行忆阻器阵列行与行之间的异或运算,以输出的目标序列x

举例来说,基于忆阻器的二元域矩阵运算电路用于进行二元数据序列x

在执行二元域矩阵向量乘法运算Ax

S301、将所需要求解的二元域非齐次线性方程组的增广矩阵A|y写入对应规模的忆阻器阵列;

S302、加载二元域矩阵的高斯消元算法程序至忆阻器阵列连接的处理器中;

S303、通过并行的行异或执行高斯消元,行异或指行与行之间的异或操作,如图3的中间部分所示。

二元域的高斯消元因为不需要乘法,而且在阵列中行与行之间的异或时可以并行的执行,计算速度会得以提升,如图6所示。最上方的为增广矩阵,由①~④4个行向量组成,第一步对③和④执行行异或得到⑤,⑤中发现系数中还有两个1,分别在第一个和第三个为位置;在①~②中继续寻找这两个位置的有1,且1的数量大于2个(至少是3个1)的行向量进行异或,通过给4条位线施加读电压,读取①和②的字线末端电流,如果大于3的,继续给第一条和第三条施加读取电压,确定这两个位置上是否都有1,找到符合条件的①,将①和⑤进行异或,得到⑥,对四条位线都施加读取电压,读取⑥的字线末端电流,发现4个系数中只剩一个1,说明⑥已经消元完成,继续确定1的位置,和⑥最后一个元素为1,因此,解得x

在其中一个实施例中,忆阻器阵列的结构为十字交叉杆结构、晶体管-忆阻器级联结构、单晶体管-多忆阻器级联结构或三维堆叠结构,其中忆阻器为二值器件。

在其中一个实施例中,忆阻器阵列中的忆阻器为阻变存储器、相变存储器、自选转移力矩-磁随机存储器、NOR Flash器件或NAND Flash器件。

本领域的技术人员容易理解,以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号