CN114281304A - 随机计算方法、电路、芯片及设备 - Google Patents
随机计算方法、电路、芯片及设备 Download PDFInfo
- Publication number
- CN114281304A CN114281304A CN202210033674.6A CN202210033674A CN114281304A CN 114281304 A CN114281304 A CN 114281304A CN 202210033674 A CN202210033674 A CN 202210033674A CN 114281304 A CN114281304 A CN 114281304A
- Authority
- CN
- China
- Prior art keywords
- pulse
- circuit
- calculated
- calculation
- sub
- 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
Links
- 238000004364 calculation method Methods 0.000 title claims abstract description 180
- 238000000034 method Methods 0.000 claims abstract description 14
- 238000012545 processing Methods 0.000 claims description 35
- 238000005070 sampling Methods 0.000 claims description 32
- 238000010586 diagram Methods 0.000 description 11
- 230000000875 corresponding effect Effects 0.000 description 10
- 230000000630 rising effect Effects 0.000 description 10
- 102100040862 Dual specificity protein kinase CLK1 Human genes 0.000 description 7
- 101000749294 Homo sapiens Dual specificity protein kinase CLK1 Proteins 0.000 description 7
- 102100040844 Dual specificity protein kinase CLK2 Human genes 0.000 description 5
- 101000749291 Homo sapiens Dual specificity protein kinase CLK2 Proteins 0.000 description 5
- 101100113692 Caenorhabditis elegans clk-2 gene Proteins 0.000 description 3
- 230000001276 controlling effect Effects 0.000 description 3
- 230000002596 correlated effect Effects 0.000 description 3
- 238000013461 design Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 101100328957 Caenorhabditis elegans clk-1 gene Proteins 0.000 description 1
- 230000015572 biosynthetic process Effects 0.000 description 1
- 230000003247 decreasing effect Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000009977 dual effect Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012827 research and development Methods 0.000 description 1
- 238000003786 synthesis reaction Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F7/00—Methods or arrangements for processing data by operating upon the order or content of the data handled
- G06F7/60—Methods or arrangements for performing computations using a digital non-denominational number representation, i.e. number representation without radix; Computing devices using combinations of denominational and non-denominational quantity representations, e.g. using difunction pulse trains, STEELE computers, phase computers
- G06F7/70—Methods or arrangements for performing computations using a digital non-denominational number representation, i.e. number representation without radix; Computing devices using combinations of denominational and non-denominational quantity representations, e.g. using difunction pulse trains, STEELE computers, phase computers using stochastic pulse trains, i.e. randomly occurring pulses the average pulse rates of which represent numbers
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F7/00—Methods or arrangements for processing data by operating upon the order or content of the data handled
- G06F7/58—Random or pseudo-random number generators
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Physics & Mathematics (AREA)
- Mathematical Analysis (AREA)
- Pure & Applied Mathematics (AREA)
- Mathematical Optimization (AREA)
- General Engineering & Computer Science (AREA)
- Computational Mathematics (AREA)
- Computing Systems (AREA)
- Mathematical Physics (AREA)
- Manipulation Of Pulses (AREA)
- Pulse Circuits (AREA)
Abstract
一种随机计算方法、电路、芯片及设备,属于电路技术领域。随机计算电路包括:控制电路,用于向脉冲输入电路输入控制参数,控制参数包括:具有整数部分和小数部分的控制字;脉冲输出电路,用于根据控制参数和相位均匀间隔的多路基准脉冲,向计算电路输入待计算脉冲;其中,待计算脉冲包括第一子脉冲和第二子脉冲中的至少一种,第一子脉冲和第二子脉冲的周期由整数部分控制,第一子脉冲和第二子脉冲在待计算脉冲中出现的概率由小数部分控制;计算电路,用于根据待计算脉冲的占空比执行逻辑计算,并输出逻辑计算的计算结果。本申请能够提升计算结果的准确度,本申请用于计算电路。
Description
技术领域
本申请涉及电路技术领域,特别涉及一种随机计算方法、电路、芯片及设备。
背景技术
计算电路是中央处理器(英文:central processing unit;简称:CPU)、图形处理器(英文:graphics processing unit;简称:GPU)等处理芯片的重要组成部分。计算电路用于执行逻辑计算。
相关技术中,计算电路基于二进制计算,计算电路会将需要计算的数字由十进制转换为二进制,再对二进制的数字进行计算。
但是,当二进制的数字中某一比特位发生错误时,二进制的数字会发生较大变化,导致计算电路输出的计算结果与正确的计算结果的差异较大,计算电路输出的计算结果的准确度较低。
发明内容
本申请提供了一种随机计算方法、电路、芯片及设备,可以解决计算结果的准确度较低的问题,所述技术方案如下:
第一方面,提供了一种随机计算电路,所述随机计算电路包括:控制电路、脉冲输出电路和计算电路;所述控制电路和所述计算电路均与所述脉冲输出电路连接;
所述控制电路用于向所述脉冲输入电路输入控制参数,所述控制参数包括:具有整数部分和小数部分的控制字;
所述脉冲输出电路用于根据所述控制参数和相位均匀间隔的多路基准脉冲,向所述计算电路输入待计算脉冲;其中,所述待计算脉冲包括在时域上排布的第一子脉冲和第二子脉冲中的至少一种子脉冲,所述第一子脉冲和所述第二子脉冲的周期由所述整数部分控制,所述第一子脉冲和所述第二子脉冲在所述待计算脉冲中出现的概率由所述小数部分控制;
所述计算电路用于根据所述待计算脉冲的占空比执行逻辑计算,并输出所述逻辑计算的计算结果。
可选地,所述控制参数还包括:高电平参数ζ;THI_A=THI_B=ζ·Δ;
THI_A表示所述第一子脉冲的高电平持续时长;THI_B表示所述第二子脉冲的高电平持续时长;ζ为整数,且1≤ζ≤I-1,I表示所述整数部分;Δ表示所述多路基准脉冲中任意两路相邻的所述基准脉冲的相位差。
可选地,所述随机计算电路包括多个所述脉冲输出电路;
所述控制电路用于向每个所述脉冲输出电路输入所述脉冲输出电路对应的控制参数。
可选地,多个所述脉冲输出电路包括:用于向所述计算电路输入第一待计算脉冲的第一脉冲输出电路,以及用于向所述计算电路输入第二待计算脉冲的第二脉冲输出电路;
所述第一待计算脉冲与所述第二待计算脉冲不相关。
可选地,所述第一待计算脉冲与所述第二待计算脉冲相独立。
可选地,所述第一待计算脉冲的目标参数与所述第二待计算脉冲的目标参数互为质数;
对于任一所述待计算脉冲,所述待计算脉冲的所述目标参数为q·I+p,p/q等于所述小数部分,I表示所述整数部分。
可选地,所述随机计算电路还包括:采样电路和时钟电路,所述计算电路和所述时钟电路均连接至所述采样电路,所述采样电路还与所述控制电路连接;
所述控制电路还用于向所述采样电路输入目标序列长度;
所述时钟电路用于向所述采样电路提供时钟信号;
所述采样电路用于根据所述时钟信号和所述目标序列长度,对所述计算电路输出的所述计算结果进行采样,得到所述目标序列长度的结果序列;
所述采样电路还用于输出所述结果序列的占空比的指示信号。
可选地,所述待计算脉冲的时长TFD=(q-p)·TA+p·TB;
p/q等于所述小数部分;TA=I·Δ,TA表示所述第一子脉冲的周期,I表示所述整数部分,Δ表示所述多路基准脉冲中任意两路相邻的所述基准脉冲的相位差;TB=(I+1)·Δ,TB表示所述第二子脉冲的周期。
可选地,p/q为所述小数部分的最简约数。
可选地,所述整数部分大于16。
可选地,所述脉冲输出电路包括:第一处理电路、第二处理电路和输出电路,所述第一处理电路和所述输出电路均与所述第二处理电路连接;
所述第一处理电路用于根据所述控制参数分别输出第一控制信号和第二控制信号;
所述第二处理电路用于根据所述第一控制信号从所述多路基准脉冲中选出第I路基准脉冲,以及根据所述第二控制信号从所述多路基准脉冲中选出第J路基准脉冲,并从所述第I路基准脉冲和所述第J路基准脉冲中选择一路基准脉冲作为输出脉冲,1≤I,1≤J;
所述输出电路用于根据所述第二处理电路的输出脉冲输出所述待计算脉冲。
可选地,所述逻辑计算包括加、减、乘、除、开方、平方中的至少一种计算。
第二方面,提供了一种随机计算方法,所述方法用于第一方面提供的任一种随机计算电路,所述方法包括:
利用所述控制电路向所述脉冲输入电路输入控制参数,所述控制参数包括:具有整数部分和小数部分的控制字;
利用所述脉冲输出电路根据所述控制参数和相位均匀间隔的多路基准脉冲,向所述计算电路输入待计算脉冲;其中,所述待计算脉冲包括在时域上排布的第一子脉冲和第二子脉冲中的至少一种子脉冲,所述第一子脉冲和所述第二子脉冲的周期由所述整数部分控制,所述第一子脉冲和所述第二子脉冲在所述待计算脉冲中出现的概率由所述小数部分控制;
利用所述计算电路根据所述待计算脉冲的占空比执行逻辑计算,并输出所述逻辑计算的计算结果。
第三方面,提供了一种芯片,所述芯片包括第一方面提供的任一种随机计算电路。
第四方面,提供了一种电子设备,所述电子设备包括第三方面提供的芯片。
综上所述,本申请实施例提供的随机计算电路中,脉冲输出电路能够输出待计算脉冲,并且计算电路能够根据待计算脉冲的占空比执行逻辑计算。在待计算脉冲中某一比特出错时,该待计算脉冲的占空比并不会发生较大的改变,进而逻辑计算的结果也不会发生较大的改变,因此,计算电路输出的计算结果的准确度较高。
附图说明
图1为本申请实施例提供的一种随机计算电路的结构示意图;
图2为本申请实施例提供的信号源提供的多路基准脉冲的波形图;
图3为本申请实施例提供的一种待计算脉冲的示意图;
图4为本申请实施例提供的DFD在不同I下的取值区间示意图;
图5为本申请实施例提供的一种脉冲输出电路02的结构示意图;
图6为本申请实施例提供的另一种随机计算电路的结构示意图;
图7为本申请实施例提供的另一种随机计算电路的结构示意图;
图8为本申请实施例提供的另一种随机计算电路的结构示意图;
图9为本申请实施例提供的表1中例子1的结果图;
图10为本申请实施例提供的表1中例子2的结果图;
图11为本申请实施例提供的随机计算方法的流程图。
具体实施方式
为使本申请的原理、技术方案和优点更加清楚,下面将结合附图对本申请实施方式作进一步地详细描述。
随着芯片技术的快速发展,以及物联网应用逐步落地,芯片中计算电路的计算愈加复杂,计算电路所采用的计算范式(也称计算方式)来到了需要突破的节点。
相关技术中,计算电路采用经典的冯诺依曼架构,并且,计算电路基于二进制计算,计算电路会将需要计算的数字由十进制转换为二进制,再对二进制的数字进行计算。比如,假设需要计算3和8的乘积,那么计算电路会将3转换为二进制的0011,以及将8转换为二进制的0100,之后,将0011和0100相乘得到计算结果24。
但是,当二进制的数字中某一比特位发生错误时,二进制的数字会发生较大变化,导致计算电路输出的计算结果与正确的计算结果的差异较大,计算电路输出的计算结果的准确度较低。比如,仍然以上述例子为例,当3的二进制0011中第二个比特位错误时,该二进制变为0111,0111表示的12与3差异较大,将表示12的二进制0111与表示8的二进制0100相乘所得到的结果96与24相差较大。
另外,这种计算方式的计算精度与二进制的位数具有绝对的关系,随着计算任务的加重,二进制的位数达到了64位、128位、256位和1024位宽,采用不同位数二进制的计算电路的计算精度不同。如果计算电路需要兼容多种计算精度,则会增大计算电路的设计成本。如果计算电路不兼容多种计算精度,则计算电路只具有固定的精度,计算电路的扩展性较差。
再者,在计算电路进行计算前,计算电路所在的处理器需要从内存中读取计算电路的待计算数据,可见,计算电路的计算效率与处理器和内存的带宽都相关,而处理器和内存的带宽中较慢的带宽会对计算电路的计算效率造成影响。
本申请实施例提供了一种随机计算电路,该随机计算电路输出的计算结果的准确度较高,并且,该随机计算电路可以具有无限的计算精度,内存的带宽不会影响该随机计算电路的计算效率。
示例地,图1为本申请实施例提供的一种随机计算电路的结构示意图,如图1所示,该随机计算电路包括:控制电路01、脉冲输出电路02和计算电路03;控制电路01和计算电路03均与脉冲输出电路02连接。
控制电路01用于向脉冲输入电路02输入控制参数,控制参数包括:具有整数部分和小数部分的控制字。其中,控制字是一个数字,并且控制字具有整数部分和小数部分。比如,控制字为2.5,其中整数部分为2,小数部分为0.5。需要说明的是,当控制字为整数时,控制字的小数部分为0。
脉冲输出电路02用于根据控制参数和相位均匀间隔的多路基准脉冲,向计算电路03输入待计算脉冲;其中,待计算脉冲包括在时域上排布的第一子脉冲和第二子脉冲中的至少一种子脉冲,第一子脉冲和第二子脉冲的周期由整数部分控制,第一子脉冲和第二子脉冲在待计算脉冲中出现的概率由小数部分控制。
请继续参考图1,相位均匀间隔的多路基准脉冲可以是信号源提供的脉冲,信号源可以位于脉冲输出电路02之外,当然,信号源也可以属于脉冲输出电路02,本申请实施例中以信号源位于脉冲输出电路02之外为例。
图2为信号源提供的多路基准脉冲的波形图,图2中以多路基准脉冲包括K路基准脉冲为例,K>1。参见图2,该多路基准脉冲的波形相同(即周期和幅度相同)。多路基准脉冲的波形均匀排布,这些基准脉冲在时域上的间隔相同,多路基准脉冲中任意两路相邻的基准脉冲的相位差Δ,多路基准脉冲的频率均为fi。
控制参数用于控制脉冲输出电路02输出的待计算脉冲。
示例地,待计算脉冲的占空比用于表示待计算小数,待计算小数为即将参与计算的小数,本申请实施例提供的随机计算电路用于对小数进行逻辑计算。比如,若待计算小数为0.5,那么脉冲输出电路02输出的待计算脉冲的占空比为1/2,也即该待计算脉冲中高电平的持续时间的占比为1/2,待计算脉冲可以是11110000。
又示例地,待计算脉冲中第一子脉冲和第二子脉冲的周期由整数部分控制,待计算脉冲中第一子脉冲和第二子脉冲在待计算脉冲中出现的概率由小数部分控制。比如,假设第一子脉冲的周期表示为TA,第二子脉冲的周期表示为TB,控制字的整数部分表示为I,那么TA=I*Δ,TB=(I+1)*Δ。当然,TA和TB也可以有其他的表示方式,比如,TB=(I+2)*Δ等,本申请实施例以TA=I*Δ,TB=(I+1)*Δ为例。若控制字的小数部分表示为r,那么,待计算脉冲中第一子脉冲和第二子脉冲出现的概率之比为(q-p)/p,p/q=r,此时,待计算脉冲的时长TFD=(q-p)·TA+p·TB。p/q可以是小数部分r的最简约数,比如,假设小数部分为0.5,则p/q为1/2,p=1,q=2。p/q也可以不是小数部分r的最简约数,比如,在小数部分为0.5时,p=2,q=4。
如图3所示,TB相较于TA周期更大,在图3中表现为TB的长度比TA长。当控制字的小数部分为0.5时,第一子脉冲和第二子脉冲在待计算脉冲中出现的概率相等,TA和TB出现的概率相等,参见图3所示的待计算脉冲,其中TA和TB交替出现。当小数部分小于0.5时,待计算脉冲中第一子脉冲出现的概率大于第二子脉冲出现的概率,TA出现的概率大于TB出现的概率。当小数部分大于0.5时,待计算脉冲中第一子脉冲出现的概率小于第二子脉冲出现的概率,TB出现的概率大于TA。需要说明的是,当控制字为整数时,控制字的小数部分为0,此时,该脉冲信号只包含第一子脉冲,且不包含第二子脉冲。
计算电路03用于根据待计算脉冲的占空比执行逻辑计算,并输出逻辑计算的计算结果。脉冲输出电路02会向计算电路03输入待计算脉冲,计算电路03可以根据待计算脉冲的占空比(表示待计算小数)执行逻辑计算,相当于根据待计算小数执行逻辑计算。比如,待计算脉冲的占空比为1/2,那么计算电路03便可以根据1/2执行逻辑计算。此处的逻辑计算可以是任意的逻辑计算,比如,该逻辑计算包括加、减、乘、除、开方、平方等中的至少一种计算。当逻辑计算包括加时,计算电路03包括或门,或者数据选择器(multiplexer,MUX)。等。
综上所述,本申请实施例提供的随机计算电路中,脉冲输出电路能够输出待计算脉冲,并且计算电路能够根据待计算脉冲的占空比执行逻辑计算。在待计算脉冲中某一比特出错时,该待计算脉冲的占空比并不会发生较大的改变,进而逻辑计算的结果也不会发生较大的改变,因此,计算电路输出的计算结果的准确度较高。
并且,控制电路可以通过控制字控制脉冲输出电路输出的待计算脉冲的占空比、子脉冲的周期、子脉冲出现的概率等。因此,可以实现对待计算脉冲的精准控制。
待计算脉冲的时长TFD=(q-p)·TA+p·TB,假设待计算脉冲的周期为TTAF,那么:
TFD=q·TTAF=(q-p)·TA+p·TB=(q·I+p)·Δ;
其中,F表示控制字,F=I+r。可以看出,fs(待计算脉冲的频率)会随着F的变化而线性变化,相应地,待计算脉冲的周期也随着F的变化而变化,因此,本申请实施例可以通过控制字F控制待计算脉冲的周期和频率。
上述实施例中以控制电路01用于向脉冲输入电路02输入的控制参数包括控制字为例,可选地,该控制参数还包括:高电平参数ζ。高电平参数ζ用于控制待计算脉冲中第一子脉冲和第二子脉冲的高电平持续时长。THI_A=THI_B=ζ·Δ;其中,THI_A表示第一子脉冲的高电平持续时长;THI_B表示第二子脉冲的高电平持续时长。ζ为整数,且1≤ζ≤I-1,I表示整数部分;Δ表示多路基准脉冲中任意两路相邻的基准脉冲的相位差。如图3所示,第一子脉冲的高电平持续时长THI_A等于第二子脉冲的高电平持续时长THI_B。
在THI_A=THI_B=ζ·Δ时,待计算脉冲中高电平的总时间THI_FD可以表示为:
THI_FD=(q-p)·ζ·Δ+p·ζ·Δ=q·ζ·Δ;
待计算脉冲中高电平的占比DFD可以表示为:
根据1≤ζ≤I-1,可以得出DFD的取值范围为:
将上述DFD的取值范围进行推导可以得出:
根据DFD的这一取值范围可以看出,DFD的取值范围几乎可以覆盖整个0到1的区间,比如,当I=128时,DFD的取值范围如下:
示例地,DFD在不同I下的取值区间如图4所示,可以看出,当I>16时,DFD的取值范围几乎可以覆盖整个0到1的区间。本申请实施例中以I>16为例。
在DFD的取值范围几乎可以覆盖整个0到1的区间时,待计算脉冲所表示的小数几乎可以覆盖整个0到1的区间,随机计算电路的应用范围较大。
进一步地,本申请实施例提供的脉冲输出电路02的结构多种多样,以下将以图5所示的结构为例进行讲解。请参考图5,脉冲输出电路02包括:第一处理电路21、第二处理电路22和输出电路23,第一处理电路21和输出电路23均与第二处理电路22连接。
第一处理电路21用于根据控制参数分别输出第一控制信号和第二控制信号;第二处理电路22用于根据第一控制信号从多路基准脉冲(如K路基准脉冲,K>1)中选出第I路基准脉冲,以及根据第二控制信号从多路基准脉冲中选出第J路基准脉冲,并从第I路基准脉冲和第J路基准脉冲中选择一路基准脉冲作为输出脉冲,1≤I,1≤J;输出电路23用于根据第二处理电路22的输出脉冲输出待计算脉冲。
下面结合图5对第一处理电路21、第二处理电路22以及输出电路23的工作过程进行说明:
第一处理电路21包括第一逻辑控制器211、第二逻辑控制器212。
参考图5,第一逻辑控制器211包括第一加法器2111、第一寄存器2112和第二寄存器2113,第一寄存器2112分别与第一加法器2111和第二寄存器2113连接。第一逻辑控制器211的作用是产生第一控制信号。
第一加法器2111用于在使能信号的作用下,将控制字F和第一寄存器2112存储的最高有效位(most significant bits,例如,5比特)相加,然后在第二时钟频率CLK2的上升沿时将相加结果保存到第一寄存器2112中;或者,第一加法器2111可以用于在使能信号的作用下,将控制字F和第一寄存器2112存储的所有比特相加,然后在第二时钟频率CLK2的上升沿时将相加结果保存到第一寄存器2112中。在第二时钟频率CLK2的下一个上升沿时,第一寄存器2112存储的最高有效位将被存储到第二寄存器2113中,作为第一K→1多路复用器221的选择信号,也即前述第一控制信号,用于从K路相位均匀间隔的基准脉冲中选择第I路基准脉冲输出。
在将控制字F和第一寄存器2112存储的最高有效位相加时,假设第一寄存器2112内的值小于1,如果相加结果的小数部分进位,则存入第二寄存器2113的最高有效位为I+1,如果相加时控制字未发生进位,则存入第二寄存器2113的最高有效位为I。当第二寄存器2113中为I+1时,脉冲输出电路对应输出的是TB=(I+1)·Δ,当第二寄存器2113中为I时,脉冲输出电路对应输出的是TA=I·Δ,可以看出输出TA还是TB与控制字的小数部分大小相关,控制字的小数部分越小,越不容易发生进位,则输出TA的概率越大,反之则输出TB的概率大。
这里,第一寄存器2112可以包括存储整数的第一部分和存储小数的第二部分。相加时,将控制字F的整数部分和第一部分中的内容相加,将控制字F的小数部分和第二部分中的内容相加。相加时为二进制相加,由加法器实现。
第二逻辑控制器212包括第二加法器2121、第三寄存器2122和第四寄存器2123。第三寄存器2122分别与第二加法器2121以及第四寄存器2123连接。第二逻辑控制器212的作用是产生第二控制信号。
第二加法器2121用于在使能信号的作用下,将高电平参数ζ和第一寄存器2112存储的最高有效位相加,然后在第二时钟频率CLK2的上升沿时将相加结果保存到第三寄存器2122中。在将相加结果保存到第三寄存器2122中之后,在第一时钟频率CLK1的上升沿时,第三寄存器2122存储的信息将被存储到第四寄存器2123中,并作为第二K→1多路复用器222的选择信号,也即前述第二控制信号,用于从K路基准脉冲中选择第J路基准脉冲输出。其中,第二时钟频率CLK2为第一时钟频率CLK1经过非门后的信号。
需要说明的是,本申请实施例中以第二加法器2121的输入包括高电平参数ζ为例,可选地,第二加法器2121的输入中的高电平参数ζ还可以是其他用于控制THI_A和THI_B的参数,本申请实施例对此不作限定。
参考图5,第二处理电路22包括第一K→1多路复用器221、第二K→1多路复用器222和2→1多路复用器223。第一K→1多路复用器221和第二K→1多路复用器222分别包括多个输入端、控制输入端和输出端。2→1多路复用器223包括控制输入端、输出端、第一输入端和第二输入端。第一K→1多路复用器221的输出端和2→1多路复用器223的第一输入端连接,第二K→1多路复用器222的输出端和2→1多路复用器223的第二输入端连接;第一K→1多路复用器221的多个输入端、第二K→1多路复用器222的多个输入端均与信号发生器连接;第一K→1多路复用器221的控制输入端与第二寄存器2113连接,第二K→1多路复用器222的控制输入端与第四寄存器2123连接。
第一K→1多路复用器221的控制输入端在第一逻辑控制器211产生的第一控制信号的控制下,从K路相位均匀间隔的基准脉冲中选择第I路基准脉冲输出;第二K→1多路复用器222的控制输入端在第二逻辑控制器212产生的第二控制信号控制下,从K路相位均匀间隔的基准脉冲中选择第J路基准脉冲输出。
以第一K→1多路复用器为例,在选择基准脉冲时,可以根据第二寄存器2113存储的值,也即第一控制信号的数值选择,例如,第一控制信号为3,则选择K路相位均匀间隔的基准脉冲中的第3路基准脉冲输出。
2→1多路复用器223可以在第一时钟频率CLK1的上升沿时,选择来自第一K→1多路复用器221输出的第I路基准脉冲和来自第二K→1多路复用器222输出的第J路基准脉冲中的一个,作为2→1多路复用器223的输出。例如,在第一个上升沿时开始选择第I路基准脉冲直到第二个上升沿,在第二个上升沿时开始选择第J路基准脉冲直到第三个上升沿,依次类推。
由于2→1多路复用器是在两个K→1多路复用器的输出中进行选择的,两个K→1多路复用器的输出拼合形成新的周期,由于两个K→1多路复用器的输出的第一脉冲信号和第二脉冲信号间相差整数个Δ,并且存在相差I个Δ和相差I+1个Δ两种情况,使得最终脉冲输出电路输出的待计算脉冲中存在TA和TB两个不同的周期。
参考图5,输出电路23包括触发电路。触发电路用于生成脉冲串。触发电路包括D触发器231、第一反相器232和第二反相器233。D触发器231包括数据输入端、时钟输入端和输出端。第一反相器232包括输入端和输出端。第二反相器233包括输入端和输出端。D触发器231的时钟输入端与2→1多路复用器223连接,D触发器231的数据输入端与第一反相器232的输出端连接,D触发器231的输出端分别与第一反相器232的输入端和第二反相器233的输入端连接。D触发器231的输出端或第二反相器233的输出端可以作为脉冲输出电路的输出端,也即产生待计算脉冲的一端,因此,脉冲输出电路输出的待计算脉冲也即图5中的第一时钟频率CLK1或者第二时钟频率CLK2。
在本公开实施例中,第一时钟信号和第二时钟信号是输入不同控制字时,脉冲输出电路输出的第一时钟频率CLK1。或者,第一时钟信号和第二时钟信号是输入不同控制字时,脉冲输出电路输出的第二时钟频率CLK2。
D触发器231的时钟输入端接收来自2→1多路复用器223的输出端的输出,并通过输出端输出第一时钟频率CLK1;第一反相器232的输入端接收第一时钟频率CLK1,并将输出信号输出给D触发器231的数据输入端;第二反相器233的输入端接收第一时钟频率CLK1,并通过输出端输出第二时钟频率CLK2。
本申请实施例提供的脉冲输出电路可以称为固定概率随机数发生器,如基于时间平均频率脉冲直接合成(Time-Average-Frequency Direct Period Synthesis,TAF-DPS)电路的固定概率随机数发生器。
多路基准脉冲中任意两路相邻的所述基准脉冲的相位差Δ可以调整,当Δ较大时,随机计算电路的功耗较低。当Δ较小时,随机计算电路的计算效率较高,性能较高。
进一步地,上述实施例中以随机计算电路包括一个脉冲输出电路02为例,可选地,本申请实施例提供的随机计算电路也可以包括多个脉冲输出电路02;此时,控制电路01用于向每个脉冲输出电路02输入脉冲输出电路02对应的控制参数。不同脉冲输出电路02对应的控制参数可以相同也可以不同,本申请实施例对此不作限定。
示例地,以多个脉冲输出电路包括:第一脉冲输出电路02A和第二脉冲输出电路02B为例。如图6所示,第一脉冲输出电路02A和第二脉冲输出电路02B均与控制电路01连接,以及均与计算电路03连接。控制电路01用于向这两个脉冲输出电路分别输入脉冲输出电路对应的控制参数,第一脉冲输出电路02A用于向计算电路03输入第一待计算脉冲,第二脉冲输出电路02B用于向计算电路03输入第二待计算脉冲。第一待计算脉冲的占空比表示第一待计算小数,第二待计算脉冲的占空比表示第二待计算小数。计算电路03可以对第一待计算小数和第二待计算小数进行逻辑计算,比如,图6中以该逻辑计算包括乘为例,此时,计算电路03为与逻辑门,与逻辑门在对第一待计算小数和第二待计算小数进行逻辑计算时,可以将第一待计算小数和第二待计算小数相乘。
可选地,在多个脉冲输出电路包括第一脉冲输出电路和第二脉冲输出电路时,第一脉冲输出电路输出的第一待计算脉冲,与第二脉冲输出电路输出的第二待计算脉冲不相关。比如,第一待计算脉冲与第二待计算脉冲相独立,在这两个脉冲相独立时,这两个脉冲不相关。
需要说明的是,在随机计算中,当多个待计算脉冲不相关时,计算电路基于该多个待计算脉冲的占空比执行逻辑计算,所输出的逻辑计算的计算结果较为准确。本申请实施例中以多个脉冲输出电路输出的多个待计算脉冲包括第一待计算脉冲和第二待计算脉冲为例,当该多个待计算脉冲还包括其他待计算脉冲时,该多个待计算脉冲也互不相关。
可选地,在第一待计算脉冲与第二待计算脉冲相独立时,第一待计算脉冲的目标参数与第二待计算脉冲的目标参数互为质数;其中,对于任一待计算脉冲,待计算脉冲的目标参数为q·I+p,p/q等于小数部分,I表示整数部分。
假设第一待计算脉冲为X,第二待计算脉冲为Y,那么,X的周期TX=(qX·IX+pX)Δ,Y的周期TY=(qY·IY+pY)Δ;假设(qX·IX+pX)Δ=IqpX·Δ,(qY·IY+pY)Δ=IqpY·Δ,IqpX表示X的目标参数,IqpY表示Y的目标参数。
当以Δ为时间分辨率时,X所表示的时间序列中元素的取值集合为:
当使用Y对X进行采样时,所得到的时间序列的空间如下所示:
ΩX|Y={IqpY.imodIqpX:i∈N};其中,mod表示取余计算,N表示自然数。
此时,P(X=a)·P(Y)=P(ωX∈ΩX)·P(Y);
P(ωX∈ΩX)·P(Y)=P(ωX∈ΩX|ωY∈ΩY)·P(Y)=P(X|Y)·P(Y);
由于P(X)·P(Y)=P(X∩Y),所以X和Y相独立。可以看出,在Iqpx和Iqpy互为质数时,X和Y相独立。因此,本申请实施例中,可以通过控制字的设计,使得Iqpx和Iqpy互为质数,以使X和Y相独立,以提升计算电路输出的逻辑计算的计算结果的准确度。
进一步地,如图7所示,本申请实施例提供的随机计算电路还包括:采样电路04和时钟电路05,计算电路03和时钟电路05均连接至采样电路04,如计算电路03连接至采样电路的D端,采样电路04还与控制电路01连接(图7中未示出该连接关系)。控制电路01还用于向采样电路04输入目标序列长度,时钟电路05用于向采样电路04提供时钟信号。采样电路04用于根据该时钟信号和该目标序列长度,对计算电路03输出的计算结果进行采样,得到目标序列长度的结果序列,并输出该结果序列的占空比的指示信号(如从Q端输出该指示信号)。示例地,该指示信号可以是该结果序列中的所有1(高电平)和/或所有0(低电平)。
图7以随机计算电路在图1的基础上还包括采样电路04和时钟电路05为例,当随机计算电路在图6的基础上还包括采样电路04和时钟电路05时,该随机计算电路可以如图8所示。
需要说明的是,在序列的长度越长时,序列表示的小数的精度越高。因此,计算电路03输出的计算结果的精度与计算电路03采样得到的结果序列的长度(目标序列长度)正相关。本申请实施例中,控制电路01可以通过向计算电路03输入目标序列长度,以控制计算电路03采样得到目标序列长度的结果序列,进而控制计算电路03输出的计算结果的精度。可见,本申请实施例提供的随机计算电路的计算精度(计算结果的精度)可任意调节,能够兼容多种计算精度。并且,该随机计算电路可以在有限的电路面积内实现任意计算精度,因此,随机计算电路的面积利用率较高,随机计算电路的成本较低。
随机计算电路的计算精度是指:计算差值与理论计算结果之比,该计算差值为随机计算电路输出的实际计算结果与理论计算结果的差值的绝对值。
随机计算是冯诺依曼提出的一种计算范式,随机计算最重要的特征是数字由可以由非常简单的电路处理的比特流表示,而数字本身被解释为概率,即这串比特流中每一个比特为1的概率。而根据伯努利大数定律,概率可以用频率来估计,即每一位比特为1的概率可以用这串比特流中的1的个数在比特流中的占比来表示。举个例子来说:1000可以表示1/4,1100可以表示1/2。本申请实施例中,脉冲输出电路用于输出的待计算脉冲(一串比特流)可以表示待计算小数,之后,计算电路根据待计算脉冲进行随机计算。该随机计算电路具有模拟(占空比)和数字(逻辑值)的双重特性。并且,该随机电路为数字电路,易于集成和移植,可降低研发成本。
另外,随机计算电路可以属于处理器,此时,随机计算电路在计算的过程中无需访问内存,因此,内存的带宽不会影响随机计算电路的计算效率。
综上所述,本申请实施例提供的随机计算电路中,脉冲输出电路能够输出待计算脉冲,并且计算电路能够根据待计算脉冲的占空比执行逻辑计算。在待计算脉冲中某一比特出错时,该待计算脉冲的占空比并不会发生较大的改变,进而逻辑计算的结果也不会发生较大的改变,因此,计算电路输出的计算结果的准确度较高。
下表1为如图8所示的随机计算电路的两个应用示例,其中,FX表示控制电路输入第一脉冲输出电路的控制字,FY表示控制电路输入第二脉冲输出电路的控制字。ζX表示控制电路输入第一脉冲输出电路的高电平参数,ζY表示控制电路输入第二脉冲输出电路的高电平参数。{I=2,p=17,q=64}X表示第一脉冲输出电路中的{I,p,q},{I=2,p=57,q=128}Y表示第二脉冲输出电路中的{I,p,q}。TTAFX表示第一脉冲输出电路输出的第一待计算脉冲的周期,TTAFY表示第二脉冲输出电路输出的第二待计算脉冲的周期。DFD-X表示第一脉冲输出电路输出的第一待计算脉冲的占空比(表示待计算小数),DFD-Y表示第二脉冲输出电路输出的第二待计算脉冲的占空比(表示待计算小数)。第一待计算脉冲与第二待计算脉冲的相关系数越趋于0,则这两个脉冲越不相关,从表1可以看出,这两个脉冲的相关系数均趋于0。例1的结果图如图9所示,例2的结果图如图10所示。这两个图中的横轴表示目标序列长度对应的Δ的个数。需要说明的是,目标序列长度具有对应的时长,采样电路在采样该时长后便可以得到目标序列长度的结果序列,该时长等于目标序列长度对应的Δ的个数与Δ的乘积。
表1
本申请实施例提供了一种随机计算方法,该方法可以用于本申请实施例提供的任一种随机计算电路。如图11所示,该方法包括:
步骤1001、利用控制电路向脉冲输入电路输入控制参数,控制参数包括:具有整数部分和小数部分的控制字;
步骤1002、利用脉冲输出电路根据控制参数和相位均匀间隔的多路基准脉冲,向计算电路输入待计算脉冲;其中,待计算脉冲包括在时域上排布的第一子脉冲和第二子脉冲,第一子脉冲和第二子脉冲的周期由整数部分控制,第一子脉冲和第二子脉冲在待计算脉冲中出现的概率由小数部分控制;
步骤1003、利用计算电路根据待计算脉冲的占空比执行逻辑计算,并输出逻辑计算的计算结果。
可选地,所述控制参数还包括:高电平参数ζ;THI_A=THI_B=ζ·Δ;
THI_A表示所述第一子脉冲的高电平持续时长;THI_B表示所述第二子脉冲的高电平持续时长;ζ为整数,且1≤ζ≤I-1,I表示所述整数部分;Δ表示所述多路基准脉冲中任意两路相邻的所述基准脉冲的相位差。
可选地,所述随机计算电路包括多个所述脉冲输出电路。步骤1001包括:利用所述控制电路向每个所述脉冲输出电路输入所述脉冲输出电路对应的控制参数。步骤1002包括:利用每个脉冲输出电路根据输入的控制参数和相位均匀间隔的多路基准脉冲,向计算电路输入待计算脉冲。
可选地,多个所述脉冲输出电路包括:用于向所述计算电路输入第一待计算脉冲的第一脉冲输出电路,以及用于向所述计算电路输入第二待计算脉冲的第二脉冲输出电路;所述第一待计算脉冲与所述第二待计算脉冲不相关。
可选地,所述第一待计算脉冲与所述第二待计算脉冲相独立。
可选地,所述第一待计算脉冲的目标参数与所述第二待计算脉冲的目标参数互为质数;
对于任一所述待计算脉冲,所述待计算脉冲的所述目标参数为q·I+p,p/q等于所述小数部分,I表示所述整数部分。
可选地,所述随机计算电路还包括:采样电路和时钟电路,所述计算电路和所述时钟电路均连接至所述采样电路,所述采样电路还与所述控制电路连接;
所述方法还包括:
利用所述控制电路向所述采样电路输入目标序列长度;
利用所述时钟电路向所述采样电路提供时钟信号;
利用所述采样电路根据所述时钟信号和所述目标序列长度,对所述计算电路输出的所述计算结果进行采样,得到所述目标序列长度的结果序列;
利用所述采样电路输出所述结果序列的占空比的指示信号。
可选地,所述待计算脉冲的时长TFD=(q-p)·TA+p·TB;
p/q等于所述小数部分;TA=I·Δ,TA表示所述第一子脉冲的周期,I表示所述整数部分,Δ表示所述多路基准脉冲中任意两路相邻的所述基准脉冲的相位差;TB=(I+1)·Δ,TB表示所述第二子脉冲的周期。
可选地,p/q为所述小数部分的最简约数。
可选地,所述整数部分大于16。
可选地,所述脉冲输出电路包括:第一处理电路、第二处理电路和输出电路,所述第一处理电路和所述输出电路均与所述第二处理电路连接;步骤1002包括:
利用所述第一处理电路根据所述控制参数分别输出第一控制信号和第二控制信号;
利用所述第二处理电路根据所述第一控制信号从所述多路基准脉冲中选出第I路基准脉冲,以及根据所述第二控制信号从所述多路基准脉冲中选出第J路基准脉冲,并从所述第I路基准脉冲和所述第J路基准脉冲中选择一路基准脉冲作为输出脉冲,1≤I,1≤J;
利用所述输出电路根据所述第二处理电路的输出脉冲输出所述待计算脉冲。
可选地,所述逻辑计算包括加、减、乘、除、开方、平方中的至少一种计算。
上述各个步骤的解释可以参考上述针对随机计算电路实施例中的相应记载,在方法侧实施例不再赘述。
本申请实施例还提供了一种芯片,该芯片包括本申请实施例提供的任一种随机计算电路。该芯片可以是CPU、GPU等芯片。
本申请实施例还提供了一种电子设备,该电子设备包括本申请实施例提供的任一种芯片。该电子设备可以是计算机。
在本公开中,术语“第一”、“第二”等仅用于描述目的,而不能理解为指示或暗示相对重要性。术语“多个”指两个或两个以上,除非另有明确的限定。
本申请中术语“和/或”,仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。另外,本文中字符“/”,一般表示前后关联对象是一种“或”的关系。
需要说明的是,本申请实施例提供的不同实施例能够相互参考,本申请实施例对此不做限定。本申请实施例提供的方法实施例步骤的先后顺序能够进行适当调整,步骤也能够根据情况进行相应增减,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到变化的方法,都应涵盖在本申请的保护范围之内,因此不再赘述。
以上所述仅为本申请的可选实施例,并不用以限制本申请,凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。
Claims (15)
1.一种随机计算电路,其特征在于,所述随机计算电路包括:控制电路、脉冲输出电路和计算电路;所述控制电路和所述计算电路均与所述脉冲输出电路连接;
所述控制电路用于向所述脉冲输入电路输入控制参数,所述控制参数包括:具有整数部分和小数部分的控制字;
所述脉冲输出电路用于根据所述控制参数和相位均匀间隔的多路基准脉冲,向所述计算电路输入待计算脉冲;其中,所述待计算脉冲包括在时域上排布的第一子脉冲和第二子脉冲中的至少一种子脉冲,所述第一子脉冲和所述第二子脉冲的周期由所述整数部分控制,所述第一子脉冲和所述第二子脉冲在所述待计算脉冲中出现的概率由所述小数部分控制;
所述计算电路用于根据所述待计算脉冲的占空比执行逻辑计算,并输出所述逻辑计算的计算结果。
2.根据权利要求1所述的随机计算电路,其特征在于,所述控制参数还包括:高电平参数ζ;THI_A=THI_B=ζ·Δ;
THI_A表示所述第一子脉冲的高电平持续时长;THI_B表示所述第二子脉冲的高电平持续时长;ζ为整数,且1≤ζ≤I-1,I表示所述整数部分;Δ表示所述多路基准脉冲中任意两路相邻的所述基准脉冲的相位差。
3.根据权利要求1或2所述的随机计算电路,其特征在于,所述随机计算电路包括多个所述脉冲输出电路;
所述控制电路用于向每个所述脉冲输出电路输入所述脉冲输出电路对应的控制参数。
4.根据权利要求3所述的随机计算电路,其特征在于,多个所述脉冲输出电路包括:用于向所述计算电路输入第一待计算脉冲的第一脉冲输出电路,以及用于向所述计算电路输入第二待计算脉冲的第二脉冲输出电路;
所述第一待计算脉冲与所述第二待计算脉冲不相关。
5.根据权利要求4所述的随机计算电路,其特征在于,所述第一待计算脉冲与所述第二待计算脉冲相独立。
6.根据权利要求5所述的随机计算电路,其特征在于,所述第一待计算脉冲的目标参数与所述第二待计算脉冲的目标参数互为质数;
对于任一所述待计算脉冲,所述待计算脉冲的所述目标参数为q·I+p,p/q等于所述小数部分,I表示所述整数部分。
7.根据权利要求1或2所述的随机计算电路,其特征在于,所述随机计算电路还包括:采样电路和时钟电路,所述计算电路和所述时钟电路均连接至所述采样电路,所述采样电路还与所述控制电路连接;
所述控制电路还用于向所述采样电路输入目标序列长度;
所述时钟电路用于向所述采样电路提供时钟信号;
所述采样电路用于根据所述时钟信号和所述目标序列长度,对所述计算电路输出的所述计算结果进行采样,得到所述目标序列长度的结果序列;
所述采样电路还用于输出所述结果序列的占空比的指示信号。
8.根据权利要求1或2所述的随机计算电路,其特征在于,所述待计算脉冲的时长TFD=(q-p)·TA+p·TB;
p/q等于所述小数部分;TA=I·Δ,TA表示所述第一子脉冲的周期,I表示所述整数部分,Δ表示所述多路基准脉冲中任意两路相邻的所述基准脉冲的相位差;TB=(I+1)·Δ,TB表示所述第二子脉冲的周期。
9.根据权利要求8所述的随机计算电路,其特征在于,p/q为所述小数部分的最简约数。
10.根据权利要求1或2所述的随机计算电路,其特征在于,所述整数部分大于16。
11.根据权利要求1或2所述的随机计算电路,其特征在于,所述脉冲输出电路包括:第一处理电路、第二处理电路和输出电路,所述第一处理电路和所述输出电路均与所述第二处理电路连接;
所述第一处理电路用于根据所述控制参数分别输出第一控制信号和第二控制信号;
所述第二处理电路用于根据所述第一控制信号从所述多路基准脉冲中选出第I路基准脉冲,以及根据所述第二控制信号从所述多路基准脉冲中选出第J路基准脉冲,并从所述第I路基准脉冲和所述第J路基准脉冲中选择一路基准脉冲作为输出脉冲,1≤I,1≤J;
所述输出电路用于根据所述第二处理电路的输出脉冲输出所述待计算脉冲。
12.根据权利要求1或2所述的随机计算电路,其特征在于,所述逻辑计算包括加、减、乘、除、开方、平方中的至少一种计算。
13.一种随机计算方法,其特征在于,所述方法用于权利要求1至12任一所述的随机计算电路,所述方法包括:
利用所述控制电路向所述脉冲输入电路输入控制参数,所述控制参数包括:具有整数部分和小数部分的控制字;
利用所述脉冲输出电路根据所述控制参数和相位均匀间隔的多路基准脉冲,向所述计算电路输入待计算脉冲;其中,所述待计算脉冲包括在时域上排布的第一子脉冲和第二子脉冲中的至少一种子脉冲,所述第一子脉冲和所述第二子脉冲的周期由所述整数部分控制,所述第一子脉冲和所述第二子脉冲在所述待计算脉冲中出现的概率由所述小数部分控制;
利用所述计算电路根据所述待计算脉冲的占空比执行逻辑计算,并输出所述逻辑计算的计算结果。
14.一种芯片,其特征在于,所述芯片包括权利要求1至12任一所述的随机计算电路。
15.一种电子设备,其特征在于,所述电子设备包括权利要求14所述的芯片。
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210033674.6A CN114281304A (zh) | 2022-01-12 | 2022-01-12 | 随机计算方法、电路、芯片及设备 |
PCT/CN2023/070263 WO2023134507A1 (zh) | 2022-01-12 | 2023-01-04 | 随机计算方法、电路、芯片及设备 |
US18/284,791 US20240184531A1 (en) | 2022-01-12 | 2023-01-04 | Stochastic computing method and circuit, chip and device |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210033674.6A CN114281304A (zh) | 2022-01-12 | 2022-01-12 | 随机计算方法、电路、芯片及设备 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114281304A true CN114281304A (zh) | 2022-04-05 |
Family
ID=80880992
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210033674.6A Pending CN114281304A (zh) | 2022-01-12 | 2022-01-12 | 随机计算方法、电路、芯片及设备 |
Country Status (3)
Country | Link |
---|---|
US (1) | US20240184531A1 (zh) |
CN (1) | CN114281304A (zh) |
WO (1) | WO2023134507A1 (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2023134507A1 (zh) * | 2022-01-12 | 2023-07-20 | 京东方科技集团股份有限公司 | 随机计算方法、电路、芯片及设备 |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102375722B (zh) * | 2010-08-09 | 2014-07-09 | 中国科学技术大学 | 一种真随机数生成方法及发生器 |
FR3038084B1 (fr) * | 2015-06-29 | 2017-12-29 | Centre National De La Recherche Scient (C N R S) | Microprocesseur parallele stochastique |
US10740686B2 (en) * | 2017-01-13 | 2020-08-11 | Regents Of The University Of Minnesota | Stochastic computation using pulse-width modulated signals |
CN114281304A (zh) * | 2022-01-12 | 2022-04-05 | 北京京东方技术开发有限公司 | 随机计算方法、电路、芯片及设备 |
-
2022
- 2022-01-12 CN CN202210033674.6A patent/CN114281304A/zh active Pending
-
2023
- 2023-01-04 US US18/284,791 patent/US20240184531A1/en active Pending
- 2023-01-04 WO PCT/CN2023/070263 patent/WO2023134507A1/zh active Application Filing
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2023134507A1 (zh) * | 2022-01-12 | 2023-07-20 | 京东方科技集团股份有限公司 | 随机计算方法、电路、芯片及设备 |
Also Published As
Publication number | Publication date |
---|---|
US20240184531A1 (en) | 2024-06-06 |
WO2023134507A1 (zh) | 2023-07-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Langlois et al. | Novel approach to the design of direct digital frequency synthesizers based on linear interpolation | |
US4115867A (en) | Special-purpose digital computer for computing statistical characteristics of random processes | |
JP2000349592A (ja) | デジタルマッチドフィルタ | |
WO2023134507A1 (zh) | 随机计算方法、电路、芯片及设备 | |
CN115425974B (zh) | 时域交织型模数转换器时间偏差的数字校准***及方法 | |
US11275563B2 (en) | Low-discrepancy deterministic bit-stream processing using Sobol sequences | |
CN110515584A (zh) | 浮点计算方法及*** | |
Schober et al. | High-accuracy multiply-accumulate (MAC) technique for unary stochastic computing | |
KR970012132A (ko) | 곱-합 계산 장치, 곱-합 계산 장치의 집적 회로 장치, 및 영상 데이타를 처리하기에 적절한 누적 가산기 | |
Deryabin et al. | High performance parallel computing in residue number system | |
EP2579469B1 (en) | Accumulating data values | |
CN102378960B (zh) | 半导体集成电路和指数计算方法 | |
JP2001222410A (ja) | 除算器 | |
Wang et al. | Low-complexity Winograd convolution architecture based on stochastic computing | |
CN115146769A (zh) | 一种基于范围可寻址查找表计算tanh函数的数字电路模块 | |
US5781462A (en) | Multiplier circuitry with improved storage and transfer of booth control coefficients | |
US5289398A (en) | Small-sized low power consumption multiplication processing device with a rounding recording circuit for performing high speed iterative multiplication | |
Muscedere et al. | On efficient techniques for difficult operations in one and two-digit DBNS index calculus | |
Johansson | Low power and low complexity shift-and-add based computations | |
CN116560618A (zh) | 随机计算电路及方法、芯片和电子设备 | |
Yu et al. | An efficient method for integer factorization | |
US5381380A (en) | Divide circuit having high-speed operating capability | |
RU2786204C1 (ru) | Цифровое сглаживающее устройство | |
Gupta et al. | HDL Implementation of five moduli residue number system | |
RU2785032C1 (ru) | Накапливающий сумматор для синтезаторов частот |
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 |