[发明专利]一种非线性函数运算装置及方法有效
申请号: | 201610245348.6 | 申请日: | 2016-04-19 |
公开(公告)号: | CN107305484B | 公开(公告)日: | 2021-11-05 |
发明(设计)人: | 兰慧盈;郭崎;陈云霁;陈天石;李尚应;李震 | 申请(专利权)人: | 中科寒武纪科技股份有限公司 |
主分类号: | G06F7/57 | 分类号: | G06F7/57 |
代理公司: | 北京林达刘知识产权代理事务所(普通合伙) 11277 | 代理人: | 刘新宇 |
地址: | 100190 北京市海*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 非线性 函数 运算 装置 方法 | ||
1.一种非线性函数运算装置,用于根据一输入的浮点数计算非线性函数的函数值,其特征在于,装置包括:
查表部,其存储有多个线性函数的斜率值和截距值,其中,所述多个线性函数由所述非线性函数分段线性拟合而得到,并且,所述查表部用于根据输入的浮点数获取相应的斜率值k和截距值b;
所述查表部包括:选择部,用于根据所述浮点数及偏移值bias,确定序号index,并根据所述序号index在斜率截距存储部中选择并获取相应的斜率值k和截距值b;
配置部,用于设定所述非线性函数自变量取值范围为(-r,r),并将边界值r的指数部分作为一偏移值bias输入至所述选择部;
线性拟合部,用于根据查表部得到的斜率值k和截距值b,得到相应的线性函数y=k×x+b,并将所述浮点数代入所述线性函数,得到线性函数的函数值,以作为所述浮点数在所述非线性函数中的函数值,
所述选择部根据所述浮点数及所述偏移值bias,确定序号index,包括:
当bias-exp0时,在所述浮点数为正数情况下,index取N-1,在所述浮点数为负数情况下序号index取0,其中,exp为所述浮点数的指数部分;
当0≤bias-expW-1时,
index=2W-12W-1-m-1+frac[F-1:F-(W-1-m-1)+1]
其中,frac为所述浮点数的尾数部分,W为序号index的位宽,并且,W=log2N,m=bias–exp,F为所述浮点数的尾数的位宽,然后将index的每一位和所述浮点数的符号位进行异或运算;
当bias-exp≥W-1,index最高位为所述浮点数的符号位取反,低W-1位均为所述浮点数的符号位。
2.根据权利要求1所述的非线性函数运算装置,其特征在于,所述斜率截距存储部,用于存储多个线性函数所对应的斜率值和截距值。
3.根据权利要求2所述的非线性函数运算装置,其特征在于,斜率截距存储部包括Table_k插值表和Table_b插值表,Table_k插值表用于存储所述斜率值,Table_b插值表用于存储所述截距值。
4.根据权利要求1所述的非线性函数运算装置,其特征在于,所述配置部,还用于将所述非线性函数的自变量分段为N个区间,在每个区间内,将非线性函数拟合为一个线性函数,分别得到N个线性函数,并获取所述N个线性函数的斜率值和截距值,其中,将N个线性函数的斜率值和截距值存储于所述斜率截距存储部。
5.根据权利要求4所述的非线性函数运算装置,其特征在于,每组斜率值和截距值一一对应于所述N个区间中一个区间的序号index,所述配置部将所述序号index存储于所述选择部,其中,序号index的取值范围为[0,N-1]。
6.根据权利要求1所述的非线性函数运算装置,其特征在于,所述线性拟合部包括:
乘法器,用于将查表得到的斜率值k与所述浮点数相乘,得到相乘结果;
加法器,用于将乘法器得到相乘结果与查表得到的截距值b相加,得到所述线性函数的函数值y。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中科寒武纪科技股份有限公司,未经中科寒武纪科技股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201610245348.6/1.html,转载请声明来源钻瓜专利网。