第5章专用可测性设计.PPT
- 【下载声明】
1. 本站全部试题类文档,若标题没写含答案,则无答案;标题注明含答案的文档,主观题也可能无答案。请谨慎下单,一旦售出,不予退换。
2. 本站全部PPT文档均不含视频和音频,PPT中出现的音频或视频标识(或文字)仅表示流程,实际无音频或视频文件。请谨慎下单,一旦售出,不予退换。
3. 本页资料《第5章专用可测性设计.PPT》由用户(金钥匙文档)主动上传,其收益全归该用户。163文库仅提供信息存储空间,仅对该用户上传内容的表现方式做保护处理,对上传内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(点击联系客服),我们立即给予删除!
4. 请根据预览情况,自愿下载本文。本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
5. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007及以上版本和PDF阅读器,压缩文件请下载最新的WinRAR软件解压。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 专用 可测性 设计
- 资源描述:
-
1、南京航空航天大学 信息科学与技术学院 电子工程系,第5章 专用可测性设计,本章主要内容 可测性分析 可测性的改善方法 测试图形简化 容易测试的电路 组合电路的可测性设计 时序电路可测性设计中的问题,南京航空航天大学 信息科学与技术学院 电子工程系,概述 在当今的VLSI电路中,可测性设计结构是理想化的、广为自愿接受的设计技术。关于可测性目前还没有正式定义。 可测性的概念应该包含两方面的内容: (1)电路内的故障是否可以用有限的测试图形来检测或定位; (2)故障效应观察的难易程度。即,检测故障所需的测试图形的长度和生成时间、施加时间长度的问题。,可测性设计这门学科开始于专用设计技术。 专用可测性
2、设计常用的方法是用可测性的度量值来寻找有限的附加测试点和控制点,以提高电路的可观性和可控性,从而提高电路的可测性。 随着可测性技术理论的发展和应用的深入,系统化的可测性设计技术也得以迅速发展,如:路径扫描、内建自测试和边界扫描技术的应用更加广泛,成为VLSI可测性设计和应用的主流。,南京航空航天大学 信息科学与技术学院 电子工程系,可测性分析中用两个术语来表达此意思,一个是可控性,另一个是可观性。 可控性表明把电路中节点置为预定逻辑值的难易程度; 可观性表明电路中任意节点的值在原始输出可观察的难易程度。 为了对可测性进行量化分析,Goldstein于1979年提出了可测性度量的概念,于1980
3、年提出的SCOAP可测性度量受到广泛接受。 SCOAP可测性度量规定 电路中每个节点由6个参量来描述: 组合0可控性(CC0),组合1可控性(CC1),时序0可控性(SC0), 时序1可控性(SC1),组合可观性(CO),时序可观性(SO)。,5.1 可测性分析,南京航空航天大学 信息科学与技术学院 电子工程系,定义5.1 欲置节点N的值为组合逻辑值0(1),需要对相关节点赋以确定组合逻辑值的最少赋值次数,称为节点N的组合0(1)可控性值,用 CC0(N)(CC1(N)表示。 定义5.2 欲置节点N的值为时序0(1),需要对相关节点赋以确定时序逻辑的最少赋值次数,称为节点N的时序0(1)可控性
4、值,用SC0(N)(SC1(N)表示。实际上,时序可控性值提供了控制节点所需的时段数。,5.1.1 可控性值的估计,基本逻辑单元的CC0(N),CC1(N),SC0(N),SC1(N)的计算公式: (1)对于原始输入节点PI,只需按组合节点赋值一次,不需按时序节点赋值,因此: CC0(PI) = CC1(PI) =1 SC0(PI) = SC1(PI) =0,南京航空航天大学 信息科学与技术学院 电子工程系,(3)对于“非”逻辑元件y = ,其计算与缓冲器一样,但要注意非逻辑,因此有: CC0(y) = CC1(x) + 1 CC1(y) = CC0(x) + 1 SC0(y) = SC1(x
5、) SC1(y) = SC0(x),(2)对于缓冲器y=x,要确定y的值,那么y比x要多一次组合节点赋值,而缓冲器中不是时序元件,因此有: CC0(y) = CC0(x) + 1 CC1(y) = CC1(x) + 1 SC0(y) = SC0(x) SC1(y) = SC1(x),南京航空航天大学 信息科学与技术学院 电子工程系,(4)对于二输入与门y = ,要使y=0, 与 中只需一个为0即可,但要使y=1,则必须 与 同时为1,因此有; CC0(y) = minCC0(x1),CC0(x2) + 1 CC1(y) = CC1(x1) + CC1(x2) + 1 SC0(y) = minS
6、C0(x1) , SC0(x2) SC1(y) = SC1(x1) + SC1(x2),(5)对于二输入或门y = x1 + x2,要使y = 0 ,则x1与x2必须为0,要使y=1,x1与x2中只需一个为1即可,因此有; CC0(y) = CC0(x1) + CC0(x2) + 1 CC1(y) = minCC1(x1) , CC1(x2) + 1 SC0(y) = SC0(x1) + SC0(x2) SC1(y) = minSC1(x1) , SC1(x2),(6)对于三输入或非门 ,要使y=0, 中只需一个为1即可;要使y=1,则必须 因此有: CC0(y) = minCC1(x1) ,
7、 CC1(x2) , CC1(x3) + 1 CC1(y) = CC0(x1) + CC0(x2) + CC0(x3) + 1 SC0(y) = minSC1(x1) , SC1(x2) , SC1(x3) SC1(y) = SC0(x1) + SC0(x2) + SC0(x3),表5.1 典型的组合逻辑门的可控性值,南京航空航天大学 信息科学与技术学院 电子工程系,(7)对于图5.1中带复位端的负边沿触发D触发器,可由功能表达式求得可控性值:,图5.1 D触发器,CC0(Q) = minCC1(R)+CC0(C),CC0(D)+CC1(C)+CC0(C)+CC0(R) CC1(Q) = CC
8、1(D)+CC1(C)+CC0(C)+CC0(R) 注意:式中CC1(C)+CC0(C)表示把触发脉冲C先置成1,再置成0,用两个电 平来模拟一个负脉冲,因为该触发器是负边沿触发。 同理可得: SC0(Q) = minSC1(R)+SC0(C),SC0(D)+SC1(C)+SC0(C)+SC0(R) SC1(Q) = SC1(D)+SC1(C)+SC0(C)+SC0(R),若要观察输出Q,则需保持R=0,同时C加一个负脉冲。,南京航空航天大学 信息科学与技术学院 电子工程系,例5.1 试计算图中输入节点的可控性值。,用输入门的序号来标记节点: A1,A2,B1,B2,C1,C3,H4,H5。设
9、定原始输入为最前面的节点, 原始输出为最后面的节点,先算前面的节点,每一个节点的逻辑值由前面节点的逻辑值确定。,所有的原始输入及其分支的 可控性值设为1; 所有其他节点的可控性值初始化 为无穷大(),计算完毕后,仍然保持为的节点为不可控的。,CC0(F) = minCC0(A),CC0(B),CC0(C)+1 = 2 CC1(F) = CC1(A)+CC1(B)+CC1(C)+1 = 4 CC0(H) = CC1(A)+CC1(B)+1 = 3 CC1(H) = minCC0(A),CC0(B)+1 = 2 CC0(G) = CC1(C)+1 = 2 CC1(G) = CC0(C)+1 = 2
10、,南京航空航天大学 信息科学与技术学院 电子工程系,电路中每个原始输出节点的可控性值为: CC0(Y) = CC0(F)+CC0(H)+1 = 6 CC1(Y) = minCC1(F),CC1(H)+1=3 CC0(Z) = CC1(G)+CC1(H)+1 = 5 CC1(Z) = minCC0(G),CC0(H)+1 = 3,可控性值表示了对电路中节点置预定逻辑值的成本,随着节点在电路中深度的增加,成本也增加。,南京航空航天大学 信息科学与技术学院 电子工程系,定义5.3 为把节点N的信息传播到原始输出,所需最少的组合逻辑值赋值次数叫做节点N的组合可观性值,用CO(N)表示。 定义5.4 为
11、把节点N的信息传播到原始输出,所需最少的时序逻辑赋值次数叫做节点N的时序可观性值,用SO(N)表示。,5.1.2 可观性值,基本逻辑单元的可观性计算公式: (1)对原始输出PO,从它到原始输出PO之间的组合和时序单元数均为0,不需要对任何组合节点赋值和对时序节点控制就能直接观察,假定原始输出的可观性值为1,则有: CO(PO) = SO(PO) = 1 (2)对于缓冲器y=x,从x到y只有一个标准组合单元,不需要任何条件,因此有: CO(x)=CO(y)+1 SO(x)=SO(y),南京航空航天大学 信息科学与技术学院 电子工程系,(3)对于非门y= ,它的分析方法与缓冲器一样,有: CO(x
12、)=CO(y)+1 SO(x)=SO(y),(4)对于二输入与门y=x1x2,要观察x1必须控制x2=1; 要观察x2必须控制x1=1; CO(x1) = CO(y) +CC1(x2) + 1 CO(x2) = CO(y) +CC1(x1) + 1 SO(x1) = SO(y) + SC1(x2) SO(x2) = SO(y) + SC1(x1) (5)对于二输入或门y=x1+x2,要观察x1必须控制x2=0;要观察x2必须控制x1=0; CO(x1) = CO(y) +CC0(x2) + 1 CO(x2) = CO(y) +CC0(x1) + 1 SO(x1) = SO(y) + SC0(x
13、2) SO(x2) = SO(y) + SC0(x1),南京航空航天大学 信息科学与技术学院 电子工程系,(6)对于三输入或非门 ,要观察 xi(i=1,2,3),必须控制 xj(j=1,2,3;ji)=0和xk(k=1,2,3;ki,j)=0, 因此有: CO(xi) = CO(y) + CC0(xj) + CC0(xk) + 1 SO(xi) = SO(y) + SC0(xj) + SC0(xk),表5.2 典型的组合逻辑门的可观性值,1是与门、与非门的非控制值;0是或门、或非门的非控制值。,(7)对于带复位端的负边沿触发D触发器 若要观察输入D,则需保持R=0,同时C加一个负脉冲,因此有
14、: CO(D) = CO(Q) + CC0(R) + CC1(C) + CC0(C) + 1 SO(D) = SO(Q) + SC0(R) + SC1(C) + SC0(C) 要观察R,需先置Q为1,然后保持时钟电平为低电平,因此有: CO(R) = CO(Q) + CC1(Q) + CC1(C) + CC0(C) + 1 SO(R) = SO(Q) + SC1(Q) + SC1(C) + SC0(C) 若要观察时钟线,在假定R、Q和D正常的情况下, 置Q=1,保持R=0,用一负脉冲从D线置入一个0, 若Q变为0,则说明时钟正常; 置Q=0,保持R=0,用一负脉冲从D线置入一个1, 若Q变为1
15、,则说明时钟正常。因此有: CO(C) = minCC1(Q)+CC0(R)+CC1(C)+CC0(C)+CC0(D)+CO(Q) CC0(Q)+CC0(R)+CC1(C)+CC0(C)+CC1(D)+CO(Q) SO(C) = minSC1(Q)+SC0(R)+SC1(C)+SC0(C)+SC0(D)+SO(Q) SC0(Q)+SC0(R)+SC1(C)+SC0(C)+SC1(D)+SO(Q),例5.2 试计算图5.2中节点的可观性值。,图5.2 计算可测性度量值示例电路,所有原始输出的可观性值设为1,所有其他节点的可观性值初始化为无穷大(),计算完毕后,仍然保持为的节点则为不可观的。,先算
16、第二级节点F,G和H的可观性值。 控制H为0使得F敏化到原始输出Y,F在Y的可观性值为: COY(F) = CO(Y) + CC0(H) + 1 = 5 G在Z的可观性值为: COZ(G) = CO(Z) + CC1(H) + 1 = 4 观察节点H有两条路径,一条是H4Y,一条是H5Z,两个可观性值为: COY(H) = CO(Y) + CC0(F) + 1 = 4 COZ(H) = CO(Z) + CC1(G) + 1 = 4,南京航空航天大学 信息科学与技术学院 电子工程系,每一个原始输入A、B、C相应地也有两个可观性值: COYH(A) = COY(H) + CC1(B) + 1 =
17、6 AHY COZ(A) = COZ(H) + CC1(G) + 1 = 7 AHZ COY(C) = COY(F) + CC1(A) + CC1(B) + 1 = 8 CFY COZ(C) = COZ(G) + 1 = 5 CGZ 图5.2中所有节点的可观度量值如表5.3所示。,由表可以看出:可观性随着电路深度而变化,原始输出的可观性值小,而原始输入的可观性大。 可观性值代表了在原始输出观察节点逻辑值所付出的成本。,表5.3 图5.2所有节点的可观性度量值,右图是SCOAP算法中计算任意节点N的可控性值CCi(N)或SCi(N)(i=0,1)的流程图。 SCOAP算法中,设置一个先进先出的排
18、队表,称之为后继表。每次计算时都按顺序从后继表中取出一个元件,再调用标准元件的可控性值数据库算出该元件所有输出节点的可控性值。 后继指先得到元件的输入节点的可控性值,然后向后计算元件输出节点的可控性值。 为了防止重复计算,若节点的可控性值经计算已发生改变,则将计算的值(称为后继)保存在后继表,否则后继不进后继表。 另外,若节点的后继在后继表中已有,则新的后继也不进表,计算过程直到表空才结束。,5.2.3 SCOAP算法描述,计算可控性值的流程图,右图是SCOAP算法中计算任意节点N的可观性值COi(N)或SOi(N)(i=0,1)的流程图。 SCOAP算法中,为了方便计算节点的可观性值,设置一
19、个先进先出的排队表,称之为前趋表。每次计算时按顺序从该表中取出一个元件,再调用标准元件的可观性数据库和前面已求得的各元件可控性值,求出该元件所有输入节点的可观性值。对于扇出节点,取所有扇出分支中可观性值最小的作为扇出根节点的可观性值。 前趋指先得到元件输出节点的可观性值,然后向前计算元件输入节点的可观性值。 若某节点的可观性值在计算后没变,则其前趋不进前趋表。若表中已有某节点的前趋,该前趋也不入表。重复上述计算过程,直到各节点的可观性值稳定之后才结束。,计算可观性值的流程图,注意: 在SCOAP算法中,取所有扇出分支中可观性值最小的作为扇出根节点的可观性值,因此同一个扇出根节点和分支节点中只列
20、出一个节点。,5.2.4 可测性度量的应用,上图中主要节点的可控(观)性值,对于右图电路,运用SCOAP算法求得主要节点的可控性值和可观性值如表所示。,计算结果表明:重复计算太多,计算效率有待改善,时序控制性值和可观性值的初始值设得太小 ,使得计算出的时序可测性值与相应的组合可测性值小,显示不出时序电路测试复杂性,计算复杂性却很大,对重聚的扇出节点的可测性值处理粗糙。,可测性度量是衡量电路可测性的难易程度。在电路设计过程中应该对所设计的电路的可测性度量值进行估算,以分析电路的可测性。 可测性的概念应该包含两方面内容:电路内的故障是否可以用有限的测试图形来检测或定位;故障效应在原始输出可观察的难
21、易程度,也就是说检测故障所需的测试图形的长度和生成时间的长短问题。 可控性值表示了对电路中节点置为预定逻辑值的成本,随着节点在电路中深度的提高,成本也增加。,关于可测性分析有以下观点:,可观性值随着电路深度而变化。原始输出的可观性值小,原始输入的可观性值大。可观性值代表了在原始输出观察电路节点的逻辑值所付出的成本。 可控性值和可观性值同等重要。一个容易可观的节点并非都是可控的。表明,除非节点是可控的,否则单纯提高其可观性值无意义。 SCOAP可测性度量可以快速的分析测试生成的难易程度,并不生成测试图形。可测性分析所用的时间并不像测试生成那样长,一般与电路中的线条数成正比。,南京航空航天大学 信
22、息科学与技术学院 电子工程系,测试点有两类: 控制点(Control Point, CP) 改善电路可控性的原始输入 观察点(Observer Point, OP) 改善电路可观性的原始输出 由测试生成的知识及可控性、可测性的概念可以得出: 插入测试点可以使测试更容易,5.2 可测性的改善方法,5.2.1 插入测试点,1. 插入观察点 假如(a)中节点P的信号难以通过C2观察到,那么在节点P插入观察点OP,修改后的结构如图(b)所示。,南京航空航天大学 信息科学与技术学院 电子工程系,例5.3 研究图5.7(a)所示电路,它需要5个测试图形来检测所有的s-a故障,如果在F插入观测点OP,则只需
23、4个测试图形来检测所有故障,这样就可以缩短测试图形长度,改善测试。 但是,这样的观察点不能以随机的方式插入,例如在图5.7(b)中,在H点插入观察点不会减少测试图形,按照可测性分析,这点的组合可测性值很大。,图5.7 插入观察点举例,引入控制点CP为该或非门的另外输入,可将或非门的输出保持为低电平(图(c))。 如果要求把图(a)中的P既可控制为0,也可控制为1,则插入两个控制点(图(e)。图(f)是采用多路选择器来实现插入控制点的一种结构。,2. 插入控制点,插入控制点易于把节点置为预设的逻辑值。,例:,图 (a)中从或非门输出端得不到0逻辑。,注意:插入控制点会影响节点的可控性值,同样也影
24、响节点的可观性。,改善了P点的可控性,但影响了C1的可观性,1,1,1,南京航空航天大学 信息科学与技术学院 电子工程系,一些存储器件的复位由复杂逻辑控制,初始化比较困难,插入测试点后就可初始化,左图 (a)电路是一种实现方法。,通过插入测试点初始化,测试点对改善长位数计数器的可测性非常有用。 例,对32位计数器进位端的s-a-0故障,需要施加232个测试图形。按照左图(b)插入控制点,就把电路分成C1和C2两部分,分别对它们进行测试,总共用的测试图形是217个。 (将电路分成2个16位计数器C1和C2,测试图形长度=216+216=217),时序电路中测试点插入的最终形式是扫描路径。,内建自
展开阅读全文