数字系统测试与可测性设计实验指导书ATPG应用
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
《数字系统测试与可测性设计》
实验指导书(二)
实验教师:
2012年4月9日
I.实验名称和目的
实验名称:ATPG应用
实验目的:了解Mentor公司的FastScan-(ATPG生成工具)业界最杰出的测试向量自动生成工具。了解测试各种基准电路的标准输入格式,运用FastScan工具生成测试向量。深入理解单固定故障模型相关概念。
II.实验前的预习及准备工作:
1、充分理解课堂上学习的故障模型相关概念。
2、Mentor公司的测试相关工具的介绍
缩略语清单:
ATPG :Automatic Test Pattern Generation
ATE :Automated Test Equipment
BIST :Built In Self Test
CUT :Chip/Circuit Under Test
DFT :Design For Testability
DRC :Design Rule Check ing
PI :Primary Input
PO :Primary Output
组合ATPG生成工具FastScan
FastScan是业界最杰出的测试向量自动生成(ATPG)工具,为全扫描IC设计或规整的部分扫描设计生成高质量的测试向量。FastScan支持所有主要的故障类型,它不仅可以对常用的Stuck-at模型生成测试向量,还可针对transition模型生成at-speed测试向量、针对IDDQ模型生成IDDQ测试向量。此外FastScan还可以利用生成的测试向量进行故障仿真和测试覆盖率计算。
另外,FastScan MacroTest模块支持小规模的嵌入模块或存储器的测试向量生成。针对关键时序路径,Fastscan CPA模块可以进行全面的分析。
主要特点:
•支持对全扫描设计和规整的部分扫描设计自动生成高性能、高质量的测试向量;
•提供高效的静态及动态测试向量压缩性能,保证生成的测试向量数量少,质量高;
•支持多种故障模型:stuck-at、toggle、transition、critical path和IDDQ;
•支持多种扫描类型:多扫描时钟电路,门控时钟电路和部分规整的非扫描电路结构;
•支持对包含BIST电路,RAM/ROM和透明Latch的电路结构生成ATPG;
•支持多种测试向量类型:Basic,clock-sequential,RAM-Sequential,clock PO,Multi-load; •利用简易的Procedure文件,可以很方便地与其他测试综合工具集成;
•通过进行超过140条基于仿真的测试设计规则检查,保证高质量的测试向量生成;•FastScan CPA选项支持at-speed测试用的路径延迟测试向量生成;
•FastScan MacroTest 选项支持小规模的嵌入模块或存储器的测试向量生成;
•FastScanDiagnostics 选项可以通过分析ATE 机上失败的测试向量来帮助定位芯片上的故障;
•ASICVector Interfaces 选项可以针对不同的ASIC 工艺与测试仪来生成测试向量; 最新的ATPG Accelerator 技术可以支持多CPU 分布式运算;
•智能的 ATPG 专家技术简单易用,用户即使不懂ATPG ,也能够由工具自动生成高质量的测试向量;
•支持32位或64位的UNIX 平台(Solaris,HP-PA)及LINUX 操作平台;
FastScan 的A TPG 流程
由上图可知,在启动FastScan 时,FastScan 首先读入、解释并检查门级网表和一个DFT 库。如果遇到问题,FastScan 会退出并发布一个消息。如果没有遇到问题,FastScan 直接进入到配置(Setup)模式。在配置模式,可以使用交互方式或者使用Dofile 批处理方式,来建立关于电路和扫描的基本信息,以及指定在设计展平(flattening)阶段时影响生成仿真模型的条件。完成所有配置后,退出配置模式就直接进入到DRC 检查阶段,进行DRC 检查。如果检查通过,那么直接进入到A TPG 模式。进入A TPG 模式后由上图可看出,有四个过程:生成错误列表,生成测试模式,压缩测试模式和储存测试向量。
FastScan 的输入需要以下几个文件:带Scan chain
的电路网表,库描述文件
和FastScan的三个控制文件(*.dofile,*.testproc,Timplate),下面分别进行详细解释。
1.电路网表(*.v)
已经带有扫描链的Verilog格式的网表。
2.库描述文件(fs_lib)
用于连接厂家提供的Mentor模型库。
3.timeplate文件
timeplate文件描述了ATPG向量中各时间点(输入跳变点,输出取样点,时钟沿位置,周期等) timescale 和测试过程文件(procedure file)文件名,可以根据需要加以修改。
FastScan是以事件为基础的。其时序模型是基于以测试周期划分事件的,主要包含了下列一些事件:
force_pi:对PI(Primary Input)输入值。
measure_po:测量PO(Primary Output)的输出值。
capture_clock_on:把捕获时钟打开。
capture_clock_off:把捕获时钟关闭。
ram_clock_on:把用于读写RAM的时钟打开。
ram_clock_off:把用于读写RAM的时钟关闭。
其基本格式如下:
timeplate “timeplate_nam e”=
timeplate_statemen t;...
end;
以下是一个实例:
// Example Timeplare
// 指定了以后所有的时间单位为纳秒(ns),刻度为1,这一步是必须的。
set time scale 1nS;
// 指定采样(strobe)窗口的宽度为1,由于前面定义了时间刻度为1ns,所以strobe 窗口实际宽度为1ns
set strobe_window time 1;
// 定义了名字为tp0的timeplate文件
timeplate "tp0" =
// 定义了在0时刻对PI输入
force_pi 0;
// 定义了在80时刻对PO采样
measure_po 80;
// 定义了在100时刻把捕获时钟打开
capture_clock_on 100;