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

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

手机号码,快捷登录

手机号码,快捷登录

找回密码

  登录   注册  

快捷导航
搜帖子
查看: 3180|回复: 4

[求助] ASIC网表仿真出现未知态且前仿hold为负

[复制链接]
发表于 2020-3-18 12:20:18 | 显示全部楼层 |阅读模式
50资产
求助各位大佬,先附上我的程序
114713bfo0dzyop0lplum0.png

114742defqoqmm5sczl5el.png


114752x8xk13y93itwtut3.png


114801tscl63mob1fk3mb4.png


114809ghxfcj64crccxjex.png


114820c8ymdjy55vjplpzf.png


另解释下我的程序:  可驱动 5 个 LED 闪烁,通过改变 K1 选择闪烁方式,K1 悬空时 LED 顺闪,K1 接 VDD 时 LED 上电来回闪烁,闪烁频率为 2.4HZ。K2 为 ON/OFF 开关。在 LED 灯熄灭的时候,按下 K2 的时刻,芯片的内部电路开始工作,5 个 LED 灯开始闪烁。在 LED灯闪 烁的时候, 按下 K2(未松开按键)的时候,芯片 继续工作,直到松开按键,5 个 LED 才会熄灭。程序第一个状态机是利用K1实现顺闪和来回闪两种模式的转化,第二个状态机是实现K2的松手检测;以及很多的输出端口是为了观测哪部分程序出了问题,K2关闭时输出端的高阻态是为了跟全灭时区分开,因为全灭用来实现了K1的模式转化。
程序用quartusII进行了分析和综合,没有警告和错误。

附上程序RTL级前仿波形

前仿RTL级.png


程序综合出来的网表文件,用NC仿真时出现
ncelab: *W,CUNGL1 (./verilog.v,4758|62):Negative timing check limit not allowed in a 1 limit timing check, setting to 0in instance (led5ic_tb.led.key_tmp1_reg).
    $recovery(posedge RN, posedge CK &&& D == 1'b1, trec$RN$CK,NOTIFIER);
                                                             |
这种警告,报错的触发器有很多:key_tmp0,key_tmp1,key_s0,key_s1,cnt_clk,cnt_full,cnt,podge,state,key_state,cnt_clk,en_cnt
网表文件的仿真波形中还出现了不定态 (见图片-网表文件的仿真波形)

113717sqb6d2tb2ti6z6dn.png



综合用的约束文件也附上(见图片-约束文件1和约束文件2)

114132cvkv3dm6nyekwnpm.png

114238va1py0d0izvbzvby.png

另外,进行前仿真的hold也为负数,(见图片-前仿hold为负)

114429s6kk66cx63s6xgtk.png


希望有大佬可以回答下我的问题,那一部分出问题了导致了这些警告和错误

最佳答案

查看完整内容

复位和clk存在recovery 时序违背,所以不论做STA/还是做动态仿真,该时序违背始终存在;但是你,修改tb后移动了rst与时钟之间的翻转时间差,因而仿真可以进行下去;但是该时序违背依旧存在,只是动态仿真掩盖过去了; 另外上图中Timedesign summary中的负值代表的是时序违背时间,并不是hold值是负的;从图上看是reg2reg 违背,建议设计上对rst做同步释放;另外修改sdc文件,复位不是像图中那么约束的 ...
发表于 2020-3-18 12:20:19 | 显示全部楼层
复位和clk存在recovery 时序违背,所以不论做STA/还是做动态仿真,该时序违背始终存在;但是你,修改tb后移动了rst与时钟之间的翻转时间差,因而仿真可以进行下去;但是该时序违背依旧存在,只是动态仿真掩盖过去了;
另外上图中Timedesign summary中的负值代表的是时序违背时间,并不是hold值是负的;从图上看是reg2reg 违背,建议设计上对rst做同步释放;另外修改sdc文件,复位不是像图中那么约束的
发表于 2020-3-18 15:35:51 | 显示全部楼层
ganxiefenxiang
 楼主| 发表于 2020-3-18 17:17:03 | 显示全部楼层
希望真的有大佬能帮忙解决呀
 楼主| 发表于 2020-3-19 20:06:57 | 显示全部楼层
hdl网表文件未知态那个解决了,是因为rst下降沿跟clk上升沿同一个时刻给的,所以导致的出错,修改tb文件里的,rst的赋值时间,波形就正常了,但是recovery 的警告还在,而且用innovus做的版图前仿hold仍是负数,有大佬知道解决办法吗?
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

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


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

GMT+8, 2024-11-22 00:05 , Processed in 0.020489 second(s), 8 queries , Gzip On, Redis On.

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