首页> 中国专利> 基于随机计算多比特有符号除法器和除法运算方法

基于随机计算多比特有符号除法器和除法运算方法

摘要

本发明提供一种基于随机计算多比特有符号除法器和除法运算方法,所述除法器包括:第一随机计算有符号除法器、第二随机计算有符号除法器、第一加法器、第二加法器和第一D触发器;其中,所述第一随机计算有符号除法器和所述第一加法器连接;所述第二随机计算有符号除法器通过所述第一D触发器与所述第二加法器连接;所述第二加法器和所述第一加法器连接。本发明提供的基于随机计算多比特有符号除法器,通过包括第一随机计算有符号除法器、第二随机计算有符号除法器、第一加法器、第二加法器和第一D触发器,可以实现3比特有符号除法的运算,并且用3比特除法器进行计算时,每一位上1出现的概率都会减小,从而可以提升计算精度。

著录项

  • 公开/公告号CN115964017A

    专利类型发明专利

  • 公开/公告日2023-04-14

    原文格式PDF

  • 申请/专利号CN202211567716.0

  • 发明设计人 张川;李慕浩;黄永明;尤肖虎;

    申请日2022-12-07

  • 分类号G06F7/535;G06F7/58;G06F7/50;

  • 代理机构北京路浩知识产权代理有限公司;

  • 代理人陈新生

  • 地址 211111 江苏省南京市江宁区秣周东路9号

  • 入库时间 2023-06-19 19:28:50

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2023-05-02

    实质审查的生效 IPC(主分类):G06F 7/535 专利申请号:2022115677160 申请日:20221207

    实质审查的生效

说明书

技术领域

本发明涉及随机计算技术领域,尤其涉及一种基于随机计算多比特有符号除法器和除法运算方法。

背景技术

随机计算是传统二进制计算电路的一种低成本替代方案。其使用一个序列中0和1的概率来表示具体的数值。同时,在此基础上使用概率计算的方案可以以极低的代价完成部分运算,因此可以提升硬件效率并减少面积消耗。

除法是随机计算中常见的运算,无符号除法和有符号除法,都是近似实现,在除数与被除数差距不大时,往往会出现较大的失真。

现有技术中的有符号除法,只能实现有符号2比特的除法运算,并且在除数与被除数差距不大时,往往会出现较大的失真。

发明内容

本发明提供一种基于随机计算多比特有符号除法器和除法运算方法,用以解决现有技术中随机计算只能实现有符号2比特除法运算的缺陷,实现多比特有符号除法的运算,并以较小的面积代价降低序列长度,从而提升最终硬件吞吐率。

本发明提供一种基于随机计算多比特有符号除法器,包括:

第一随机计算有符号除法器、第二随机计算有符号除法器、第一加法器、第二加法器和第一D触发器;

其中,所述第一随机计算有符号除法器和所述第一加法器连接;

所述第二随机计算有符号除法器通过所述第一D触发器与所述第二加法器连接;

所述第二加法器和所述第一加法器连接。

在一些实施例中,还包括:

第三随机计算有符号除法器、第三加法器、第四加法器、第五加法器、第二D触发器和第三D触发器;

所述第三随机计算有符号除法器通过所述第二D触发器和所述第三加法器连接;

所述第三加法器通过所述第三D触发器和所述第四加法器连接;

所述第四加法器和所述第五加法器连接;

所述第一加法器和所述第五加法器连接。

在一些实施例中,所述第一随机计算有符号除法器、所述第二随机计算有符号除法器和所述第三随机计算有符号除法器,均包括:

第一JK触发器、第二JK触发器、第六加法器、第一与门电路、第二与门电路和非门电路;

所述第一JK触发器的J输入端和所述第一与门电路连接;所述第一JK触发器的Q输出端和所述第六加法器连接;

所述第二JK触发器的J输入端和所述第二与门电路连接;所述第二与门电路的一个输入端和所述非门电路连接;所述第二JK触发器的Q输出端和所述第六加法器连接。

在一些实施例中,所述第一与门电路的输入分别为多比特序列的符号位和数据位;

所述非门电路的输入均为所述符号位;

所述第二与门电路的输入分别为所述数据位和经过所述非门电路处理过的符号位;

所述第一JK触发器和所述第二JK触发器的输入均为单比特序列的序列值。

在一些实施例中,所述第一加法器、所述第二加法器、所述第三加法器、所述第四加法器、所述第五加法器和所述第六加法器均为有符号原码加法器。

本发明还提供一种除法运算方法,包括:

将多比特序列的符号位、所述多比特序列的第一数据位和单比特序列的序列值,分别输入第一随机计算有符号除法器,得到所述第一数据位为正数的概率和所述第一数据位为负数的概率;

将所述符号位、所述多比特序列的第二数据位和所述单比特序列的序列值,分别输入第二随机计算有符号除法器,得到所述第二数据位为正数的概率和所述第二数据位为负数的概率;

基于第一加法器、第二加法器和第一D触发器,对所述第一数据位为正数的概率和所述第一数据位为负数的概率,以及所述第二数据位为正数的概率和所述第二数据位为负数的概率,进行加权相加,得到除法运算结果。

在一些实施例中,所述除法运算结果的公式如下:

其中,z为除法运算结果,x为多比特序列x

本发明还提供一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现如上述任一种所述除法运算方法。

本发明还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现如上述任一种所述除法运算方法。

本发明还提供一种计算机程序产品,包括计算机程序,所述计算机程序被处理器执行时实现如上述任一种所述除法运算方法。

本发明提供的基于随机计算多比特有符号除法器和除法运算方法,通过包括第一随机计算有符号除法器、第二随机计算有符号除法器、第一加法器、第二加法器和第一D触发器,可以实现3比特有符号除法的运算,并且用3比特除法器进行计算时,每一位上1出现的概率都会减小,从而可以提升计算精度。

附图说明

为了更清楚地说明本发明或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1是本发明实施例提供的基于随机计算多比特有符号除法器的结构示意图之一;

图2是本发明实施例提供的基于随机计算多比特有符号除法器的结构示意图之二;

图3是本发明实施例提供的除法运算方法的流程示意图;

图4是本发明实施例提供的电子设备的结构示意图。

具体实施方式

为使本发明的目的、技术方案和优点更加清楚,下面将结合本发明中的附图,对本发明中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

本发明实施例中术语“第一”、“第二”等是用于区别类似的对象,而不用于描述特定的顺序或先后次序。应该理解这样使用的术语在适当情况下可以互换,以便本发明的实施例能够以除了在这里图示或描述的那些以外的顺序实施,且“第一”、“第二”所区别的对象通常为一类,并不限定对象的个数,例如第一对象可以是一个,也可以是多个。

本发明实施例中术语“多个”是指两个或两个以上,其它量词与之类似。

随机序列:随机计算中用于表示和传递数值对应的概率的方案序列,通常为单比特的01序列,以1出现的概率的形式表示0至1的概率。对于有符号数的表示,可以使用1符号位加1个数值位的方案,可以将表示范围扩充为-1至1。

如果想要将范围扩充到更大,需要使用1符号位加n个数值位的方案,表示范围也将变为-2

图1是本发明实施例提供的基于随机计算多比特有符号除法器的结构示意图之一,参照图1,本发明实施例提供的基于随机计算多比特有符号除法器,可以包括:

第一随机计算有符号除法器、第二随机计算有符号除法器、第一加法器、第二加法器和第一D触发器;

其中,所述第一随机计算有符号除法器和所述第一加法器连接;

所述第二随机计算有符号除法器通过所述第一D触发器与所述第二加法器连接;

所述第二加法器和所述第一加法器连接。

可选地,本发明实施例提供的基于随机计算多比特有符号除法器可以包括:第一随机计算有符号除法器、第二随机计算有符号除法器、第一加法器、第二加法器和第一D触发器。

第一随机计算有符号除法器和第一加法器连接,第二随机计算有符号除法器通过第一D触发器和所述第二加法器连接,第二加法器和第一加法器连接。

随机计算有符号除法器(Signed Stochastic Real Division)可以实现2比特有符号除法。

图1所示的基于随机计算多比特有符号除法器可以实现3比特有符号除法,

例如,被除数为3比特序列,包括1比特符号位和2比特数据位。除数为单比特序列,不包括符号位。

将3比特序列的符号位、第一数据位和单比特序列的序列值,分别输入第一随机计算有符号除法器,可以得到3比特序列中第一数据位为正数的概率和第一数据位为负数的概率。

将3比特序列的符号位、3比特序列的第二数据位和单比特序列的序列值,分别输入第二随机计算有符号除法器,可以得到3比特序列中第二数据位为正数的概率和第二数据位为负数的概率。

第一D触发器用于增加时延,可以减少两组序列之间的相关性,从而减少随机计算时出现溢出的情况。

通过第一D触发器和第二加法器对第二数据位为正数的概率和第二数据位为负数的概率进行加权相加,得到第一结果。

并通过第一加法器,对第一结果和3比特序列中第一数据位为正数的概率和第一数据位为负数的概率,进行加权相加,得到最终除法运算结果。

可选地,第一加法器和第二加法器均为有符号原码加法器。

本发明实施例提供的基于随机计算多比特有符号除法器,通过包括第一随机计算有符号除法器、第二随机计算有符号除法器、第一加法器、第二加法器和第一D触发器,可以实现3比特有符号除法的运算,并且用3比特除法器进行计算时,每一位上1出现的概率都会减小,从而可以提升计算精度。

图2是本发明实施例提供的基于随机计算多比特有符号除法器的结构示意图之二,参照图2,本发明实施例提供的基于随机计算多比特有符号除法器,还包括:

第三随机计算有符号除法器、第三加法器、第四加法器、第五加法器、第二D触发器和第三D触发器;

所述第三随机计算有符号除法器通过所述第二D触发器和所述第三加法器连接;

所述第三加法器通过所述第三D触发器和所述第四加法器连接;

所述第四加法器和所述第五加法器连接;

所述第一加法器和所述第五加法器连接。

可选地,本发明实施例提供的基于随机计算多比特有符号除法器还可以包括:第三随机计算有符号除法器、第三加法器、第四加法器、第五加法器、第二D触发器和第三D触发器。

可选地,图2所示的基于随机计算多比特有符号除法器可以实现4比特有符号除法。

例如,被除数为4比特序列,包括1比特符号位和3比特数据位。除数为单比特序列,不包括符号位。

将4比特序列的符号位、第一数据位和单比特序列的序列值,分别输入第一随机计算有符号除法器,可以得到4比特序列中第一数据位为正数的概率和第一数据位为负数的概率。

将4比特序列的符号位、4比特序列的第二数据位和单比特序列的序列值,分别输入第二随机计算有符号除法器,可以得到4比特序列中第二数据位为正数的概率和第二数据位为负数的概率。

将4比特序列的符号位、4比特序列的第三数据位和单比特序列的序列值,分别输入第三随机计算有符号除法器,可以得到4比特序列中第三数据位为正数的概率和第二数据位为负数的概率。

第一D触发器和第二D触发器用于增加时延,可以减少两组序列之间的相关性,从而减少随机计算时出现溢出的情况。

通过第一D触发器和第二加法器对第二数据位为正数的概率和第二数据位为负数的概率进行加权相加,得到第一结果。

并通过第一加法器,对第一结果和4比特序列中第一数据位为正数的概率和第一数据位为负数的概率,进行加权相加,得到第二结果。

通过第二D触发器和第三加法器对第三数据位为正数的概率和第三数据位为负数的概率进行加权相加,得到第三结果。

通过第三D触发器和第四加法器对第三结果进行加权相加,得到第四结果。

通过第五加法器对第二结果和第四结果进行加权相加,得到最终除法运算结果。

可选地,第三加法器、第四加法器和第五加法器均为有符号原码加法器。

可选地,在图1和图2所示的基于随机计算多比特有符号除法器的结构的基础上,可以得到n比特随机数除法器。

例如,n=5时,则只需在图2的基础上增加一个第四随机计算有符号除法器和三个D触发器和四个加法器,第四随机计算有符号除法器结构与随机计算有符号除法器的结构相同,并且各电路之间的连接关系相同。

即在n=6、7、8...时,通过相应的增加第五随机计算有符号除法器、第六随机计算有符号除法器、D触发器和加法器...随机计算有符号除法器的结构都相同,可以得到多比特随机数除法器。从而可以实现x序列为任意比特序列作为被除数时的除法。

具体计算公式如下:

其中,z为除法运算结果,x为1+n比特序列x

本发明实施例提供的基于随机计算多比特有符号除法器,通过包括第三随机计算有符号除法器、第三加法器、第四加法器、第五加法器、第二D触发器和第三D触发器,可以实现4比特有符号除法的运算,并且每一位上1出现的概率都会减小,从而可以提升计算精度。并且在本发明实施例的基础上,可以实现任意比特有符号除法器,并且可以通过增大随机计算的位宽,达到在可接受的复杂度范围内减小需要的序列长度的效果。

在一些实施例中,所述第一随机计算有符号除法器、所述第二随机计算有符号除法器和所述第三随机计算有符号除法器,均包括:

第一JK触发器、第二JK触发器、第六加法器、第一与门电路、第二与门电路和非门电路;

所述第一JK触发器的J输入端和所述第一与门电路连接;所述第一JK触发器的Q输出端和所述第六加法器连接;

所述第二JK触发器的J输入端和所述第二与门电路连接;所述第二与门电路的一个输入端和所述非门电路连接;所述第二JK触发器的Q输出端和所述第六加法器连接。

可选地,第一随机计算有符号除法器、第二随机计算有符号除法器和第三随机计算有符号除法器的结构均相同,都包括:第一JK触发器、第二JK触发器、第六加法器、第一与门电路、第二与门电路和非门电路。第六加法器为有符号原码加法器。

并且随机计算有符号除法器在单独使用时,可以实现2比特随机数除法。

在一些实施例中,所述第一与门电路的输入分别为多比特序列的符号位和数据位;

所述非门电路的输入均为所述符号位;

所述第二与门电路的输入分别为所述数据位和经过所述非门电路处理过的符号位;

所述第一JK触发器和所述第二JK触发器的输入均为单比特序列的序列值。

例如,x为2比特序列对应的值,x

通过将x序列的符号位和数据位分别进行处理,例如,将s(x

具体计算公式如下:

其中,x为多比特序列x

本发明实施例提供的基于随机计算多比特有符号除法器,通过随机计算有符号除法器的与门电路和非门电路对多比特序列的符号位和数据位分开进行处理,确定每个数据位上1和-1出现的概率,并且基于JK触发器得到每个数据位上的正数和负数的概率,并对其加权相加得到最终运算结果,可以实现多比特序列作为被除数的除法运算。

图3是本发明实施例提供的除法运算方法的流程示意图,参照图3,本发明实施例提供的除法运算方法,可以包括:

步骤301、将多比特序列的符号位、所述多比特序列的第一数据位和单比特序列的序列值,分别输入第一随机计算有符号除法器,得到所述第一数据位为正数的概率和所述第一数据位为负数的概率;

步骤302、将所述符号位、所述多比特序列的第二数据位和所述单比特序列的序列值,分别输入第二随机计算有符号除法器,得到所述第二数据位为正数的概率和所述第二数据位为负数的概率;

步骤303、基于第一加法器、第二加法器和第一D触发器,对所述第一数据位为正数的概率和所述第一数据位为负数的概率,以及所述第二数据位为正数的概率和所述第二数据位为负数的概率,进行加权相加,得到除法运算结果。

可选地,在步骤301中,将多比特序列的符号位、所述多比特序列的第一数据位和单比特序列的序列值,分别输入第一随机计算有符号除法器,得到所述第一数据位为正数的概率和所述第一数据位为负数的概率。

将3比特序列的符号位、第一数据位和单比特序列的序列值,分别输入第一随机计算有符号除法器,可以得到3比特序列中第一数据位为正数的概率和第一数据位为负数的概率。

在步骤302中,将所述符号位、所述多比特序列的第二数据位和所述单比特序列的序列值,分别输入第二随机计算有符号除法器,得到所述第二数据位为正数的概率和所述第二数据位为负数的概率。

将3比特序列的符号位、第二数据位和单比特序列的序列值,分别输入第二随机计算有符号除法器,可以得到3比特序列中第二数据位为正数的概率和第二数据位为负数的概率。

在步骤303中,基于第一加法器、第二加法器和第一D触发器,对所述第一数据位为正数的概率和所述第一数据位为负数的概率,以及所述第二数据位为正数的概率和所述第二数据位为负数的概率,进行加权相加,得到除法运算结果。

第一D触发器用于增加时延,可以减少两组序列之间的相关性,从而减少随机计算时出现溢出的情况。

通过第一D触发器和第二加法器对第二数据位为正数的概率和第二数据位为负数的概率进行加权相加,得到第一结果。

并通过第一加法器,对第一结果和3比特序列中第一数据位为正数的概率和第一数据位为负数的概率,进行加权相加,得到最终除法运算结果。

具体计算公式如下:

其中,x为多比特序列x

本发明实施例提供的除法运算方法,可以实现3比特有符号除法的运算,并且用3比特除法器进行计算时,每一位上1出现的概率都会减小,从而可以提升计算精度。

图4示例了一种电子设备的实体结构示意图,如图4所示,该电子设备可以包括:处理器(processor)410、通信接口(Communications Interface)420、存储器(memory)430和通信总线440,其中,处理器810,通信接口420,存储器430通过通信总线440完成相互间的通信。处理器410可以调用存储器430中的逻辑指令,以执行除法运算方法,该方法包括:将多比特序列的符号位、所述多比特序列的第一数据位和单比特序列的序列值,分别输入第一随机计算有符号除法器,得到所述第一数据位为正数的概率和所述第一数据位为负数的概率;将所述符号位、所述多比特序列的第二数据位和所述单比特序列的序列值,分别输入第二随机计算有符号除法器,得到所述第二数据位为正数的概率和所述第二数据位为负数的概率;基于第一加法器、第二加法器和第一D触发器,对所述第一数据位为正数的概率和所述第一数据位为负数的概率,以及所述第二数据位为正数的概率和所述第二数据位为负数的概率,进行加权相加,得到除法运算结果。

此外,上述的存储器430中的逻辑指令可以通过软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。

另一方面,本发明还提供一种计算机程序产品,所述计算机程序产品包括计算机程序,计算机程序可存储在非暂态计算机可读存储介质上,所述计算机程序被处理器执行时,计算机能够执行上述各方法所提供的除法运算方法,该方法包括:将多比特序列的符号位、所述多比特序列的第一数据位和单比特序列的序列值,分别输入第一随机计算有符号除法器,得到所述第一数据位为正数的概率和所述第一数据位为负数的概率;将所述符号位、所述多比特序列的第二数据位和所述单比特序列的序列值,分别输入第二随机计算有符号除法器,得到所述第二数据位为正数的概率和所述第二数据位为负数的概率;基于第一加法器、第二加法器和第一D触发器,对所述第一数据位为正数的概率和所述第一数据位为负数的概率,以及所述第二数据位为正数的概率和所述第二数据位为负数的概率,进行加权相加,得到除法运算结果。

又一方面,本发明还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现以执行上述各方法提供的除法运算方法,该方法包括:将多比特序列的符号位、所述多比特序列的第一数据位和单比特序列的序列值,分别输入第一随机计算有符号除法器,得到所述第一数据位为正数的概率和所述第一数据位为负数的概率;将所述符号位、所述多比特序列的第二数据位和所述单比特序列的序列值,分别输入第二随机计算有符号除法器,得到所述第二数据位为正数的概率和所述第二数据位为负数的概率;基于第一加法器、第二加法器和第一D触发器,对所述第一数据位为正数的概率和所述第一数据位为负数的概率,以及所述第二数据位为正数的概率和所述第二数据位为负数的概率,进行加权相加,得到除法运算结果。

以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。

通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分所述的方法。

最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。

去获取专利,查看全文>

相似文献

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

客服邮箱:kefu@zhangqiaokeyan.com

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

  • 服务号