CN105740495A - 芯片布局规划活动分布的估计 - Google Patents
芯片布局规划活动分布的估计 Download PDFInfo
- Publication number
- CN105740495A CN105740495A CN201510994344.3A CN201510994344A CN105740495A CN 105740495 A CN105740495 A CN 105740495A CN 201510994344 A CN201510994344 A CN 201510994344A CN 105740495 A CN105740495 A CN 105740495A
- Authority
- CN
- China
- Prior art keywords
- unit
- activity
- allocation plan
- estimation
- chip
- 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
- 230000000694 effects Effects 0.000 title claims abstract description 86
- 238000004364 calculation method Methods 0.000 claims abstract description 10
- 238000000034 method Methods 0.000 claims description 24
- 230000008859 change Effects 0.000 claims description 3
- 238000013461 design Methods 0.000 abstract description 12
- 238000005457 optimization Methods 0.000 abstract description 9
- 238000004088 simulation Methods 0.000 abstract description 5
- 230000006870 function Effects 0.000 description 13
- 230000009471 action Effects 0.000 description 4
- 238000005516 engineering process Methods 0.000 description 4
- 230000001052 transient effect Effects 0.000 description 4
- 230000005540 biological transmission Effects 0.000 description 3
- 238000004422 calculation algorithm Methods 0.000 description 3
- 238000011960 computer-aided design Methods 0.000 description 3
- 230000033001 locomotion Effects 0.000 description 3
- 239000000463 material Substances 0.000 description 3
- 230000008569 process Effects 0.000 description 3
- 238000012360 testing method Methods 0.000 description 3
- 238000012546 transfer Methods 0.000 description 3
- 238000012800 visualization Methods 0.000 description 3
- 238000012938 design process Methods 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 239000004744 fabric Substances 0.000 description 2
- 238000000926 separation method Methods 0.000 description 2
- 108010022579 ATP dependent 26S protease Proteins 0.000 description 1
- 238000012935 Averaging Methods 0.000 description 1
- 239000000654 additive Substances 0.000 description 1
- 230000000996 additive effect Effects 0.000 description 1
- 238000013473 artificial intelligence Methods 0.000 description 1
- 239000003086 colorant Substances 0.000 description 1
- 238000012790 confirmation Methods 0.000 description 1
- 238000001816 cooling Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000018109 developmental process Effects 0.000 description 1
- 239000003999 initiator Substances 0.000 description 1
- 238000012804 iterative process Methods 0.000 description 1
- 230000004807 localization Effects 0.000 description 1
- 238000007726 management method Methods 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 230000037081 physical activity Effects 0.000 description 1
- 238000004321 preservation Methods 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 230000008672 reprogramming Effects 0.000 description 1
- 230000007480 spreading Effects 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 239000000725 suspension Substances 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
- G06F30/30—Circuit design
- G06F30/39—Circuit design at the physical level
- G06F30/392—Floor-planning or layout, e.g. partitioning or placement
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
- G06F30/20—Design optimisation, verification or simulation
-
- 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/39—Circuit design at the physical level
- G06F30/398—Design verification or optimisation, e.g. using design rule check [DRC], layout versus schematics [LVS] or finite element methods [FEM]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2111/00—Details relating to CAD techniques
- G06F2111/08—Probabilistic or stochastic CAD
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2115/00—Details relating to the type of the circuit
- G06F2115/02—System on chip [SoC] design
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
- G06F30/30—Circuit design
-
- 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
- G06F30/30—Circuit design
- G06F30/39—Circuit design at the physical level
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Theoretical Computer Science (AREA)
- Evolutionary Computation (AREA)
- Geometry (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Architecture (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
- Design And Manufacture Of Integrated Circuits (AREA)
- Supply And Distribution Of Alternating Current (AREA)
Abstract
在芯片设计中估计每单元的活动的仿真或计算和对单元逻辑最终将被放置于其中的特定位置或区域的估计相结合,提供了对布局规划内的活动分布的估计的计算。可以利用细粒度(在门级)、在粗粒度(在宏观级)或者在中间粒度(在片上网络单元级)执行活动分布估计。将所述估计可视地显示给设计工具的用户。另外,所述估计用于对布局规划和所述布局规划内的单元的位置和配置进行手动和自动优化。
Description
技术领域
本发明涉及芯片设计领域,并且更具体的,涉及电子设计自动化。
背景技术
在芯片设计中,越来越重要的考虑因素是功耗。这不仅包括总体功耗,还包括局部功耗的分布,并且不仅包括时间平均的功耗,还包括最大瞬时功耗。
芯片的布局规划内的逻辑单元的布置极大地决定了功耗。如本文使用的术语“逻辑单元”、“逻辑”和“单元”中的每一个都具有它们的行业标准含义,并且还可以指下列中的一个或多个:电路、部件、寄存器、处理器、软件或它们的任意组合。特别是,功耗由逻辑单元内的活动量来确定。可以通过仿真来估计逻辑单元中的活动量。
需要一种以有效地方式将仿真信息与芯片的布局规划内的分布的、局部化的功耗相关联,将功耗可视化并利用关联的信息改进分布的系统和方法。
发明内容
本发明的一个方面涉及估计芯片布局规划内的局部活动。这通过根据多个单元的位置以及那些单元中的每一个单元的活动量来计算布局规划中的位置范围的活动分布来实现。
本发明的另一个方面涉及通过显示覆盖有活动信息的布局规划来使结果可视化。可以基于内部活动显示单元的活动信息,或者可以基于数据传输活动显示连接的活动信息。
可以基于单元位置估计函数来计算活动分布。活动分布也可以基于每单元的活动的仿真或者计算的每单元的活动量。
本发明的另一个方面涉及基于活动分布信息优化芯片设计。这可以通过计算或者通过迭代过程来实现。另外,优化可以是对布局规划进行优化或者是对将被放置在布局规划中的单元进行优化。
估计、可视化和优化的上述方面可以在软件中实现,通过一个或多个非暂时性计算机可读介质在一个或多个计算装置上执行所述软件。
附图说明
图1是根据本发明的各个方面的估计并显示布局规划内的活动分布的方法的流程图。
图2示出了根据本发明的各个方面的布局规划活动图的2D显示。
图3示出了根据本发明的各个方面的指示平均活动和最大瞬时活动的布局规划活动图的3D显示。
具体实施方式
在详细描述根据本发明的实施例之前,应当注意到的是,实施例主要在于与有助于本发明有关的方法步骤和设备部件的组合。因此,在适当时,已经由附图中的常规符号表示部件和方法步骤,附图仅示出了与理解本发明的实施例相关的具体细节,从而对于已经从本说明书受益的本领域技术人员来说将显而易见的那些细节不会模糊本公开。
本发明提供了在芯片设计过程的早期,对芯片布局规划内的功耗分布的估计和可视化,以及使用该信息对逻辑单元的布置进行优化。
估计
根据如在本发明的实施例获取的各个方面,通过门级或者RTL仿真(例如,Verilog仿真)生成SAIF文件。SAIF文件表示每个模块库单元的开关活动。布置后的芯片的布局视图示有重叠的每个门的活动。
根据本发明的其他方面以及另一个实施例,通过电子系统级(ESL)仿真(例如,SystemC仿真)生成活动文件(例如,信号值变化导出(VCD)文件)。活动文件表示信道传输活动每个模块接口。布置后的芯片的布局视图示有重叠的每个模块单元的活动。基于以模块指示的寄存器以及通过综合和布置保存的I/O名确定逻辑单元的位置。
片上网络(NoC)包括遍布芯片的逻辑运算和最长的导线。在NoC的逻辑运算和导线中消耗的功率显著。功耗与NoC的每个部分中的活动量成正比。芯片布局规划的布置和布局规划内的NoC影响芯片物理上的何处消耗该NoC功率。
根据本发明的各个方面和另一个实施例,通过NoC通信量场景仿真(例如,由NoC设计软件运行的仿真)产生活动数据。活动数据表示每单元的活动。基于用户绘制的保留和排除区域的芯片的布局规划估计示有重叠的每单元的活动。基于布置估计函数确定单元的位置。美国专利公开US20130174113A1描述了一些这类算法。其他布置估计算法基于网格点。
根据一些方面和一些实施例,单元的活动是在其每个连接上传输量的总和。根据一些方面和一些实施例,每单元的活动由单元之间的连接的数据宽度加权。根据一些方面和一些实施例,每单元的活动由每个单元中的逻辑的大小和类型的估计加权。根据一些方面和一些实施例,单元的活动由其到其他连接的单元的距离加权。根据一些方面和一些实施例,每单元的活动由单元的一个或多个时钟频率加权。根据一些方面和一些实施例,每单元的活动由在断电状态消耗的时间的一部分加权。
加权计算包括乘以因子和相加常数。因为活动可以用作功耗的替代,所以常数和不涉及活动的其他因子用于说明泄露功耗。因子说明单元之间的活动比例相对差。在一些方面和实施例中,并且在很多情况下为了实现足够高的精度,因子与加权值成线性关系。然而,在一些方面和实施例中,为了实现更高的精确度,使用了二次因子。根据本发明的一些其他方面和实施例,使用了指数因子。
根据一些方面和一些实施例,通过运行多场景的仿真(例如,对应于芯片的不同使用情况的多种场景)来计算活动。
根据一些方面和一些实施例,对多个单元列表进行分析。例如,不同的单元列表对应于例示不同数量或不同类型的单元的架构折衷中的不同试验。
根据一些方面和一些实施例,计算多个布局略图的活动分布。不同的布局略图可对应于不同的潜在的布局规划。通常,一些布局规划比其他布局规划更好地适于活动分布,并且一些布局规划更好地适于与可用性和可制造性相关的其他因子。
根据一些方面和一些实施例,在不使用仿真的情况下进行活动分布的计算。在当单元必须等待资源时该单元内的活动暂停的情况下,仿真说明、单元之间的连接说明以及布局规划内的单元布置对于活动估计来说是足够的。例如,因为当NoC链路被下游的通信量阻塞时,NoC链路上实际上没有活动,所以仅需要知道通过该链路在起始器-目标路径上发送的带宽总量以计算平均活动。利用常数活动值说明具有恒定的活动类型的单元(例如,时钟或者自由计数器)。
很多设计和用例中的时钟树比其驱动的逻辑具有更多的切换活动。时钟门控可以减少这种活动。可以基于不同的状态信息在不同的级别进行时钟门控,例如,基于握手信号在模块级或者基于合成工具生成的闩锁在门级进行时钟门控。根据一些方面和一些实施例,活动估计包括基于采用的时钟门控的级别的加权因子。
根据一些方面和一些实施例,计算了密度图。这表示每个区域中的每单位面积的活动。在多个区域粒度(包括在单个网格区级和单元级)进行该计算。
根据一些方面和一些实施例,定义了阈值。活动密度超过该阈值的区域被认为出现故障。
可视化
现在参考图1,根据本发明的一些方面和一些实施例,根据本发明的一些方面和一些实施方案中,示出了场景描述112,其运行在仿真122中的单元的网络列表114描述的系统上,以产生对每单元的活动和单元之间的数据传输活动的描述。布局规划略图116用于限制由单元的网络列表114描述的单元的位置。通过单元位置估计函数124对它们进行处理以产生每单元的位置描述134。在函数142中,使每单元的活动信息132与每单元的位置信息134协调,函数142计算每位置范围的活动以产生每范围的活动描述152。显示函数162利用该信息向用户图形化地显示平均活动量和每单元的最大瞬时活动以及单元之间的数据传输活动的量。
根据本发明的一些方面和一些实施例,将布局规划表示为具有为宏块划分出的直线区域的二维网格点。宏块是产生导线路径阻塞的单元,例如,静态随机存取存储器(SRAM)单元。基本布局规划覆盖有示出每个网格点的颜色的颜色层。每种颜色表示活动级别。通常,鲜红色表示高级别的活动,黄色和绿色表示中间级,深蓝或黑色表示运动很少或者没有运动。通常,网格在每个维度将具有成百或上千个点,以向设计者提供足够高的分辨率,从而识别芯片的感兴趣的部分。通过被估计为放置在点的单元和该单元的活动级别确定每个点的颜色。
现在参考图2,根据一些方面和一些实施例,将布局规划的宏区域按其活动等级标示。图2示出了具有不同颜色的颜色覆盖的布局规划网格,由图案表示每种颜色。为了清楚起见,图中的布局规划在每个维度中的点的数量小于50。宏区域210具有低活动性并且被如此地加有阴影。宏区域220具有高活动性并且被如此地加有阴影。点的颜色230是鲜红色。点的颜色232是黄色。点的颜色234是绿色。点的颜色236是深蓝色。
根据一些方面和一些实施例,单元之间的连接由线示出。线具有表示数据流的方向的箭头。每条线的厚度表示连接的数据宽度。每条线的颜色表示单元之间的连接处的数据传输的活动等级。
现在参考图3,根据一些方面和一些实施例,将布局规划300内的功率分布示出为颜色块的三维网格。块对应于每个点。块的高度表示最大瞬时活动,并且块的颜色表示一段时间内的平均活动。图3示出了表示为块的网格的一段布局规划300。在附图中由不同的图案标识不同的颜色。为了清楚起见,布局规划300在每个维度的点的数量少于20。布局规划300包括区域310,其为宏区域,例如,用于具有可忽略的活动的SRAM的区域。
根据一些方面和一些实施例,由用户选择为了确定峰值瞬时活动的瞬时持续时间。通常,其对应于稳定电网内的瞬时尖峰所需的时间量,其通常在1到100纳秒的范围内。
根据一些方面和一些实施例,一个或多个场景包括在显示的结果中。通过点击场景列表上的复选框,选择在运动计算中要考虑的场景以进行显示。
根据一些方面和一些实施例,在仿真时间范围内对显示进行更新。可以通过输入起始和终止仿真时间或者通过滑动GUI视图中的开始和结束时间滑块,来选择包括在显示中的仿真时间。
根据一些方面和一些实施例,以独特的方式示出活动密度未通过阈值测试的区域。一种方式是用鲜艳的紫色。另一种方式是利用闪烁的颜色。再另一种方式是利用纹理。
优化
给出来自每布局规划位置的活动的估计的信息,则可以优化芯片设计。
一种优化方式是优化布局规划。根据一些方面和一些实施例,由用户通过迭代地改变布局规划和重新运行估计来执行优化过程。根据本发明的一些方面,通过求解成本函数来自动执行优化,其中,每位置范围的活动是该成本函数的输入。根据本发明的其他方面,在成本函数中考虑的一些可能的其他输入将是作为路由拥塞的量度的导线密度和作为总需要的芯片面积的量度的逻辑密度。
然而,通常,优化的目标是下述的一个或两个:使最差情况下的最大瞬时活动最小,所述最差情况下的最大瞬时活动表示芯片的电源网络上的尖峰;以及使最差情况下的平均活动最小,所述最差情况下的平均活动表示散热要求。与不如最优布局规划的布局规划相比,优化的布局规划将具有布置成将高活动的中间逻辑挤压到将具有低活动的芯片的区域的宏观维度。
根据一些方面和一些实施例,优化过程提供了布局规划定义文件,例如,设计交换格式(DEF)文件。根据一些方面和一些实施例,优化过程提供了输出文件,该输出文件具有约束或导引至用于芯片设计过程的后端的布局和布线工具。这可以位于工具控制语言(TCL)或综合设计约束(SDC)文件中。
另一种优化方法是对放置在布局规划中的单元进行优化。在一些方面和一些实施例中,这包括重构逻辑(例如,复制逻辑功能),以使每个拷贝携带较少的活动,并且二者都可以在布局规划中分开以扩展活动。在一些方面和一些实施例中,这包括配置片上网络技术。优化片上网络的技术可以包括:
确定开关的数量、顺序和位置;
将NoC单元分配到不同的功率域;
将NoC单元分配到不同时钟域;
将NoC的单元分配到不同的逻辑模块层级;
包括并配置服务质量(QoS)带宽调整器;
将优先级和带宽配置分配给虚拟信道;
例示并配置通信量成形逻辑;以及
其他设计配置选项。
拓扑优化应该考虑物理活动密度和芯片上的起始器和目标的IP的QoS(带宽和延迟)要求。
根据一些实施例,如果任何区域没通过阈值测试,则运行优化的另一个迭代。如果达到一定数量的迭代,则认为布局规划和网络列表的组合不兼容。
在本领域技术人员阅读到本公开时,对本领域技术人员显而易见的是,本文描述和示出的每个方面具有分离的部件和特征,在不背离本发明的范围和精神的情况下,所述分离的部件和特征可以从特征和方面容易地分离,或者可以容易地与特征和方面结合,以形成实施例。叙述的任何方法可以以叙述的事件的顺序执行,或者以逻辑上可能的任何其他顺序执行。
通过引用的方式将本说明书引用的所有出版物和专利并入到本文中,如同每个单独的出版物或专利被具体并单独地指明通过引用的方式并入到本文中,并且通过参考公开和描述的方法和/或系统结合引用出版物的方法和/或系统,将其并入到本文中。引用任何出版物是因为其公开日早于申请日,并且不应解释为,由于在先发明而承认本发明没有资格早于该出版物。另外,提供的出版物的日期可能与实际的公开日期不同,这可能需要单独确认。
另外,希望这种等同物包括当前已知的等同物和将来开发的等同物,即,开发的执行相同功能的、与结构无关的任何元件。因此,本发明的范围并不旨在限于本文所示和描述的示例性的实施例。
根据本发明的教导,计算机和计算装置是制品。制品的其他实例包括:驻留在母板上的电子部件、服务器、大型计算机或其他专用计算机,其中的每一个都具有一个或多个处理器(例如,中央处理单元、图形处理单元或微处理器),所述一个或多个处理器被配置为执行计算机可读程序代码(例如,算法、硬件、固件和/或软件)以接收数据、发送数据、存储数据或者执行方法。
制品(例如,计算机或计算装置)包括:可以包括一系列指令(例如计算机可读程序步骤或编码到其中的代码)的非瞬时性计算机可读介质或存储器。在本发明的某些方面,非瞬时性计算机可读介质包括一个或多个数据存储库。因此,在根据本发明的任何方面的某些实施例中,计算机可读程序代码(或代码)被编码到计算装置的非瞬时性计算机可读介质中。反过来,处理器或模块执行该计算机可读程序代码以使用工具创建或修改现有的计算机辅助设计。如本文所使用的,术语“模块”可以指代一个或多个电路、部件、寄存器、处理器、软件子程序或它们的任意组合。在实施例的其他方面中,创建或修改所述计算机辅助设计被实现为基于web的软件应用程序,其中,接收涉及计算机辅助设计或工具或计算机可读程序代码的数据的部分,或将其传送到主机的计算装置。
利用多种方式实现根据本发明的各个方面的制品或系统:利用一个或多个不同的处理器或微处理器、易失性和/或非易失性存储器和外围设备或外围控制器;利用集成的微控制器,所述微控制器具有处理器、本地易失性和非易失性存储器、外围设备和输入/输出引脚;离散逻辑,其实现制品或系统的固定版本;以及可编程逻辑,其实现制品或系统的版本,并可通过本地或远程接口重新编程。无论是在逻辑上还是通过由处理器执行的一组命令,该逻辑可以实现控制系统。
因此,前述部分仅示出并入到本发明的各个实施例的各个方面和原理。应当理解,本领域的普通技术人员将能够设计各种布置,尽管本文没有明确地描述或示出,但是它们体现了本发明的原理并包括在其精神和范围内。另外,所有实施例和本文引用的条件语言主要旨在帮助读者理解本发明的原理和发明人贡献的概念,以促进本领域的发展,并且应解释为不限于这种具体叙述的示例和条件。另外,本文的所有陈述,陈述的本发明的原理、方面和实施例以及其中的具体实施例旨在包括其结构和功能的等同物。另外,希望这种等同物包括当前已知的等同物和将来开发的等同物,即,开发的执行相同功能的、与结构无关的任何元件。
应当注意,除非上下文另有明确说明,如本文和所附的权利要求书中所使用的,单数形式的“一”,“一个”和“该”包括复数对象。还应当注意,权利要求书可撰写成排除任何任选的元素。因此,本声明旨在作为使用这类排除性术语(例如,“仅”,“只”等,以及对权利要求的元素的叙述,或者使用“否定”限制)的基础。
除非另有定义,本文使用的所有技术和科学术语具有本发明所属领域中的普通技术人员通常理解的相同的含义。在本发明的实践中也可以使用类似或等同于本文描述的方法和材料的任何方法和材料。还描述了代表性的示例性方法和材料。
因此,并不旨在将本发明的范围限于本文描述和讨论的各个方面和实施例。相反,本发明的范围和精神由所附的权利要求书体现。
Claims (9)
1.一种用于估计布局规划内的活动分布的方法,所述方法包括:
接收作为输入的、描述多个单元中的每个单元的位置的信息;
接收作为输入的、描述多个单元中的每个单元的活动量的信息;以及
根据所述多个单元中的至少一个单元的位置和所述多个单元中的至少一个单元的活动量,计算位置范围的活动量。
2.根据权利要求1所述的方法,进一步包括:
显示所述布局规划的图像;以及
在所述布局规划内,显示所述多个单元中的至少一个单元,
其中,所述多个单元中的至少一个单元的显示表示所述活动量。
3.根据权利要求1所述的方法,进一步包括:
显示所述布局规划;以及
在所述布局规划内,显示所述多个单元中的至少两个单元之间的连接,
其中,连接的显示表示所述活动量。
4.根据权利要求1所述的方法,进一步包括:运行函数以估计所述多个单元的位置,从而导出描述NoC的多个单元中的每一个单元的位置的信息。
5.根据权利要求1所述的方法,进一步包括:运行函数以导出描述多个单元中的每一个单元的活动量的信息。
6.根据权利要求5所述的方法,其中,所述函数是NoC内的通信量的仿真。
7.根据权利要求1所述的方法,进一步包括:改变多个单元中的至少一个单元的位置,以使得所述位置在布局规划的具有比所述输入信息描述的位置低的活动密度的区域中。
8.一种在布局规划中布置多个单元的方法,其中,所述布置使用描述多个单元的活动的信息。
9.至少一个存储可执行代码的非瞬时计算机可读介质,所述可执行代码在被执行时,使计算装置估计布局规划内的活动分布。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US14/588,301 | 2014-12-31 | ||
US14/588,301 US9710590B2 (en) | 2014-12-31 | 2014-12-31 | Estimation of chip floorplan activity distribution |
Publications (1)
Publication Number | Publication Date |
---|---|
CN105740495A true CN105740495A (zh) | 2016-07-06 |
Family
ID=56164477
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510994344.3A Pending CN105740495A (zh) | 2014-12-31 | 2015-12-25 | 芯片布局规划活动分布的估计 |
Country Status (2)
Country | Link |
---|---|
US (3) | US9710590B2 (zh) |
CN (1) | CN105740495A (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10628627B2 (en) | 2017-11-15 | 2020-04-21 | Industrial Technology Research Institute | Thermal estimation device and thermal estimation method |
TWI712984B (zh) * | 2019-12-06 | 2020-12-11 | 瑞昱半導體股份有限公司 | 藉助於額外導線來進行電網優化之方法與設備 |
CN112989742A (zh) * | 2019-12-13 | 2021-06-18 | 瑞昱半导体股份有限公司 | 借助于额外导线来进行电网优化的方法与设备 |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111143274B (zh) * | 2019-11-13 | 2022-07-12 | 广东高云半导体科技股份有限公司 | 以逻辑综合结果为导向的层级结构优化方法及装置、系统 |
CN113919275A (zh) | 2020-09-21 | 2022-01-11 | 台积电(南京)有限公司 | 用于优化集成电路的布局的方法 |
Family Cites Families (55)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5553002A (en) * | 1990-04-06 | 1996-09-03 | Lsi Logic Corporation | Method and system for creating and validating low level description of electronic design from higher level, behavior-oriented description, using milestone matrix incorporated into user-interface |
US5541849A (en) * | 1990-04-06 | 1996-07-30 | Lsi Logic Corporation | Method and system for creating and validating low level description of electronic design from higher level, behavior-oriented description, including estimation and comparison of timing parameters |
US5598344A (en) * | 1990-04-06 | 1997-01-28 | Lsi Logic Corporation | Method and system for creating, validating, and scaling structural description of electronic device |
US5751592A (en) * | 1993-05-06 | 1998-05-12 | Matsushita Electric Industrial Co., Ltd. | Apparatus and method of supporting functional design of logic circuit and apparatus and method of verifying functional design of logic circuit |
AU2816495A (en) * | 1994-06-03 | 1996-01-04 | Synopsys, Inc. | Method and apparatus for estimating the power dissipated by a digital circuit |
US5872952A (en) | 1995-04-17 | 1999-02-16 | Synopsys, Inc. | Integrated circuit power net analysis through simulation |
US5805861A (en) * | 1995-08-29 | 1998-09-08 | Unisys Corporation | Method of stabilizing component and net names of integrated circuits in electronic design automation systems |
TW318933B (en) * | 1996-03-08 | 1997-11-01 | Hitachi Ltd | Semiconductor IC device having a memory and a logic circuit implemented with a single chip |
US6209119B1 (en) * | 1997-04-10 | 2001-03-27 | Matsushita Electric Industrial Co., Ltd. | Apparatus and method for synthesizing module |
US6195593B1 (en) * | 1997-09-03 | 2001-02-27 | Seiko Epson Corporation | Reusable modules for complex integrated circuit devices |
US6363515B1 (en) | 1997-12-30 | 2002-03-26 | Intel Corporation | Early power estimation tool for high performance electronic system design |
EP0974898A3 (en) * | 1998-07-24 | 2008-12-24 | Interuniversitair Microelektronica Centrum Vzw | A method for determining a storage-bandwidth optimized memory organization of an essentially digital device |
US20060117274A1 (en) * | 1998-08-31 | 2006-06-01 | Tseng Ping-Sheng | Behavior processor system and method |
US7480606B2 (en) * | 1998-08-31 | 2009-01-20 | Versity Design, Inc. | VCD-on-demand system and method |
US6523157B1 (en) * | 1999-04-30 | 2003-02-18 | Matsushita Electric Industrial Co., Ltd. | Method for designing integrated circuit device and database for design of integrated circuit device |
WO2001031375A1 (en) * | 1999-10-22 | 2001-05-03 | Teraconnect Inc. | Wafer scale integration and remoted subsystems using opto-electronic transceivers |
US6665843B2 (en) * | 2001-01-20 | 2003-12-16 | International Business Machines Corporation | Method and system for quantifying the integrity of an on-chip power supply network |
US6598209B1 (en) * | 2001-02-28 | 2003-07-22 | Sequence Design, Inc. | RTL power analysis using gate-level cell power models |
US6654946B1 (en) * | 2001-10-30 | 2003-11-25 | Lsi Logic Corporation | Interscalable interconnect |
US6925616B2 (en) * | 2002-10-04 | 2005-08-02 | Sun Microsystems, Inc. | Method to test power distribution system |
US7899659B2 (en) * | 2003-06-02 | 2011-03-01 | Lsi Corporation | Recording and displaying logic circuit simulation waveforms |
US7216326B2 (en) * | 2003-06-20 | 2007-05-08 | Interuniversitar Microelektronica Centrum (Imec) | Resource activity aware system for determining a resource interconnection pattern within an essentially digital device and devices created therewith |
US7725848B2 (en) * | 2005-01-27 | 2010-05-25 | Wolfgang Nebel | Predictable design of low power systems by pre-implementation estimation and optimization |
WO2007070879A1 (en) * | 2005-12-17 | 2007-06-21 | Gradient Design Automation, Inc. | Simulation of ic temperature distributions using an adaptive 3d grid |
KR100536293B1 (ko) * | 2004-02-17 | 2005-12-12 | 박현주 | 칩 설계 검증 장치 및 방법 |
US7260809B2 (en) | 2005-07-25 | 2007-08-21 | Nec Laboratories America, Inc. | Power estimation employing cycle-accurate functional descriptions |
US7444610B1 (en) * | 2005-08-03 | 2008-10-28 | Xilinx, Inc. | Visualizing hardware cost in high level modeling systems |
US7325215B2 (en) * | 2005-08-31 | 2008-01-29 | Lsi Logic Corporation | Timing violation debugging inside place and route tool |
US7784008B1 (en) | 2006-01-11 | 2010-08-24 | Altera Corporation | Performance visualization system |
FR2903794B1 (fr) * | 2006-07-13 | 2008-09-05 | Coupling Wave Solutions Cws Sa | Procede de modelisation de l'activite de commutation d'un circuit numerique |
EP2052324A2 (en) * | 2006-08-11 | 2009-04-29 | Nxp B.V. | Methods and products for determining and visualizin ic behaviour |
EP2080128A1 (en) * | 2006-10-10 | 2009-07-22 | Ecole Polytechnique Federale De Lausanne (Epfl) | Method to design network-on-chip (noc)-based communication systems |
US7600208B1 (en) * | 2007-01-31 | 2009-10-06 | Cadence Design Systems, Inc. | Automatic placement of decoupling capacitors |
US7865850B1 (en) * | 2007-02-28 | 2011-01-04 | Cadence Design Systems, Inc. | Method and apparatus for substrate noise aware floor planning for integrated circuit design |
EP2006784A1 (en) * | 2007-06-22 | 2008-12-24 | Interuniversitair Microelektronica Centrum vzw | Methods for characterization of electronic circuits under process variability effects |
JP2009169907A (ja) * | 2008-01-21 | 2009-07-30 | Yokogawa Electric Corp | メモリ装置、メモリシステム、及びメモリ装置の設計方法 |
US9087164B2 (en) * | 2008-01-26 | 2015-07-21 | National Semiconductor Corporation | Visualization of tradeoffs between circuit designs |
US7877715B1 (en) | 2008-03-28 | 2011-01-25 | Cadence Design Systems, Inc. | Method and apparatus to use physical design information to detect IR drop prone test patterns |
US8527936B2 (en) * | 2008-12-31 | 2013-09-03 | Cadence Design Systems, Inc. | Method and system for implementing graphical analysis of hierarchical coverage information using treemaps |
US8463587B2 (en) * | 2009-07-28 | 2013-06-11 | Synopsys, Inc. | Hierarchical order ranked simulation of electronic circuits |
US8196085B1 (en) * | 2010-01-19 | 2012-06-05 | Altera Corporation | Interactive design optimization techniques and interface |
US8185862B2 (en) * | 2010-07-13 | 2012-05-22 | Algotochip Corporation | Architectural level power-aware optimization and risk mitigation |
US8782577B2 (en) * | 2010-07-24 | 2014-07-15 | Cadence Design Systems, Inc. | Method, apparatus, and article of manufacture for providing in situ, customizable information in designing electronic circuits with electrical awareness |
US8739094B2 (en) * | 2011-12-22 | 2014-05-27 | Lsi Corporation | Power estimation using activity information |
US20130174113A1 (en) * | 2011-12-30 | 2013-07-04 | Arteris SAS | Floorplan estimation |
US8869093B2 (en) * | 2012-01-09 | 2014-10-21 | Synopsys, Inc. | Displaying interface protocol activity |
US9069912B2 (en) * | 2012-03-31 | 2015-06-30 | Qualcomm Technologies, Inc. | System and method of distributed initiator-local reorder buffers |
US8826203B2 (en) * | 2012-06-18 | 2014-09-02 | International Business Machines Corporation | Automating current-aware integrated circuit and package design and optimization |
US8887112B2 (en) * | 2012-11-14 | 2014-11-11 | International Business Machines Corporation | Test validation planning |
US9110689B2 (en) * | 2012-11-19 | 2015-08-18 | Qualcomm Technologies, Inc. | Automatic pipeline stage insertion |
US8762916B1 (en) * | 2013-02-25 | 2014-06-24 | Xilinx, Inc. | Automatic generation of a data transfer network |
US9811617B2 (en) * | 2014-01-30 | 2017-11-07 | Mentor Graphics Corporation | Regression nearest neighbor analysis for statistical functional coverage |
US9825779B2 (en) * | 2014-05-23 | 2017-11-21 | Arteris, Inc. | Network-on-chip (NoC) topology generation |
US9437326B2 (en) * | 2014-06-12 | 2016-09-06 | Freescale Semiconductor, Inc. | Margin tool for double data rate memory systems |
US9501603B2 (en) * | 2014-09-05 | 2016-11-22 | International Business Machines Corporation | Integrated circuit design changes using through-silicon vias |
-
2014
- 2014-12-31 US US14/588,301 patent/US9710590B2/en active Active
-
2015
- 2015-12-25 CN CN201510994344.3A patent/CN105740495A/zh active Pending
-
2017
- 2017-07-17 US US15/652,042 patent/US10430545B2/en active Active
-
2019
- 2019-09-24 US US16/579,836 patent/US11100269B2/en active Active
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10628627B2 (en) | 2017-11-15 | 2020-04-21 | Industrial Technology Research Institute | Thermal estimation device and thermal estimation method |
TWI712984B (zh) * | 2019-12-06 | 2020-12-11 | 瑞昱半導體股份有限公司 | 藉助於額外導線來進行電網優化之方法與設備 |
CN112989742A (zh) * | 2019-12-13 | 2021-06-18 | 瑞昱半导体股份有限公司 | 借助于额外导线来进行电网优化的方法与设备 |
CN112989742B (zh) * | 2019-12-13 | 2024-01-02 | 瑞昱半导体股份有限公司 | 借助于额外导线来进行电网优化的方法与设备 |
Also Published As
Publication number | Publication date |
---|---|
US9710590B2 (en) | 2017-07-18 |
US20160188779A1 (en) | 2016-06-30 |
US20200089839A1 (en) | 2020-03-19 |
US20170316145A1 (en) | 2017-11-02 |
US11100269B2 (en) | 2021-08-24 |
US10430545B2 (en) | 2019-10-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105740495A (zh) | 芯片布局规划活动分布的估计 | |
Kahng | Machine learning applications in physical design: Recent results and directions | |
CN113261003A (zh) | 使用神经网络生成集成电路平面图 | |
CN109145354A (zh) | 关键参数识别、工艺模型校准和可变性分析的系统和方法 | |
US8959464B2 (en) | Multi-etch process using material-specific behavioral parameters in 3-D virtual fabrication environment | |
CN110728096A (zh) | 制造集成电路的方法和设计集成电路的计算系统 | |
Kahng | New directions for learning-based IC design tools and methodologies | |
JP2009519528A (ja) | 統計的タイミング解析におけるクリティカリティ予測のシステム及び方法 | |
CN101809576A (zh) | 构架物理综合 | |
EP3320653A1 (en) | Parallelized network traffic flow availability simulation using stochastic process and traffic engineering algorithms | |
CN104239595B (zh) | 用于实现用于设计规划和架构探索的系统级设计工具的方法和装置 | |
Sun et al. | Reliability-based traffic network design with advanced traveler information systems | |
US8996341B2 (en) | Generating and evaluating expert networks | |
US9262359B1 (en) | Method and system for implementing pipeline flip-flops | |
WO2021025075A1 (ja) | 訓練装置、推定装置、訓練方法、推定方法、プログラム及びコンピュータ読み取り可能な非一時的記憶媒体 | |
Wang et al. | LHNN: Lattice hypergraph neural network for VLSI congestion prediction | |
US20230186007A1 (en) | System and method for optimizing integrated circuit layout based on neural network | |
Kumar et al. | When and where should there be dedicated lanes under mixed traffic of automated and human-driven vehicles for system-level benefits? | |
Lu et al. | Doomed run prediction in physical design by exploiting sequential flow and graph learning | |
CN115130407A (zh) | 用于在处理器与fpga之间划分仿真模型的方法 | |
US20140351781A1 (en) | Method for placing operational cells in a semiconductor device | |
US8726210B2 (en) | Optimizing timing critical paths by modulating systemic process variation | |
CN104335161A (zh) | 使用图对网络鲁棒性的有效评估 | |
JP2004273903A (ja) | 回路シミュレータおよびシミュレーションシステム | |
Liu et al. | Concurrent Sign-off Timing Optimization via Deep Steiner Points Refinement |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
WD01 | Invention patent application deemed withdrawn after publication | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20160706 |