CN111913686B - 一种定点cpu的快速开平方计算的方法 - Google Patents
一种定点cpu的快速开平方计算的方法 Download PDFInfo
- Publication number
- CN111913686B CN111913686B CN202010471703.8A CN202010471703A CN111913686B CN 111913686 B CN111913686 B CN 111913686B CN 202010471703 A CN202010471703 A CN 202010471703A CN 111913686 B CN111913686 B CN 111913686B
- Authority
- CN
- China
- Prior art keywords
- value
- shift
- bit
- register
- bits
- 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.)
- Active
Links
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/38—Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation
- G06F7/48—Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation using non-contact-making devices, e.g. tube, solid state device; using unspecified devices
- G06F7/544—Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation using non-contact-making devices, e.g. tube, solid state device; using unspecified devices for evaluating functions by calculation
- G06F7/552—Powers or roots, e.g. Pythagorean sums
Landscapes
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Engineering & Computer Science (AREA)
- Computational Mathematics (AREA)
- Mathematical Analysis (AREA)
- Pure & Applied Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Computing Systems (AREA)
- Mathematical Optimization (AREA)
- General Engineering & Computer Science (AREA)
- Complex Calculations (AREA)
Abstract
本发明提供一种定点CPU的快速开平方计算的方法,其可以基于较小的CPU存储空间,提高运算性能,实现快速的开平方计算,在保持交底的成本的基础上满足实时性计算需求。本发明的技术方案中,首先将待开方的输入值分段为高N/2位、低N/2位,分段处理后使用数值比较代替移位运算与循环判断;对输入值分段处理后,将输入数值的N位,以4的倍数循环处理,直到无法被4整除,记录被4整除的次数,最终根据被4整除的次数以及处理后的新值计算开方值。
Description
技术领域
本发明电机控制技术领域,具体为一种定点 CPU的快速开平方计算的方法。
背景技术
在汽车等工业领域,经常使用定点处理器进行数字信号处理。根据不同的需求,技术人员将计算用算法写在处理器中,运行的时候CPU会调用相应算法完成计算任务。在实际生产工作中,实时嵌入式控制需求里经常会使用到开平方运算,例如:电机的的实时控制、电源质量分析实时控制等需求。现有的嵌入式应用大多基于C语言实现的编译环境,C语言标准库中提供了开平方运算的标准实现方法。但是,现有的标准C语言开平方运算的运算时间过长,无法满足计算的实时性的需求。为了解决这个问题,有的技术人员通过采用更高性能的CPU来实现实时性需求,但是这会导致产品的总成本提高。
发明内容
为了解决现有的C语言开平发运算方法无法满足定点CPU运算中的实时性要求的问题,本发明提供一种定点 CPU的快速开平方计算的方法,其可以基于较小的CPU存储空间,提高运算性能,实现快速的开平方计算,在保持交底的成本的基础上满足实时性计算需求。
本发明的技术方案是这样的:一种定点 CPU的快速开平方计算的方法,其特征在于,其包括以下步骤:
S1:在CPU的Flash空间内存储平方根表格,作为查询表格;
S2:获取CPU可以处理的最大位数,设置为最大处理单位N;
初始化一个N位的寄存器作为输入值寄存器;
设置一个移位指示器,记为shift_cnt;
S3:获取待开方计算的输入值;
将所述输入值放入所述输入值寄存器,判断所述输入值是否大于1;
如果所述输入值大于1,则执行步骤S4;
否则,直接返回输入值作为输出值;运算结束;
S4:预设一个分段阈值,比较所述输入值和所述分段阈值的大小;
如果所述输入值大于所述分段阈值,则初始化所述移位指示器的值shift_cnt为0;
否则,设置所述移位指示器的值shift_cnt= N/2,且将所述输入值在所述输入值寄存器中左移,左移位数为:N/2;
S5:获取所述输入值寄存器的N位值,记做输入值寄存器分段值;
S6:设置一个左移寄存器,将所述输入值寄存器分段值存入所述左移寄存器;
S7: 所述左移寄存器中的值存入中间值寄存器,记作:中间值;
S8:获取所述左移寄存器的前两位数值,记做:左移判断值;
S9:确认2位的所述左移判断值的每一位是否都为0;
如果两位的所述左移判断值的有一位的值不为0,则将所述中间值赋值给待开平方新值uXin_shift;
否则,如果两位的所述左移判断值的每一位都为0,将所述左移寄存器的值左移2位,并将移位后的新值存入所述中间值寄存器,所述移位指示器的值shift_cnt加2,循环执行步骤S8~S9;
S10:将所述待开平方新值uXin_shift向右移位3*N/4位,获得查表索引;在所述查询表格中取得所述查表索引的值对应的表格的值,记为:第一查询值;
将所述查表索引的值加1,获得第二查表索引的值;在所述查询表格中取得所述第二查表索引对应的表格的值,记为:第二查询值;
S11:根据CPU最大处理位数设置一个MASK值,将所述待开平方新值uXin_shift与MASK做逻辑与运算后,将获得的数值再向右移N/4位获得余数值;
S12:将所述第一查询值、所述第二查询值、所述余数值,进行插值运算,将插值运算的结果进行16位定点数四舍五入处理,将获得的记做:结果值uin_Temp;
S13:获得所述移位指示器的值shift_cnt;
将所述结果值uin_Temp向右移动shift_cnt/2位,即获得所述输入值开平方之后的结果:开平方结果值。
其进一步特征在于:
步骤S3中,所述输入值的数据类型包括:8位数值u8in、16位数值u16in、32位数值u32in;
步骤S12中,所述插值运算利过程基于CPU乘法器和位移运算完成;
步骤S12中,所述插值运算为直线插值运算,运算的公式为:
Y2=Y1+(Y2-Y1)/(X2-X1)*(X-X1)
式中:Y1为所述第一查询值,X1为所述查表索引,X2为所述第二查表索引,X-X1为所述余数值;
步骤S9中,基于32位CPU实现算法时,判断所述左移判断值的值是否都为0的方法:
将所述左移寄存器中的数值与二进制数1100 0000 0000 0000 0000 0000 00000000b做逻辑与运算;
步骤S11中, N为32时, MASK值为0000 0000 1111 1111 1111 1111 1111 1111b;N为16时, MASK值为0000 1111 1111 1111 b;N为8时,MASK值为0011 1111b;
步骤S1中,N为32时,所述查询表格的大小为可以放置256个16位数值的大小;N为16时,表格大小为16个8位数据,N为8位时,表格大小为4个8位数大小;
步骤S4中,基于32位CPU实现算法时所述分段阈值设置为65536;基于16位CPU实现算法时,所述分段阈值设置为256,基于8位CPU实现时分段阈值设置为16。
本发明提供的一种定点 CPU的快速开平方计算的方法,首先将待开方的输入值分段为高N/2位、低N/2位,分段处理后使用数值比较代替移位运算与循环判断,节省了CPU执行时间,提高了计算效率;对输入值分段处理后,将输入数值的N位,以4的倍数循环处理,直到无法被4整除,记录被4整除的次数,最终根据被4整除的次数以及处理后的新值计算开方值,本方法缩小了数值范围,进一步的提高了数值的处理精度;插值运算基于利用CPU乘法器和位移运算完成,提高了运算速度,进一步的确保而来计算的实时性;通过直线插值运算补充了在分段处理输入值时损失的精度,使本发明的技术方案的计算结果更为精确;建立查询表格时,32位CPU对应的查询表格只需要256个16位数据的大小即可,本发明的技术方案基于较小的查询表格即可实现32位数据的实时开方运算,不但大大节省了CPU的存储空间,降低了产品的成本,且加快了数据的读写速度,进一步提高了计算的实时性。
附图说明
图1为待开方数值与结果的关系曲线示意图。
具体实施方式
如图1所示,本发明一种定点 CPU的快速开平方计算的方法,其包括以下步骤。其中的实施例是基于瑞萨SH2A内核32位定点 CPU进行实现的,即N=32。
S1:基于以存储空间换执行速度的策略,预先在CPU的Flash空间内存储平方根表格,作为查询表格;
基于瑞萨SH2A内核定点 CPU实现技术方案时,查询表格中,每个数值的开平方值用定点形式存储;如:8的开平方值为2.82842712,2.82842712的定点表示为11585即:2.82842712*2^12;即,在查询表格中,8对应的数值即为:11585;
查询表格的大小为放置256个16位数值的大小;本发明技术方案中是将输入值分段处理,通过高16位求取查表索引,因此查表索引的数值范围被限制在0~65535范围内,开方后数值范围为0~256,因此表格大小为256个数据即可;
表格索引是一个从0逐渐增大的有序序列,最大值为255。
S2:获取CPU可以处理的最大位数,设置为最大处理单位N ;N=32时,初始化一个32位寄存器作为输入值寄存器;
设置一个移位指示器,记为shift_cnt。
S3:获取待开方计算的输入值;输入值的数据类型包括:8位数值u8in、16位数值u16in、32位数值u32in;
设输入值282作为实施例,来说明实际运算中的CPU的运行方法;
将输入值放入输入值寄存器,判断输入值是否大于1;
如果输入值大于1,则执行步骤S4;
否则,直接返回输入值作为输出值;运算结束;
实施例中输入值282大于1,则执行步骤S4。
S4:比较输入值和65536的大小;
如果输入值大于65536,则初始化移位指示器的值shift_cnt为0;
否则,设置移位指示器的值shift_cnt为16,且将输入值在输入值寄存器中左移16位;
数值282小于65536,因此移位指示器shift_cnt初始化为16。
S5:获取输入值寄存器的32位的值,记做输入值寄存器分段值;
实施例中,282被移到输入值寄存器的32位值如下:
(0000 0001 0001 1010 0000 0000 0000 0000b);
本发明技术方案中,将输入值分为两段,通过对高16位的数值进行运算,获取输入值在查询表格对应的查表索引;如果输入值大于65535,即位数大于16位,将shift_cnt值设置为0;输入值寄存器的低16位值在后面步骤中,部分左移入高16位后,仍然遗留在低16位寄存器的数值用来计算插值提高计算结果的精度。如果输入值位数低于16位,那么,将shift_cnt值设置为16;在步骤S4中,通过左移16位,将输入值全部左移到输入值寄存器的高16位,进行后续计算获得查索引,后续无需再对输入值寄存器的低16位值进行计算。通过这种分段式的计算方法,用数值比较与移位操作代替逻辑查表与循环判断,节省了CPU的执行时间,提高计算效率。
S6:设置一个左移寄存器,将输入值寄存器分段值存入左移寄存器。
S7: 将左移寄存器中存放的数值存入中间值寄存器,记做:中间值。
S8:获取左移寄存器的前两位数值,记做:左移判断值。
S9:确认2位的左移判断值的每一位是否都为0;
实际应用中,通过将左移寄存器中的数值与二进制数1100 0000 0000 0000 00000000 0000 0000b做逻辑与运算,判断左移判断值的值是否都为0;
如果两位的左移判断值的有一位的值不为0,则将中间值赋值给待开平方新值u32in_shift;
否则,如果两位的所述左移判断值的每一位都为0,将所述左移寄存器的值左移2位,并将移位后的新值存入所述中间值寄存器,所述位移指示器的值shift_cnt加2,循环执行步骤S8~S9;
通过分段判断的方式获得shift_cnt的初始值,最多可以一次移动16位,最后通过左移的方式,将放入32为寄存器的输入值的最高位两个连续的0清除。
实施例中,以2位为单位往左移动,输入值282需要移动3次,移位指示器shift_cnt= 16+6 = 22;
此时获得的待开平方新值u32in_shift为:
(0100 0110 1000 0000 0000 0000 0000 0000b)。
S10:将待开平方新值u32in_shift向右移位24位,获得查表索引;在查询表格中取得查表索引的值对应的表格的值,记为:第一查询值;
将查表索引的值加1,获得第二查表索引的值;在查询表格中取得第二查表索引对应的表格的值,记为:第二查询值;
将32位的待开平方新值u32in_shift右移24位,获得8位的查表索引;实际的实施例中,将待开平方新值u32in_shift放入32位寄存器中进行右移操作,每一次开方的索引取得都是取u32in_shift的高8位做为查表索引;第二查表索引为:查表索引+1;
例如:查表索引的值是70,在查询表格中索引70对应的数值是34270,即:sqrt(70)*2^12=34270;
则第二查表索引为71,在查询表格中索引71对应的数值是34514。
S11:将待开平方新值u32in_shift与数值000000001111 1111 1111 1111 11111111b做逻辑与运算后,将获得的数值再向右移8位获得余数值;
实施例中,右移8位后获得余数值为24位(1000 0000 0000 0000 0000 0000b),即,余数值为:8388608。
S12:将第一查询值、第二查询值、余数值,进行插值运算,将插值运算的结果进行16位定点数四舍五入处理,将获得的记做:结果值u32in_Temp;
插值运算为直线插值运算,利用CPU乘法器和位移运算完成;
插值运算为直线插值运算,运算的公式为:
Y2=Y1+(Y2-Y1)/(X2-X1)*(X-X1)
式中:Y1为第一查询值,Y2为第二查询值,X1为查表索引,X2为第二查表索引;
在实际的算法实现中, Y1的值为第一查询值,Y2-Y1的值就是两次查表值的差;X2-X1=1,所以除法不需要计算;而X-X1的值为u32in_shift将高8位清零后余下的24位数值(余数值),由于余数值是24位值,和Y2-Y1差值做一次乘法后,还是24位结果,因为表格是8位的,24位右移16为才会得到8位数值,所以24位数值需要右移16位才能得到正确插值;在这里右移16位相当于除法,处理四舍五入需要将这个数值加上32768再移位;
实施例中的插值计算:
34270 + (( 34514 - 34270 )*8388608 +32768 )>>24 ,计算后得到结果值u32in_Temp:
u32in_Temp = 34392;
因为开方结果与待开方值的关系为二次曲线关系,近似处理为直线(参照说明书附图的图1,图1的X轴为待开方值,Y轴为开方结果);所以,通过直线插值运算,利用待开方新值u32in_shift的低24位值来补充在前面分段处理时损失的计算精度;利用CPU乘法器和移位运算来实现进行直线插值运算,提高执行速度,进一步的确保了技术方案的实时性。
S13:获得移位指示器的值shift_cnt;
实施例中,shift_cnt =22;
将结果值u32in_Temp向右移动shift_cnt/2位,即获得输入值开平方之后的结果:开平方结果值;
将结果值34392,向右移动11位,获得开平方结果值:16.79296875;
而通过计算器可得282近似的开方结果为:16.79285562,数值精度可按实际需求进行取舍,例如要保持最高精度,可以直接取定点数34392作为开方结果,也可以向右移动11为,保存数值16作为开方结果;可知通过本发明计算方案可以获得准确的结果。由于SH2A内核具有32位乘法器,在2个时钟周期即可执行一次乘法运算,其他的计算基本上都为逻辑运算,因此开平方运算可以在有限周期内完成,满足实时性要求。
因为0~255数值开方只占用8位,因此对于一个32位数据,只取高8位即可,余下24位,经过开方后为12位结果,因此查询表格只需要256个16位数据即可,查表后的值即为结果;本发明技术方案基于基于以存储空间换执行速度的策略,输入的待开方的数值进行分段处理,实现了以较小查询表格即可实现32位数据的实时开方运算,不但大大节省了存储空间,且加快了数据的读写速度,本发明的技术方案使用性能较低的CPU就可以实时计算32位的数据的开方运算,极大的降低了产品的成本。
虽然实施例中以32位数值开方为例进行说明,但本发明技术方案不限于利用此算法在16位单片机8位单片机实现类似的实现;使用16位、8位单片机时,数值为16位宽度和8位宽度;且本专利的技术方案的不限于通用单片机或DSP实现,也包括在硬件上以Verlog硬件实现语言进行实现。
Claims (8)
1.一种定点 CPU的快速开平方计算的方法,其特征在于,其包括以下步骤:
S1:在CPU的Flash空间内存储平方根表格,作为查询表格;
S2:获取CPU可以处理的最大位数,设置为最大处理单位N;
初始化一个N位的寄存器作为输入值寄存器;
设置一个移位指示器,记为shift_cnt;
S3:获取待开方计算的输入值;
将所述输入值放入所述输入值寄存器,判断所述输入值是否大于1;
如果所述输入值大于1,则执行步骤S4;
否则,直接返回输入值作为输出值;运算结束;
S4:预设一个分段阈值,比较所述输入值和所述分段阈值的大小;
如果所述输入值大于所述分段阈值,则初始化所述移位指示器的值shift_cnt为0;
否则,设置所述移位指示器的值shift_cnt= N/2,且将所述输入值在所述输入值寄存器中左移,左移位数为:N/2;
S5:获取所述输入值寄存器的N位值,记做输入值寄存器分段值;
S6:设置一个左移寄存器,将所述输入值寄存器分段值存入所述左移寄存器;
S7: 所述左移寄存器中的值存入中间值寄存器,记作:中间值;
S8:获取所述左移寄存器的前两位数值,记做:左移判断值;
S9:确认2位的所述左移判断值的每一位是否都为0;
如果两位的所述左移判断值的有一位的值不为0,则将所述中间值赋值给待开平方新值uXin_shift;
否则,如果两位的所述左移判断值的每一位都为0,将所述左移寄存器的值左移2位,并将移位后的新值存入所述中间值寄存器,所述移位指示器的值shift_cnt加2,循环执行步骤S8~S9;
S10:将所述待开平方新值uXin_shift向右移位3*N/4位,获得查表索引;在所述查询表格中取得所述查表索引的值对应的表格的值,记为:第一查询值;
将所述查表索引的值加1,获得第二查表索引的值;在所述查询表格中取得所述第二查表索引对应的表格的值,记为:第二查询值;
S11:根据CPU最大处理位数设置一个MASK值,将所述待开平方新值uXin_shift与MASK做逻辑与运算后,将获得的数值再向右移N/4位获得余数值;
S12:将所述第一查询值、所述第二查询值、所述余数值,进行插值运算,将插值运算的结果进行16位定点数四舍五入处理,将获得的记做:结果值uin_Temp;
S13:获得所述移位指示器的值shift_cnt;
将所述结果值uin_Temp向右移动shift_cnt/2位,即获得所述输入值开平方之后的结果:开平方结果值。
2.根据权利要求1所述一种定点 CPU的快速开平方计算的方法,其特征在于:步骤S3中,所述输入值的数据类型包括:8位数值u8in、16位数值u16in、32位数值u32in。
3.根据权利要求1所述一种定点 CPU的快速开平方计算的方法,其特征在于:步骤S12中,所述插值运算利过程基于CPU乘法器和位移运算完成。
4.根据权利要求1所述一种定点 CPU的快速开平方计算的方法,其特征在于:步骤S12中,所述插值运算为直线插值运算,运算的公式为:
Y2=Y1+(Y2-Y1)/(X2-X1)*(X-X1)
式中:Y1为所述第一查询值,X1为所述查表索引,X2为所述第二查表索引,X-X1为所述余数值。
5.根据权利要求1所述一种定点 CPU的快速开平方计算的方法,其特征在于:步骤S9中,基于32位CPU实现算法时,判断所述左移判断值的值是否都为0的方法:
将所述左移寄存器中的数值与二进制数1100 0000 0000 0000 0000 0000 00000000b做逻辑与运算。
6.根据权利要求1所述一种定点 CPU的快速开平方计算的方法,其特征在于:步骤S11中, N为32时, MASK值为0000 0000 1111 1111 1111 1111 1111 1111b;N为16时, MASK值为0000 1111 1111 1111 b;N为8时,MASK值为0011 1111b。
7.根据权利要求1所述一种定点 CPU的快速开平方计算的方法,其特征在于:步骤S1中,N为32时,所述查询表格的大小为可以放置256个16位数值的大小;N为16时,表格大小为16个8位数据,N为8位时,表格大小为4个8位数大小。
8.根据权利要求1所述一种定点 CPU的快速开平方计算的方法,其特征在于:步骤S4中,基于32位CPU实现算法时所述分段阈值设置为65536;基于16位CPU实现算法时,所述分段阈值设置为256,基于8位CPU实现时分段阈值设置为16。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010471703.8A CN111913686B (zh) | 2020-05-29 | 2020-05-29 | 一种定点cpu的快速开平方计算的方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010471703.8A CN111913686B (zh) | 2020-05-29 | 2020-05-29 | 一种定点cpu的快速开平方计算的方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111913686A CN111913686A (zh) | 2020-11-10 |
CN111913686B true CN111913686B (zh) | 2021-12-07 |
Family
ID=73238047
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010471703.8A Active CN111913686B (zh) | 2020-05-29 | 2020-05-29 | 一种定点cpu的快速开平方计算的方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111913686B (zh) |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1178588A (zh) * | 1995-03-10 | 1998-04-08 | 摩托罗拉公司 | 使用移位装置的求幂电路及其使用方法 |
CN101326486A (zh) * | 2005-12-02 | 2008-12-17 | 富士通株式会社 | 进行浮点数的除法运算或平方根运算的运算装置和运算方法 |
US8346831B1 (en) * | 2006-07-25 | 2013-01-01 | Vivante Corporation | Systems and methods for computing mathematical functions |
CN107003839A (zh) * | 2014-12-22 | 2017-08-01 | 英特尔公司 | 用于移位和乘法器的指令和逻辑 |
CN107977587A (zh) * | 2017-11-27 | 2018-05-01 | 中国航空无线电电子研究所 | 一种平方根功能实现方法 |
CN108319447A (zh) * | 2018-01-22 | 2018-07-24 | 成都锐成芯微科技股份有限公司 | 便于硬件实现的开平方算法 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7403966B2 (en) * | 2003-12-08 | 2008-07-22 | Freescale Semiconductor, Inc. | Hardware for performing an arithmetic function |
-
2020
- 2020-05-29 CN CN202010471703.8A patent/CN111913686B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1178588A (zh) * | 1995-03-10 | 1998-04-08 | 摩托罗拉公司 | 使用移位装置的求幂电路及其使用方法 |
CN101326486A (zh) * | 2005-12-02 | 2008-12-17 | 富士通株式会社 | 进行浮点数的除法运算或平方根运算的运算装置和运算方法 |
US8346831B1 (en) * | 2006-07-25 | 2013-01-01 | Vivante Corporation | Systems and methods for computing mathematical functions |
CN107003839A (zh) * | 2014-12-22 | 2017-08-01 | 英特尔公司 | 用于移位和乘法器的指令和逻辑 |
CN107977587A (zh) * | 2017-11-27 | 2018-05-01 | 中国航空无线电电子研究所 | 一种平方根功能实现方法 |
CN108319447A (zh) * | 2018-01-22 | 2018-07-24 | 成都锐成芯微科技股份有限公司 | 便于硬件实现的开平方算法 |
Non-Patent Citations (2)
Title |
---|
插值开平方的优化及实现;陈锡华,陈磊;《西昌学院学报·自然科学版》;20121220;第26卷(第4期);全文 * |
电量变送器中一种快速高精度的开平方算法;磨少清等;《继电器》;20021215;第30卷(第12期);全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN111913686A (zh) | 2020-11-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107273090B (zh) | 面向神经网络处理器的近似浮点乘法器及浮点数乘法 | |
US10574260B2 (en) | Techniques for floating-point number conversion | |
CN111581593B (zh) | 可配置重用的分段式查找表激活函数实现装置 | |
CN107305485B (zh) | 一种用于执行多个浮点数相加的装置及方法 | |
CN107305484B (zh) | 一种非线性函数运算装置及方法 | |
JPH05241794A (ja) | 超越関数近似装置及びその方法 | |
JPH01125626A (ja) | 逆数計算方法 | |
JP5307202B2 (ja) | 精度制御反復算術論理演算ユニット | |
JP2012507796A (ja) | 範囲検出を行うための命令及びロジック | |
CN111813371B (zh) | 数字信号处理的浮点除法运算方法、***及可读介质 | |
CN113296732B (zh) | 数据处理方法和装置,处理器及数据搜索方法和装置 | |
CN116028013B (zh) | 一种fpga除法运算的优化方法、装置、除法器和介质 | |
JP3736741B2 (ja) | データ演算処理装置 | |
US7143126B2 (en) | Method and apparatus for implementing power of two floating point estimation | |
CN112651497A (zh) | 一种基于硬件芯片的激活函数处理方法、装置及集成电路 | |
US6182100B1 (en) | Method and system for performing a logarithmic estimation within a data processing system | |
CN111913686B (zh) | 一种定点cpu的快速开平方计算的方法 | |
CN117406957B (zh) | 一种模乘方法、模乘组件和半定制电路 | |
CN112836170B (zh) | 一种数据坐标转换方法及装置 | |
CN115483934A (zh) | 用于多方安全计算的数据转换方法和装置 | |
CN109992242B (zh) | 基于乘法器的运算方法及装置 | |
US20150178047A1 (en) | Method of fast arctangent calculation pre and post processing | |
CN104572018A (zh) | 一种用于浮点常数生成的装置及方法 | |
JP3613466B2 (ja) | データ演算処理装置及びデータ演算処理プログラム | |
JP4868408B2 (ja) | 演算装置、逆数の近似計算プログラムおよび近似計算方法 |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |