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

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

手机号码,快捷登录

手机号码,快捷登录

找回密码

  登录   注册  

快捷导航
搜帖子
查看: 1811|回复: 1

[求助] 功能仿真和综合后仿真不一致,差一个时钟周期

[复制链接]
发表于 2013-6-4 20:41:53 | 显示全部楼层 |阅读模式

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

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

x
本帖最后由 dennisi123 于 2013-6-4 20:50 编辑

今天写了一个移位寄存器的代码,发现功能仿真和综合后的仿真差了一个周期:

左边是综合后仿真,右边是逻辑仿真,差了一个周期

左边是综合后仿真,右边是逻辑仿真,差了一个周期

module shiftreg0123(ctrl,ld,q,clk,dio1);
input clk;
input dio1;

output[239:0] q;  
output ld;
output[1:0] ctrl;

reg[239:0] q;
reg ld;
reg[1:0] count;
reg[1:0] ctrl;

always @ (posedge clk  ) // shift data 1
begin
    if(dio1==1||count==2)
    begin
         count<=0;
        ld<=q[239];
         q<=(q<<1);
         q[0]<=dio1;
         ctrl<=2'b00; //r
    end
    else
    begin
         count<=count+1;
         if(ctrl==2'b00)
               ctrl<=2'b01; //g
         else if(ctrl==2'b01)
               ctrl<=2'b11;//b
         else
               ctrl<=2'b00; //r
    end   

end

endmodule

本来是在DIO1这个信号变为1时开始移位的,综合后成了DIO1变为0时开始移位,差了一个周期。是因为我写的代码不太合格吗?
 楼主| 发表于 2013-6-4 21:23:35 | 显示全部楼层
自己顶一下,先写个小模块再测试下
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

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

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

GMT+8, 2025-7-3 02:40 , Processed in 0.021262 second(s), 9 queries , Gzip On, MemCached On.

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