CN113935266A - 将模拟动态电路运用于数字测试工具的处理方法 - Google Patents
将模拟动态电路运用于数字测试工具的处理方法 Download PDFInfo
- Publication number
- CN113935266A CN113935266A CN202010854968.6A CN202010854968A CN113935266A CN 113935266 A CN113935266 A CN 113935266A CN 202010854968 A CN202010854968 A CN 202010854968A CN 113935266 A CN113935266 A CN 113935266A
- Authority
- CN
- China
- Prior art keywords
- dynamic
- dynamic circuit
- analog
- analog dynamic
- gate
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000012360 testing method Methods 0.000 title claims abstract description 66
- 238000003672 processing method Methods 0.000 title claims abstract description 16
- 238000013461 design Methods 0.000 claims description 8
- 238000000034 method Methods 0.000 claims description 7
- 230000003068 static effect Effects 0.000 description 29
- 230000006870 function Effects 0.000 description 13
- 238000010586 diagram Methods 0.000 description 2
- 238000012545 processing Methods 0.000 description 2
- 238000005265 energy consumption Methods 0.000 description 1
- 238000011156 evaluation Methods 0.000 description 1
- 230000036039 immunity Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
- G06F30/30—Circuit design
- G06F30/36—Circuit design at the analogue level
- G06F30/367—Design verification, e.g. using simulation, simulation program with integrated circuit emphasis [SPICE], direct methods or relaxation methods
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
- G06F30/30—Circuit design
- G06F30/32—Circuit design at the digital level
- G06F30/33—Design verification, e.g. functional simulation or model checking
- G06F30/3308—Design verification, e.g. functional simulation or model checking using simulation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
- G06F30/30—Circuit design
- G06F30/38—Circuit design at the mixed level of analogue and digital signals
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03K—PULSE TECHNIQUE
- H03K19/00—Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits
- H03K19/20—Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits characterised by logic function, e.g. AND, OR, NOR, NOT circuits
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03K—PULSE TECHNIQUE
- H03K19/00—Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits
- H03K19/20—Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits characterised by logic function, e.g. AND, OR, NOR, NOT circuits
- H03K19/21—EXCLUSIVE-OR circuits, i.e. giving output if input signal exists at only one input; COINCIDENCE circuits, i.e. giving output only if all input signals are identical
- H03K19/215—EXCLUSIVE-OR circuits, i.e. giving output if input signal exists at only one input; COINCIDENCE circuits, i.e. giving output only if all input signals are identical using field-effect transistors
Abstract
本发明为一种将模拟动态电路运用于数字测试工具的处理方法,包括下列步骤:(a)提供晶体管层次表示的一模拟动态电路;(b)根据该模拟动态电路中多个晶体管的运行设计对应的多个等效模型;(c)进行一取代动作,以所述等效模型取代该模拟动态电路中的多个动态逻辑元件,并形成门层次表示的该模拟动态电路;(d)将门层次表示的该模拟动态电路导入一数字测试工具以产生一测试图样;以及(e)以该测试图样来测试晶体管层次表示的该模拟动态电路。
Description
技术领域
本发明是一种集成电路测试工具的应用方法,且特别涉及一种将模拟动态电路运用于数字测试工具的处理方法。
背景技术
在集成电路中,动态电路(dynamic circuit)具有较高速、省面积、低耗能的优点。因此,动态电路已经被设计在中央处理器(CPU)、以及特殊应用集成电路(ASIC)中。相较于动态电路,静态电路(static circuit)具有较佳的抗噪声能力,但是静态电路有面积较大、速度较慢的缺点
动态电路与静态电路的差异在于动态电路中会使用时钟信号(clock signal)来运行,而静态电路中则没有时钟信号。
举例来说,静态电路可由各种静态逻辑元件(static logic element),例如非门(反闸,NOT gate)、与门(及闸,AND gate)、与非门(反及闸,NAND gate)、或门(或闸,ORgate)、或非门(反或闸,NOR gate)、异或门(互斥或闸,XOR gate)等等,构成静态组合逻辑电路(static combination logic circuit)。
动态电路可由各种动态逻辑元件(dynamic logic element),例如动态非门(动态反闸,dynamic NOT)、动态与门(动态及闸,dynamic AND)、动态与非门(动态反及闸,dynamic NAND)、动态或门(动态或闸,dynamic OR)、动态或非门(动态反或闸,dynamicNOR)、动态异或门(动态互斥或闸,dynamic XOR)等等,构成动态组合逻辑电路(dynamiccombination logic circuit)。
另外,在实际的电路设计中,静态电路是以较高阶的门层次(闸层次,Gate Level)来表示,而动态电路是以较低阶的晶体管层次(Transistor Level)来表示。下面进行说明。
请参照图1A与图1B,其所示出为一位元半加器(1-bit Half-Adder)的静态电路以及动态电路示意图。如图1A所示,静态半加器(static half adder)110包括一异或门(XORgate)112与一与门(AND gate)114。异或门112的二输入端分别接收第一输入信号A与第二输入信号B,异或门112的输出端产生加总信号S。与门114的二输入端分别接收第一输入信号A与第二输入信号B,与门114的输出端产生进位信号C。
静态半加器110可将第一信号A与第二信号B相加,并产生加总信号S与进位信号C。举例来说,当第一信号A与第二信号B皆为“0”时,加总信号S与进位信号C皆为“0”。当第一信号A与第二信号B为“1,0”或者“0,1”时,加总信号S为“1”,且进位信号C为“0”。当第一信号A与第二信号B皆为“1”时,加总信号S为“0”,且进位信号C为“1”。其中,“1”为逻辑高电平,“0”为逻辑低电平。
再者,如图1B所示,动态半加器(dynamic half adder)120包括多个晶体管a1~a8、b1~b6、c1。其中,晶体管a1~a8、c1组合成动态异或门(dynamic XOR)。晶体管b1~b6、c1组合成动态与门(dynamic AND)。另外,时钟信号CLK控制动态异或门(dynamic XOR)中的晶体管a1、c1。时钟信号CLK控制动态与门(dynamic AND)中的晶体管b1、c1。换言之,动态半加器120接收时钟信号CLK、第一信号A、第二信号B,产生加总信号S与进位信号C。
当时钟信号CLK为逻辑低电平(例如接地电压GND)时,为预充电相位(pre-chargephase),使得加总信号S与进位信号C维持在逻辑低电平。当时钟信号CLK为逻辑高电平(例如供应电压Vdd)时,为运算相位(evaluation phase)。此时,动态半加器120可将第一信号A与第二信号B相加,并产生加总信号S与进位信号C。其详细运行原理此处不再赘述。
基本上,随着电路的功能增加,电路的复杂度也会增加。举例来说,一位元静态全加器(1-bit static full adder)可利用两个一位元静态半加器以及一个或门(OR gate)组成。明显地,一位元静态全加器中的静态逻辑元件(static logic element)数目更多,连接关系更复杂。
同理,一位元动态全加器中将会有更多的晶体管所组成。再者,设计在中央处理器(CPU)中的加法器至少为32位元加法器(32bit adder),因此可以预见32位元动态加法器中的晶体管数量更多且连接关系更加复杂。
当静态电路与动态电路设计完成后,需要利用测试工具来验证电路是否可以正常运行。自动测试图样产生系统(Automatic test pattern generation,以下简称ATPG)为一种数字测试工具(digital testing tool),其可产生测试图样(test pattern)供给数字电路(digital circuit)进行测试使用。换言之,ATPG适合运用于以门层次(Gate Level)来表示的静态电路。
当静态电路设计完成后,可将静态电路导入ATPG系统。此数字测试工具可针对静态电路的输入端点、输出端点以及内部所有的节点(node)产生测试图样(test pattern)。之后,即可利用测试图样来测试静态电路。于进行测试时,可将测试图样输入静态电路,并且根据静态电路内的节点与输出端所产生的数据与预期的数据是否相符,并决定静态电路是否能够正常运行,或者出现设计错误。换言之,ATPG所产生的测试图样对于静态电路来说有绝佳的测试覆盖率(test coverage)。
然而,动态电路为一种模拟电路。此模拟动态电路的运行是根据信号的高低电平来开启或关闭晶体管,并驱动下一级的晶体管。因此,模拟动态电路中包括多驱动路径(multi-drive path)、上拉路径(pull-up path)、下拉路径(pull-down path)、回路(loop)等等。
由于动态电路是以晶体管层次(Transistor Level)来表示,因此不适用于数字测试工具。换言之,由于模拟动态电路中的节点连接至各种路径或者回路,所以ATPG无法针对模拟动态电路的内部节点(node)来产生测试图样(test pattern)。因此,将模拟动态电路导入ATPG系统时,其测试覆盖率(test coverage)将非常差。
发明内容
本发明提出一种将模拟动态电路运用于数字测试工具的处理方法,包括下列步骤:(a)提供晶体管层次表示的一模拟动态电路;(b)根据该模拟动态电路中多个晶体管的运行设计对应的多个等效模型;(c)进行一取代动作,以所述等效模型取代该模拟动态电路中的多个动态逻辑元件,并形成门层次表示的该模拟动态电路;(d)将门层次表示的该模拟动态电路导入一数字测试工具以产生一测试图样;以及(e)以该测试图样来测试晶体管层次表示的该模拟动态电路。
附图说明
为了对本发明的上述及其他方面有更佳的了解,下文特举优选实施例,并配合附图作详细说明如下:
图1A与图1B为一位元半加器的静态电路以及动态电路示意图。
图2为本发明的处理方法流程图。
图3A与图3B为动态异或门与动态与门及其等效模型。
图4A至图4C为动态与非门、动态或非门与动态与或非门及其等效模型。
其中,附图标记说明如下:
110,120:半加器
112:异或门
114:与门
S202~S210:步骤流程
具体实施方式
针对现有模拟动态电路无法运用于数字测试工具的问题。本发明提出一种将模拟动态电路运用于数字测试工具的处理方法。
在本发明的处理方法中,提供等效模型(equivalent model)用来取代模拟动态电路中的动态逻辑元件,使得模拟动态电路可以门层次(Gate Level)来表示,并导入数字测试工具(digital testing tool)用以产生测试图样(test pattern)。之后,于模拟动态电路进行测试时,将测试图样运用模拟动态电路,以提高测试覆盖率(test coverage)。
请参照图2,其所示出为本发明的处理方法流程图。当模拟动态电路设计完成后,即可开始进行本发明的处理方法。首先,提供晶体管(Transistor Level)层次表示的模拟动态电路(步骤S202)。
接着,根据模拟动态电路中晶体管的运行设计对应的等效模型(步骤S204)。由于模拟动态电路中是利用晶体管组成各种动态逻辑元件,因此针对每一个动态逻辑元件可以设计对应的一等效模型。根据本发明的实施例,利用硬件描述语言(Hard DescriptionLanguage,简称HDL)来设计等效模型。举例来说,利用硬件描述语言Verilog来将动态逻辑元件的功能(function)转换为门层次(Gate Level)所表示的等效模型。
之后,进行取代动作,以等效模型取代模拟动态电路中的动态逻辑元件,并形成门层次(Gate Level)表示的模拟动态电路(步骤S206)。换言之,于取代动作完成后,模拟动态电路中的所有动态逻辑元件会由对应的等效模型所取代,使得模拟动态电路成为以门层次(Gate Level)所表示的模拟动态电路。
接着,将门层次(Gate Level)表示的模拟动态电路导入数字测试工具以产生测试图样(步骤S208)。亦即,将门层次(Gate Level)表示的模拟动态电路导入ATPG系统,并针对模拟动态电路的输入端点、输出端点以及内部所有的节点(node)产生测试图样。
当测试图样产生之后,即可利用测试图样来测试晶体管层次表示的模拟动态电路(步骤S210)。于进行测试时,可将测试图样输入晶体管层次表示的模拟动态电路,并且根据晶体管层次表示的模拟动态电路内的节点与输出端所产生的数据来判断是否与预期的数据相符。于相符时,即确认模拟动态电路能正常运行;于不相符时,判断模拟动态电路设计错误。
换言之,运用本发明的处理方法,可将晶体管层次(Transistor Level)表示的模拟动态电路转换成为将门层次(Gate Level)表示的模拟动态电路。因此,转换后的模拟动态电路可以顺利地导入ATPG系统,使得ATPG系统所产生的测试图样对于模拟动态电路来说有好的测试覆盖率(test coverage)。
以下以一位元动态半加器(1-bit Dynamic Half-Adder)为例来说明本发明的处理方法。由图1B可知,动态半加器120为晶体管层次(Transistor Level)表示的模拟动态电路。再者,根据模拟动态电路的运行可知,晶体管a1~a8、c1组合成动态异或门(dynamicXOR)。另外,晶体管b1~b6、c1组合成动态及闸(dynamic AND)。
如图3A所示,根据动态异或门(dynamic XOR)的功能(function),进一步转换为Verilog码(Verilog code)作为动态异或门(dynamic XOR)的等效模型。亦即,动态异或门(dynamic XOR)的等效模型为:
//equivalent model XOR
if CLK=0
S=1
if CLK=1
S=(not(A)and(B))or((A)and not(B))
如图3B所示,根据动态与门(dynamic AND)的功能(function),进一步转换为Verilog码(Verilog code)作为动态与门(dynamic AND)的等效模型。亦即,动态与门(dynamic AND)的等效模型为:
//equivalent model AND
if CLK=0
C=1
if CLK=1
C=(A and B)
当等效模型完成之后,即可进行取代动作,以等效模型取代一位元动态半加器(1-bit Dynamic Half-Adder)中的动态异或门(dynamic XOR)与动态与门(dynamic AND),并形成门层次(Gate Level)所表示的一位元动态半加器(1-bit Dynamic Half-Adder)。
接着,将门层次(Gate Level)表示的一位元动态半加器(1-bit Dynamic Half-Adder)导入ATPG系统,并针对模拟动态电路的输入端点、输出端点以及内部所有的节点(node)产生测试图样。当测试图样产生之后,即可利用测试图样来测试一位元动态半加器(1-bit Dynamic Half-Adder)。
当然,除了上述的动态异或门(dynamic XOR)与动态及闸(dynamic AND)之外,也可以先设计各种动态逻辑元件的等效模型,存储于数据库中。当模拟动态电路进行取代动作时,可直接由数据库中选取对应的等效模型。以下以图4A至图4C简单介绍其他动态逻辑元件的等效模型。
如图4A所示,其为动态与非门(dynamic NAND)的等效模型。根据动态与非门(dynamic NAND)的功能(function)可设计其等效模型为:
//equivalent model NAND
if CLK=0
OUT=1
if CLK=1
OUT=not(A and B)
如图4B所示,其为动态或非门(dynamic NOR)的等效模型。根据动态或非门(dynamic NOR)的功能(function)可设计其等效模型为:
//equivalent model NOR
if CLK=0
OUT=1
if CLK=1
OUT=not(A or B)
如图4C所示,其为动态与或非门(dynamic and-or-inverter(AOI))的等效模型。根据动态与或非门(dynamic AOI)的功能(function)可设计其等效模型为:
//equivalent model AOI
if CLK=0
OUT=1
if CLK=1
OUT=not(A and(B or C))
当然,除了上述动态逻辑元件的等效模型之外,在此领域的技术人员也可以根据本发明所披露的技术特征来自行设计各种等效模型,使得每一个等效模型皆有对应的Verilog码,并存储于数据库中,可运用于本发明。
由以上的说明可知,本发明提出一种将模拟动态电路运用于数字测试工具的处理方法。本发明可将晶体管层次(Transistor Level)表示的模拟动态电路转换成为门层次(Gate Level)表示的模拟动态电路,使得转换后的模拟动态电路可以顺利地导入ATPG系统,使得ATPG系统所产生的测试图样对于模拟动态电路来说有好的测试覆盖率(testcoverage)。
综上所述,虽然本发明已以优选实施例公开如上,然其并非用以限定本发明。本发明所属技术领域中技术人员,在不脱离本发明的精神和范围内,当可作各种的变动与润饰。因此,本发明的保护范围当视权利要求所界定者为准。
Claims (8)
1.一种将模拟动态电路运用于数字测试工具的处理方法,该处理方法包括下列步骤:
(a)提供晶体管层次表示的一模拟动态电路;
(b)根据该模拟动态电路中多个晶体管的运行设计对应的多个等效模型;
(c)进行一取代动作,以所述等效模型取代该模拟动态电路中的多个动态逻辑元件,并形成门层次表示的该模拟动态电路;
(d)将门层次表示的该模拟动态电路导入一数字测试工具以产生一测试图样;以及
(e)以该测试图样来测试晶体管层次表示的该模拟动态电路。
2.如权利要求1所述的处理方法,其中,该数字测试工具为一自动测试图样产生系统。
3.如权利要求1所述的处理方法,其中,所述等效模型存储于一数据库。
4.如权利要求1所述的处理方法,还包括:利用一硬件描述语言来设计每一该等效模型。
5.如权利要求4所述的处理方法,其中,该硬件描述语言为一Verilog硬件描述语言。
6.如权利要求5所述的处理方法,其中,每一该等效模型皆具有对应的一Verilog码。
7.如权利要求1所述的处理方法,还包括:将该测试图样输入晶体管层次表示的该模拟动态电路,并且根据晶体管层次表示的该模拟动态电路内的多个节点与至少一输出端所产生的数据来判断是否与预期的数据相符。
8.如权利要求7所述的处理方法,还包括:当与预期的数据相符时,确认该模拟动态电路正常运行;以及,当与预期的数据不相符时,判断该模拟动态电路设计错误。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
TW109123696A TWI719917B (zh) | 2020-07-14 | 2020-07-14 | 將類比動態電路運用於數位測試工具的處理方法 |
TW109123696 | 2020-07-14 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN113935266A true CN113935266A (zh) | 2022-01-14 |
Family
ID=75745957
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010854968.6A Pending CN113935266A (zh) | 2020-07-14 | 2020-08-24 | 将模拟动态电路运用于数字测试工具的处理方法 |
Country Status (3)
Country | Link |
---|---|
US (1) | US11144697B1 (zh) |
CN (1) | CN113935266A (zh) |
TW (1) | TWI719917B (zh) |
Family Cites Families (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6560572B1 (en) * | 1999-04-15 | 2003-05-06 | Interactive Image Technologies, Ltd. | Multi-simulator co-simulation |
US6957403B2 (en) | 2001-03-30 | 2005-10-18 | Syntest Technologies, Inc. | Computer-aided design system to automate scan synthesis at register-transfer level |
TWI287639B (en) * | 2003-02-14 | 2007-10-01 | Advantest Corp | A distributed operating system for a semiconductor test system for testing at least one device under test |
EP1610136B1 (en) * | 2003-03-31 | 2007-07-11 | Advantest Corporation | Test emulator |
US7134105B2 (en) | 2003-12-09 | 2006-11-07 | Sun Microsystems, Inc. | Multiple level transistor abstraction for dynamic circuits |
US8280687B2 (en) * | 2004-03-31 | 2012-10-02 | Mentor Graphics Corporation | Direct fault diagnostics using per-pattern compactor signatures |
US8234617B2 (en) * | 2009-10-01 | 2012-07-31 | Cadence Design Systems, Inc. | Method and system for re-using digital assertions in a mixed signal design |
EP2888818A1 (en) * | 2012-08-21 | 2015-07-01 | Missing Link Electronics Inc. | Configurable mixed-signal systems |
US8841974B2 (en) * | 2012-09-06 | 2014-09-23 | Silicon Image, Inc. | Test solution for ring oscillators |
US8789006B2 (en) * | 2012-11-01 | 2014-07-22 | Nvidia Corporation | System, method, and computer program product for testing an integrated circuit from a command line |
US9594860B2 (en) * | 2013-12-19 | 2017-03-14 | Nxp Usa, Inc. | Analog mixed signal model equivalence checking |
US10095821B1 (en) * | 2016-09-27 | 2018-10-09 | Cadence Design Systems, Inc. | Transistor level low power verification for mixed signal circuit design |
-
2020
- 2020-07-14 TW TW109123696A patent/TWI719917B/zh active
- 2020-08-24 CN CN202010854968.6A patent/CN113935266A/zh active Pending
- 2020-09-15 US US17/020,868 patent/US11144697B1/en active Active
Also Published As
Publication number | Publication date |
---|---|
TW202202863A (zh) | 2022-01-16 |
TWI719917B (zh) | 2021-02-21 |
US11144697B1 (en) | 2021-10-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8122404B2 (en) | Performing a statistical timing abstraction for a hierarchical timing analysis of VLSI circuits | |
US7157930B2 (en) | Scan flip flop, semiconductor device, and production method of semiconductor device | |
Srinivasan et al. | Single-event mitigation in combinational logic using targeted data path hardening | |
Singh et al. | Controller architecture for memory BIST algorithms | |
CN109669669A (zh) | 误码生成方法及误码生成器 | |
Pramanick et al. | Synthesis of combinational logic circuits for path delay fault testability | |
CN113935266A (zh) | 将模拟动态电路运用于数字测试工具的处理方法 | |
Sumanth et al. | A Proposal for Synthesis of Synchronous Counters | |
JP5614781B2 (ja) | セル・ライブラリから選択された信号スキュー調整セルを備えた集積回路 | |
US7031889B1 (en) | Method and apparatus for evaluating the design quality of network nodes | |
US20030188272A1 (en) | Synchronous assert module for hardware description language library | |
Wang et al. | A 1.25 GHz 32-bit tree-structured carry lookahead adder using modified ANT logic | |
CN113919256A (zh) | 一种布尔可满足性验证方法、系统、cnf生成方法及存储装置 | |
Kandasamy et al. | Analysis of self checking and self resetting logic in CLA and CSA circuits using gate diffusion input technique | |
US5740407A (en) | Method of generating power vectors for circuit power dissipation simulation having both combinational and sequential logic circuits | |
Maheshwari et al. | A VHDL-based modeling approach for rapid functional simulation and verification of adiabatic circuits | |
Kazma et al. | Investigating the efficiency and accuracy of a data type reduction technique for soft error analysis | |
US6760891B2 (en) | Simulator of dynamic circuit for silicon critical path debug | |
Natarajan et al. | Switch-level delay test | |
Guo et al. | Fast and area-time efficient Berger code checkers | |
Hayes et al. | A model for transient faults in logic circuits | |
Trivedi et al. | Implementation of Low-Power BIST Using Bit Swapping Complete Feedback Shift Register (BSCFSR) | |
Birner et al. | ARROW-A generic hardware fault injection tool for NoCs | |
JPH10301983A (ja) | 消費電力計算方法 | |
Krishna et al. | A Proposal for Low Power Test Pattern Generator |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |