modelsim做综合后仿真,为什么复位信号出现2us后寄存器才被复位
如题
modelsim做综合后仿真,为什么复位信号出现2us后寄存器才被复位(ps:复位信号为异步复位)
这个结果正常么,大侠们给个思路哇。
寄存器复位较复位信号有延迟很正常,但延迟2us也太大了吧
你是同步复位还是异步复位,时钟是多少的?
异步复位。
能把仿真波形与仿真代码贴出来吗
你的timescale是多少?
10ps/10ps
10ps/10ps
时序检查的时候removal time和recovery time有没有报告违规?
把你的复位信号做一点延时看看。
复位时间超过2us就能复位,小于2us不能复位
我觉得应该是你的复位信号正好不满足recovery time或者removal time的点上了,做异步复位的时候还是需要做异步复位同步释放处理的,以防寄存器进入亚稳态
,这么诡异,还真没有遇到过这样的情况!
异步复位同步释放处理是哪个环节做的?
你的设计是不是做了去抖处理啊?
按理来说要是removal 或是recovery time的问题modelsim应该不能仿真出来这样的行为的
木有
复位时间超过2us就能复位,小于2us不能复位
还有木有其他的可能啊

异步复位同步释放!


恩,,这个了解了,,谢谢大侠的提点
但,,我的问题不像是这个原因产生的,因为自己控制复位信号的输入没有这个风险,还有可能是神马原因呢
我觉得也不会是这个引起的,modelsim仿不出来这些的,要不你把你的代码和testbech贴出来点,大家看看,实在不行的话只能坐等高手了!
你是仅仅用modelsim做的rtl仿真?不是FPGA上做仿真?你要描述你的详细的仿真环境
RTL仿真应该出不来这个结果,综合网表后的仿真有可能,我们这边设计规范提出的复位时间一般都是1us到5us之间,应该你这个时间值不是没有可能的,需要看看FPGA手册里面是不是有对触发器的复位时间的要求了。
好像也没讨论出个结果
