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

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

手机号码,快捷登录

手机号码,快捷登录

找回密码

  登录   注册  

快捷导航
搜帖子
查看: 2108|回复: 2

[求助] 两个赋值块的含义及区别?

[复制链接]
发表于 2012-9-28 10:51:15 | 显示全部楼层 |阅读模式

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

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

x
为了在滤波器中实现乘累加,其中m0_out到m7_out分别是8个乘法器的输出,a0到a7为8个寄存器,请问一下两种写法运算起来哪里不一样呢?哪种写法正确呢?乘法器的输入是最新的乘数输入m0,乘数从m0到m7依次移动。

写法一:
     always @(posedge clk)

begin

       a0<=m0_out+a1;

a1<=m1_out+a2;

a2<=m2_out+a3;

a3<=m3_out+a4;

a4<=m4_out+a5;

a5<=m5_out+a6;

a6<=m6_out+a7;

a7<=m7_out;

end

写法二:
   always @(posedge clk)

begin

       a0<=m0_out;

a1<=m1_out+a0;

a2<=m2_out+a1;

a3<=m3_out+a2;

a4<=m4_out+a3;

a5<=m5_out+a4;

a6<=m6_out+a5;

a7<=m7_out+a6;

end
发表于 2012-9-28 11:21:27 | 显示全部楼层
本帖最后由 vongy 于 2012-9-28 11:22 编辑

我猜你这个8个乘法器是并行关系,  假设只有一路乘法器和寄存器,那该怎么做, 为什么不是下面这样?
always @(posedge clk  or negedge resetn)
   reset部分
else
begin

a0<=m0_out+a0;

a1<=m1_out+a1;

a2<=m2_out+a2;

a3<=m3_out+a3;

a4<=m4_out+a4;

a5<=m5_out+a5;

a6<=m6_out+a6;

a7<=m7_out+a7;

end
 楼主| 发表于 2012-9-28 14:56:10 | 显示全部楼层
回复 2# vongy


   也许和没把整个程序贴上来有关系,乘法器并不是并行的,用来实现是fir滤波器,我希望他实现的是乘法器后端有一个加的输入端口
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

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


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

GMT+8, 2024-11-25 02:35 , Processed in 0.020008 second(s), 8 queries , Gzip On, Redis On.

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