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

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

手机号码,快捷登录

手机号码,快捷登录

找回密码

  登录   注册  

快捷导航
搜帖子
查看: 9463|回复: 3

[求助] error: $width( negedge CK &&& (flag == 1):3602089 ps

[复制链接]
发表于 2010-11-17 11:27:45 | 显示全部楼层 |阅读模式

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

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

x
请问我是做post-sim的时候modelsim报如下的错误,该如何解决啊,谢谢:

# ** Error: D:/WORK/1505/Post_sim/tsmc25_new.v(5731): $width( negedge CK &&& (flag == 1):3602089 ps, :3602320 ps, 523 ps );
#    Time: 3602320 ps  Iteration: 0  Instance: /tb/U_IT1505_1/U_PWM/counter_reg_11_

提示说是CK下降沿的长度不够吗,不太理解哦,CK是我外部给的CLOCK。纠结啊~~

我指点到仿真库tsmc25_new.v里的5731行为:

`timescale 1ns/1ps
`celldefine
module DFFRX1 (Q, QN, D, CK, RN);
output Q, QN;
input  D, CK, RN;
reg NOTIFIER;
supply1 xSN;
  buf   XX0 (xRN, RN);
  buf     IC (clk, CK);
  udp_dff I0 (n0, D, clk, xRN, xSN, NOTIFIER);
  and     I4 (flag, xRN, xSN);
  buf     I1 (Q, n0);
  not     I2 (QN, n0);
  specify
    specparam
    tplh$RN$Q  = 1.0,
    tphl$RN$Q  = 1.0,
    tplh$RN$QN  = 1.0,
    tphl$RN$QN  = 1.0,
    tplh$CK$Q = 1.0,
    tphl$CK$Q = 1.0,
    tplh$CK$QN = 1.0,
    tphl$CK$QN = 1.0,
    tsetup$D$CK = 1.0,
    thold$D$CK = 0.5,
    tsetup$RN$CK    = 1.0,
    thold$RN$CK    = 0.5,
    tminpwl$RN     = 1.0,
    tminpwl$CK    = 1.0,
    tminpwh$CK    = 1.0;

    if (flag)
      (posedge CK *> (Q +: D)) = (tplh$CK$Q,    tphl$CK$Q);
    if (flag)
      (posedge CK *> (QN -: D)) = (tplh$CK$QN,   tphl$CK$QN);
    $setuphold(posedge CK &&& (flag == 1), posedge D, tsetup$D$CK, thold$D$CK, NOTIFIER);
    $setuphold(posedge CK &&& (flag == 1), negedge D, tsetup$D$CK, thold$D$CK, NOTIFIER);
      (negedge RN *> (Q +: 1'b0)) = (tphl$RN$Q);
      (negedge RN *> (QN -: 1'b0)) = (tplh$RN$QN);
$setuphold(posedge CK, posedge RN, tsetup$RN$CK, thold$RN$CK, NOTIFIER);
    $width(negedge RN, tminpwl$RN, 0, NOTIFIER);
    $width(negedge CK &&& (flag == 1), tminpwl$CK, 0, NOTIFIER);
    $width(posedge CK &&& (flag == 1), tminpwh$CK, 0, NOTIFIER);
   endspecify
endmodule // DFFRX1
`endcelldefine

请大侠帮帮忙,谢谢~~~~
发表于 2010-11-17 18:27:57 | 显示全部楼层
可能是频率太高了,min_pulse_width不够
 楼主| 发表于 2010-11-18 11:28:28 | 显示全部楼层
回复 2# zh123456789


    谢谢你的热心回复,我仔细看了下,发现是前面有hold timing的问题,然后影响到该FF,所以发生了width。 当没有hold timing的时候,该error也会消失~~~~

   谢谢
发表于 2015-12-10 21:19:23 | 显示全部楼层
我放的网表也产生了这个问题。我把时钟稍微降低一点,就不会有这种问题了。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

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

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

GMT+8, 2025-7-17 03:37 , Processed in 0.023043 second(s), 9 queries , Gzip On, MemCached On.

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