第一章 数字电路测试基础知识
1.1 可测试方法
1.特定可测试性:添加二外的输出引脚以观测被测电路的内部节点,或添加一根跳线以使得被测电路得一定部分具有更高的可控性或可观测性。
2.扫描插入(重要):讲时序电路变成组合电路,扫描法使是时序电路的内部寄存器看起来像输入/输出,形成一个组合模型。
3.边界扫描: 将芯片上的一个内核同其周围部分隔开后在测试,扫描输入、输出测试数据到被测电路的边界。
4.内建自测试:为被测电路添加一个半处理单元,该单元仅负责测试与自己处于同一芯片区域中的被测电路的各个部分,和扫描法结合可测试一个完整的Soc。
1.2 测试成本
10倍准则:当从一个水平发展到下一个更高水平时,测试成本会增至10倍。越往金字塔底端成本越高。
芯片测试两个测试步骤:
1.测试作为硅片一部分的裸片,在进入封装环节前识别坏的裸片并抛弃。
2.测试封装好的器件,确保其不存在连接问题并确认硅片在封装装配流程中未被损坏。
1.3数字系统测试HDL
1. HDL硬件建模,描述被测电路,生成仿真模型。
2.HDL写testbench
3.虚拟测试机
4.内建自测试 可测试性硬件评估
1.4 自动测试设备结构及仪器
1. 数字激励及测量仪器: 向被测器件提供元数据测试向量,然后验证输出数据测试向量是否正确的仪器。数据从具有可编程电压电平的缓存器推入器件,器件产生的数据与位周期开始有关的特定点被可编程阈值的电压比较器及时接收,被观测。
2.DC仪器 :给被测器件供电的仪器。
3.AC仪器:测试AC功能的任意波形发生器(Arbitrary Waveform Generators,AWGs)和波形数字化转换器。
4.RF仪器:用于混频器、低噪声放大器(LNAs)、调制解调设备。
第二章 设计测试的Verilog HDL
1. Verilog 仿真
2.Verilog 综合
综合到由目标库组件构成的网表中,目标库即综合了该设计硬件的规格。
3.综合后仿真
综合前仿真用的同一测试平台可与网表(门级描述)结合使用,当网表采用由Verilog来描述的网表组件的综合工具提供时为综合后仿真。
Verilog在数子系统上测试的几种用法
1.无故障电路分析
按照电路标准参考模型生成的无故障电路,记录电路良好行为以备将来使用,生成标准参考特征。
这种故障检测的准确度取决于用于收集特征的压缩算法以及用于新城该特征的测试数据的数量。
2.故障表编制及可测试性分析
将故障模型应用与门级模型(综合后网表),生成整个设计的可能故障。
为减少测试时间可以进行故障压缩。
3.故障仿真
4.测试生成
故障仿真的同一网表在测试平台实例化,在该环境注入一个故障,生成某种随机或伪随机测试数据,然后检测测试向量是否检测到注入的故障。
5.可测试性硬件设计
在原始设计中插入可测试性硬件
赫夫曼编码风格:通过寄存器阵列将数字系统描述为一种具有反馈的组合块。
寄存器部分和组合部分分开并行。
仿真代码覆盖率:测试平台覆盖的设计内的语句、块、路径的百分比就是该测试平台的代码覆盖率。
- 语句覆盖率:其中多少条语句会被测试平台检查到。
- 条件覆盖率:代码中有多少条件会被相关测试平台访问到。
- 块覆盖率:访问的块
- 路径覆盖率:设计中多少路径会被测试平台覆盖。case、if语句
Verilog PIL介绍
Verilog PLI(Programming Language Interface)是Verilog硬件描述语言的一种接口,允许用户在Verilog仿真器中调用外部C语言函数。通过PLI,用户可以扩展仿真器的功能,进行更复杂的仿真和验证。Verilog PLI主要用于以下几种场景:
- 扩展仿真功能:通过PLI,用户可以编写C代码来模拟复杂的硬件行为,进行更详细的仿真。
- 访问仿真器内部数据:PLI允许用户访问和操作仿真器内部的数据结构,如信号值、时间等。
- 与外部程序通信:通过PLI,Verilog仿真器可以与外部程序进行通信,实现数据交换和协同工作。
Verilog PLI主要包括两种接口:TF(Task and Function)接口和ACC(Access)接口。