基于FPGA的多项式运算器设计
3.3 设计实例
以设计余弦函数为例,用6次多项式可以很好地拟合(0,π/2)上的余弦函数。先用麦克劳林级数计算得到6次拟合多项式:

考虑到三角函数只有小数部分有效,所以数据只用1个整数位、另8个小数位和一个符号位表示。另外需要说明的是常数保留的小数位是可以调节的,选择保留合适的常数小数位可以尽量在保证精确度的情况下简化运算。

确定数据格式后式(7)可以写成式(8)的形式,进一步可将式(8)变化为式(9),并在XILINX公司的ISE中完成设计。

设计中考虑到纯粹的异步组合逻辑电路容易出现“竞争-冒险”,所以加入了同步时钟,这里利用同步时钟分三步完成运算,同时为了使每一步的运算保持同步还需要加入延时模块,这样虽然牺牲了一些时间,但是保证了运行的稳定性。图1是将多项式(9)用ISE编译出的RTL电路图,其中“input”为式(9)中的X,“×”为乘法器,“FD”为延时模块,“output”为式(9)中的Y。本文引用地址:https://www.eepw.com.cn/article/190462.htm
评论