编辑: 笨蛋爱傻瓜悦 | 2019-07-17 |
1 第第4 4章章模拟 模拟 simulation simulation z 功能模拟、时间模拟 z 软件模拟、硬件加速器、硬件仿真器 z 模拟器 simulator z 模拟电路需要的信息 C 原形设计模型、元器件库、激励信号、理 想响应 C 激励信号格式:逻辑值、波形图、伪随机 测试图形、testbench VLSI TESTING
2 模拟过程 模拟过程 模拟器 激励 设计模块 响应 库4.
1 4.1 大规模设计模拟 大规模设计模拟 z 后端模拟 z 门级模拟 z RTL级模拟 z 行为级模拟 VLSI TESTING
4 4.1.1 testbench z 对HDL语言描述的数字电路模型,采用 testbench施加测试图形,进行响应分析 移位寄存器设计 testbench 4.1.2 基于设计阶段的模拟 元件级设计 结构级设计 采用同步时钟模拟 VLSI TESTING
5 4.2 4.2 逻辑模拟 逻辑模拟 编译模拟 解释模拟(事件驱动) VLSI TESTING
6 4.2.1 4.2.1 编译模拟 编译模拟 z 电路网表--? 机器指令码序列 z Compiled codes C LDA A /* load accumulator with value of A */ C AND B /* calculate A and B */ C AND C /* calculate E = AB and C */ C OR D /* calculate Z = E or D */ C STA Z /* store result of Z */ 优点:速度快 缺点:改变导致重新编译 适用于组合电路/同步时序电路 A B C E D Z VLSI TESTING
7 4.2.2 4.2.2 事件驱动模拟 事件驱动模拟 z 事件指信号逻辑值改变 z While (event list not empty) begin C t = next time in the list C for every event (i, t) begin z update value of gate i z schedule fanout gates of i in the event list if value changes are expected C end z end VLSI TESTING
8 4.2.3 4.2.3 延迟模型 延迟模型 z 静态时间分析STA C 关注关键路径的延迟,元件的数据表计算 z 模拟测试生成、测试分析、测试施加 VLSI TESTING
9 4.3 4.3 故障模拟 故障模拟 z 定义:面向一个电路求一组故障测试 集,并检验这些测试矢量在检测或定位 故障时的有效性,确定测试集的故障覆 盖率 故障模拟器 故障列表 设计模块 分析结果 库 测试集 VLSI TESTING
10 故障模拟的作用 故障模拟的作用 z 给定 C 被测电路 C 测试图形 C 故障模型 z 确定 C 故障覆盖率 C 未检测的故障 VLSI TESTING
11 VLSI VLSI 设计流程中的故障模拟 设计流程中的故障模拟 Verified design netlist Verification input stimuli Fault simulator Test vectors Modeled fault list Test generator Test compactor Fault coverage ? Remove tested faults Delete vectors Add vectors Low Adequate Stop VLSI TESTING
12 z 故障模拟器分类: 编译驱动模拟器 表格驱动模拟器 z 主要方法:并行故障模拟、演绎故障模 拟、并发故障模拟 VLSI TESTING
13 4.3.1 4.3.1 并行故障模拟 并行故障模拟 z 故障注入与处理都是并行的,位式处理 的模拟 z 故障注入:把逻辑故障的作用注入到故 障元件的计算中 M(s) =1 故障有效 =0 故障无效 fv(s)=1 故障s-a-1 =0 故障s-a-0 S点故障注入:s'
=s(M(s))+M(s)fv(s) VLSI TESTING
14 并行故障模拟过程 并行故障模拟过程 1) 输入电路的拓扑关系和元件的功能 2) 对电路各元件进行逻辑级别化 3) 给电路每一节点分配一组内存的位 4) 注入故障参数M(s)和fv(s) 5) 从测试集取一个测试矢量,做初始化 6) 对原始输入进行屏蔽化处理,按级别 做逻辑运算,每次输出应做屏蔽化 7) 检查原始输出矢量与正常值不同的位 VLSI TESTING 并行故障模拟举例 并行故障模拟举例 ― Bit-space: J/0 B/1 F/0 FF where FF = Fault-free ?
3 faults: B/1, F/0, and J/0 x x x A B C D E F G H J