wangwenjia 发表于 2011-10-8 16:13:51

发现乘除法运算狂占资源啊,真是吃不消,有没有好的瘦身方法

Step <= max - (max -min)*cnt/cnt_all;

上面这样的运算耗费了两百多的 LE,吃不消啊 。。。

avrgogo 发表于 2011-10-8 16:15:59

可以自己写个乘法器。

pontiff 发表于 2011-10-8 18:12:01

HDL!=programming language

brahen 发表于 2011-10-8 18:34:17

没有使用嵌入式乘法器吗?还是你的fpga没有?

freud 发表于 2011-10-8 19:55:05

不知道你建模做过定点算法没,不用太精确的话可以查表;不行就硬乘法器,自己写的乘法器不是太靠谱的。

wangwenjia 发表于 2011-10-8 21:58:56

【4楼】 freud
不知道你建模做过定点算法没,不用太精确的话可以查表;不行就硬乘法器,自己写的乘法器不是太靠谱的。

-------------------------------------------------------------------------------------------------------------------


没做过定点算法,HDL也是才涉及不久。
精度要求不高,查表如何操作?

freud 发表于 2011-10-8 22:11:42

回复【5楼】wangwenjia

【4楼】 freud
不知道你建模做过定点算法没,不用太精确的话可以查表;不行就硬乘法器,自己写的乘法器不是太靠谱的。
-------------------------------------------------------------------------------------------------------------------
没做过定点算法,hdl也是才涉及不久。
精度要求不高,查表如何操作?

-----------------------------------------------------------------------

你搜搜网上有一堆的

philoman 发表于 2011-10-8 23:09:35

写程序要动点儿脑筋吧,让语言去综合出一个乘法器?不现实

zouyf12 发表于 2011-10-8 23:22:43

【7楼】philoman
写程序要动点儿脑筋吧,让语言去综合出一个乘法器?不现实
-----------------------------------------------------------------------
正好,我也有这个疑问回复
我也是搞不明白,直接用HDL里提供的这个*和硬件或者HDL写一个乘法器出来有什么区别? 难道用HDL里的这个*的话,综合器直接用组合逻辑的方式实现一个乘法器?(就是数电里列出真值表然后画个什么图的方法用与非或门弄一个乘法器出来)

aheadlead 发表于 2011-10-9 06:19:18

幸亏不是高精度乘法.......
前几天某同学一道输入两个数 输出两数的乘积的题目
怎么也通不过。。。。

时间限制1s

竟然是50000位高精度乘法 得用FFT 我一直不明白的路过。。

p.nicholas 发表于 2011-10-9 14:10:15

回复【9楼】aheadlead瓦之
幸亏不是高精度乘法.......
前几天某同学一道输入两个数 输出两数的乘积的题目
怎么也通不过。。。。
时间限制1s
竟然是50000位高精度乘法 得用fft 我一直不明白的路过。。
-----------------------------------------------------------------------

50000位,您玩笑开大了吧!

qiezp 发表于 2011-10-12 21:24:06

在QuartusII中执行入下步骤:
1、Tools -> MegaWizard Plug-in Manager 弹出兆函数对话框,选择单选项创建新的兆函数(megafuction),点击next。
2、在出现的对话框中的左侧,有一些列的IP核,选中Arithmetic(运算),选择ALTFP_MULT,在右侧选择生产的语言类型(VHDL还是Verilog?),并给它取个名字,然后点击next;
3、出现了相应的界面,按提示一步步操作即可。
用了芯片提供的乘法器,直接写*或者/的话用的芯片的le资源。

xcreat 发表于 2011-10-13 11:26:18

自己弄个循环乘法器,我以前自己写了个16*16的定点并行乘法器,好像4级流水线,用了1万门

hebeizhangyj 发表于 2011-10-14 10:45:33

查找表构建:通常用case语句给出特定的输入,和相应的输出

hellofpga 发表于 2011-10-18 16:34:01

我晕,你没用megacode啊

xibu1102007 发表于 2011-10-20 17:17:19

不建议试验VHDL语言编写乘除法,太耗资源

zlhbenge 发表于 2011-10-21 23:50:41

芯片已经自带乘法器,直接用就可以了。

liwf198305 发表于 2011-10-28 20:52:32

如果时延要求不是很高的话.可以用移位器和加法器实现乘法器,多占几个时钟周期来实现
页: [1]
查看完整版本: 发现乘除法运算狂占资源啊,真是吃不消,有没有好的瘦身方法