具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
首先,为清楚说明本申请的实施例,先在此对一些相关名词进行解释。
(1)光学近邻校正(Optical Proximity Correction,OPC)
光学邻近校正是一种光刻增强技术,影响造成的图像错误。OPC主要在半导体器件的生产过程中使用,目的是保证生产过程中设计集成电路版图的图形边缘能得到完整刻蚀。
其中,针对曝光图形出现的违规行为,如线宽度比设计的较窄或较宽,可以通过改变掩模版来进行补偿成像。然而,其他的失真,比如圆角,受光学工具分辨率的制约,更加难以弥补若不及时纠正这种失真,可能会改变生产出来的集成电路的电气性能。
具体地,光学邻近校正是通过移动掩模版上设计集成电路版图的图形边缘中各切分线段的分布位置,或者添加额外的多边形来纠正光学投影导致的失真,其校正过程可以根据宽度和间距约束(即基于规则的OPC),或者是通过使用紧凑的模型动态仿真(即基于模型的OPC,简称MB-OPC)的结果,来决定怎样移动设计集成电路版图中各切分线段的分布位置,以找到最好的校正方案。
应该理解的是,掩模版是器件或部分器件的物理表示,是光刻工艺不可缺少的部件。掩模版上承载有设计集成电路版图,光线透过它,即可将设计集成电路版图投射在涂抹有光刻胶的硅片上。
也即是,OPC的目标是通过调整设计集成电路版图中各切分线段的分布位置,使得修正后的集成电路版图晶元上进行光刻工艺曝光后,得到的曝光图形与设计集成电路版图的图形边缘相同。
(2)图神经网络(Graph Neural Network,GNN)
图神经网络是指使用神经网络模型来学习图结构数据,以提取和发掘图结构数据的特征信息和结构模式,从而满足聚类、分类、预测、分割、生成等图学习任务需求的算法总称。
(3)注意力机制
在神经网络模型中引入注意力机制,可以使得神经网络模型具备专注于其输入(或特征)子集的能力,从中选择特定的输入。
其中,注意力机制可以应用于任何类型的输入,在计算能力有限情况下,注意力机制是解决信息超载问题的主要手段,可以将计算资源分配给更重要的任务。
在光刻工艺中,MB-OPC通常应用于节点90nm制程,以及更小节点的光刻工艺开发,以提高芯片的生产良率。但是,针对更先进的节点,MB-OPC的校正时间在整个芯片设计周期占据比重较大,甚至会超过一周的时间,并抢占数千核中央处理器(Central ProcessingUnit,CPU)的计算资源来对一颗芯片上的集成电路图形的光学邻近效应进行补偿。
针对此类情况,为缩短校正时长,可以采用模式匹配(pattern matching-based)和机器学习方法(machine learning-based)等方式,预测设计集成电路版图中各切分线段的目标偏移值,从而基于目标偏移值,对设计集成电路版图的图形边缘进行光学邻近校正,使得修正后的集成电路版图可以满足光刻要求。
其中,模式匹配方法是针对较高频率出现的电路单元,建立高效检索的边缘校正数据库和对应的设计流程,例如,静态随机存取存储器(Static Random-Access Memory,SRAM)对应的电路单元。
在实际光刻工艺中,对于设计集成电路版图中存在较高重复设计的电路单元,可以基于边缘校正数据库快速匹配其对应的目标偏移值,以缩短设计集成电路版图的校正时间。
但对于图形样式多变的设计集成电路版图,其中重复设计的逻辑电路器件较少,边缘校正数据库中可能不存在设计集成电路版图中各电路单元所对应的目标偏移值,导致基于边缘校正数据库对设计集成电路版图进行光学邻近校正时,所节省的时间非常有限。
机器学习方法则是基于设计集成电路版图所包含的多个切分线段,利用同心矩形采样方法(Concentric Square Sampling,CSS),在每个切分线段周围获得对应像素位置上的表征,以形成各切分线段的特征向量。然后基于各切分线段的特征向量,利用线性回归方法获取各切分线段的目标偏移值,从而对设计集成电路版图的图形边缘进行修改,修正后的集成电路版图可以满足光刻要求。
在机器学习方法中,设计集成电路版图被切分为数量巨大的切分线段,对于部分切分线段的光学邻近效应行为,即线段的目标偏移值,建立对应的机器学习模型,从而通过机器学习模型预测其它任意切分线段在光学邻近效应影响下的目标偏移值。
然而,机器学习方法需要对每个切分线段均进行像素采样,用于形成待输入的特征向量,数据处理量较大,且耗费时间久;同时,基于像素采样所形成的特征向量,机器学习模型处理特征向量时的推理时间较长。
此外,设计集成电路版图的光学邻近校正还可以采用一种激进的逆光刻技术(Inverse Lithography Technology,ILT),逆光刻技术在掩模版的设计集成电路版图上具有更高的自由度,其优化结果是在晶圆上仿真的量测尺寸拟合结果质量较高。
但逆光刻技术优化设计集成电路版图的图形边缘时,耗时较长,且最终修正后的集成电路版图的可制造性较差。
因此,针对上述MB-OPC耗时长的问题,本申请提供了一种光学邻近校正方法,通过预先训练的边缘校正模型对设计集成电路版图中各切分线段的偏移值进行一次预测,得到各切分线段的初始偏移值。在此基础上,再利用MB-OPC算法再次预测设计集成电路版图中各切分线段的目标偏移值。通过边缘校正模型和MB-OPC算法相结合的方式,可以在MB-OPC算法上获得数倍的加速收敛,从而提高设计集成电路版图的图形边缘修正效率,以及光学邻近校正结果的准确性。
在一些实施例中,边缘校正模型可以为基于GNN网络及注意力机制的神经网络模型。参见图1,在对设计集成电路版图(如图1中的a所示)进行光学邻近校正处理时,将设计集成电路版图对应图结构数据(如图1中b所示)输入至边缘校正模型中,通过边缘校正模型获取设计集成电路版图中各切分线段的初始偏移值。然后基于初始偏移值,通过MB-OPC算法继续获取设计集成电路版图中各切分线段的目标偏移值。最后,通过MB-OPC算法确定的各切分线段的目标偏移值,对设计集成电路版图的图形边缘进行修正处理,得到修正后的集成电路版图(如图1中c所示)。
接下来,将通过实施例并结合附图具体地对本申请的技术方案,以及本申请的技术方案如何解决上述技术问题进行详细说明。各实施例之间可以相互结合,对于相同或相似的概念或过程可能在某些实施例中不再赘述。显然,所描述的实施例是本申请实施例一部分实施例,而不是全部的实施例。
参见图2,本申请提供了一种光学邻近校正方法,可以包括以下步骤:
步骤210:通过预设的边缘校正模型获取设计集成电路版图中各切分线段的初始偏移值。
其中,本申请中的设计集成电路版图,可以是集成电路器件单层工艺的完整版图。对于尺寸较大的版图,该步骤110中的设计集成电路版图也可以为该大尺寸版图中的单元电路版图,本申请实施例对此不做限制。
在一些实施例中,针对较大尺寸的集成电路器件单层工艺的完整版图,可以按照预设的区域尺寸和采样间隔,对该完整版图进行分割处理,得到至少一个设计集成电路版图。从而通过边缘校正模型对该完整版图对应的各设计集成电路版图分别进行处理。
其中,区域尺寸可以为,k=10、11或12,/>为采样间隔,其单位为nm。如此,基于采样间隔确定的相邻的两个设计集成电路版图会有一定区域的重叠,该重叠区域大小与光刻影响范围有关。
作为一个示例,参见图3所示的集成电路器件单层工艺的完整版图,该版图为一类128M存储单元器件的多晶硅(Poly)层部分的版图,该层光刻工艺为55nm工艺节点,图3显示部分的尺寸大小为384um× 710um。
通过上述区域尺寸和采用间隔,将该完整版图划分为多个单独的矩形区域,每个矩形区域的尺寸为12.2um,k=10,=12.2nm,重叠区域大小为960nm。
其中,划分后的每个矩形区域内部对应的电路版图,即为一个设计集成电路版图。也即是,对于一张完整版图,其所对应的设计集成电路版图的数量,与划分的矩形区域的数量相同。
如此,图3中的完整版图被划分为3200个单独区域,图4为划分后的矩形区域分布示意图,图5为单个矩形区域内部的设计集成电路版图的示意图。
需要说明的是,若集成电路器件对应版图的整体尺寸大于预设的区域尺寸最小值(即210),则按照上述区域尺寸和采样间隔进行区域划分处理,得到多个设计集成电路版图,对于每个设计集成电路版图,均执行步骤210-步骤230所示的光学邻近校正方法,以对所有的设计集成电路版图进行修正处理。
若集成电路器件对应版图的整体尺寸小于或等于预设的区域尺寸最小值(即210),则无需对其进行区域划分处理,直接将其作为设计集成电路版图,执行步骤210-步骤230所示的光学邻近校正方法。
在确定待修正的设计集成电路版图后,即可采用预先训练好的边缘校正模型,对该设计集成电路版图中各切分线段的偏移值进行预测,以获取设计集成电路版图中各切分线段在光学邻近效应影响下的初始偏移值。
在一些实施例中,边缘校正模型可以基于图神经网络模型构建,通过处理输入的设计集成电路版图的图结构数据,预测该设计集成电路版图中各切分线段的初始偏移值。
其中,需要预先采用丰富的训练数据集,对初始边缘校正模型进行训练,使得训练好的边缘校正模型可以基于输入的设计集成电路版图的线段关系图,准确预测各切分线段的初始偏移值。
在一些实施例中,如图6所示,边缘校正模型的训练过程包括以下步骤:
步骤610:获取多个样本电路版图,以及每个样本电路版图中所包含的切分线段的标准偏移值。
其中,样本电路版图的尺寸信息可以和设计集成电路版图的尺寸信息相同,也可以不同,本申请实施例对此不做限制。
需要说明的是,样本电路版图需要和设计集成电路版图的光刻工艺节点相同,使得初始边缘校正模型可以充分学习该光刻工艺节点下样本电路版图中各切分线段受光学邻近效应的影响情况。比如,初始边缘校正模型学习的多个样本电路版图,以及训练好的边缘校正模型所能处理的设计电路版均为55nm节点的离子注入层。
在一种可能的实现方式中,对于所获取的多个样本电路版图,获取切分线段的标准偏移值的过程可以为:采用MB-OPC算法依次对各样本电路版图进行边缘修正处理,以获取每个样本电路版图中各切分线段的标准偏移值。
其中,MB-OPC算法通过多次迭代优化,使得修正后的图形边缘依据计算光刻模型仿真获得的光强轮廓满足设计要求,即对于目标点的边缘放置误差(Edge PlacementError,EPE)满足生产工艺的要求,EPE<2nm。
需要说明的是,获取样本电路版图中所包含的切分线段的标准偏移值时,MB-OPC算法迭代次数可以根据实际需求进行设置。比如,10次迭代、13次迭代、15次迭代等,本申请实施例对此不做限制。
作为一个示例,参见图7,对于图7中a所示的样本电路版图,采用MB-OPC算法预测样本电路版图中各切分线段的偏移值,从而根据各切分线段的偏移值,对该样本电路版图的图形边缘进行修正处理,得到修正后的标准电路版图,如图7中b所示。
步骤620:将各样本电路版图依次输入至待训练的初始边缘校正模型中,通过初始边缘校正模型获取各样本电路版图中各切分线段的预测偏移值。
也即是,在每次迭代过程中,将各样本电路版图输入至待训练的初始边缘校正模型中,并通过初始边缘校正模型预测每个输入的样本电路版图中的各切分线段在光学近邻效应影响下的偏移情况,即可得到每个样本电路版图中各切分线段的预测偏移值。
步骤630:根据各样本电路版图的预测偏移值和标准偏移值,对初始边缘校正模型进行迭代训练,训练结束后,得到边缘校正模型。
在一种可能的实现方式中,步骤630的实现过程可以为:对于每个样本电路版图的预测偏移值和标准偏移值,根据预测偏移值和标准偏移值之间的差值,对初始边缘校正模型的参数进行调整,通过反复多次训练,使得初始边缘校正模型输出的预测偏移值与标准偏移值之间的误差小于预设的偏差阈值,则结束训练,得到训练好的边缘校正模型。
如此,在确定待光刻处理的设计集成电路版图,并训练好边缘校正模型后,即可通过边缘校正模型,预测设计集成电路版图中各切分线段的初始偏移值。
在一些实施例中,如图8所示,上述步骤210的实现过程可以包括以下子步骤:
步骤211:根据设计集成电路版图中所包含的多条切分线段,构建设计集成电路版图对应的线段关系图。
需要说明的是,设计集成电路版图由多个简单的多边形组成,光学邻近校正之前需要预先将设计集成电路版图中的所有多边形的边切分为数量巨大、长度不一的线段,这些线段称为切分线段,光学邻近校正过程即是预测这些切分线段受光学邻近效应影响,其分布位置较初始位置的偏移值。
其中,切分线段为光学近邻校正过程中的必要技术手段,为本领域技术人员的公知技术,在此不再详细说明。
也即是,通过训练好的边缘校正模型预测设计集成电路版图中各切分线段的初始偏移值时,需要预先将设计电路版图中切分线段的信息,转换成边缘校正模型可以处理的图结构数据,即线段关系图。
其中,线段关系图包括多个图节点和连接边,每个图节点对应设计集成电路版图中的一条切分线段,每个连接边用于描述相连接的两个图节点对应的两条切分线段在设计集成电路版图中的位置分布关系。
换言之,线段关系图包括多个相连的图节点,每个图节点对应设计集成电路版图中的一条切分线段。若两个图节点相连接形成一个连接边,则表示这两个图节点对应的切分线段在移动过程中,其在设计集成电路版图中的分布位置互相影响。
需要说明的是,在定义图节点和连接边的含义之后,还需要采用各切分线段的线段属性信息,以及各切分线段之间的位置关系,确定线段关系图中的各图节点的原始节点特征向量,以及各连接边的原始边特征向量。
在一种可能的实现方式中,如图9所示,步骤211的实现过程可以包括以下子步骤:
步骤2111:根据各切分线段的线段属性信息,生成各图节点的原始节点特征向量。
换言之,原始节点特征向量用于描述图节点对应的切分线段的线段属性信息。
其中,线段属性信息包括以下至少一种:
(1)切分线段的线段类型;
其中,线段类型表示切分线段为凸角线段、凹角线段或普通线段。
需要说明的是,在设计集成电路版图中,凸角线段为沿切分线段法向正向移动的线段,凹角线段为沿切分线段法向负向移动的线段,普通线段为沿切分线段法向移动的线段。
作为一个示例,参见图10,对设计集成电路版图中各多边形的图形边缘线进行切分处理,得到该设计集成电路版图对应的多个切分线段。其中,A区域圈中的两个切分线段为凸角线段,B区域圈中的两个切分线段为凹角线段,C区域圈中的切分线段均为普通线段。
(2)切分线段的线段长度;
其中,线段长度可以为各切分线段的原始长度值,也可以为归一化处理后的长度值,本申请实施例对此不做限制。
(3)切分线段的线段长度和切分线段在设计集成电路版图中所属图形边缘的边长度之间的比值。
作为一个示例,继续参见图10,切分线段d在设计集成电路版图中所属的图形边缘为边D,因此,可以计算切分线段d自身的线段长度和边D的边长度之间的比值,并将该比值,写入至切分线段d对应图节点的原始节点特征向量中。
基于上述线段属性信息,切分线段d对应图节点的原始节点特征向量可以通过下述公式(1)表示:
(1)
式中,第一个参数“0”表示切分线段d的线段类型不是凸角线段,第二个参数“0”表示切分线段d的线段类型不是凹角线段,第三个参数“1”表示切分线段的线段类型是普通线段,第四个参数“3”表示切分线段d归一化处理后的线段长度值,第五个参数“0.2”表示切分线段d与其所属的图形边缘D之间的长度比值。
需要说明的是,在计算各切分线段对应图节点的原始节点特征向量时,线段属性信息还可以包括其他信息。比如,切分线段在整个设计电路版图中的位置信息。本申请实施例对线段属性信息中所包含的信息量和信息类型不做限制。
步骤2113:根据各切分线段在设计集成电路版图中的分布位置,生成各连接边的原始边特征向量。
也即是,在设计集成电路版图中移动某一切分线段时,该切分线段周边的切分线段的位置可能也会受到影响,因此,在构建线段关系图时,需要考虑切分线段在设计集成电路版图中的分布位置。
在一些实施例中,在设计集成电路版图中,根据各切分线段的相对位置关系,切分线段之间存在三种连接关系:顺序连接关系、空间连接关系和对称连接关系。
其中,顺序连接边所连接的两个图节点对应的两条切分线段,位于设计集成电路版图的同一个多边形边的相邻位置;对称连接边所连接的两个图节点对应的两条切分线段,位于设计集成电路版图的同一多边形中,且按照预设的区域框选尺寸所确定的区域内;空间连接边所连接的两个图节点对应的两条切分线段,位于设计集成电路版图的不同多边形中,且按照区域框选尺寸所确定的区域内。
为便于后文说明,将顺序连接的两条切分线段之间在线段关系图中对应的连接边记为边,空间连接的两条切分线段之间在线段关系图中对应的连接边记为边/>,对称连接的两条切分线段之间在线段关系图中对应的连接边记为边/>。
在一种可能的实现方式中,对于顺序连接的切分线段对,上述步骤2113的实现过程可以为:针对设计集成电路版图中的任一个切分线段对,根据切分线段对中两条切分线段的中心点坐标,确定切分线段对的中点坐标差;根据切分线段对的中点坐标差,确定切分线段对中两条切分线段在线段关系图中对应的连接边的原始边特征向量。
其中,切分线段对包括设计集成电路版图中存在位置分布关系的两条切分线段。
作为一个示例,顺序连接的两个切分线段和/>在线段关系图中对应的连接边的原始边特征向量可以通过下述公式(2)和(3)计算:
(2)
(3)
式中,表示存在顺序连接关系的两个图节点之间的连接边的原始边特征向量,/>和/>表示由边/>连接的两个切分线段,/>、/>分别表示切分线段/>和/>的中点坐标。
在一些实施例中,根据光刻工艺的影响范围,距离(700~2000nm)内的所有切分线段的位置变化,都会对该切分线段的光强轮廓位置产生影响。因此,上述区域框选尺寸包括区域宽度值和区域长度值,该区域宽度值和区域长度值可以为700~2000nm中的任一数值。比如,设置区域宽度值和区域长度值均为960nm。
当然,随着光刻工艺的发展,该区域框选尺寸也可以为其他数值,本申请实施例对此不做限制。
作为一个示例,本申请实施例采用Dw=960nm定义设计集成电路版图的内部和外部,以区分对称连接和空间连接。
在一种可能的实现方式中,定义设计集成电路版图中各切分线段按照逆时针方向顺序连接,则在切分线段的顺序连接方向上,左侧为设计集成电路版图内部,右侧为设计集成电路版图外部。
对某一切分线段,沿其垂直方向向设计集成电路版图内部方向做矩形区域,该矩形区域的长和宽分别为切分线段长度和Dw。若该矩形内存在其它切分线段,则认为这些切分线段之间存在对称连接(symmetrical connection)关系。
同理,对某一切分线段,沿其垂直方向向设计集成电路版图外部方向做相同尺寸的矩形区域,该矩形区域的长和宽分别为切分线段长度和Dw。若该矩形内存在其它切分线段,则认为这些切分线段之间存在空间连接(spatial connection)关系。
作为一个示例,参见图11a,对称连接用于描述设计集成电路版图中位于同一多边形中,且位于按照预设的区域框选尺寸所确定的区域内的切分线段之间的位置关系;空间连接用于描述设计电路版图中位于不同多边形中,且位于按照预设的区域框选尺寸所确定的区域内的切分线段之间的位置关系。
其中,关于图11a中的E区域,参见图11b所示的区域放大图,当多条切分线段属于同一个多边形时,在按照预设的区域框选尺寸所确定的区域内,位于同一多边形中的切分线段g和切分线段h之间存在对称连接关系。
关于图11a中的F区域,参见图11c所示的区域放大图,当多条切分线段属于不同多边形时,在按照预设的区域框选尺寸所确定的区域内,位于不同多边形中的切分线段m和切分线段n之间存在空间连接关系。
作为另一个示例,参见图10,切分线段a和切分线段b之间存在顺序连接关系;切分线段c和切分线段d位于设计集成电路版图中的同一个多边形内,两者之间存在对称连接关系;切分线段e和切分线段f位于设计集成电路版图中的不同多边形内,两者之间存在空间连接关系。
在一种可能的实现方式中,对于对称连接和空间连接的切分线段对,上述步骤1113的实现过程可以为:针对设计集成电路版图中的任一个切分线段对,获取切分线段对中两条切分线段的中心点坐标信息,以及切分线段对中两条切分线段之间的垂直距离;根据两条切分线段的中心点坐标信息的差值,确定对应的切分线段对的中点坐标差;根据切分线段对的中点坐标差和垂直距离,确定切分线段对中两条切分线段在线段关系图中对应的连接边的原始边特征向量。
也即是,对于对称连接和空间连接,还需将两条切分线段之间的垂直距离添加到原始边特征向量中。
作为一个示例,对称连接或空间连接的两条切分线段和/>在线段关系图中对应的连接边的原始边特征向量可以通过下述公式(4)计算:
(4)
式中,表示存在对称连接关系或空间连接关系的两个图节点之间的连接边的原始边特征向量,/>表示两个切分线段/>和/>之间的垂直距离。
步骤2115:根据原始节点特征向量和原始边特征向量,构建设计集成电路版图对应的线段关系图。
由于每个图节点代表一个切分线段,因此,可以根据图节点和切分线段之间的对应关系,将每条切分线段的线段属性信息写入对应图节点的原始节点特征向量中;同理,根据切分线段在设计集成电路版图中的分布位置,将两条切分线段之间的相对位置关系写入这两条切分线段对应图节点之间的连接边的原始边特征向量中。
如此,确定设计集成电路版图中各切分线段的连接关系、各切分线段对应图节点的原始节点特征向量,以及两条切分线段对应图节点之间的连接边的原始边特征向量后,即可构建出该设计集成电路版图对应的线段关系图。
应该理解的是,基于一个设计集成电路版图中的多条切分线段,可以得到一张线段关系图,该线段关系图中图节点的数量与设计集成电路版图中划分的切分线段的数量相同,且在该线段关系图中,不同图节点之间的可能包括三种连接边:边、边/>和边/>。
步骤213:将线段关系图输入至边缘校正模型中,通过边缘校正模型获取设计集成电路版图中各切分线段的初始偏移值。
在一些实施例中,步骤213的实现过程可以为:将线段关系图输入至边缘校正模型中,通过边缘校正模型挖掘线段关系图中各图节点的深层特征信息,从而预测各图节点所对应的切分线段的初始偏移值。
其中,训练好的边缘校正模型作为处理线段关系图的深度学习模型,可以利用图节点之间的消息传递来捕捉某种依赖关系,使新生成的节点嵌入可以保留任意深度的邻域信息。
考虑到有用信息窗口的大小,边缘校正模型中可以叠加不同数量的GNN网络层,在每一个GNN网络层中,每个图节点将与之连接的其他图节点的特征进行转换和聚合,以对自身的原始节点特征向量进行更新。
如此,通过叠加K层GNN网络层,每个图节点都可以得到一个K深度的局部特征信息。其中,K值可以根据实际需求进行设置,本申请实施例对其边缘校正模型中可以设置的GNN网络层的数量不做限制。
在一些实施例中,由于切分线段的初始偏移值不仅与局部邻近信息有关,而且还会受到相邻切分线段移动的影响。因此,为了进一步提高切分线段的初始偏移值的预测准确性,本申请构建的边缘校正模型可以引入注意力机制,从而结合注意力机制,分析不同连接边对同一个图节点的目标特征向量的影响,预测设计集成电路版图中各切分线段的初始偏移值。
基于此,如图12所示,步骤213的实现过程可以包括以下子步骤:
步骤2131:将线段关系图输入至边缘校正模型中,确定设计集成电路版图中各切分线段的中间偏移值。
需要说明的是,在处理线段关系图时,边缘校正模型会综合每个图节点在至少一种连接边上对应的其他图节点的特征信息,来预测图节点对应的切分线段的中间偏移值,从而提高预测结果的准确性。
在一种可能的实现方式中,上述步骤2131的实现过程可以为:对于线段关系图中的任一图节点,根据与图节点相连接的至少一个近邻图节点的原始节点特征向量,以及图节点对应的至少一个原始边特征向量,获取图节点的目标特征向量;根据线段关系图中各图节点的目标特征向量,确定设计集成电路版图中各切分线段的中间偏移值。
在一些实施例中,边缘校正模型中叠加有预设数量的GNN层,在一个GNN层中,每个图节点将与之相连接的近邻图节点的原始节点特征向量进行转换和聚合,以更新自身的向量表示,从而得到目标特征向量。
其中,GNN层可以包括SeqConv卷积核和SpaceSymmConv卷积核,以更好地编码各图节点对应的切分线段的局部邻域信息。SeqConv卷积核用于实现由边eseq连接的图节点之间的消息传递,SpaceSymmConv卷积核用于实现边esp和边esy连接的图节点的特征更新。
在一种可能的实现方式中,针对线段关系图中的任一图节点,获取该图节点的目标特征向量的实现过程可以为:在各GNN网络层中,根据图节点的原始节点特征向量,以及图节点在线段关系图中对应的至少一个原始边特征向量,计算该图节点的邻域聚合向量;根据该图节点的邻域聚合向量和该图节点的原始节点特征向量,计算该图节点更新后的特征向量。如此,经过多个GNN网络层依次执行上述更新特征向量的操作后,即可通过最后一个GNN网络层,输出该图节点对应的目标特征向量。
作为一个示例,由于一个图节点可能对应一种类型的连接边,也可能多种类型的连接边,因此,在计算图节点的邻域聚合向量时,可以先计算该图节点在一个连接边上的邻居特征向量,然后再聚合该图节点所有连接边对应的邻居特征向量,得到该图节点对应的邻域聚合向量。
其中,融合连接边和原始节点特征信息的邻居特征向量,可以通过下述公式(5)计算:
(5)
式中,i为线段关系图中的任一个图节点对应的切分线段,表示由边/>连接的切分线段之间的邻居特征向量,r表示边的类型,/>;/>表示多层感知器(Multilayer Perceptron,MLP),用于融合连接边和图节点的信息;/>为图节点对应的切分线段的原始节点特征向量,/>为图节点i和图节点j之间的连接边的原始边特征向量。
进一步地,在设计集成电路版图对应的线段关系图中,一个图节点可能存在一个或多个连接边,每个连接边上的近邻图节点所对应的切分线段的分布位置,均可能影响当前图节点对应切分线段的分布位置。因此,需要对与图节点相连接的至少一个近邻图节点所对应的连接边上的邻居特征向量取元素均值,从而得到该图节点的邻域聚合向量。
作为一个示例,可以通过下述公式(6)计算邻域聚合向量:
(6)
式中,表示对图节点的至少一个近邻图节点的邻居特征向量进行聚合处理。
在GNN网络层中,对于顺序连接边,SeqConv卷积核将各图节点在顺序连接边上得到的邻域聚合向量和各图节点的原始节点特征向量/>进行信息连接,利用MLP得到更新后的特征向量/>。
作为一个示例,可以通过下述公式(7)计算顺序连接边上的各图节点更新后的特征向量:
(7)
式中,为图节点对应的切分线段的原始节点特征向量,/>为图节点在顺序连接边上计算得到的邻域聚合向量。
如此,在每个GNN网络层中,均通过上述公式(6)和公式(7),采用SeqConv卷积核对线段关系图中的顺序连接边所连接的图节点进行向量更新操作,最终将最后一个GNN网络层中SeqConv卷积核执行向量更新操作后所输出的特征向量,确定为顺序连接边所连接的图节点的目标特征向量。
同理,在GNN网络层中,SpaceSymmConv卷积核将图节点在对称连接边上计算的邻域聚合向量、图节点在空间连接边上计算的邻域聚合向量,以及图节点的原始节点特征向量进行信息连接,利用MLP得到更新后的特征向量。
作为一个示例,可以通过下述公式(8)计算对称连接边和空间连接边上的各图节点更新后的特征向量:
(8)
式中,为对称连接边上的图节点或空间连接边上的图节点的原始节点特征向量,/>为对称连接边上的图节点的邻域聚合向量,/>为空间连接边上的图节点的邻域聚合向量。
需要说明的是,对称连接边上的图节点和空间连接边上的图节点的邻域聚合向量的计算方式,与上述顺序连接边上的图节点的邻域聚合向量的计算过程相类似,可以参见上述公式(5)和(6),在此不再赘述。
如此,在GNN网络层中,均通过上述公式(8),采用SpaceSymmConv卷积核对线段关系图中的对称连接边和空间连接边上的图节点进行向量更新操作,最终将最后一个GNN网络层中SpaceSymmConv卷积核执行更新操作后所输出的特征向量,确定为各第二节点的目标特征向量。
进一步地,基于得到的目标特征向量,利用结构相同但参数不同的MLP预测各图节点对应的切分线段在不同类型的连接边影响下的中间偏移值。
应该理解的是,对于线段关系图中的任一图节点,若图节点在线段关系图中仅存在一条连接边,则通过上述步骤2131进行向量更新后,该图节点对应的切分线段只存在一个中间偏移值;若图节点在线段关系图中存在两条连接边,则通过上述步骤2131进行向量更新后,会得到该图节点对应的切分线段在这两条连接边影响下的中间偏移值,即得到两个中间偏移值;若图节点在线段关系图中存在三条连接边,则通过上述步骤2131进行向量更新后,会得到该图节点对应的切分线段在这三条连接边影响下的中间偏移值,即得到三个中间偏移值。
步骤2133:根据中间偏移值和线段关系图,获取各图节点在至少一个连接边上的注意力系数。
需要说明的是,由于切分线段的移动,不仅与其自身的局部邻近信息有关,而且还会受到相邻切分线段移动位置的影响。因此,为了提高切分线段的偏移值回归的准确性,本申请在边缘校正模型中引入注意力机制,通过边缘校正模型计算的各图节点的目标特征向量,对各图节点对应的切分线段的偏移值进行第一次预测,然后,根据第一次预测得到的中间偏移值和目标特征向量,引入注意力机制进行第二次预测,从而确定设计集成电路版图中各切分线段经过边缘校正模型预测的初始偏移值。
也即是,参见图13,对于将设计集成电路版图对应的线段关系图输入至边缘校正模型的GNN网络层中,通过GNN网络层中的卷积核对线段关系图中各图节点进行向量更新操作,以获取各图节点的目标特征向量,从而根据各图节点的目标特征向量,对各图节点对应的切分线段的偏移值进行第一次预测。
进一步地,基于第一次预测得到的中间偏移值,结合注意力机制,对各图节点对应的切分线段的偏移值进行第二次预测。经过两次预测后,边缘校正模型可以输出各图节点对应的切分线段的初始偏移值。
需要说明的是,考虑到图节点对应的切分线段自身的偏移情况,切分线段之间的相关性不仅取决于切分线段之间的几何关系,还取决于GNN网络层第一次预测后切分线段的中间偏移值的大小。因此,在确定注意力系数时,需要确定切分线段在不同连接边影响下的关联特征,从而根据关联特征,确定其注意力系数。
在一种可能的实现方式中,步骤2133的实现过程可以为:基于各图节点的目标特征向量,确定各图节点与不同连接边上的近邻节点之间的关联特征;根据各图节点的关联特征和各图节点对应的切分线段之间的相对位置关系,确定线段关系图中各图节点在至少一个连接边上的注意力系数。
其中,由于切分线段的局部几何关系通过边缘校正模型编码到其目标特征向量中,切分线段/>和/>通过连接边/>连接,为了分析/>对/>的重要性,可以使用变换矩阵/>将包含几何信息的目标特征向量/>映射到寻找切分线段之间相关性的关联特征上。
作为一个示例,可以通过下述公式(9)计算两个切分线段之间的关联特征:
(9)
式中,,/>是目标特征向量/>的维数;/>,/>是变换矩阵的维数;,用于将/>的维度由/>转换成/>;/>为图节点对应的切分线段/>的中间偏移值,/>用于描述切分线段/>和/>之间的几何关系。
如此,将与/>的变换向量拼接成一个向量,然后与边缘校正模型第一预测得到的中间偏移值/>的变换向量相加,从而兼顾了连接切分线段/>的移动值。/>是一个单层的MLP。
进一步地,由于连接关系的边所连接起来的切分线段,对于计算偏移值的相关性是不同的。对于由对称连接的切分线段,这些切分线段可以沿同一方向移动;对于由边顺序连接的切分线段,可以向相反的方向移动。
因此,在一些实施例中,可以采用作为非线性函数捕捉移动值之间的相反方向,以确定不同连接边,在计算切分线段的偏移值时的注意力系数。/>
作为一个示例,可以通过下述公式(10)计算注意力系数:
(10)
式中,表示切分线段/>对/>的注意力系数。
应该理解的是,若切分线段和/>之间的连接关系不同,则其计算的注意力系数也而不同。也即是,注意力系数是针对/>在不同连接关系下的/>,分别计算不同连接关系下的/>对于/>的注意力系数。
步骤2135:根据各切分线段的中间偏移值,以及各切分线段对应图节点的至少一个注意力系数,确定设计集成电路版图中各切分线段的初始偏移值。
也即是,将注意力系数叠加至中间偏移值上,第二次预测各切分线段的偏移值,从而得到设计集成电路版图中各切分线段的初始偏移值。
在一种可能的实现方式中,对于每种连接关系的连接边,即边、/>和/>,使用下述公式(11)和公式(12),对各切分线段的中间偏移值叠加注意力系数,并将不同类型连接边下的同一切分线段的偏移值拼接起来,采用线性变换得到其对应的初始偏移值。
(11)
(12)
式中,是连接边类型为r的/>值,/>,/>是边缘校正模型预测得到的中间偏移值,/>为边缘校正模型结合注意力机制,最终输出的切分线段/>的初始偏移值。
应该理解的是,对于切分线段,其在设计集成电路版图中可能存在至少一种连接关系的其他切分线段,因此,边缘校正模型在预测切分线段/>的初始偏移值时,需要结合注意力系数,将切分线段/>在不同连接关系下中所确定的中间偏移值拼接起来,最终输出该切分线段/>的初始偏移值。
步骤220:基于初始偏移值,通过基于模型的光学近邻校正MB-OPC算法确定设计集成电路版图中各切分线段的目标偏移值。
在一种可能的实现方式中,步骤220的实现股过程可以为:根据各切分线段的初始偏移值,采用MB-OPC算法对设计集成电路版图中各切分线段的分布位置进行调整,以获取设计集成电路版图中各切分线段的目标偏移值。
也即是,基于初始偏移值,直接采用MB-OPC算法预测目标偏移值,获取到目标偏移值后再对设计集成电路版图的图形边缘进行修正处理。
在另一种可能的实现方式中,步骤220的实现过程可以为:根据各切分线段的初始偏移值,对设计集成电路版图中各切分线段的分布位置进行第一次调整;然后,基于第一次调整结果,采用MB-OPC算法,对设计集成电路版图中各切分线段的分布位置进行第二次调整,获取设计集成电路版图中各切分线段的目标偏移值。
也即是,获取到初始偏移值后,先对设计集成电路版图的图形边缘进行一次修正处理,再继续一次修正后的设计集成电路版图,通过MB-OPC算法获取到目标偏移值后,再对设计集成电路版图的图形边缘进行二次修正处理。
应该理解的是,在具体实施时,可以选择上述任一实现方式,本申请实施例对此不做限制。
步骤230:根据目标偏移值,对设计集成电路版图中各切分线段的分布位置进行调整,得到修正后的集成电路版图。
其中,修正后的集成电路版图在晶元上进行光刻工艺曝光后,得到的曝光图形与设计集成电路版图的图形边缘相同,补偿了光学邻近效应所导致的图形边缘偏差。
应该理解的是,考虑到工艺误差,这里的图形边缘相同,可以理解为光刻后曝光图形的图形边缘与设计集成电路版图的图形边缘之间的边缘偏差值,处于预设的误差范围内即可,并非严格要求曝光图形和设计集成电路版图的图形边缘完全相同。
也即是,步骤230是按照目标偏移值,对设计集成电路版图中各切分线段进行移动处理,以使各切分线段移动后的位置可以补偿光刻工艺中光学邻近效应带来的影响,从而得到修正后的集成电路版图。
在本实施例中,对于设计集成电路版图,首先通过预设的边缘校正模型预测设计集成电路版图中各切分线段的初始偏移值,然后基于初始偏移值,再通过MB-OPC算法预测设计集成电路版图中各切分线段的目标偏移值。进而根据目标偏移值,对设计集成电路版图中各切分线段的分布位置进行调整,以校正其图形边缘,得到修正后的集成电路版图。如此,按照修正后的集成电路版图在晶元上进行光刻工艺曝光后,得到的曝光图形与设计集成电路版图的图形边缘相同。由此可见,本申请通过边缘校正模型和MB-OPC算法,确定光刻时光学邻近效应在设计集成电路版图中的各切分线段上产生的目标偏移值,通过两次偏移值预测操作,可以提高预测结果的准确性。而且,MB-OPC算法基于初始偏移值预测目标偏移值,较直接处理设计集成电路版图获取目标偏移值的方式而言,可以大大缩短MB-OPC算法的计算时长,从而提高偏移值的预测效率,以及设计集成电路版图的图形边缘修正效率。进一步地,在光刻前,根据目标偏移值对设计集成电路版图的图形边缘进行修正,大大降低了光学邻近效应对光刻过程的影响,提高了设计集成电路版图的光刻精度。
应该理解的是,虽然上述实施例所涉及的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,上述实施例所涉及的流程图中的至少一部分步骤可以包括多个步骤或者多个阶段,这些步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤中的步骤或者阶段的至少一部分轮流或者交替地执行。
基于上述光学邻近校正方法,采用相同的技术构思,本申请实施例还提供了一种用于实现上述光学邻近校正方法所对应的光学邻近校正装置。该装置所提供的解决问题的实现方案与上述方法实施例中所记载的实现方案相似。
在一个示例性实施例中,如图14所示,该光学邻近校正装置1400包括第一预测模块1410、第二预测模块1420和边缘校正模块1430,其中:
第一预测模块1410,用于通过预设的边缘校正模型获取设计集成电路版图中各切分线段的初始偏移值;
第二预测模块1420,用于基于初始偏移值,通过基于模型的光学近邻校正MB-OPC算法确定设计集成电路版图中各切分线段的目标偏移值;
边缘校正模块1430,用于根据目标偏移值,对设计集成电路版图中各切分线段的分布位置进行调整,得到修正后的集成电路版图;
其中,按照修正后的集成电路版图在晶元上进行光刻工艺曝光后,得到的曝光图形与设计集成电路版图的图形边缘相同。
在其中一些实施例中,边缘校正模型是基于图神经网络模型构建的;
第一预测模块1410,包括:
建图单元,用于根据设计集成电路版图中所包含的多条切分线段,构建设计集成电路版图对应的线段关系图;线段关系图包括多个图节点和连接边,每个图节点对应设计集成电路版图中的一条切分线段,每个连接边用于描述相连接的两个图节点对应的两条切分线段在设计集成电路版图中的位置分布关系;
预测单元,用于将线段关系图输入至边缘校正模型中,通过边缘校正模型获取设计集成电路版图中各切分线段的初始偏移值。
在其中一些实施例中,建图单元,具体用于:
根据各切分线段的线段属性信息,生成各图节点的原始节点特征向量;
根据各切分线段在设计集成电路版图中的分布位置,生成各连接边的原始边特征向量;
根据原始节点特征向量和原始边特征向量,构建设计集成电路版图对应的线段关系图。
在其中一些实施例中,线段关系图包括顺序连接边、对称连接边和空间连接边;
顺序连接边所连接的两个图节点对应的两条切分线段,位于设计集成电路版图的同一个多边形边的相邻位置;对称连接边所连接的两个图节点对应的两条切分线段,位于设计集成电路版图的同一多边形中,且按照预设的区域框选尺寸所确定的区域内;空间连接边所连接的两个图节点对应的两条切分线段,位于设计集成电路版图的不同多边形中,且按照区域框选尺寸所确定的区域内。
在其中一些实施例中,边缘校正模型结合注意力机制预测设计集成电路版图中各切分线段的初始偏移值;
预测单元,包括:
第一预测子单元,用于将线段关系图输入至边缘校正模型中,确定设计集成电路版图中各切分线段的中间偏移值;
系数获取单元,用于根据中间偏移值和线段关系图,获取各图节点在至少一个连接边上的注意力系数;
第二预测子单元,用于根据各切分线段的中间偏移值,以及各切分线段对应图节点的至少一个注意力系数,确定设计集成电路版图中各切分线段的初始偏移值。
在其中一些实施例中,第一预测子单元,具体用于:
对于线段关系图中的任一图节点,根据与图节点相连接的至少一个近邻图节点的原始节点特征向量,以及图节点对应的至少一个原始边特征向量,获取图节点的目标特征向量;
根据线段关系图中各图节点的目标特征向量,确定设计集成电路版图中各切分线段的中间偏移值。
在其中一些实施例中,边缘校正模型的训练过程包括:
获取多个样本电路版图,以及每个样本电路版图中所包含的切分线段的标准偏移值;
将各样本电路版图依次输入至待训练的初始边缘校正模型中,通过初始边缘校正模型获取各样本电路版图中各切分线段的预测偏移值;
根据各样本电路版图的预测偏移值和标准偏移值,对初始边缘校正模型进行迭代训练,训练结束后,得到边缘校正模型。
在其中一些实施例中,线段属性信息包括以下至少一种:
切分线段的线段类型;线段类型表示切分线段为凸角线段、凹角线段或普通线段,在设计集成电路版图中,凸角线段为沿切分线段法向正向移动的线段,凹角线段为沿切分线段法向负向移动的线段,普通线段为沿切分线段法向移动的线段;
切分线段的线段长度;
切分线段的线段长度和切分线段在设计集成电路版图中所属图形边缘的边长度之间的比值。
在其中一些实施例中,建图单元,还用于:
针对设计集成电路版图中的任一个切分线段对,根据切分线段对中两个切分线段的中心点坐标,确定切分线段对的中点坐标差;切分线段对包括设计集成电路版图中存在位置分布关系的两条切分线段;
根据切分线段对的中点坐标差,确定切分线段对中的两条切分线段在线段关系图中对应的连接边的原始边特征向量。
其中,关于光学邻近校正装置的具体限定可以参见上文中对于光学邻近校正方法的限定,在此不再赘述。
需要说明的是,上述光学邻近校正装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
其中,本申请提供的光学邻近校正方法可以利用计算机设备存储训练好的边缘校正模型,并运行光学近邻校正算法,以预测待光刻的初始集成电路图形的边缘偏移值,并对其进行校正处理,从而得到满足光刻要求的目标集成电路图形。
在一些实施例中,本申请还提供了一种计算机设备,参见图15,该计算机设备1500包括至少一个处理器1510、存储器1520、通信总线1530,以及至少一个通信接口1540。
其中,处理器1510可以是一个通用CPU、网络处理器(Network Processor,NP)、微处理器,或者可以是一个或多个用于实现本申请方案的集成电路,例如,专用集成电路(Application-Specific Integrated Circuit,ASIC),可编程逻辑器件(ProgrammableLogic Device,PLD)或其组合。
上述PLD可以是复杂可编程逻辑器件(Complex Programmable Logic Device,CPLD),现场可编程逻辑门阵列(Field-Programmable Gate Array,FPGA),通用阵列逻辑(Generic Array Logic,GAL)或其任意组合。
其中,计算机设备1500可以包括多个处理器1510,处理器1510可以包括一个或多个CPU。其中,这些处理器1510中的每一个可以是一个单核处理器(single-CPU),也可以是一个多核处理器(multi-CPU)。
需要说明的是,这里的处理器1510可以指一个或多个设备、电路和/或用于处理数据(如计算机程序指令)的处理核。
存储器1520可以为只读存储器(Read-Only Memory,ROM)或可存储静态信息和指令的其它类型的静态存储设备;也可以为随机存取存储器(Random Access Memory,RAM)或者可存储信息和指令的其它类型的动态存储设备;还可以是电可擦可编程只读存储器(Electrically Erasable Programmable Read-Only Memory,EEPROM)、只读光盘(CompactDisc Read-Only Memory,CD-ROM)或其它光盘存储、光碟存储(包括压缩光碟、激光碟、光碟、数字通用光碟、蓝光光碟等)、磁盘存储介质或者其它磁存储设备,或者是能够用于携带或存储具有指令或数据结构形式的期望的程序代码并能够由计算机存取的任何其它介质,但不限于此。
需要说明的是,存储器1520可以是独立存在,并通过通信总线1530与处理器1510相连接。当然,存储器1520也可以和处理器1510集成在一起。
通信总线1530用于在各组件之间(比如处理器和存储器之间)传送信息,通信总线1530可以分为地址总线、数据总线、控制总线等。为便于表示,图15中仅用一条通信总线进行示意,但并不表示仅有一根总线或一种类型的总线。
通信接口1540用于供该计算机设备1500与其它设备或通信网络进行通信。通信接口1540包括有线通信接口或无线通信接口。其中,有线通信接口例如可以为以太网接口。以太网接口可以是光接口,电接口或其组合。无线通信接口可以为无线局域网(WirelessLocal Area Networks,WLAN)接口、蜂窝网络通信接口或其组合等。
在一些实施例中,计算机设备1500还可以包括输出设备和输入设备(图15中未示出)。其中,输出设备和处理器1510通信,以多种方式来显示信息,例如,输出设备可以是液晶显示器(Liquid Crystal Display,LCD)、发光二极管(Light Emitting Diode,LED)显示设备、阴极射线管(Cathode Ray Tube,CRT)显示设备或投影仪(projector)等;输入设备和处理器1510通信,以多种方式接收用户的输入,例如,输入设备可以是鼠标、键盘、触摸屏设备或传感设备等。
在一些实施例中,存储器1520可以用于存储执行本申请方案的计算机程序,处理器1510可以执行存储器1520中存储的计算机程序。例如,该计算机设备1500可以通过处理器1510调用并执行存储在存储器1520中的计算机程序,以实现本申请实施例提供的光学邻近校正方法的步骤。
应该理解的是,本申请提供的光学邻近校正方法,也可以应用于光学邻近校正装置,该光学邻近校正装置可以通过软件、硬件或者软硬件结合的方式实现成为处理器的部分或者全部,以集成在任一计算机设备中。
此外,本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,该计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述光学邻近校正方法的实施例的流程。
其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和易失性存储器中的至少一种。非易失性存储器可包括ROM、磁带、软盘、闪存或光存储器等。易失性存储器可包括RAM或外部高速缓冲存储器。作为说明而非局限,RAM可以是多种形式,比如静态随机存取存储器(Static Random AccessMemory,SRAM)或动态随机存取存储器(Dynamic Random Access Memory,DRAM)等。
以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,所做的任何修改、等同替换、改进等,均应包括在本申请实施例的保护范围之内。