用于满足移位加载(los)测试的q选通单元架构和用于识别最佳q选通候选的算法_2

文档序号:9893463阅读:来源:国知局
质中,这些指令可以使得计算机、其它可编程数据处理装置、或其他设备以特定方式工作,使得存储在计算机可读介质中的指令产生包括实现流程图和/或框图中的一个或多个方框中规定的功能/动作的指令的制造品。
[0024]在本发明的实施例中,利用具有处理器、存储器和输入/输出接口的一个或多个适当编程的通用数字计算机上的软件实现测试装置。
[0025]举例来说,参考图1,其绘出根据一个实施例的集成电路的示例性逻辑测试设计。集成电路102的逻辑测试设计可以包括例如最多150个触发器104,其由左驱动触发器106通过组合逻辑块108驱动。此外,集成电路102的逻辑测试设计可以包括最大数目为100的组合逻辑门级。集成电路102的各方面可以在下面关于图2的流程图进一步详细描述。
[0026]图2是示出由Q选通程序执行以确定最佳触发器或锁存器的步骤的流程图,对于用触发器的Q选通来代替整个设计的Q选通而言,所述最佳触发器或锁存器将是预期的候选。如上所述,使用Q选通来控制用于整个设计的扫描-移位功率可能会存在问题。例如,使用Q选通来控制用于整个设计的扫描-移位功率会向设计增加有效功率。此外,它会在移位加载模式期间造成时序挑战,因为对“Q”的选通会产生从扫描使能根(scan enable root)通过Q门直至捕获触发器的输入引脚的新弧。如先前所解释的,该方法提供了使功率衰减最小化的优点。该方法可以在扫描插入期间被集成,并且可以使用被称为深度和宽度等级的参数。流程图200可以借助集成电路102(图1)来描述。
[0027]参考图2,在202,确定最大宽度。对于设计中的驱动组合逻辑块的每个触发器/锁存器,跟随该组合逻辑块的随后的触发器/锁存器的最大数目可以对应于最大宽度。例如,集成电路102(图1)的设计可以具有总计120万个触发器。如此,Q选通程序200可以识别最多150个触发器104(图1),其跟随由触发器106(图1)驱动的组合逻辑块108(图1)。在该示例中,最多150个触发器104(图1)是最大宽度。
[0028]然后,在204,确定最大深度。对于设计中的每个触发器/锁存器,计算每个触发器在遇到其路径中的下一个触发器/锁存器之前(即,在命中终点之前)所驱动的组合逻辑门级的数目。换句话说,最大深度可以对应于位于以下两者之间的组合逻辑块108(图1)的组合逻辑门级(例如,级I...级100)的最大数目:对逻辑块108(图1)进行驱动的触发器106,以及触发器104的链条(图1)中的从组合逻辑块108(图1)接收输出112的第一触发器(#1)。关于以上示例,所考虑的设计(即,集成电路102(图1))可以具有总计120万个触发器/锁存器。如此,Q选通程序200可以识别两个触发器之间的具有最大数目为100的门级(图1)的组合逻辑块108(图1)。
[0029 ]然后,在206,确定整个设计中的最大拥塞。为了确定整个设计中的最大拥塞,将设计划分为均等的平方,并且估计每单位平方(即,每平方微米)的密度。如此,整个设计(例如,顺序&组合逻辑)中的门的最大密度被认为是最大拥塞。关于以上示例,所考虑的设计102(图1)可以具有总计120万个触发器/锁存器。如此,Q选通程序200可以将集成电路102(图1)的整个设计划分为均等的平方、并将每单位平方5,000个门(5K/u.sq.)识别为整个设计的最大拥塞(即,每单位平方的最大密度)。
[0030]在208,对整个设计中的每个触发器进行估计。关于以上示例,所考虑的设计102(图1)可以具有总计120万个触发器。如此,Q选通程序200可以识别集成电路102(图1)的整个设计中的120万个触发器104(图1),并且估计每个触发器的触发器深度、宽度和拥塞。
[0031]然后,在210,确定正被估计的触发器是否是最后一个触发器。如果正被估计的触发器不是整个设计中的最后一个触发器,那么在212,将计数器(S卩,在估计每个触发器时对其进行计数)递增。例如,集成电路102(图1)可以具有总计120万个触发器/锁存器。如此,Q选通程序200可以启动计数器以便开始从O至120万(整个设计102(图1)中的先前确定的触发器的总数目)的记数,以及当其从触发器O至触发器120万持续估计每个触发器的触发器深度、宽度和拥塞时将计数器递增I。因此,如果在210,Q选通程序200确定当前正被检查的触发器不是整个设计102(图1)中的最后一个触发器,那么在212,将该计数器递增I。
[0032]然后,在214,确定所考虑的触发器的相对宽度和深度。可以通过估计所考虑的触发器所驱动的触发器的数目,来确定所考虑的触发器的相对宽度。可以通过估计所考虑的当前触发器所驱动的组合逻辑门级的数目,来确定触发器的相对深度。例如,当前触发器可以具有等于20的相对宽度(S卩,当前触发器可以驱动20个触发器)和40的相对深度(S卩,当前触发器可以驱动40个组合逻辑门级)。
[0033]然后,在216,基于所计算的相对宽度和相对深度,来对正被检查的触发器进行绝对/相对分级。如此,对照所考虑的整个设计的最大宽度来估计当前触发器的相对的分级宽度。因此,当前触发器的相对的分级宽度可以包括触发器的当前相对宽度(214)与整个设计的最大宽度(202)的比率(S卩,当前触发器的相对的分级宽度=当前宽度+最大宽度)。例如,设计102(图1)可以具有等于150的最大宽度,并且当前触发器可以具有等于20的相对宽度。因此,当前触发器的分级宽度值将是20/150 = 0.1333(8卩,当前宽度/最大宽度)。
[0034]类似地,在216,估计当前触发器的相对深度。如此,对照最大深度来估计当前触发器的相对深度。因此,当前触发器的相对的分级深度等于触发器的当前深度除以整个设计的最大深度(即,当前触发器的相对深度=当前深度+最大深度)。例如,设计102(图1)可以具有等于100的最大深度(参见图1),并且当前触发器可以具有等于40的深度。因此,当前触发器的相对深度等级的分级值将是40/100 = 0.25( S卩,当前深度/最大深度)。
[0035]然后,在218,基于最大拥塞来对正被检查的当前触发器进行绝对/相对分级。因此,以与所考虑的触发器的最大拥塞估计值相同的单位来估计门密度。如此,对照整个设计的最大拥塞来估计密度的相对性。当前触发器的相对拥塞等于当前拥塞除以最大拥塞(即,当前触发器的相对拥塞=当前拥塞+最大拥塞)。例如,设计102(图1)可以具有等于每单位平方5000个门(5K个门/u.sq.)的最大拥塞值,并且当前触发器可以具有每单位平方2000个门(2K个门/u.sq.)的拥塞值;因此,当前触发器的相对拥塞等级的分级值将是2K/5K = 0.4(即,当前拥塞等级/最大拥塞)。
[0036]如果在210,Q选通程序200确定正被检查的当前触发器是所考虑的最后一个触发器,那么在220,基于针对触发器的分级的相对宽度、深度和拥塞的突出设置(prominencesetting),对设计进行Q选通。因此,在对设计中的所有触发器进行了估计后,基于它们各自的分级值(即,分级相对宽度、深度、拥塞)对触发器进行排序。根据预定标准(即,针对宽度、深度和拥塞的突出设置),仅仅对包括更高范围的分级相对宽度、分级相对深度和分级相对拥塞的触发器进行Q选通。例如,突出设置可以是针对相对分级宽度、深度和拥塞的预定标准。针对宽度、深度和拥塞的突出设置的总和必须等于总共100%。此外,用于对设计进行Q选通的标准也可以是预定的。
[0037]例如,用于对所考虑的设计进行Q选通的突出设置可以包括针对宽度的10%的标准;针对深度的1 %的标准;以及针对拥塞的80 %的标准(S卩,10%+10%+80% = 100%)。该标准还可以指定Q门百分比,由此例如,仅对整个设计的50%进行Q选通。如此,基于预定的突出设置,可以通过以下方式来获得每个估计的触发器的综合总计值:首先,将宽度、深度和拥塞的分级值乘以针对宽度、深度和拥塞的相应突出设置。其次,对该乘积的结果求和。(即,(宽度突出标准*分级宽度值)+ (深度突出标准*分级深度值)+ (拥塞突出标准*分级拥塞值))。
[0038]关于当前示例,一个示例性触发器
当前第2页1 2 3 4 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1