数字系统测试和可测试性设计
作者 : [美] 塞纳拉伯丁·纳瓦比(Zainalabedin Navabi)著
译者 : 贺海文 唐威昀 译
出版日期 : 2015-07-01
ISBN : 978-7-111-50154-1
定价 : 85.00元
教辅资源下载
扩展信息
语种 : 简体中文
页数 : 282
开本 : 16
原书名 : Digital System Test and Testable Design: Using HDL Models and Architectures
原出版社: Springer-Verlag
属性分类: 教材
包含CD :
绝版 :
图书简介

本书论述了数字系统测试和可测性设计,它通过数字电路设计实例和方法阐明了测试和可测试性的概念。本书还采用Verilog模型和Verilog测试平台实现并解释故障仿真和测试生成算法。
 本书使用Verilog和Verilog PLI编写测试应用的好处是, Verilog消除了BIST和DFT硬件体系结构所使用的测试算法中不清楚的地方,它详细地描述了可测试性的硬件和测试场景的结构。同时还使用Verilog描述了许多片上解压缩算法,这有助于工程师从硬件开销和测试时间两个方面来评价这些算法,从而使这些算法在系统级芯片设计中更具有可行性。

图书特色

集成电路测试的自动化程度高,从业人员少,因此,行业内一直都依赖师傅带徒弟的方式传授机要,甚至还盛传着一句行话,叫“教会徒弟饿死师傅”。也因此,行业里很少有人愿意将自己的知识传授给初学者。本书从数字系统测试和可测试性设计的基本概念出发,由浅入深,系统地介绍了数字系统测试的原理、知识和概念,并辅以实例,让读者对数字系统测试由点及面、由理论到实践全方位理解。从工程实践考虑,本书还重点突出了可测试性设计和存储器测试的内容。
贺海文 曾任职英飞凌微电子、Intel的高级DFT工程师,现为灿芯半导体DFT主任工程师,也是国内第一批在大型芯片设计公司从事专业DFT设计的工程师,有8年以上DFT设计和验证经验,完成过多款大规模出货的基带芯片的DFT设计,对DFT技术有深刻认识,实战经验丰富。目前主要从事与VLSI/SoC产品DFT相关的技术工作。

唐威昀 曾任职和芯微电子、Intel的高级数字验证工程师,在IC行业有长达10年的从业经历,参与和完成了多款大规模出货的基带芯片的设计和验证。在数字电路和模拟电路的验证、测试方面有丰富的实践经验。目前主要从事SoC/IP研发工作。
由浅入深,从测试的基本概念,深入到DFT的原理、电路和验证实例。
体系完整,从如何解决测试问题的角度出发,覆盖了DFT领域的所有环节,面面俱到。
案例实用,书中案例具有工程参考价值,部分改进后可被用于搭建测试电路。

从事IC测试和验证工作必读

本书主要论述数字系统的电路测试以及设计可测性。全书采用Verilog语言来进行数字电路的设计,测试分析以及数字系统DFT的实现。

前三章内容重点为读者阐明了数字电路测试的基本概念,原理和方法。从第三章开始至第六章,本书的重点回到数字电路测试问题,重点阐述数字电路测试方法,例如故障压缩,故障仿真,以及数字电路测试向量的生成。本书的第七章到第十章,重点论述了可测试性设计(DFT)。最后一章是存储器测试,我们重点讨论存储器自测试(采用Verilog描述)。

作者简介

本书作者Zainalabedin Navabi博士系美国伍斯特理工学院电气与计算机工程专业教授。Navabi博士在集成电路行业发展早期撰写了多本VHDL,Verilog开发工具的培训教材。Navabi博士从1976年开始使用硬件描述语言,他为早期的硬件描述语言开发了寄存器传输级仿真器。1981年,他开发了一个可以从RTL描述生成MOS管电路布局的综合工具。1981年后,他开始涉及大量基于硬件描述语言的项目。他著述颇丰,在硬件描述语言仿真,综合以及数字系统测试方面发表了很多论文。1990年,他在美国东北大学开设了第一门硬件描述语言的课程。自从那时起,他开始在美国和其他国家开设相关主题的培训班。除了在学校从事教学和科研工作外,他还担任CAE公司的顾问。他还是IEEE的高级会员,IEEE计算机学会,ASEE和ACM的会员。

图书前言

这是一本关于测试和数字电路可测试性的书。在这本书中,使用系统设计的语言来介绍和设计测试电路。在介绍数字电路设计的实践和方法的同时,介绍了测试和可测试性的概念。在本书中,我们展示了如何测试数字电路,如何设计可测电路,如何充分使用现有的寄存器传输级(RTL)设计、验证方法和工具。
本书采用Verilog模型和Verilog测试平台,用它们实现故障仿真和测试生成算法,并解释仿真和测试结果。在介绍可测电路的部分,我们用Verilog描述了各种扫描和BIST方法。同时,使用Verilog的测试平台搭建虚拟测试机,以检查和评估这些可测试性方法。在设计可测试性电路的过程中,使用Verilog的测试平台来评估这些电路,从而提高主设计的可测试性。
首先,我们建立了Verilog测试环境,它可以进行门级故障仿真和测试生成。同时使用Verilog PLI与功能强大的Verilog测试平台进行硬件建模并编写测试环境。
接着,我们采用Verilog作为硬件设计工具,用它来描述可测试性设计(DFT)和BIST硬件。在这一部分,我们使用Verilog作为硬件描述语言,描述和综合产生可测试硬件电路。在书中,我们还使用Verilog建模和仿真,这有助于制定和评估测试方法和测试电路的硬件结构。
本书提供了一个新的教授测试以及测试电路的方法,与其他介绍测试和可测试性的书籍相比较,这本书的特点是使用了Verilog和Verilog PLI测试的应用程序。
在20世纪70年代后期,硬件描述语言(HDL)用于计算机体系结构的教授中。在现在,HDL也可以用来阐明测试方法和可测电路的架构。否则,我们只能通过非正式的流程图和框图来表述这些内容。
使用Verilog语言的好处有:
第一,消除了测试算法、BIST以及DFT硬件电路架构中的模糊情况,它能够清楚地描述可测试性的硬件、体系结构以及测试场景。
第二,用Verilog描述片上测试硬件,这有助于评估相关算法、硬件开销和测试时间,并以此评估在SoC芯片上使用这些片上测试硬件的可行性。
第三,Verilog语言也可以支持我们使用测试平台。在开发测试平台和虚拟测试机时,PLI为我们提供了强大的编程工具。这个工具可以与硬件(用Verilog语言描述)进行交互。
这种混合的硬件/软件环境将有利于我们描述复杂的测试方案和测试策略。
本书主要内容
数字电路测试的基础知识和HDL的作用
本章介绍数字电路测试的基础知识,讨论了数字系统测试的重要性,并且定义了各种数字电路测试专用术语,还讨论了数字电路测试的成本及减少数字电路测试时间的途径,这些途径包括更好的数字电路测试方法、更多的可测试性设计、更有效率的测试。另外,本章还探讨论了数字电路设计和数字电路测试的关系。
用于设计和测试的Verilog HDL
本章介绍了用于描述数字电路系统和相应测试平台的Verilog硬件描述语言。我们使用Verilog进行组合逻辑以及时序逻辑电路建模,同时还给出了几个示例。在这里,我们只介绍本书要用到的关键语言结构,这些结构可以用于理解电路模型以及电路体系结构。本章展示了如何使用Verilog开发良好的设计测试平台。我们讨论了自己开发的几个测试平台模板,在开发这些测试平台过程中,我们展示了PLI和开发出来的PLI函数的使用。在后面的章节中我们将继续介绍测试平台。
故障和缺陷建模
本章首先描述了晶体管级和门级故障,用我们的Verilog仿真说明了底层晶体管级故障和上层门级故障之间的对应关系,并论述了功能性和结构性故障,以及它们之间的区别,还讨论了结构性门级故障,同时使用模拟仿真证明这种模型的合理性。另外,本章还阐述了固定(Stuck-at)故障模型,同时介绍了如何使用PLI函数进行故障注入。接下来,本章论述了故障等效和几种故障压缩技术,并开发了基于Verilog的PLI函数和测试平台,用它们产生故障列表,进行故障压缩,接下来还用这些测试平台测试了几种基准电路。
故障仿真应用与方法
本章首先论述了故障仿真的用途及其在数字电路设计与测试中的应用。其次论述了不同的故障仿真技术,包括串行、并行、并发、演绎、微分和关键路径,用它们来追踪故障仿真。为了实现这些方法,我们开发了一个测试平台以进行固定故障注入和仿真,这个基于PLI的Verilog测试平台也部分实现了其他的故障仿真技术。再次,我们使用基于PLI的Verilog测试平台产生了故障字典。基于这些工具的使用,本章讨论了数字电路测试覆盖率及其实现、如何减少故障和其他与故障仿真相关的概念。在第3章中我们使用基于PLI的Verilog测试平台产生了故障表,本章使用相同的故障表格式。在本章中开发和使用了几个完整的基于PLI的Verilog测试平台。
测试向量生成方法及算法
本章首先介绍了各种可测试性技术,包括基于概率、结构和SCOPE参数的计算技术。我们开发了基于PLI的Verilog测试平台,用于计算门级电路内部节点的可控性和可观察性参数。其次讨论了可检测性和它在确定随机测试方法中的作用。再次,我们论述了各种随机数字电路测试生成方法,这一部分还涉及如何利用前面介绍的可测试性测试方法。本章使用Verilog测试平台生成随机测试,并且用它进行基于Verilog的故障仿真来评估这些随机测试。
确定性测试生成算法
在第5章中,我们介绍了数字电路测试向量生成中的随机数字电路测试生成方法。本章具体讨论确定性数字电路测试生成,这是我们考虑测试生成流程的第二阶段。我们论述了算法,例如,D算法、PODEM、CPT和这些算法的简化衍生。我们开发完成了Verilog测试平台,这个平台使用了Verilog PLI 函数,用于确定何时停止随机数字电路测试生成以及决定何时开始确定性数字电路测试生成。数字电路测试生成的下一阶段是数字电路测试压缩。本章有一部分内容专门讨论了这个论题,以及相关的几种数字电路测试压缩方法,同时我们也介绍了如何使用Verilog实现这些内容。
扫描设计方法—可测试性设计方法之一
在本章和接下来的章节中,除了在开发数字电路测试环境中使用Verilog,也可以用Verilog描述实际的硬件结构。本章介绍了可测试性设计,展示了所提出的可测试性设计体系结构的可综合Verilog代码。本章首先介绍了几个特定可测试性设计技术,其次介绍了全扫描和各种部分扫描体系结构,以及对这些硬件结构的明确描述,同时展示了相应的Verilog代码。我们在本书前面的章节中介绍了几种数字电路测试方法以及测试平台。在这里,我们可以利用它们进行扫描设计评估和改进。本章展示了如何使用一个测试平台来配置扫描设计电路以及产生这个电路的测试向量,还说明了如何使用一个Verilog PLI 测试平台,同时将这个平台用于基于扫描的数字设计的应用与测试,后者所应用的测试平台就是我们所说的虚拟测试机。
标准IEEE测试访问方法—可测试性设计方法之二
本章论述了IEEE 1149.1 数字电路测试标准,还论述了与这些硬件结构对应的Verilog实现。虚拟测试机包括操作板和核心测试硬件,也被描述为Verilog的测试平台。通过使用Verilog,我们能够展示这个架构和这些标准的应用。本章描述了支持IEEE 1149.1标准的各个部件的接口,也说明了如何实现该标准与被测电路的交互,以及如何实现测试设备与被测电路交互。同时,在这里要澄清的是,以上都是使用Verilog进行硬件描述和测试平台来实现的。
逻辑内建自测试—可测试性设计方法之三
本章开头介绍了芯片上数字电路测试数据生成电路的设计和输出分析的方法。接下来,我们把这些电路组件组装起来,作为内建自测试架构进行片上测试。本章展示了可综合的Verilog代码,这些代码可用于我们介绍的所有内建自测试电路架构,还展示了经典的内建自测试电路架构,例如随机测试接口(RTS)、内建逻辑模块观察器(BILBO)、内建评估和自检(BEST)。此外还有在线内建自测试、并发内建自测试和特殊体系结构所使用的内建自测试。通过Verilog,我们可以清楚地描述这些硬件结构。同时,可以在使用的Verilog以及PLI测试平台上进行故障注入和故障仿真,对内建自测试电路进行配置和评测。通过Verilog仿真测定哪一种内建自测试电路有更高的故障覆盖率,同时确定这种电路具有的特征。
测试压缩
本章论述了数字电路测试压缩技术,该技术用于可测试性设计以及相应的硬件实现。我们讨论了Huffman、Run-length、Golomb,以及用于测试压缩的其他编码技术。此外,我们讨论了扫描压缩技术及其相应的芯片上的扫描结构。同时还介绍了扫描压缩的压缩算法以及在芯片上的解压缩硬件(用Verilog描述)。
通过MBIST测试存储器—可测试性设计方法之四
本章首先介绍了存储器结构以及相应的故障模型。对各种March数字电路测试技术进行了介绍和分析,证明了不同测试算法的合理性。然后,我们讨论了几个MBIST架构,并给出了相应的Verilog描述。本章通过一个Verilog测试平台演示了如何进行存储器自测试。
附录
附录A 在协议感知自动测试设备上使用HDL
附录B PLI测试应用的门组件
附录C 编程语言接口测试工具
附录D IEEE 1149.1标准边界扫描的Verilog描述
附录E 边界扫描IEEE 1149.1标准虚拟测试机
附录F 由RTL综合生成的门级网表(NetlistGen)
本书相关软件和课程资料
作者在几所大学教授数字电路测试和可测试性课程期间,已经完成了本书所有的相关资料,且可以提供这些资料。
作者制定了一整套用于数字电路测试开发的Verilog PLI函数,这些函数已应用于几门课程的教学中,并达到了一个可以接受的成熟度。为了使数字电路测试应用能够使用原始的RTL设计,我们开发了一个软件,这个软件使用Xilinx ISE来综合、转换以产生网表,并供PLI函数使用。本书使用的许多例子都是由本软件生成的网表。书中的应用程序可以执行我们的PLI函数以及网表。这些应用程序包括故障压缩、随机数字电路测试生成、故障仿真,以及可测试性测量评估。同时,本书还讨论了使用网表和PLI函数仿真的虚拟测试机。
我们还可提供所有章节的演示材料(PowerPoint幻灯片)。另外,在教授这门课程时,作者注意到,学生有时需要回顾Verilog或数字逻辑设计概念,我所制作的视频短片对此有复习、指导作用,学生可以在它的指导下准备书中所需的资料。视频和软件的使用手册也可以从作者处获得,作者邮箱:navabi@ece.wpi.edu; zain@navabi.com。
在本书出版的时候,相关配套资料可从施普林格亚洲有限公司北京代表处获取,联系电话:010-82670211。

上架指导

集成电路设计

封底文字

本书论述了数字系统测试和可测试性设计,它通过数字电路设计实例和方法阐明了测试和可测试性的概念。本书还采用Verilog模型和Verilog测试平台实现并解释故障仿真和测试生成算法。
  本书广泛使用Verilog和Verilog PLI编写测试应用,这也是本书与其他有关数字系统测试和可测试性设计的最大区别。 此外,本书还广泛使用测试平台和相应的测试平台开发技术。在开发测试平台和虚拟测试机的过程中,本书使用了PLI,PLI是一个功能强大的编程工具,它提供与用Verilog语言描述的硬件进行交互的接口。这种硬件/软件混合的环境有助于本书描述复杂的测试程序和测试策略。

本书特色:

•结合数字电路设计和测试。
•使用Verilog和PLI描述测试方法,使得测试方法和测试电路更容易理解和仿真。
•基于门级仿真,在故障模拟和测试生成过程中,用Verilog的测试平台注入故障。根据仿真结果评估故障覆盖率并决定是否使用新的测试图形。
•使用Verilog描述DFT、压缩、解压缩以及BIST技术,这使硬件的电路结构更容易理解并允许对可测试性方法进行仿真和评估。
•虚拟测试机(Verilog的测试平台)可以模拟ATE,用于驱动扫描测试并检查被测电路
•可扫描设计和BIST电路结构的Verilog描述都可以在实际的芯片设计中使用。

译者简介

贺海文 唐威昀 译:暂无简介

译者序

近些年来,随着集成电路设计和制造技术的高速发展,集成电路的测试成为了一个越来越重要的问题。在实际的集成电路设计流程中,可测试性设计的理论和相关实现技术是我们必须特别重视的设计要素,可测试性很差的设计将无法量产。因此,在这个领域,每年都有很多书籍或论文出版或发表。Zainalabedin Navabi教授的这本书就是该领域内一部比较全面和优秀的著作。本书的最大特点在于理论和实践很好地结合,通过使用Verilog编写的数字电路实例、测试应用实例和测试平台,读者在学习可测试性技术的同时还能学习Verilog语言。同时通过测试平台的编译和仿真、过程语言接口(PLI)的使用,使读者更加深入地理解和掌握这些知识。
本书系统地介绍了数字系统的电路测试以及可测试性设计、使用Verilog来进行数字电路的设计、测试分析和实现数字系统的可测试性设计。本书也是根据作者多年的科研成果和教学实践,结合集成电路可测试性设计关注的基本理论和研究热点,并参考大量的文献撰写而成的。全书共11章,第1章~第4章介绍数字电路测试和Verilog RTL设计基础知识,包括测试的基本概念、测试设备、测试经济学和故障模型等,以及用Verilog来建立数字电路测试平台和仿真的概念。 第5章、第6章介绍测试方法,包括数字电路测试向量生成方法、确定性数字电路测试生成方法。第7章~第11章介绍可测试性设计方法,包括扫描设计、边界扫描测试、逻辑内建自测试、数字电路测试压缩、MBIST(存储器内建自测试)。
本书是首本全面覆盖Verilog语言使用、数字电路设计、数字电路测试、存储器测试、测试平台仿真的专著和教科书,反映了当今集成电路测试的研究现状和发展趋势,可以作为高等学校计算机、微电子、电子工程等相关专业高年级学生和研究生的教材与参考书,也可以供从事上述领域工作的科研技术人员参考。
参加本书翻译的还有唐威昀工程师,他为此付出了很多心血和时间。在本书的翻译过程中,也一直得到机械工业出版社华章分社张国强老师的热心指导和大力支持,他向我们推荐了这本著作,并帮助我们与作者进行沟通。本人谨向为本书的翻译与出版付出辛勤劳动的各位编辑,以及支持我们进行翻译工作的家人和朋友,致以衷心的感谢。
由于译者水平有限,书中难免有一些错误或者不妥之处,真诚希望各位读者在阅读时把发现的错误及时告知我们,多多批评指正。我们的个人邮箱是:hehaiwen2005@sina.com,tangweiyun@tsinghua.org.cn。

贺海文 唐威昀

图书目录

译者序
前言
概述
致谢
第1章 数字电路测试的基础知识和HDL的作用 / 1
1.1 设计及测试 / 1
1.1.1 RTL设计流程 / 1
1.1.2流片后测试 / 4
1.2测试重点 / 7
1.2.1 测试方法 / 7
1.2.2可测试性方法 / 9
1.2.3 检测方法 / 11
1.2.4测试成本 / 11
1.3数字系统测试中的HDL / 13
1.3.1硬件建模 / 13
1.3.2制定测试方法 / 13
1.3.3虚拟测试机 / 14
1.3.4可测试性硬件评估 / 14
1.3.5协议感知自动测试设备 / 14
1.4自动测试设备结构及仪器 / 14
1.4.1数字激励及测量仪器 / 15
1.4.2DC仪器 / 15
1.4.3AC仪器 / 15
1.4.4RF仪器 / 15
1.4.5自动测试设备 / 16
1.5小结 / 17
第2章 用于设计和测试的Verilog HDL / 18
2.1使用HDL开发测试方法的原因 / 18
2.2将Verilog用于设计 / 19
2.2.1将Verilog用于仿真 / 19
2.2.2将Verilog用于综合 / 19
2.3将Verilog用于测试 / 20
2.3.1无故障电路分析 / 21
2.3.2故障表编制及可测试性分析 / 21
2.3.3故障仿真 / 21
2.3.4测试生成 / 22
2.3.5可测试性硬件设计 / 22
2.4Verilog的基本结构 / 23
2.4.1模块、端口、连线及变量 / 24
2.4.2抽象的层级 / 25
2.4.3逻辑值系统 / 25
2.5组合电路 / 26
2.5.1晶体管级描述 / 26
2.5.2门级描述 / 26
2.5.3运算级描述 / 27
2.5.4过程级描述 / 28
2.5.5实例化其他模块 / 29
2.6时序电路 / 30
2.6.1寄存器和移位寄存器 / 31
2.6.2状态机编码 / 31
2.7完整示例(加法器) / 35
2.7.1控制/数据划分 / 35
2.7.2加法器的设计规格 / 36
2.7.3CPU的实现 / 36
2.8测试平台技术 / 40
2.8.1测试平台技术 / 41
2.8.2简单的组合测试平台 / 41
2.8.3简单的时序测试平台 / 42
2.8.4限制数据集 / 43
2.8.5同步数据和响应处理 / 44
2.8.6随机时间间隔 / 45
2.8.7文本IO / 45
2.8.8仿真代码覆盖率 / 47
2.9PLI基础知识 / 48
2.9.1访问例行程序 / 49
2.9.2HDL/PLI实现的步骤 / 49
2.9.3在HDL/PLI环境中注入故障 / 51
2.10小结 / 54
第3章 故障和缺陷建模 / 55
3.1故障建模 / 55
3.1.1故障抽象 / 56
3.1.2功能故障 / 58
3.1.3结构故障 / 58
3.2门级结构故障 / 60
3.2.1确认故障 / 60
3.2.2固定开路故障 / 61
3.2.3固定为0的故障 / 62
3.2.4固定为1的故障 / 62
3.2.5桥接故障 / 62
3.2.6状态依赖型故障 / 63
3.2.7多故障 / 64
3.2.8单固定结构故障 / 64
3.2.9检测单固定故障 / 70
3.3与门级故障相关的问题 / 71
3.3.1检测桥接故障 / 71
3.3.2不可检测的故障 / 72
3.3.3冗余故障 / 72
3.4故障压缩 / 72
3.4.1难以区分的故障 / 72
3.4.2等效单固定故障 / 73
3.4.3面向门的故障压缩 / 74
3.4.4面向线路的故障压缩 / 75
3.4.5重汇聚扇出的问题 / 76
3.4.6支配性故障压缩 / 76
3.5基于Verilog的故障压缩 / 78
3.5.1用于故障压缩的Verilog测试平台 / 78
3.5.2故障压缩的PLI实现 / 79
3.6小结 / 83
第4章 故障仿真应用与方法 / 84
4.1故障仿真 / 84
4.1.1门级故障仿真 / 84
4.1.2故障仿真要求 / 85
4.1.3HDL环境 / 86
4.1.4时序电路故障仿真 / 90
4.1.5故障排除 / 91
4.1.6相关术语 / 91
4.2故障仿真应用 / 92
4.2.1故障覆盖率 / 92
4.2.2测试生成中的故障仿真 / 94
4.2.3故障字典创建 / 95
4.3故障仿真技术 / 100
4.3.1串行故障仿真 / 102
4.3.2并行故障仿真 / 104
4.3.3并发故障仿真 / 107
4.3.4演绎故障仿真 / 109
4.3.5演绎故障仿真的比较 / 112
4.3.6关键路径追踪故障仿真 / 112
4.3.7微分故障仿真 / 115
4.4小结 / 115
第5章 测试向量生成方法及算法 / 116
5.1测试生成基础知识 / 116
5.1.1布尔差分 / 116
5.1.2测试生成过程 / 118
5.1.3故障和测试 / 118
5.1.4术语和定义 / 119
5.2可控性和可观察性 / 120
5.2.1可控性 / 120
5.2.2可观察性 / 120
5.2.3基于概率的可控性和可观察性 / 121
5.2.4SCOAP的可控性和可观察性 / 126
5.2.5基于距离 / 130
5.3随机测试生成 / 130
5.3.1限制随机测试数量 / 130
5.3.2组合电路随机测试生成 / 133
5.3.3时序电路的随机测试生成 / 139
5.4小结 / 142
第6章 确定性测试生成算法 / 143
6.1确定性测试生成方法 / 143
6.1.1双阶段测试生成 / 144
6.1.2面向故障的测试生成基本原理 / 144
6.1.3D算法 / 149
6.1.4PODEM(面向路径的测试生成) / 156
6.1.5 其他确定性面向故障的测试生成方法 / 161
6.1.6不依赖于故障的测试生成 / 162
6.2时序电路测试生成 / 163
6.3测试数据压缩 / 165
6.3.1测试压缩的形式 / 166
6.3.2测试兼容性 / 166
6.3.3静态压缩 / 168
6.3.4 动态压缩 / 174
6.4小结 / 174
第7章 通过扫描法进行测试电路设计 / 175
7.1增加电路可测试性 / 175
7.1.1折中方案 / 175
7.1.2测试时序电路 / 176
7.1.3组合电路的可测试性 / 177
7.2可测试性插入 / 177
7.2.1改善可观测性 / 177
7.2.2提高可控性 / 178
7.2.3共享可观测性引脚 / 180
7.2.4 共享控制引脚 / 180
7.2.5降低选择输入 / 182
7.2.6同步控制和观测 / 182
7.3全扫描可测试性设计技术 / 185
7.3.1全扫描插入 / 186
7.3.2触发器结构 / 187
7.3.3全扫描设计与测试 / 192
7.4扫描结构 / 203
7.4.1全扫描设计 / 204
7.4.2映像寄存器可测试性设计 / 204
7.4.3局部扫描方法 / 206
7.4.4多扫描设计 / 209
7.4.5其他的扫描设计 / 210
7.5RTL扫描设计 / 211
7.5.1RTL设计全扫描 / 211
7.5.2RTL设计多链扫描 / 213
7.5.3RTL扫描设计 / 215
7.6小结 / 215
第8章标准IEEE测试访问方法 / 217
8.1边界扫描基础知识 / 217
8.2边界扫描结构 / 218
8.2.1测试访问端口 / 218
8.2.2BS-1149.1寄存器 / 219
8.2.3TAP控制器  / 223
8.2.4解码器单元 / 227
8.2.5选择器和其他单元 / 227
8.3边界扫描测试说明 / 227
8.4板级扫描链结构 / 233
8.4.1单一串行扫描链 / 234
8.4.2具有单一控制测试端口的多扫描链 / 234
8.4.3具有一个TDI、TDO但有多个TMS的多扫描链 / 234
8.4.4多扫描链,多TAP / 235
8.5RTL边界扫描 / 236
8.5.1为CUT插入边界扫描测试硬件 / 236
8.5.2两个模块的测试案例 / 239
8.5.3虚拟边界扫描测试机 / 239
8.6边界扫描描述语言 / 245
8.7小结 / 247
第9章逻辑内建自测试 / 248
9.1内建自测试基本知识 / 248
9.1.1基于存储器的内建自测试 / 248
9.1.2内建自测试的有效性 / 250
9.1.3内建自测试的类型 / 250
9.1.4设计一个内建自测试 / 251
9.2测试向量生成 / 253
9.2.1测试向量产生器的集成 / 253
9.2.2穷举计数器 / 253
9.2.3环形计数器 / 254
9.2.4扭环计数器 / 255
9.2.5线性反馈移位寄存器 / 256
9.3输出响应分析 / 263
9.3.1输出响应分析器集成 / 263
9.3.21字符计数器 / 264
9.3.3跳变计数器 / 266
9.3.4奇偶校验 / 267
9.3.5串行LFSR / 267
9.3.6并行特征信号分析 / 268
9.4内建自测试结构 / 270
9.4.1与内建自测试相关的术语 / 270
9.4.2集中式和独立式板级内建自测试结构 / 271
9.4.3内建评估和自检 / 272
9.4.4随机测试接口 / 273
9.4.5LSSD片上自检 / 275
9.4.6使用MISR和SRSG自测试 / 276
9.4.7并发的内建自测试 / 278
9.4.8BILBO / 279
9.4.9提高测试覆盖率 / 280
9.5RTL内建自测试设计 / 280
9.5.1被测电路设计、仿真和综合 / 281
9.5.2RTS内建自测试插入 / 281
9.5.3配置RTS 内建自测试 / 286
9.5.4内建自测试的合并配置 / 289
9.5.5STUMPS设计 / 289
9.5.6RTS和STUMPS的结果 / 292
9.6小结 / 292
第10章测试压缩 / 293
10.1测试数据压缩 / 293
10.2压缩方法 / 295
10.2.1基于代码的方案 / 295
10.2.2基于扫描的方案 / 303
10.3解压缩方法 / 309
10.3.1解压缩的硬件结构 / 309
10.3.2周期性扫描链 / 311
10.3.3基于代码的解压缩 / 312
10.3.4基于扫描的解压缩 / 317
10.4小结 / 317
第11章通过MBIST测试存储器 / 318
11.1存储器测试 / 318
11.2存储器结构 / 319
11.3存储器故障模型 / 320
11.3.1固定故障 / 320
11.3.2转换故障 / 320
11.3.3耦合故障 / 320
11.3.4桥接和状态耦合故障 / 321
11.4功能测试方法 / 321
11.4.1March测试算法 / 321
11.4.2March-C算法 / 322
11.4.3MATS+算法 / 322
11.4.4其他的March测试 / 322
11.5MBIST方法 / 323
11.5.1简单的March MBIST / 323
11.5.2March-C MBIST计数-排序器 / 328
11.5.3干扰MBIST / 331
11.6小结 / 332
附录A在协议感知自动测试设备上使用HDL / 333
附录BPLI测试应用的门级组件 / 336
附录C编程语言接口测试工具 / 338
附录DIEEE 1149.1标准边界扫描的Verilog描述 / 343
附录E边界扫描IEEE 1149.1标准虚拟测试机 / 349
附录F由RTL综合生成的门级网表(NetlistGen) / 359
参考书目 / 362

教学资源推荐
作者: (美)H. Vincent Poor 著
作者: [美]查尔斯·霍金斯(Charles Hawkins);[西班牙]佐米·塞古拉(Jaume Segura);[美]雷曼·扎克斯哈(Payman Zarkesh-Ha)著
参考读物推荐
作者: [英]唐纳德 S.雷伊(Donald S.Reay)著
作者: (美)琳达·哥乔斯(Linda Gorchels)
作者: [美] 拉里·D.史密斯(Larry D. Smith) 埃里克·博加廷(Eric Bogatin)著