数学运算(三)

您所在的位置:网站首页 乘法和除法的计算公式 数学运算(三)

数学运算(三)

2023-05-05 12:52| 来源: 网络整理| 查看: 265

数学运算(一)—— 无符号数加法器

数学运算(二)——无符号数乘法器结构

数学运算(三)——无符号数除法器

数学运算(四)——带符号整数的运算

数学运算(五)——定点数和科学计数的四则运算

数学运算(六)——矩阵计算(待更)

数学运算(七)——通用非线性函数计算(待更)

数学运算(八)——通用非线性函数的CORDIC方法(待更)

本系列总结自《IP核芯志》

浩浩荡荡来到第三章,说说除法器。除法器这个就比较简单了,没那么多变化。前面的加法乘法那么多变化而除法没有,其实也可以理解,毕竟乘法器加法器是满足交换律的线性运算,而除法器是非线性运算,并不满足交换律。对于一般的非线性运算,也有三板斧,那就是

折线、查找、非线性

其实这出发的逻辑运算,和小学的竖式是一样的。其实就是辗转相除法,只不过竖式都是使用二进制来做的。如图

我们每次算被除数的一部分,余数留下来再加上被除数的下一位,接着运算,直到需要的精度

在设计数字逻辑的时候,多数情况下,建立时间不确定比建立时间长更难接受。这是由于建立时间不确定时的最大值,往往比所谓的建立时间长还要长。

流水线除法器的设计也就不再多说,主要是除法器自古华山一条路,没有什么多的可以讲。时间久了,也就不想去写保姆级的教程了。流水线就放一张图好了

最后我们再来说道说道,常数除法真的需要用除法器吗?

在信号处理运算中,除法的余数实际上是没有意义的,其次,信号处理是允许存在一些计算误差的。最后,这种误差是要可估计可控制的。

比如说我们要除3,如公式 c=a/3=a \times (2^N)/3/(2^N)=a\times (2^N/3)/2^N=a\times b \gg N

b是常数(N是我们自己定的,除数是已经规定好的)。我们可以事先计算得到右移的位数和幂运算。再根据之前我们乘法其中的对常数乘法的优化,上述乘法还是可以简化的。

这一部分还是比较简单的,后续代码陆续发放至平台上



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3