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

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

手机号码,快捷登录

手机号码,快捷登录

找回密码

  登录   注册  

快捷导航
搜帖子
查看: 375|回复: 9

[求助] scan_cell失灵?

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

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

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

x
做串行pattern仿真的时候遇到了mismatch,追完发现是因为chain上有几个触发器的Q没有落后于TD一个时钟变化,而是直接跟随。用代码描述大概就是出错的cell是Q=TD而不是Q<=TD。上一个cell跟出错的cell是同一个触发器模块上一个cell就是正常的即Q<=TD。公司大佬说是要么改库要么修hold,但是我仿的好像不带时序。还有别的办法吗?
发表于 2023-12-20 15:42:04 | 显示全部楼层
1.你这个是前仿真?讲道理不会出现hold的问题啊。
你能描述一下这个hold出现电路的结构吗?
 楼主| 发表于 2023-12-20 16:42:21 | 显示全部楼层


莫名晴天 发表于 2023-12-20 15:42
1.你这个是前仿真?讲道理不会出现hold的问题啊。
你能描述一下这个hold出现电路的结构吗? ...



具体门级我不知道会不会涉及保密,用行为级描述一下,不知道行不行
module scan_cell (

input D,
input TD,
input SE,
input clk,
input rstn,
output reg Q);

always@(posedge clk, negedge rstn)
if(~rstn) Q <= 1'b0;
else Q<= SE ? TD : D;


endmodule


scan_cell cell_0 (
.D(func_reg_0),
.TD(scan_in),
.SE(1'b1),//因为处于dft模式,所以直接给1
.clk(ate_clk),
.rstn(scan_rstn),
.Q(int_w));

fun_module xxx (……,
.DFTSI2(int_w),
.SE(1'b1),
.clk(ate_clk),
……);

module fun_module (
……,
input DFTSI2,
……);

……

scan_cell cell_1 (
.D(func_reg_1),
.TD(DFTSI2),
.SE(1'b1),
.clk(ate_clk),
.rstn(scan_rstn),
.Q(DFTSO2));

……

endmodule

现在就是int_w的变化落后于scan_in一个clk周期,就是触发器的样子;
但是DFTSO2就是直接跟随DFTSI2,DFTSI2变化DFTSO2就立马变化,没有等到下一个周期才变化
 楼主| 发表于 2023-12-21 10:36:59 | 显示全部楼层


莫名晴天 发表于 2023-12-20 15:42
1.你这个是前仿真?讲道理不会出现hold的问题啊。
你能描述一下这个hold出现电路的结构吗? ...


里面有specify语句,可能跟这个有关
发表于 2023-12-21 14:31:22 | 显示全部楼层


蕾兹曼 发表于 2023-12-21 10:36
里面有specify语句,可能跟这个有关


这东西是验证用的语句,综合好像不需要这句话吧。
 楼主| 发表于 2023-12-21 15:25:59 | 显示全部楼层


莫名晴天 发表于 2023-12-21 14:31
这东西是验证用的语句,综合好像不需要这句话吧。


现在还算是前仿吧,现在仿真用的是TMAX吐出来的tb.v,DFTC吐出来的design.v。现在我在自己写的DFF加上了specify的clk=>Q的延迟,对波形是有影响的,现在要改的话,就是不知道怎么改specify里面的Thold了
 楼主| 发表于 2023-12-21 15:27:26 | 显示全部楼层


蕾兹曼 发表于 2023-12-21 15:25
现在还算是前仿吧,现在仿真用的是TMAX吐出来的tb.v,DFTC吐出来的design.v。现在我在自己写的DFF加上了s ...


还有个问题就是要是维持原样,实际电路会不会出现这种情况?
 楼主| 发表于 2023-12-21 16:19:07 | 显示全部楼层
目前用着加中间线assign延迟搞定了,但是这样的话pathdelay是不是会fail?
发表于 2023-12-21 16:47:59 | 显示全部楼层


蕾兹曼 发表于 2023-12-21 16:19
目前用着加中间线assign延迟搞定了,但是这样的话pathdelay是不是会fail?


综合完的网表不好说,可能你们这个地方的设计有问题,导致dft插链变成这个样子了。

但是按照我对reg一拍一拍的理解数字后端不会有这个问题。
 楼主| 发表于 2023-12-22 10:19:07 | 显示全部楼层


莫名晴天 发表于 2023-12-21 16:47
综合完的网表不好说,可能你们这个地方的设计有问题,导致dft插链变成这个样子了。

但是按照我对reg一拍 ...


公司前辈说实际电路因为有时序约束,不会出现这种情况,所以目前的assign延迟只是作为pattern的pass手段,感谢
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

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

×

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

GMT+8, 2024-5-2 23:25 , Processed in 0.037598 second(s), 7 queries , Gzip On, Redis On.

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