1. What STDF is
STDF(标准测试数据格式) 是一个简单、灵活、可移植、二进制的 用于存储半导体测试设备产生的结果的数据格式。它被创建了 通过 Teradyne 并于 1985 年首次推出。因为它有充分的记录和 供应商中立,它成为 de-facto standard 贯穿整个自动测试 设备(ATE)行业。
当测试仪测量晶圆或封装器件上的芯片时,它会记录参数 将测量、通过/失败结果、箱分配和测试条件保存到 STDF 中 文件 — 通常称为 datalog。一个 STDF 文件保存一批的测试数据 一次插入的零件(通过测试的一次通过)。
关键思想:STDF 是 不是数据库,也不是固定的报告。它是一个定义的 一套 逻辑记录类型。每条记录描述了一次测试运行 (零件、晶圆、单次测量、容器计数等)。因为数据是描述的 作为逻辑记录,无论数据位于内存缓冲区还是文件中,格式都相同 在磁盘上,或通过网络发送 - 独立于任何特定数据库或网络 架构。
2. STDF为何存在
随着 ATE 行业的成熟,供应商围绕通用的网络和分析系统构建了网络和分析系统。 标准,例如以太网。但仍然存在一个明显的差距: 测试结果数据不是 不同制造商的测试仪之间兼容 ——有时甚至没有 同一制造商的产品线之间。
如果没有共享格式,每个晶圆厂和每个 OSAT(组装和测试工厂)都需要一个 为每台机器定制解析器。 STDF 缩小了这一差距。它提供了一个单一的通用容器 这样:
- 测试人员可以快速地用自己的本机表示形式编写原始结果;
- 集中式数据库引擎可以通过一个程序接受来自广泛测试人员的数据;
- 数据可以以记录齐全、经过彻底调试的形式导出回内部网络;
- 便携式报告和分析软件只需编写一次即可随处使用。
泰瑞达没有从该标准中获得直接的商业利益——它准确地发布了 STDF 因此,通过通用的、完整记录的格式,整个行业可以提高生产力。
3、设计目标
STDF 的设计以一小组明确的目标为指导:
- 能够存储测试数据 all 半导体测试仪和微调器。
- 为两者提供通用格式 storage and transmission of data.
- 提供基础 portable 报告和分析软件。
- 将数据消息格式与数据库格式解耦,因此两者都可以独立发展。
- 提供支持 optional (丢失或无效)数据。
- 为开发人员和用户提供完整、简洁的文档。
- 让客户可以轻松编写自己的报告或为自己的数据库重新格式化数据。
4. STDF 文件的结构
STDF 文件只是一个 记录顺序,一个接一个。每一条记录 - 无论其类型 - 都以相同的方式开始 4字节记录头:
| Field | Type | Meaning |
|---|---|---|
| REC_LEN | U*2 | 标头后面的数据字节数(标头本身的 4 个字节不计算在内)。 |
| REC_TYP | U*1 | 一个整数标识 group 相关记录类型。 |
| REC_SUB | U*1 | 一个整数标识 specific 该组中的记录类型。 |
The pair (REC_TYP, REC_SUB) 唯一标识每个记录类型。分组依据
REC_TYP 让分析程序快速识别记录族(例如,
“每个部分收集的所有内容”)。所有低于 200 的类型/子类型代码均由泰瑞达保留;
200 以上的代码对于定制应用程序是免费的。
记录组 (REC_TYP)
| REC_TYP | Group | 记录类型 (REC_SUB) |
|---|---|---|
| 0 | 有关文件的信息 | 远距 (10)、ATR (20) |
| 1 | Per-lot data | MIR (10)、MRR (20)、PCR (30)、HBR (40)、SBR (50)、PMR (60)、PGR (62)、PLR (63)、RDR (70)、SDR (80) |
| 2 | Per-wafer data | WIR (10)、WRR (20)、WCR (30) |
| 5 | Per-part data | PIR (10)、PRR (20) |
| 10 | 每次测试(整个程序) | TSR (30) |
| 15 | 每次测试执行 | PTR (10)、MPR (15)、FTR (20) |
| 20 | 每个节目片段 | 基准点 (10)、每股收益 (20) |
| 50 | Generic data | 东德 (10)、德意志民主共和国 (30) |
字节顺序和 CPU_TYPE 技巧
不同的处理器(DEC、Motorola、Intel、IBM、Sun...)存储整数和浮点
具有不同位顺序的数字。而不是强迫每个测试人员按原样转换数据
写入(这会减慢测试速度),STDF 让每个系统 用自己的母语写
代表性 and records which CPU将文件写入 CPU_TYPE
第一个记录的字段 (FAR)。当另一个系统读取该文件时,它会检查
CPU_TYPE 并仅在需要时将每个记录转换为其自己的表示形式。数据
转换在读取时变得透明,并且测试永远不会减慢。
Dates and times
每个日期/时间字段都是一个 4 字节无符号整数,计数 秒数 自1970年1月1日午夜起 (UNIX 纪元),采用本地时区。
5. 数据类型代码
STDF 使用简短的、可识别的代码来表示其字段类型。例如 R*4 意味着一个
4 字节实数(浮点)。后面的数字是 * 是以字节为单位的大小;一个字节是8位。
| Code | C type | Description |
|---|---|---|
| C*12 | char[12] | 固定长度的字符串。如果较短,则左对齐并用空格填充。 |
| C*n | char[] | 可变长度字符串;第一个字节是后续字节的无符号计数(最多 255)。 |
| C*f | char[] | 变长字符串,其长度存储在另一个字段中。 |
| U*1 / U*2 / U*4 | unsigned | 1、2 和 4 字节无符号整数。 |
| I*1 / I*2 / I*4 | signed | 1、2 和 4 字节有符号整数。 |
| R*4 / R*8 | float / double | 4 字节和 8 字节浮点数。 |
| B*6 | char[6] | 固定长度位编码数据。 |
| B*n | char[] | 可变长度位编码字段;第一个字节是字节计数(最大 255)。 |
| D*n | char[] | 可变长度位域;前两个字节是 bit 计数(最大 65,535 位)。 |
| N*1 | char | 存储在半字节(4 位)中的无符号整数。第一个值在低半字节中,第二个值在高半字节中。 |
| V*n | — | 变量数据类型:第一个字节是告诉您类型的代码,然后是数据。 |
| kxTYPE | TYPE[] | An array of k 给定类型的项目,其中 k 来自更早的领域。例如 kxU*2. |
6. 可选、缺失和无效数据
很多字段都被标记了 optional。可选字段仍必须存在于 记录,但是有两种标准方式可以说“这个值没有意义”:
- A 预定义保留值 意思是“失踪”——例如a 的长度字节为 0 字符串,或特定数字,例如数字字段的 -1。
- An 可选数据位字段:一个字节,其中每个位都标记是否是特定的 可选字段保存有效数据。
为了节省空间,可选字段位于 end 记录的一部分可以被完全省略—— 但前提是它们(以及它们之后的所有内容)包含丢失/无效的数据。你可能永远不会省略 可选字段来自 middle of a record.
7. 所需记录及初始顺序
在 STDF V4 下,有效文件必须包含 四项必需的记录:
- FAR — 正是一个,而且一定是 first 记录在文件中。
- MIR — 正好是一个,就在 FAR 之后(以及任何 ATR 之后)。
- PCR — 至少一个(摘要 PCR
HEAD_NUM = 255,或每个头/站点一个,或两者都有)。 - MRR — 正是一个,而且一定是 last 记录在文件中。
一些记录称它们的位置是“初始序列之后”。这 初始的 序列 是文件开头的固定记录块。其排序规则:
- FAR 始终是第一位的。
- 任何 ATR(审计跟踪)都会在 FAR 之后立即出现。
- MIR 位于 FAR 和 ATR 之后。
- 如果使用 RDR(重新测试),它会紧接在 MIR 之后。
- 如果使用 SDR(站点描述),它们会紧跟在 MIR(和 RDR,如果存在)之后。
# 完整的初始序列: FAR → [ATRs] → MIR → [RDR] → [SDRs] → ……所有其他记录…… → MRR
8. 每个 STDF V4 记录类型
下面是 STDF V4 定义的每个记录类型,按其描述的内容进行分组。对于每一个你
获取它的功能,它出现的频率,它在文件中的位置,以及 - 对于重要的
记录 — 完整的字段列表。标头字段(REC_LEN, REC_TYP,
REC_SUB) 从字段表中省略,因为它们对于每条记录都是相同的。
文件级记录
FAR 文件属性记录 — 必填,第一条记录
告诉读者如何解码文件的其余部分。因为它承载着 CPU_TYPE and
STDF_VER,必须先读。
| Field | Type | Description |
|---|---|---|
| CPU_TYPE | U*1 | 哪个 CPU 写入了该文件(0 = DEC PDP-11/VAX,1 = Sun 1–4,2 = Sun 386i / IBM PC 系列)。 |
| STDF_VER | U*1 | 用于生成数据的 STDF 版本号。 |
ATR 审计追踪记录 - 选修的
记录更改文件的任何操作(通常是过滤程序)。多个 ATR 坐 紧随 FAR 之后按时间倒序排列。
| Field | Type | Description |
|---|---|---|
| MOD_TIM | U*4 | 文件修改的日期和时间。 |
| CMD_LINE | C*n | 更改文件的程序的命令行。 |
Per-lot records
MIR 主信息记录 — 必填,每个文件一个
保存有关测试批次的全局信息——“所有报告的标题”。它有 许多字段(大多数是可选的);此处显示了重点内容。
| Field | Type | Description |
|---|---|---|
| SETUP_T | U*4 | 作业设置的日期/时间。 |
| START_T | U*4 | 第一部分测试的日期/时间。 |
| STAT_NUM | U*1 | 测试站编号。 |
| MODE_COD | C*1 | 测试模式(P = 生产、D/E = 开发、M = 维护、Q = QC、C = 检查者、A = AEL)。 |
| RTST_COD | C*1 | Lot retest code. |
| BURN_TIM | U*2 | 老化时间以分钟为单位。 |
| LOT_ID | C*n | 批次 ID(客户指定)。 |
| PART_TYP | C*n | 零件类型/产品 ID。 |
| NODE_NAM | C*n | 生成数据的节点的名称。 |
| TSTR_TYP | C*n | Tester type. |
| JOB_NAM | C*n | 作业/测试程序名称。 |
| JOB_REV | C*n | 测试程序修订。 |
| SBLOT_ID | C*n | Sublot ID. |
| OPER_NAM | C*n | 设置时的操作员姓名/ID。 |
| TST_TEMP | C*n | 测试温度(自由文本 - 例如“25C”、“热”、“冷”)。 |
| PROC_ID | C*n | 制造工艺 ID。 |
| FLOW_ID、PKG_TYP、FAMLY_ID、DATE_COD、FACIL_ID,... | C*n | 许多其他可选标识符(流程、封装、产品系列、日期代码、设施、规格名称/版本、ROM 代码、测试仪序列号、主管等)。 |
MRR 主结果记录 — 必填,最后记录
MIR 的逻辑延续,仅在测试完成后保存已知的数据。它是 始终是文件中的最终记录。
| Field | Type | Description |
|---|---|---|
| FINISH_T | U*4 | 最后一部分测试的日期/时间。 |
| DISP_COD | C*1 | 批次处置代码(用户定义的字母数字)。 |
| USR_DESC | C*n | 用户提供的批次描述。 |
| EXC_DESC | C*n | 批次描述由执行软件提供。 |
PCR Part Count Record — 必需,每个文件 ≥ 1
保存一个测试站点的零件计数总数,或者当 HEAD_NUM = 255,对于所有
站点合并。
| Field | Type | Description |
|---|---|---|
| HEAD_NUM / SITE_NUM | U*1 | 测试头/站点(255 = 所有站点的摘要)。 |
| PART_CNT | U*4 | 测试的零件数量。 |
| RTST_CNT | U*4 | 重新测试的零件数量。 |
| ABRT_CNT | U*4 | 测试期间中止的次数。 |
| GOOD_CNT | U*4 | 良好(合格)零件的数量。 |
| FUNC_CNT | U*4 | 功能部件的数量(足以测试、通过或失败)。 |
HBR 硬件 Bin 记录 · SBR 软件Bin记录
HBR counts parts physically 测试后放入硬件箱中 (在晶圆测试中,“物理”是指墨点或晶圆图条目)。 SBR 计数 零件 logically 分配给软件箱 - 测试中定义的更精细的类别 程序。两者具有相同的形状:
| Field | Type | Description |
|---|---|---|
| HEAD_NUM / SITE_NUM | U*1 | 头/站点(255 = 所有站点)。 |
| HBIN_NUM / SBIN_NUM | U*2 | 容器编号 (0–32767)。 |
| HBIN_CNT / SBIN_CNT | U*4 | 料箱中的零件数量。 |
| HBIN_PF / SBIN_PF | C*1 | 通过/失败指示器(P = 通过,F = 失败,空格 = 未知)。 |
| HBIN_NAM / SBIN_NAM | C*n | Name of the bin. |
PMR · PGR · PLR 引脚映射记录
这三个记录描述了器件引脚和测试器通道之间的映射,由 功能(FTR)和多结果(MPR)记录。简而言之: PMR 映射单个 通道↔引脚对并为其指定索引 (1–32,767); PGR 命名一组引脚 (组指数 32,768–65,535); PLR 定义显示基数、操作模式、 以及用于显示编程和返回的引脚状态的字符编码。看 §11 引脚映射 完整的演练。
RDR 复测数据记录 - 选修的
表示文件包含重新测试的部件并列出正在重新测试的 bin,因此 过滤程序知道要替换哪些数据。如果存在,它会立即跟随 MIR。
| Field | Type | Description |
|---|---|---|
| NUM_BINS | U*2 | 正在重新测试的 bin 数量(0 = 所有 bin)。 |
| RTST_BIN | kxU*2 | 正在重新测试的硬件 bin 编号的数组。 |
SDR 站点描述记录 - 选修的
描述一个头上的一组测试站点的物理配置 - 处理程序/探测器, 探针卡、负载板、DIB 板、电缆、接触器、激光器及其类型/ID 对。习惯于 将产量与接口硬件相关联。如果存在,SDR 会立即遵循 MIR(和 RDR)。
每晶圆记录(仅限晶圆探针)
WIR 晶圆信息记录· WRR 晶圆结果记录
A WIR/WRR 对支持在一个晶圆上测试的所有内容 — WIR 标志着开始,
WRR结束。他们有共同点 HEAD_NUM and SITE_GRP。 WIR 携带
晶圆的开始时间和 WAFER_ID; WRR携带完成时间,同件/复测/
中止/良好/功能计数为 PCR,以及用于跟踪的额外 ID:
| Field (WRR) | Type | Description |
|---|---|---|
| FINISH_T | U*4 | 测试晶圆上最后一个芯片的日期/时间。 |
| PART_CNT … FUNC_CNT | U*4 | 测试/重新测试/中止/良好/功能芯片计数。 |
| WAFER_ID | C*n | 晶圆 ID(取代 WIR 中的 ID)。 |
| FABWF_ID | C*n | Fab 晶圆 ID — 将结果链接回制造。 |
| FRAME_ID | C*n | 晶圆框架 ID — 跟踪锯切后的晶圆,以实现无墨装箱。 |
| MASK_ID | C*n | Wafer mask ID. |
WCR 晶圆配置记录 — 每个文件一个,仅限晶圆测试
给出批次中所有晶圆的物理尺寸和方向 - 用于绘制晶圆图。
| Field | Type | Description |
|---|---|---|
| WAFR_SIZ | R*4 | 晶圆直径(以 WF_UNITS 为单位)。 |
| DIE_HT / DIE_WID | R*4 | 模具高度和宽度。 |
| WF_UNITS | U*1 | 单位:1 = 英寸、2 = 厘米、3 = 毫米、4 = 密耳(0 = 未知)。 |
| WF_FLAT | C*1 | 晶圆平面的方向 (U/D/L/R)。 |
| CENTER_X / CENTER_Y | I*2 | 模具中心坐标。 |
| POS_X / POS_Y | C*1 | 哪个方向是正 X (L/R) 和正 Y (U/D)。 |
Per-part records
PIR 零件信息记录· PRR 零件结果记录
A PIR/PRR 一对将在一个部件上测试的所有内容括起来。 PIR 只是一个
在测试零件之前放置的标记(头部+部位);该部分的所有结果 (PTR/MPR/FTR)
跟随,然后 PRR 以结果结束它。并行测试时,
HEAD_NUM/SITE_NUM 将每个结果与正确的 PIR/PRR 对关联起来。
| Field (PRR) | Type | Description |
|---|---|---|
| HEAD_NUM / SITE_NUM | U*1 | 这部分的头/站点。 |
| PART_FLG | B*1 | 位标志:由 PART_ID(位 0)或 X/Y(位 1)取代;异常结束(位2);失败(位 3);通过/失败有效(位 4)。 |
| NUM_TEST | U*2 | 对零件执行的测试数量。 |
| HARD_BIN | U*2 | 零件所在的硬件箱 (0–32767)。 |
| SOFT_BIN | U*2 | 软件箱(65535 = 缺失)。 |
| X_COORD / Y_COORD | I*2 | 晶圆坐标(-32768 = 缺失)。 |
| TEST_T | U*4 | 已用测试时间(以毫秒为单位)。 |
| PART_ID | C*n | 零件标识。 |
| PART_TXT | C*n | 零件描述文本。 |
| PART_FIX | B*n | 特定于应用程序的修复信息(请参阅 §12). |
PART_ID
or the X_COORD/Y_COORD 配对 - 否则结果很难用于
分析或放置在晶圆图上。Per-test summary
TSR 测试概要记录 — 程序中的每个测试一个
总结整个批次中单个测试的执行和失败计数,以及静态 测试名称等信息。它通过测试编号、头和站点链接到 PTR/MPR/FTR。
| Field | Type | Description |
|---|---|---|
| HEAD_NUM / SITE_NUM | U*1 | 头/站点(255 = 所有站点的摘要)。 |
| TEST_TYP | C*1 | P = 参数化,F = 函数式,M = 多结果参数化。 |
| TEST_NUM | U*4 | Test number. |
| EXEC_CNT | U*4 | 执行次数。 |
| FAIL_CNT | U*4 | 失败次数。 |
| ALRM_CNT | U*4 | 报警测试的数量。 |
| TEST_NAM / SEQ_NAME / TEST_LBL | C*n | 测试名称、序列发生器名称和标签。 |
| TEST_TIM | R*4 | 平均执行时间(秒)。 |
| 测试最小值/测试最大值 | R*4 | 所见的最低/最高结果值。 |
| TST_SUMS / TST_SQRS | R*4 | 结果的总和和平方和 - 用于计算平均值和标准差,即使在合并多个文件时也是如此。 |
每次测试执行记录(测量)
PTR 参数测试记录 — 每个参数测试执行一个
数据记录的主力: 一个 PTR 保存单个参数的结果 测量 (电压、电流、时序……)。这 first 给定的 PTR 测试编号还带有“半静态”描述——限制、单位、比例和格式—— 这成为该测试的每个后续 PTR 的默认值(这取代了单独的 PDR STDF V3 中使用的记录)。为了节省空间,以后的 PTR 会忽略这些默认字段,除非覆盖它们。
| Field | Type | Description |
|---|---|---|
| TEST_NUM | U*4 | Test number. |
| HEAD_NUM / SITE_NUM | U*1 | Head / site. |
| TEST_FLG | B*1 | 测试标志:报警、结果有效、可靠、超时、已执行、中止、通过/失败。 |
| PARM_FLG | B*1 | 参数标志:比例误差、漂移、振荡、高于/低于限制、交替限制通过。 |
| RESULT | R*4 | 测量值(相关标志位全为0时有效)。 |
| TEST_TXT | C*n | 测试说明/标签。 |
| ALARM_ID | C*n | 触发的任何警报的名称。 |
| RES_SCAL | I*1 | 结果缩放指数(10 的幂)。看 §10. |
| LO_LIMIT / HI_LIMIT | R*4 | 测试下限和上限(使用 LLM_SCAL / HLM_SCAL 指数)。 |
| UNITS | C*n | 基本单位(例如“AMPS”、“VOLTS”——绝不是“uAMPS”)。 |
| C_RESFMT / C_LLMFMT / C_HLMFMT | C*n | 用于显示的 ANSI C 格式字符串(例如“%7.2f”)。 |
| LO_SPEC / HI_SPEC | R*4 | 规格下限/上限(在第一个 PTR 中设置一次)。 |
MPR 多结果参数记录 — V4 中的新功能
与 PTR 类似,但用于返回的参数测试 一次有多个值
(例如,跨引脚阵列的测量或 shmoo 扫描)。它携带一系列
返回结果(RTN_RSLT)并且可选地,引脚状态(RTN_STAT)
以及它们所属的 PMR 索引。对于 shmoo 日志记录, START_IN / INCR_IN /
UNITS_IN 描述扫描输入条件。限制、单位和缩放比例准确无误
与 PTR 中一样,第一个 MPR 建立默认值。
FTR 功能测试记录 — 每次功能测试执行一个(或多个)
保存单个功能(矢量/模式)测试的结果 - 通过/失败加上丰富的失败 细节。测试的第一个 FTR 带有半静态默认值(替换 STDF V3 的 FDR 记录)。 关键字段包括向量周期计数和地址、故障引脚数量、X/Y 故障 地址(用于存储器模式生成器)、返回和编程的引脚状态(作为数组 PMR 索引和半字节编码状态)、失败引脚位字段、模式/向量名称、时间 设置、操作码和模式生成器编号。返回状态代码的范围超过低/高/ 中频/毛刺/未确定及其失败的变体;确切的显示字符来自PLR。
每个节目段记录
BPS 开始程序部分· EPS 结束程序部分
可选标记,将部件的测试流程中的命名程序部分(定序器)括起来。 BPS 带有部分名称; EPS 没有任何内容 — 每个 EPS 匹配最近未匹配的 BPS,因此这些对可以嵌套(一个定序器调用另一个定序器)。 他们让分析集中于程序的特定部分。
通用/自由格式记录
GDR 通用数据记录
不适合任何其他记录类型的信息的包罗万象。它保存字段的数量
接下来是许多自我描述 GEN_DATA 值 — 每个值都以 a 开头
一字节类型代码(整数、浮点数、字符串、位数据、半字节……),然后是数据。一个特别的
填充类型(代码 0)用于将多字节值保留在偶数字节边界上。写在下面
用于任何用户定义目的的作业计划控制。
DTR 数据记录文本记录
数据记录打印输出中包含自由 ASCII 文本 — 用于突出显示意外结果
或记录数据记录采样率变化等事件。它携带着一个单
TEXT_DAT 字符串,可以出现在初始序列之后的任何位置。
9. 文件中的记录如何排序
确切的记录顺序取决于您测试的是晶圆还是封装部件,无论是 并行测试是否开启,以及数据记录是否启用。这是规范模式。
许多封装设备(完整数据记录)
FAR file-level info MIR global lot info PIR ┐第一部分开始 PTR / MPR / FTR … │ 该部分的每项测试 PRR ┘ 第一部分结果 PIR … PTR/MPR/FTR … PRR(每个部分重复) …… TSR × 程序中每个测试 N 个概要 HBR × 每个硬件箱 N 个 SBR × 每个软件箱 N 个 PCR part-count totals MRR 全球批次结果(最后记录)
仅摘要(无每个部件的数据记录)
与上面相同,但带有整体 PIR…PRR 方块被移除——只有远距离、中远距离,然后
TSR/HBR/SBR/PCR 摘要和 MRR。
晶圆探针上有很多
FAR · MIR · WCR 晶圆尺寸和方向 WIR ┐ 第一个晶圆开始 PIR · PTR/MPR/FTR · PRR │晶圆上的每个芯片 … │ WRR ┘ 第一晶圆总结 WIR … WRR(对每个晶圆重复) TSR…… HBR…… SBR…… PCR…… MRR 批次摘要+最终记录
A wafer-map-only 文件相同但仅存储 PIR/PRR
每个骰子(无 PTR/MPR/FTR),仅保留绘制地图所需的内容。
Parallel testing
通过多个头和站点,不同模具的记录交错:首先打开多个 PIR,
测试运行时,测试仪会发出由 head+site 标记的 PTR/MPR/FTR 记录,并且会显示每个芯片的 PRR
一旦 that 模具完成(不一定按开始顺序)。每个晶圆的WRR都被写入
一旦该头的所有芯片都完成,并且 PCR 块包括每个头/位点一个 PCR 加上一个
摘要 PCR 与 HEAD_NUM = 255.
10. 比例、单位和限制
在 PTR/MPR 内 RESULT、限制和规格均已存储 标准化为
基本单位 named in UNITS. That means UNITS 总是一个
整个单位——“AMPS”,而不是“uAMPS”——你可以直接对任何其单位的值进行算术运算
同意。
For display,使用了两个额外的部分:缩放指数和 ANSI-C 格式字符串。
这 _SCAL 值是比例因子的 10 次幂,也选择 SI
前缀:
| _SCAL | Prefix | Meaning | Magnitude |
|---|---|---|---|
| 15 | f | femto | 10⁻1⁵ |
| 12 | p | pico | 10⁻12 |
| 9 | n | nano | 10⁻⁹ |
| 6 | u | micro | 10⁻⁶ |
| 3 | m | milli | 10⁻³ |
| 2 | % | percent | 10⁻² |
| 0 | — | base | 10⁰ |
| -3 | K | Kilo | 10立方 |
| -6 | M | Mega | 10⁶ |
| -9 | G | Giga | 10⁹ |
| -12 | T | Tera | 10^2 |
缩放后的值很简单 value × 10^_SCAL。例如,要存储“123.45 uAMPS”:
RESULT= 123.45 × 10⁻⁶RES_SCAL= 6(“微”的代码)C_RESFMT=%7.2fUNITS=AMPS
要显示它:乘以 10⁶,使用两位小数格式化,在前面加上“u”前缀,然后附加 单位 → 123.45 uAMPS.
11. 使用引脚映射记录
当测试设备时,之间存在映射 device pins and tester channels。三种记录类型描述它,FTR/MPR记录参考 按索引排列:
- PMR(引脚映射记录) — 定义一个通道↔引脚关联并给它一个 独特的 PMR index (1–32,767)。每个通道都有一个类型和名称;每个引脚都有一个物理 和一个逻辑名称;头部和部位也被记录下来。
- PGR(引脚组记录) — 命名一组引脚(例如“地址总线”)并列出 其中的 PMR 索引及其自己的组索引 (32,768–65,535)。
- PLR(引脚列表记录) — 对于引脚/组列表,定义显示基数 (二进制、八进制、十进制、十六进制、符号)、操作模式(正常、双驱动、SCIO…)以及 用于呈现编程和返回状态的 ASCII 字符。
当软件解码功能结果时,它会读取 FTR/MPR 中的 PMR 索引数组来了解 哪些引脚具有哪些值,使用 PMR 获取引脚的物理/逻辑/通道名称 及其头/站点,使用 PGR 查看引脚属于哪个组,并使用 PLR 进行渲染 工程师认可该测试仪和设备的形式的状态。
12. 存储维修信息
STDF 还可以携带内存、PC 板和其他部件的修复数据,并在
测试和修复过程。每个部件的维修信息位于
PART_FIX PRR 字段。它是特定于应用程序的——位编码、整数、浮点、
或文本 - 第一个字节给出后面的字节数,因此只能通过以下方式解码
匹配分析程序。最小的修复文件可以完全删除每次测试的记录,并且
保持公正 FAR · MIR · (WIR ·) PRR… · PCR · MRR.
13.STDF 文件名
规范建议使用以下形式的文件名 filename.STD[string] where:
- filename 是 1–39 个字符
A–Z a–z 0–9 _,以字母开头。 - 扩展名开始于
.STD并且,在区分大小写的系统上,最好写成小写(.std). - the dollar sign
$is no longer 允许(它在某些操作系统上引起问题)。 - 仅使用单个句点,并保持扩展名较短 - 软件可以向其附加字符以指示处理状态。
好的文件名在整个系统中是唯一的,暗示其内容和生成时间,并且可以跨各种操作系统工作。
14. STDF V3 和 V4 的区别
STDF 于 1985 年推出,并发展成为事实上的行业标准。收集了差不多之后 Teradyne 发布了来自客户和其他 ATE 供应商的一百个请求 Version 4, 今天使用的版本。最大的变化:
- 四项必要记录 (V3 仅需要 MIR 和 MRR):FAR、MIR、PCR、MRR — 文件现在必须以 FAR 开头。
- New records: ATR、PCR、PGR、PLR、RDR、SDR 和 MPR。
- Dropped records: 描述记录 PDR 和 FDR(它们的半静态信息现在位于每个测试的第一个 PTR/FTR 中),以及所有特定于站点的记录 SHB、SSB、STS、SCR(它们的功能现在由 HBR、SBR、TSR 和 PCR 中的头/站点字段处理)。
- Part counts moved 从 MRR 进入新的 PCR;
CPU_TYPEandSTDF_VER现在只住在FAR。 - 重新设计了引脚映射: V3 PMR(也可以定义组)被分为 PMR + PGR + PLR。
- 显示领域现代化: 旧的数字计数字段已替换为 ANSI-C 格式字符串(
C_RESFMT等)和规格限制(LO_SPEC/HI_SPEC)被添加到 PTR/MPR 中。 - New data types
D*nandN*1被添加并且B*n位顺序得到了澄清。 - 未更改记录: BPS、EPS、GDR 和 DTR。
15. Glossary
| Term | Meaning |
|---|---|
| Aborted part | 测试已开始但未完成的部件(例如操作员中断了它)。 |
| Datalog | 具体测试信息的列表 - 测试结果和参数值。 |
| Die | 晶圆内的单个半导体器件。 |
| Functional part | 测试时不属于灾难性故障箱(通常为箱 0)的任何部件。保存在FUNC_CNT中。 |
| Good part | 放置在可接受使用/销售的垃圾箱中的任何部件。保存在GOOD_CNT中;需要产量。 |
| Hardware bin | 设备处理程序上的物理分类类别,用于对测试设备进行分级。 |
| Software bin | 在测试程序中定义的逻辑排序类别,用于比硬件箱更精细的分类。 |
| Insertion | 一次测试一批零件的行为(一批零件可能在不同条件下测试多次)。 |
| 工作计划/测试计划/测试计划 | 旨在测试特定设备的程序语句集。 |
| Lot | 一批零件(通常是整个生产运行)作为一个整体进行测试;可以分为子地块。 |
| Lot disposition | 关于批次未来的决定(例如产量太低而无法包装)。 |
| Retested part | 在一次插入过程中多次测试零件,通常是因为第一次检测到问题。 |
| Sequencer | 测试程序的“目录”——测试的有序列表及其限制和分级。 |
| 准备/开始/结束时间 | 当设置开始时/当第一个部分开始测试时/当最后一个部分完成时。 |
| Tester | 能够将好零件与坏零件分开(通常是分级)的机器。 |
| Test head | 用于测试一台或多台设备的硬件;在并行测试仪上,它控制多个站点。 |
| Test site | 测试单个设备所需的硬件连接;一个头可能有多个站点。 |
| Test station | 一种逻辑软件实体,加载并运行与一个或多个头关联的单个测试计划。 |
| Wafer | 高纯度半导体材料圆盘;构建 IC 的基板,然后通过 ATE 进行探测。 |
使用 DLOG 轻松分析 STDF
由于 STDF 是一种紧凑的二进制格式,每批次可以包含数百万条记录,因此 手动交叉分析许多文件是不切实际的。 DLOG 读取 STDF V4 逐条记录,一次加载多个文件,并将原始数据记录转换为晶圆图、bin Pareto、 直方图、趋势/散点图、Cpk、PAT、Gauge R&R 和相关性 — 导出为 只需点击几下即可在您自己的 PC 上完全离线生成 PDF/Excel/图像报告。
免费试用 DLOG 6 个月 →