Mentor-dft 学习笔记 day40-Basic Test Data Formats for Patterns

news2024/11/29 2:36:40
Reduce Serial Loading Simulation Time with Sampling
使用write_patterns命令时,可以使用-sample开关保存完整pattern集的样本。这将减少pattern文件中的pattern数量,从而减少模拟时间。此外,-Sample开关允许您控制样本中包含的每种类型的pattern数量。通过改变样本pattern的数量,可以微调串行模式的文件大小和模拟时间之间的权衡。
使用并行加载执行初始验证后,可以使用采样pattern集模拟串行加载,直到满意测试覆盖率合理接近所需规范。然后,使用未采样pattern集执行一次系列加载模拟,作为最后一个验证步骤。
Test Pattern Data Support for IDDQ
为了获得最佳结果,如果在每个非扫描周期后都捕获到额外的IDDQ故障,则应测量电流。但是,您只能在测试模式序列中的特定位置测量电流,通常是在测试循环边界的末尾。为了确定何时可以进行IDDQ电流测量,pattern文件在适当的位置添加以下命令:
measure IDDQ ALL;
几种测试pattern数据格式支持IDDQ测试。TDL 91(德州仪器)、MITDL(三菱)、TSTL2(东芝)和FTDL _E(富士通)中有特殊的IDDQ测量结构。这些工具将这些构造添加到测试数据文件中。所有其他格式(WGL和Verilog)将这些声明表示为注释。
Basic Test Data Formats for Patterns
Text Format
这是运行write_patterns命令时工具生成的默认格式。除了WGL、STIL和二进制格式外,该工具还可以以这种格式进行读取。 此格式包含基于文本的并行格式的测试pattern数据以及pattern边界规范。主模式块调用适当的测试过程,而标头包含测试覆盖率统计信息和必要的环境变量设置。该格式还包含每个扫描测试过程,以及关于设计中每个扫描存储元件的信息。 要创建基本文本格式文件,请在应用程序命令行输入以下内容:
ANALYSIS> write_patterns filename -ascii
Comparing the Text Format with Other Test Data Formats
许多情况下,可能会发现将模拟或测试数据格式的内容与文本格式的内容进行比较以便于调试。本节提供了此任务所需的详细信息。 通常,测试集中的第一个周期执行某些任务。所有测试数据格式的第一个测试周期关闭所有时钟引脚上的时钟,驱动所有双向引脚上的Z,驱动所有其他输入引脚上的X,并禁用任何主输出引脚上的测量。 测试pattern 集可以包含两个主要部分:用于检测扫描链中故障的链测试块,以及用于检测其他系统故障的扫描测试或循环测试块。
The Chain Test Block
链测试应用test_setup过程,然后是加载扫描链的load_unload过程,然后再次应用load_unlead过程卸载扫描链。每个load_unload过程依次调用shift过程。此操作通常会将重复模式“0011”加载到链中。但是,如果存在少于四个单元的扫描链,则操作加载和卸载一个重复的“01”模式,然后加载一个重复“10”模式。此外,当组中的多个扫描链共享公共扫描输入引脚时,链测试过程分别加载和卸载具有重复pattern的每个扫描链,以顺序测试它们。 测试过程文件在指定时间应用测试过程中的每个事件。每个测试程序对应于一个或多个测试循环。每个测试程序可以有一个具有不同定时定义的测试周期。默认情况下,所有事件都使用1纳秒的时间刻度。
The Scan Test Block
pattern 集中的扫描测试块从应用test_setup过程开始。扫描测试块包含多个测试模式,每个测试模式通常应用加载卸载程序,强制主输入,测量主输出,并脉冲捕获时钟。

load_unload过程转换为一个或多个测试周期。模式中的force、测量和时钟脉冲事件转换为ATPG生成的捕获周期。每个事件在测试周期内都有一个序列号。序列号的默认时间刻度为1 ns。当前pattern的扫描链的卸载与下一pattern的扫描链条的加载同时发生。因此,测试集中的最后一个模式包含load_unload序列的额外应用程序。更复杂的扫描样式(例如,像LSSD)在模式中使用master_observe和skked_load过程。对于具有顺序控制器的设计,如边界扫描设计,每个测试过程中可能有几个测试周期来操作顺序扫描控制器。

一些pattern类型(例如,RAM顺序和时钟顺序类型)比基本pattern更复杂。RAM顺序pattern涉及扫描链的多个负载和RAM写入时钟的多个应用。时钟序列pattern涉及加载扫描链之后的多个捕获周期。另一种特殊类型的模式是clock_po模式。在这些模式中,时钟可以在整个测试周期中保持有效,而不应用捕获时钟。如果测试数据格式仅支持单个定时定义,则该工具无法在一个pattern集中同时保存clock_po和nonlock_po模式。这是因为tester不能再现一个满足两种pattern要求的时钟波形。每种模式类型(combinational、clock_po、ram_sequential和clock_sequentil)都可以有单独的时序定义。

General Considerations
在测试过程中,可能会留下许多未指定的引脚。未指定的主输入引脚保持其先前的状态。 所有测试数据格式都包含注释行,用于指示每个测试块和每个测试模式的开始。可以使用这些注释将文本格式的测试数据与其他测试数据格式相关联。 这些注释行还包含循环计数和循环计数,这有助于将测试器pattern数据与原始测试pattern数据相关联。循环计数表示测试循环的数量,换档顺序计数为一个循环。循环计数表示所有测试循环的数量,包括换档循环。如果tester有单独的扫描模式内存缓冲区,则循环计数很有用,否则循环计数更相关。
Binary
此格式包含二进制并行格式的测试模式数据,这是工具可以读取的唯一格式(文本格式除外)。以这种格式生成的文件包含与文本格式相同的信息,但使用的是压缩格式。您应该将这种格式用于存档目的,或者用于存储大型设计的中间结果。

要创建二进制格式文件,请输入以下命令:

ANALYSIS> write_patterns filename -binary

Verilog
该格式包含Verilog和Verifault模拟器可读的基于文本格式的测试模式数据和时序信息。该格式还支持扫描单元的串行和并行加载。Verilog格式支持所有Tessend Shell定时定义,因为Verilog刺激是一系列定时事件。 要生成基本Verilog格式的测试pattern文件,请在write_patterns命令中使用以下参数:
write_patterns filename [-Parallel | -Serial] -Verilog
Verilog模式文件包含应用测试模式、将预期输出与模拟输出进行比较以及打印包含失败比较信息的报告的步骤。 这些工具将所有模式和比较函数写入一个主文件(文件名),而将主要输出名称写入另一个文件(文件名称.po.name)。如果选择并行加载,它们还会将每个扫描链的每个扫描子链的扫描输出引脚的名称写入单独的文件中(例如,filename.thain1.name)。这允许工具报告预期输出和模拟输出之间存在差异的输出引脚。
Wave Generation Language (ASCII)
波形生成语言(WGL)格式包含基于结构化文本格式的测试模式数据和时序信息。可以将此格式转换为各种模拟和测试环境,但必须首先将其读入波形数据库并使用适当的转换器。此格式支持扫描单元的串行和并行加载。

一些测试数据流通过将WGL转换为激励和响应文件来验证pattern。有时,这种转换过程使用自己的并行加载方案,称为内存到内存映射,用于扫描模拟。在该方案中ATPG模型中的扫描存储元件必须与仿真模型中的相应存储元件具有相同的名称。由于这种并行加载方案的局限性,您应该确保:每个DFT库模型(也称为扫描子链)只有一个扫描单元,以及所有扫描单元的扫描输入和扫描输出引脚名称相同。要生成基本的WGL格式测试模式文件,请在write_patterns命令中使用以下参数:

write_patterns filename [-Parallel | -Serial] -Wgl
Standard Test Interface Language (STIL)
要生成STIL格式的测试pattern文件,请在write_patterns命令中使用以下参数:
write_patterns filename [-Parallel | -Serial] -STIL
ASIC Vendor Data Formats
ASIC供应商的测试数据格式包括 TDL 91、 FTDL-E、三菱MITDL和东芝TSTL2。ASIC供应商的芯片测试人员使用这些格式。 所有ASIC供应商数据格式都是基于文本的,并以并行方式将数据加载到扫描单元中。此外,ASIC供应商通常对模式定时施加若干限制。大多数ASIC供应商模式格式仅支持单个定时定义。 

以下小节简要描述了ASIC供应商模式格式。

TI TDL 91
此格式包含基于文本格式的测试pattern数据。该工具支持TDL 91 3.0版和TDL 91 6.0版的功能。3.0版格式支持多个扫描链,但仅允许对所有测试周期进行单个定时定义。因此,所有测试周期必须使用主捕获周期的计时。TI的ASIC施加了额外的限制,即应始终在测试周期结束时进行比较。

要生成基本的TI TDL 91格式测试模式文件,请在write_patterns命令中使用以下参数:

write_patterns filename -TItdl
格式化程序将完整的测试数据写入文件名。它还将链测试写入另一个文件(filename.chain),以便在TI ASIC流期间单独使用。
Fujitsu FTDL-E
This此格式包含基于文本格式的测试pattern数据。FTDL-E格式将测试数据分为测量1或0值的pattern和测量Z值的pattern。测试pattern分为测试块,每个测试块包含64K测试仪循环。
To generate a basic FTDL-E format test pattern file, use the following arguments with the
write_patterns command:
write_patterns filename -Fjtdl
格式化程序将完整的测试数据写入名为filename.fjtdl.func的文件。如果测试模式集包含IDDQ测量值,格式化程序将在名为filename.ftjtl.DC的文件中创建单独的DC参数测试块。
Mitsubishi TDL
This format contains test pattern data in a text-based format.
To generate a basic Mitsubishi Test Description Language (TDL) format test pattern file, use
the following arguments with the write_patterns command:
write_patterns filename -MItdl
格式化程序以并行格式表示所有扫描数据。它将测试数据写入两个文件:

程序文件(filename.td0),其中包含所有引脚定义、定时定义和扫描链定义;以及测试数据文件(filename.td1),其中包含并行格式的实际测试矢量数据。

Toshiba TSTL2
此格式仅包含基于文本格式的测试pattern数据。测试pattern数据文件包含定时信息。此格式支持多个扫描链,但仅允许对所有测试周期进行单个定时定义。TSTL2以并行格式表示所有扫描数据。

要生成基本的Toshiba TSTL2格式测试模式文件,请在write_patterns命令中使用以下参数:

write_patterns filename -TSTL2
The formatter writes the complete test data to the file named filename.
Vector Creation and Modification
Tessent工具提供了一种基于I/O端口或内部引脚状态的布尔操作在pattern集中操作Broadside矢量数据的方法,从而创建新的Broadside数据来保存。

这个新的Broadside矢量数据可能代表工具中不存在的被测设计的新的顶层层次结构。目前,这种操作仅限于Broadside pattern集(如IJTAG pattern集)或使用-串行开关写入的ATPG扫描pattern数据 ,创建Broadside向量时使用write_patterns命令。还可以从任何源创建宽边矢量数据,将数据传递给write_patterns命令,并让工具以pattern格式之一(包括test_setup和test_end过程数据(如果存在))写入矢量数据。当使用向量创建和修改时,术语模式和向量具有如下特定含义:

•pattern-pattern是测试刺激和响应的排列,旨在针对特定项目或故障进行测试。在ATPG中,一个pattern通常由一组扫描加载、一些启动和捕获刺激,然后一次扫描卸载组成。由于它存储在ATPG工具内部,因此pattern还不包含测试向量。也就是说,数据不能作为一组测试向量直接写入测试仪。

•矢量-矢量是一组在一个测试周期内发生的设备端口上的force和期望值。矢量可被处理并加载到测试仪存储器中,并应用于DUT。一组向量可以以表示ATPGpattern的方式进行分组,但pattern不一定由一组向量组成,直到通过write_patterns命令创建向量来表示该模式。

Port List Modification
可以修改用于保存Broadside矢量的端口列表。 创建和修改端口列表时使用以下命令:
get_write_patterns_options
report_write_patterns_options
set_write_patterns_options
这些命令可用于限制工具仅使用现有设计端口的子集来写入pattern,或用于添加加载到工具中的设计数据中不存在的其他顶级端口。无论端口列表如何修改,完整的端口集、force值和期望值仍将可用于传递给向量回调进程。

例如,Tcl向量回调过程可以使用Broadside向量中的一组完整的force和期望值来创建新的force和预期值,然后这些值只应用于端口子集。这些命令将能够创建一组要使用的端口,删除现有的端口,报告现有的端口集,并内省要使用的一组端口。

Vector Data Callbacks
使用回调过程,可以通过编程方式修改force 和期望来改变Broadside向量数据中的端口值。
Vector Data Callback Procs
另一组命令选项用于启用可以应用于所有Broadside向量的Tcl回调过程。只能在写入串行扫描pattern或其他没有并行加载扫描数据的pattern集(如IJTAG模式)时使用此选项。这些回调

proc被插入到writepatterns命令的数据流中。write_patterns命令从工具的内部pattern存储中获取指定的pattern集,并对其进行处理或将其扩展为一组Broadside测试向量,一次一个pattern。然后写入正确的模式文件格式。回调在测试向量创建之后和写入之前插入到这个流中,允许在将它们写入pattern文件之前对其进行修改。在写入修改后的向量的过程中,write_patterns命令用N值向前填充任何输入端口,该值为该端口上先前向量的最后一个强制值。因此,如果回调进程在输入端口上放置了一个N,如果之前的任何向量在该端口上强制了一个已知值,那么它将被替换为一个已知的值(0或1)。如果该端口不是在过程中或被写入的模式集中的数据显式强制的,那么传递给回调进程的向量也可能在输入端口具有一个N值。Tcl procs可以在dofile中、在命令提示符下或从外部文件中定义。在使用命令将Tcl proc添加为向量回调proc之前,必须定义Tcl proc。

这些回调将从write_patterns命令中传递一个向量集,该向量集包含完整端口和管脚集或可选指定的端口和管头集上的强制值和预期值。回调将返回一个向量集,该向量集包含所有端口和管脚的新force和期望值,或可选指定的端口和管头的缩减集。回调还可以返回一个空向量集,或者一个包含多个向量的向量集,乘以传递给它的向量数。write_patterns命令将使用返回的向量当它将向量写入pattern文件时,用set代替传递的值。当回调返回一个空向量集时,这表示不会为传递给回调的向量写入向量。因此,回调可以从要写入的向量列表中删除向量。例如,到的Tcl回调看起来类似于以下内容:

proc myCallback { receivedVecSet } {
# code here to create returnedVecSet from receivedVecSet
return $returnedVecSet
}
回调过程将由Tcl interpreter以仅允许introspection commands 模式执行。

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/85313.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

回归预测 | MATLAB实现WOA-BiLSTM鲸鱼算法优化双向长短期记忆神经网络多输入单输出航空寿命数据回归预测

✅作者简介:热爱科研的Matlab仿真开发者,修心和技术同步精进,matlab项目合作可私信。 🍎个人主页:Matlab科研工作室 🍊个人信条:格物致知。 更多Matlab仿真内容点击👇 智能优化算法 …

ADI Blackfin DSP处理器-BF533的开发详解48:图像处理专题-Rotation (图像旋转处理)(含源码)

硬件准备 ADSP-EDU-BF533:BF533开发板 AD-HP530ICE:ADI DSP仿真器 软件准备 Visual DSP软件 硬件链接 功能介绍 代码实现了图像旋转处理,代码运行时,会通过文件系统打开工程文件根目下" …/ImageView"路径中的 tes…

【OpenCV-Python】教程:5-1 背景减法

OpenCV Python 背景减法 【目标】 读视频与显示视频创建背景模型与更新背景模型 【概述】 背景相减(BS)是一种常用且广泛使用的技术,用于通过使用静态相机来生成前景掩模(即,包含属于场景中运动对象的像素的二值图…

UEFI固件使用OpenSSL暴露了软件材料清单(SBOM)

Binarly REsearch团队近日深入研究了最近的OpenSSL安全更新给UEFI固件供应链生态系统带来怎样的影响以及OpenSSL版本在固件环境中是如何广泛使用的。研究结果不容乐观。 科技行业正在积极讨论使用“软件材料清单”(SBOM)来化解供应链安全风险。为了确保…

前端面试常考 | js闭包

文章目录一. 闭包1. 介绍闭包2. 闭包的作用3. 闭包与变量二. 闭包引起的内存泄漏1. 闭包是如何引起内存泄漏的2. 如何解决闭包引起的内存泄漏三. 最后一. 闭包 1. 介绍闭包 有不少开发人员总是搞不清楚匿名函数与闭包两个概念,因此经常混用。同时闭包也是我们前端…

我见过最好的天线基础知识

天线作为无线电的发射和接收设备是影响信号强度和质量的重要设备,其在移动通信领域的重要性非常关键。通过对天线选型,天 线安装,天线调整从而保障基站覆盖区域的信号强度与质量。对其的 掌握程度是网规与网优工程师的技能基本要求之一。下文重点说明天线要掌握哪些方面及其原理…

版本控制 | 如何将 UnrealGameSync 与 Perforce Helix Core 结合使用

为了帮助虚幻引擎4和虚幻引擎5的开发,Epic公司开发了UnrealGameSync,使其与版本控制工具Perforce Helix Core交互。虽然UnrealGameSync除了P4V (Helix Core客户端)之外还有许多功能,但主要用途是分发内部引擎和项目构建,它极大地简…

springboot+vue

一、案例结构 用springboot做后端接口,采用restful风格。用vue-cli来创建前端项目,通过axios进行前后端交互。来实现用户的增删改查操作。二、效果图 点击修改: 点击添加: 三、服务器端 控制层代码: package com.ex…

【Tryhackme】dogcat(LFI+文件解析漏洞,Docker逃逸)

免责声明 本文渗透的主机经过合法授权。本文使用的工具和方法仅限学习交流使用,请不要将文中使用的工具和渗透思路用于任何非法用途,对此产生的一切后果,本人不承担任何责任,也不对造成的任何误用或损害负责。 服务发现 ┌──(r…

CentOS7.4安装教程

CentOS7.4安装教程: centos系统自行网上查找链接下载,我使用的是最小安装版本,搞服务器用 1、进入操作系统,选择第一项进行安装: 2、耐心等待,直到弹出这个界面: 3、下拉选择中文&#xf…

磷脂-荧光素标记DSPE-FITC磷脂改性荧光素

磷脂-荧光素标记DSPE-FITC磷脂改性荧光素 中文名称:荧光素标记二硬脂酰磷脂酰乙醇胺 中文别称:磷脂-荧光素标记;二硬脂酰磷脂酰乙醇胺改性荧光素 英文名称:18:0 PE Fluorescein 英文别称:DSPE-FITC 外观&#xff1a…

开发人员的绝佳生产力工具

介绍 从长远来看,每天工作 8 小时对您没有帮助,但利用这些来最大化产出肯定会让您受益。这就是为什么生产力是最重要的事情之一。 今天,我们将学习一些很棒的工具,它们可以提高您的工作效率。除非并且直到您将这些工具集成到您的…

【Lilishop商城】No3-7.模块详细设计,订单模块-1(购物车、收银台)的详细设计

仅涉及后端,全部目录看顶部专栏,代码、文档、接口路径在: 【Lilishop商城】记录一下B2B2C商城系统学习笔记~_清晨敲代码的博客-CSDN博客 全篇会结合业务介绍重点设计逻辑,其中重点包括接口类、业务类,具体的结合源代…

【TECH SCIENCE PRESS出版社】2区SCI,仅3个月左右录用,数字孪生、绿色技术、供应链、人工智能物联网、智能传感器相关领域均可

【出版社】TECH SCIENCE PRESS 【期刊简介】IF:3.5-4.0,JCR2区,中科院3区 【检索情况】SCI&EI双检,正刊 【参考周期】3个月左右 【征稿领域】 ①数字孪生在智能医疗系统中的应用(2023.3.25截稿) …

NetInside助力IT提高业务性能管理能力(一)

需求简介 某外高桥公司的OA系统是其重要的业务系统,OA系统负责人表示,部分用户反馈,访问OA系统时比较慢。需要通过分析系统看一下实际情况。 信息部已对企业领导定义了独立的组,本次要主动分析领导们的使用体验快慢。如果OA系统…

一个带详细程序和注释的实例,手把手带你学会用BP神经网络做预测

目录 1.问题描述 1.1问题剖析 2.实现程序 2.1运行结果 2.3总结 3.预测 3.1输出结果 4.预测理解 1.问题描述 某运输系统连续9年货运量的有关数据如表2-10所示。根据对关于货运量影响因素的分析,这里分别取国内生产总值GDP、工业总产值、铁路运输线路长度、复线…

使用vue-easytable实现仿excel表格,支持可编辑、添加删除行、虚拟表格等功能

使用npm安装vue-easytable npm install --save vue-easytable 在 main.js 中写入以下内容: // 引入样式 import "vue-easytable/libs/theme-default/index.css"; // 引入组件库 import VueEasytable from "vue-easytable"; Vue.use(VueEasyt…

ADI Blackfin DSP处理器-BF533的开发详解49:图像处理专题-Bright (图像亮暗处理)(含源码)

硬件准备 ADSP-EDU-BF533:BF533开发板 AD-HP530ICE:ADI DSP仿真器 软件准备 Visual DSP软件 硬件链接 功能介绍 代码实现了图像亮暗处理,代码运行时,会通过文件系统打开工程文件根目下" …/ImageView"路径中的 tes…

[附源码]Node.js计算机毕业设计电子市场计算机配件报价系统Express

项目运行 环境配置: Node.js最新版 Vscode Mysql5.7 HBuilderXNavicat11Vue。 项目技术: Express框架 Node.js Vue 等等组成,B/S模式 Vscode管理前后端分离等等。 环境需要 1.运行环境:最好是Nodejs最新版,我…

聚焦人机交互智能应用领域,APISIX 在希沃网关的应用与实践

分享嘉宾简海清,视源股份运维负责人。 视源股份(CVTE)自成立以来,依托在音视频技术、人机交互、应用开发、系统集成等电子产品领域的软硬件技术积累,建立了教育数字化工具及服务提供商希沃(seewo&#xff0…