|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有账号?注册
x
vcs仿真的一个诡异错误很简单的代码, EEBinBuf 赋值的地方只有下面这个block
always_ff @(posedge SCL4IP)
begin:EEDinBuf_block
if (!OSC_EN) begin //not programing IP.
if (STP_SR && STP_S && !READ) begin
EEDinBuf[BITSEL] <= EEDBI;
end
end
end
其中 osc_en,stp_sr,stp_s, read这几个信号一直保持不变,在白色光标线出, SCL4IP的上升沿,EEDinBuf改变正常,但是诡异的是,
在黄色光标处,EEDinBuf的最低位居然跟着EEDBI发生改变了,这个时候SCL4IP 一直=1,按理不能变啊。
请大家讨论讨论,看看这个是个什么可能。
试过assign SCL4IP_DB = #50 SCL4IP, 然后always @(posedge SCL4IP_DB) .... 就没有问题了。
看波形这上面也没有什么glitch 啊。 vcs有什么控制glitch的相关选项么?
谢谢大家 |
|
|