打印

请问8bit*10bit的无符号乘法器,需要耗费多少时钟周期?

[复制链接]
5373|7
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
crystal28|  楼主 | 2011-11-11 08:49 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
沙发
mr.king| | 2011-11-11 21:30 | 只看该作者
FPGA带有乘法器,一个时钟完成

使用特权

评论回复
板凳
crystal28|  楼主 | 2011-11-12 10:57 | 只看该作者
那如果是有符号乘法,能否一个时钟完成?
比如这样的计算:

reg [7:0]reg1;
reg [9:0]reg2;
reg[17:0]reg3;
reg3 = (reg1 * reg2) >> 1;
应该要两个时钟吧?
谢谢!

使用特权

评论回复
地板
Backkom80| | 2011-11-14 13:40 | 只看该作者
示情况而定,
如你调用IP核,在IP的文档在可以找到相应说明,在IP调用时也可以作相应设置。
如你是自己写的代码,你应该自己清楚你的设计时序,同时也要考虑完成你设计时代码风格是不是可以综合!
如C = A*B,这种描述风格是不是可以综合,能综合,他能跑多快,适合符号你的设计的工作频率!

使用特权

评论回复
5
crystal28|  楼主 | 2011-11-14 16:47 | 只看该作者
谢谢回复。
我不清楚的是,无符号和有符号数做乘法,(直接用verilog的乘法运算符,即reg3 = (reg1 * reg2);)需要多少个时钟周期。我觉得是1个时钟,想确认一下。
还有,网上有的**讲,20*18bits有符号整数乘法可以用booth算法提高效率,他们为什么不直接reg3 = (reg1 * reg2)呢?是因为硬件不支持?这里我就不明白了。
另外像C = A*B,这种情况还有可能无法综合?在何时可能无法综合?
求教!

使用特权

评论回复
6
Backkom80| | 2011-11-17 10:28 | 只看该作者
1、C = A*B这种写法不是所有的综合器都支持他们为可综合的,Quartus II是支持的,ISE新版好象也支持了,第三方如synplify等,你需要自己去看。
2、C = A*B这种写法,就算能综合,默认为无符号数。
3、always @ ( posedge clk ) C = A*B 为一个时钟周期,这种写法,时钟能跑多快,有待分析,我感觉是中低端芯片也就50M上下这个样子(没有完全结论,只是一个初步试跑)。
4、建意调用乘法IP核来实现你这个功能。硬核,在时序上有保证。图形化设置,多少个时钟完成乘法都可设置。具体用法在生成时查看相应的datasheet。

使用特权

评论回复
7
crystal28|  楼主 | 2011-11-21 10:04 | 只看该作者
actel的proasic3系列据我所知没有硬件乘法器
我用的synplify,可以综合C = A*B,但时钟频率上不去

使用特权

评论回复
8
Backkom80| | 2011-11-21 12:28 | 只看该作者
actel的芯片没用过,呵呵,

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

12

主题

45

帖子

2

粉丝