第一章 绪论 1
1.1 测试技术的发展 1
1.1.1 自动测试设备的出现 1
1.1.2 在线测试 2
1.2 边界扫描技术的出现 4
1.3 边界扫描技术的发展 5
1.3.1 IEEE 1149.4 5
1.3.2 IEEE 1149.5 6
1.3.3 IEEE 1149.6 7
1.3.4 IEEE 1149.7 7
1.3.5 IEEE 1532 8
1.3.6 标准应用情况 8
1.4 边界扫描技术的应用 9
1.4.1 国外应用状况 9
1.4.2 国内应用状况 10
第二章 边界扫描测试原理和测试方法 11
2.1 IEEE 1149.1 11
2.2 边界扫描逻辑的基本结构 11
2.2.1 TAP控制器 12
2.2.2 指令寄存器 15
2.2.3 数据寄存器 16
2.2.4 边界寄存器 17
2.2.5 边界扫描测试逻辑的结构 19
2.2.6 现场可编程集成电路 20
2.2.7 边界扫描链 20
2.3 边界扫描测试指令集 21
2.3.1 非侵入式操作模式指令 21
2.3.2 侵入式操作模式 23
2.4 边界扫描的测试类型和方法 24
2.4.1 边界扫描测试的对象 24
2.4.2 基本的边界扫描测试类型 24
2.4.3 边界扫描测试系统的构建 27
2.5 边界扫描的特点和未来的趋势 28
2.5.1 1149.1协议的可扩展性 28
2.5.2 边界扫描测试构建成本 28
2.5.3 边界扫描测试的优点 29
2.5.4 边界扫描测试技术的发展趋势 29
2.5.5 其他的测试标准 29
2.6 本章总结 30
第三章 边界扫描描述语言 31
3.1 边界扫描描述语言的背景 31
3.2 边界扫描描述语言的适用范围 32
3.2.1 测试 32
3.2.2 验证 33
3.2.3 综合 34
3.3 边界扫描描述语言的结构 35
3.4 实体描述 36
3.4.1 类属说明语句 37
3.4.2 逻辑端口描述 37
3.4.3 IEEE标准的引用 38
3.4.4 Use语句 38
3.4.5 器件使用的IEEE标准声明 38
3.4.6 器件封装管脚映射 39
3.4.7 端口组定义 39
3.4.8 TAP端口定义 40
3.4.9 限制管脚说明 40
3.4.10 指令寄存器描述 41
3.4.11 可选寄存器描述 42
3.4.12 寄存器访问描述 42
3.4.13 边界扫描寄存器描述 43
3.4.14 RUNBIST指令描述 44
3.4.15 INTEST指令描述 45
3.4.16 BSDL的用户自定义扩展 45
3.4.17 安全提醒 45
3.5 BSDL语言的进一步探讨 45
3.5.1 单元合并 46
3.5.2 非对称性驱动器 47
3.6 关于74BCT8374的BSDL描述 48
3.7 包集合和包集合体 50
3.7.1 STD_1149_1_2001 50
3.7.2 边界扫描单元的描述 54
3.8 边界扫描单元在BSDL语言中的定义 55
3.8.1 BC_1单元 55
3.8.2 BC_2单元 56
3.8.3 BC_3单元 56
3.8.4 BC_4单元 57
3.8.5 BC_5单元 57
3.8.6 BC_6单元 58
3.8.7 BC_7单元 58
3.8.8 BC_8单元 59
3.8.9 BC_9单元 59
3.8.10 BC_10单元 59
3.9 BSDL的编写规范 60
3.10 本章总结 61
第四章 边界扫描测试算法 62
4.1 测试向量生成的原理 62
4.1.1 一些基本概念 62
4.1.2 一些基本定理 64
4.2 常用测试矩阵生成方法 66
4.2.1 基于测试向量生成的算法 66
4.2.2 自适应算法 67
4.3 本章总结 69
第五章 基于边界扫描的可测试性设计 70
5.1 可测试性与边界扫描 70
5.1.1 可测试性 70
5.1.2 可测试性设计流程 71
5.1.3 可测试性衡量标准 72
5.2 基于IEEE 1149.1标准的可测试性设计 73
5.2.1 边界扫描链路的可测试设计要求 73
5.2.2 基本电路可测试设计要求 74
5.2.3 分机级可测试设计要求 77
5.2.4 其他可测试设计要求 78
5.3 设计实例 78
5.3.1 JTAG链路设计 78
5.3.2 存储器的可测试性设计 79
5.3.3 接口电路的可测试性设计 81
5.3.4 电源的可测试性设计 81
5.4 本章总结 84
第六章 混合信号电路边界扫描测试 85
6.1 概述 85
6.1.1 互连测试 86
6.1.2 参数测试 87
6.1.3 内部测试 87
6.2 IEEE 1149.4标准结构 88
6.2.1 TAP控制器 89
6.2.2 模拟测试访问端口ATAP 89
6.2.3 寄存器结构 89
6.2.4 测试总线接口电路 90
6.2.5 边界扫描结构 95
6.3 IEEE 1149.4标准测试指令集 101
6.3.1 强制性指令 101
6.3.2 可选指令 102
6.4 混合信号电路边界扫描测试方法 104
6.4.1 互连测试 104
6.4.2 扩展互连测试 105
6.4.3 网络测试 108
6.5 混合信号电路边界扫描测试系统的组建 108
6.5.1 测试系统设计方案 109
6.5.2 测试系统硬件平台 110
6.5.3 测试系统软件平台 111
6.5.4 混合信号边界扫描测试被测电路的可测性设计 111
6.6 混合信号电路边界扫描测试应用实例 112
6.6.1 无源分立元件参数测试 112
6.6.2 有源分立元件参数测试 116
6.6.3 有源网络的边界扫描测试方法 119
6.7 本章总结 121
第七章 系统级边界扫描测试技术 122
7.1 MTM总线概述 122
7.2 MTM总线体系结构 122
7.2.1 MTM总线系统测试与维护策略 123
7.2.2 MTM总线信号 124
7.2.3 MTM总线协议层 125
7.3 MTM总线物理层 125
7.3.1 MTM总线冲突/错误检测 126
7.3.2 MTM总线时序要求 126
7.4 MTM总线链路层 128
7.4.1 MTM总线报文的分类 128
7.4.2 主模块链路层 130
7.4.3 从模块链路层 132
7.5 MTM总线消息层 133
7.5.1 主模块报文层 134
7.5.2 从模块报文层 135
7.5.3 MTM总线命令集 137
7.6 MTM总线数据传输端口 149
7.7 系统级边界扫描测试系统 153
7.7.1 系统级可测性设计结构 153
7.7.2 测试系统设计要求 155
7.7.3 系统总体结构设计 156
7.7.4 MTM总线主模块 157
7.7.5 MTM总线从模块 159
7.7.6 系统软件平台设计 161
7.8 本章总结 163
第八章 高速数字网络边界扫描测试 164
8.1 概述 164
8.2 高级I/O的测试技术 164
8.2.1 信号管脚类型 164
8.2.2 信号耦合方式 164
8.2.3 差分终端 168
8.2.4 测试信号的实现 169
8.2.5 测试接收器 171
8.3 IEEE 1149.6标准的结构与规范 175
8.3.1 高速数字边界扫描器件的基本结构 176
8.3.2 IEEE 1149.6交流测试指令 177
8.3.3 IEEE 1149.6边界扫描单元结构 179
8.4 交流耦合/差分互连网络故障模型 184
8.5 高级数字网络的边界扫描测试应用 185
8.5.1 差分交流耦合高速数字DEMO板设计 185
8.5.2 差分/交流耦合高速数字电路的测试 186
8.6 本章总结 189
第九章 边界扫描技术在芯片设计中的应用 190
9.1 边界扫描技术与芯片设计 190
9.2 芯片级边界扫描设计 192
9.2.1 数字电路的设计流程 192
9.2.2 边界扫描电路结构 193
9.2.3 TAP控制器的设计 194
9.2.4 指令寄存器设计 196
9.2.5 数据寄存器 199
9.2.6 边界扫描单元设计 199
9.3 边界扫描技术在BWDSP100芯片中的应用实现 202
9.3.1 芯片级边界扫描设计工具 202
9.3.2 BSDArchitect软件设计流程 203
9.3.3 具体设计过程 203
9.4 利用BSDL文件进行板级测试 212
9.4.1 BWDSP100芯片的BSDL描述 213
9.4.2 BWDSP100应用板卡自动测试设备 214
9.5 本章总结 215
第十章 网络型边界扫描测试控制器的设计 216
10.1 设计需求分析 216
10.1.1 网络化功能需求 216
10.1.2 边界扫描测试功能需求 217
10.2 测试控制器总体设计 217
10.3 测试控制器硬件设计 218
10.3.1 以太网接口电路 219
10.3.2 ACT8990接口电路 219
10.4 ACT8990底层驱动程序 221
10.4.1 ACT8990复位及配置 222
10.4.2 装入测试指令 222
10.4.3 装入测试向量 222
10.5 以太网接口底层程序 223
10.5.1 uIPTCP/IP协议栈 223
10.5.2 底层网络设备驱动程序 224
10.5.3 LPC2487以太网应用程序 225
10.6 测试应用实例 227
10.6.1 被测电路设计 227
10.6.2 边界扫描结构完备性测试 227
10.6.3 互连测试 228
10.6.4 功能测试 230
10.6.5 CLUSTER测试 230
10.7 本章总结 231
第十一章 边界扫描测试工具的应用 232
11.1 ScanWorks简介 232
11.2 ScanWorks系统功能及组成 232
11.3 ScanWorks测试开发流程 233
11.3.1 工程(project) 233
11.3.2 设计描述(DesignDescription) 234
11.3.3 测试行为(Action) 234
11.3.4 序列(Sequence) 236
11.4 基于ScanWorks软件的工程应用 236
11.4.1 电路板测试 236
11.4.2 FPGA的配置与编程 248
11.4.3 软件API调用 252
11.5 本章总结 252
第十二章 基于边界扫描技术的测试系统设计 253
12.1 通用测试系统组成及功能 253
12.2 系统工作原理 253
12.3 测试系统的设计方法 255
12.3.1 测试底板的设计 255
12.3.2 适配器的设计 257
12.3.3 测试系统的软件设计 257
12.4 测试系统的工程化实例 259
12.4.1 系统硬件设计 259
12.4.2 测试过程 259
12.5 本章总结 265
参考文献 267