CN105335567A - 适应非曼哈顿形体的随机行走电容参数提取方法及系统 - Google Patents
适应非曼哈顿形体的随机行走电容参数提取方法及系统 Download PDFInfo
- Publication number
- CN105335567A CN105335567A CN201510750922.9A CN201510750922A CN105335567A CN 105335567 A CN105335567 A CN 105335567A CN 201510750922 A CN201510750922 A CN 201510750922A CN 105335567 A CN105335567 A CN 105335567A
- Authority
- CN
- China
- Prior art keywords
- conductor
- cube
- manhattan
- current point
- dist
- 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.)
- Granted
Links
Landscapes
- Mobile Radio Communication Systems (AREA)
- Train Traffic Observation, Control, And Security (AREA)
Abstract
一种适应非曼哈顿形体的随机行走电容参数提取方法及系统通过旋转转移立方体,使得转移立方体与倾斜导体的接触面积显著增大,并且提出安全区域的概念及其计算方法,从而保证旋转的转移立方体不与导体相交。本发明还针对非曼哈顿结构定义了一种新型遮挡关系,并以此为基础设计了便于查询最近导体和计算安全区域大小的空间管理结构。本发明对现有的针对于曼哈顿结构电路的悬浮随机行走算法进行扩展,使其能够应用于包含非曼哈顿结构的电路的电容提取问题。
Description
技术领域
本发明涉及VLSI(VeryLargeScaleIntegratedcircuits,超大规模集成电路)物理设计领域,特别是关于集成电路互连电容参数的提取。
背景技术
集成电路的设计流程中首先要提出功能描述,然后经过逻辑设计、版图设计得到描述半导体工艺尺寸、结构的版图,最后进行版图验证,即通过计算机软件模拟来验证上述设计是否满足要求。若满足要求,则进行下一步的生产制造。否则,若不满足要求,则返回逻辑设计、版图设计进行必要的修正。在版图验证中,一个重要的环节是互连寄生参数提取。
随着集成电路制造技术的发展,电路规模不断增大、特征尺寸不断缩小,当今很多芯片已含有一千万乃至更多个器件。然而,集成电路中互连线的寄生效应造成互连线对电路延时的影响已超过了器件对电路延时的影响。因此,需要对互连线的电容、电阻等参数进行准确的计算,以保证电路模拟与验证的正确有效性。为了提高计算精度,互连线之间的电容参数提取需要使用三维提取方法,即利用三维场求解器进行求解。场求解器的计算往往耗时较多,对其算法的优化与加速研究意义很大。
在集成电路电容参数提取的场求解器方法中,随机行走电容提取算法是一种比较流行的方法。该方法不同于常规的有限差分法、有限元法和边界元法,它无需求解线性方程组,计算中的主要步骤是在空间中随机取点(其得到一系列点的过程被形象地称为“随机行走”)。如图1所示,每次随机行走都从围绕导体的高斯面上开始,然后以当前点为中心构造一个最大、不与导体相交的立方体(称为转移立方体),下一次取点则随机地落在转移立方体的表面,如图1中的S(1)和S(2)。这个过程重复进行,直到随机取点的位置达到导体表面,此时结束一次随机行走。要计算某一导体(例如图1中的导体i)与其他所有导体之间的电容值,需要进行至少上万次的随机行走,而每次随机行走则需多次计算空间一点到它最近导体的距离。
在一般的数字集成电路中,所有导体块和整个三维仿真空间都是长方体,并且它们的任何一条边都平行于x,y,z坐标轴中的某一个,这样的几何结构被称为曼哈顿结构。随机行走算法中使用转移立方体(如图1所示)正是考虑到转移立方体可以与曼哈顿结构导体有较大的接触面。尽管曼哈顿结构导体是数字集成电路中最常见的导体,但是,近年来随着嵌入式设备的快速发展,数字模拟混合集成电路的使用越来越广泛。这样的电路中包含许多非曼哈顿结构的导体,如图2及3所示。这些非曼哈顿结构的导体一般是横截面为不规则多边形的棱柱结构,因此在z坐标轴方向,它们与曼哈顿导体是相似的,但在x和y坐标方向,这些导体并不平行于坐标轴。因此,传统的仅针对曼哈顿结构的随机行走电容提取算法并不适用于包含非曼哈顿结构的集成电路。
发明内容
鉴于以上内容,有必要提供一种适应非曼哈顿形体的随机行走电容参数方法及系统,对现有的针对于曼哈顿结构电路的悬浮随机行走算法进行扩展,使其能够应用于包含非曼哈顿结构的电路的电容提取问题。
一种适应非曼哈顿形体的随机行走电容参数提取方法,运行于计算装置中,用于对集成电路提取互连电容参数,该方法包括:载入步骤,载入预先计算的转移概率表和权重表;建立步骤,根据集成电路中曼哈顿结构导体和非曼哈顿结构导体在空间中的分布情况建立统一的空间管理结构;构建步骤,构建包围主导体j的高斯面,所述高斯面内仅包含主导体,并且不与任何环境导体相交;初始化步骤,将主导体j与每个环境导体之间的耦合电容主导体j的主电容Cjj及随机行走步数npath初始化为0;计算步骤一,计算随机行走步数npath,npath:=npath+1;计算步骤二,在包围主导体j的高斯面上任取一点r(0)为行走起始点,以点r(0)为中心构建一个转移立方体,根据载入的转移概率表在该转移立方体的表面上以相应的转移概率任意取一点r(1)为下一行走点处,根据载入的权重表获取随机行走当前点r(1)处的权值ω(r,r(1)),对权值赋值ω:=ω(r,r(1));判断步骤一,判断当前点r(1)是否在导体上;构造步骤,若当前点r(1)不在导体上,利用空间管理结构查找距离当前点r(1)最近的导体并计算安全距离,然后构造以当前点r(1)为中心,且不与任一个导体相交的转移立方体;计算步骤三,根据载入的转移概率表在所构造的转移立方体上随机取一点,将该随机点赋值给r(1),更新r(1)的值,返回判断步骤一;计算步骤四,若当前点r(1)在导体上,计算主导体j与导体i之间的耦合电容Cji,Cji=Cji+ω;判断步骤二,判断是否满足收敛条件,若不满足收敛条件,返回计算步骤一;及计算步骤五,当满足收敛条件时,计算主导体j与各个环境导体i之间的耦合电容Cji及主导体j的主电容Cjj,其中Cjj:=-Σi≠jCji。
一种适应非曼哈顿形体的随机行走电容参数提取系统,应用于计算装置中,用于对集成电路提取互连电容参数,该系统包括:载入模块,用于载入预先计算的转移概率表和权重表;建立模块,用于根据集成电路中曼哈顿结构导体和非曼哈顿结构导体在空间中的分布情况建立统一的空间管理结构;构建模块,用于构建包围主导体j的高斯面,所述高斯面内仅包含主导体,并且不与任何环境导体相交;初始化模块,用于将主导体j与每个环境导体之间的耦合电容主导体j的主电容Cjj及随机行走步数npath初始化为0;计算模块,用于计算随机行走步数npath,npath:=npath+1;所述计算模块,还用于在包围主导体j的高斯面上任取一点r(0)为行走起始点,以点r(0)为中心构建一个转移立方体,根据载入的转移概率表在该转移立方体的表面上以相应的转移概率任意取一点r(1)为下一行走点处,根据载入的权重表获取随机行走当前点r(1)处的权值ω(r,r(1)),对权值赋值ω:=ω(r,r(1));判断模块,用于判断当前点r(1)是否在导体上;构造模块,用于若当前点r(1)不在导体上,利用空间管理结构查找距离当前点r(1)最近的导体并计算安全距离,然后构造以当前点r(1)为中心,且不与任一个导体相交的转移立方体;所述计算模块,还用于根据载入的转移概率表在所构造的转移立方体上随机取一点,将该随机点赋值给r(1),更新r(1)的值,所述判断模块继续判断当前点r(1)是否在导体上;所述计算模块,还用于若当前点r(1)在导体上,计算主导体j与导体i之间的耦合电容Cji,Cji=Cji+ω;所述判断模块,还用于判断是否满足收敛条件,若不满足收敛条件,所述计算模块继续计算随机行走步数npath,npath:=npath+1;及所述计算模块还用于当满足收敛条件时,计算主导体j与各个环境导体i之间的耦合电容Cji及主导体j的主电容Cjj,其中Cjj:=-Σi≠jCji。
本发明的适应非曼哈顿形体的随机行走电容参数提取方法及系统通过旋转转移立方体,使得转移立方体与倾斜导体的接触面积显著增大,并且提出安全区域的概念及其计算方法,从而保证旋转的转移立方体不与导体相交。本发明还针对非曼哈顿结构定义了一种新型遮挡关系,并以此为基础设计了便于查询最近导体和计算安全区域大小的空间管理结构。通过本发明,对于含有521个导体(其中310个为非曼哈顿导体的)互连结构,悬浮随机行走算法提取中央导线的总电容只需1.7秒,并且计算误差小于1.5%。
附图说明
图1是随机行走电容提取过程的二维示意图。
图2是包含倾斜非曼哈顿导体的电路结构二维示意图。
图3是包含倾斜非曼哈顿导体的电路结构三维示意图。
图4是本发明电容参数提取系统较佳实施例的应用环境示意图。
图5是本发明电容参数提取系统较佳实施例的功能模块图。
图6是本发明电容参数提取方法较佳实施例的流程图。
图7是本发明步骤S608细化流程图。
图8是与非曼哈顿导体接触的曼哈顿转移立方体,旋转的转移立方体和安全区域的示意图。
主要元件符号说明
计算装置 | 1 |
适应非曼哈顿形体的随机行走电容参数提取系统 | 10 |
存储设备 | 11 |
处理设备 | 12 |
载入模块 | 100 |
建立模块 | 101 |
构建模块 | 102 |
初始化模块 | 103 |
计算模块 | 104 |
判断模块 | 105 |
构造模块 | 106 |
转移模块 | 107 |
如下具体实施方式将结合上述附图进一步说明本发明。
具体实施方式
本发明提出的适应非曼哈顿形体的随机行走电容参数提取方法,结合附图及实施例详细说明如下。
参阅图4所示,是本发明适应非曼哈顿形体的随机行走电容参数提取系统较佳实施例的应用环境示意图。所述适应非曼哈顿形体的随机行走电容参数提取系统10运行于计算装置1中。该计算装置1还包括存储设备11及处理设备12。所述存储设备11存储集成电路版图,适应非曼哈顿形体的随机行走电容参数提取系统10的程序代码及运行过程中所需的数据。所述集成电路版图描述集成电路的导体(包括主导体与环境导体)在空间的分布情况。所述处理设备12包括CPU(CentralProcessingUnit,中央处理器)及GPU(GraphicProcessingUnit,图形处理器)等。
所述存储设备11还存储预先建立的格林函数库和权值向量。所述格林函数库描述随机行走过程中转移区域的转移概率分布,所述权值向量存储行走起始点对应的权值。所述格林函数库可以描述单一介质转移区域的转移概率分布,用于提取单一介质条件下集成电路电容参数。所述格林函数库还可以描述多层介质转移区域的转移概率分布,用于提取多层介质条件下集成电路电容参数。所述处理设备12执行适应非曼哈顿形体的随机行走电容参数提取系统10的程序代码,以快速计算集成电路中主导体与每个环境导体之间电容参数。
如图5所示,所述随机行走电容参数提取系统10由一个或者多个模块构成,所述模块还包括载入模块100、建立模块101、构建模块102、初始化模块103、计算模块104、判断模块105、构造模块106及转移模块107,所述模块的功能将在后续中详述。
参阅图6所示,是本发明适应非曼哈顿形体的随机行走电容参数提取方法较佳实施例的流程图。
步骤S601,载入模块100载入预先计算的转移概率表和权重表。
步骤S602,建立模块101根据集成电路中曼哈顿结构导体和非曼哈顿结构导体在空间中的分布情况建立统一的空间管理结构。
在本实施例中,在建立空间管理结构的过程中,在判断一个导体Q是否是一个空间单元T的候选导体时,检查空间单元T内导体与导体Q之间是否有遮挡关系。空间单元T的候选导体不包括被空间单元T内某个导体遮挡的导体Q。即当有空间单元T内有某个导体遮挡了导体Q,则导体Q不是空间单元T的候选导体,不加入空间管理结构。
对于空间单元T而言,如果T内任意点q到导体A的距离与T内任意点q到导体B的距离满足t·dist(q,IA)≤dist(q,BB),则称A遮挡B。(其中当A为曼哈顿导体时t=1,A为非曼哈顿导体时t=2,IA表示A的内接曼哈顿长方体,BB表示B的外接曼哈顿长方体)。其中dist(q,IA)表示q与IA的距离,dist(q,BB)表示q与BB的距离,具体判断过程如下:
(a1)当A为曼哈顿导体时,设置t=1,否则设置t=2;
(a2)计算dA=dist(T,IA)和dB=dist(T,BB);dA=dist(T,IA)表示空间单元T
与IA的距离,dB=dist(T,BB)空间单元T与BB的距离。
(a3)如果t·dc>dB,则A不遮挡B,结束;
(a4)对于x,y,z每个方向(记为w),依次执行:
i)如果则A不遮挡B,结束;
ii)如果则A不遮挡B,结束;
(a5)A遮挡B,结束。
其中和分别表示T在w方向上最小和最大的坐标值。和分别表示A在w方向上最小和最大的坐标值。和分别表示B在w方向上最小和最大的坐标值。
在本实施例中,得到一个空间单元T的所有候选导体后,将所有候选导体按到该空间单元T的距离由小到大进行排序,形成候选导体列表。
步骤S603,构建模块102构建包围主导体j的高斯面,所述高斯面内仅包含主导体,并且不与任何环境导体相交。
步骤S604,初始化模块103将主导体j与每个环境导体之间的耦合电容主导体j的主电容Cjj及随机行走步数npath初始化为0。
步骤S605,计算模块104计算随机行走步数npath,npath:=npath+1。
步骤S606,计算模块104在包围主导体j的高斯面上任取一点r(0)为行走起始点,以点r(0)为中心构建一个转移立方体,根据载入的转移概率表在该转移立方体的表面上以相应的转移概率任意取一点r(1)为下一行走点处,根据载入的权重表获取随机行走当前点r(1)处的权值ω(r,r(1)),对权值赋值ω:=ω(r,r(1))。
步骤S607,判断模块105判断当前点r(1)是否在导体上。若当前点r(1)不在导体上,执行步骤S608;若当前点r(1)在导体上,执行步骤S610。
步骤S608,构造模块106利用空间管理结构查找距离当前点r(1)最近的导体并计算安全距离,然后构造以当前点r(1)为中心,且不与任一个导体相交的转移立方体。
步骤S609,计算模块104根据载入的转移概率表在所构造的转移立方体上随机取一点,将该随机点赋值给r(1),更新r(1)的值,返回步骤S607。
步骤S610,计算模块104计算主导体j与导体i之间的耦合电容Cji,Cji=Cji+ω。
步骤S611,判断模块105判断是否满足收敛条件。若不满足收敛条件,返回步骤S605。在本实施例中,所述收敛条件是指定的电容提取的精度;若满足收敛条件,执行步骤S612
步骤S612,计算模块104计算主导体j与各个环境导体i之间的耦合电容Cji及主导体j的主电容Cjj,其中Cjj:=-∑i≠jCji。
在本较佳实施例中,图7是步骤S608细化的具体流程图。
在电路中包含非曼哈顿导体的情形下,以当前点p(为了表述的方便,p即为当前点r(1))为中心构造转移立方体的具体过程如下:
步骤S701,构造模块106以当前点p作为查询点,在空间管理结构中查找距离当前点p最近的导体N,最近距离d及安全区域半边长s。所述安全区域是一个以当前点p为中心的曼哈顿立方体,并且只与至多一个导体(即距离当前点最近的导体)相交。所述最近距离d是当前点与最近的导体N的距离。
在本较佳实施例中,步骤S701的具体过程如下:
(b1)初始化最近的导体N为空集,最近距离d及安全区域半边长
s=d,最近距离d的初始值为无穷大。
(b2)对空间单元T的候选导体列表中的每个导体C依次执行:
i)若dist(C,T)≥s,则转到步骤b3);其中dist(C,T)表示导体C与空间单元T的距离。在本较佳实施例中,若记空间单元T是以中心为c,半边长为r的立方体单元,则dist(C,T)=dist(c,C)-r,其中dist(c,C)表示中心c与导体C的距离。
ii)计算当前点p与导体C的距离a=dist(p,C);
iii)如果a<d则更新N=C,s=d,d=a。否则,如果a<s则更新s=a;
(b3)N即为最近的导体,d为最近距离及s为安全区域半边长。
步骤S702:构造模块106构造以当前点p为中心,d为半边长的曼哈顿立方体CN作为候选转移立方体。
步骤S703,构造模块106判断最近的导体N是否为曼哈顿导体。当最近的导体N为曼哈顿导体,执行步骤S708,转移模块107使用曼哈顿立方体CN作为转移立方体进行转移,该流程结束。当最近的导体N不为曼哈顿导体时,执行步骤S704。
步骤S704,构造模块106计算当前点p到最近的导体N的旋转距离r=distr(p,N)和旋转角度θ,构造以当前点p为中心,r为半边长,旋转θ的立方体RN作为候选转移立方体。
在本较佳实施例中,采取一种三维空间内计算点到棱柱的距离,并将该距离作为旋转的转移立方体的半边长的策略。步骤S704的具体过程如下:
(c1)用x,y,z三个坐标来表示三维点,当前点记为p=(xp,yp,zp),使用x和y坐标来表示二维点,记为q=(xq,yq),使用n个二维顶点来表示一个与xoy面平行的多边形,记为P=(p1,p2,…,pn),使用所述多边形,以及棱柱的顶面z坐标zt和棱柱的底面z坐标zb来表示棱柱,棱柱记为V=(P,zt,zb)。所述最近的导体N用所述棱柱V表示。
(c2)计算p与V的垂直距离:distz(p,V)=max(zp-zt,zb-zp);
(c3)计算p与V的水平曼哈顿距离:
(c4)计算p与V的水平旋转距离:
(c5)当前点p到所述最近的导体N的旋转距离r=distr(p,N)即为distr(p,V),构造以当前点p为中心,r为半边长,旋转θ的立方体RN作为候选转移立方体。
步骤S705,计算模块104根据安全区域半边长s计算安全区域S。
步骤S706,构造模块106判断立方体RN是否比曼哈顿立方体CN大,且立方体RN完全在安全区域S内。
在本较佳实施例中,计算当前点p与所述棱柱V的距离:dist(p,V)=max(disth(p,V),distz(p,V))。对于当前点p,若其最近的导体N是非曼哈顿导体,且其安全区域的半边长为s,则仅当dist(p,V)<distr(p,V)≤s/(|cos(θ)|+|sin(θ)|)成立时,使用立方体RN作为转移立方体进行转移,如图8所示。
当立方体RN比曼哈顿立方体CN大且立方体RN完全在安全区域S内时,执行步骤S707。当立方体RN不大于曼哈顿立方体CN时或者立方体RN不完全在安全区域S内时,执行步骤S708,使用曼哈顿立方体CN作为转移立方体进行转移,该流程结束。
步骤S707,转移模块107使用立方体RN作为转移立方体进行转移,该流程结束。
本发明提出一种面向非曼哈顿结构导体的转移立方体和空间数据管理结构,从而对现有的针对于曼哈顿结构电路的悬浮随机行走算法进行扩展,使其能够应用于包含非曼哈顿结构的电路的电容提取问题。本发明通过旋转转移立方体,使得转移立方体与倾斜导体的接触面积显著增大,并且提出安全区域的概念,从而保证旋转的转移立方体不与导体相交。本发明还针对非曼哈顿结构定义了遮挡关系,并以此为基础设计了能够同时查询转移立方体和安全区域的空间管理结构。通过本发明,对于含有521个导体(其中310个为非曼哈顿导体的)互连结构,悬浮随机行走算法提取中央导线的总电容只需1.7秒,并且计算误差小于1.5%。
Claims (10)
1.一种适应非曼哈顿形体的随机行走电容参数提取方法,运行于计算装置中,用于对集成电路提取互连电容参数,其特征在于,该方法包括:
载入步骤,载入预先计算的转移概率表和权重表;
建立步骤,根据集成电路中曼哈顿结构导体和非曼哈顿结构导体在空间中的分布情况建立统一的空间管理结构;
构建步骤,构建包围主导体j的高斯面,所述高斯面内仅包含主导体,并且不与任何环境导体相交;
初始化步骤,将主导体j与每个环境导体之间的耦合电容主导体j的主电容Cjj及随机行走步数npath初始化为0;
计算步骤一,计算随机行走步数npath,npath:=npath+1;
计算步骤二,在包围主导体j的高斯面上任取一点r(0)为行走起始点,以点r(0)为中心构建一个转移立方体,根据载入的转移概率表在该转移立方体的表面上以相应的转移概率任意取一点r(1)为下一行走点处,根据载入的权重表获取随机行走当前点r(1)处的权值ω(r,r(1)),对权值赋值ω:=ω(r,r(1));
判断步骤一,判断当前点r(1)是否在导体上;
构造步骤,若当前点r(1)不在导体上,利用空间管理结构查找距离当前点r(1)最近的导体并计算安全距离,然后构造以当前点r(1)为中心,且不与任一个导体相交的转移立方体;
计算步骤三,根据载入的转移概率表在所构造的转移立方体上随机取一点,将该随机点赋值给r(1),更新r(1)的值,返回判断步骤一;
计算步骤四,若当前点r(1)在导体上,计算主导体j与导体i之间的耦合电容Cji,Cji=Cji+ω;
判断步骤二,判断是否满足收敛条件,若不满足收敛条件,返回计算步骤一;及
计算步骤五,当满足收敛条件时,计算主导体j与各个环境导体i之间的耦合电容Cji及主导体j的主电容Cjj,其中Cjj:=-∑i≠jCji。
2.如权利要求1所述的适应非曼哈顿形体的随机行走提取方法,其特征在于,在建立空间管理结构的过程中,空间单元T的候选导体不包括被空间单元T内某个导体遮挡的导体。
3.如权利要求1所述的适应非曼哈顿形体的随机行走提取方法,其特征在于,所述构造步骤包括:
构造子步骤一,用当前点p表示当前点r(1),以当前点p作为查询点,在空间管理结构中查找距离当前点p最近的导体N,最近距离d及安全区域半边长s,所述安全区域是一个以当前点p为中心的曼哈顿立方体,并且只与至多一个导体相交;
构造子步骤二,构造以当前点p为中心,d为半边长的曼哈顿立方体CN作为候选转移立方体;
构造子步骤三,当最近的导体N不为曼哈顿导体时,计算当前点p到最近的导体N的旋转距离r=distr(p,N)和旋转角度θ,构造以当前点p为中心,r为半边长,旋转θ的立方体RN作为候选转移立方体;
构造子步骤四,根据安全区域半边长s计算安全区域S;
构造子步骤五,当立方体RN比曼哈顿立方体CN大且立方体RN完全在安全区域S内时,使用立方体RN作为转移立方体进行转移;及
构造子步骤六,当立方体RN不大于曼哈顿立方体CN时或者立方体RN不完全在安全区域S内或者最近的导体N为曼哈顿导体时,使用曼哈顿立方体CN作为转移立方体进行转移。
4.如权利要求2所述的适应非曼哈顿形体的随机行走提取方法,其特征在于,对于空间单元T而言,如果T内任意点q到导体A的距离与T内任意点q到导体B的距离满足t·dist(q,IA)≤dist(q,BB),则称A遮挡B,其中当A为曼哈顿导体时t=1,A为非曼哈顿导体时t=2,IA表示A的内接曼哈顿长方体,BB表示B的外接曼哈顿长方体,其中dist(q,IA)表示q与IA的距离,dist(q,BB)表示q与BB的距离。
5.如权利要求3所述的适应非曼哈顿形体的随机行走提取方法,其特征在于,所述构造子步骤一还包括:
(b1)初始化最近的导体N为空集,最近距离d及安全区域半边长s=d,最近距离d的初始值为无穷大;
(b2)对空间单元T的候选导体列表中的每个导体C依次执行:
i)若dist(C,T)≥s,则转到步骤b3;其中dist(C,T)表示导体C与空间单元T的距离,若记空间单元T是以中心为c,半边长为r的立方体单元,则dist(C,T)=dist(c,C)-r,其中dist(c,C)表示中心c与导体C的距离;
ii)计算当前点p与导体C的距离a=dist(p,C);
iii)如果a<d则更新N=C,s=d,d=a。否则,如果a<s则更新s=a;
(b3)N即为最近的导体,d为最近距离及s为安全区域半边长。
6.如权利要求3所述的适应非曼哈顿形体的随机行走提取方法,其特征在于,所述构造子步骤三还包括:
(c1)用x,y,z三个坐标来表示三维点,当前点记为p=(xp,yp,zp),使用x和y坐标来表示二维点,记为q=(xq,yq),使用n个二维顶点来表示一个与xoy面平行的多边形,记为P=(p1,p2,…,pn),使用所述多边形,以及棱柱的顶面z坐标zt和棱柱的底面z坐标zb来表示棱柱,棱柱记为V=(P,zt,zb),所述最近的导体N用所述棱柱V表示;
(c2)计算p与V的垂直距离:distz(p,V)=max(zp-zt,zb-zp);
(c3)计算p与V的水平曼哈顿距离 其中BP表示P的外接曼哈顿长方体,dist(p,BP)表示p到BP的距离,||v||1和||v||2分别表示向量v的1-范数长度和2-范数长度;
(c4)计算p与V的水平旋转距离 当distr(p,V)=dist(p,BP))时旋转角度θ=0,当 时,旋转角度 及
(c5)当前点p到所述最近的导体N的旋转距离r=distr(p,N)即为distr(p,V),构造以当前点p为中心,r为半边长,旋转θ的立方体RN作为候选转移立方体。
7.如权利要求6所述的适应非曼哈顿形体的随机行走提取方法,其特征在于,计算当前点p与所述棱柱V的距离:dist(p,V)=max(disth(p,V),distz(p,V)),对于当前点p,若其最近的导体N是非曼哈顿导体,且其安全区域的半边长为s,则仅当dist(p,V)<distr(p,V)≤s/(|cos(θ)|+|sin(θ)|)成立时,使用立方体RN作为转移立方体进行转移。
8.一种适应非曼哈顿形体的随机行走电容参数提取系统,应用于计算装置中,用于对集成电路提取互连电容参数,其特征在于,该系统包括:
载入模块,用于载入预先计算的转移概率表和权重表;
建立模块,用于根据集成电路中曼哈顿结构导体和非曼哈顿结构导体在空间中的分布情况建立统一的空间管理结构;
构建模块,用于构建包围主导体j的高斯面,所述高斯面内仅包含主导体,并且不与任何环境导体相交;
初始化模块,用于将主导体j与每个环境导体之间的耦合电容主导体j的主电容Cjj及随机行走步数npath初始化为0;
计算模块,用于计算随机行走步数npath,npath:=npath+1;
所述计算模块,还用于在包围主导体j的高斯面上任取一点r(0)为行走起始点,以点r(0)为中心构建一个转移立方体,根据载入的转移概率表在该转移立方体的表面上以相应的转移概率任意取一点r(1)为下一行走点处,根据载入的权重表获取随机行走当前点r(1)处的权值ω(r,r(1)),对权值赋值ω:=ω(r,r(1));
判断模块,用于判断当前点r(1)是否在导体上;
构造模块,用于若当前点r(1)不在导体上,利用空间管理结构查找距离当前点r(1)最近的导体并计算安全距离,然后构造以当前点r(1)为中心,且不与任一个导体相交的转移立方体;
所述计算模块,还用于根据载入的转移概率表在所构造的转移立方体上随机取一点,将该随机点赋值给r(1),更新r(1)的值,所述判断模块继续判断当前点r(1)是否在导体上;
所述计算模块,还用于若当前点r(1)在导体上,计算主导体j与导体i之间的耦合电容Cji,Cji=Cji+ω;
所述判断模块,还用于判断是否满足收敛条件,若不满足收敛条件,所述计算模块继续计算随机行走步数npath,npath:=npath+1;及
所述计算模块,还用于当满足收敛条件时,计算主导体j与各个环境导体i之间的耦合电容Cji及主导体j的主电容Cjj,其中 Cjj:=-∑i≠jCji。
9.如权利要求8所述的适应非曼哈顿形体的随机行走提取系统,其特征在于,在建立空间管理结构的过程中,空间单元T的候选导体不包括被空间单元T内某个导体遮挡的导体。
10.如权利要求8所述的适应非曼哈顿形体的随机行走提取系统,其特征在于,所述构造模块包括:
构造子模块一,用于用当前点p表示当前点r(1),以当前点p作为查询点,在空间管理结构中查找距离当前点p最近的导体N,最近距离d及安全区域半边长s,所述安全区域是一个以当前点p为中心的曼哈顿立方体,并且只与至多一个导体相交;
构造子模块二,用于构造以当前点p为中心,d为半边长的曼哈顿立方体CN作为候选转移立方体;
构造子模块三,用于当最近的导体N不为曼哈顿导体时,计算当前点p到最近的导体N的旋转距离r=distr(p,N)和旋转角度θ,构造以当前点p为中心,r为半边长,旋转θ的立方体RN作为候选转移立方体;
构造子模块四,用于根据安全区域半边长s计算安全区域S;
构造子模块五,用于当立方体RN比曼哈顿立方体CN大且立方体RN完全在安全区域S内时,使用立方体RN作为转移立方体进行转移;及
构造子模块六,用于当立方体RN不大于曼哈顿立方体CN时或者立方体RN不完全在安全区域S内或者最近的导体N为曼哈顿导体时,使用曼哈顿立方体CN作为转移立方体进行转移。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510750922.9A CN105335567B (zh) | 2015-11-05 | 2015-11-05 | 适应非曼哈顿形体的随机行走电容参数提取方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510750922.9A CN105335567B (zh) | 2015-11-05 | 2015-11-05 | 适应非曼哈顿形体的随机行走电容参数提取方法及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN105335567A true CN105335567A (zh) | 2016-02-17 |
CN105335567B CN105335567B (zh) | 2018-08-03 |
Family
ID=55286091
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510750922.9A Active CN105335567B (zh) | 2015-11-05 | 2015-11-05 | 适应非曼哈顿形体的随机行走电容参数提取方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN105335567B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107844674A (zh) * | 2017-12-18 | 2018-03-27 | 清华大学 | 处理悬浮导体的随机行走电容参数提取方法 |
Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103150455A (zh) * | 2013-03-29 | 2013-06-12 | 中国科学院微电子研究所 | 相邻连线间的寄生电容参数估算方法和电路优化方法 |
CN103198177A (zh) * | 2013-03-11 | 2013-07-10 | 清华大学 | 基于gpu的集成电路电容参数提取系统及方法 |
CN103473402A (zh) * | 2013-08-30 | 2013-12-25 | 清华大学 | 面向集成电路互连电容参数提取的空间管理数据生成方法 |
CN103793557A (zh) * | 2014-01-14 | 2014-05-14 | 清华大学 | 面向集成电路互连电容提取的线网高斯面采样方法及系统 |
CN103810317A (zh) * | 2012-11-15 | 2014-05-21 | 台湾积体电路制造股份有限公司 | 基于图案重复使用的寄生提取的图案匹配 |
JP2014130513A (ja) * | 2012-12-28 | 2014-07-10 | Fujitsu Semiconductor Ltd | 電流モデル作成方法及びcad装置 |
CN104008255A (zh) * | 2014-06-13 | 2014-08-27 | 清华大学 | 面向集成电路电容提取的多介质随机行走计算方法及系统 |
US20140310675A1 (en) * | 2013-03-12 | 2014-10-16 | Taiwan Semiconductor Manufacturing Company, Ltd. | Methods and Apparatus for RC Extraction |
US8904314B1 (en) * | 2013-08-05 | 2014-12-02 | Taiwan Semiconductor Manufacturing Company Limited | RC extraction for multiple patterning layout design |
-
2015
- 2015-11-05 CN CN201510750922.9A patent/CN105335567B/zh active Active
Patent Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103810317A (zh) * | 2012-11-15 | 2014-05-21 | 台湾积体电路制造股份有限公司 | 基于图案重复使用的寄生提取的图案匹配 |
JP2014130513A (ja) * | 2012-12-28 | 2014-07-10 | Fujitsu Semiconductor Ltd | 電流モデル作成方法及びcad装置 |
CN103198177A (zh) * | 2013-03-11 | 2013-07-10 | 清华大学 | 基于gpu的集成电路电容参数提取系统及方法 |
US20140310675A1 (en) * | 2013-03-12 | 2014-10-16 | Taiwan Semiconductor Manufacturing Company, Ltd. | Methods and Apparatus for RC Extraction |
CN103150455A (zh) * | 2013-03-29 | 2013-06-12 | 中国科学院微电子研究所 | 相邻连线间的寄生电容参数估算方法和电路优化方法 |
US8904314B1 (en) * | 2013-08-05 | 2014-12-02 | Taiwan Semiconductor Manufacturing Company Limited | RC extraction for multiple patterning layout design |
CN103473402A (zh) * | 2013-08-30 | 2013-12-25 | 清华大学 | 面向集成电路互连电容参数提取的空间管理数据生成方法 |
CN103793557A (zh) * | 2014-01-14 | 2014-05-14 | 清华大学 | 面向集成电路互连电容提取的线网高斯面采样方法及系统 |
CN104008255A (zh) * | 2014-06-13 | 2014-08-27 | 清华大学 | 面向集成电路电容提取的多介质随机行走计算方法及系统 |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107844674A (zh) * | 2017-12-18 | 2018-03-27 | 清华大学 | 处理悬浮导体的随机行走电容参数提取方法 |
WO2019119759A1 (zh) * | 2017-12-18 | 2019-06-27 | 清华大学 | 处理悬浮导体的随机行走电容参数提取方法 |
CN107844674B (zh) * | 2017-12-18 | 2019-06-28 | 清华大学 | 处理悬浮导体的随机行走电容参数提取方法 |
Also Published As
Publication number | Publication date |
---|---|
CN105335567B (zh) | 2018-08-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102651047B (zh) | 集成电路设计中基于随机行走的电容参数提取计算方法 | |
CN104008255B (zh) | 面向集成电路电容提取的多介质随机行走方法及系统 | |
CN103198177B (zh) | 基于gpu的集成电路电容参数提取系统及方法 | |
US8099706B2 (en) | Software product for semiconductor device design | |
CN102314531B (zh) | 集成电路版图自动构造层次方法 | |
TW201802712A (zh) | 用於積體電路設計之方法 | |
CN103793557B (zh) | 面向集成电路互连电容提取的线网高斯面采样方法及系统 | |
US9330215B2 (en) | Method and system for verifying the design of an integrated circuit having multiple tiers | |
US9785734B2 (en) | Method and system for adjusting a circuit symbol | |
CN103810317A (zh) | 基于图案重复使用的寄生提取的图案匹配 | |
CN103745498A (zh) | 一种基于图像的快速定位方法 | |
CN102495917A (zh) | 耦合互连线的静态时序分析的优化 | |
CN103473402A (zh) | 面向集成电路互连电容参数提取的空间管理数据生成方法 | |
CN107194117A (zh) | 一种蝶形触发器物理不可克隆函数的可靠性提升方法 | |
WO2019119759A1 (zh) | 处理悬浮导体的随机行走电容参数提取方法 | |
CN105184786A (zh) | 一种浮点型三角形特征描述方法 | |
CN105205865B (zh) | 一种适用于岩体的建模方法 | |
CN116917889A (zh) | 一种寄生电阻电容参数提取方法及装置 | |
CN105335567A (zh) | 适应非曼哈顿形体的随机行走电容参数提取方法及系统 | |
US9064081B1 (en) | Generating database for cells routable in pin layer | |
CN105095567B (zh) | 电容参数提取方法 | |
CN103793561A (zh) | 用于芯片热分析的混合随机行走方法 | |
CN105224748A (zh) | 一种变截面梁有限元模型的断面预处理方法 | |
CN107679305A (zh) | 路网模型创建方法及装置 | |
CN104850820A (zh) | 一种脸部识别方法及装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant |