在线咨询
eetop公众号 创芯大讲堂 创芯人才网
切换到宽版

EETOP 创芯网论坛 (原名:电子顶级开发网)

手机号码,快捷登录

手机号码,快捷登录

找回密码

  登录   注册  

快捷导航
搜帖子
查看: 6541|回复: 12

[求助] 分母为定值的除法器实现求助

[复制链接]
发表于 2013-4-1 16:37:57 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?注册

x
现在有分母denom为一定值100,分子numer,要求他们的商quotient,余数不用管,有什么简单的实现方法吗?不能用自带的除法器IP核,请大家帮忙!
发表于 2013-4-2 10:03:12 | 显示全部楼层
看你的精度要求,可以通过查表来实现
发表于 2013-4-2 11:13:26 | 显示全部楼层
要速度快且精度高,不管面积,用查表。
要面积小且精度高,速度略慢,用移位减法。
要速度快且面积小,误差可以接受,使用定点除法近似,误差比例取决于你的被除数尺度。
取1/128+1/512,约等于0.009765625。
当你的被除数=511时,商=3,误差41.29%。
当你的被除数=1024时,商=10,误差2.34%。
-------------------------
要快速实现高精度,直接用FPGA的IP。
发表于 2013-4-2 22:15:52 | 显示全部楼层
 楼主| 发表于 2013-4-3 13:22:30 | 显示全部楼层
本帖最后由 tangate 于 2013-4-3 13:25 编辑

回复 3# msiplessey


   被除数16位,除数8位(是个定值),只要求得到商就行,不要求余数,这样是不是就不要求什么精度呢,上次在网上找到一个除法器算法,是被除数8位,除数4位的,用的是移位,后来改了一下,改成16位和8位的,但是结果不正确,难道这个算法不通用吗?我现在不能用IP核是因为用后时序不收敛,暂时没办法解决,所以要用一除法算法替换
发表于 2013-4-3 13:41:05 | 显示全部楼层
回复 5# tangate


    移位除法可行。
发表于 2013-4-5 14:17:54 | 显示全部楼层
回复 1# tangate


    先拓展位宽,乘12,再右移十位。这样精度应该够。
发表于 2013-4-7 13:09:20 | 显示全部楼层
这里碰到高人了,请教:
我在用core generator 产生一个除法器后例化、仿真。之前查看仿真结果一直没问题,今天除法器突然输出全为零了,我也不知道是因为改动了哪里
综合时提示:
WARNING:Xst:616 - Invalid property "SYN_BLACK_BOX 1": Did not attach to divider.
WARNING:Xst:616 - Invalid property "SYN_NOPRUNE 1": Did not attach to divider.


请求有经验的前辈指点一下,万分感谢!
发表于 2013-4-8 14:24:46 | 显示全部楼层
回复 1# tangate


    1/100 = 0.01;
    round(1024*0.01)/1024 = 10/1024 =  0.009765625;
    round(1024*1024*0.01)/1024/1024 = 10485/1024/1024 = 0.00999927520751953125;

精度够了吗?

  分母是定值的除法都可以转换成乘法。
 楼主| 发表于 2013-4-8 16:54:41 | 显示全部楼层
回复 9# zongkai2003

   您写的小弟不是很懂,呵呵,恕我愚钝,能不能讲详细一点,另外round函数fpga里有吗?另外函数里面乘以0.01是什么意思,恕我学的东西太少,见笑了!
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

站长推荐 上一条 /2 下一条


小黑屋| 手机版| 关于我们| 联系我们| 在线咨询| 隐私声明| EETOP 创芯网
( 京ICP备:10050787号 京公网安备:11010502037710 )

GMT+8, 2024-11-23 11:09 , Processed in 0.027450 second(s), 8 queries , Gzip On, Redis On.

eetop公众号 创芯大讲堂 创芯人才网
快速回复 返回顶部 返回列表