首页> 中国专利> 用于扫描模式执行静态时序分析的方法及装置

用于扫描模式执行静态时序分析的方法及装置

摘要

一种用于扫描模式执行静态时序分析的方法及装置,该装置由一被测试电路及该电路中多个测试方块所组成。每一个测试方块通常由复数个循序元件及复数个逻辑元件所组成。每一个测试方块操作包含转移模式的第一模式及捕捉模式的第二模式。此转移模式通常与同步计时的多个扫描计时器一起操作,而此捕捉模式通常与多个扫描计时器一起操作,但一次只有一个计时器在工作。该方法及装置可以用于扫描模式中检查芯片的时序;于ATPG所产生的向量中考虑多个计时器的异步关系;避免根据供应于芯片上的时间讯号的特殊时序,产生时序违例的可能错误报告。

著录项

  • 公开/公告号CN1591036A

    专利类型发明专利

  • 公开/公告日2005-03-09

    原文格式PDF

  • 申请/专利权人 开曼群岛威睿电通股份有限公司;

    申请/专利号CN200410079188.X

  • 发明设计人 阿朗·沙多;杨林利;

    申请日2004-09-16

  • 分类号G01R31/28;G06F17/50;

  • 代理机构11219 中原信达知识产权代理有限责任公司;

  • 代理人文琦;陈肖梅

  • 地址 英属西印度群岛开曼群岛

  • 入库时间 2023-12-17 16:00:00

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2018-09-04

    未缴年费专利权终止 IPC(主分类):G01R31/28 授权公告日:20080514 终止日期:20170916 申请日:20040916

    专利权的终止

  • 2016-08-24

    专利权的转移 IPC(主分类):G01R31/28 登记生效日:20160801 变更前: 变更后: 申请日:20040916

    专利申请权、专利权的转移

  • 2008-05-14

    授权

    授权

  • 2005-05-11

    实质审查的生效

    实质审查的生效

  • 2005-03-09

    公开

    公开

说明书

技术领域

本发明有关于扫描计时器(scan clocks),特别是有关于包含多个扫描计时器的芯片中,用于扫描模式执行静态时序分析(Static TimingAnalysis,STA)的方法及装置。

背景技术

一般测试芯片于芯片制造完成之后,而高可测试度可通过合并设计及测试过程来完成。扫描设计(scan design)为一般测试技术中的一种。一般的扫描设计电路将各种不同的储存元件串联置入扫描链(scan chain)中。将扫描电路置入设计的过程牵涉到以可扫描的序列元件(scannable sequential elements)取代序列元件,然后将其置入一个或多个扫描缓存器(扫描链)。此扫描链为此设计之中透过初始的输入输出将资料移入移出的必要机制。这样的扫描转移操作(scanshifting operation)是由扫描致能接脚(scan enable pin)所控制。转移资料进入芯片使得循序元件处于已知状态。借着以此已知资料使该电路运作并得到输出,可以观察到结果并与预期的资料比较。

将资料移入或移出扫描链是于「转移模式」(shift mode)时完成。而此电路的运作及捕捉资料则于「捕捉模式」(scan mode)时完成。于捕捉模式中,扫描致能讯号处于非激发状态,因而此设计的功能路径可以产生发挥作用。于一或多个扫描计时器端给定一个脉波来捕捉资料。当芯片处于捕捉模式时,使用者可通过自动测试样式产生程序(Automatic Test Pattern Generation,ATPG)工具来控制要提供多少个捕捉计时器脉波(capture clock pulses)。捕捉模式之后紧跟着转移模式,且资料移出并与所预期的资料比较。

自动测试样式产生程序(ATPG)工具可用于产生样式来测试芯片的功能。此ATPG工具可依需要使芯片处于转移或是捕捉模式。此样式包含被扫描端以及初始输入驱动进入芯片的数据。脉波亦可利用扫描计时器端来驱动。此ATPG工具还可在特计时间产生与芯片输出的资料作比较的所预期的资料。

为了验证的目的,确保任一模式中没有时序违例(timingviolations)以确保扫描电路的适当操作及观察到正确的数据是相当重要的。因此,应该运用静态时序分析工具,且准备及保留违例(setup andhold violations)需要被修正。为了避免计时器树(clock trees)之间的计时器歪斜(clock skew)事件,基本上ATPG工具一次产生一个捕捉脉波。通常静态时序分析(STA)工具用于分析同步计时的多个计时器,若用于分析异步工作的计时器时序,则可能发生错误路径(falsepath)的报告结果。

有需要提出一种方法及装置可以(1)用于扫描模式中检查芯片的时序,(2)于ATPG所产生的向量中考虑多个计时器的异步关系,及(3)避免根据供应于芯片上的时间讯号的特殊时序,产生时序违例的可能错误报告。

发明内容

本发明的目的是提供一种用于扫描模式执行静态时序分析的方法及装置,该方法及装置用于当多个扫描计时器在扫描模式中使用时,检查芯片的时序。一些逻辑路径可能只出现于扫描模式(例如到旁支存储器的逻辑或形成扫描链的路径)。为了确保一个特定的设计不会引起时序违例,静态时序分析(STA)可能在此设计处于扫描模式时执行。此扫描模式通常具有二个子模式,「转移模式」及「捕捉模式」。于转移模式之中,所有的扫描计时器同时地工作。因此,于静态时序分析时设定所有的扫描计时器为激发状态的标准技术将可产生准备与保留违例的正确分析。然而,于捕捉模式中,ATPG工具一次只产生一个脉波。因此,当具有多个计时器时,需要一种传统STA方法的改进,于捕捉模式中正确地检查时序,且避免触发许多错误的违例。

为达上述目的,本发明提供的一种用于扫描模式执行静态时序分析的方法,其特征是,包含以下步骤:

(A)提供复数个测试方块,任一该测试方块包含(1)复数个测试元件及(2)复数个逻辑元件;及

(B)操作于(1)一捕捉模式,利用多个扫描计时器,一次只有该扫描计时器之一被触发及

(2)一转移模式,一次触发多个扫描计时器。

本发明所提供的一种用于扫描模式执行静态时序分析的装置,是用于测试的电路及复数个电路内的测试方块所组成的装置。该装置包含提供一电路可以(1)与多个扫描计时器在扫描模式中操作及/或(2)与此设计中借着不同扫描计时器计时的区块间的功能路径操作。

为达上述目的,本发明提供的一种用于扫描模式执行静态时序分析的装置,其特征是,包含:

一被测试电路;及

复数个测试方块于该测试电路内,任一该测试方块包含(i)复数个循序元件及(ii)复数个逻辑元件,其中(1)任一该测试方块操作于(a)包含一转移模式的一第一模式中及(b)包含一捕捉模式的一第二模式中,(2)该转移模式与同时计时的复数个扫描计时器一起操作,及(3)该捕捉模式与复数个扫描计时器一起操作,该复数个扫描计时器一次只有一个被触发。

本发明还包括其它重要技术特征和步骤,以下将结合附图和具体

实施例给予详细说明。

附图说明

本发明所有的目的、特色及优点,将由以下的详细描述及权利要求范围与附图中清楚表达,其中:

图1为在转移及捕捉模式中包含多个补捉脉波的扫描计时器;

图2为一处于转移模式的电路;

图3为一处于捕捉模式的电路;

图4为于STA中多个激发的扫描计时器;

图5为于捕捉模式中ATPG测试样式扫描计时器;

图6为STA工具所分析的时序弧线;

图7为具有一捕捉脉波于转移及捕捉模式的扫描计时器;及

图8为一时域内的时序。

图中符号说明:

100      芯片

102a-102n循序元件

103a-103n逻辑区块

104a-104n循序元件

105a-105n逻辑区块

106a-106n循序元件

107a-107n逻辑区块

108a-108n扫描计时器端

具体实施方式

参阅图1,表示一典型的时序波形图。此波形可能发生于当使用者允许多个捕捉脉波时,由ATPG工具驱动于扫描计时器端(未图标)。于此图显示许多扫描计时器讯号(如SCAN_CLK0至SCAN_CLK2)及一个扫描致能讯号(例如SCAN_EN)。

于转移模式中,扫描致能讯号SCAN_EN设定为高电位(HIGH)。如此可让数据透过一或多个扫描数据输入端移入一或多个扫描链。于任一计时器周期中,新数据移入任一特定的扫描链。转移模式中计时器周期的数目等于最长扫描链元件的数目。当所有的扫描链都已负载时,捕捉模式随即开始。于补捉模式中,扫描致能讯号SCAN_EN通常设定为低电位(LOW),且ATPG工具(未图标)于扫描计时器端提供计时器脉波。由于在不同时域(clock domain)间可能有计时器歪斜,ATPG工具于只有在一次只发出一个脉波的区域产生测试样式,以避免时序违例。如果于此设计中,在二个或更多以不同的扫描计时器计时的区块之间没有功能路径,此工具会对多个扫描计时器同时提供捕捉脉波。

通常,三个个别的静态时序分析的执行需要用于扫描模式中检查时序。一个分析的执行用于转移模式。两个分析的执行通常用于捕捉模式。于转移模式中,扫描致能讯号SCAN_EN设定为HIGH。标准的STA方法(所有的扫描计时器设定为激发态)可能于转移模式中检查准备与保持时序。于转移模式中,同时驱动所有的计时器。于捕捉模式中,扫描致能讯号SCAN_EN设定为LOW。ATPG工具只于扫描计时器端中之一端驱动一个捕捉脉波。于下一个计时器周期,ATPG工具可能于一不同的扫描计时器端驱动另一捕捉脉波。

参阅图2,为一处于转移模式的电路(或芯片)100(例如将讯号SCAN_EN设定为HIGH)。此电路100通常由一方块A、一方块B及一方块C所组成。方块A通常由多个元件102a-102n所组成。可以将元件102a-102n如循序元件来完成。举例来说,可以将元件102a-102n如正反器来完成(flip-flops),而正反器则由一扫描计时器来驱动(例如SCAN_CLK0)。循序元件102a-102n形成一扫描链A。方块B通常由多个元件104a-104n所组成。元件104a-104n通常形成一扫描链B。方块C通常由多个元件106a-106n所组成。元件106a-106n形成一扫描链C。由于方块A、方块B及方块C由不同的扫描计时器SCAN_CLK0-SCAN_CLK1来驱动,可以将方块A中的扫描链的最后一个元件102n以锁存器(lock-up latch)来实施。当资料移入或移出方块A的扫描链时,锁存器102n可避免时序违例的发生。于图2的例子,实施了二条扫描计时器(例如SCAN_CLK0及SCAN_CLK1)。然而,可以加入额外的计时器来达到一特定设施的设计要求。通常扫描计时器SCAN_CLK0及SCAN_CLK1于转移模式中同时地驱动电路100。

当所有的扫描链A、B及C透过转移模式而皆已负载,捕捉模式随即开始。当电路100处于捕捉模式时,扫描致能讯号SCAN_EN设定为LOW,开始测试功能路径。ATPG测试于一或多个扫描计时器端108a-108n提供捕捉计时器脉波。因为于不同之时域(例如SCAN_CLK0及SCAN_CLK1)可能有计时器歪斜,ATPG工具(未图标)只于扫描计时器端108a-108n中之一端产生测试样式,如此可避免时序违例。若于一特定的设计中,由不同的扫描计时器所驱动的二个或更多的区域没有功能路径,ATPG工具可一次于多个扫描计时器提供捕捉脉波。

参阅图3,为芯片100处于捕捉模式的例子(例如将讯号SCAN_EN设定为LOW),如此功能路径可以发挥功能。除了循序元件102a-102n、104a-104n及106a-106n外,多个逻辑区块(例如组合逻辑)103a-103n、105a-105n及107a-107n亦显示于图中。于捕捉模式,讯号SCAN_CLK0产生脉波。循序元件102a-102n通常由讯号SCAN_CLK0所驱动,且可由初始输入(例如IN0或IN1)捕捉资料。循序元件102a-102n亦可由位于相同的或不同的功能方块中的循序元件或逻辑区块捕捉资料。当讯号SCAN_CLK1产生脉波,讯号SCAN_CLK0则处于非激发态。接下来由讯号SCAN_CLK1驱动的特定循序元件从初始输入IN2或IN3(或者借着其它的循序元件或逻辑区块)捕捉资料。于捕捉模式及转移模式中,被捕捉进入所有循序元件106a-106n的资料,借着将初始输出讯号(例如OUT0-OUT4)与所预期的资料作比较来确认其为有效的资料。

参阅图4,附图中具有二个扫描计时器。当此二计时器对于STA工具以相同的时序参数设定,STA工具假设计时器于每一周期皆发出脉波。然而,STA工具一次只于一个扫描计时器产生脉波时产生测试样式,脉波B及C(或脉波A及D)实际上并不存在。STA工具实际上可以产生如图5所示的测试样式中的一种。

因此,时序分析需于捕捉模式中二次执行之内完成。第一次执行通常包含一准备时序检验(setup timing check)。所有的计时器讯号一般设定成本质上相同的时序参数。只有准备程序报告(setup report)需要检验,且需要修正时序违例。应该忽略保留违例(hold violations),因为其中可能包含错误的违例的情形。

参阅图6,脉波A与D之间,以及脉波C与B之间的时序弧线(timing arcs)出现于附图之中。同时也检验了一时域(未图标)内的时序(例如脉波A与B之间,以及脉波C与D之间的时序)。要忽略脉波A与C之间的时序(由于脉波A与脉波C并非同时产生,因而不是一个有效的例子)。因此,保留违例可以被忽略。

第二次执行通常包含一保留程序检验(hold check)。所有的计时器都要被设定,但是在任一时间与其它的时间之间,需要有一或多个SET_FALSE_PATH的叙述(statements)。SET_FALSE_PATH的叙述指示STA工具忽略两个时域之间的时序弧线。例如,如果有三个扫描计时器,可以运用以下的叙述:

SET_FALSE_PATH-from SCAN_CLK0-to SCAN_CLK1

SET_FALSE_PATH-from SCAN_CLK0-to SCAN_CLK2

SET_FALSE_PATH-from SCAN_CLK1-to SCAN_CLK0

SET_FALSE_PATH-from SCAN_CLK1-to SCAN_CLK2

SET_FALSE_PATH-from SCAN_CLK2-to SCAN_CLK0

SET_FALSE_PATH-from SCAN_CLK2-to SCAN_CLK1

特定的STA工具可以使用SET_FALSE_PATH指令的文法(例如PrimeTime,Synopsys出品)作为指令集的一部份。其它的指令可以为特定的STA工具使用。然而,一般而言所使用的特定的文法,会去指示特定工具去忽略两个时域之间的时序弧线。

参阅图6,借着完成SET_FALSE_PATH指令,STA工具忽略脉波A与C之间的保留程序检验,但会检验相同时域内正反器之间的准备时间。要检验准备程序报告,且要修正违例。

如果使用者选择当执行ATPG工具且产生测试样式时,每次捕捉只有一个捕捉脉波,则只需一次执行。所有的计时器都要被设定,且类似于前一案例的第二次执行,在任一时间与其它的时间之间,需要有一或多个SET_FALSE_PATH的叙述(statements)。使用者应检验准备及保留违例,且须修正违例。

参阅图7,附图为于扫描计时器端由ATPG工具产生的一组典型的波形图。图7显示使用者允许ATPG工具于每一捕捉模式只产生一捕捉脉波。一般而言,并不需要二扫描计时器之间的准备程序检验,因为只有一个计时器被触发。

参阅图8,只有于一时域内的时序要被检验。脉波A与D、脉波C与B及脉波A与C之间的时序弧线需被忽略(因为于一扫描计时器通过ATPG工具所产生的一脉波并不是一个有效的例子)。

本发明可确保得到只有真实违例路径发生的正确报告。无本发明的捕捉模式的STA分析可能产生许多错误的保留违例的报告,且遮蔽了真实的违例报告。本发明可涵盖转移及捕捉模式,且考虑到由ATPG工具对扫描计时器所产生的特殊时序。

本发明的各种不同的讯号通常为「on」(数字的HIGH或1),或「off」(数字的LOW或0)。然而on及off状态的特定极性(如激发的及非激发的)可以在达到一特定实施的设计标准的情况下加以调整(例如加以反向)。

除此之外,可能会加上反向器来改变讯号的一特定极性。此处所使用的术语「同时地(simultaneously)」是用来描述事件发生于相同的时间周期,而不是只局限于事件必须开始于同一时间点、结束于同一时间点或持续相同的时间。

本发明可借着利用多重时域的高速设计来分析下一代的无线行动声音及资料应用之分码多重存取(CDMA)芯片组。对新的CDMA设计执行静态时序分析可以验证布局及出产新的集成电路之前任何修正的不足之处。本发明亦可由特殊应用集成电路(ASIC)工程师来维护现存CDMA及相关设计以整合成较大的系统或系统芯片(system-on-a-chip)。本发明除了可用于CDMA设计之外,亦可用于其它设计的静态时序分析。

本发明经由较佳实施例特别加以附图及阐明,需了解本领域中一般现有技术者不脱离本发明之精神的等效改变或修饰,均应包含在本发明的权利要求之内。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号