Cadence SKILL language/IC SKILL
[Cadence IC SKILL] IC SKILL 예제 MOS의 좌표(x, y),width, length, finger 를 받아 새로 생성
안산드레아스
2020. 7. 7. 17:35
반응형
아래 코드를 실행
함수 받는 인자
mos_info(x값, y값, width, length, finger) 에 따라 원하는 MOS생성
procedure(mos_info(x y width length finger) ; 인자 5개를 받음
let(()
cv=geGetEditCellView()
;dbCreateRect(cv "pd" list(0.00+x:1.00+y 6.12+x+width:7.80+y+length))
dbCreateRect(cv "m0" list(3.66+x+width:1.10+y 6.02+x+width:7.70+y+length))
dbCreateRect(cv "m0" list(0.10+x:1.10+y 2.46+x:7.70+y+length))
dbCreateRect(cv "cd" list(4.34+x+width:3.90+y 5.34+x+width:4.90+y))
dbCreateRect(cv "cd" list(4.34+x+width:2.00+y 5.34+x+width:3.00+y))
dbCreateRect(cv "cd" list(4.34+x+width:3.90+y 5.34+x+width:4.90+y))
dbCreateRect(cv "cd" list(4.34+x+width:5.80+y 5.34+x+width:6.80+y))
dbCreateRect(cv "cd" list(0.78+x:3.90+y 1.78+x:4.90+y))
dbCreateRect(cv "cd" list(0.78+x:2.00+y 1.78+x:3.00+y))
dbCreateRect(cv "cd" list(0.78+x:3.90+y 1.78+x:4.90+y))
dbCreateRect(cv "cd" list(0.78+x:5.80+y 1.78+x:6.80+y))
dbCreateRect(cv "gc" list(2.56+x:0.00+y 3.56+x+width:8.80+y+length))
gc_width=(3.56+x+width)-(2.56+x)
gc_dist=(6.12+x+width)-(2.56+x)
m0_width = (2.46+x)-(0.10+x)
m0_dist = (3.66+x+width)-(0.10+x)
cd_dist = (5.34+x+width)-(4.34+x+width)
; finger가 2개 이상일 때 실행
cnt = 0
if(finger > 1 then
for(i 1 finger-1
println(i)
dbCreateRect(cv "gc" list((2.56+x)+(gc_dist*i):0.00+y (2.56+x)+(gc_dist*i)+gc_width:8.80+y+length))
dbCreateRect(cv "m0" list((3.66+x+width)+(m0_dist*i):1.10+y (3.66+x+width)+(m0_dist*i)+m0_width:7.70+y+length))
cnt = i
;dbCreateRect(cv "cd" list(5.34+x+width:
);for
dbCreateRect(cv "pd" list(0.00+x:1.00+y (3.66+x+width)+(m0_dist*cnt)+m0_width+0.1:7.70+y+length))
);if
)
반응형
결과
반응형