集成电路的时序分析方法及集成电路的时序分析装置与流程

文档序号:17796145发布日期:2019-05-31 20:47阅读:220来源:国知局
集成电路的时序分析方法及集成电路的时序分析装置与流程

本发明有关集成电路的时序分析方法,尤指一种能够简化分析及提升精确性的时序分析方法。



背景技术:

随者半导体制造技术的进步,电路组件的尺寸不断地缩小,电路组件运行的速度也能够不断地提升。然而,对于电路设计者而言,也带来更多的挑战。

许多半导体代工业者或是软件业者会将某些较常用的电路组件制作成标准组件库(standard cell library),并且提供这些标准组件的特性。因此,电路设计者使用这些标准组件时,能够准确地预估电路组件的电气特性以及电路组件所处理的信号的时序关系,而能设计出所需的集成电路产品。

对于模拟电路或者混合信号电路而言,由于其中的至少部分电路区块并非采用标准组件的方式实施,而是由电路设计者因应各种需求所设计。因此,当电路设计者欲分析这些模拟电路或者混合信号电路的时序关系时,通常需要将整个电路进行仿真分析,并且需要广泛地输入不同的频率信号(clock signal)的样式,才有可能找到影响时序关系的关键样式(killer pattern),以对这些电路进行修改。然而,这种时序分析方式不但复杂且耗时,且若未找到频率信号的关键样式进行仿真,则将来集成电路产品很可能无法发现时序上的错误而造成无法正常运作。

此外,由于对整个电路进行计算机仿真分析的方式太耗时,也有的电路设计者采用人工的方式对频率信号的信号路径进行频率分析,以降低时序分析所需时间。然而,以人工的方式进行时序分析可能因为疏忽而遗漏了某些信号路径或者造成误判,使得人工方式所进行的时序分析常常更为不准确。

此外,模拟电路或者混合信号电路中的电路区块常都是电路设计者因应各种需求所设计,即便对某个电路区块进行如同标准组件般的特性分析,该电路区块也不一定会应用于其它集成电路产品中。因此,对于模拟电路或者混合信号电路而言,目前以传统计算机仿真方式及人工方式皆无法准确且有效率地进行时序分析,而需要一种能够有效提升时序分析的准确性并能降低所需的时间的方法。



技术实现要素:

有鉴于此,如何解决上述相关领域中集成电路时序分析的准确性及效率的问题,实为业界有待解决的问题。

本说明书提供一种集成电路的时序分析方法的实施例,用于分析一集成电路,该集成电路的至少部份电路区块非使用标准组件,其包含:读取该集成电路的一网表,该网表中包含该集成电路的一频率信号的一测量起点以及N个测量端点,该测量起点与该N个测量端点之间分别包含有一信号路径,而共包含有N个信号路径,并且该测量起点与该N个测量端点之间分别包含有一传输线或至少一个电路区块;分析该N个信号路径,以产生该集成电路的一简化网表;其中若一第一电路区块用于接收该频率信号的一输入端点及用于输出该频率信号的一输出端点皆耦接于该N个信号路径的一第一信号路径时,于该简化网表中记录该第一电路区块,以计算该第一信号路径的一频率延迟;若该第一电路区块的该输入端点耦接于该第一信号路径而该输出端点未耦接于该第一信号路径时,于该简化网表中以一阻抗性负载记录该第一电路区块,以计算该第一信号路径的该频率延迟;以及依据该集成电路的该简化网表,计算该频率信号分别通过该N个信号路径的N个频率延迟。

本说明书另提供一种计算机程序产品的实施例,储存在一集成电路时序分析装置的一非易失性储存装置中,该集成电路时序分析装置的一控制电路执行该计算机程序产品以分析一集成电路,该集成电路的至少部份电路区块非使用标准组件,该计算机程序产品包含:一网表读取模块,设置成读取该集成电路的一网表;其中该网表中包含该集成电路的一频率信号的一测量起点以及N个测量端点,该测量起点与该N个测量端点之间分别包含有一信号路径,而共包含有N个信号路径,并且该测量起点与该N个测量端点之间分别包含有一传输线或至少一个电路区块;一信号路径分析模块,设置成分析该N个信号路径,以产生该集成电路的一简化网表;其中若一第一电路区块用于接收该频率信号的一输入端点及用于输出该频率信号的一输出端点皆耦接于该N个信号路径的一第一信号路径时,该信号路径分析模块于该简化网表中记录该第一电路区块,以计算该第一信号路径的一频率延迟;若该第一电路区块的该输入端点耦接于该第一信号路径而该输出端点未耦接于该第一信号路径时,该信号路径分析模块于该简化网表中以一阻抗性负载记录该第一电路区块,以计算该第一信号路径的该频率延迟;以及一频率延迟计算模块,设置成依据该集成电路的该简化网表,计算该频率信号分别通过该N个信号路径的N个频率延迟。

上述实施例的优点之一,是模拟电路或者混合信号电路的时序分析不但能够简化,并且能够兼具其准确性。上述实施例的另一优点,是时序分析所需的分析时间能够大幅地降低,而提升时序分析的效率。本发明的其它优点将通过以下的说明和附图进行更详细的解说。

附图说明

图1为本发明一实施例的集成电路时序分析装置简化后的功能方块图。

图2为本发明一实施例的集成电路简化后的功能方块图。

图3为本发明一实施例的集成电路时序分析方法简化后的流程图。

具体实施方式

以下将配合相关附图来说明本发明的实施例。在附图中,相同的标号表示相同或类似的组件或方法流程。

图1为本发明一实施例的集成电路时序分析装置100简化后的功能方块图。集成电路时序分析装置100包含有控制电路120及储存装置140,集成电路时序分析装置100可以采用计算机或其它合适的计算装置等方式实施,控制电路120可以采用中央处理器、信号处理器或其它定制化设计的电路等方式实施,储存装置140可以采用闪存、硬盘等非易失性的储存装置等方式实施。为了使图面简洁而易于说明,集成电路时序分析装置100的其它组件及连接关系并未示出于图1,例如,随机存取存储器及输入输出电路等。

在本实施例中,控制电路120通过执行储存于储存装置140的计算机程序产品150,以对待测集成电路进行集成电路时序分析。待测集成电路的至少部份电路区块非使用标准组件实施,例如,待测的集成电路可以是模拟电路或混合信号电路(mixed signal circuit)。

计算机程序产品150包含有网表读取模块151、信号路径分析模块153及频率延迟计算模块155。网表读取模块151,设置成读取待测集成电路的网表(netlist)。网表可储存于储存装置140或其它储存装置,其用于记录待测集成电路的真实电路结构,使电路设计者能够进行分析与模拟。信号路径分析模块153,设置成依据待测集成电路的网表而分析待测集成电路的信号路径,并产生待测集成电路的简化网表。频率延迟计算模块155,设置成依据待测集成电路的简化网表,计算各个信号路径的频率延迟(clock delay)或相关的参数。为了使图面简洁而易于说明,计算机程序产品150的其它模块并未示出于图1。

图2为本发明一实施例的集成电路200简化后的功能方块图,图3为本发明一实施例的集成电路时序分析方法简化后的流程图。以下将以图1及2,进一步说明图3的集成电路时序分析方法。

在图2的实施例中,集成电路200的至少部分电路非采用标准组件(standard cell)方式实施。集成电路200包含有频率信号(clock signal)的测量起点201,以及N个频率信号的测量端点203(1)、203(2)、203(3)…203(N),其中N为正整数。测量起点201与每个测量端点203(1)~203(N)之间分别包含有信号路径205(1)、205(2)、205(3)…205(N),因而共含有N个信号路径。此外,测量起点201与每个测量端点203(1)~203(N)之间可分别包含有一传输线或至少一个电路区块。例如,测量起点201与测量端点203(1)间包含有电路区块210、220、230及240,测量起点201与测量端点203(2)间包含有电路区块250,测量起点201与测量端点203(3)间包含有电路区块260及270,测量起点201与测量端点203(N)间包含有电路区块280及290。

在图2的实施例中,在信号路径上仅示出数个电路区块,以易于说明。在其它实施例中,每一个信号路径可以仅包含传输线,或者也可以包含有一个或多个电路区块。此外,同一个电路区块也可能耦接至一个或多个信号路径。电路区块可以包含有一个或多个反相电路(inverting circuit)、缓冲电路(buffer circuit,如触发器flip-flop、锁存电路latch等)、多工电路(multiplexing circuit)、与非电路(NAND circuit)、或非电路(NOR circuit)或其它合适的电路组件。

集成电路时序分析装置100可以通过采用控制电路120执行储存装置140中的计算机程序产品150,以图3的流程对集成电路200进行时序分析,而获取所需的时序信息。

在流程310中,控制电路120执行计算机程序产品150的网表读取模块151,以读取集成电路200的网表。

在流程320中,控制电路120执行计算机程序产品150的信号路径分析模块153,分析集成电路200的N个信号路径,以产生集成电路200的简化网表。信号路径分析模块153会逐一分析集成电路200的N个信号路径,通过分析测量起点201与每个测量端点之间的电路区块,而判断该电路区块是否应记录于集成电路200的简化网表中,以计算测量起点201与测量端点间的信号路径的频率延迟。例如,在一实施例中,当一电路区块用于接收频率信号的输入端点及用于输出频率信号的输出端点皆耦接于第一信号路径时,信号路径分析模块153会于集成电路200的简化网表中记录该电路区块,以用于计算第一信号路径的频率延迟。然而,若一电路区块用于接收频率信号的输入端点耦接于第一信号路径,而用于输出频率信号的输出端点并未耦接于第一信号路径时,信号路径分析模块153会于集成电路200的简化网表中以阻抗性负载(例如,以适当的电容值或其它合适的阻抗值)记录该电路区块,以用于计算第一信号路径的该频率延迟。

在图2的实施例中,当信号路径分析模块153分析测量起点201与测量端点间203(1)之间的电路区块210、220、230及240时,由于电路区块210和220用于接收频率信号CLK的输入端点及用于输出频率信号CLK的输出端点皆分别耦接于信号路径205(1),因此,信号路径分析模块153会将电路区块210及220记录于集成电路200的简化网表中,以计算信号路径205(1)的频率延迟。电路区块230及240用于接收频率信号CLK的输入端点分别耦接于信号路径205(1),然而其用于输出频率信号CLK的输出端点皆未耦接于信号路径205(1),因此,信号路径分析模块153会于集成电路200的简化网表中以阻抗性负载记录电路区块230及240,以计算信号路径205(1)的频率延迟。

依照相同的分析规则,信号路径分析模块153会将电路区块250记录于集成电路200的简化网表中,以计算信号路径205(2)的频率延迟。信号路径分析模块153会将电路区块270记录于集成电路200的简化网表中,并且于集成电路200的简化网表中以阻抗性负载记录电路区块260,以计算信号路径205(3)的频率延迟。信号路径分析模块153会将电路区块280及290记录于集成电路200的简化网表中,以计算信号路径205(3)的频率延迟。

在流程330中,控制电路120执行计算机程序产品150的频率延迟计算模块155,依据流程320中所产生的集成电路200的简化网表,以电路仿真等方式计算频率信号CLK分别通过N个信号路径205(1)、205(2)、205(3)…205(N)的N个频率延迟。

在上述实施例的流程320中,信号路径分析模块153于集成电路200的简化网表中所记录的电路区块(例如,电路区块210、220、250、270、280及290),电路区块可能还包含有其它的控制端点,电路区块的其它控制端点必须设置为耦接至适当的信号值,该电路区块才能够依据其输入端点所接收的频率信号CLK而于其输出端点产生频率信号CLK(或者,频率信号CLK的反相信号)。例如,在一实施例中,电路区块210为与非电路,其中一输入端点用于接收频率信号CLK,而另一输入端点(以下将此类输入端点称为控制端点,以区别用于接收频率信号CLK的输入端点)则由信号路径分析模块153于集成电路200的简化网表中设置为耦接至代表1的信号值。因此,电路区块210的输出端点可以输出NAND(1,CLK)的频率信号,亦即频率信号CLK的反相信号。

此外,信号路径分析模块153可以采用不同抽象层级(abstract level)的方式,分析集成电路200的N个信号路径。例如,信号路径分析模块153可以使用电路区块的逻辑功能的层级进行分析,并且于集成电路200的简化网表中,将电路区块的控制端点设置为耦接至适当的信号值,使该电路区块得以依据其输入端点所接收的频率信号CLK而于其输出端点产生频率信号CLK(或者,频率信号CLK的反相信号)。在另一实施例中,信号路径分析模块153也可以使用晶体管层级的方式进行分析,于集成电路200的简化网表的电路区块中,除了用以接收频率信号CLK的输入端点(例如,场效晶体管的栅极或双极面结型晶体管的基极等),信号路径分析模块153会将其它晶体管的控制端点(例如,场效晶体管的栅极或双极面结型晶体管的基极等)分别设置为耦接至适当的信号值(例如,将P型场效晶体管的栅极耦接至代表1的信号值,并将N型场效晶体管的栅极耦接至代表0的信号值),使该电路区块得以依据其输入端点所接收的该频率信号CLK而于其输出端点产生频率信号CLK(或者,频率信号CLK的反相信号)。

此外,信号路径分析模块153会记录集成电路200的简化网表中的电路区块,其输入端点所接收的频率信号以及其输出端点所产生频率信号是否反相,使频率延迟计算模块155能够分别依据每一信号路径的测量端点的频率信号的上升段(rising edge)或下降段(falling edge),而正确的计算每个信号路径的频率延迟

在上述实施例的流程320中,信号路径分析模块153于集成电路200的简化网表中以阻抗性负载记录电路区块230、240及260时,分别可以采用适当的阻抗值取代电路区块230、240及260。在另一实施例中,信号路径分析模块153也可以将电路区块中的一个或多个接电端点分别耦接至一个或多个预设电位,使该电路区块于集成电路200的简化网表中成为阻抗性负载。例如,在一实施例中,电路区块230包含有多个串接的互补式金属氧化物半导体(CMOS),信号路径分析模块153可于集成电路200的简化网表中,将互补式金属氧化物半导体的源极及漏极皆耦接于相同的预设电位,使互补式金属氧化物半导体成为互补式金属氧化物半导体电容(CMOS capacitor)。在另一实施例中,电路区块240包含有多个串接的互补式金属氧化物半导体,信号路径分析模块153可于集成电路200的简化网表中,仅记录耦接于信号路径的第一个互补式金属氧化物半导体,并将该第一个互补式金属氧化物半导体的源极及漏极皆耦接于相同的预设电位,使互补式金属氧化物半导体成为互补式金属氧化物半导体电容,不但能更进一步地简化信号路径的电路区块,并且对于时序分析的准确度也仅有些微的影响。

在上述的实施例中,频率延迟计算模块155也可以设置为依据各个信号路径的频率延迟,而进一步计算所需的参数。例如,在一实施例中,频率延迟计算模块155可以将集成电路200的简化网表中的N个信号路径的N个频率延迟的最大值,减去集成电路200的简化网表中N个信号路径的N个频率延迟的最小值,而计算集成电路200的频率偏移(clock skew)。

由前述说明可知,上述实施例能分析是否在简化网表中将集成电路的电路区块以阻抗性负载取代,如此不但能够降低时序分析的复杂度,并且还能够降低对准确度的影响。

此外,上述实施例能够以自动化的方式将各种类型的模拟电路或者混合信号电路的信号路径进行简化,以有效地缩短时序分析所需的时间,并且能够兼顾时序分析的准确性。

在说明书及申请专利范围中使用了某些词汇来指称特定的组件。然而,所属技术领域的技术人员应可理解,同样的组件可能会用不同的名词来称呼。说明书及申请专利范围并不以名称的差异做为区分组件的方式,而是以组件在功能上的差异来做为区分的基准。在说明书及申请专利范围所提及的「包含」为开放式的用语,故应解释成「包含但不限定于」。另外,「耦接」在此包含任何直接及间接的连接手段。因此,若文中描述第一组件耦接于第二组件,则代表第一组件可通过电性连接或无线传输、光学传输等信号连接方式而直接地连接于第二组件,或者通过其它组件或连接手段间接地电性或信号连接至该第二组件。

在此所使用的「及/或」的描述方式,包含所列举的其中之一或多个项目的任意组合。另外,除非说明书中特别指明,否则任何单数格的用语都同时包含复数格的涵义。

以上仅为本发明的优选实施例,凡依本发明权利要求所做的均等变化与修饰,皆应属本发明的涵盖范围。

符号说明

100:集成电路时序分析装置

120:控制电路

140:储存装置

150:计算机程序产品

151:网表读取模块

153:信号路径分析模块

155:频率延迟计算模块

200:集成电路

201:频率信号测量起点

203(1)~203(N):频率信号测量端点

205(1)~205(N):信号路径

210~290:电路区块

310~330:流程。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1