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

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

手机号码,快捷登录

手机号码,快捷登录

找回密码

  登录   注册  

快捷导航
搜帖子
查看: 22941|回复: 29

[求助] DFTC的脚本命令

[复制链接]
发表于 2012-1-15 21:21:49 | 显示全部楼层 |阅读模式
80资产
本帖最后由 fl_5588 于 2012-1-15 21:26 编辑

我是采用unmapped方法,读入RTL来做DFT。clk与ret_n是RTL中的时钟与复位信号。
########
set_dft_signal -view existing_dft -type ScanClock
-port clk   -timing {1 8.5}


set_dft_signal -view existing_dft -type Reset
-port rst_n -active_state 0


set_dft_signal -view spec -type ScanEnable
-port se
-active_state 1


create_test_protocol
######
1、如果这样写是对的话,为啥clk与rst_n用属性existing_dft ,而se用属性spec呢?DFTC的手册这样写的
Use the  set_dft_signal -view existing_dft command if the ports in your design are already connected and no connection is to be made by DFT Compiler.
Use the set_dft_signal -view spec command if the connections do not exist in your design and you expect DFT Compiler to make the connections for you.

没怎么看懂,第一次接触这些东西。
2、create_test_protocol -infer_clock \
              -infer_async                                     这个命令是DFTC手册给出的,但是网上有高人说不要这样,不知何原因。

3、 能帮忙解释一下这两条命令吗
    set test_default_strobe       90            
    set test_default_period       100

新手见笑了。谢谢大家的帮助。

最佳答案

查看完整内容

1、set_dft_signal 后面还有个-type属性,clk与rst_n是rtl设计中已经存在并且定义的属性与-type属性一致,所以用existing_dft;se是使用 compile -scan 脚本把一般寄存器换成扫描寄存器的时候添加的新的接口,rtl中没有定义它是ScanEnable属性,新赋予它-type ScanEnable,所以用spec。 2、不晓得是哪个高手说的,希望给个链接!我也学习下。 3、设置缺省测试选通时间 设置缺省测试周期 我也是新手!我的理解如上,请楼主参考 ...
发表于 2012-1-15 21:21:50 | 显示全部楼层
1、set_dft_signal 后面还有个-type属性,clk与rst_n是rtl设计中已经存在并且定义的属性与-type属性一致,所以用existing_dft;se是使用 compile -scan 脚本把一般寄存器换成扫描寄存器的时候添加的新的接口,rtl中没有定义它是ScanEnable属性,新赋予它-type ScanEnable,所以用spec
2、不晓得是哪个高手说的,希望给个链接!我也学习下。
3、设置缺省测试选通时间
    设置缺省测试周期

我也是新手!我的理解如上,请楼主参考!
发表于 2012-2-3 17:18:05 | 显示全部楼层
这是synopsys官网的一段问答!
Reusing '-view existing_dft' as '-view spec' for set_dft_signal
Question:

In DFT Compiler, I have defined the scan_in and scan_out ports by using the
'set_dft_signal -view existing_dft' command.

Why are these ports being used for insert_dft?
Answer:


This is done to make the scan reordering flow in Physical Compiler simpler.
Now, you do not need to use the following commands to redefine the same
scan_in and scan_out ports :
'set_dft_signal -view existing_dft' (for DRC purposes)
'set_dft_signal -view spec' (for inserting scan structures)

For the scan reordering flow in Physical Compiler, you read in a scan stitched
netlist.You use the descriptive view i.e the '-view existing' option to
declare all the existing DFT signals and also to define a scan path.
This is followed by the 'create_test_protocol' and 'dft_drc' commands to extract
the scan chain information.
You can run the 'report_scan_path' command to verify the scan chains.

The reordering then takes place based on placement. You run insert_dft (-physical)
which automatically reuses the extracted scan chain information
(i.e. reusing "existing_dft" as "spec").
Hence, you do not have to re-specify the scan_in and scan_out ports with
the '-view spec'option.

A sample script for the extraction would be:
# Read in the netlist
read_verilog SRC/RISC_CORE.v
link
current_design RISC_CORE

# Define the scan chains  
set_scan_configuration -style multiplexed_flip_flop   
set_dft_signal -view existing_dft -type ScanDataIn -port TEST_SI   
set_dft_signal -view existing_dft -type ScanDataOut -port TEST_SO   
set_dft_signal -view existing_dft -type ScanEnable -port TEST_SE   
set_scan_path chain1 -view existing_dft -scan_data_in TEST_SI -scan_data_out TEST_SO   

# Define the test signals
set_dft_signal -view existing_dft -type ScanClock -port CLK -timing [list 45 55]
set_dft_signal -view existing_dft -type Reset -port RESETN -active_state 0   

# Extract scan chains   
create_test_protocol
dft_drc   
report_scan_path -view existing_dft -chain all
report_scan_path -view existing_dft -cell all

For the reordering in Physical Compiler, in addition to the above you would
require the following commands:
preview_dft -physical
insert_dft -physical
dft_drc
发表于 2012-2-3 17:20:28 | 显示全部楼层
这是synopsys官网的一段问答,楼主自己参考! existing_dft&view spec.doc (24.5 KB, 下载次数: 170 )
 楼主| 发表于 2012-2-6 09:57:55 | 显示全部楼层
回复 4# lsqswl


    谢谢楼上回答。
   1、什么是选通时间?测试周期呢?
   2、这段话出自用户手册。 DFT Compiler Scan User Guide.pdf (6.08 MB, 下载次数: 628 )
   3、现在我理解existing_dft就是已经在RTL中有连线的信号,而spec是空端口,用来留给插入链使用的。
  THX
发表于 2012-2-6 13:06:33 | 显示全部楼层
两种strobe协议:一种是strobe_after_clock,一种是strobe_before_clock。默认是strobe_after_clock的。
test_default_strobe:定义探测点的位置
test_default_period:定义测试周期,如果测试仪和被测芯片允许,可以设更小的值,默认是100ns

这两个值都没有改过,一般都采用默认,貌似跟ATE有关系!就这些信息了,我也不知道具体怎么理解它,楼主怎么理解的可以讨论一下。
 楼主| 发表于 2012-2-7 09:49:12 | 显示全部楼层
回复 6# lsqswl


    1、是不是这样的。探测点的位置好比于从什么时间开始探测。探测周期是一个探测循环持续时间。瞎猜的。
    2、master clk 与 slave clk这两个是什么呀?
    非常感谢。
 楼主| 发表于 2012-2-28 18:38:44 | 显示全部楼层
回复 6# lsqswl


    知道strobe是什么了。在ATE中,测试激励加入到待测芯片后产生的输出与ATPG的结果通过异或门输出,strobe就是负责控制采集这个异或门输出结果的信号。
    你的qq是多少,互相讨论下。
发表于 2012-4-26 14:22:35 | 显示全部楼层
正在研究中,很需要命令的资料~感谢~
发表于 2012-5-23 11:04:32 | 显示全部楼层
同问啊  常值cell如何处理啊
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

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

×

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

GMT+8, 2024-4-19 22:40 , Processed in 0.040608 second(s), 10 queries , Gzip On, Redis On.

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