CN115146769A - 一种基于范围可寻址查找表计算tanh函数的数字电路模块 - Google Patents

一种基于范围可寻址查找表计算tanh函数的数字电路模块 Download PDF

Info

Publication number
CN115146769A
CN115146769A CN202210858801.6A CN202210858801A CN115146769A CN 115146769 A CN115146769 A CN 115146769A CN 202210858801 A CN202210858801 A CN 202210858801A CN 115146769 A CN115146769 A CN 115146769A
Authority
CN
China
Prior art keywords
module
data
output
bit
address
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
Application number
CN202210858801.6A
Other languages
English (en)
Inventor
黄科杰
白宇单
张亦舒
孙志锋
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hangzhou Yida Software Technology Co ltd
Original Assignee
Hangzhou Yida Software Technology Co ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Hangzhou Yida Software Technology Co ltd filed Critical Hangzhou Yida Software Technology Co ltd
Priority to CN202210858801.6A priority Critical patent/CN115146769A/zh
Publication of CN115146769A publication Critical patent/CN115146769A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/06Physical realisation, i.e. hardware implementation of neural networks, neurons or parts of neurons
    • G06N3/063Physical realisation, i.e. hardware implementation of neural networks, neurons or parts of neurons using electronic means

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Health & Medical Sciences (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Biomedical Technology (AREA)
  • Biophysics (AREA)
  • Theoretical Computer Science (AREA)
  • Evolutionary Computation (AREA)
  • Computational Linguistics (AREA)
  • Data Mining & Analysis (AREA)
  • Artificial Intelligence (AREA)
  • General Health & Medical Sciences (AREA)
  • Molecular Biology (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • Neurology (AREA)
  • Complex Calculations (AREA)

Abstract

本发明公开了一种基于范围可寻址查找表计算tanh函数的数字电路模块,包括:输入模块、地址映射模块、存储器模块、选择输出模块、控制逻辑。在控制逻辑的控制下,电路经过3个时钟周期来生成地址,查找函数值,以此来计算tanh函数。本发明包括给定最大绝对值误差下的输入数据和输出数据的位宽选择方法,以及存储器存储值的选择方法,可以实现不同精度的电路模块。本发明电路结构简单可靠,计算速度快,功耗少,相比于普通查找表方法使用存储空间少,易拓展,便于在芯片上实现。

Description

一种基于范围可寻址查找表计算tanh函数的数字电路模块
技术领域
本发明涉及神经网络和数字电路设计领域,尤其是涉及非线性激活函数的电路实现,具体涉及一种基于范围可寻址查找表计算tanh函数的数字电路模块。
背景技术
如今,人工神经网络已经被应用在许多领域,如图像和语音识别、自然语言处理等。在人工神经网络种,激活函数被用于每个神经元,用来给神经网络引入非线性,从而提高神经网络对模型的表达能力。神经网络在计算时,首先会将输入的数据进行卷积等线性运算,再将结果作为激活函数的输入量。如今新兴的网络演变趋向于使用较少的线性计算操作,并且对于线性计算进行了很多的优化,结果神经网络的性能瓶颈逐渐转移到复杂的激活函数上来。
目前主流的人工神经网络中,tanh函数是常见的非线性激活函数,由于其需要复杂的指数运算和除法运算,用软件去计算将会消耗很多的时间,限制神经网络的性能,因此我们希望去设计专用的硬件模块来计算非线性激活函数。
关于非线性激活函数的近似方法主要有查找表、分段线性近似、分段非线性近似、混合方法等。其中查找表方法思路简单,计算速度快,是比较常采用的方法。但是查找表方法需要很多的存储单元去存储函数值,随着精度的提高,存储单元的数量会急剧上升。
发明内容
为了缓解查找表方法对于存储单元需求量大的不足,充分利用tanh函数自身的特点(包括tanh接近零点处函数值接近自变量x,无穷远处函数值趋向于1和-1,以及tanh本身是奇函数),对一定的精度要求选择最合适的数据位宽和查找表的存储内容,本发明采用如下的技术方案:
本发明提供了一种基于范围可寻址查找表计算tanh函数的数字电路模块,包括:输入模块、地址映射模块、暂存寄存器模块、存储器模块、选择输出模块、控制逻辑单元;
所述输入模块,接受外部的输入数据data作为tanh函数的自变量,并将输入数据data分解为符号位sign和无符号数unsigned,作为输入模块的输出;输入数据的格式规定如下:采用n位定点数的格式,其数据格式是{S,I,F},其中S为1位符号位,表示数据的正负,I为n0位整数位,F为n1小数位,n=1+n0+n1;数据的输入范围为(-2n0,2n0),n为数据位宽,n0为整数位宽,n1为小数位宽;
所述地址映射模块,接受输入模块给出的无符号数unsigned,以及外部输入的overflow位,处理产生对应函数值在存储器模块中的地址addr2,并生成读使能信号ren;其中外部输入的overflow位表示输入数据的范围,若overflow=1,表示输入不在(-2n0,2n0)之间;
所述暂存寄存器模块,接受输入模块输出的无符号数unsigned并存储起来;
所述存储器模块,有读出和写入两种模式;当外部给出的写使能信号wen为1时,存储器模块将外部的输入数据data作为数据存储起来,存储地址为外部输入的地址addr1;当地址映射模块生成的读使能信号ren为1时,存储器模块将地址addr2处所存储的数据作为输出;存储器模块的存储单元的数据格式是无符号定点数,并且只有小数位,位宽为n2-1;其中1表示符号位,符号位不需要存储;
所述选择输出模块,根据控制逻辑单元给出的控制信号、选择暂存寄存器模块或存储器模块的输出数据的其中一个,经过去除整数位、末尾补零的操作以及添加符号位sign的操作后,作为输出output;所述选择输出模块的选择逻辑为,当输入数据data的无符号数unsigned小于预先给定的分界值x_start,且overflow位为0时,直接将unsigned经过去除整数位、末尾补零和添加符号位sign的操作后,作为输出output,其中小数部分末尾补零直到整个数据位宽与输出output规定的位宽n2相等;否则,输入数据的函数值会在存储器模块中查找,再经过添加符号位sign的操作后,作为输出output;输出数据output为有符号定点数,位宽为n2,数据格式为{S,F},其中S为1位符号位,F为定点数的小数位,没有整数位;预先给定的分界值x_start的格式为{I,F},位宽为n-1,不包含符号位;
所述控制逻辑单元,协调各模块的执行,在其控制下整个计算过程在3个时钟周期内被完成,并输出计算完成信号fin;当外部输入的复位信号rst为1时,整个数字电路模块被复位;第1个时钟周期内,输入数据经过输入模块和地址映射模块,得到ren信号和地址addr,以及需要被暂存的数据unsigned;第2个时钟周期内,暂存寄存器模块和存储器模块的输出值将会根据控制逻辑单元给出的信号被选择;第3个时钟周期内,被选择的数据经过输出寄存器被输出,同时计算完成信号fin变为1,表示计算已经完成。
根据本发明的优选方案,所述输入数据data的数据位宽n,整数位宽n0和小数位宽n1,输出数据output的数据位宽n2,选择输出模块的分界值x_start由以下方法确定:
首先确定计算tanh函数的最大绝对值误差e;
然后确定n2,选取的n2满足1/2n2≤e/10;
接着确定n1,要满足1/2n1≤e且1/2n1≤2(e-1/2n2);
接着确定n0,要满足1-tanh(2n0)≤2(e-1/2n2),n0选择满足条件的最小值;
接着确定n,要满足n=1+n0+n1;
最后确定x_start,其为方程x-tanh(x)=e的解。
根据本发明的优选方案,选择输出模块的分界值x_start取其定点数格式下能表示的最接近方程x-tanh(x)=e的解的值。
根据本发明的优选方案,地址映射模块的映射法则由以下方法确定:
把区间[x_start,2n0)分成N个分区,各个分区首尾连接、互不重叠地覆盖整个区间。已经确定x_start后,x_start为第1个分区的开始点,也记为x0,第1个分区的截止点为x1,也为第2个分区的开始点,以此类推,用变量k表示一个分区的标号,k取1、2、3、……、N;x0和后面第k个分区的截止点xk为n-1位的无符号定点数,小数位宽为n1,整数位宽为n0,选取xk为最大的该格式下能满足tanh(xk)-tanh(xk-1)≤2(e-1/2n2)的数,即从x0开始,将x0从最小一位加1得到该格式下能表示的x0的下一位数x,然后检验该数x是否满足tanh(xk)-tanh(xk-1)≤2(e-1/2n2),直到不满足为止,把最后一个满足上述不等式的数x作为x1,其余的xk也按照此规则确定;按照这种规则直到确定到第K个分区,使得xK≥2n0,这时已经把区间[x_start,2n0)范围内全部分区,最后一个分区的截止点xK取2n0,分区总数N=K。
根据本发明的优选方案,地址映射模块的映射法则为:当overflow=0时,若输入的无符号数处于第k个分区,就输出二进制形式的k-1作为地址addr2;当overflow=1时,就输出二进制形式的N作为地址addr2。
根据本发明的优选方案,所述存储器模块的存储数据值为:在地址k-1处,存储能用存储数据格式表示的最接近(tanh(xk)-tanh(xk-1))/2的数,其中存储数据格式就是小数位宽为n2-1、没有整数位的无符号定点数;在地址N处,存储能用该数据格式表示的最接近(1-tanh(2n0))/2的数。
根据本发明的优选方案,该模块在执行计算操作之前,需要先按照上述的存储数据值在存储器模块中存放相应的数据。
根据本发明的优选方案,地址addr是由控制逻辑单元从地址addr1和地址addr2两个信号中选择出来的,选择上述两个数据的逻辑为:当外部给出的写使能信号wen为1时,选择地址addr1作为地址addr;当写使能信号wen为0时,选择地址addr2作为地址addr。
本发明的优势在于提出了利用范围可寻址查找表计算tanh函数的具体电路模块设计方法,在设计给定的最大绝对值误差e内,将多个输入数据映射到同一个存储单元,减少了存储单元的使用,同时提出了一种优化的分区方法,能够选择较优的数据映射方案,进一步的减少存储单元的使用;此外还提出了输入数据和输出数据的位宽选择方法,能尽可能的减少单个存储单元的长度,从而减少存储器的使用面积;并且还利用了tanh函数的性质,将小于x_start的输入直接作为输出,负数的输入转化为正数后再进行计算,也减少了存储器的面积。本发明相对于普通查找表方法,减少了存储器资源的使用,并且结构简单,没有类似乘法器的复杂单元,计算速度快,功耗低,占用面积小,可拓展,能够符合目前神经网络边缘计算的应用场景。
附图说明
图1是本发明模块的结构框图。
图2是本发明模块的输入数据格式图。
图3是本发明模块的电路时序图。
图4是本发明模块的功能仿真波形图。
具体实施方式
下面结合附图和具体实施方式对本发明作进一步详细的说明。
本实施例计算tanh的最大绝对值误差e=0.02,采用如下技术方案:
一种基于范围可寻址查找表计算tanh函数的数字电路模块,包括:输入模块、地址映射模块、存储器模块、暂存寄存器模块、选择输出模块、控制逻辑单元;其结构框图如图1所示。
所述输入模块,接受外部的输入data作为tanh函数的自变量,并将输入数据分解为符号位sign和无符号数unsigned,作为模块的输出。输入数据采用8位定点数的格式,包括1位符号位,1位整数和6位小数。数据的输入范围为(-2,2),数据格式如图2所示。
所述地址映射模块,接受输入模块给出的无符号数unsigned,以及外部神经网络的输入overflow位,处理产生对应函数值在存储器模块中的地址addr2,并生成读使能信号ren,addr2位宽为5。其中外部神经网络的输入overflow位表示输入数据的范围,若overflow=1,表示输入不在(-2,2)之间。
所述暂存寄存器模块,接受输入模块输出的无符号数unsigned并存储起来。
所述存储器模块,有读出和写入两种模式。当外部给出的写使能信号wen为1时,存储器模块将外部的输入data作为数据存储起来,存储地址为外部输入的数据addr1;当地址映射模块生成的读使能信号ren为1时,存储器模块将地址addr2处所存储的数据作为输出。存储器模块的存储单元的数据格式是无符号定点数,并且只有小数位,位宽为8。
所述选择输出模块,包含MUX和输出寄存器两个部分,其会根据控制逻辑给出的控制信号,选择暂存寄存器或存储器模块的输出数据的其中一个,经过添加符号位sign的操作后,作为输出output,其中暂存寄存器存储输入数据的无符号部分unsigned,output为9位有符号定点数,包括1位符号位和8位小数位,没有整数位。上述选择输出模块的选择逻辑为,当输入的数据data的无符号数unsigned小于预先给定的数据x_start=0.40625(转化为定点数格式即为7’h1a),且overflow=0时,说明数据足够小,直接将unsigned经过去除整数位,并在小数位末尾添加两位0以及在最高位添加符号位sign的操作后,作为输出output;否则,输入数据的函数值会在存储器模块中查找,再经过补充数据位和添加符号位sign的操作后,作为输出output。
所述控制逻辑单元,协调各模块的执行,在其控制下整个计算过程在3个时钟周期内被完成,如图3所示,并输出计算完成信号fin。当外部输入的复位信号rst为1时,整个数字电路模块被复位;第1个时钟周期内,输入数据经过输入模块和地址映射模块,得到ren信号和地址addr,以及被需要被暂存的数据unsigned,地址addr是由控制逻辑单元从地址addr1和地址addr2两个信号中选择出来的,选择上述两个数据的逻辑为:当外部给出的写使能信号wen为1时,选择地址addr1作为地址addr;当写使能信号wen为0时,选择地址addr2作为地址addr;第2个时钟周期内,暂存寄存器模块和存储器模块的输出值将会根据控制逻辑给出的信号被选择;第3个时钟周期内,被选择的数据经过输出寄存器被输出,同时计算完成信号fin变为1,表示计算已经完成。
当输入在以下区间范围内时,上述地址映射模块的具体映射法则和对应地址下存储器模块的存储数据如下所述,其中地址和存储器模块的存储值还写出了二进制格式的数据:
区间[0.40625,0.4375),输出addr2=5’b00000,存储器模块存储0.3984375(8’h66);
区间[0.4375,0.46875),输出addr2=5’b00001,存储器模块存储0.42578125(8’h6d);
区间[0.46875,0.5),输出addr2=5’b00010,存储器模块存储0.44921875(8’h73);
区间[0.5,0.546875),输出addr2=5’b00011,存储器模块存储0.48046875(8’h7b);
区间[0.546875,0.59375),输出addr2=5’b00100,存储器模块存储0.515625(8’h84);
区间[0.59375,0.640625),输出addr2=5’b00101,存储器模块存储0.55078125(8’h8d);
区间[0.640625,0.6875),输出addr2=5’b00110,存储器模块存储0.58203125(8’h95);
区间[0.6875,0.734375),输出addr2=5’b00111,存储器模块存储0.609375(8’h9c);
区间[0.734375,0.78125),输出addr2=5’b01000,存储器模块存储0.640625(8’ha4);
区间[0.78125,0.84375),输出addr2=5’b01001,存储器模块存储0.671875(8’hac);
区间[0.84375,0.90625),输出addr2=5’b01010,存储器模块存储0.703125(8’hb4);
区间[0.90625,0.984375),输出addr2=5’b01011,存储器模块存储0.73828125(8’hbd);
区间[0.984375,1.0625),输出addr2=5’b01100,存储器模块存储0.76953125(8’hc5);
区间[1.0625,1.15625),输出addr2=5’b01101,存储器模块存储0.8046875(8’hce);
区间[1.15625,1.265625),输出addr2=5’b01110,存储器模块存储0.8359375(8’hd6);
区间[1.265625,1.40625),输出addr2=5’b01111,存储器模块存储0.87109375(8’hdf);
区间[1.40625,1.59375),输出addr2=5’b10000,存储器模块存储0.90234375(8’he7);
区间[1.59375,1.90625),输出addr2=5’b10001,存储器模块存储0.9375(8’hf0);
区间[1.90625,2.0),输出addr2=5’b10010,存储器模块存储0.9609375(8’hf6);
当overflow为1时,输出addr2=5’b10011,存储器模块存储0.98046875(8’hfb)。
本发明在进行计算之前,需要通过相应接口将上述数值存储到相应存储单元内部。
以上实施例在vivado上实现了设计,并通过了功能仿真和实际的FPGA上板验证,测试发现,电路的实际功能与预期相符,输出与理论值吻合。在此实施例中e=0.02,一共使用了20个存储单元,每个单元的数据位宽为8位,而使用普通查找表方法,需要使用64个存储单元,每个单元数据位宽为8位,本实施例存储器使用量相比普通查找表方法减少了68.8%;而在e=0.002的另一个测试结果中,一共使用了296个存储单元,每个单元的数据位宽为11位,而普通查找表方法需要使用512个存储单元,每个单元数据位宽为11位,存储器使用量相比普通查找表方法减少了42.2%。图4为此实施例的功能仿真波形,从图中可以看到计算三个时钟周期内完成。
以上实施例仅用以说明本发明的技术方案,而非对其限制,本发明的保护范围并不限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。

Claims (8)

1.一种基于范围可寻址查找表计算tanh函数的数字电路模块,其特征在于,包括:输入模块、地址映射模块、暂存寄存器模块、存储器模块、选择输出模块、控制逻辑单元;
所述输入模块,接受外部的输入数据data作为tanh函数的自变量,并将输入数据data分解为符号位sign和无符号数unsigned,作为输入模块的输出;输入数据的格式规定如下:采用n位定点数的格式,其数据格式是{S,I,F},其中S为1位符号位,表示数据的正负,I为n0位整数位,F为n1小数位,n=1+n0+n1;数据的输入范围为(-2n0,2n0),n为数据位宽,n0为整数位宽,n1为小数位宽;
所述地址映射模块,接受输入模块给出的无符号数unsigned,以及外部输入的overflow位,处理产生对应函数值在存储器模块中的地址addr2,并生成读使能信号ren;其中外部输入的overflow位表示输入数据的范围,若overflow=1,表示输入不在(-2n0,2n0)之间;
所述暂存寄存器模块,接受输入模块输出的无符号数unsigned并存储起来;
所述存储器模块,有读出和写入两种模式;当外部给出的写使能信号wen为1时,存储器模块将外部的输入数据data作为数据存储起来,存储地址为外部输入的地址addr1;当地址映射模块生成的读使能信号ren为1时,存储器模块将地址addr2处所存储的数据作为输出;存储器模块的存储单元的数据格式是无符号定点数,并且只有小数位,位宽为n2-1;其中1表示符号位,符号位不需要存储;
所述选择输出模块,根据控制逻辑单元给出的控制信号、选择暂存寄存器模块或存储器模块的输出数据的其中一个,经过去除整数位、末尾补零的操作以及添加符号位sign的操作后,作为输出output;所述选择输出模块的选择逻辑为,当输入数据data的无符号数unsigned小于预先给定的分界值x_start,且overflow位为0时,直接将unsigned经过去除整数位、末尾补零和添加符号位sign的操作后,作为输出output,其中小数部分末尾补零直到整个数据位宽与输出output规定的位宽n2相等;否则,输入数据的函数值会在存储器模块中查找,再经过添加符号位sign的操作后,作为输出output;输出数据output为有符号定点数,位宽为n2,数据格式为{S,F},其中S为1位符号位,F为定点数的小数位,没有整数位;预先给定的分界值x_start的格式为{I,F},位宽为n-1,不包含符号位;
所述控制逻辑单元,协调各模块的执行,在其控制下整个计算过程在3个时钟周期内被完成,并输出计算完成信号fin;当外部输入的复位信号rst为1时,整个数字电路模块被复位;第1个时钟周期内,输入数据经过输入模块和地址映射模块,得到ren信号和地址addr,以及需要被暂存的数据unsigned;第2个时钟周期内,暂存寄存器模块和存储器模块的输出值将会根据控制逻辑单元给出的信号被选择;第3个时钟周期内,被选择的数据经过输出寄存器被输出,同时计算完成信号fin变为1,表示计算已经完成。
2.根据权利要求1所述的一种基于范围可寻址查找表计算tanh函数的数字电路模块,其特征在于,所述输入数据data的数据位宽n,整数位宽n0和小数位宽n1,输出数据output的数据位宽n2,选择输出模块的分界值x_start由以下方法确定:
首先确定计算tanh函数的最大绝对值误差e;
然后确定n2,选取的n2满足1/2n2≤e/10;
接着确定n1,要满足1/2n1≤e且1/2n1≤2(e-1/2n2);
接着确定n0,要满足1-tanh(2n0)≤2(e-1/2n2),n0选择满足条件的最小值;
接着确定n,要满足n=1+n0+n1;
最后确定x_start,其为方程x-tanh(x)=e的解。
3.根据权利要求2所述的一种基于范围可寻址查找表计算tanh函数的数字电路模块,其特征在于,选择输出模块的分界值x_start取其定点数格式下能表示的最接近方程x-tanh(x)=e的解的值。
4.根据权利要求1所述的一种基于范围可寻址查找表计算tanh函数的数字电路模块,其特征在于,地址映射模块的映射法则由以下方法确定:
把区间[x_start,2n0)分成N个分区,各个分区首尾连接、互不重叠地覆盖整个区间。已经确定x_start后,x_start为第1个分区的开始点,也记为x0,第1个分区的截止点为x1,也为第2个分区的开始点,以此类推,用变量k表示一个分区的标号,k取1、2、3、……、N;x0和后面第k个分区的截止点xk为n-1位的无符号定点数,小数位宽为n1,整数位宽为n0,选取xk为最大的该格式下能满足tanh(xk)-tanh(xk-1)≤2(e-1/2n2)的数,即从x0开始,将x0从最小一位加1得到该格式下能表示的x0的下一位数x,然后检验该数x是否满足tanh(xk)-tanh(xk-1)≤2(e-1/2n2),直到不满足为止,把最后一个满足上述不等式的数x作为x1,其余的xk也按照此规则确定;按照这种规则直到确定到第K个分区,使得xK≥2n0,这时已经把区间[x_start,2n0)范围内全部分区,最后一个分区的截止点xK取2n0,分区总数N=K。
5.根据权利要求4所述的一种基于范围可寻址查找表计算tanh函数的数字电路模块,其特征在于,地址映射模块的映射法则为:当overflow=0时,若输入的无符号数处于第k个分区,就输出二进制形式的k-1作为地址addr2;当overflow=1时,就输出二进制形式的N作为地址addr2。
6.根据权利要求1所述的一种基于范围可寻址查找表计算tanh函数的数字电路模块,其特征在于,所述存储器模块的存储数据值为:在地址k-1处,存储能用存储数据格式表示的最接近(tanh(xk)-tanh(xk-1))/2的数,其中存储数据格式就是小数位宽为n2-1、没有整数位的无符号定点数;在地址N处,存储能用该数据格式表示的最接近(1-tanh(2n0))/2的数。
7.根据权利要求1所述的一种基于范围可寻址查找表计算tanh函数的数字电路模块,其特征在于,该模块在执行计算操作之前,需要先按照权利要求6所述的存储数据值在存储器模块中存放相应的数据。
8.根据权利要求1所述的一种基于范围可寻址查找表计算tanh函数的数字电路模块,其特征在于,地址addr是由控制逻辑单元从地址addr1和地址addr2两个信号中选择出来的,选择上述两个数据的逻辑为:当外部给出的写使能信号wen为1时,选择地址addr1作为地址addr;当写使能信号wen为0时,选择地址addr2作为地址addr。
CN202210858801.6A 2022-07-20 2022-07-20 一种基于范围可寻址查找表计算tanh函数的数字电路模块 Pending CN115146769A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210858801.6A CN115146769A (zh) 2022-07-20 2022-07-20 一种基于范围可寻址查找表计算tanh函数的数字电路模块

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210858801.6A CN115146769A (zh) 2022-07-20 2022-07-20 一种基于范围可寻址查找表计算tanh函数的数字电路模块

Publications (1)

Publication Number Publication Date
CN115146769A true CN115146769A (zh) 2022-10-04

Family

ID=83411802

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210858801.6A Pending CN115146769A (zh) 2022-07-20 2022-07-20 一种基于范围可寻址查找表计算tanh函数的数字电路模块

Country Status (1)

Country Link
CN (1) CN115146769A (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115878863A (zh) * 2022-12-01 2023-03-31 杭州菲数科技有限公司 数据查找方法及数据查找装置

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115878863A (zh) * 2022-12-01 2023-03-31 杭州菲数科技有限公司 数据查找方法及数据查找装置
CN115878863B (zh) * 2022-12-01 2023-12-19 杭州菲数科技有限公司 数据查找方法及数据查找装置

Similar Documents

Publication Publication Date Title
CN110070178B (zh) 一种卷积神经网络计算装置及方法
US5880981A (en) Method and apparatus for reducing the power consumption in a programmable digital signal processor
CN1658153B (zh) 复合式动态定点数表示法与运算法及其处理器结构
CN107305484B (zh) 一种非线性函数运算装置及方法
EP0441121A2 (en) Arithmetic operation apparatus for elementary function
CN115146769A (zh) 一种基于范围可寻址查找表计算tanh函数的数字电路模块
CN112651496A (zh) 一种处理激活函数的硬件电路及芯片
CN110069284A (zh) 一种基于opu指令集的编译方法及编译器
FI98326C (fi) Osoiteprosessori signaaliprosessoria varten
CN108228136A (zh) 基于优化查找表法的对数函数计算的方法及装置
EP0021018B1 (en) Digital filters
US8862647B2 (en) Semiconductor integrated circuit and exponent calculation method
CN101056415B (zh) 一种乘法操作转换为加法和移位操作的方法及装置
CN115640493B (zh) 基于fpga的分段线性分数阶运算ip核
CN111341374B (zh) 存储器的测试方法、装置及可读存储器
CN108595148A (zh) 除法函数实现方法、电路、芯片以及系统
US7266576B2 (en) Circuits and methods for implementing approximations to logarithms
CN110705701A (zh) 一种高并行度的卷积运算方法和电路
CN117573069B (zh) Cordic算法芯片
US5381380A (en) Divide circuit having high-speed operating capability
CN220208247U (zh) 除法运算电路
CN112464157B (zh) 向量排序方法与排序系统
CN117540669B (zh) 数字电路的结构化数据处理方法及装置
US4936179A (en) Electronic musical instrument
CN115080453A (zh) 地址计算阵列管理方法及系统

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