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

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

手机号码,快捷登录

手机号码,快捷登录

找回密码

  登录   注册  

快捷导航
搜帖子
查看: 2154|回复: 12

[求助] I2C 配置寄存器做scan mode信号

[复制链接]
发表于 2023-2-3 11:35:29 | 显示全部楼层 |阅读模式
500资产
设计使用I2C 配置寄存器做scan mode 信号,在进行ATPG时 spf 文件中的test_setup过程 请问该如何写,求助各位大神 ,波形如下  上面是sda 下面是scl

                               
登录/注册后可看大图

最佳答案

查看完整内容

波形造的不对,建议仔细观察spf中一个v{}相当于波形中哪一段,找到规律后才能正确创造波形。
发表于 2023-2-3 11:35:30 | 显示全部楼层


小飞侠david 发表于 2023-2-6 15:58
上面第3个问题 ;set_build -instance_modify {scan_mode_reg TIE1} 设置的


波形造的不对,建议仔细观察spf中一个v{}相当于波形中哪一段,找到规律后才能正确创造波形。
发表于 2023-2-3 16:19:31 | 显示全部楼层
在test_setup中 一个cycle一个cycle的创造波形,例如:
v{ "scl" =1;"sda"=1; }
v{ "scl" =1;"sda"=0; }
.........
注意,一个v{ }相当于波形中scl的1/4,这样才方便造波形,还要注意错位,否则后仿scan mode可能起不来。
 楼主| 发表于 2023-2-6 11:55:36 | 显示全部楼层


greatao 发表于 2023-2-3 16:19
在test_setup中 一个cycle一个cycle的创造波形,例如:
v{ "scl" =1;"sda"=1; }
v{ "scl" =1;"sda"=0; }


你好 我按照这样创建后 run_drc  scan chain  trace_cell 显示为0  ,打开gui 显示 那个reg  scan mode 信号还是XXX 状态 没有成功。。。;
请问这个对周期有要求吗?

                               
登录/注册后可看大图


目前我没法 就在set_build 时将这个reg 替换成TIE1,进行的,虽然可以生成pattern 但是导致覆盖率不准确。。。

还有请问是否有其他方法可以处理这种情况的?
发表于 2023-2-6 13:53:40 | 显示全部楼层
1. 周期看你I2C的配置周期,也即是SCL周期
2. 没有进入scan mode说明你没有配置成功,波形造的不对
3. 你是如何将这个reg tie1的?修改网标?
4. 你可以先手动将scan mode reg tie1,然后仿真dump波形,查看I2C配置波形是否正确,为什么scan mode没有起来,反复迭代几次,最后才能配置成功。
 楼主| 发表于 2023-2-6 15:58:10 | 显示全部楼层


greatao 发表于 2023-2-6 13:53
1. 周期看你I2C的配置周期,也即是SCL周期
2. 没有进入scan mode说明你没有配置成功,波形造的不对
3. 你是 ...


上面第3个问题 ;set_build -instance_modify {scan_mode_reg TIE1} 设置的


我使用tmax 查看test_setup 波形 发现的确和我想要的不一样,原因时工具自动把上下两个相同的V合并了,如下图所示:

                               
登录/注册后可看大图



                               
登录/注册后可看大图


请问这如何解决呢
发表于 2023-2-27 16:50:11 | 显示全部楼层


greatao 发表于 2023-2-3 16:19
在test_setup中 一个cycle一个cycle的创造波形,例如:
v{ "scl" =1;"sda"=1; }
v{ "scl" =1;"sda"=0; }


请教下,是不是用修改完的spf,重新产生testbench 来做仿真啊?谢谢了
 楼主| 发表于 2023-2-27 18:13:15 | 显示全部楼层
谢谢回答,虽然我最终还是没成功,I2C配置寄存器 有点小复杂,请问可以使用scan clk  scan reset scan si信号写一个寄存器进行dft_mode信号使用吗,有什么需要注意的么
发表于 2023-2-28 09:24:06 | 显示全部楼层


小飞侠david 发表于 2023-2-27 18:13
谢谢回答,虽然我最终还是没成功,I2C配置寄存器 有点小复杂,请问可以使用scan clk  scan reset scan si信 ...


那你还不如直接找一个端口用于scan_mode控制。
发表于 2023-7-12 15:30:50 | 显示全部楼层


小飞侠david 发表于 2023-2-6 15:58
上面第3个问题 ;set_build -instance_modify {scan_mode_reg TIE1} 设置的


可以用Loop来指定重复次数,避免“上下两个相同的V被合并”的问题。

例如:
Loop 2 {v{ "scl" =1;"sda"=1; }}
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

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


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

GMT+8, 2025-1-8 14:32 , Processed in 0.025702 second(s), 6 queries , Gzip On, Redis On.

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