alphavor_jay的个人空间 https://blog.eetop.cn/840234 [收藏] [复制] [分享] [RSS]

空间首页 动态 记录 日志 相册 主题 分享 留言板 个人资料

日志

Tips For TetraMax(ATPG software from Synopsys)

热度 4已有 17723 次阅读| 2012-7-16 22:30 |个人分类:TetraMax

1. Synopsys TetraMax(Mentor对应的为Fastscan)简介:
TetraMAX是一个高速、高性能的自动测试激励产生工具(ATPG automatic test pattern generation),它能产生最大测试覆盖的测试激励,同时使用最 少的测试向量,可以应用了范围广泛的设计类型和设计流图,也适用于百万门级设计。这是 Synopsys 公司的测试工具,它可以和很多 EDA 工具一起来完成测试 工作。TetraMAX 具有以下几个主要的 ATPG 能力: 
a) 能够读入以verilog、VHDL 和 EDIF格式的设计网表和 STIL 格式的 测试协议信息
b) 能够生成各种标准和非标准的测试激励文件:WGL、STIL、VHDL、Fujitsu TDL、TI TDL91、Toshiba TSTL2
c) 提供 ATPG 模式的选择:Basic-scan ATPG、Fast-sequential ATPG、 full-sequential ATPG
d) 支持以下的 design-for-test(DFT)类型: 
   Various scan flip-flop types (multiplexed flip-flop, master, slave,transparent latch, and so on); 
   Internal, nondecoded three-state buses 
   Bus keepers 
   RAM and ROM models 
   Proprietary and standard test controllers (such as IEEE 1149.1-compliant boundary scan) 
e) 产生和验证 ATPG 激励, 避免 bus contention 和 float conditions
f) 提供交互式的分析和调试工具 GSV graphical schematic viewer) 
g) 提供连接verilog和VHDL仿真器
h) 提供一个整合的故障仿真器支持功能激励的故障仿真
i) 能够运行direct automated test equipment(ATE)诊断,允许你快速定位设计中的故障位置产生的测试错误

TetraMAX 的测试激励产生支持五种类型的故障模式
a) Stuck-at faults:是测试激励产生的标准模式
b) IDDQ faults
c) Transition delay faults
d) Path delay faults
e) Bridging faults
f) TetraMAX 可以兼容大量的design-for-test工具 

TetraMAX 可以兼容大量的design-for-test工具象DFT compiler。使用了DFT CompilerTetraMAX ATPG的设计流程简便并且结果有质量保证

2. TetraMax安装:
论坛上的2010sp2环境变量设置为:
set path = ( /usr/synopsys/tx_vD-2010.03-SP2/bin $path )
set path = ( /usr/synopsys/tx_vD-2010.03-SP2/linux/syn/bin $path )
用命令tmaxgui就可以启动图形界面。

tmaxgui在/usr/synopsys/tx_vD-2010.03-SP2/linux/syn/bin 中,打开/bin下tmax看看就知道了,tmax指定tmaxgui的,不能启动是因为论坛上那个版本没有tmax kernel造成tmax启动失败的。所以直接启动tmaxgui就可以了。

直接启动tmaxgui是可以启动图形界面,但点击什么都没有反应。我看了一下,在DC2010.03和ICC2010.03的amd64/syn/bin/下面都有tmaxgui、tamx32、tmax64这三个文件,从而可知,tmaxgui只是个图形界面程序,而不是可以使用的tetramax,还是按照某位老兄说的,要么把2010的tetramax安装在DC的目录下,要么就使用tetrmax single这个版本,才能使用。

3. ATPG脚本范例:
这是网上某位大虾做的一款CPU流片测试时所写的TetraMAX生成测试激励的教本,仅共参考!

//读入网表文件
read netlist smic/lib/*.v
read netlist map/netlist.v

set build -black_box r128x21
set build -black_box r128x22
set build -black_box r256x128_1
set build -black_box dualram128
set build -black_boxS018PLLGS_500  
run build_model ppc_top_PAD
 
 
add pi constraint 1 PAD_rst_n
add pi constraint 1 PAD_trst_n
add pi constraint 0 PAD_tms
//add pi constraint 0 PAD_tck
 
set drc map/750.spf

//开始测试DRC
run drc
report rules -fail
report nonscan cells -summary
report bus -summary
report feedback paths -summary

//
set atpg -abort 50 -pat 1500 -mergehigh

//ATPG准备 
//add nofaults here for enhance faults converage
add faults -all

//运行ATPG 
run atpg -auto
//run atpg basic_scan_only
//run atpg fast_sequential_only
//run atpg full_sequential_only

//
report summaries
analyze faults -class an
report summaries
report faults -level 5 64 -class au -collapse -verbose

//保存故障列表 
write patterns ./dft/pattern_dft.v -formatVERILOG_Single_file -serial -replace
write patterns ./dft/pattern_dft.wgl-format WGL -serial -replace

4. ATPG流程分析:
1. 读入网表文件
   可以使用图形界面设置,或者是命令行设置,具体设置参数见帮助文档。网表文件类型可以是标准ASCII格式或是GZIP(一般UNIX的压缩格式), TetraMAX在读文件前自动检测压缩文件并解压缩。设计中如果有多个文件,可以多次使用readnetlist命令依次读入文件,同样可以使用通配符(如:./sim/*.v)来代替多个文件,如:BUILD>read netlist/proj1234/shared_verilog/*.v–noabort。当网表文件已经读入了,要想重新读入网表文件,需要使用命令 Readnetlist –delete或者Read netlist filename–delete先清除已有的文件。
 
2. 构造ATPG模式
   使设计中的各个部分成为TetraMAX过程的一部分,所作工作是删除层次,把它们放入TetraMAX可以使用的内存映象中。同样可以使用图形界面或是命令行runbuild_model。
 
3. 执行设计规则检查
   这是最重要的一步。DRC(Design RuleChecking)检查包括:
扫描链输入输出是否逻辑连接 
是否时钟和异步set/reset针与扫描链翻转的连接由唯一的输入端口控制 
是否当从正常模式切换到扫描变换模式时,时钟/set/reset是off
   
  TetraMAX完成这些DRC检查,你应该提供以下信息:时钟端口,扫描链以及其他控制信息,这些都在STILtest protocol file(.SPF)中给出.这个文件DFTCompiler产生,也可以手动产生这个文件。

4.开始测试DRC
使用命令run drcfilename运行DRC测试。
1)      Review DRC结果
2)      在GSV中显示违背规则
在GSV中可以直观的看到违背的规则(GSV grahpical schematicviewer)。
3)      测试设计规则目录
测试设计规则被分成了10个类别分别为
B (Build rules)
C (Clock rules)
L (LBIST rules)
N (Netlistrules)
P (Path Delayrules)
S (Scan Chainrules)
T (Testerrules)
V (Vectorrules)
X (X-staterules)
Z (Tristaterules)
在线帮助中对每类都有详细的介绍,详见Contents 中的 Error and WarningMessages
TetraMAX提供命令可改变设计规则严重级别(severity)
每个设计规则都有四个严重级别:Ignore、Warning、Error、Fatal。可以使用命令set rules来改变级别。也可以使用命令reprotrules决定规则级别的设定以及已经发生的违反的规则数目。例如:set rules B5 warning
4) DRC执行的详细过程
在执行DRC过程中,TetraMAX做了以下工作:
读.SPF文件收集信息,检查语法和连接(consistency)故障;
完成总线和线网逻辑的连接能力检查;(Z rules)
在SPF中模拟测试过程,看某些情况是否满足要求;
根据定义的测试过程的方向模拟每条扫描链,确保扫描路径对每条扫描链规则来说都是可操作和可靠的。(S rules)
分析所有的时钟和定时设备是否满足ATPG规则。(C rules)
分析所有的不需要扫描的设备;

5. ATPG准备
初始化故障列表,选择pattern source. choosesettings for bus contention checking, and specify the patterngeneration effort.
1)使用命令setfaults设置故障列表
例如:
TEST> add faults –all表示包括所有可能的故障。
TEST> read faultsfault_list_filename表示使用名字为fault_list_filename的故障列表
也可以将一些指定的blocks, instances, gates, orpins排除到故障列表外,使用下面的方法:
TEST> addnofault /sub_block_A/adder
TEST> addnofault /io/demux/alu
TEST> addfaults -all
表示先去除模块adder和alu,再添加故障列表。
2) 删除故障列表使用命令removefaults,例如:
TEST> addfaults -all
TEST>remove faults /sub_block_A/adder
TEST>remove faults /io/demux/alu
指定ATPG设置,例如:DRC> set atpg-patterns 400 -abort_limit 5

6. 运行ATPG
使用命令run atpg –random,首先是Basic-ScanATPG,然后是Fast-SequentialATPG,和Full-SequentialATPG。Run atpg–auto_compression
ü        Basic-Scan ATPG:
有效的,仅适用于组合电路的全扫描模式。为了得到高的测试覆盖率需要使用该测试模式。
ü        Fast-Sequential ATPG
ü        Full-Sequential ATPG

7. ATPG激励压缩
在测试激励合并的基础上还可以进行测试激励的压缩,使用如下命令:
TEST> run pattern_compress 99 2-noverbose

8. ATPG激励压缩
在测试激励合并的基础上还可以进行测试激励的压缩,使用如下命令:
TEST> run pattern_compress 99 2-noverbose

9. 保存故障列表
TetraMAX包含了关于设计中潜在的faults的列表,可以使用命令report faults或者write faults。Report faults表示查看故障列表,而write faults表示将故障列表写入文件。
例如:
TEST> write faults faults.AU -class au–replace。
下面的命令写所有的故障列表:
TEST> write faults filename -all–replace;
下面的命令只写undetectable blocked (UB) and undetectable redundant(UR)故障类型:
TEST> write faults filename -class UB -class UR-replace;

10. 使用脚本文件
   写脚本文件*.tcl完成ATPG操作类似于WINDOWS中的批处理文件。在我们的TETRAMAX环境中采用了脚本运行的方式,所有的上面提到的ATPG流程都写到一个脚本文件中(tmax.tcl)。
4

点赞

刚表态过的朋友 (4 人)

发表评论 评论 (6 个评论)

回复 hungtaowu 2015-3-27 16:47
:loveliness:
回复 heartzhizi 2016-9-28 17:08
你好,请问tetraMax安装以后tmaxgui打开以后没反应解决了吗

facelist

您需要登录后才可以评论 登录 | 注册

  • 关注TA
  • 加好友
  • 联系TA
  • 0

    周排名
  • 0

    月排名
  • 0

    总排名
  • 0

    关注
  • 8

    粉丝
  • 0

    好友
  • 22

    获赞
  • 51

    评论
  • 2656

    访问数
关闭

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

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

GMT+8, 2024-5-5 00:42 , Processed in 0.016963 second(s), 8 queries , Gzip On, Redis On.

eetop公众号 创芯大讲堂 创芯人才网
返回顶部