当前位置: 首页 > news >正文

ICT 数字测试原理 5 - -VCL 简介

ICT 数字测试原理 5 - -VCL 简介


文章目录

  • ICT 数字测试原理 5 - -VCL 简介
      • VCL 简介
      • 编写和编辑 VCL 测试
      • 关于VCL的一般规则
      • 库测试和可执行测试
      • 库测试的要求
      • 可执行测试的要求


VCL 简介

矢量控制语言 (Vector Control Language ) 是一种易于使用、结构良好且功能多样的语言,旨在简化测试开发者的工作。VCL 测试可以编写为在线测试单个设备或测试一组设备;后者也称为节点库测试。

在您继续阅读本章之前,我们建议您查看本章末尾的示例。这将使您对语句及 VCL 测试的结构有一些熟悉。

VCL 测试将一系列向量应用于被测设备,并将设备的实际响应与预期响应进行比较。根据响应,测试将结果返回给testplan,然后testplan声明设备通过或未通过该测试。

VCL 测试的目标是:

  • 通过列出测试所需的输入、输出和电压水平来描述被测设备。
  • 描述发送到设备和从设备接收信号的时序要求。
  • 定义驱动设备的向量以及预期设备响应的比特模式。
  • 提供一系列向量执行语句,以所需顺序应用测试向量。

编写和编辑 VCL 测试

要编写和编辑 VCL 测试,请按照以下步骤进行:

  1. 开启 VCL 语法检查。

您可以在 BT-Basic 窗口中通过以下方法之一启用 VCL 语法检查:

a. 简单地将已经保存的 VCL 测试加载到 BT-Basic 工作区中。

b. 如果文件以前没有保存为“数字”文件,则可以在加载时强制进行语法检查,如以下 BT-Basic 命令行中的命令所示:

load digital "my_lib/74wb99"
re-save

load digital 命令将在 BT-Basic 中启用数字模式,并强制对指定文件中的所有行进行完整的数字语法检查。re-save 命令将以数字格式重新保存已加载的文件。

c. 在 BT-Basic 命令行中输入 digital 命令。这将把 BT-Basic 模式设置为“数字”模式。

  1. 编写测试。

a. 执行 digital 语句选择数字 (VCL) 模式。

b. 如果您正在编写库测试,请参见库测试的要求以获取更多信息。

c. 如果您正在编写可执行测试,请参见可执行测试的要求。

  1. 编辑现有测试。

使用 getload 命令获取包含 VCL 源代码的文件。

该模式会自动从文件中读取,并将工作区设置为数字模式。

  1. 保存源代码。

如果测试是针对电路板上的设备,则它是个可执行测试,必须保存在电路板测试目录下的文件中。

a. 使用 msi 语句更改到电路板目录。

b. 使用 save 语句保存源代码。例如:

save "digital/u32"
save "my_lib/74wb99"

如果文件已存在,则必须使用 re-save(重新存储)命令来保存文件。

  1. 编译测试。

VCL 源代码必须编译以生成目标代码。

a. 使用 compile 语句。例如:

compile "digital/u32"

b. 如果要将测试保存在库中,请使用库选项进行编译。例如:

compile "my_lib/74wb99"; library

编译器创建对象文件。编译器将对象文件放置在与源文件相同的目录下。它将每个对象文件命名为与源文件相同的名称,但使用 .o 扩展名。如果指定了列表选项,编译器会生成一个包含源文件列表及任何编译器消息的文件。该列表文件的名称与源文件相同,但扩展名为 .l

对于库测试,仅生成 <test name>.o 文件;列表 (.l) 文件是可选的。

对于可执行测试,可能会生成多个文件。它们被放置在在线设备测试的 digital 目录下。文件描述如表 2-1 所示。

  1. 退出数字模式。

执行 basic 语句或选择其他模式。

表 2-1

VCL 测试文件

文件描述
<test name>.o包含系统软件运行测试所需信息的对象文件。
<test name>.r临时对象文件,包含关于引脚分配所需系统资源的信息。当生成 .o 文件时,该文件被解除链接。
<test name>.l可选列表文件,包含测试清单和编译器生成的消息。如果指定了编译器的列表参数,则会生成此文件。
<test name>.d可选文件,按执行顺序与测试中定义的顺序关联向量。此文件仅供调试软件使用。要获取此文件,请指定编译器的调试选项或在 VCL 测试中使用 generate debug 语句。(包含此文件将导致生产运行时间更长。为防止运行时间延长,在发布到生产之前,重新编译时不使用调试选项。)

关于VCL的一般规则

  • 除了使用数据捕获功能外,VCL语句不能引用变量;任何数字或字符串参数必须是常量。
  • 如果参数需要整数,则您必须提供整数;VCL不能对非整数值进行四舍五入。
  • VCL测试每行只能有一个语句。

库测试和可执行测试

根据测试的目的,VCL测试可以放置在库中或被测电路板的测试程序文件中。最初,VCL测试必须放在库中,以便数字程序生成器可以在为PC板生成测试时读取它们。生成器从库测试中创建可执行测试。

大多数库中的电路内设备测试是针脚导向的测试,旨在测试设备类型。库测试最初假设设备连接在所有针脚自由的配置中,但大多数库测试也包含额外的矢量集,使设备能够以其他常见配置进行测试:例如,在PC板上设备的两个输入引脚绑在一起是很常见的,复位引脚通常连接到地。由于有额外的矢量集,数字程序生成器可以通过丢弃不需要的矢量集,调整可执行测试以适应板上的设备。

实际上,矢量并没有被丢弃——执行这些矢量的语句被转换为注释。如果需要,您可以恢复其中任何一个语句。

节点库测试也是数字程序生成器用来创建可执行测试的模板。然而,节点库测试更可能是面向节点的测试,为板上的某个特定电路编写,而不是作为通用测试。当然,如果您确实有一个用于多个板的电路,那么可以编写一个针脚导向的节点库测试并重复使用该测试,就像重复使用电路内设备测试一样。

可执行测试的源文件是ASCII文件,您可以在数字模式下编辑,并重新编译。您可以对这些测试做出任何更改。然而,如果您所做的更改需要对板的拓扑进行更改或修正,那么您必须将该测试保存为库测试并编译。然后重新运行程序生成软件。在您对板数据做出必要的更改后,软件会自动重新生成新的可执行测试,并重新分配固定器引脚以适应这些更改。


库测试的要求

以下是在库测试中需要注意的特殊事项。

  • assign to 语句必须使用引脚或节点格式来分配引脚到组中;不能使用设备 <设计符> 和继电器格式。
  • 不能使用默认设备语句。
  • 需要 family 和 power 语句。
  • combinatorial、sequential、flash、flash isp、pld isp、andtree、nandtree、nortree、xnortree 和 xortree 语句是可选的——默认是 sequential。
  • outputs limited to 语句是可选的。该语句为 SAFEGUARD 安全分析程序提供更精确的信息,这可能允许放宽特定测试的限制条件。
  • nondigital 语句是可选的。该语句允许指定所有设备引脚,以便在编译电路板数据时,编译器不会生成不必要的警告信息。
  • 如果设备可以预处理,必须包括 disable with 和 condition with 语句,以便数字程序生成器可以安排在测试其他设备时禁用或处理该设备。如果设备需要多向量预处理,将一个 unit disable method 添加到测试中。
  • 不能使用标识符 Disablegroup 和 Disablevector,因为数字程序生成器使用它们来禁用其他设备。
  • 可以在矢量执行部分的单元中使用 tied 语句,以表明通常未连接的引脚被假定为在该单元中相互连接。这使得可执行测试能够测试非标准配置。
  • 组合库测试不应包含归位循环。
  • 仅设置的测试只需测试的声明部分。

可执行测试的要求

以下是在可执行测试中需要注意的特殊事项。通常,你不会编写完整的可执行测试,但有时可能需要编辑其中一个。

  • assign to 语句可以使用任何类型的引脚标识。如果使用 pins <引脚列表> 格式,则必须在 assign to 或默认设备语句中指定设备设计符。

  • 以下语句不适用于可执行测试:

    combinatorial when
    condition with andtree
    disable with nandtree
    outputs limited to nortree
    sequential xnortree
    trace to xortree

  • 如果使用 tied 语句,编译时会检查引用的矢量,以确保其不会尝试将连接的引脚设置为不同的状态。

  • 如果在测试该部分时需要禁用或调整其他部分的状态,那么禁用或调整其他部分状态的引脚应被分配到一个带有标识符 Disablegroup 的组,并为这些引脚提供正确的默认设置。当测试被编译时,禁用向量 DisableVector 会自动生成。Disablegroup 不能出现在测试的矢量定义部分。

  • 当编译一个可执行测试时,如果它不包含矢量定义或矢量执行部分,会生成警告且不产生对象。这防止你尝试用仅设置的测试来测试设备。然而,系统资源仍会为此测试分配。

http://www.dtcms.com/a/435601.html

相关文章:

  • 哪个网站域名便宜dedecms 购物网站
  • 网站首页包含的内容怎么做5080电影电视剧大全
  • Product Hunt 每日热榜 | 2025-10-01
  • 一块钱购物网站帝国cms7.0网站地图
  • 爬虫 API 开发:从架构设计到电商风控突破的全维度实践
  • 动态手机网站怎么做的网络行业做什么挣钱
  • LeetCode 148.排序链表
  • 做美食网站的特点怎么添加网站权重
  • 服装软件管理系统是什么?主要有哪几种类型?
  • ⚡ WSL2 搭建 s5p6818 Linux 嵌入式开发平台(Part 2):系统构建与系统部署
  • 网站别人备案怎么办赚钱网
  • wordpress网站接入qqwordpress怎么修改导航栏
  • 中山网站建设文化机构电商网站怎么做的
  • 福州市 2025 国庆集训 Day2 前三题题解
  • Java中的优先队列PriorityQueue
  • 宁波网站关键词做网站赚钱还是做应用赚钱
  • 重庆网站推广营销h5页面制作工具 软件
  • AI让产品越来越用户中心化
  • 襄阳做淘宝网站推广建设银行个人登录网站
  • 网站建设思维1级a做爰免费网站
  • 网站设计报告总结淘客免费网站建设
  • 又一个 wordpress 站点php网站建设填空题
  • 那个网站做图片好看wordpress 导入数据库结构
  • Bean后处理器
  • 一款可视化的自动复盘系统分享
  • 郑州正云网站建设慈溪网站建设慈溪
  • 我爱学算法之—— 分治-快排
  • asp网站后台上传不了图片wordpress无法加载图片
  • 什么软件 做短视频网站长尾关键词有哪些
  • 江苏建设部官方网站外贸网站有必要吗