|

楼主 |
发表于 2018-2-2 09:43:15
|
显示全部楼层
回复 2# xxelement
pdk中没有找到rule file,网上找到这个,把这个直接当做规则会出错。
cvid=geGetEditCellView();
DummySpace=8.0; dummy to dummy space rule
Shape2Dummy=10.0; Shapes to dummy space rule
metal1_shapes=setof(x,cvid~>shapes,x~>lpp==list("M1" "drawing"));
dummyWidth=15.0; Dummy shape width
dummyHeight=15.0; Dummy shape height
dummypitchX=dummyWidth+DummySpace;
dummypitchY=dummyHeight+DummySpace;
ColNumber=int((rightEdge(cvid~>bBox)-leftEdge(cvid~>bBox)+DummySpace)/dummypitchX);
RowNumber=int((topEdge(cvid~>bBox)-bottomEdge(cvid~>bBox)+DummySpace)/dummypitchY);
dummuList=nil;
x0=leftEdge(cvid~>bBox);
y0=bottomEdge(cvid~>bBox)
for(i 0 RowNumber
for(j 0 ColNumber
dummyId=dbCreateRect(cvid list("M1" "dummy") list(x0+j*dummypitchX:y0+i*dummypitchY x0+j*dummypitchX+dummyWidth:y0+i*dummypitchY+dummyHeight));
dummuList=append1(dummuList,dummyId);
)
)
SizedResult=dbLayerSize(cvid,list("M1" "drawing"),metal1_shapes,Shape2Dummy)
foreach(obj SizedResult
OverlapDummy=dbGetTrueOverlaps(cvid,obj~>bBox,list("M1" "dummy"))
foreach(dmy OverlapDummy
dbDeleteObject(dmy)
)
dbDeleteObject(obj)
) |
|