CN112699632A - 一种获取电路设计中电路总功耗的方法以及装置 - Google Patents
一种获取电路设计中电路总功耗的方法以及装置 Download PDFInfo
- Publication number
- CN112699632A CN112699632A CN202011555342.1A CN202011555342A CN112699632A CN 112699632 A CN112699632 A CN 112699632A CN 202011555342 A CN202011555342 A CN 202011555342A CN 112699632 A CN112699632 A CN 112699632A
- Authority
- CN
- China
- Prior art keywords
- circuit
- power consumption
- circuit module
- parasitic parameter
- effective
- 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
- 238000000034 method Methods 0.000 title claims abstract description 66
- 238000013461 design Methods 0.000 title claims abstract description 47
- 230000003071 parasitic effect Effects 0.000 claims abstract description 151
- 238000004088 simulation Methods 0.000 claims description 65
- 238000013500 data storage Methods 0.000 claims description 25
- 230000003068 static effect Effects 0.000 claims description 10
- 230000005284 excitation Effects 0.000 claims description 8
- 230000003252 repetitive effect Effects 0.000 claims description 8
- 238000003860 storage Methods 0.000 claims description 8
- 238000004590 computer program Methods 0.000 claims description 7
- 238000001914 filtration Methods 0.000 claims description 5
- 230000010365 information processing Effects 0.000 claims description 4
- 238000013507 mapping Methods 0.000 claims description 3
- 238000004364 calculation method Methods 0.000 abstract description 5
- 238000005516 engineering process Methods 0.000 abstract description 2
- 238000005259 measurement Methods 0.000 description 22
- 238000010586 diagram Methods 0.000 description 21
- 230000006870 function Effects 0.000 description 20
- 238000000605 extraction Methods 0.000 description 19
- 230000008569 process Effects 0.000 description 8
- 239000000284 extract Substances 0.000 description 6
- 238000004519 manufacturing process Methods 0.000 description 4
- 230000009471 action Effects 0.000 description 3
- 238000000691 measurement method Methods 0.000 description 3
- 238000012986 modification Methods 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 210000000352 storage cell Anatomy 0.000 description 3
- 238000004458 analytical method Methods 0.000 description 2
- 230000007547 defect Effects 0.000 description 2
- 238000002955 isolation Methods 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 238000005457 optimization Methods 0.000 description 2
- 238000000926 separation method Methods 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 239000003990 capacitor Substances 0.000 description 1
- 238000012938 design process Methods 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 230000002035 prolonged effect Effects 0.000 description 1
- 230000002441 reversible effect Effects 0.000 description 1
- 238000013515 script Methods 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
Images
Landscapes
- Design And Manufacture Of Integrated Circuits (AREA)
Abstract
本申请实施例提供一种获取电路设计中电路总功耗的方法以及装置,所述方法包括:根据精简寄生参数表获取有效电路的功耗,其中,所述精简寄生参数表中的信息是与过滤电路版图中的重复电路模块后得到的有效电路模块对应的寄生参数信息;根据所述有效电路的功耗获取电路总功耗,其中,所述电路总功耗包括与所述有效电路模块对应的功耗和与所述重复电路模块对应的重复功耗。由于本申请的实施例采用了精简的寄生参数表进行仿真来最终获取总电路功耗,因此与相关技术相比,本申请的实施例有效提升了获取电路总功耗的速度,且显著节省了需要花费的计算资源。
Description
技术领域
本申请涉及集成电路设计领域,具体而言本申请实施例涉及一种获取电路设计中电路总功耗的方法以及装置。
背景技术
大规模集成电路中需要设计各种全定制设计知识产权IP,一般包括模拟信号IP,数字信号IP或者是混合信号IP。全定制IP的设计流程是先根据芯片的功能需求,设计IP的电路功能图,然后根据电路功能图,画出电路的版图,最终利用电路版图进行生产制造。设计全定制IP时,设计者首先要明确电路的设计需求,然后根据设计需求,设计出完整的电路功能图,利用电路功能图,可以对电路进行前仿真(Pre-sim)。前仿真是利用电路功能图抽取的网表(Netlist)进行仿真,优点是电路仿真速度非常快,能够快速验证电路的功能是否正确,缺点是电路中器件之间的互连线是理想模型,这种情况下仿真得到的电路的延迟和功耗都是不准确的。所以IP的电路功能图设计完成后,还需要把功能图转换为版图。
版图是包含电路的器件类型,器件尺寸,器件之间的相对位置以及各个器件之间的连接关系等相关物理信息的图形。全定制IP在完成版图工作后,为了确保版图和电路功能图之间功能保持一致,需要做版图与电路图一致性检查(LVS)。为了保证版图的设计完全满足生产工厂的设计规则,需要做设计规则检查(DRC)。如果DRC和LVS检查结果都正确的话,证明电路的版图能够满足设计者的要求,然后可以执行版图寄生参数提取(LPE)和寄生电阻提取(PRE)操作。
版图寄生参数提取是集成电路设计中非常重要的一个环节,电路设计者通过寄生参数提取软件提取电路中互连线上的电阻、电容和电感等寄生参数,生成电路的寄生参数文件。利用电路的寄生参数文件,可以进行电路的后仿真(Post-sim)。电路后仿真能够获得非常准确的延迟和功耗数据,可以判断电路的设计能否满足功能、时序和功耗方面的要求,其缺点是计算资源需求很大,仿真的时间非常长。后仿真完成后,如果版图的设计完全满足设计者的要求,就可以将版图送到生产工厂,生产出符合设计功能的芯片。综上所述,不难看出现有的集成电路的设计周期耗时非常长。
因此如何缩短集成电路的设计周期成了亟待解决的技术问题。
发明内容
本申请实施例的目的在于提供一种获取电路设计中电路总功耗的方法以及装置,通过本申请的实施例提供的方法将版图进行划分,提取有效电路模块的寄生参数,过滤掉冗余电路的寄生参数,产生一份精简的寄生参数文件,大幅度减少总功耗测量的仿真时间,进而有效缩短了集成电路的设计周期。
第一方面,本申请的一些实施例提供一种获取电路设计中电路总功耗的方法,所述方法包括:根据精简寄生参数表获取有效电路的功耗,其中,所述精简寄生参数表中的信息是与过滤电路版图中的重复电路模块后得到的有效电路模块对应的寄生参数信息;根据所述有效电路的功耗获取电路总功耗,其中,所述电路总功耗包括与所述有效电路模块对应的功耗和与所述重复电路模块对应的重复功耗。
由于本申请的实施例采用了精简的寄生参数表进行仿真来最终获取总电路功耗,因此与相关技术相比,本申请的实施例有效提升了获取电路总功耗的速度,且显著节省了需要花费的计算资源。
在本申请的一些实施例中,所述根据精简寄生参数表获取有效电路的功耗之前,所述方法还包括:提取所述有效电路模块的寄生参数,获取所述精简寄生参数表。
本申请的一些实施例由于仅需要获取有效电路模块的寄生参数,因此与相关技术的寄生参数表相比,本申请实施例的精简参数表的规模有效缩小,相应的提升了获取寄生参数信息获取的速度。
在本申请的一些实施例中,所述提取所述有效电路模块的寄生参数,获取所述精简寄生参数表,包括:根据配置文件提取所述寄生参数,其中,所述配置文件被配置为将需要测量的所述有效电路模块与被过滤的所述重复电路模块进行分离。
本申请的一些实施例通过将有效电路模块的电源信号与冗余电路模块(或称为重复电路模块)电源信号的分离,实现指定的有效电路的功耗测量。
在本申请的一些实施例中,所述根据精简寄生参数表获取有效电路的功耗,包括:根据所述精简寄生参数表和所述配置文件进行后仿真,获取所述有效电路的功耗。
与相关技术未采用精简寄生参数表来仿真获取整个电路总功耗的方法相比,本申请的一些实施例通过精简寄生参数表进行的仿真获取有效电路模块的功耗,之后再通过计算公式确定总功耗的方式使得获取总功耗速度明显得到提升。
在本申请的一些实施例中,所述提取所述有效电路模块的寄生参数,获取所述精简寄生参数表,包括:根据所述配置文件确认与第一输入激励对应的目标有效电路模块;获取与所述目标有效电路模块对应的精简寄生参数表。
本申请的一些实施例通过输入激励来确定相应的有效电路模块,进而获取在相应激励下对应的精简的寄生参数表。
在本申请的一些实施例中,所述配置文件用于存储与多种输入激励中每种输入激励分别对应的目标有效电路的对照关系。
本申请的一些实施例通过配置文件存储多种输入激励以及相应于每种输入激励的有效电路模块(即目标有效电路模块),进而针对各种具体输入激励来获取相应的精简寄生参数表,增加了本申请实施例获取总功耗方案的通用性。
在本申请的一些实施例中,所述获取与所述目标有效电路模块对应的精简寄生参数表,包括:保留所述目标有效电路模块中互连线上的第一晶体管,删除所述重复电路模块中互连线上的第二晶体管,以获得所述目标有效电路模块中互连线的寄生参数,并过滤掉所述重复电路模块中互连线的寄生参数,得到与所述目标有效电路模块对应的精简寄生参数表。
本申请的一些实施例利用产生的精简的寄生参数文件进行后仿真,可以大幅度减少获取总功耗的后仿真所花费的时间。
在本申请的一些实施例中,所述根据所述有效电路的功耗获取电路总功耗,包括:根据第一有效电路模块的功耗确定所述重复电路模块的功耗,其中,所述第一有效电路模块与所述重复电路模块相同;叠加所述有效电路模块的功耗和所述重复电路模块的功耗,得到所述电路总功耗。
由于本申请的一些实施例通过后仿真获取的有效电路模块的功耗,而重复电路模块的功耗是通过计算方式获取的,与现有方式相比,这种方式显著提升了总功耗获取的速度。
在本申请的一些实施例中,所述有效电路模块和所述重复电路模块在配置文件中的名称不同。
在测量功耗阶段,由于相关配置文件中的VDD和VSS是全局参数,对应的功耗测量方法只能测量整体电路的功耗,具有一定的局限性,所以在本申请的一些实施例中,将有效电路模块和重复电路模块的电流I和电压VDD分别设置为不同的名字,从而将有效电路模块和重复电路模块的电流或者电压分离开来,进而测量有效电路模块的功耗。
在本申请的一些实施例中,所述电路为静态随机存取存储器对应的电路,其中,所述有效电路模块包括:控制电路模块、接口电路模块和一个数据存储单元,所述重复电路模块包括所述静态随机存取存储器上的剩余多个数据存储单元。
本申请的一些实施例通过将电路上的电路模块划分为有效电路模块和重复电路模块,进而来通过有效电路模块的寄生参数来仿真获取有效电路模块的功耗,并最终通过求和获取电路总功耗的方法,显著提升了在电路设计中获取总功耗的速度,并节省了计算资源消耗。
第二方面,本申请的一些实施例提供一种获取电路设计中电路总功耗的装置,所述装置包括:有效电路的功耗获取模块,被配置为根据精简寄生参数表获取有效电路的功耗,其中,所述精简寄生参数表中的信息是与过滤电路版图中的重复电路模块后得到的有效电路模块对应的寄生参数信息;总功耗获取模块,被配置为根据所述有效电路的功耗获取电路总功耗,其中,所述电路总功耗包括与所述有效电路模块对应的功耗和与所述重复电路模块对应的重复功耗。
第三方面,本申请的一些实施例提供一种计算机可读存储介质,其上存储有计算机程序,所述程序被处理器执行时可实现上述第一方面所述的方法。
第四方面,本申请的一些实施例提供一种信息处理设备,包括存储器、处理器以及存储在所述存储器上并可在所述处理器上运行的计算机程序,其中,所述处理器执行所述程序时可实现上述第一方面所述的方法。
附图说明
为了更清楚地说明本申请实施例的技术方案,下面将对本申请实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本申请的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
图1为相关技术的电路设计流程图;
图2为本申请实施例提供的获取电路设计中电路总功耗的方法的流程图;
图3为本申请实施例提供的静态随机存取存储器电路的版图之一;
图4为本申请实施例提供的静态随机存取存储器电路的版图之二;
图5为本申请实施例提供的获取设计中的静态随机存取存储器电路的总功耗的方法流程图;
图6为本申请实施例的获取电路设计中电路总功耗的装置的组成框图;
图7为本申请实施例的信息处理设备的组成框图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行描述。
应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。同时,在本申请的描述中,术语“第一”、“第二”等仅用于区分描述,而不能理解为指示或暗示相对重要性。
请参看图1,图1为相关技术方案的电路设计中涉及的功耗分析流程图。电路设计者在设计相关电路时需要执行如下步骤:S101,首先要指定IP的设计要求(即确定电路的设计要求);S102,根据IP的功能要求,设计电路的功能图,并且要根据IP功能对电路功能图进行改进和优化。S103,电路前仿真。电路功能图优化设计完成后,可以抽取IP前仿真的网表,前仿真的网表中不包含寄生参数,互连线是理想模型,电容和电阻都等于0。利用前仿真的网表,可以对电路的延迟和功耗进行快速前仿真,能快速获取电路的延迟和功耗等参数,然而由于网表中不包含寄生参数,所以仿真得到的测量数据都是不准确的,只能作为电路功能的参考。
S104,设计电路版图。如果需要获取电路中准确的时序以及功耗参数,需要将电路功能图转换为电路的版图。S105,寄生参数抽取。版图设计完成后,利用寄生参数提取软件,可以将电路中详细的寄生参数完整的提取出来,产生电路的寄生参数文件。然后利用寄生参数文件,可以实现电路的后仿真,获取电路中的延迟和功耗参数。S106,电路后仿真。由于后仿真中调用的寄生参数文件准确的反映了电路中的寄生特性,所以后仿真可以非常准确的测量电路的延迟和功耗。S107,判断功耗是否满足要求。当功耗不能满足要求,则执行S108进行电路设计优化。当电路功耗满足要求,则执行S109完成功耗测试。
后仿真时,寄生参数提取会将版图中所有互连线的电阻、电容全部抽取出来,得到全抽取的后仿真的网表。全抽取的网表中包含了电路中全面的参数信息,这样的全抽取方式非常的费时,因为版图中的连线复杂,寄生参数数据庞大,所以抽取后会得到一个数据量庞大,信息非常复杂的寄生参数文件。利用这份寄生参数文件进行后仿真,需要消耗大量的计算资源,以及非常长的仿真时间,才能获取一版仿真结果数据。如果想要对关键路径以及指定模块进行测量,利用全抽取的寄生参数文件进行后仿真无法快速获取测量数据。同时,这种方式也无法实现指定模块的功耗测量,只能进行全电路的测量,这也限制了测量的范围,因此快速并精准的提取寄生参数,测量功耗的方法有待展开。
实际上,当今的集成电路设计需要多次的迭代设计和优化,其时延和功耗数据才能达到电路设计要求。由于准确性的要求,提取方法需要将所有的寄生参数都进行提取,再进行下一步的时序和功耗分析,需要花费大量的计算资源和时间。若设计中间出现问题,需要查错并且重新进行参数提取和后续仿真,操作规模巨大,花费时间很长,很大程度上拉长了集成电路的设计周期。
本申请的发明人发现通过上述相关技术方案的寄生参数提取的步骤有以下三个缺点:寄生参数提取过程中,为了保证后仿真能够得到准确的电路延迟和功耗数据,需要做电路的完整寄生参数提取,完整寄生参数提取需要花费很长的时间,并且会产生一个数据量庞大,信息非常复杂的文件;利用全抽取得到的数据量庞大的寄生参数文件进行后仿真,会导致仿真的时间非常长,需要花费大量的计算资源以及非常长的仿真时间,才能获取仿真的结果数据;利用全抽取的寄生参数文件无法实现指定模块的延迟和功耗测量,只能进行全电路的测量,这也限制了电路测量的范围。
也就是说,相关技术方案的电路总功耗测量,需要抽取从电路版图中抽取非常详细的寄生参数数据,生成一份数据量庞大的寄生参数文件。利用这份寄生参数文件进行后仿真,会消耗大量的计算资源,并且导致仿真的时间非常长。
本申请的一些实施例为了解决寄生参数文件数据量太大导致仿真时间非常长的问题,提出了一种能够精简寄生参数文件的方法。利用这种方法,可以将电路版图中重复冗余的电路模块在抽取过程中过滤掉,保留功耗测量中有效电路模块的寄生参数信息,这样可以产生一份数据量较小的精简的寄生参数文件。利用这份精简的寄生参数文件,能够快速对电路的功耗进行仿真。仿真的速度比复杂寄生参数文件的仿真速度加快了很多,需要花费的计算资源也少很多,不仅如此,还能够实现指定电路模块的功耗测量。
下面示例性阐述本申请一些实施例的获取电路设计中电路总功耗的方法。
如图2所示,本申请的一些实施例提供一种获取电路设计中电路总功耗的方法,所述方法包括:S201,根据精简寄生参数表获取有效电路的功耗,其中,所述精简寄生参数表中的信息是与过滤电路版图中的重复电路模块后得到的有效电路模块对应的寄生参数信息;S202,根据所述有效电路的功耗获取电路总功耗,其中,所述电路总功耗包括与所述有效电路模块对应的有效电路的功耗和与所述重复电路模块对应的重复功耗。
可以理解的是,在执行S201之前,本申请一些实施例的获取电路设计中电路总功耗的方法还包括:提取所述有效电路模块的寄生参数,获取所述精简寄生参数表。作为一个示例,提取所述有效电路模块的寄生参数,获取所述精简寄生参数表,包括:根据配置文件提取所述寄生参数,其中,所述配置文件被配置为将需要测量的所述有效电路模块与被过滤的所述重复电路模块进行分离。S201涉及的有效电路可以包括多个,例如,有效电路包括:控制电路模块、接口电路模块以及一个存储单元电路模块。
由于为了加快后仿真的速度,本申请的一些实施例采用精简的方法提取有效电路的寄生参数,去除了重复冗余电路的寄生参数(例如,寄生参数可以包括寄生电阻和电容),但是同时也屏蔽了冗余电路模块的电流,这并不利于整体电路的功耗测量,这是由于量测功耗最重要的就是电流,如果屏蔽了有效电流,那么量测整体功耗的时候就不准确了。为了进一步提升测量功耗的准确性,本申请的一些实施例需要对配置文件进行修改,以区分加载至有效电路模块和加载至重复电路模块上的激励。也就是说,将需要测量的有效电路模块与被过滤的电路模块分离开来,从而实现有效电路模块与冗余电路模块的电流隔离。
对于不同输入激励,版图上处于运行状态的有效电路模块不同,因此本申请的一些实施例在设置的配置文件中存储与输入激励设定电路对应的各有效电路模块,最后再依据存储的对应关系表保留有效电路模块中互连线上的晶体管最终完成精简寄生参数表获取。
也就是说,在本申请的一些实施例中,所述提取所述有效电路模块的寄生参数,获取所述精简寄生参数表,包括:根据配置文件确认与第一输入激励对应的目标有效电路模块;获取与所述目标有效电路模块对应的精简寄生参数表。可以理解的是,所述配置文件用于存储与多种输入激励中每种输入激励分别对应的目标有效电路的对照关系。需要说明的是,第一输入激励并不特指某种输入激励,而是指代多种输入版图电路的激励中的任意一种激励;目标有效电路模块可以包括多个有效电路模块,目标有效电路模块仅用于说明这些有效电路模块是当输入激励为第一激励时的有效电路模块。
作为一个示例,所述获取与所述目标有效电路模块对应的精简寄生参数表,包括:保留所述目标有效电路模块中互连线上的第一晶体管,删除所述重复电路模块中互连线上的第二晶体管,以获得所述目标有效电路模块中互连线的寄生参数,并过滤掉所述重复电路模块中互连线的寄生参数,得到与所述目标有效电路模块对应的精简寄生参数表。第一晶体管并不是特指某个或者某类晶体管,而是指代有效电路模块中的所有晶体管;同理,第二晶体管也不是特指重复电路模块中的某个或某类晶体管,而是指代重复电路模块中所有的晶体管。
下面示例性阐述上述各步骤。
作为本申请的一个示例,S201包括:根据所述精简寄生参数表进行后仿真,获取所述有效电路的功耗。
本申请的一些实施例能够基于配置文件提取精简寄生参数表,然后利用精简的寄生参数文件,快速后仿真获取有效电路模块功耗参数,然后计算出整体电路模块的功耗,快速实现整体电路的功耗测量。
作为本申请的一个示例,S202包括:根据第一有效电路模块的功耗确定所述重复电路模块的功耗,其中,所述第一有效电路模块与所述重复电路模块相同;叠加所述有效电路的功耗和所述重复电路模块的功耗,得到所述电路总功耗。第一有效电路模块属于有效电路模块中与重复电路模块结构相同的电路模块。
需要说明的是,在本申请的一些实施例中所述有效电路模块和所述重复电路模块在配置文件中的名称不同。在本申请的另一些实施例中,所述电路为静态随机存取存储器对应的电路,其中,所述有效电路模块包括:控制电路模块、接口电路模块和一个数据存储单元,所述重复电路模块包括所述静态随机存取存储器上的剩余多个数据存储单元。
下面以静态随机存取存储器作为设计电路,示例性阐述本申请实施例获取电路设计中电路总功耗的方法。
图3中电路模块是一个定制的静态随机存取存储器(Static Random-AccessMemory,SRAM)版图示意图,主要包括控制电路CTL,多行数据存储电路阵列Array和接口电路IO。控制电路CTL位于版图中间,接口电路IO位于版图上下两端,数据存储电路阵列Array位于控制电路CTL与接口电路IO中间,整个版图呈对称设计。数据存储电路阵列Array是SRAM中存储数据的电路模块,也是电路版图中面积最大电路模块。数据存储电路阵列Array电路由大量重复的存储单元(Bit-cell)组成,Bit-cell的电路结构完全相同。图3中展示了一个128bit位线(Word line),即图3的WL0至WL127,64bit字线(Bit line)的数据存储电路阵列Array,位线如图3中的垂直方向的虚线所示,字线如图3中水平方向的虚线所示。粗线条示出的方框内是128位Bit-cell组成的一组数据存储单元电路,电路中共有64组重复的数据存储单元电路(即BL[0]至BL[63]),每组数据存储单元电路的结构完全相同。
相关技术的完整电路的LPE(Layout Parasitic Extraction)与PRE(ParasiticResistance Extraction)完成后,将会获得一个含有大量寄生参数信息的文件,该文件反映了电路版图的精确寄生特性,但是包含大量的重复冗余数据,如电路中大量重复的Bit-cell单元,这些重复冗余数据会造成后续仿真时间的增加。本申请的发明人发现如果能够只对版图中有效电路模块中的互连线提取寄生参数,过滤掉那些对功耗仿真不敏感的电路模块,即可以产生一份精简的电路寄生参数文件。
对于不同输入激励,处于运行状态的有效电路模块不同,因此可以设置一份配置文件,在配置文件中,根据输入激励设定电路的有效电路模块,保留有效电路模块中互连线上的晶体管,例如图3中CTL电路,IO电路以及粗线标出的单个数据存储单元电路中的晶体管,删除其余电路冗余电路的晶体管,从而获得有效电路模块中互连线的寄生参数,过滤掉冗余或重复电路中互连线的寄生参数,产生一份精简的寄生参数文件,即获取精简寄生参数表。利用这份精简的寄生参数文件进行后仿真,可以大幅度减少仿真花费的时间。
基于以上精简寄生参数提取方法进行功耗仿真也存在一些问题,该方法过滤掉了一些重复或冗余电路模块的寄生参数,所以重复或冗余电路模块的电流也被过滤掉了,因此本申请的一些实施例在此基础上提出了一种精准并精简的功耗测量方法,该方法基于的版图如图4所示。
为了加快后仿真的速度,用精简的方法提取有效电路的寄生参数,去除了重复冗余电路的寄生参数,但是同时也屏蔽了冗余电路模块的电流,这并不利于整体电路的功耗测量,为了进一步提升整体电路的功耗测量的准确性,本申请的一些实施例需要对配置文件进行修改,将需要测量的有效电路模块与被过滤的电路模块分离开来,从而实现有效电路模块与冗余电路模块的电流隔离。
如图4所示,在配置文件中,可以将粗线标出的方框的电路标记为有效电路模块,包括CTL电路,IO电路以及一组数据存储单元电路。将粗线方框之外电路标记为重复电路模块,图4的重复电路模块包括重复的数据存储单元电路。本申请的一些实施例在后仿真过程中将粗线方框内的有效电路模块的电流与剩余部分的电流区分开来,分别进行仿真测量。
功耗与电流I和电源VDD成正比。例如,功耗的公式表示为P=I*VDD,I是电源端口的电流,VDD是电路正常工作的供电电压。在测量功耗阶段,由于相关技术方案中VDD和VSS是全局参数,该测量方法只能测量整体电路的功耗,具有一定的局限性,为了实现本申请的一些实施例需要在配置文件中,将有效电路模块和重复电路模块的I和VDD分别设置为不同的名字,从而将有效电路和冗余电路模块的电流分离开来,测量有效模块的功耗。对于电流无法测量的重复电路模块,因为其功耗等于有效电路模块中数据存储单元电路的功耗,所以利用叠加的方法即能够计算出完整电路的功耗。
在此基础上,本申请的一些实施例在测量整个电路的功耗时,可以将电路进行划分。为了更快速且精准的测量电路的整体功耗,本申请的一些实施例提出了将所需测量的有效电路模块的电源信号与重复电路模块的电源信号区分开来的方法,在精简寄生参数提取的模式下测量指定有效电路模块的功耗,然后利用叠加的方式计算出整个电路的功耗。
下面结合图5示例性阐述获取设计阶段的静态随机存取存储器的总功耗的方法。
如图5所示,获取静态随机存取存储器电路的总功耗的方法包括:
S301,实现VDD/VSS电路分离。
在仿真工具的配置文件中,将有效电路模块的电源信号与重复冗余电路模块电源信号区分开,例如,SRAM电路中,将有效电路模块中数据存储单元电路的VDD与VSS替换为VDD_0与VSS_0,重复电路模块的VDD及VSS替换为VDD_1与VSS_1等,控制电路模块和接口电路的电源保持VDD与VSS不变。之后,仿真工具会读取配置文件中的内容进行仿真时可以实现有效电路模块和重复电路模块的分离。需要说明的是,因为对于整体电路来说,外接供电电源电压都是同一个,需要对其进行配置才能将其分离开来,可以通过脚本修改,也可以对仿真工具本身的配置文件进行修改。配置文件对于每个仿真来说是必要的,当仿真时仿真工具软件会自动识别配置文件,因此在仿真前,需要在配置文件中对仿真条件进行设定。
S302,提取精简寄生参数,以获取精简寄生参数表。
例如,基于S301的配置文件提取精简寄生参数,产生一份精简的寄生参数表。具体的,得到了控制电路模块、接口电路模块和一个数据存储单元电路模块对应的寄生阐述表。
S303,进行电路后仿真。也就是说,利用精简之后的精简寄生参数表做电路的后仿真,通过后仿真过程可以快速测量有效电路模块的功耗。即通过后仿真快速获取控制电路模块、接口电路模块和一个数据存储单元电路模块的功耗。
S304,通过计算得到有效电路的功耗。通过计算控制电路模块、接口电路模块和一个数据存储单元电路模块的功耗的和得到有效电路的功耗。
S305,计算整个电路的功耗,即计算静态随机存取存储器电路的总功耗。
具体地,利用有效电路的功耗,计算整个电路的功耗。根据电路的数据存储单元的数量(例如,位线bitline和字线wordline的数量),提前将对应的总电路功耗计算公式写入配置文件。例如,SRAM电路中有64组重复的数据存储单元电路,则总功耗可以表示为:P(VDD)+64*P(VDD_0),其中P(VDD)是控制电路和接口电路的功耗,P(VDD_0)是Array电路中一组数据存储单元电路的功耗。这样的测量方式可以快速精准的计算出整体电路的功耗。
本申请的一些实施例在精简寄生参数提取的模型基础上,可有效地缩小测量规模,提高寄生参数提取精度和提高后续电路仿真速度,又不失后续功耗仿真的准确性。
本申请的一些实施例有以下三个优点:本申请的一些实施例只需要提取有效电路模块的寄生参数,无需对整个电路进行寄生参数提取,去除了重复电路模块,抽取一份精简的寄生参数表,减少了寄生参数提取流程需要的时间,能够大幅度减少功耗仿真的时间;本申请的一些实施例通过将版图进行划分,提取有效电路模块的寄生参数,过滤掉冗余电路的寄生参数,产生一份精简的寄生参数文件,大幅度减少功耗测量的仿真时间。通过将有效电路模块的电源信号与冗余电路模块电源信号的分离,实现指定的有效电路的功耗测量,然后通过叠加的方式计算出整体电路的功耗。需要说明的是,可以根据电路原理图或者版图来确定有效电路模块和重复电路模块。
请参考图6,图6示出了本申请实施例提供的获取电路设计中电路总功耗的装置,应理解,该装置400上述图2方法实施例对应,能够执行上述方法实施例涉及的各个步骤,该装置的具体功能可以参见上文中的描述,为避免重复,此处适当省略详细描述。装置包括至少一个能以软件或固件的形式存储于存储器中或固化在装置的操作系统中的软件功能模块,该获取电路设计中电路总功耗的装置包括:有效电路的功耗获取模块601,被配置为根据精简寄生参数表获取有效电路的功耗,其中,所述精简寄生参数表中的信息是与过滤电路版图中的重复电路模块后得到的有效电路模块对应的寄生参数信息;总功耗获取模块602,被配置为根据所述有效电路的功耗获取电路总功耗,其中,所述电路总功耗包括与所述有效电路模块对应的功耗和与所述重复电路模块对应的重复功耗。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的装置的具体工作过程,可以参考前述方法中的对应过程,在此不再过多赘述。
本申请的一些实施例提供一种计算机可读存储介质,其上存储有计算机程序,所述程序被处理器执行时可实现上述第一方面所述的方法。
如图7所示,本申请的一些实施例提供一种信息处理设备700,包括存储器710、处理器720以及存储在所述存储器710上并可在所述处理器720上运行的计算机程序,其中,所述处理器720(通过总线730从存储器710读取程序并执行)执行所述程序时可实现图2所述的方法。
处理器520可以处理数字信号,可以包括各种计算结构。例如复杂指令集计算机结构、结构精简指令集计算机结构或者一种实行多种指令集组合的结构。在一些示例中,处理器520可以是微处理器。
存储器710可以用于存储由处理器720执行的指令或指令执行过程中相关的数据。这些指令和/或数据可以包括代码,用于实现本申请实施例描述的一个或多个模块的一些功能或者全部功能。本公开实施例的处理器720可以用于执行存储器710中的指令以实现图2中所示的方法。存储器710包括动态随机存取存储器、静态随机存取存储器、闪存、光存储器或其它本领域技术人员所熟知的存储器。
在本申请所提供的几个实施例中,应该理解到,所揭露的装置和方法,也可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,附图中的流程图和框图显示了根据本申请的多个实施例的装置、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或代码的一部分,所述模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现方式中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
另外,在本申请各个实施例中的各功能模块可以集成在一起形成一个独立的部分,也可以是各个模块单独存在,也可以两个或两个以上模块集成形成一个独立的部分。
所述功能如果以软件功能模块的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述仅为本申请的实施例而已,并不用于限制本申请的保护范围,对于本领域的技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。
以上所述,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应所述以权利要求的保护范围为准。
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
Claims (13)
1.一种获取电路设计中电路总功耗的方法,其特征在于,所述方法包括:
根据精简寄生参数表获取有效电路的功耗,其中,所述精简寄生参数表中的信息是与过滤电路版图中的重复电路模块后得到的有效电路模块对应的寄生参数信息;
根据所述有效电路的功耗获取电路总功耗,其中,所述电路总功耗包括与所述有效电路模块对应的功耗和与所述重复电路模块对应的重复功耗。
2.如权利要求1所述的方法,其特征在于,所述根据精简寄生参数表获取有效电路的功耗之前,所述方法还包括:
提取所述有效电路模块的寄生参数,获取所述精简寄生参数表。
3.如权利要求2所述的方法,其特征在于,所述提取所述有效电路模块的寄生参数,获取所述精简寄生参数表,包括:根据配置文件提取所述寄生参数,其中,所述配置文件被配置为将需要测量的所述有效电路模块与被过滤的所述重复电路模块进行分离。
4.如权利要求3所述的方法,其特征在于,所述根据精简寄生参数表获取有效电路的功耗,包括:
根据所述精简寄生参数表和所述配置文件进行后仿真,获取所述有效电路的功耗。
5.如权利要求3所述的方法,其特征在于,所述提取所述有效电路模块的寄生参数,获取所述精简寄生参数表,包括:
根据所述配置文件确认与第一输入激励对应的目标有效电路模块;
获取与所述目标有效电路模块对应的精简寄生参数表。
6.如权利要求5所述的方法,其特征在于,所述配置文件用于存储与多种输入激励中每种输入激励分别对应的目标有效电路的对照关系。
7.如权利要求5所述的方法,其特征在于,
所述获取与所述目标有效电路模块对应的精简寄生参数表,包括:
保留所述目标有效电路模块中互连线上的第一晶体管,删除所述重复电路模块中互连线上的第二晶体管,以获得所述目标有效电路模块中互连线的寄生参数,并过滤掉所述重复电路模块中互连线的寄生参数,得到与所述目标有效电路模块对应的精简寄生参数表。
8.如权利要求1所述的方法,其特征在于,所述根据所述有效电路的功耗获取电路总功耗,包括:
根据第一有效电路模块的功耗确定所述重复电路模块的功耗,其中,所述第一有效电路模块与所述重复电路模块相同;
叠加所述有效电路的功耗和所述重复电路模块的功耗,得到所述电路总功耗。
9.如权利要求1所述的方法,其特征在于,所述有效电路模块和所述重复电路模块在配置文件中的名称不同。
10.如权利要求1所述的方法,其特征在于,所述电路为静态随机存取存储器对应的电路,其中,所述有效电路模块包括:控制电路模块、接口电路模块和一个数据存储单元,所述重复电路模块包括所述静态随机存取存储器上的剩余多个数据存储单元。
11.一种获取电路设计中电路总功耗的装置,其特征在于,所述装置包括:
有效电路的功耗获取模块,被配置为根据精简寄生参数表获取有效电路的功耗,其中,所述精简寄生参数表中的信息是与过滤电路版图中的重复电路模块后得到的有效电路模块对应的寄生参数信息;
总功耗获取模块,被配置为根据所述有效电路的功耗获取电路总功耗,其中,所述电路总功耗包括与所述有效电路模块对应的功耗和与所述重复电路模块对应的重复功耗。
12.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述程序被处理器执行时可实现权利要求1-10中任意一项权利要求所述的方法。
13.一种信息处理设备,包括存储器、处理器以及存储在所述存储器上并可在所述处理器上运行的计算机程序,其中,所述处理器执行所述程序时可实现权利要求1-10中任意一项权利要求所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011555342.1A CN112699632A (zh) | 2020-12-23 | 2020-12-23 | 一种获取电路设计中电路总功耗的方法以及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011555342.1A CN112699632A (zh) | 2020-12-23 | 2020-12-23 | 一种获取电路设计中电路总功耗的方法以及装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN112699632A true CN112699632A (zh) | 2021-04-23 |
Family
ID=75510122
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011555342.1A Pending CN112699632A (zh) | 2020-12-23 | 2020-12-23 | 一种获取电路设计中电路总功耗的方法以及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112699632A (zh) |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH04111463A (ja) * | 1990-08-31 | 1992-04-13 | Oki Electric Ind Co Ltd | 半導体記憶装置およびその製造方法 |
US5212663A (en) * | 1991-02-21 | 1993-05-18 | Cypress Semiconductor Corporation | Method to implement a large resettable static RAM without the large surge current |
CN1750006A (zh) * | 2004-09-13 | 2006-03-22 | 中国科学院微电子研究所 | 一种基于静态随机存储器的快速仿真器及方法 |
CN1763928A (zh) * | 2004-10-18 | 2006-04-26 | 中国科学院微电子研究所 | 一种基于静态随机存储器的快速综合设计方法 |
CN102866291A (zh) * | 2012-08-27 | 2013-01-09 | 中国科学院微电子研究所 | 基于硬件平台的门级功耗分析装置及方法 |
CN107679311A (zh) * | 2017-09-26 | 2018-02-09 | 上海华虹宏力半导体制造有限公司 | 存储器ip模块寄生参数的提取方法 |
CN110471522A (zh) * | 2019-06-28 | 2019-11-19 | 杭州宙其科技有限公司 | 一种利用牵连关系图优化静态功耗的方法 |
-
2020
- 2020-12-23 CN CN202011555342.1A patent/CN112699632A/zh active Pending
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH04111463A (ja) * | 1990-08-31 | 1992-04-13 | Oki Electric Ind Co Ltd | 半導体記憶装置およびその製造方法 |
US5212663A (en) * | 1991-02-21 | 1993-05-18 | Cypress Semiconductor Corporation | Method to implement a large resettable static RAM without the large surge current |
CN1750006A (zh) * | 2004-09-13 | 2006-03-22 | 中国科学院微电子研究所 | 一种基于静态随机存储器的快速仿真器及方法 |
CN1763928A (zh) * | 2004-10-18 | 2006-04-26 | 中国科学院微电子研究所 | 一种基于静态随机存储器的快速综合设计方法 |
CN102866291A (zh) * | 2012-08-27 | 2013-01-09 | 中国科学院微电子研究所 | 基于硬件平台的门级功耗分析装置及方法 |
CN107679311A (zh) * | 2017-09-26 | 2018-02-09 | 上海华虹宏力半导体制造有限公司 | 存储器ip模块寄生参数的提取方法 |
CN110471522A (zh) * | 2019-06-28 | 2019-11-19 | 杭州宙其科技有限公司 | 一种利用牵连关系图优化静态功耗的方法 |
Non-Patent Citations (2)
Title |
---|
ZHITAO ZHOU 等: "The fast simulation model of SRAM", 2006 8TH INTERNATIONAL CONFERENCE ON SOLID-STATE AND INTEGRATED CIRCUIT TECHNOLOGY PROCEEDINGS, 23 April 2007 (2007-04-23), pages 1 - 3 * |
陈宏铭: "一种应用于纳米工艺存储编译器的高效且精确例化功耗表征方法", 中国集成电路, no. 2012, 31 December 2012 (2012-12-31), pages 57 - 61 * |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9449130B1 (en) | Methods, systems, and articles of manufacture for back annotating and visualizing parasitic models of electronic designs | |
US6292765B1 (en) | Method for automatically searching for functional defects in a description of a circuit | |
US9122833B2 (en) | Method of designing fin field effect transistor (FinFET)-based circuit and system for implementing the same | |
US8060355B2 (en) | Automatic, hierarchy-independent partitioning method for transistor-level circuit simulation | |
US6374205B1 (en) | Method of reducing circuit data, method of simulating circuit, and medium for storing circuit data reduction program | |
US9183332B2 (en) | Method for simulation of partial VLSI ASIC design | |
US9934354B1 (en) | Methods, systems, and computer program product for implementing a layout-driven, multi-fabric schematic design | |
US20140059507A1 (en) | Defect Injection For Transistor-Level Fault Simulation | |
US7475367B2 (en) | Memory power models related to access information and methods thereof | |
US20190236232A1 (en) | Analog fault simulation control with multiple circuit representations | |
US9620244B1 (en) | Determining categories for memory fail conditions | |
US10445457B1 (en) | Methods, systems, and articles of manufacture for implementing a physical design of an electronic design with DFM and design specification awareness | |
CN106484995A (zh) | 一种基于catia的国标标准物料清单的生成方法 | |
US20210312113A1 (en) | Method for finding equivalent classes of hard defects in stacked mosfet arrays | |
US20120095737A1 (en) | Power estimator and power estimation method | |
CN107844678B (zh) | 包含IP/Memory时序路径的spice仿真方法 | |
US10678978B1 (en) | Methods, systems, and computer program product for binding and back annotating an electronic design with a schematic driven extracted view | |
CN113138808A (zh) | 一种集成方法、装置、计算机设备和存储介质 | |
CN112699632A (zh) | 一种获取电路设计中电路总功耗的方法以及装置 | |
US10635770B1 (en) | Methods, systems, and computer program products for implementing an electronic design with hybrid analysis techniques | |
US20230260591A1 (en) | Transforming local wire thru resistances into global distributed resistances | |
US10235484B2 (en) | Automatic timing-sensitive circuit extraction | |
JP3862882B2 (ja) | 回路データ縮約方法及び回路シミュレーション方法 | |
US10997333B1 (en) | Methods, systems, and computer program product for characterizing an electronic design with a schematic driven extracted view | |
CN100367285C (zh) | 一种基于静态随机存储器的快速仿真器及方法 |
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 |