v0.7 릴리즈 노트
주요 내용
v0.7에서는 pya-native 분석 workflow를 제한된 service memory 안에서 더 쉽게 실행하고 layout viewer에서 더 편리하게 검토할 수 있도록 개선했습니다.
v0.6의 integer-DBU geometry engine은 canonical geometry 경로로 유지합니다. 이번 release는 해당 engine을 기반으로 review output 구성과 service 실행 방식을 개선하는 데 집중했습니다.
통합 Review GDS
Service는 원본 layout을 보존하고 high-numbered review layer에 분석 overlay를 추가한 하나의 통합 review GDS를 생성합니다.
| 내용 | Layer / datatype |
|---|---|
| Width violation component | 10001/0 |
| Space violation component | 10002/0 |
| Threshold 0.20 contour | 10020/1, 10020/2, … |
| Threshold 0.30 contour | 10030/1, 10030/2, … |
| Threshold 0.40 contour | 10040/1, 10040/2, … |
| Inner ROI outline | 10050/1, 10050/2, … |
Datatype은 ROI candidate를 식별합니다. 작은 layout에서 여러 candidate window가 겹치더라도 서로 다른 marker 위치와 ambit window에서 생성한 contour를 분리할 수 있습니다.
Bounded-Memory Abbe Imaging
Service는 각 coherent source contribution을 final aerial image에 바로 누적하고, 다음 source point를 처리하기 전에 intermediate array를 해제합니다.
Experiment 및 debug에서는 각 source의 pupil, filtered spectrum, field, intensity를 모두 저장하는 명시적 옵션을 유지합니다. 두 mode의 numerical accumulation order는 같습니다.
로컬 320 x 320 dense7 비교 결과는 다음과 같습니다.
| Mode | 저장된 source result | 추적된 peak allocation |
|---|---|---|
| Service streaming | 0 | 16.54 MiB |
| Debug retention | 29 | 164.22 MiB |
비교에서 aerial-image checksum은 동일했습니다. 이 수치는 로컬 Python allocation 측정값이며 일반 hosting 보장이나 전체 process RSS 측정값은 아닙니다.
Resource Limit 변경
pya-native 경로와 legacy gdstk 경로는 서로 다른 marker limit을 사용합니다.
- pya-native: request당 raw edge pair 12,000개
- legacy gdstk: request당 생성된 raw marker polygon 5,000개
이 구분은 기존 gdstk safety boundary를 보존하면서 최적화된 pya-native 경로가 공개 tt04_pwm.gds 예제의 layer/datatype 67/20을 분석할 수 있게 합니다.
로컬 validation 사례에서는 raw pya-native edge pair 10,814개와 merged violation component 6,281개가 생성됐습니다. 0.01 um와 ROI candidate 5개 조건에서 전체 service 분석은 개발 환경 기준 약 13.2초가 걸렸습니다.
Pages 결과 갱신
Home과 Demo는 현재 service 경로로 생성하고 Render result interface와 동일한 순서로 구성한 결과 세트를 사용합니다. 설명용 Demo process-flow 이미지는 그대로 유지합니다.
공개 snapshot 조건은 다음과 같습니다.
sky130_fd_sc_hd_dfrtp_1.gds, layer/datatype67/20- 엄격한
< 0.175 umwidth/space screening 2.56 umROI size 및0.01 umpixel- width/space를 교대로 선택한 ROI candidate 5개
- KrF 248 nm, NA 0.68, sigma 0.60, dense7 imaging
로컬 workstation의 갱신 run은 3.68초가 걸렸으며 width component 27개, space component 34개, 근사 minimum printed width 0.169 um, 근사 minimum printed space 0.174 um를 보고했습니다. Runtime은 환경마다 달라질 수 있으며 공개 대상은 결과 수치와 이미지입니다.
TinyTapeout 입력도 더 엄격한 screening threshold로 다시 실행했습니다. 첫 5개 candidate는 동일한 0.170 um geometry candidate로 유지됐으므로, threshold를 줄이면 전체 component 수는 감소하지만 더 대표적인 weak optical result가 생성되지는 않았습니다.
| 로컬 비교 | ROI | Raster | 근사 width / space |
|---|---|---|---|
tt04_pwm.gds, < 0.175 um |
2.56 um | 320 x 320 | 0.259 / 0.197 um |
tt04_pwm.gds, < 0.175 um |
5.00 um | 564 x 564 | 0.254 / 0.194 um |
sky130_fd_sc_hd_dfrtp_1.gds, < 0.175 um |
2.56 um | 320 x 320 | 0.169 / 0.174 um |
5.00 um TinyTapeout 비교는 public service limit보다 큰 local raster-axis allowance를 사용했습니다. 주변 context는 더 넓지만 Home과 Demo의 weak-pattern 예제로는 sky130 결과가 더 명확합니다.
이전에 직접 주석을 표시한 Home 이미지와 대표 dense11 ROI 이미지 네 장은 v0.4 이미지 모음에 보존했습니다.
검증
sky130_fd_sc_hd_dfrtp_1.gds로 candidate별 contour datatype을 확인했습니다.tt04_pwm.gdslayer/datatype67/20을0.01 um에서 확인했습니다.- 현재 Render-aligned service 경로로 Pages 이미지 세트를 다시 생성했습니다.
- Streaming mode와 retained mode에서 같은 aerial image가 생성되는 것을 확인했습니다.
- GeoSignal application 저장소의 자동화 test 41개를 모두 통과했습니다.
현재 한계
해석 범위는 이전과 동일합니다.
- 결과는 정성적 지표입니다.
- Optical model은 단순화돼 있습니다.
- Wafer-data calibration, resist, etch model은 포함하지 않습니다.
- Printed metric은 근사 contour 기반 지표입니다.
- EPE는 현재 범위에 포함되지 않습니다.