SMT7快速开始
Getting start以数字芯片为例
概念解析
Testmethod由test method API创建的标准CPP库,包含各种测试过程中使用的函数,是标准CPP语言的拓展 tml=test method lib UTMLUniversal test method library通用tml,由adv创建的通用coding环境
SMT系统目录结构
SMT安装后包含特定子版本配置文件与通用公共配置文件;特定子版本配置文件存储在对应版本的目录中如:
/etc/opt/hp93000/soc_<version>和/var/opt/hp93000/soc_ <version>
通用公共文件存储在:
/etc/opt/hp93000/soc_common和/var/opt/hp93000/soc_common
特定版本配置文件对照表:
Path | Comment |
---|---|
/etc/opt/hp93000/soc_ |
Prober/Handler配置文件随时随需求更改而更改 |
/opt/hp93000/soc_ |
用于equation、规格、波谱表格的编辑器,脚本需要随需求变更而更新 |
/var/opt/hp93000/soc_ |
存储来自Prober/Handler的数据 |
通用版本配置文件对照表:
Path | Comment |
---|---|
/etc/opt/hp93000/soc_common/lbin/ | 低级二进制文件;对于每一个特定版本的可执行文件来说,包含一个指向公共配置文件中对应的链接 |
/etc/opt/hp93000/soc_common/model /etc/opt/hp93000/soc_common/org /etc/opt/hp93000/soc_common/passwd /etc/opt/hp93000/soc_common/ppu_alarms |
这些文件可以在不同版本之间共享。对于列出的每个文件,对应的版本目录中都会有一个指向公共配置文件的链接 |
/var/opt/hp93000/soc_common/calibration | 这些文件可以在不同版本之间共享。当校准文件的格式发生变化时,校准文件可以被多个版本共享 |
/var/opt/hp93000/soc_common/.sif_files | 系统信息文件,对于HP-UX这些文件保留在/var/opt/hp93000/soc中 |
/var/opt/hp93000/soc_common/tracecal /var/opt/hp93000/soc_common/tmp /var/opt/hp93000/soc_common/diagnostic |
数据存储目录,任何版本的SmarTest软件生成的数据文件都将存储在这些公共目录中。对于列出的每个目录,对应版本特定目录中的链接指向公共目录 |
/var/opt/hp93000/soc_common/prog_bug_log /var/opt/hp93000/soc_common/monitor |
这些数据文件是在安装过程中创建的,并且由SmarTest软件的所有版本共享。对于列出的每个文件,相应版本特定目录中的链接指向公共文件 |
定义Pins
使用Pin Configuration tool定义ate系统资源pins与DUT板的互联关系
- 定义device pins与测试机资源之间的连接,使用Digital Pins editor
- 定义sites的数量
- 为device pins分配channel
- 指定DPS工作范围
- 定义Pin Groups,创建utility lines与utility purposes
- 应用引脚配置数据 可以从CSV文件中导入Pin configuration数据而非手动设置
设置Levels
总步骤
- 从顶部导航栏打开93000>SETUP>Levels
- 在弹出界面Select > Edit Equations ,Levels编辑器将被打开,Level配置文件在smt中以代码保存,代码在该界面展示,例:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
EQNSET 1 "OS_PS"
SPECS
Vcoef
Vcore
DVDD075_CORE_AVS_0V75 [V]
DVDD075_PLL_FIX_0V75 [V]
AVDD12_PLL_TS_FIX_1V2 [V]
DPSPINS DVDD075_CORE_AVS
vout = DVDD075_CORE_AVS_0V75*Vcoef*Vcore
vout_frc_rng = 0.75*1.2
ilimit = 20000
iout_clamp_rng = 20000
connect_state = UNGANG
vout_rise_t_ms_per_volt = 1
- 根据Level或DPS pins,可以通过工具来自动生成代码:Shell > Generate Level或Shell > Generate DPS
- 在弹出界面中添加需要include的set与pins
- 点击Create完成sets与pins设置,将会自动生成配置代码
- 若需要指定自定义可变电平值,93000>SETUP>Levels>Select > Edit Specification打开Spec tool,完成编辑后点击File > Download以保存Spec设定
为Levels设定Context(内容)
每个电平equation都需要与一个context相关联,该context在引脚配置中分配。如果不显式指定上下文,则会自动设置上下文“DEFAULT” 在顶部菜单93000>SETUP>Levels>Select > Edit > Edit Equations打开的Levels编辑器中设置context模式:`MODECONTEXT "context name"`
在Levels编辑器中按下F8来将设定好的Levels配置下载到测试系统中;要验证所设置的context,可在Level setup窗口中Select > Show I/O Eqn. & Specs Results.中显示 常规std pins实际上不需要指定context,当没有定义context时,系统将自动设定该pin为default context,default 的modecontext定义了单端配置中的所有std引脚没有使用FAST模式
波形与时序设定
对于每个单独channel或某一组channel,均可配置波形和时序集合,波形组作为逻辑单元存储在系统内存中,对于所有pins而言其包含系统时钟周期和默认的device周期名称;对于每一单个pin而言其包含device周期定义、物理波形定义、一个或多个时序设定;设定波形需要提供时序信息,时序集作为波形集合的一部分存储在系统内存中,包含有测试系统周期与已配置的引脚边沿设定
基于equation的时序设置
包含三部分:生成wavetable波形表、生成时序equation组、生成时序规格链接波形表和时序equation,基于equation设定时序通常包含以下几个关键元素:
- 表达式
- Equation变量
- Spec变量 这几种元素的定义与语法和level equation相同
设定波形表wavetable
93000>SETUP>Timing>select>edit wavetables打开弹出窗口,wavetable编辑器是基于ASCII的编辑器,可以在此定义引脚的描述、形状、窗口大小等;默认情况下wavetable编辑器展示的是最近一次运行的wavetable文件,与当前正在运行的时序无关;在wavetable编辑器中选择shell>generate打开wavetable生成器,用于自动生成wavetable的ASCII描述
编辑完的wavetable文件是临时文件,即便下载到测试系统之后也需要单独保存才能在之后再次使用
Equation集的定义
在设定好wavetable之后,还必须要定义用于构成测试主干的equation,在93000>SETUP>Timing>select>edit equation打开编辑器,和wavetable类似,在shell>generate打开生成器
默认情况下测试系统会自动确定最佳的周期精度,例如对于20.4ns的周期选择10.2ns的精度,但如果有多个不同的时序集周期,可允许强制设定为自定义精度值
给出参考equation之后,定义specs,例:
1
2
3
4
5
6
7
8
9
SPECS
T [ns] //cycle time
clkr [ns] //rising time of clock
ref [ns] //basic reference for the bus timing
sp1 [ns] //data valid
sp2 [ns] //data invalid
//定义时序,例:
TIMINGSET 1 "only one used"
period = T
示例中仅使用了一个时序集,可以通过数字或描述来表示(示例中的“1”和“only one used”) 对于每一个引脚都应定义跳变沿出现的时刻,例:
1
2
3
4
5
6
7
8
TIMINGSET 1 "only one used"
period = T
PINS clkout
e1 = clkref
PINS data
e1 = 0
e5 = ref + sp1 + acc
e6 = ref + sp2 – acc
示例中,边沿1即e1处于ref,同时也展示了clkout和data的定义 如有需要,可定义跳变沿的guard band和精度,上一个示例中引入了acc,acc通常被定义为常数变量,即对于该equation中的所有集合具有相同的数值0,代表了guard band的精度为0.1ns
1
2
EQUATIONS
acc = 0.1
Spec集的定义
通过spec tool来声明一组spec,SPEC集和EQN(equation)集存在一定冲突,如果一个或多个SPECset中应用了equation set中所定义的单位,smt将会显示警告信息:
1
WARNING: Unit for spec variable "<variable>" in EQNSET <no>, SPECSET <no> is not consistent (EQNSET unit: [<unit>], SPECSET unit: [<unit>]).Only EQNSET units will be used. To overwrite SPECSET units with EQNSET units, press "Download" and then save the setup.To keep SPECSET units, edit EQNSETs and set the same units as in SPECSETs.
在timing setup中打开Select > Edit Specifications 在change下拉菜单中点击Create Specification以创建新的spec集,弹出窗口会列出当前所有已定义的equation集,选择需要的equation集后创建新的spec集,spec必须要指定关联的equation和wavetable;定义spec是在equation编辑器中定义每个变量的初值和最大最小范围,允许为每个变量加入注释,设定完成后可以启动spec检查自动排查
SMT平台结构
Perspective
一系列预设好的窗口组合,常用的有Setup、Hardware、Result,也允许自定义自己习惯的窗口组合 Setup 包含Test Program Explor:load flow、setups等功能,可以清晰观察到整个程序的结构;Flow Sequence Edit:以流程图的样式显示flow,edit flow;Flow Data Edit:表格形式显示flow,edit flow;Properties:显示/编辑具体测试项参数,F3便捷进入timing/level equset/spec,pattern edit修改相关值
Hardware 此perspective会展示各项硬件调试控制窗口组合,通常与Pin browser、Hardware电路图、Firmware、waveform等,检查硬件状态,测量Pin电压电流电阻值
Result 包含各种debug窗口,系统数据流、原始数据、各类图标绘制
Device结构
创建新device后系统会自动新建相关二级目录,但通常我们直接导入已有项目的device即可,创建之后将所需要的Testmethod添加进来,TML即testmethod lib,指一类已创建好的包含各种测试方案,测试函数的集合体,类似于库函数;
Device的setup
Setup本身也是smt一类概念,指Device里一系列通用设定,setup以masterfile的形式被调用,masterfile内通常声明了所调用的测试程序的文件路径
Pin
Group: 指当电源pin电流输出能力不够时将多跟pin合并在一起达到期待的电流输出能力;alias:化名——管脚复用pins are multiplexed;Port是一类特殊的Pin group Pin Configuration文件表明芯片Pad上对应机台哪根channel
简单LOG收集
两种启动模式
启动前先确认smt版本信息
1
2
| Smartest启动 | 脚本启动
| ADV菜单中,直接点击Smartest图标,通常在线机台使用,需要手动更改device与model文件 | 通过编写好的` ./xxx.sh` 启动,直接调佣编写好的model,启动时可以指定device
LOG收集
启动后导入所需testmethod,打开operation control窗口,Production setting > report formatter > 选择entFormatter,注意确保operation control中system flag里log_event_enable为开启状态,Console窗口中,report dialog设置里,参照如下设定,pass/fail一定要打开
常用TML
HidigitalLink
HiDigitalLink = Functional + CharTool + HiDiag,统一了MTE现有的数字相关测试
开始使用
请确保 libhicbb_comm.so 这个通用lib拷贝至testmethod/preload目录下;HidigitalLink支持Properties与data flow模式下的编辑选择,支持多个test mode同时运行最后显示是按照代码中的先后顺序显示的
Vmin&Vmax
概念解析
- Vcoef 电压系数
- Vcoef_start 电压系数左限
- Vcoef_end 电压系数右限
- V_point 粗扫电压点数
- V_detail_points细扫电压点数
- Vclamp_EN电压钳制保护开关
- Output 输出位置
- GetDps 查看所拉偏的电源
- VminVmax一栏选择MostSearch&BoundarySearch两种细扫方式,当粗扫正常时,该两种方式无异,范围一致;粗扫结果和预期时,MostSearch会更准确;结果打印上一行为粗扫,下一行为细扫。
- PreExecute 可以设置跑每个点都跑一次鉴权(init&setup),可以设置三种不同的条件的pattern,level 和timing,还有相对于的relay或者waiting time
- MD5_Check是Masterfile选择pattern master时,跑function的时候就会打印出MD5码, MD5码是一种追踪pattern的一种码,会结合pattern路径打印出一串码,用来追踪实际使用的pattern与DFF提供的是否同一个,release A10的程序需要打印这个进行向量基线确认。
SHM
概念解析
- X/Y可选择任意spec Y_ LL和Y_ UL: Y轴spec扫描的起始点到终止点 X_ LL和X_ UL: X轴spec扫描的起始点到终止点
- SpecType: RelativeMode以扫描1倍频和1倍电压点为中心点,以此去自动选择分配左右各自扫描的点和点数 AbsoluteMode以LL和UL为起始点与终止点的值
- Y_ points: Y轴spec扫描点数
- X_ points: X轴spec扫描点数
- Vclamp_EN: 电压钳制保护,为ON时,启动保护机制,默认范围为0.5~1.5V
三种输出格式
ResultType支持多个pattern burst起来执行shmoo测试
- ALL:输出primary pattern名字 + shmoo结果
- PerLabelRow: 输出每一条pattern名字 + shmoo结果
- PerLabel:在输出ALL的基础上,输出每一个port名字 + 对应的一条pattern名字 + 对应的一个shmoo结果
多向量burst测shmoo
在pattern explorer中新建一个向量,以_burst结尾命名,选择对应的port,在insert instruction中插入要burst的向量,timing和level还有向量的port要一致,ResultType必须选择PerlabelRow
Failcycle
Failcycle是芯片失效分析的主要手段,其方法通过海思专有的test method 抓取functional test向量中有比较的pin在每个cycle 时pass/fail的状况,其判断标准来源于level 中对应pin 的voh/vol 设置;failcycle通常针对Vmin的失效做分析,仅针对单独某几个Pin,通常是pJtag管脚,failcycle跑完输出一份log,展示出哪些Pin在哪些Vmin发生失效(形式为H/L的跳变)针对Vmin失效分析的时候,SpecToLogValue中选择Vcoef。
ScanTest_tml为例
- scanPins:需要抓取fail cycle 的pin、pingroup、prot;默认为@,表示所有pins
- maxFailsPerPin:抓取fail cycles 的最大个数;默认为-1,表示所有fail cycles
- cycleBased:抓取fail cycles 打印出的格式;默认为1,表示X1 format,如果向量为X mode,选择1会自动将fail cycle 转换为X1
- includeExpectedData:log 是否打印出期望值;默认为0,表示不打印。通常我们选择1,需要打印
- testerCycleMode:fail cycle 比对时选择tester cycle or x-mode cycle;默认为0,表示X-mode cycle
- output:数据如何输出,通常选择testerUI
Diagnosis
- FuncPort:选择failcycle所在的port,需要抓取failcycle的pin所在的prot,默认为@ 表示所有pins
- ResultLogPins:可以选择pins或者port
- MaxFailPerPins:需要的cycle数的最大值
- DPS Vout toLog:设置具体某个电源查看具体值
- SpecToLogValue:设置为拉偏系数(Vcoef),打印出具体拉偏值
- Xmode:需要和所在上级pattern的mode保持一致
- MarginPoints:抓取的点数
- VminVmaxVstep:两点之间的间隔值
抓取Diagnosis时必须要VminVmax一起测试,@表示全部,建议可以先用scan确认cycle所在port,再选择对应port,即从Vmin多选一个diag,xmode按照pattern中的x来,查看根目录中的report目录是否HL交替/有内容;通常而言,chain、STUCK、Trans向量用pSCAN;MBIST用pJTAG
疑点解析
Diagnosis是从临界值以一个步进扫相同间隔的点的failcycle,可以显示出failcycle到底是固定几个pin fail还是呈现翻倍的fail;Scan只能扫固定的一个点的failcycle
注:
- 当抓取的failcycle中含有“T”时,将向量的wavetable中JTAG_TDO中的“M”改成“X”(JTAG_TDO为例)M 为中间态,在向量模拟环境下无法避免的会生成M态,但是数字状态下不识别M态,所以需要手动修改X即不比较
- 报错“ERROR:FAST?-The Acquire target for port! pothers is not supported (insufficient channel memory for result storage in RAM)”时,根据error可看出pattern过多导致所占用的memory无法满足需求,可以创建只包含所需的pattern,不仅可以缩减load的时间并且可以避免出现以上错误。此外可以在firmware中输入“DCRT TP,(@@)”(两个空格),解决测试无法进行的问题
Vloop
Vmin是在一定的电压范围内,对芯片进行多个电压点测试,看芯片在这些点下的性能;进行Vmin测试的测试项为function测试。Vloop与Vmin的区别在于,进行Vloop测试的测试项除了进行function测试之外,还要进行一些参数测试。如果也对这些测试项扫Vmin,则达不到参数测试的需求;Vloop这一操作可以理解为参数测试的“shmoo”;shmoo仅能跑出来H/L,故仅对Func测试有效,param测试要进行类似的debug分析通过Vloop来达成
在某节点处插入For loop循环,变量选择Vloop,填入相关参数即可添加loop环节,一般的vloop是拉偏电压,也可以是Tcoef,或者是某个电源的具体值,设置对应的拉偏系数,此处vloop是一个for 循环
Vloop结束后需要将所改动的测试项电压回归默认值
需求实操
- 在flow的data editor中添加完vloop的var,初值给0,按操作步骤插入for循环与设置上下循环限和步进,Vloop选点位置任意,在任一节点插入for循环;
- For循环插入之后需要声明vloop中的V具体指哪个变量,在for循环内节点插入assign level value,EQN set与SPEC set选择与要进行Vloop操作的测试项相同的设置,name选择要进行Vloop的对象,通常为Vcoef;value选择@vloop
- 再插入Print,值选择@Vloop,随后再print后插入待vloop的测试项进for循环内部
- 此时需在flow data editor中将对应测试项中全部test suite的LEVEL sepc改成同一值(通常为VDDN,spec2)即加入到for循环内部的所将要进行vloop的那个测试项/group的level需要保持一致
原始的level不一定是相同
- Vloop设置循环上限时,需要给多0.001,例需求是Vcoef 从1.02-1.08,condition设置成 < 1.081
某电源的拉偏
准备
仅针对offline环境;获取到测试需求后,先检查offline主机空间剩余与程序包提权,拉偏需求样例:
1
2
3
4
5
6
7
>25C function BSCAN测试项只拉偏DVDD09 0.7-1.2 mV,Step 0.01
#空间检查与程序提权:
>csh #切换至SHELL
>df -h #检查硬盘空间剩余
>rm -rf xxxxxxxxxxxx #不可恢复的彻底删除文件xxxxxxxxxxxxxx
>chmod 777 -R xxxxxxxxxxxxxx
#文件xxxxxxxxxxxx提至最高权限,所有用户可访问可读写su提权密码huawei@123
两种输出core电源拉偏方法
第一种
- 找到BSCAN下的FC _BSCAN_Vcoef095 ,选中复制粘贴,重命名 FC _BSCAN_DVDD09(命名加上需要拉偏的某电源项,以需求为准)
- 在Test Method右侧打开‘…’按钮, 输入Vmin 选择Vmin_Vmax_Search_MS_Doublechoose_2_0_3 (VminVmax搜索工具)确认
- 更改 Level Spec/DPS为2 [LVLSPEC_VDDN]
- 右键 Equation点击 Open Level Equation… F3,在打开的equation编辑器搜索栏 输入eqnset 5,找到EqnSet 5 下所有参数定义,eqnset5取决于该测试项选择的序号
- 清除eqnset 5 定义下所有方程式的系数Vcoef,只保留要拉偏的DVDD09参数系数
- DVDD09的系数保持不变,点击Shell – Download保存更改。
- Equation更改完后,按要求设定0.7-1.2mV扫描电压,Step 0.01mV,V_Points计算为51点。在Test Method>Parameters 下修改,修改后保存程序
- 选中FC _BSCAN_VminVax_DVDD09,Run Selected,得到输出LOG
第二种
- 添加定义一个新系数Vdvdd075,单独对需要拉偏的板卡乘该系数扫描步骤类似,在Eqnset编辑器中,对需要拉偏的电源乘该系数(图中定义为Vcoef1)EQNSET序号以测试项使用的eqn为准
- 给对应Level文件中每一个level spec都加上新系数Vdvdd075的初值,通常为1,打开测试项Level下spec tools
- 选择spec,将全部eqnset为序号2的spec中(以测试项使用的eqnset序号为准),新定义的Vdvdd075系数的初值均设置为1,重复操作直至eqnset2下所有的spec设置完成
- 完成后download以保存
- 按要求设定0.7-1.2mV扫描电压Step 0.01mV V_Points计算为51点,Vcoef参数选 Vdvdd075
- Run Selected跑出LOG
合向量
合并向量主要分timing、vector、flw三个部分的合并,需要将timing和vector合并入主文件夹中的timing和vector文件中,将新flw merge进主flw里
Timing合并
Timing文件夹里面有mfh文件和timing自身文件/文件夹 Timing本体的文件夹下通常有三个.tim文件分别为equation文件,spec文件和wavetable文件,wavetable通常不加后缀说明: Mfh中写的是对应.tim文件的路径,Timing合并时,首先将将新向量文件夹中的timing本体三个.tim文件或包含其的文件夹复制进当前项目对应timing文件夹下,其次将mfh文件中的路径复制进目标主mfh文件中,并前面加上复制的timing文件所在文件夹目录路径位置即timing合并完成
Vector合并
与timing类似,Vectors文件夹里面有存放向量本体的文件夹和pmfl路径文件 合并过程和timing相同,把存放新向量的文件夹复制一份进目标主vector文件夹下,将.pmfl文件中的路径复制进目标项目的主.pmfl文件中,并前面加上复制的向量文件所在文件夹目录
Flow合并
右击已经load的主flw,左击Open Testflow To Merge,进入新向量的testflow文件夹,选择我们需要合并的新.flw文件,如图中Char_flow.flw 复制整个group到目标项目的flow中,合并后需要检查原flow中SHM或PM等测试项的TM是否需要更换(红色提示),并需要检查timing和level设置是否正确,确认timing或level是否可以复用,将4个测试项的level的SPEC/DPS都改为normal电压
检查
合并完成后需要扫PM与扫SHM进行一些简单检查: 运行PM测试项,查看Tcoef中心点附近的pass情况,offline下为全pass,若pass图形非对称,则修改timing equation中roff的值,公式为
new roff=old roff+
最右边pass值-,最左边pass值,/2)
运行SHM测试项,看是否正常,若有缺陷,如空洞、低压墙则需抓取failcycle
常频率与倍频率
概念
部分需求中会有两种Vmin区分:包括NF与0P5F,其中NF就是常频,正常频率;0P5F即为0.5F,就是倍频;出现这两种不同频对于同一个测试项来说,需要复制出两份测试项,其中一个用NF;另一个用0.5F
倍频Timing的修改
- 找到原测试项(NF测试项)的timing,打开原timing的mfh文件
- Mfh文件可通过smartest loading信息看到具体加载的是哪一个timing.mfh
- 在对应tim.mfh文件中找到NF测试项所使用的那条timing的路径,备用
- 复制一份NF所使用的那条timing的SPEC,加上倍频后缀“_Tcoef2”
- 修改如图所示内容,倍频即Tcoef改为2,同时修改这条timing的SPEC命名,测试项调用使用这个名字
- 将这条复制出来的新的倍频timing,加入到所使用的tim.mfh中,并保持命名一致
93K常用Linux命令
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
>cd .. #返回上一级目录
>cd XX #进入当前路径下的XX
>ls #显示当前目录下有哪些文件
>ll #显示当前目录下有哪些文件,每行显示一个文件
>mv XX YY #把XX改名为YY
>mv XX .. #把XX移动到上一级目录
>cp XX YY #复制XX并命名为YY
>rm XX #删除文件XX
>rm –rf XX #强制删除文件XX,不可恢复
>tar zcvf XX.tar.gz YY #将YY文件夹打包为XX压缩包
>tar zxvf XX.tar.gz #解压XX压缩包
>unzip XX.zip #解压XX压缩包
>nedit XX #以文本格式打开XX文件
>pwd #显示当前路径
>mkdir XX #新建XX文件夹
>ps –ef |grep xxx #查进程关键词为XX的进程号
>kill -9 xxx #强杀xxx进程
>df –h #显示系统磁盘剩余空间
>u –sh * #查看当前路径下各文件占用空间
>kompare XX YY #比较XX与YY文件间的差别
>git clone ssh://git@szv-y.codehub.huawei.com:2222/hiate/turing/Ascend/hsi-ate-hi1981v100.git
#从git仓克隆项目,位置默认为此terminal的根目录
>git branch -a #拉取所有分支
>git checkout 1981-ft-cct #检查完整性
>git plfs #LFS大文件存储下载
>git lfs pull #同上,pfls不可用时使用
杂记
- 实际项目中timing在转向量的时候会一并生成,如果不是倍频降频,通常不需要手动新建
- 激励以数字0/1表示,响应以字母H/L/X/C表示
- 可通过修改SpecTool中Tcoef值修改向量运行频率
- 跑Shmoo测试之前需要将板卡速率扩大一倍license中将所有数字版卡速率X2
- 芯片上机上socket之前需要检查引脚或植球点是否连锡
- Pmfl文件包含内容各部分的路径,类似一个索引
- 单独的flw文件仅表示平台以何种顺序执行测试,不包含测试代码本身
- 完整测试程序中Tj的test suite通常代表芯片内结温自检自测,必要时可以bypass掉整个Tj部分
- 出于测试调试需求,可能会出现某些测试项fail时不care的情况(如OS里DC_IIHL_CTRL_PD/PU_VDDN无视)
- POST/NORMAL/PG三种DFTgroup解析:POST通常包含必须pass的测试项内容,normal即正常测试的DFT内容诸如stuck、trans、mist等,PG即partial good次良品,_PG的dft测试项通常针对片内不同模块进行测试以分bin
- Tcoef系数本质仍然是T,故Tcoef越小,频率越高,系数值通常为1±0.5
- 拉偏这个动作指Vcoef系数的变更,通常针对不同的DPS型号进行Vcoef系数调整以达到确认某个模块问题的目的
- 每一个body向量之前都需要有一个init测试项
- loading缓存地址:/var/opt/hp93000/soc_common/tmp 关闭smartest之后若没有自动删除,手动进入该目录删除全部内容(部分内容会由于权限问题没有删除许可,不打紧)
- Rentension模式选择,need用于生成port(MTE用)already用于vmin扫描(char用)