설계가 완료된 경우 먼저 DRC Test를 해야 합니다.
DRC(Design Rule Check)란 제조 공정사에서 요구하는 제한 사항에 위반되지 않는지 확인하는 것입니다.
Magic에서는 drc on을 한 경우 자동으로 drc 검사를 해줍니다.
만약 drc error가 난 경우 명령어로 drc why라고 입력하시면 이유를 알려줍니다.
그 다음으로 하는 Test는 설계한 Schematic과 Layout이 동일한지 Netlist를 비교하는 LVS(Layout Versus Schematic)작업입니다.
저희는 이 LVS 작업을 Netgen이라는 툴을 이용하여 할 계획입니다.
Schematic의 Netlist가 없으시면
cd /home/Tutorial_Inverter/1-1_Inverter_Xschem
xschem inverter.sch
에 들어가셔서 Netlist를 눌러주세요
그러면 이제 Layout에서 Netlist를 추출해보겠습니다.

Magic 명령어를 입력하는 창에 다음 코드를 입력해주세요.
inv_flat이라는 파일 이름으로 Flatten 하는 과정
flatten inv_flat
load inv_flat
save
LVS spice 파일을 추출하는 과정
extract all
ext2spice lvs
ext2spice
이제 해당 디렉토리에 spice 파일이 추가됐을 것입니다.
이제 Netgen에 접속해봅시다.
netgen 그대로 입력하면 새로운 창이 나옵니다.

Schematic에서 생성된 spice 파일은
기본적으로 root/.xschem/simulations 폴더 안에 저장되어 있습니다.

netgen에서 LVS를 실행하기 위한 기본 문법은
% lvs <spice_file1.spice> <spice_file2.spice> <tcl_file> 입니다.
맞춰서 해봅시다.
lvs “/home/Tutorial_inverter/1-2_Inverter_Magic/inv_flat.spice /root/.xschem/simulations/inverter.spice /home/pdk/ETRI050_DesignKit/tech/etri050_setup.tcl comp.out
입력하니 Layout 파일을 netgen에서 제대로 인식하지 못하고 있습니다.

한번 생성된 spice 파일에 들어가봅시다.
cd inv_flat.spice
확인해보면 서브 회로로 묶여있습니다.
반면에 Schematic에서 생성된 회로는 주석처리 되어있습니다.
똑같이 주석처리 해줍시다.

해당 파일들은 :q 로 수정 후 저장하고 나가려고 하면 붙잡습니다.
:wq로 확실하게 나가주세요.
다시 netgen에 들어가 LVS를 돌려보겠습니다.
이제는 Circuits match uniquely.라고 뜨는 것을 확인할 수 있습니다.

이는 Xschem으로 설계한 인버터와 Magic으로 설계한 인버터가 일치하다는 것을 의미합니다.
다음 장에서는 마지막으로 포스트 시뮬레이션을 돌려보겠습니다.
'EDA > Open Source Circuit Design Tutorial' 카테고리의 다른 글
| #7 Post-Simulation (0) | 2026.02.04 |
|---|---|
| #5 Magic을 이용한 Inverter Layout 설계 (0) | 2026.02.04 |
| #4 Ngspice를 이용한 Inverter 회로 Simulation (0) | 2026.02.04 |
| #3 Xschem을 이용한 Inverter 설계 (0) | 2026.02.04 |
| #2 오픈 소스 회로 설계 툴 설치 (Magic, Xschem, Ngspice, Netgen) (0) | 2026.02.04 |