时序模型的建立方法与流程

文档序号:26837946发布日期:2021-10-08 18:20阅读:98来源:国知局
时序模型的建立方法与流程

1.本发明涉及一种时序模型的建立方法,尤其涉及一种集成电路的时序模型的建立方法。


背景技术:

2.在现今的数字电路设计中,针对电路建立时序模型,并据以进行静态时序分析,是一个很重要的动作。而在电路设置日趋复杂的今天,要针对电路建立时序模型并执行静态时序分析,基于分析准确度的要求,不是需要耗费大量的分析时间,就是需要大量的硬件资源。因此,电路的时序模型建立动作,经常无法实时完成。


技术实现要素:

3.本发明是针对一种多种时序模型的建立方法,可有效减低电路分析所需的时间。
4.根据本发明的实施例,时序模型的建立方法由一控制器来执行。时序模型的建立方法包括:识别电路区块中的为边界路径的至少一第一受害路径;依据第一受害路径上的传输延迟以决定是否移除第一受害路径对应的第一侵略路径;查找电路区块中,扇出数大于一默认值的多个高扇出电路组件;依据各高扇出电路组件的连接位置来决定是否移除各高扇出电路组件;识别各高扇出电路组件对应的多条第二受害路径,依据各第二受害路径的传输延迟以决定保留或移除各第二受害路径对应的第二侵略路径。
5.根据本发明的另一实施例,时序模型的建立方法包括:识别电路区块中的任一输入端与任一输出端间,未连接任一寄存器的至少一传输路径,并保留上述的传输路径;识别被保留的传输路径中的至少一多输入电路组件,保留多输入电路组件对应的驱动组件以及驱动组件对应的负载组件;以及,移除被保留的传输路径、被保留的驱动组件以及负载组件以外的电路组件。
6.根据本发明的另一实施例,时序模型的建立方法包括:依据集成电路的布局,识别出集成电路的多个周围电路区块以及多个内部电路区块;以及,针对各周围电路区块执行第一时序分析机制,针对各周围电路区块执行第二时序分析机制。其中,第一时序分析机制以及第二时序分析机制分别为如上所述的时序模型的建立方法。
7.基于上述,本发明实施例中针对电路区块中的受害路径以及对应侵略路径来进行分析,并依据受害路径上的传输延迟来判断是否移除侵略路径及其对应的电路组件。在不影响时序分析准确度的前提下,有效降低电路的时序模型的复杂度,提升静态时序分析的效率。
附图说明
8.包含附图以便进一步理解本发明,且附图并入本说明书中并构成本说明书的一部分。附图说明本发明的实施例,并与描述一起用于解释本发明的原理。
9.图1为电路区块中的侵略路径以及受害路径的关系示意图;
10.图2为本发明实施例的时序模型的建立方法的流程图;
11.图3a至图3c为本发明实施例的时序模型的建立方法的多个不同动作的示意图;
12.图4为本发明另一实施例的时序模型的建立方法的流程图;
13.图5a至图5b为本发明实施例的时序模型的建立方法的多个不同动作的示意图;
14.图6为本发明另一实施例的时序模型的建立方法的流程图;
15.图7为本发明实施例的集成电路的时序模型的建立方法的动作示意图;
16.图8为本发明实施例的建立时序模型的电子装置的示意图。
17.附图标号说明
18.310~360、510~540:电路区块;
19.700:集成电路;
20.710、720:电路分区;
21.800:电子装置;
22.810:控制器;
23.820:存储元件;
24.a1~a3:侵略路径;
25.an1:多输入电路组件;
26.bf1~bf13:缓冲器;
27.cc1~cc3:耦合电容;
28.cl1~cl7:逻辑电路;
29.clk1、clk2:频率信号;
30.d1:间距;
31.data:数据信号;
32.ff1~ff10:寄存器;
33.ib1、ib2:内部电路区块;
34.in1~in4:输入端;
35.ou1~ou2:输出端;
36.pb1、pb2:周围电路区块;
37.rst:重置信号;
38.s210~s250、s410~s430、s610~s620:时序模型的建立步骤;
39.v1~v3:受害路径;
40.w1~w4:传输导线。
具体实施方式
41.现将详细地参考本发明的示范性实施例,示范性实施例的实例说明于附图中。只要有可能,相同元件符号在附图和描述中用来表示相同或相似部分。
42.先请参照图1,图1为电路区块中的侵略路径以及受害路径的关系示意图。在电路区块中,多个电路组件因为布局位置的关系,彼此间产生或大或小的耦合电容。在图1中,缓冲器bf1、bf2间的传输导线w1,可与缓冲器bf3、bf4间的传输导线w2产生耦合电容cc1;缓冲器bf5、bf6间的传输导线w3,可与缓冲器bf3、bf4间的传输导线w2产生耦合电容cc2;缓冲器
bf7、bf8间的传输导线w4,则可与缓冲器bf3、bf4间的传输导线w2产生耦合电容cc3
43.在这些耦合电容cc1~cc3的效应下,传输导线w2上传输的信号,可能因为传输导线w1、w3、w4上的传输信号发生转态,而产生电压抖动的现象。在这样的条件下,传输导线w2所形成的路径可以称为受害路径。传输导线w1、w3、w4所形成的路径则可以称为侵略路径。
44.以下请参照图2,图2为本发明实施例的时序模型的建立方法的流程图。本发明实施例的时序模型的建立方法可以通过一控制器来执行。其中控制器可接收电路的门级网表(gate level netlist),并依据门级网表(gate level netlist)来执行时序模型的建立动作。
45.以下请同步参照图2以及图3a,其中图3a为本发明实施例的时序模型的建立方法的动作示意图。在步骤s210中,依据电路的门级网表,识别电路区块中的为边界(boundary)路径的一个或多个第一受害路径。其中,所谓的边界路径,可依据电路区块的输入端、输出端以及内部的寄存器来决定。在电路区块中,直接连接至电路区块的输入端、输出端的寄存器,可以视为边界寄存器。边界寄存器与对应的输入端、输出端的连接路径,则为边界路径。另外,电路区块中,当输入端与输出端间没有存在寄存器的情况下,输入端与输出端间形成的路径,也可以为边界路径。
46.在图3a中,电路区块310为原始的电路区块,电路区块320则为简化后的电路区块。电路区块310具有输入端in1~in3以及输出端ou1~ou2。其中输入端in3接收频率信号clk。电路区块310另包括组合逻辑电路cl1~cl7、寄存器ff1~ff10以及缓冲器bf1~bf4。针对电路区块310进行识别,通过步骤s210,可以判断输入端in2以及寄存器ff9间,具有两个为受害路径v1、v2的边界路径。其中,受害路径v1对应的侵略路径a1形成在寄存器ff1、ff2间,受害路径v2对应的侵略路径a1形成在组合逻辑电路cl2以及寄存器ff4间。另外,通过步骤s210另判断出输出端ou2以及寄存器ff10间(通过组合逻辑电路cl7),具有受害路径v3。受害路径v3则对应侵略路径a3,其中侵略路径a3形成在组合逻辑电路cl3以及缓冲器bf2间。
47.接着,在步骤s220中,依据受害路径v1~v3上的传输延迟以决定是否移除受害路径v1~v3对应的侵略路径a1~a3。举例来说明,在电路区块310中,假设受害路径v1上的整合信号的传输延迟等于0,而受害路径v2、v3上的整合信号的传输延迟大于0。在步骤s220中,当受害路径(例如受害路径v2)上的传输延迟大于0时,仅保留对应的侵略路径(例如侵略路径a2)中的扇入驱动组件以及一个负载组件。对应至图3a,侵略路径a2的扇入驱动组件(寄存器ff3以及组合逻辑电路cl2)以及一个负载组件(缓冲器bf1)被保留。
48.另外,当受害路径(例如受害路径v1)上的传输延迟等于0时,则移除对应的侵略路径(例如侵略路径a1)的负载组件、驱动组件以及侵略路径与受害路径间的耦合电容。对应至图3a,需要被移除的构件为:侵略路径a1;侵略路径a1的负载组件(寄存器ff2)以及侵略路径a1与受害路径v1间的耦合电容。
49.值得一提的,在本实施例中,基于受害路径v3并非边界路径,因此即便受害路径v3上的传输延迟大于0,对应受害路径v3的侵略路径a3的驱动组件(寄存器ff5以及组合逻辑电路cl3);侵略路径a3的负载组件(寄存器ff6、ff7、缓冲器bf2以及组合逻辑电路cl4);侵略路径a3与受害路径v3间的耦合电容皆不被保留而需要被移除。
50.在此请注意,在本实施例中,寄存器ff1、ff8为边界寄存器,因此寄存器ff1、ff8与分别连接的组合逻辑电路cl1、cl5不会被移除。
51.经过上述步骤s210、s220的动作后,可获得简化后的电路区块320。
52.以下请参照图2以及图3b,图3b为本发明实施例的时序模型的建立方法的另一动作示意图。在图3b中,电路区块330为原始的电路区块,电路区块340则为简化后的电路区块。电路区块330包括寄存器ff1~ff5、组合逻辑电路cl1~cl3以及缓冲器bf1~bf12,电路区块330并具有输入端in1~in3以及输出端ou1。输入端in2、in3分别接收频率信号clk1以及重置信号rst。
53.在图2中,步骤s230中,针对电路区块进行分析,并藉以找出扇出数大于一默认值的多个高扇出电路组件。对应电路区块330,其中输入端in3对应连接的缓冲器bf3~bf12可被判断为高扇出电路组件。
54.接着,在步骤s240中,则依据各高扇出电路组件的连接位置来决定是否移除各高扇出电路组件。在细节上,步骤s240中,可在当高扇出电路组件连接在电路区块的输入端以及边界寄存器间时,决定保留此高扇出电路组件。相对的,若高扇出电路组件并非连接在电路区块的输入端以及边界寄存器间,而是连接在区块电路的输入端与内部寄存器间时,则移除此高扇出电路组件。对应图3b,在电路区块330中,缓冲器bf8、bf3连接在输入端in3与边界寄存器(寄存器ff1)间,缓冲器bf9、bf10、bf11、bf12以及bf7连接在输入端in3与另一边界寄存器(寄存器ff5)间。因此,缓冲器bf8、bf3、bf9、bf10、bf11、bf12以及bf7均被保留,缓冲器bf4~bf6则被移除。在本实施例中,寄存器ff2~ff4以及组合逻辑电路cl1、cl2可依据本发明实施例的前述步骤进行移除,并产生简化后电路区块340。
55.附带一提的,本实施例中的高扇出组件可以为传输频率信号clk1的频率树中的电路组件,也可以为传输重置信号rst的传输树中的电路组件,但也不限于此。
56.以下请参照图2以及图3c,图3c为本发明实施例的时序模型的建立方法的另一动作示意图。在图3c中,电路区块350为原始电路区块,电路区块360则为简化后电路区块。电路区块350包括缓冲器bf1~bf11、寄存器ff1~ff以及组合逻辑电路cl1~cl4,并具有输入端in1~in3以及输出端ou1。电路区块360的输入端in2、in3分别接收频率信号clk1以及重置信号rst。
57.承续步骤s240,在步骤s250中,识别各高扇出电路组件对应的多条受害路径,依据各受害路径的传输延迟以决定保留或移除各受害路径对应的侵略路径。其中,步骤s250中的受害路径,是针对电路区块中的多个边界路径进行分析,并找出边界路径中可能受侵略路径影响的信号传输路径。对应电路区块350,在电路区块350的边界路径中,可识别出组合逻辑电路cl1以及寄存器ff1间的受害路径v1,以及组合逻辑电路cl4以及寄存器ff5间的受害路径v2。受害路径v1对应至缓冲器bf5的输出端上的侵略路径a1,受害路径v2则对应至缓冲器bf8的输出端上的侵略路径a2。缓冲器bf5、bf8皆为高扇出电路组件。
58.接着,步骤s250并依据受害路径的传输延迟以决定保留或移除受害路径对应的侵略路径,并在各受害路径的传输延迟大于0时,仅保留连接至侵略路径的扇入驱动组件以及一个负载组件;以及,在各受害路径的传输延迟等于0时,移除侵略路径以及侵略路径的负载组件、驱动组件以及侵略路径与各受害路径间的耦合电容。
59.对应电路区块350,假设受害路径v1上的信号整合传输延迟大于0,则保留连接至侵略路径a1的扇入驱动组件(缓冲器bf9、bf3、bf4、bf5)以及一个负载组件(寄存器ff2)。相对的,假设受害路径v2上的信号整合传输延迟等于0,则移除侵略路径a2以及侵略路径a2的
负载组件(寄存器ff4)、驱动组件(缓冲器bf6~bf8)以及侵略路径a2与受害路径v2间的耦合电容。
60.另外,在本实施例中,寄存器ff3、组合逻辑cl2、cl3可依据本发明实施例的前述多个步骤进行移除。
61.依据上述动作,简化后的电路区块360可以被产生。
62.请参照图4,图4为本发明另一实施例的时序模型的建立方法的流程图。其中,时序模型的建立方法可通过一控制器,依据电路的门级网表来执行。在步骤s410中,识别电路区块中的任一输入端与任一输出端间,未连接任一寄存器的一个或多个传输路径,并保留识别出的传输路径。在此请同步参照图4以及图5a,其中图5a为本发明实施例的时序模型的建立方法的一动作示意图。其中,电路区块510为原始电路区块,电路区块520为简化后电路区块。电路区块510包括寄存器ff1~ff5、缓冲器bf1~bf12、多输入组件an1以及组合逻辑电路cl1~cl3,并具有输入端in1~in4以及输出端ou1~ou3。其中,输入端in2~in4分别接收频率信号clk1、数据信号data以及频率信号clk2。
63.依据步骤s410,输入端in3与输出端ou2间,未连接任一寄存器,且输入端in4与输出端ou3间,同样未连接任一寄存器。因此输入端in3与输出端ou2间的传输路径,以及输入端in4与输出端ou3间的传输路径可以被保留。也就是说,输入端in3与输出端ou2与其间的缓冲器bf2、bf7、bf9、bf11需被保留,输入端in4与输出端ou3与其间的缓冲器bf3、bf8、bf10、bf12需被保留。接着,执行步骤s420。
64.在步骤s420中,识别被保留的传输路径中的至少一多输入电路组件,保留多输入电路组件对应的至少一驱动组件以及一个负载组件。对应电路区块520,其中输入端in3与输出端ou2间的被保留传输路径中所具有的多输入电路组件an1可被示别出。多输入电路组件an1对应的驱动组件(输入端in2、缓冲器bf1、bf4以及寄存器ff2)则可以被保留,且上述驱动组件的负载组件(缓冲器bf5)需要被保留。
65.接着,在步骤s430中,使电路区块中,除上述判断为需要被保留的电路组件外,其余的电路组件均需被移除。对应电路区块510,除输入端in2~in4、寄存器ff2、缓冲器bf1~bf5、bf7~bf12、多输入电路组件an1以及输出端ou2、ou3需被保留外,其余的电路组件均需被移除,并藉以产生简化后电路区块520。
66.以下并请参照图5b,图5b为本发明实施例的时序模型的建立方法的另一动作示意图。其中,电路区块530以及540分别为原始电路区块以及简化后电路区块。电路区块530包括寄存器ff1~ff5、缓冲器bf1~bf13以及组合逻辑电路cl1,并具有输入端in1~in4以及输出端ou1~ou3。
67.在本发明实施例中,延续图4的动作流程,时序模型的建立方法更包括识别传输路径中的一个或多个受害路径以及对应的侵略路径。并依据受害路径的传输延迟以决定是否移除对应的侵略路径。对应电路区块530,输入端in3与输出端ou2间的传输路径中,具有受害路径v1、v2。输入端in4与输出端ou3间的传输路径中,具有受害路径v3。受害路径v1、v2分别对应侵略路径a1、a2,受害路径v3对应侵略路径a3。
68.在图5b中,受害路径v1的传输延迟大于0。因此,侵略路径a1的驱动组件(缓冲器bf1)、负载组件(寄存器ff1)以及受害路径v1与侵略路径a1间的耦合电容被保留。关于受害路径v2、v3,受害路径v2的传输延迟等于0,而受害路径v3的传输延迟大于0。但由于受害路
径v3非为边界路径,因此,侵略路径a2、a3对应的驱动组件以及负载组件(寄存器ff2~ff5、缓冲器bf5、bf7以及组合逻辑电路cl1)、侵略路径a2与受害路径v2间的耦合电容以及侵略路径a3与受害路径v3间的耦合电容均被移除。如此一来,简化后的电路区块540可以被产生。
69.以下请参照图6,图6为本发明另一实施例的时序模型的建立方法的流程图。图6的动作流程通过控制器来执行,并在步骤s610中,依据集成电路的布局,识别出集成电路的多个周围电路区块以及多个内部电路区块。且在步骤s620中,针对各周围电路区块执行第一时序分析机制,针对各周围电路区块执行第二时序分析机制。其中,第一时序分析机制可依据本发明图2实施例的动作流程来执行,第二时序分析机制可依据本发明图4实施例的动作流程来执行,并藉以建立集成电路的时序模型。
70.在此请同步参照图6以及图7,其中图7为本发明实施例的集成电路的时序模型的建立方法的动作示意图。其中,集成电路700依据布局位置可具有两个电路分区710、720。其中,电路分区710具有多个周围电路区块pb1以及多个内部电路区块ib1,电路分区720则具有多个周围电路区块pb2以及多个内部电路区块ib2。在电路分区710中,周围电路区块pb1环绕在内部电路区块ib1外部。在电路分区720中,周围电路区块pb2环绕在内部电路区块ib2外部。此外,电路分区710以及720间,可具有一个间距d1,其中间距d1例如大于10微米(micro meter)。
71.在本实施例中,集成电路700中的电路分区也可以为一个,或为大于2个的多个,并没有限制必要为两个。图7的为仅只是说明用的范例,不用以限缩本发明的实施范畴。
72.请参照图8,图8为本发明实施例的建立时序模型的电子装置的示意图。电子装置800包括控制器810以及存储元件820。控制器810可用以执行如图2、图4以及图6的动作流程。存储元件820耦接至控制器810,并可用以储存电路的门级网表,以及控制器810运作过程所需要的各类信息。控制器810并可依据所建立的时序模型来对电路执行静态时序分析动作(static timing analysis,sta),并提供电路设计者可针对所设计的电路进行较佳的时序安排。
73.在本实施例中,控制器810可以为任意形式具运算能力的处理器(processor)。存储元件820则可以为任意型式的内存、硬式磁盘驱动器或光盘等本领域技术人员熟知的数据储存装置,没有一定的限制。
74.通过本发明实施例的动作流程所建立的时序模型,在不影响正确性的前提下,控制器810可快速完成对电路执行的静态时序分析动作,提升所设计的电路的正确度。
75.综上所述,本发明针对电路区块中的受害路径以及对应侵略路径来进行分析,并依据受害路径上的传输延迟来判断是否移除侵略路径及其对应的电路组件。在不影响时序分析准确度的前提下,有效降低电路的时序模型的复杂度,提升静态时序分析的效率。本发明并针对集成电路中,布局在不同位置的电路区块,依据本发明实施例的不同机制来进行电路区块的分析及简化动作,藉以产生时序模型。
76.最后应说明的是:以上各实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术
方案的范围。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1