CN115659900B - 用于呈现集成电路版图的方法、设备和介质 - Google Patents

用于呈现集成电路版图的方法、设备和介质 Download PDF

Info

Publication number
CN115659900B
CN115659900B CN202211659626.4A CN202211659626A CN115659900B CN 115659900 B CN115659900 B CN 115659900B CN 202211659626 A CN202211659626 A CN 202211659626A CN 115659900 B CN115659900 B CN 115659900B
Authority
CN
China
Prior art keywords
performance data
integrated circuit
layout
circuit layout
region
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.)
Active
Application number
CN202211659626.4A
Other languages
English (en)
Other versions
CN115659900A (zh
Inventor
请求不公布姓名
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Advanced Manufacturing EDA Co Ltd
Original Assignee
Advanced Manufacturing EDA Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Advanced Manufacturing EDA Co Ltd filed Critical Advanced Manufacturing EDA Co Ltd
Priority to CN202211659626.4A priority Critical patent/CN115659900B/zh
Publication of CN115659900A publication Critical patent/CN115659900A/zh
Application granted granted Critical
Publication of CN115659900B publication Critical patent/CN115659900B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Design And Manufacture Of Integrated Circuits (AREA)

Abstract

本公开的实施例涉及一种用于呈现集成电路版图的方法、设备和介质,包括:确定集成电路版图的划分参数以及基于划分后的集成电路版图所获取的运行日志数据,所述划分参数至少包括区域块的位置信息;根据所获取的运行日志数据和所述划分参数,获取集成电路版图对应的多项性能数据及每一个区域块的位置;基于集成电路版图的尺寸和区域块的位置,映射成包含多个区域块的网格化版图;以及基于对多项性能数据的处理,对网格化版图执行可视化显示。由此,能够将集成电路的日志分析的结果以一种视觉化展示的方式呈现,从而便于定位集成电路瓶颈点。

Description

用于呈现集成电路版图的方法、设备和介质
技术领域
本公开的实施例总体涉及电路版图处理技术领域,并且更具体地涉及一种用于呈现集成电路版图的方法、计算设备和计算机可读存储介质。
背景技术
集成电路版图(又可以简称为版图、布图)是从设计并模拟优化后的电路所转化成的一系列几何图形,其包含了集成电路尺寸、各层拓扑定义等器件相关的物理信息数据。电路版图数据包含当中各个图形的坐标等数据。
由于版图数据量过于庞大, 用于处理版图的EDA软件会分多次对版图进行处理,分析人员获得EDA软件的处理结果后根据经验进行软件处理过程的整体性能分析。采用这种方式往往会造成其整体性能可能是因为某些单元的内容过于复杂或庞杂而拖延同时内存消耗显著增大,因此,就无法得到每一个版图区域的实际处理结果,无法找出版图处理的瓶颈。
发明内容
针对上述问题,本公开提供了一种用于呈现集成电路版图的方法、计算设备和计算机可读存储介质,能够实现经由日志分析后的结果并以可视化展示的方式提供给用户展示,从而便于找出集成电路布图中的运行瓶颈点。
根据本公开的第一方面,提供了一种用于呈现集成电路版图的方法,包括:确定集成电路版图的划分参数以及基于划分后的集成电路版图所获取的运行日志数据,所述划分参数至少包括集成电路版图的划分信息;根据所获取的运行日志数据和所述划分参数,获取每一个划分后的集成电路版图对应的多项性能数据及每一个区域块的位置;基于集成电路版图的尺寸和区域块的位置,映射成包含多个区域块的网格化版图;以及基于对多项性能数据的处理,对网格化版图执行可视化显示。
根据本公开的第二方面,提供了一种计算设备,包括:至少一个处理器;以及与至少一个处理器通信连接的存储器;存储器存储有可被至少一个处理器执行的指令,指令被至少一个处理器执行,以使至少一个处理器能够执行本公开的第一方面的方法。
在本公开的第三方面中,提供了一种存储有计算机指令的非瞬时计算机可读存储介质,其中计算机指令用于使计算机执行本公开的第一方面的方法。
在一个实施例中,所述方法还包括:响应于网格化版图中的区域块被选取,对所述区域块对应的集成电路版图执行可视化显示。
在一个实施例中,根据所获取的运行日志数据和所述划分参数,获取每一个划分后的集成电路版图对应的多项性能数据及每一个区域块的位置,包括:对集成电路版图的运行日志数据执行预处理;基于预先设置的字段,获取经预处理后的运行日志数据;根据区域块的位置信息和所获取的运行日志数据,确定集成电路版图对应的性能数据。
在一个实施例中,基于对多项性能数据的处理对网格化版图执行可视化显示包括:针对多项性能数据中的每项性能数据设定权重;基于所设定权重,将所述多项性能数据加权计算为总性能数据;以及基于总性能数据,对网格化版图执行可视化显示。
在一个实施例中,基于对多项性能数据的处理对网格化版图执行可视化显示包括:针对多项性能数据中待可视化显示的性能数据,确定每项性能数据的数据类型、可视化显示的上限值以及对应于每项性能数据的色彩代码;确定每项性能数据与所述色彩代码之间的函数关系;基于所确定的函数关系,确定每项性能数据对应的多个色彩代码;以及基于所确定的色彩代码,对网格化版图所包括的区域块着色。
在一个实施例中,基于对多项性能数据的处理对网格化版图执行可视化显示还包括:将所述网格化版图所包括的区域块分为多个子区域块;基于多项性能数据对应的多个色彩代码,在多个子区域块中的每个子区域块分别呈现性能数据。
在一个实施例中,基于对多项性能数据的处理对网格化版图执行可视化显示还包括:将所述网格化版图所包括的区域块分为多个子区域块;确定多项性能数据中的每项性能数据对应于不同版本的集成电路版图的变化量;基于所确定的函数关系,确定所述变化量对应的色彩代码;以及基于所确定的色彩代码,在多个子区域块中的每个子区域块分别呈现对应于不同版本的集成电路版图的性能数据。
在一个实施例中,所述方法还包括:将网格化版图所包括的多个区域块连接成大区域块;以及基于大区域块中性能数据的变化,生成性能数据变化的曲线。
在一个实施例中,基于对多项性能数据的处理对网格化版图执行可视化显示包括:基于神经网络模型对所述多项性能数据进行识别,根据识别结果确定该区域块的总性能数据,并基于总性能数据对网格化版图执行可视化显示;其中所述神经网络模型的训练过程包括:向待训练的所述神经网络模型输入训练样本,所述训练样本包括历史区域块的性能数据,其中,训练样本为历史区域块的多项性能数据;基于所述历史区域块的多项性能数据,利用待训练的神经网络模型预测历史区域块的总能性数据;基于历史区域块的真实总能性数据与所预测的总能性数据之间的距离,确定损失函数的值,其中,历史区域块的真实总能性数据为通过历史区域块的多项性能数据进行计算得到;以及通过最小化所述损失函数的值,确定所述神经网络模型的参数值。
在一个实施例中,基于对多项性能数据的处理对网格化版图执行可视化显示还包括:针对多项性能数据中的一项性能数据执行筛选;将所筛选的性能数据根据由高到低的顺序排序,从而获取该项性能数据一定范围内的排序结果;以及对所获取的排序结果执行可视化显示。
应当理解,本部分所描述的内容并非旨在标识本公开的实施例的关键或重要特征,也不用于限制本公开的范围。本公开的其它特征将通过以下的说明书而变得容易理解。
附图说明
结合附图并参考以下详细说明,本公开各实施例的上述和其他特征、优点及方面将变得更加明显。在附图中,相同或相似的附图标注表示相同或相似的元素。
图1示出了用于实现根据本发明的实施例的用于呈现集成电路版图的方法的系统100的示意图。
图2示出了根据本公开的实施例的用于呈现集成电路版图的方法200的流程图。
图3示出了根据本公开的实施例的用于呈现集成电路版图的示意图300。
图4示出了根据本公开的实施例的用于呈现集成电路版图的示意图400。
图5示出了可以用来实施本公开内容的实施例的示例电子设备500的示意性框图。
具体实施方式
以下结合附图对本公开的示范性实施例做出说明,其中包括本公开实施例的各种细节以助于理解,应当将它们认为仅仅是示范性的。因此,本领域普通技术人员应当认识到,可以对这里描述的实施例做出各种改变和修改,而不会背离本公开的范围和精神。同样,为了清楚和简明,以下的描述中省略了对公知功能和结构的描述。
在本文中使用的术语“包括”及其变形表示开放性包括,即“包括但不限于”。除非特别申明,术语“或”表示“和/或”。术语“基于”表示“至少部分地基于”。术语“一个示例实施例”和“一个实施例”表示“至少一个示例实施例”。术语“另一实施例”表示“至少一个另外的实施例”。术语“第一”、“第二”等等可以指代不同的或相同的对象。下文还可能包括其他明确的和隐含的定义。
随着集成电路制造工艺的技术节点的减小,集成电路中的目标图案之间的距离减小,并且图案的密度增加,形状多变,版图的软件系统对性能要求随之提高。综上,传统的用于呈现集成电路版图的方案所存在的不足之处在于:无法有效展示复杂且庞杂的集成电路版图在仿真或运行时相关性能数据。
为了解决EDA软件的性能分析功能受限等问题,本公开提出了一种新的用于呈现集成电路版图的方法,以网格化版图展示,通过映射关系代替了复杂的原版图的处理结果,在网格化版图上以网格为单位展示性能数据。根据网格化的性能数据,利用网格所在的实际坐标从源数据上裁剪出对应的实际图案并展示。
图1示出了用于实现根据本发明的实施例的用于呈现集成电路版图的方法的系统100的示意图。如图1中所示,系统100包括计算设备110和集成电路数据存储设备130和网络140。计算设备110、数据存储设备130可以通过网络140(例如,因特网)进行数据交互。
集成电路数据存储设备130,其例如可以存储有多类不同的数据存储,例如,集成电路布图、版图等数据。数据存储设备130还可以将所存储的数据存储发送给计算设备110。数据存储设备可以是运行在一个或多个计算机节点上用于实现高并发、高吞吐量的查询服务的一站式存储计算结构,其可以包括诸如GPU、FPGA和ASIC等的专用处理单元以及诸如CPU的通用处理单元。
关于计算设备110,其例如用于获取来自集成电路数据存储设备130的版图数据,从而以本公开所提供的方式将例如版图数据可视化展示。可视化展示的数据可以以具有不同图案或颜色的网格示出。计算设备110可以具有一个或多个处理单元,包括诸如GPU、FPGA和ASIC等的专用处理单元以及诸如CPU的通用处理单元。另外,在每个计算设备110上也可以运行着一个或多个虚拟机。在一些实施例中,计算设备110与数据存储设备130可以集成在一起,也可以是彼此分立设置。在一些实施例中,计算设备110例如包括确定模块112、获取模块114、网格化模块116、显示模块118。
确定模块112,所述确定模块112配置成确定集成电路版图的划分参数以及基于划分后的集成电路版图所获取的运行日志数据,所述划分参数至少包括继承电路版图的划分信息。
获取模块114,所述获取模块114配置成根据所获取的运行日志数据和所述划分参数,获取集成电路版图对应的多项性能数据及每一个区域块的位置。
网格化模块116,所述网格化模块116配置成基于集成电路版图的尺寸和区域块的位置,映射成包含多个区域块的网格化版图。
显示模块118,所述显示模块118配置成基于对多项性能数据的处理,对网格化版图执行可视化显示。
图2示出了根据本公开的实施例的用于呈现集成电路版图的方法200的流程图。方法200可由如图1所示的计算设备110执行,也可以在图5所示的电子设备500处执行。应当理解的是,方法200还可以包括未示出的附加框和/或可以省略所示出的框,本公开的范围在此方面不受限制。
在步骤202中,计算设备110确定集成电路版图的划分参数以及基于划分后的集成电路版图所获取的运行日志数据,所述划分参数至少包括集成电路板图的划分信息。
在一个实施例中,计算设备110可以根据集成电路版图确定网格化版图的区域块尺寸、坐标系、区域块的位置信息、每一个划分后的集成电路版图的特定标志等划分参数。网格化版图的区域块尺寸与要展示的集成电路版图的尺寸相关联,使得一个区域块可以展示一部分的集成电路。在本公开中,区域块是网格化版图中划定的单元,也可以是划定的最小单元,其又可以被称为格、网格、格栅等本领域常用的术语。
计算设备110可以确定用于定位区域块的坐标系,坐标系可以使用本领域常用的二维坐标系,以右下方为原点,包括X轴和Y轴。二维坐标系内可以包括多个区域块,每个区域块可以用两个相对坐标确定。每个区域块的尺寸可以定义为1个坐标系长度或高度。
例如,以长宽相同的正方形区域块为例,在原点处的第一区域块可以用相对坐标(0,0)和(1,1)表示。注意的是,区域块的长宽可以相同也可以不同。坐标系的坐标基于区域块最小的尺寸单位来定义。
基于坐标系和区域块的概念,可以建立与集成电路版图对应的画布。通过从数据库中获得所有区域块的坐标数据与区域块总行数和总列数。创建网格化版图时,先新建画布,例如,画布可以设置尺寸为N×N,其中画布尺寸的一个单位对应于区域块的最小尺寸单位。例如10000×10000的画布可以表示10000个1×1的正方形区域块,并且可以用坐标系表示出画布上每个区域块的坐标。
根据总行数绘制对应行数的线段和根据总列数绘制对应列数的线段,从而创建出初始的网格化版图。
在这样的网格化版图中,当前鼠标的位置相对整个画板的坐标,将该坐标同单位网格大小进行比较,即可得到该坐标在X轴方向应该落在第几个网格,同理在Y轴方向应该落在第几个网格。
基于所确定的划分参数,计算设备110可以获取集成电路版图运行的运行日志LOG数据。具体来说,计算设备110可以对集成电路版图执行预处理。以Log运行日志数据为例,计算设备110可以将不同集成电路版图的Log运行日志数据格式预处理统一转化为预先约定的格式。
计算设备110可以通过预先设置固定字段标识对应需要收集的数据。数据的收集方式采用正则表达式匹配的方式,与预设的字段标识匹配后即可找到对应的数据。基于预先设置的字段,获取经预处理后的运行日志数据。
在一个实施例中,计算设备110可以采用例如“”的正则表达式获取Log日志数据中的以HH-mm-ss为格式的时间数据,通过将时间数据执行相应处理,例如相减,即可获取对应于此区域块的集成电路版图的运行时间runtime。基于类似的方式还可以获取日志数据中的CPU、内存等数据。
在一个实施例中,计算设备110还可以采用例如“”的正则表达式获取对应于区域块横纵坐标的内存数据(以KB为单位)和CPU使用率数据。
计算设备110可以根据区域块的位置信息和所获取的运行日志数据,确定集成电路版图对应的性能数据。性能数据包括集成电路版图的运行时间runtime、运行内存memory、运行CPU占比或使用率等。在步骤204中,计算设备110根据所获取的运行日志数据和所述划分参数,获取集成电路版图对应的多项性能数据及每一个区域块的位置。
在一个实施例中,计算设备110可以基于确定的画布或者区域块,将集成电路的性能数据对应到区域块。计算设备110可以根据所获取的运行日志数据和所述划分参数,确定集成电路版图对应的性能数据。
例如计算设备110在划分参数中设置的每一个划分后的集成电路版图的特定标志,该标志在运行日志中仍有携带,则可以将运行日志与划分后的集成电路版图进行一一对应。在一个实施例中,计算设备110将Log运行日志数据中的性能数据以划分参数中的特定标志位为单位进行收集,在log运行日志中获得每一个划分后集成电路版图对应的性能数据。本发明实施例中,以初始的区域块1为例,通过对log日志的分析收集划分后的某一个集成电路版图实际的行和列坐标,形成区域块1的坐标数据。计算设备110可以确定区域块1所需要的运行时间runtime、运行内存、运行CPU占比等性能数据。具体来说,可以获取的性能数据可以包括对应于集成电路版图布图仿真运行的运行时间、运行缓存、运行日志、运行时的CPU利用率以及集成电路版图布图的存储空间。以及方式可以获得区域块2、区域块3直至区域块N对应的运行日志数据中的多项性能数据。
在一个具体实施例中,为了将Log性能数据与区域块进行对应,可以采用在版图划分的时候为每一块版图区域块设定一个标记,那么运行日志Log性能数据也会带上这些标记,从而可以将获得的运行日志Log性能数据与划分的版图区域块进行对应关联。
最终计算设备110可以获取集成电路版图对应的多项性能数据及每一个区域块的位置并保存到数据库中。
在步骤206中,计算设备110基于集成电路版图的尺寸和区域块的位置映射成包含多个区域块的网格化版图。
在一个实施例中,计算设备110可以基于在如上步骤中所确定的画布或区域块确定映射到集成电路版图的网格化版图,其中每个区域块对应于该区域集成电路版图的性能数据。在网格化版图上,以一个网格为单位绑定版图处理过程中位置坐标、性能数据。例如,已知的是对应新建的某个网格,利用已知其对应的行数与列数,将该行数、列数成对和数据库数据的行、列比较,即可映射到对应的区域块并建立绑定关系,以第0行、第 0列网格为例,其对应于原版图的第0行、第0列区域块。
值得注意的是行和列的起点可以从左下角开始计算,并以0为起始值。也可以采用本领域常用的其他坐标系。
在步骤208中,计算设备110可以基于对多项性能数据的处理对网格化版图执行可视化显示。
在一个实施例中,计算设备110对网格化版图执行可视化显示可以包括根据性能数据对区域块着色,从而通过色彩可视化显示性能数据。具体来说,计算设备110可以针对多项性能数据中待可视化显示的性能数据,确定每项性能数据的数据类型、可视化显示的上限值以及对应于每项性能数据的色彩代码。
在一个实施例中,计算设备110可以从多项性能数据中确定一项或多项待可视化显示的性能数据以及与该数据相对应的数据类型。例如可以确定待可视化显示的性能数据为内存数据,并且内存数据对应的数据类型是以KB为单位的int类型整数。对于int类型整数,计算设备110可以确定其可视化显示的上限值(top值)以及与该数据对应的色彩代码。
色彩代码可以采用RGB、HSL等色彩代码。每项性能可以设定一个基准上限值和下限值并且对应到一组色彩代码。计算设备110可以为每项性能数据可以设定一个最大值和最小值,并且将最大值和最小值对应到一组色彩代码,例如最大值对应到色彩代码为(255,0,0),而最小值对应到色彩代码(0,0,0)。
在一个实施例中,计算设备110可以进一步确定每项性能数据与所述色彩代码间的函数关系。
例如可以基于运行时间值构建,性能数据与色彩代码0-255之间的函数关系,从而根据色彩值的变化反应运行时间值的变化。
计算设备110可以基于所确定的函数关系,确定每项性能数据对应的多个色彩代码。针对每项性能数据,可以为每项性能数据确定一个色彩代码集合并且在集合内确定性能数据对应的色彩值。
例如可以将运行时间主要对应于视觉效果为红色的色彩代码集合。运行内存可以主要对应于视觉效果为蓝色的色彩代码(例如(0,0,255)到(0,0,0))的集合。同时基于如上所述的方法为每项性能数据的色彩值均建立函数关系,从而使得每一个性能数据都有对应的色彩代码或色彩值。
最后,计算设备110可以基于所确定的色彩代码,基于对多项性能数据的处理对网格化版图执行可视化显示,例如对网格化版图上的区域块着色。计算设备110可以根据所确定的色彩代码或色彩值,在呈现性能数据的时候,在区域块上呈现该色彩值,从而使得用户可以以可视化的角度确定该区域块对应的集成电路的运行性能数据情况。
在一个实施例中,计算设备110基于对多项性能数据的处理对网格化版图执行可视化显示还可以包括:针对多项性能数据中的每项性能数据设定权重。例如对运行时间、运行内存、运行CPU占比等分别设置不同的权重,如0.5、0.8、0.6等,以分别反应以上数据在集成电路版图分析中的重要度。
计算设备110可以基于所设定权重,将所述多项性能数据加权计算为总性能数据。
最后,计算设备110可以基于总性能数据,利用如上所述的给区域块着色的方法对网格化版图执行可视化显示。
在一个实施例中,还可以诸如神经网络评分等其他方式对性能数据进行评价,从而在网格化版图可视化显示性能数据。图3示出了根据本公开的实施例的用于呈现集成电路版图的示意图300。如图3所示,在网格化版图的区域块上可以呈现性能数据,例如,运行时间,并且运行时间可以用视觉效果为红色的色彩代码或色彩值呈现。注意的是,在图3中以灰度代替红色进行展示,灰度越深红色越深。
具体来说,呈现红色的区域块可以可视化呈现集成电路运行性能的优劣,基于运行时间的长短可以确定红色的深浅。运行时间越长代表性能越差,红色越深,运行时间越短代表性能越好,红色越浅。
在一个实施例中,计算设备110还可以基于对多项性能数据的处理对网格化版图执行可视化显示还包括:将所述网格化版图的区域块分为多个子区域块。进一步,基于多项性能数据对应的多个色彩代码,在多个子区域块中的每个子区域块分别展示性能数据。例如将一个区域块分为两个子区域块,一个子区域块呈现运行时间而另一个子区域块呈现运行内存,并且分别用不同颜色呈现。
在一个实施例中,计算设备110可以获取同一集成电路的两个不同版本并且分别确定多项性能数据中的每项性能数据对应于不同版本的集成电路版图的变化量。例如在不同两个版本下,同一区域的集成电路版图的运行时间数据的变化量。
基于如上所述的方法,计算设备110基于所确定的函数关系,确定所述变化量对应的色彩代码。比如以红色的运行时间数据为例,计算设备110可以确定其变化度、对应的色彩变化度以及色彩变化度对应的色彩代码。
计算设备110可以基于所确定的色彩代码,在多个子区域块中的每个子区域块分别展示对应于不同版本的集成电路版图的性能数据。例如将一个区域块分为两个子区域块,在两个子区域块分别展示不同深度的红色,从而呈现集成电路在不同版本下的运行时间。
在一个实施例中,计算设备110还可以将网格化版图所包括的多个区域块连接成大区域块。具体来说,当用户选取网格化版图中的多个区域块时,计算设备110可以将多个区域块连接成一个大的区域块,并呈现该大区域块的性能数据或者性能数据在不同区域块中的变化。
计算设备110基于大区域块中性能数据的变化,生成性能数据变化的曲线。例如,计算设备110可以基于不同两个区域块的运行时间生成运行时间在不同集成电路版图区域上的变化的曲线。
在一个实施例中,计算设备110可以在所述区域块被选取后,呈现所述区域块对应的集成电路版图布图。
在一个实施例中,计算设备110还可以将所适用的集成电路版图根据区域块的位置映射到所确定的网格化版图。以此方式,响应于网格化版图中的区域块被选取,计算设备110可以根据映射关系对所述区域块对应的集成电路版图执行可视化显示。图4示出了可视化显示的示意图。
图4示出了根据本公开的实施例的用于呈现集成电路版图的示意图400。如图4所示,当需要查看该位置的原版图时,计算设备110根据该区域块已对应的集成电路版图的坐标,从原集成电路版图源数据中裁剪出对应区域内的所有图形,从而得到该区域块的版图。
由于整个区域块的数量取决于原集成电路版图的切分大小,因此可能所呈现的集成电路版图可能较为细且密集。计算设备110可以放大检视视窗到将效能最差或是内存使用最多的地方在性能较差的位置。
在一个实施例中,计算设备110还可以基于神经网络模型对所述多项性能数据进行识别,根据识别结果确定该区域块的总性能数据,并基于总性能数据对网格化版图执行可视化显示。本公开所使用的的神经网络模型可以是本领域常用的数据处理模型,例如LSTM或者CNN等模型。
神经网络模型的训练过程包括:向待训练的所述神经网络模型输入训练样本,所述训练样本包括历史区域块的性能数据,其中,训练样本为历史区域块的多项性能数据。性能数据包括如上所述的运行时间runtime、运行内存memory、运行CPU占比等。历史区域块包括不同版本集成电路版图所对应的区域块。
基于历史区域块的多项性能数据,利用待训练的神经网络模型预测历史区域块的总能性数据。基于历史区域块的真实总能性数据与所预测的总能性数据之间的距离,确定损失函数的值,其中,历史区域块的真实总能性数据为通过历史区域块的多项性能数据进行计算得到。通过最小化所述损失函数的值,确定所述神经网络模型的参数值。
最后基于所训练的神经网络模型可视化显示集成电路版图的性能参数。可视化可以基于如上所述的诸多可视化呈现方法。
在一个实施例中,计算设备110可以针对多项性能数据中的一项性能数据执行筛选。例如选择多项性能数据中的一项性能数据进行筛选。计算设备110可以将所筛选的性能数据根据由高到低的顺序排序,从而获取该项性能数据一定范围内的排序结果。排序可以使用本领域常用的排序算法。最后,计算设备110对所获取的排序结果执行可视化显示。显示的方式可以采用如上所述的着色等方案。
利用以上技术手段,可以将集成电路版图以网格化的版图或区域块展示,通过映射对应关系代替了查看复杂的原版图,有效地提高查看效率;同时依据性能数据排序和高亮定位方式,有效地避免过多的无效定位与分析;利用版图查看模块聚焦到对应的图案,通过观察该位置处的版图复杂度,判断是否因为复杂度过高导致的性能数据过高。
图5示出了可以用来实施本公开内容的实施例的示例电子设备500的示意性框图。例如,如图1所示的计算设备110可以由电子设备500来实施。如图所示,电子设备500包括中央处理单元(CPU)501,其可以根据存储在只读存储器(ROM)502中的计算机程序指令或者从存储单元508加载到随机存取存储器(RAM)503中的计算机程序指令,来执行各种适当的动作和处理。在随机存取存储器503中,还可存储电子设备500操作所需的各种程序和数据。中央处理单元501、只读存储器502以及随机存取存储器503通过总线504彼此相连。输入/输出(I/O)接口505也连接至总线504。
电子设备500中的多个部件连接至输入/输出接口505,包括:输入单元506,例如键盘、鼠标、麦克风等;输出单元507,例如各种类型的显示器、扬声器等;存储单元508,例如磁盘、光盘等;以及通信单元509,例如网卡、调制解调器、无线通信收发机等。通信单元509允许设备500通过诸如因特网的计算机网络和/或各种电信网络与其他设备交换信息/数据。
上文所描述的各个过程和处理,例如方法200可由中央处理单元501执行。例如,在一些实施例中,方法200可被实现为计算机软件程序,其被有形地包含于机器可读介质,例如存储单元508。在一些实施例中,计算机程序的部分或者全部可以经由只读存储器502和/或通信单元509而被载入和/或安装到设备500上。当计算机程序被加载到随机存取存储器503并由中央处理单元501执行时,可以执行上文描述的方法200的一个或多个动作。
本公开涉及方法、装置、系统、电子设备、计算机可读存储介质和/或计算机程序产品。计算机程序产品可以包括用于执行本公开的各个方面的计算机可读程序指令。
计算机可读存储介质可以是可以保持和存储由指令执行设备使用的指令的有形设备。计算机可读存储介质例如可以是――但不限于――电存储设备、磁存储设备、光存储设备、电磁存储设备、半导体存储设备或者上述的任意合适的组合。计算机可读存储介质的更具体的例子(非穷举的列表)包括:便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、静态随机存取存储器(SRAM)、便携式压缩盘只读存储器(CD-ROM)、数字多功能盘(DVD)、记忆棒、软盘、机械编码设备、例如其上存储有指令的打孔卡或凹槽内凸起结构、以及上述的任意合适的组合。这里所使用的计算机可读存储介质不被解释为瞬时信号本身,诸如无线电波或者其他自由传播的电磁波、通过波导或其他传输媒介传播的电磁波(例如,通过光纤电缆的光脉冲)、或者通过电线传输的电信号。
这里所描述的计算机可读程序指令可以从计算机可读存储介质下载到各个计算/处理设备,或者通过网络、例如因特网、局域网、广域网和/或无线网下载到外部计算机或外部存储设备。网络可以包括铜传输电缆、光纤传输、无线传输、路由器、防火墙、交换机、网关计算机和/或边缘计算设备。每个计算/处理设备中的网络适配卡或者网络接口从网络接收计算机可读程序指令,并转发该计算机可读程序指令,以供存储在各个计算/处理设备中的计算机可读存储介质中。
用于执行本公开操作的计算机程序指令可以是汇编指令、指令集架构(ISA)指令、机器指令、机器相关指令、微代码、固件指令、状态设置数据、或者以一种或多种编程语言的任意组合编写的源代码或目标代码,所述编程语言包括面向对象的编程语言—诸如Smalltalk、C++等,以及常规的过程式编程语言—诸如“C”语言或类似的编程语言。计算机可读程序指令可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络—包括局域网(LAN)或广域网(WAN)—连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。在一些实施例中,通过利用计算机可读程序指令的状态信息来个性化定制电子电路,例如可编程逻辑电路、现场可编程门阵列(FPGA)或可编程逻辑阵列(PLA),该电子电路可以执行计算机可读程序指令,从而实现本公开的各个方面。
这里参照根据本公开实施例的方法、装置(系统)和计算机程序产品的流程图和/或框图描述了本公开的各个方面。应当理解,流程图和/或框图的每个方框以及流程图和/或框图中各方框的组合,都可以由计算机可读程序指令实现。
这些计算机可读程序指令可以提供给通用计算机、专用计算机或其它可编程数据处理装置的处理单元,从而生产出一种机器,使得这些指令在通过计算机或其它可编程数据处理装置的处理单元执行时,产生了实现流程图和/或框图中的一个或多个方框中规定的功能/动作的装置。也可以把这些计算机可读程序指令存储在计算机可读存储介质中,这些指令使得计算机、可编程数据处理装置和/或其他设备以特定方式工作,从而,存储有指令的计算机可读介质则包括一个制造品,其包括实现流程图和/或框图中的一个或多个方框中规定的功能/动作的各个方面的指令。
也可以把计算机可读程序指令加载到计算机、其它可编程数据处理装置、或其它设备上,使得在计算机、其它可编程数据处理装置或其它设备上执行一系列操作步骤,以产生计算机实现的过程,从而使得在计算机、其它可编程数据处理装置、或其它设备上执行的指令实现流程图和/或框图中的一个或多个方框中规定的功能/动作。
附图中的流程图和框图显示了根据本公开的多个实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或指令的一部分,所述模块、程序段或指令的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
以上已经描述了本公开的各实施例,上述说明是示例性的,并非穷尽性的,并且也不限于所披露的各实施例。在不偏离所说明的各实施例的范围和精神的情况下,对于本技术领域的普通技术人员来说许多修改和变更都是显而易见的。本文中所用术语的选择,旨在最好地解释各实施例的原理、实际应用或对市场中的技术改进,或者使本技术领域的其它普通技术人员能理解本文披露的各实施例。

Claims (12)

1.一种用于呈现集成电路版图的方法,其特征在于,包括:
确定集成电路版图的划分参数以及基于划分后的集成电路版图所获取的运行日志数据,所述划分参数至少包括所述集成电路版图的划分信息,其中根据集成电路版图确定网格化版图的区域块尺寸、坐标系、区域块的位置信息、每一个划分后的集成电路版图的特定标志等划分参数;
根据所获取的运行日志数据和所述划分参数,获取每一个划分后的集成电路版图对应的多项性能数据及每一个区域块的位置,其中根据区域块的位置信息和所获取的运行日志数据,确定集成电路版图对应的性能数据,所述性能数据包括以下数据中的一项或多项:对应于集成电路版图布图仿真运行的运行时间、运行缓存、运行日志、运行时的CPU利用率以及集成电路版图布图的存储空间;
基于集成电路版图的尺寸和区域块的位置,映射成包含多个区域块的网格化版图;以及
基于对多项性能数据的处理,对网格化版图执行可视化显示。
2.根据权利要求1所述的方法,其特征在于,其中所述方法还包括:
响应于网格化版图中的区域块被选取,对所述区域块对应的集成电路版图执行可视化显示。
3.根据权利要求1所述的方法,其特征在于,其中确定集成电路版图的划分参数以及基于划分后的集成电路版图所获取的运行日志数据包括:
根据所获取的运行日志数据和所述划分参数,获取每一个划分后的集成电路版图对应的多项性能数据及每一个区域块的位置,包括:
对集成电路版图的运行日志数据执行预处理;
基于预先设置的字段,获取经预处理后的运行日志数据;以及
根据所获取的运行日志数据和划分参数,确定划分后的集成电路版图对应的性能数据和其对应的区域块的位置信息。
4.根据权利要求1所述的方法,其特征在于,其中基于对多项性能数据的处理对网格化版图执行可视化显示包括:
针对多项性能数据中的每项性能数据设定权重;
基于所设定权重,将所述多项性能数据加权计算为总性能数据;以及
基于总性能数据,对网格化版图执行可视化显示。
5.根据权利要求1所述的方法,其特征在于,其中基于对多项性能数据的处理对网格化版图执行可视化显示包括:
基于神经网络模型对所述多项性能数据进行识别,根据识别结果确定该区域块的总性能数据,并基于总性能数据对网格化版图执行可视化显示;
其中所述神经网络模型的训练过程包括:
向待训练的所述神经网络模型输入训练样本,所述训练样本包括历史区域块的性能数据,其中,训练样本为历史区域块的多项性能数据;
基于所述历史区域块的多项性能数据,利用待训练的神经网络模型预测历史区域块的总能性数据;
基于历史区域块的真实总能性数据与所预测的总能性数据之间的距离,确定损失函数的值,其中,历史区域块的真实总能性数据为通过历史区域块的多项性能数据进行计算得到;以及
通过最小化所述损失函数的值,确定所述神经网络模型的参数值。
6.根据权利要求1所述的方法,其特征在于,其中基于对多项性能数据的处理对网格化版图执行可视化显示包括:
针对多项性能数据中待可视化显示的性能数据,确定每项性能数据的数据类型、可视化显示的上限值以及对应于每项性能数据的色彩代码;
确定每项性能数据与所述色彩代码之间的函数关系;
基于所确定的函数关系,确定每项性能数据对应的多个色彩代码;以及
基于所确定的色彩代码,对网格化版图所包括的区域块着色。
7.根据权利要求6所述的方法,其特征在于,其中基于对多项性能数据的处理对网格化版图执行可视化显示还包括:
将所述网格化版图所包括的区域块分为多个子区域块;
基于多项性能数据对应的多个色彩代码,在多个子区域块中的每个子区域块分别呈现性能数据。
8.根据权利要求6所述的方法,其特征在于,其中基于对多项性能数据的处理对网格化版图执行可视化显示还包括:
将所述网格化版图所包括的区域块分为多个子区域块;
确定多项性能数据中的每项性能数据对应于不同版本的集成电路版图的变化量;
基于所确定的函数关系,确定所述变化量对应的色彩代码;以及
基于所确定的色彩代码,在多个子区域块中的每个子区域块分别呈现对应于不同版本的集成电路版图的性能数据。
9.根据权利要求1所述的方法,其特征在于,所述方法还包括:
将网格化版图所包括的多个区域块连接成大区域块;以及
基于大区域块中性能数据的变化,生成性能数据变化的曲线。
10.根据权利要求6所述的方法,其特征在于,其中基于对多项性能数据的处理对网格化版图执行可视化显示还包括:
针对多项性能数据中的一项性能数据执行筛选;
将所筛选的性能数据根据由高到低的顺序排序,从而获取该项性能数据一定范围内的排序结果;以及
对所获取的排序结果执行可视化显示。
11.一种计算设备,其特征在于,包括:
至少一个处理器;以及
与所述至少一个处理器通信连接的存储器;
所述存储器存储有被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行权利要求1-10中任一项所述的用于呈现集成电路版图的方法。
12.一种存储有计算机指令的非瞬时计算机可读存储介质,其特征在于,所述计算机指令用于使所述计算机执行权利要求1-10中任一项所述的用于呈现集成电路版图的方法。
CN202211659626.4A 2022-12-23 2022-12-23 用于呈现集成电路版图的方法、设备和介质 Active CN115659900B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202211659626.4A CN115659900B (zh) 2022-12-23 2022-12-23 用于呈现集成电路版图的方法、设备和介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202211659626.4A CN115659900B (zh) 2022-12-23 2022-12-23 用于呈现集成电路版图的方法、设备和介质

Publications (2)

Publication Number Publication Date
CN115659900A CN115659900A (zh) 2023-01-31
CN115659900B true CN115659900B (zh) 2023-04-07

Family

ID=85022171

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202211659626.4A Active CN115659900B (zh) 2022-12-23 2022-12-23 用于呈现集成电路版图的方法、设备和介质

Country Status (1)

Country Link
CN (1) CN115659900B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116090397A (zh) * 2023-02-08 2023-05-09 北京华大九天科技股份有限公司 一种版图中的端口摆放方法

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114519328A (zh) * 2020-11-19 2022-05-20 Tcl科技集团股份有限公司 一种集成电路参数化方法、装置、存储介质及终端设备

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10267853B2 (en) * 2015-12-18 2019-04-23 Taiwan Semiconductor Manufacturing Company Ltd. System and method to diagnose integrated circuit
CN113900872A (zh) * 2021-10-11 2022-01-07 江苏欧迈科技有限公司 一种硬件故障检测系统、方法及介质
CN114861591B (zh) * 2022-07-07 2022-09-27 北京大学 一种可微分时序驱动的芯片布局优化方法

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114519328A (zh) * 2020-11-19 2022-05-20 Tcl科技集团股份有限公司 一种集成电路参数化方法、装置、存储介质及终端设备

Also Published As

Publication number Publication date
CN115659900A (zh) 2023-01-31

Similar Documents

Publication Publication Date Title
EP4120199A1 (en) Image rendering method and apparatus, and electronic device and storage medium
CN108399386B (zh) 饼图中的信息提取方法及装置
KR101721114B1 (ko) 위치정보가 포함된 포인트 데이터를 다축척의 웹 지도상에 클러스터링하기 위하여 격자의 크기를 결정하는 방법
EP3262604B1 (en) Systems and methods for smart cartography
CN110647596B (zh) 地图数据处理方法和装置
CN113570665B (zh) 路沿提取的方法、装置及电子设备
CN109683858B (zh) 数据处理方法及装置
CN111090712A (zh) 一种数据处理方法、装置、设备及计算机存储介质
CN115659900B (zh) 用于呈现集成电路版图的方法、设备和介质
CN115063875A (zh) 模型训练方法、图像处理方法、装置和电子设备
CN114565916A (zh) 目标检测模型训练方法、目标检测方法以及电子设备
CN111659123A (zh) 导航数据的处理方法及装置、存储介质、电子设备
CN115797565A (zh) 三维重建模型训练方法、三维重建方法、装置及电子设备
CN109871743B (zh) 文本数据的定位方法及装置、存储介质、终端
CN111079059A (zh) 页面检查方法、装置、设备及计算机可读存储介质
CN117351368B (zh) 自然村边界的获取方法、装置、电子设备及存储介质
JP6773412B2 (ja) コロプレスマップの設計
CN102053837B (zh) 空间实体要素标注的冲突检测与避让方法及装置
CN107209770B (zh) 用于分析事件的系统和方法以及机器可读存储介质
CN115756471A (zh) 一种页面代码生成方法、装置、电子设备及存储介质
CN115640372A (zh) 一种室内平面的区域指引方法、装置、系统、设备及介质
CN115588082A (zh) 空间数字模型实时展示方法、装置、设备及存储介质
CN111080749B (zh) 配电网广域测量控制系统中多源量测的标注方法及装置
CN114444185A (zh) 原位标注的识别方法、装置及电子设备
CN114564268A (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
GR01 Patent grant
GR01 Patent grant