发明内容
鉴于以上内容,有必要提出一种周期性图形阵列提取方法、计算机装置,通过提取周期性图形阵列,以及对周期性图形阵列的单个图形修正,从而获取整个单元阵列的修正结果,有效降低扁平版图的光学修正的运算量。
所述周期性图形阵列提取方法包括:解析版图文件,加载该版图文件的图层的数据;分析图层的图形的间距信息,提取关键参数;根据所述关键参数对所述图层的图形进行聚类,得到N组图形阵列;从所述N组图形阵列中筛选目标图形阵列;确定所述目标图形阵列是否包括周期性图形阵列;及若所述目标图形阵列包括周期性图形阵列,对所述周期性图形阵列执行光学修正。
可选地,所述分析所述图层的图形的间距信息,提取关键参数包括:为所述图层的每个图形的上下左右四个方向分别确定最近邻图形;计算每个图形分别与该每个图形的上下左右四个方向的最近邻图形之间的距离,获得每个图形在上下左右四个方向分别对应的近邻间距;统计所述图层的所有图形在上下左右四个方向分别对应的近邻间距;基于所述图层的所有图形在上下左右四个方向分别对应的近邻间距作数据分布分析,将数据分布的突变点作为所述关键参数。
可选地,所述根据所述关键参数对所述图层的图形进行聚类,得到N组图形阵列包括:将所述关键参数作为密度参数;及利用空间聚类算法基于所述密度参数和预设的半径参数对所述图层的所有图形进行聚类,得到所述N组图形阵列。
可选地,所述目标图形阵列是指所述N组图形阵列中,尺寸大于W且所包括的每个图形的大小和形状相同的图形阵列。
可选地,所述周期性图形阵列包括多个目标图形,其中,每个目标图形与该每个目标图形的上下左右四个方向的最近邻图形之间的近邻间距分别对应相同。
可选地,所述对所述周期性图形阵列执行光学修正包括:基于所述多个目标图形中的任意一个目标图形确定一个图形集;将所述图形集输入预设的光学修正模型,获得所述任意一个目标图形的掩膜图形;及将所述多个目标图形分别替换为所述掩膜图形。
可选地,所述W>2d,其中,d为所述光学修正模型的光学作用距离。
可选地,所述基于所述多个目标图形中的任意一个目标图形确定一个图形集包括:将所述任意一个目标图形以及位于所述任意一个目标图形的周边的光学作用距离d范围之内的图形的集合作为所述图形集。
所述可读存储介质存储有至少一个指令,所述至少一个指令被处理器执行时实现所述的周期性图形阵列提取方法。
所述计算机装置包括存储器和至少一个处理器,所述存储器中存储有至少一个指令,所述至少一个指令被所述至少一个处理器执行时实现所述的周期性图形阵列提取方法。
相较于现有技术,本申请提供的周期性图形阵列提取方法、计算机装置,采用模糊搜索聚类的方法,能够减少整体版图层次恢复过程中运算量,周期性图形采用周期性光学修正的方法,提高版图制造的一致性。
具体实施方式
为了能够更清楚地理解本申请的上述目的、特征和优点,下面结合附图和具体实施例对本申请进行详细描述。需要说明的是,在不冲突的情况下,本申请的实施例及实施例中的特征可以相互组合。
在下面的描述中阐述了很多具体细节以便于充分理解本申请,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
除非另有定义,本文所使用的所有的技术和科学术语与属于本申请的技术领域的技术人员通常理解的含义相同。本文中在本申请的说明书中所使用的术语只是为了描述具体的实施例的目的,不是旨在于限制本申请。
图1是本申请较佳实施例提供的周期性图形阵列提取方法的流程图。
在本实施例中,所述周期性图形阵列提取方法可以应用于计算机装置(例如图3所示的计算机装置3)中,对于需要进行周期性图形阵列提取的计算机装置,可以直接在计算机装置上集成本申请的方法所提供的用于周期性图形阵列提取的功能,或者以软件开发工具包(Software Development Kit,SDK)的形式运行在计算机装置上。
如图1所示,所述周期性图形阵列提取方法具体包括以下步骤,根据不同的需求,该流程图中步骤的顺序可以改变,某些步骤可以省略。
步骤S1、计算机装置解析版图文件,加载该版图文件的图层的数据。
本实施例中,所述版图文件可以为集成电路扁平版图的版图文件。
步骤S2、计算机装置分析所述图层的图形的间距信息,并基于所述间距信息提取关键参数。
本实施例中,计算机装置可以首先对所述集成电路版图的顶层的图形进行分析。
在一个实施例中,可以首先获得该顶层的图形的间距信息,并基于所述间距信息提取关键参数。
在一个实施例中,所述分析所述图层的图形的间距信息,提取关键参数包括(a1)-(a4):
(a1)为所述图层的每个图形的上下左右四个方向分别确定最近邻图形。
本实施例中,所述每个图形的上下左右四个方向可以分别是指每个图形的正上方、正下方、正左方和正右方。本实施例中,所述最近邻图形是距离最近的图形。
(a2)计算每个图形分别与该每个图形的上下左右四个方向的最近邻图形之间的距离,获得每个图形在上下左右四个方向分别对应的近邻间距。
本实施例中,可以将每个图形的中心分别与该每个图形的上下左右四个方向的最近邻图形的中心之间的距离作为该每个图形在上下左右四个方向对应的近邻间距。
例如,可以将每个图形的中心与该每个图形的正上方的最近邻图形的中心之间的距离作为该每个图形在正上方对应的近邻间距。同理,可以将每个图形的中心与该每个图形的正下方的最近邻图形的中心之间的距离作为该每个图形在正下方对应的近邻间距。
在一个实施例中,若所述图形是多边形,则所述图形的中心是指所述图形的最大外接矩形的中心。
(a3)统计所述图层的所有图形在上下左右四个方向分别对应的近邻间距。
(a4)基于所述图层的所有图形在上下左右四个方向分别对应的近邻间距作数据分布分析,将数据分布的突变点作为所述关键参数。
具体地,可以利用所述图层的所有图形在上下左右四个方向分别对应的近邻间距作散点分布或者直方图分布,将数据分布的突变点作为所述关键参数。
步骤S3、计算机装置根据所述关键参数对所述图层的图形进行聚类,得到N组图形阵列。例如得到该N组单元阵列的集合为S,其中,S={S1,S2,..SN}。
在一个实施例中,所述根据所述关键参数对所述图层的图形进行聚类,得到N组图形阵列包括:将所述关键参数作为密度参数;及利用空间聚类算法基于所述密度参数和预设的半径参数对所述图层的所有图形进行聚类,得到所述N组图形阵列。
在一个实施例中,所述空间聚类算法可以是指DBSCAN算法(Density-BasedSpatial Clustering of Applications with Noise,具有噪声的基于密度的聚类算法)。
在一个实施例中,所述半径参数可以为3,或者其他经验值。
举例而言,计算机装置利用DBSCAN算法基于所述密度参数和预设的半径参数对所述图层的所有图形进行聚类,得到三组图形阵列如图2所示的501、502、503。
步骤S4、计算机装置从所述N组图形阵列中筛选目标图形阵列。
在一个实施例中,所述目标图形阵列是指所述N组图形阵列中,尺寸大于W且所包括的每个图形的大小和形状相同的图形阵列。即该目标图形阵列所包括的所有图形具有相同的大小和形状,且该目标图形阵列的尺寸(例如长和宽)大于W。
本实施例中,所述W可以根据下述步骤中所采用的光学修正模型的光学作用距离d确定。在一个实施例中,W的值的大小可以设置为大于2d的一个值。例如W可以等于2.5d。在一个实施例中,所述W的值根据下述步骤中所采用的光学修正模型的光学作用距离d以及所述图形的特征来确定。
举例而言,计算机装置从图2所示的三组图形阵列中筛选得到目标图形阵列为502。
步骤S5、计算机装置确定所述目标图形阵列是否包括周期性图形阵列。
若所述目标图形阵列包括周期性图形阵列,执行步骤S6。若所述目标图形阵列不包括周期性图形阵列,回到执行步骤S2,计算机装置分析下一个图层(例如次顶层)的图形的间距信息以及提取关键参数以对该下一个图层是否包括周期性图形阵列进行分析,也即是继续执行步骤S2-S5。
本实施例中,所述周期性图形阵列包括多个目标图形,其中,每个目标图形与该每个目标图形的上下左右四个方向的最近邻图形之间的近邻间距分别对应相同。为清楚简单说明本申请,这里将所述周期性图形阵列所包括的每个图形称为目标图形。本实施例中,每个目标图形与该每个目标图形的上下左右四个方向的最近邻图形之间的近邻间距分别对应相同是指:每个目标图形与该每个目标图形的正上方的最近邻图形之间的近邻间距相同;每个目标图形与该每个目标图形的正下方的最近邻图形之间的近邻间距相同;每个目标图形与该每个目标图形的正左方的最近邻图形之间的近邻间距相同;以及每个目标图形与该每个目标图形的正右方的最近邻图形之间的近邻间距相同。换句话来讲,在所述周期性图形阵列中,所有目标图形的正上方的近邻间距相同,所有目标图形的正下方的近邻间距相同,所有目标图形的正左方的近邻间距相同,所有目标图形的正右方的近邻间距相同。
举例而言,仍然参阅图2所示,计算机装置确定所述目标图形阵列502包括周期性图形阵列5021,则执行步骤S6。从图2可以看出,该周期性图形阵列5021所包括的八个目标图形中的每个目标图形与该每个目标图形的上下左右四个方向的最近邻图形之间的近邻间距分别对应相同。
步骤S6、若所述目标图形阵列包括周期性图形阵列,计算机装置对所述周期性图形阵列执行光学修正。
本实施例中,所述对所述周期性图形阵列执行光学修正包括:基于所述多个目标图形中的任意一个目标图形确定一个图形集;将所述图形集输入预设的光学修正模型,获得所述任意一个目标图形的掩膜图形;及将所述多个目标图形分别替换为所述掩膜图形也即将所述周期性图形阵列所包括的每个目标图形替换为所述掩膜图形。在一个实施例中,所述基于所述多个目标图形中的任意一个目标图形确定一个图形集包括:将所述任意一个目标图形以及位于所述任意一个目标图形的周边的光学作用距离d范围之内的图形的集合作为所述图形集。优选地,所述任意一个目标图形为位于所述周期性图形阵列的中心的图形。
举例而言,参阅图3所示,计算机装置将目标图形11以及位于目标图形11的周边的光学作用距离d范围之内的图形的集合即图形11-17的集合(也即5022)作为所述图形集。
举例而言,参阅图4所示,计算机装置将所述图形集5022输入预设的光学修正模型,获得所述目标图形11的掩膜图形110。计算机装置将所述周期性图形阵列5021所包括的每个目标图形替换为所述掩膜图形110如图5所示。
根据上述流程步骤可以看出,本申请针对扁平版图,对重复的周期性图形阵列提取,降低了光学修正的运算复杂度,同时对周期性图形阵列采用周期性光学修正的方法,改善制造的一致性,适用于存储器,图像传感器、可编程阵列芯片的版图的数据处理。
上述图1详细介绍了本申请的周期性图形阵列提取方法,下面结合图6和图7,对实现所述周期性图形阵列提取方法的软件系统的功能模块以及实现所述周期性图形阵列提取方法的硬件装置架构进行介绍。
应该了解,所述实施例仅为说明之用,在专利申请范围上并不受此结构的限制。
参阅图6所示,是本申请较佳实施例提供的周期性图形阵列提取系统的模块图。
在一些实施例中,所述周期性图形阵列提取系统30运行于计算机装置3中。所述周期性图形阵列提取系统30可以包括多个由程序代码段所组成的功能模块。所述周期性图形阵列提取系统30中的各个程序段的程序代码可以存储于计算机装置3的存储器31中,并由至少一个处理器32所执行,以实现周期性图形阵列提取功能(详见图1描述)。
本实施例中,所述周期性图形阵列提取系统30根据其所执行的功能,可以被划分为多个功能模块。所述功能模块可以包括:获取模块301、执行模块302。本申请所称的模块是指一种能够被至少一个处理器所执行并且能够完成固定功能的一系列计算机程序段,其存储在存储器中。在本实施例中,关于各模块的功能将在后续的实施例中详述。
具体地,获取模块301可以解析版图文件,加载该版图文件的图层的数据。执行模块302可以分析图层的图形的间距信息,提取关键参数;根据所述关键参数对所述图层的图形进行聚类,得到N组图形阵列。所述执行模块302还可以从所述N组图形阵列中筛选目标图形阵列;确定所述目标图形阵列是否包括周期性图形阵列;及若所述目标图形阵列包括周期性图形阵列,对所述周期性图形阵列执行光学修正。
参阅图7所示,为本申请较佳实施例提供的计算机装置的结构示意图。在本申请较佳实施例中,所述计算机装置3包括存储器31、至少一个处理器32。本领域技术人员应该了解,图7示出的计算机装置的结构并不构成本申请实施例的限定,既可以是总线型结构,也可以是星形结构,所述计算机装置3还可以包括比图示更多或更少的其他硬件或者软件,或者不同的部件布置。
在一些实施例中,所述计算机装置3包括一种能够按照事先设定或存储的指令,自动进行数值计算和/或信息处理的终端,其硬件包括但不限于微处理器、专用集成电路、可编程门阵列、数字处理器及嵌入式设备等。
需要说明的是,所述计算机装置3仅为举例,其他现有的或今后可能出现的电子产品如可适应于本申请,也应包含在本申请的保护范围以内,并以引用方式包含于此。
在一些实施例中,所述存储器31用于存储程序代码和各种数据,例如安装在所述计算机装置3中的周期性图形阵列提取系统30,并在计算机装置3的运行过程中实现高速、自动地完成程序或数据的存取。所述存储器31包括只读存储器(Read-Only Memory,ROM)、可编程只读存储器(Programmable Read-Only Memory,PROM)、可擦除可编程只读存储器(Erasable Programmable Read-Only Memory,EPROM)、一次可编程只读存储器(One-timeProgrammable Read-Only Memory,OTPROM)、电子擦除式可复写只读存储器(Electrically-Erasable Programmable Read-Only Memory,EEPROM)、只读光盘(CompactDisc Read-Only Memory,CD-ROM)或其他光盘存储器、磁盘存储器、磁带存储器、或者任何其他能够用于携带或存储数据的计算机可读的存储介质。
在一些实施例中,所述至少一个处理器32可以由集成电路组成,例如可以由单个封装的集成电路所组成,也可以是由多个相同功能或不同功能封装的集成电路所组成,包括一个或者多个中央处理器(Central Processing unit,CPU)、微处理器、数字处理芯片、图形处理器及各种控制芯片的组合等。所述至少一个处理器32是所述计算机装置3的控制核心(Control Unit),利用各种接口和线路连接整个计算机装置3的各个部件,通过运行或执行存储在所述存储器31内的程序或者模块,以及调用存储在所述存储器31内的数据,以执行计算机装置3的各种功能和处理数据,例如执行周期性图形阵列提取的功能。
尽管未示出,所述计算机装置3还可以包括给各个部件供电的电源(比如电池),优选的,电源可以通过电源管理装置与所述至少一个处理器32逻辑相连,从而通过电源管理装置实现管理充电、放电、以及功耗管理等功能。电源还可以包括一个或一个以上的直流或交流电源、再充电装置、电源故障检测电路、电源转换器或者逆变器、电源状态指示器等任意组件。所述计算机装置3还可以包括多种传感器、蓝牙模块、Wi-Fi模块等,在此不再赘述。
应该了解,所述实施例仅为说明之用,在专利申请范围上并不受此结构的限制。
上述以软件功能模块的形式实现的集成的单元,可以存储在一个计算机可读取存储介质中。上述软件功能模块存储在一个存储介质中,包括若干指令用以使得一台计算机装置(可以是计算机装置、个人电脑等)或处理器(processor)执行本申请各个实施例所述方法的部分。
在进一步的实施例中,结合图6,所述至少一个处理器32可执行所述计算机装置3的操作装置以及安装的各类应用程序(如所述的周期性图形阵列提取系统30)、程序代码等,例如,上述的各个模块。
所述存储器31中存储有程序代码,且所述至少一个处理器32可调用所述存储器31中存储的程序代码以执行相关的功能。例如,图6中所述的各个模块是存储在所述存储器31中的程序代码,并由所述至少一个处理器32所执行,从而实现所述各个模块的功能以达到周期性图形阵列提取的目的。
在本申请的一个实施例中,所述存储器31存储一个或多个指令(即至少一个指令),所述至少一个指令被所述至少一个处理器32所执行以实现图1所示的周期性图形阵列提取的目的。
在本申请所提供的几个实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述模块的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式。
所述作为分离部件说明的模块可以是或者也可以不是物理上分开的,作为模块显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能模块可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用硬件加软件功能模块的形式实现。
对于本领域技术人员而言,显然本申请不限于上述示范性实施例的细节,而且在不背离本申请的精神或基本特征的情况下,能够以其他的具体形式实现本申请。因此,无论从哪一点来看,均应将实施例看作是示范性的,而且是非限制性的,本申请的范围由所附权利要求而不是上述说明限定,因此旨在将落在权利要求的等同要件的含义和范围内的所有变化涵括在本申请内。不应将权利要求中的任何附图标记视为限制所涉及的权利要求。此外,显然“包括”一词不排除其他单元或,单数不排除复数。装置权利要求中陈述的多个单元或装置也可以由一个单元或装置通过软件或者硬件来实现。第一,第二等词语用来表示名称,而并不表示任何特定的顺序。
最后应说明的是,以上实施例仅用以说明本申请的技术方案而非限制,尽管参照较佳实施例对本申请进行了详细说明,本领域的普通技术人员应当理解,可以对本申请的技术方案进行修改或等同替换,而不脱离本申请技术方案的精神和范围。