发明内容
本发明所要解决的技术问题是提供一种集成电路版图在进行缩小实验后,可以自动将断开的连线重新连接上的方法。
为解决上述技术问题,本发明集成电路版图在缩小实验后自动连线的方法包括如下步骤:
第1步,将缩小后的单元阵列称为缩小阵列;
将周边电路划分为上、下、左、右四个区域,分别称为周边上区、周边下区、周边左区、周边右区;
将缩小阵列和周边电路之间的空白区域也划分为上、下、左、右四个区域,分别称为空白上区、空白下区、空白左区、空白右区;
第2步,将周边左区中的所有节点和缩小阵列的左侧的所有节点按照顺序一一配对;
每一对节点中,位于周边左区中的节点称为周边节点,位于缩小阵列的左侧的节点称为阵列节点;
第3步,对于第一对节点:
当周边节点的y轴坐标>阵列节点的y轴坐标,则在空白左区中采用横线——由上到下的竖线——横线连接这一对节点;其中竖线与缩小阵列的左侧的距离为d1=via+2×space;所述via指接触孔的宽度,space指两根金属线之间的最小间距;
当周边节点的y轴坐标<阵列节点的y轴坐标,则在空白左区中采用横线——由下到上的竖线——横线连接这一对节点;其中竖线与周边左区的距离为d1;
当周边节点的y轴坐标=阵列节点的y轴坐标,则在空白左区中采用横线连接这一对节点;
第4步,对于下一对节点:
当周边节点的y轴坐标>阵列节点的y轴坐标,则在空白左区中采用横线——由上到下的竖线——横线连接这一对节点;
当周边节点的y轴坐标<阵列节点的y轴坐标,则在空白左区中采用横线——由上到下的竖线——横线连接这一组节点;
所述竖线与上一对节点连线中的竖线的距离为d2=width+space;所述width指金属线的宽度;
当周边节点的y轴坐标=阵列节点的y轴坐标,则在空白左区中采用横线连接这一对节点;
第5步,重复第4步处理每一对节点;当遇到有无法满足条件的一对或多对节点时,对这一对或多对节点不予连线;
剩余的未连线的一对或多对节点称为剩余节点对;
第6步,对剩余节点对中的第一对节点:
当周边节点的y轴坐标>阵列节点的y轴坐标,则在空白左区中以两个接触孔电极分别将周边节点、阵列节点引至另一层金属,在该层金属中采用横线——由上到下的竖线——横线连接两个接触孔电极;其中竖线与缩小阵列的左侧的距离为d1;
当周边节点的y轴坐标<阵列节点的y轴坐标,则在空白左区中以两个接触孔电极分别将周边节点、阵列节点引至另一层金属,在该层金属中采用横线——由下到上的竖线——横线连接两个接触孔电极;其中竖线与周边左区的距离为d1;
当周边节点的y轴坐标=阵列节点的y轴坐标,则在空白左区中以两个接触孔电极分别将周边节点、阵列节点引至另一层金属,在该层金属中采用横线连接两个接触孔电极;
第7步,对剩余节点对中的下一对节点:
当周边节点的y轴坐标>阵列节点的y轴坐标,则在空白左区中以两个接触孔电极分别将周边节点、阵列节点引至另一层金属,在该层金属中采用横线——由上到下的竖线——横线连接两个接触孔电极;
当周边节点的y轴坐标<阵列节点的y轴坐标,则在空白左区中以两个接触孔电极分别将周边节点、阵列节点引至另一层金属,在该层金属中采用横线——由下到上的竖线——横线连接两个接触孔电极;
其中竖线与上一对剩余节点连线中的竖线的距离为d2;
当周边节点的y轴坐标=阵列节点的y轴坐标,则在空白左区中以两个接触孔电极分别将周边节点、阵列节点引至另一层金属,在该层金属中采用横线连接两个接触孔电极;
第8步,重复第7步处理所有剩余节点对中的每一对节点;
第9步,采用同样方法将周边上区中的所有节点和缩小阵列的上侧的所有节点完成连线,将周边右区中的所有节点和缩小阵列的右侧的所有节点完成连线,将周边下区中的所有节点和缩小阵列的下侧的所有节点完成连线。
本发明可以快速地实现集成电路版图在缩小实验后的自动连线,将原本需要很长时间的手动布线压缩到几分钟,加快了集成电路芯片流片验证的速度。
经实验发现,一般第一层金属可以完成70%以上的节点对之间的连线,采用第二层金属后可以完成所有节点对之间的连线。
具体实施方式
本发明集成电路版图在缩小实验后自动连线的方法包括如下步骤:
第1步,将缩小后的单元阵列10’简称为缩小阵列10’。
请参阅图1c,将周边电路20划分为上、下、左、右四个区域,分别称为周边左区21、周边上区22、周边右区23、周边下区24。
将缩小阵列10’和周边电路20之间的空白区域30也划分为上、下、左、右四个区域,分别称为空白左区31、空白上区32、空白右区33、空白下区34。
优选地,缩小阵列10’、周边电路20的内外环、空白区域30的内外环在版图上都呈矩形,这些矩形的四个角落的顶点在同一条直线上,将其连线,即划分出周边电路20和空白区域30的上、下、左、右四个区域。
第2步,将周边左区21中的所有节点和缩小阵列10’的左侧的所有节点按照顺序一一配对。
请参阅图2a,在未进行缩小实验时,周边左区21中的各节点(net)与单元阵列10中的各节点相连。
请参阅图2b,在进行缩小实验后,周边左区21中的各节点与缩小阵列10’中的各节点均断开,但两者的数量是相同的,两者的顺序关系也是相同的。
优选地,按照从上到下(或从下到上)的顺序将周边左区21中的每个节点称为W[0]、W[1]、W[2]、……W[n],按照相同顺序将缩小阵列10’的左侧的每个节点称为W’[0]、W’[1]、W’[2]、……W’[n]。节点W[0]和W’[0]配对为第一对节点,节点W[1]和W’[1]配对为第二对节点,……,节点W[n]和W’[n]配对为第n对节点。
每一对节点中,位于周边左区21中的节点称为周边节点,位于缩小阵列10’的左侧的节点称为阵列节点。例如第一对节点中,节点W[0]称为周边节点,节点W’[0]称为阵列节点。
第3步,对于第一对节点W[0]和W’[0]:
请参阅图3a,当周边节点W[0]的y轴坐标>阵列节点W’[0]的y轴坐标,则在空白左区31中采用横线——由上到下的竖线——横线连接这一对节点W[0]和W’[0]。其中竖线与缩小阵列10’的左侧的距离为d1=via+2×space。所述via指接触孔的宽度,space指两根金属线之间的最小间距。
请参阅图3b,当周边节点W[0]的y轴坐标<阵列节点W’[0]的y轴坐标,则在空白左区31中采用横线——由下到上的竖线——横线连接这一对节点W[0]和W’[0]。其中竖线与周边左区21的距离为d1。
设置间距d1的目的是在缩小阵列10’的左侧外、以及周边左区21的右侧外留出可容纳接触孔电极的空间。
当周边节点W[0]的y轴坐标=阵列节点W’[0]的y轴坐标,则在空白左区31中采用横线连接这一对节点W[0]和W’[0]。
第4步,对于下一对节点,例如是第二对节点W[1]和W’[1]:
请参阅图3a,当周边节点W[1]的y轴坐标>阵列节点W’[1]的y轴坐标,则在空白左区31中采用横线——由上到下的竖线——横线连接这一对节点W[1]和W’[1]。所述竖线与上一对节点连线中的竖线的距离为d2=width+space。一般情况下,所述竖线的x轴坐标<上一对节点连线中的竖线的x轴坐标。可是当上一对节点连线中的竖线与周边左区21的间距<d1+d2即不足以安排一根金属连线时,所述竖线设置在与缩小阵列10’的左侧距离为d1的位置。所述width指金属线的宽度。
当周边节点W[1]的y轴坐标<阵列节点W’[1]的y轴坐标,则在空白左区31中采用横线——由上到下的竖线——横线连接这一组节点W[1]和W’[1]。所述竖线与上一对节点连线中的竖线的距离为d2。一般情况下,所述竖线的x轴坐标>上一对节点连线中的竖线的x轴坐标。可是当上一对节点连线中的竖线与缩小阵列10’的左侧的间距<d1+d2即不足以安排一根金属连线时,所述竖线设置在与周边左区21距离为d1的位置。
当周边节点W[1]的y轴坐标=阵列节点W’[1]的y轴坐标,则在空白左区31中采用横线连接这一对节点W[1]和W’[1]。
第5步,重复第4步处理每一对节点;当遇到有无法满足条件的一对或多对节点时,对这一对或多对节点不予连线。例如,有节点对W[x]和W’[x]在无法实现满足第4步要求的连线,则对节点对W[x]和W’[x]不予连线。剩余的未连线的一对或多对节点称为剩余节点对。
第6步,对剩余节点对中的第一对节点,例如为W[x]和W’[x]:
请参阅图4a,当周边节点W[x]的y轴坐标>阵列节点W’[x]的y轴坐标,则在空白左区31中以两个接触孔电极40分别将周边节点W[x]、阵列节点W’[x]引至另一层金属,在该层金属中采用横线——由上到下的竖线——横线连接两个接触孔电极40;其中竖线与缩小阵列10’的左侧的距离为d1;
请参阅图4b,当周边节点W[x]的y轴坐标<阵列节点W’[x]的y轴坐标,则在空白左区中31以两个接触孔电极40分别将周边节点W[x]、阵列节点W’[x]引至另一层金属,在该层金属中采用横线——由下到上的竖线——横线连接两个接触孔电极40;其中竖线与周边左区21的距离为d1;
当周边节点W[x]的y轴坐标=阵列节点W’[x]的y轴坐标,则在空白左区31中以两个接触孔电极40分别将周边节点W[x]、阵列节点W’[x]引至另一层金属,在该层金属中采用横线连接两个接触孔电极40。
第7步,对剩余节点对中的下一对节点,例如为W[y]和W’[y]:
请参阅图4a,当周边节点W[y]的y轴坐标>阵列节点W’[y]的y轴坐标,则在空白左区31中以两个接触孔电极40分别将周边节点W[y]、阵列节点W’[y]引至另一层金属,在该层金属中采用横线——由上到下的竖线——横线连接两个接触孔电极40。其中竖线与上一对剩余节点连线中的竖线的距离为d2。一般情况下,所述竖线的x轴坐标<上一对剩余节点连线中的竖线的x轴坐标。可是当上一对剩余节点连线中的竖线与周边左区21的间距<d1+d2即不足以安排一根金属连线时,所述竖线设置在与缩小阵列10’的左侧距离为d1的位置。
请参阅图4b,当周边节点W[y]的y轴坐标<阵列节点W’[y]的y轴坐标,则在空白左区中31以两个接触孔电极40分别将周边节点W[y]、阵列节点W’[y]引至另一层金属,在该层金属中采用横线——由下到上的竖线——横线连接两个接触孔电极40。其中竖线与上一对剩余节点连线中的竖线的距离为d2。一般情况下,所述竖线的x轴坐标>上一对剩余节点连线中的竖线的x轴坐标。可是当上一对剩余节点连线中的竖线与缩小阵列10’的左侧的间距<d1+d2即不足以安排一根金属连线时,所述竖线设置在与周边左区21距离为d1的位置。
当周边节点W[y]的y轴坐标=阵列节点W’[y]的y轴坐标,则在空白左区31中以两个接触孔电极40分别将周边节点W[y]、阵列节点W’[y]引至另一层金属,在该层金属中采用横线连接两个接触孔电极40。
第8步,重复第7步处理所有剩余节点对中的每一对节点;
第9步,采用同样方法将周边上区中的所有节点和缩小阵列的上侧的所有节点完成连线,将周边右区中的所有节点和缩小阵列的右侧的所有节点完成连线,将周边下区中的所有节点和缩小阵列的下侧的所有节点完成连线。
例如,采用坐标映射的方法,将周边上区中的所有节点映射到周边左区,将缩小阵列的上侧的所有节点映射到缩小阵列的左侧,重复第2步~第8步完成连线,最后将连线坐标反映射回去。假设坐标(x,y)为原始坐标,坐标(x′,y′)为映射后的坐标,则其满足:
x′=cos(90°)*x-sin(90°)*y;
y′=sin(90°)*x+cos(90°)*y;
将周边右区中的所有节点映射到周边左区,将缩小阵列的右侧的所有节点映射到缩小阵列的左侧,其原始坐标(x,y)和映射后的坐标(x′,y′)满足:
x′=cos(180°)*x-sin(180°)*y;
y′=sin(180°)*x+cos(180°)*y;
将周边下区中的所有节点映射到周边左区,将缩小阵列的下侧的所有节点映射到缩小阵列的左侧,其原始坐标(x,y)和映射后的坐标(x′,y′)满足:
x′=cos(270°)*x-sin(270°)*y;
y′=sin(270°)*x+cos(270°)*y。
优选地,所述方法第3~4步中所有节点对的金属连线在同一层上,第6~7步中所有剩余节点对的金属连线在另一层上。这样总共需要两层金属层完成所有节点对之间的连线。
作为一个总的原则,所述方法第4步、第7步中的所有竖线距离缩小阵列10’的左侧的距离≥d1,并且所有竖线距离周边左区21的距离≥d1。这是由于在缩小阵列10’的左侧外、以及周边左区21的右侧外是专门用来设置接触孔电极的,接触孔电极用横向金属线连接,竖线金属线不能进入该区域。
以上仅为本发明的优选实施例,并不用于限定本发明。对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。