基本信息
- 原书名:Digital Systems Testing and Testable Design
- 原出版社: Wiley

编辑推荐
本书系统地介绍数字系统测试理论和方法,包括测试生成、故障模型、故障模拟、可测试性设计、内建自测试等内容。本书共分为三部分: 部分介绍数字系统、数字微系统芯片缺陷的来源、逻辑描述的方法等;第二部分介绍数字系统的可测试性设计理论和方法、内建自测试BIST、测试数据压缩方法等;第三部分主要讨论系统测试的方法。本书概念清晰、层次分明、定义和证明准确、算法推导和阐述简练。每章附有大量练习题可帮助读者消化吸收所学的概念。
本书可供数字系统设计相关技术人员参考,也可作为高等院校相关专业高年级本科生或研究生的教材。
内容简介
作译者
李华伟:中,国科学院计算机研究所副研究员,选进测试技术实验室副主任,博士生导师。1996年在湘潭大学计算机科学系获学士学位。1999年和2001年分别在中科院计算技术研究所获硕士学位和博士学位。主要研究领域为集电路测试,在国内外刊物和国际学术会议上发表论文60余篇,授权发明专利一项。获中国科学院院长奖学金特别奖(2001年)、中国科学院杰出科技成就奖(2003年)及中国计算机学会创新奖(入围奖/2005年)。
目录
译者简介
中文版前言
前言
本书是如何写出来的
第1章 绪论
第2章 建模
2.1 基本概念
2.2 逻辑级的功能建模
2.3 寄存器级的功能建模
2.4 结构模型
2.5 建模的层次
参考文献
习题
第3章 逻辑模拟
3.1 应用
3.2 基于模拟设计验证中的问题
3.3 模拟的类型
3.4 未知的逻辑值
3.5 编译后模拟
译者序
本书的三位作者对数字系统测试领域的前沿研究工作做过杰出的贡献。本书比较系统地介绍数字系统测试的理论和方法,对于测试生成、故障模型、故障模拟、可测试性设计、内建自测试等主题进行深入的探讨。书中介绍的许多技术,目前已经在数字电路设计与测试中得到了成熟的应用。本书共有15章,可分为三部分。前8章是第一部分,主要介绍基础的测试理论和方法,包括数字系统、数字微系统芯片缺陷的来源、逻辑描述的方法:故障的建模、故障模拟、测试单固定型故障、测试桥接故障、智能数字系统的功能测试及其范围等;第9~11章是第二部分,主要介绍数字系统的可测试性设计、内建自测试、测试数据压缩等现代测试理论和方法;第12~15章是第三部分,主要讨论一些高级测试理论和方法,包括逻辑级与系统级诊断、自校验设计和PLA测试。本书概念清晰、层次分明、定义和证明准确、算法推导和阐述简练。每章附有大量练习题可帮助读者消化吸收所学的概念。 ..
本书可作为电路CAD技术人员、芯片和系统设计者以及测试工程师的参考资料,也可作为有关专业研究生或高年级本科生的教科书。
本书由李华伟博士完成前言、第1、3、4、6、8~13章的翻译,鲁巍博士完成第2、5、7、14、15章的翻译。李晓维研究员对全书进行了审校。在数字电路测试领域从事研究工作多年,我们很高兴能够有机会把这本全美大学生和研究生优秀教材介绍给国内相关领域的研究人员和工程师。限于译者水平,译文中疏漏和错误难免,欢迎批评指正。 ...
译者
2006年2月
前言
为了解决这个问题,测试工程师不断提高他们的技术以更好地处理现代测试问题。20世纪60年代,测试集中于处理单固定型故障模型。随着时间的推进,人们针对众多故障模型开发了测试技术并给出应用结果,这些故障模型包括多故障、桥接故障、时延故障、功能故障、存储器故障、甚至串扰引起的故障。
测试程序开发和应用方面也得到不断改进。最初,使用功能测试来测试设备。但是,这种测试很难编写,而且经常达不到高故障覆盖率。后来,人们开发了基于给定故障模型自动生成测试的各种算法,但是在处理时序电路方面计算效率低下。于是人们开始拓展可测试性设计领域,设计者学会修改他们的设计,使得自动测试向量生成的计算切实可行。但这些技术有一个主要的缺点,即它们需要一个大而昂贵的自动测试设备来运行测试过程。为了消除这个需求,人们开发了内建自测试技术,即电路可以对其本身进行测试。 关于测量什么、如何测量方面发生了另一个革命。通常仅在芯片输出测试静态逻辑值(例如0和1)是不够的。在某些情况下,信号被延迟,必须进行实时测试。还有一些情况,芯片上可能既包含模拟电路又包含数字电路,因此必须采样和测量连续的信号值。还有一些情况下,漏电流可能高得无法接受,需要进行适当的测试和测量。
前面列举了过去这些年来测试方法发生的一些创新,本书写作时以及读者读到本书时会有更多的创新正在发生。对测试从业者来说,如果要在这个领域成功,有扎实的测试技术背景固然重要,更重要的是,随着工艺尺寸持续下降并进入到新的工艺例如纳米工艺,在面临更高的缺陷密度和更敏感的工艺高度不稳定性时,测试人员要帮助解决测试世界所面对的许多新问题。希望本书给读者提供了这种必要并且重要的背景知识。
在此对花费大量时间和精力将此书翻译成中文的同行们表示祝贺和感谢。希望阅读这个新的版本的读者能够发现花在本书上的时间是值得的。
Melvin A. Breuer
2006年2月
英文原文
Over the past several years we have seen VLSI CMOS technology scale down to the 32-nanometer range, and clock frequencies surpass several hundred megahertz. At such low levels of scaling defect densities become harder to contain, and process variations become very important. In addition, effects due to parasitic capacitance, and electrical effects due to inductance and transmission lines create problems that make design verification extremely complex. Due to the lack of adequate electrical models that encompass the attributes just mentioned, high performance chips require extensive post-silicon debugging. One unfortunate ramification of these trends is that testing of newly manufactured chips is becoming extremely more difficult and costly. Some estimate that test costs account for over 50% of the cost of a chip, and these cost continue to rise, year by year. To address this problem, test engineers are continuously enhancing their techniques to better address modern test issues. In the 1960誷, the focus on testing dealt with the single stuck-at fault model. Over time, results and techniques were developed to address fault models such as multiple faults, bridging faults, delay faults, functional faults, memory faults, and even crosstalk-induced faults. An evolution also took place in terms of test program development and application. Initially, devices were tested via functional test. But these tests were hard to write and often did not provide high fault coverage. Later, algorithms for automatically generating tests with respect to a given fault modes were developed, but these were not computationally effective when dealing with complex sequential circuits. Thus the field of design-for-test evolved, where designs learnt how to modify their designs so that automatic test pattern generation would be computationally feasible. But these techniques had one major disadvantage, namely they required a large and expensive piece of automatic test equipment to carry out the test process. To eliminate this requirement, techniques for built-in self-test were developed, i.e., circuits could now test themselves. Another revolution has occurred in terms of what is being measured, and how. It is often not sufficient to test for static logic values, such as 0 and 1, at the output of a chip. In some cases, signals are delayed, and real-time tests must be carried out. In other cases, a chip might contain both analog and digital circuitry, so continuous signal values must be sampled and measured. In other cases, the leakage current might be unacceptably high, so proper tests and measurements again are required. I have just presented a short list of some of the innovations that have occurred over the recent past, and many more are being developed as I write and you read. It is important that the test practitioner have a solid background in test technology if he or she is to succeed in this field, as well as help solve the many new problems that are confronting the test world as technology continues to scale, and we move into new technologies, such as nano-technology, that have even higher defect densities and are susceptible to high levels of process variations. I hope that this book provides the reader with this necessary and important background. I want to congratulate and thank my colleagues who spent so much time and energy in translating this work into Chinese. I hope readers of this new edition find their reading time to be rewarding.
Melvin A. Breuer
February 27, 2006
本书对数字系统的测试和可测试性设计进行了全面详尽的论述。随着测试成本逐渐成为新产品制造成本的主要部分,这些内容变得越来越重要。今天,设计和测试不再是相互分离的话题。对产品售后质量的强调,以及VLSI设计复杂度的不断增长,要求我们早在设计过程就要考虑测试问题,以便能够修改设计来简化测试过程。 ..
本书可作为研究生教科书或研究人员的综合参考资料,也可供对测试技术感兴趣的工程师(芯片和系统设计者、测试工程师、CAD开发者等)参考。为了满足广大读者的不同需要,本书:(1)对基本概念进行全面和透彻的介绍,同时详细讨论这个迅速变化的领域的最新进展;(2)仅给出支持实践应用的理论资料;(3)对可测试性设计技术进行广泛讨论;(4)调查多种用来实现内建自测试和自校验功能的电路结构。
第1章介绍测试中用到的主要概念和基本术语。第2章的主题是建模,它讨论数字电路与系统的功能和结构模型。第3章介绍如何使用逻辑模拟作为设计验证的工具,并且描述编译后模拟算法和事件驱动模拟算法、时延模型,以及用于模拟的硬件加速器。第4章介绍用于表示物理故障的逻辑故障,解释故障检测、故障冗余等概念,以及等价、支配等故障间关系,并详细分析最重要故障模型,即单固定故障模型。第5章介绍故障模拟的方法。首先介绍一些通用技术:串行、并行、演绎和并发技术,接着介绍专门用于组合电路的技术:并行向量单故障传播和临界路径追踪,最后介绍近似方法,例如故障采样和统计故障分析。 第6章涉及单固定故障的测试生成问题。首先介绍大多数测试生成算法中常见的通用概念,例如蕴涵、敏化、确认、判定树、隐式枚举和回溯,然后详细讨论几种算法—D算法、9值算法、PODEM、FAN和临界路径测试生成,以及一些用于TOPS、SOCRATES、RAPS、SMART、FAST和D算法中的技术,另外还介绍随机测试生成、时序电路测试生成、使用高层模型的测试生成,以及测试生成系统。
第7章介绍由信号线间短路所引起的桥接故障,而这些信号线正常情况下是不相连的。虽然桥接故障是一个“非典型”的故障模型,但是只需对单固定型故障的技术进行简单扩充便可处理这种故障类型。第8章涉及功能测试,介绍启发式方法、使用二叉判定图的技术、穷举和伪穷举测试,以及用于微处理器的测试方法。 第9章介绍可测试性设计技术,其目的在于通过修改设计来提高内部信号的可控制性和可观测性,以简化测试。该章所分析的技术包括常见的ad hoc技术、扫描设计、板级和系统级方法、部分扫描和边界扫描(包括JTAG/IEEE 1149.1标准)。
第10章专门讨论压缩技术,即考虑被测电路响应的压缩表示。所介绍的技术包括置1计数、跳变计数、奇偶检验,症候检查和特征分析。由于特征分析具有广泛的应用,因而该章对其进行详细的讨论。压缩技术主要应用于以内建自测试为特征的电路中,其输入测试向量的生成和输出响应的压缩都可由嵌入于被测电路中的测试电路来完成。第11章分析多种内建自测试技术(CSBL、BEST、RTS、LOCST、STUMPS、CBIST、CEBS、RTD、SST、CATS、CSTP和BILBO),并讨论几个复杂的概念,例如测试调度和部分侵入的内建自测试。 第12章讨论逻辑级诊断。所涵盖的主题包括故障定位、故障字典、引导探针测试、诊断专家系统、效果-原因分析等方面的基本概念,以及一种使用人工智能概念的推理方法。
第13章介绍自校验电路,这类电路中的故障由称为校验器的子电路来检测。自校验电路依赖于输入编码。该章首先回顾了编码理论的一些基本概念,然后讨论特定的编码:奇偶校验码、伯格码和剩余码,以及使用这些编码的校验器的设计。 第14章概括介绍可编程逻辑阵列(programmable logic array,PLA)的测试。首先回顾专用于PLA的故障模型和用于这些故障的外部测试的测试生成方法,然后描述并比较多种用于PLA的内建自测试方法。
第15章论述由几个相互独立的处理部件(单元)所组成的系统的测试与诊断问题,在这样的系统中,一个单元可以测试和诊断其他单元。该章讨论的重点在于系统结构与能够取得的可诊断性级别之间的关系。
课程安排 本书可作为计算机工程、电子工程或计算机科学专业的研究生教课书。本书自成体系,广泛讨论本领域的大多数问题,从基本概念到高级技术都给予详尽介绍。本书要求学生已修过逻辑设计、计算机科学和概率论这几方面的基础课程。大多数算法是以一种易于理解的格式,即伪代码形式给出的。
本书按照逻辑顺序来组织各个主题,大多数章节依赖于前面章节的内容。下面的示意图给出了章节之间最重要的次序关系。例如,故障模拟(第5章)需要对逻辑模拟(第3章)和故障模型(第4章)的理解。可测试性设计(第9章)和测试压缩技术(第10章)应该在内建自测试(第11章)之前学习。 各章之间的关系图 本书的课时需要两个学期,即便用两个学期,一些内容可能也不得不略过。对第一学期的课程,建议以较快的速度了解第1~6章和第9~11章。教师可以只讲大约一半的内容。第一学期的课程作为“测试入门”,应强调基本概念、算法和设计技术,而仅略微涉及复杂的主题。在入门性的课程中,应略过或只需简单讨论的主题包括:模拟引擎(硬件加速器)(3.11节)、多固定型故障模型(4.6节)、故障采样(5.4节)、统计故障分析(5.5节)、随机测试生成(6.2.3节)、高级扫描概念(9.9节),以及高级BIST概念(11.5节)。在第2章中的大多数内容和特别的可测试性设计技术(9.2节)可以让学生自学。