目前(2011年),在射频IC设计中最广泛使用的片上电感就是平面螺旋电感,通常用最顶层的金属层来实现,电感的中心点由下面一层的金属线引出。它可以有许多形状:方形、六边形、八边形、圆形等。其中,圆形螺旋电感在给定的金属线宽度和电感值下电阻损耗最小,Q值最高,但很多布线工具和生产技术都难以实现。
下面是在virtuoso中绘制圆形电感的方法,本质上是通过增加polygon边数量来实现“拟圆”的。
;--------------------------;Program:ycCreateInd.il;Language:CadenceSkill;Author:YEUNGCHIE;--------------------------procedure(ycCreateInd(cvIdlppradiuswidthspacerings\@optionalvertexLimit(4001)"dgnnnnx")let((pistepstepTotalstepPerRinginitAdeltaAinitRdeltaRpoints1points2);这里确保全部为浮点数radius*=1.0;起始半径width*=1.0;线宽度space*=1.0;线间距rings*=1.0;线圈匝数;获取πdefMathConstants('ycMath)pi=ycMath.PI;边数统计step=0stepTotal=fix2(vertexLimit/2-1)stepPerRing=stepTotal/ringsinitA=0deltaA=360.0/stepPerRinginitR=radiusdeltaR=(width+space)/stepPerRingwhile(step<=stepTotallet((radnewRx1y1x2y2o1o2);角度转弧度rad=pi*(initA+deltaA*step)/180.0initR=radius+deltaR*stepnewR=initR+widthx1=cos(rad)*initRy1=sin(rad)*initRx2=cos(rad)*newRy2=sin(rad)*newRo1=x1:y1o2=x2:y2points1=cons(o1points1)points2=cons(o2points2))step++)foreach(ppoints1points2=cons(ppoints2))dbCreatePolygon(cvIdlpppoints2)));END