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

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

手机号码,快捷登录

手机号码,快捷登录

找回密码

  登录   注册  

快捷导航
搜帖子
查看: 3234|回复: 6

请教各位,有关后仿真问题

[复制链接]
发表于 2004-3-25 15:42:12 | 显示全部楼层 |阅读模式

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

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

x
请教各位,系统设计中有多个时钟域,在用modelsim之类的仿真工具做后仿真时,由于跨时钟域的信号可能出现不定态而导致仿真无法正常进行下去,无法完成后仿真,请问如何处理?能否让工具认为不定态就是逻辑‘1‘,从而让仿真进行下去吗?
发表于 2004-3-25 16:12:15 | 显示全部楼层

请教各位,有关后仿真问题

关键不在时钟域,在于你的设计中如果有不定态x,应该在reset以后尽量不要再出现。如果是后仿真库中有x输出了,则肯定是时序问题造成的,请细究。
工具是不可能做到你那样的要求的,否则就乱套啦!
 楼主| 发表于 2004-3-25 16:37:28 | 显示全部楼层

请教各位,有关后仿真问题

多谢老扁!不过我有一个难题还想听听你的建议:
    比如CLK1时钟域产生的多周期信号S1由CLK2去同步锁存(按常规方法加两级CLK2触发的DFF进行双同步),但是由于S1的建立时间不一定满足CLK2时钟域的要求,第一级同步的输出信号第一周期就是不定态,因此在第二级的DFF输出信号的第一周期还是不定态。如果我想用信号S1产生一个CLK2时钟域的单周期信号,就会在仿真中出现该单周期信号为不定态。如果我想用此信号做诸如SDRAM的ACT或READ或WRITE等命令,岂不是命令成为不定态(当然在实际电路中肯定不会出现)?
发表于 2004-3-25 17:08:59 | 显示全部楼层

请教各位,有关后仿真问题

你理解有误。
两级同步就是为解决不定态而设计的,第一级产生不定态的概率已经很小,第二级以后再出现不定态的概率就已经达到了实际工作的要求;所以你大可放心用两级clk2来同步一下即可。另外一般还可以把第一级同步寄存器用不会产生不定态的寄存器来做,当然那和工艺库有关了。
关于这方面的理论和实践论述在本版有专门文章介绍,请下载学习一下。
 楼主| 发表于 2004-3-25 17:24:14 | 显示全部楼层

请教各位,有关后仿真问题

我知道实际电路中和你说的一样,但是在后仿真时容易出现我所说的不定态问题,我没法克服,只好用行为级仿真+认真分析时序代替后仿真,所以我想找到一个折中的方法将后仿真顺利进行。
发表于 2004-3-25 17:42:22 | 显示全部楼层

请教各位,有关后仿真问题


那是单元库做了setup检查了。
如果那样的话可不可以后仿真时不做时序检查,用+nospecify +notimingcheck等来做,也就等同于行为仿真了,只是用单元替代rtl而已,算作一个折中方法吧。
这样你的时序检查就放到静态时序分析里去做吧。
不过这确实是一个问题,大家可以继续讨论,看这些fasle_path的timing后仿真怎么做比较好。
发表于 2004-3-26 00:14:21 | 显示全部楼层

请教各位,有关后仿真问题

好像用动态仿真确实很难避免这个问题。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

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

X

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

GMT+8, 2025-6-18 03:13 , Processed in 0.020221 second(s), 10 queries , Gzip On, MemCached On.

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