SPEF(.spef) 파일이란 무엇인가요?

SPEF(.spef) 파일이란 무엇인가요?
Photo by Trophim Laptev / Unsplash

SPEF(Standard Parasitic Exchange Format)는 layout에서 추출한 기생 R(저항)과 C(용량) 값을 담는 표준 파일입니다. STA tool이 SPEF를 읽어 net delay를 계산하며, timing 분석의 정확도를 결정하는 핵심 입력입니다.

자세한 문법은 IEEE1481을 참고하세요.

SPEF 파일의 구조

*SPEF "IEEE 1481-2009"
*DESIGN "top_design"
*DATE "Mon Mar 23 2026"
*VENDOR "Synopsys"
*PROGRAM "StarRC"
*VERSION "V-2024.06"
*DESIGN_FLOW "NETLIST_TYPE_VERILOG"
*DIVIDER /
*DELIMITER :
*BUS_DELIMITER [ ]
*T_UNIT 1 NS
*C_UNIT 1 PF
*R_UNIT 1 OHM
*L_UNIT 1 HENRY

*NAME_MAP
*1 clk
*2 rst_n
*3 U1/ZN
*4 U2/A
*5 reg_0/D

*PORTS
clk I *C 0.0200
rst_n I *C 0.0150

*D_NET *3 0.0085
*CONN
*P *3:1 *C 0.0005
*I *4:A I *C 0.0012
*I *5:D I *C 0.0011

*CAP
1 *3:1 0.0005
2 *3:2 0.0008
3 *3:3 0.0012
4 *3:3 *7:2 0.0003
5 *3:4 0.0011
6 *4:A 0.0012
7 *5:D 0.0011

*RES
1 *3:1 *3:2 2.50
2 *3:2 *3:3 4.80
3 *3:3 *3:4 3.20
4 *3:4 *4:A 1.50
5 *3:3 *5:D 2.10

*END

*D_NET *1 0.2500
*CONN
*P *1 I
*I reg_0/CK:CK I *C 0.0015
*I reg_1/CK:CK I *C 0.0015
/* ... clock net의 RC 상세 ... */
*END

SPEF의 주요 섹션 설명

Header는 단위 정의(시간, 용량, 저항)와 design 정보를 포함합니다. NAME_MAP은 긴 net 이름을 짧은 번호로 매핑하여 파일 크기를 줄입니다. *3은 실제로 U1/ZN net을 의미합니다.

D_NET은 하나의 net에 대한 parasitic 정보를 담는 블록입니다. *CONN은 net에 연결된 pin들을 나열합니다. *P는 port, *I는 instance pin입니다.

*CAP 섹션에서 4 *3:3 *7:2 0.0003은 coupling capacitance입니다. Net *3의 node 3과 net *7의 node 2 사이에 0.0003pF의 coupling이 있다는 뜻입니다. Coupling capacitance는 crosstalk 분석에 사용됩니다.

*RES 섹션에서 1 *3:1 *3:2 2.50은 node 1에서 node 2까지의 wire resistance가 2.50Ω이라는 뜻입니다.

SPEF의 종류: Reduced vs Detailed

Detailed SPEF는 wire를 여러 RC segment로 나누어 분포 RC(distributed RC)를 기술합니다. 위 예제처럼 여러 node와 resistor로 wire를 모델링합니다. 정확하지만 파일 크기가 큽니다.

Reduced SPEF는 RC network을 간소화하여 node 수를 줄입니다. Pi-model이나 T-model로 근사합니다. 파일 크기가 작고 STA 속도가 빠르지만, 정확도가 약간 떨어집니다.

SPEF 생성 과정

Parasitic extraction tool(StarRC, QRC 등)이 routing된 layout을 분석하여 SPEF를 생성합니다. Metal layer의 geometry, via 위치, 인접 wire 간 간격을 기반으로 R과 C를 계산합니다. RC corner(Cmax, Cmin, RCbest, RCworst 등)에 따라 서로 다른 SPEF를 생성합니다.

STA에서 SPEF 사용

# PrimeTime에서 SPEF 로드
read_parasitics -format spef top_design_rcworst.spef
report_timing -max_paths 10

STA tool은 SPEF의 RC 정보와 Liberty의 cell delay를 결합하여 path delay를 계산합니다. RC corner와 cell timing corner의 적절한 조합이 sign-off 정확도를 결정합니다.

정리

SPEF는 net의 기생 R/C를 표준 format으로 기술합니다. Extraction tool이 생성하고 STA tool이 소비하며, coupling capacitance 정보를 통해 SI 분석도 가능합니다. RC corner별로 별도 SPEF를 생성하여 MCMM 분석에 사용합니다.

Enjoyed this article?

Get deep-dive semiconductor analysis and career insights delivered weekly. Free forever — no paywall, no upsell. Funded by sponsorships with a strict editorial firewall (Editorial Standards).

Work with me

Consulting · Collaboration · Support

Paid 1:1 technical consulting, speaker invitations, collaboration proposals, or just want to say thanks — all welcome.

View options →
VLSI Korea Free forever · No paywall · Weekly semiconductor insights from practicing engineers
Support