SDF(Standard Delay Format)는 gate-level netlist의 cell delay와 net delay를 기술하는 파일입니다. Gate-level simulation에서 timing을 반영하기 위해 사용되며, STA tool이 생성합니다.
자세한 문법은 IEEE1497 문서를 참고하세요.

SDF 파일의 구조
(DELAYFILE
(SDFVERSION "4.0")
(DESIGN "top_design")
(DATE "Mon Mar 23 10:30:00 2026")
(VENDOR "Synopsys")
(PROGRAM "PrimeTime")
(VERSION "V-2024.06")
(DIVIDER /)
(VOLTAGE 0.750::0.750)
(PROCESS "1.000::1.000")
(TEMPERATURE 125.000::125.000)
(TIMESCALE 1ns)
(CELL
(CELLTYPE "NAND2_X1")
(INSTANCE U1)
(DELAY
(ABSOLUTE
(IOPATH A1 ZN (0.046::0.046) (0.038::0.038))
(IOPATH A2 ZN (0.052::0.052) (0.041::0.041))
)
)
)
(CELL
(CELLTYPE "DFFRNQ_X1")
(INSTANCE reg_0)
(DELAY
(ABSOLUTE
(IOPATH CK Q (0.128::0.128) (0.115::0.115))
)
)
(TIMINGCHECK
(SETUP (posedge D) (posedge CK) (0.035::0.035))
(HOLD (posedge D) (posedge CK) (0.012::0.012))
(RECOVERY (posedge RN) (posedge CK) (0.045::0.045))
(REMOVAL (posedge RN) (posedge CK) (0.008::0.008))
)
)
(CELL
(CELLTYPE "")
(INSTANCE U1/ZN)
(DELAY
(ABSOLUTE
(INTERCONNECT U1/ZN reg_0/D (0.015::0.015) (0.014::0.014))
)
)
)
)
SDF의 주요 구성 요소
Header에는 SDF 버전, design 이름, 생성 tool, PVT 조건, timescale이 포함됩니다. IOPATH는 cell의 input pin에서 output pin까지의 delay입니다. (rise_delay::rise_delay) (fall_delay::fall_delay) 형식이며, min:typ:max 세 값을 가질 수 있습니다.
TIMINGCHECK는 flip-flop의 setup, hold, recovery, removal time을 정의합니다. INTERCONNECT는 net delay(wire delay)를 정의합니다. Cell 출력에서 다음 cell 입력까지의 wire RC에 의한 delay입니다.
SDF의 min:typ:max 값
(IOPATH A ZN (0.035:0.046:0.062) (0.028:0.038:0.051))
하나의 SDF에 min, typ, max 세 가지 delay를 모두 담을 수 있습니다. Simulation 시 어떤 값을 사용할지 선택합니다. 보통 setup 검증에는 max delay를, hold 검증에는 min delay를 사용합니다.
SDF를 사용한 Gate-Level Simulation
// Verilog testbench에서 SDF annotation
initial begin
$sdf_annotate("top_design.sdf", top_inst, , , "MAXIMUM");
end
SDF annotation은 netlist의 각 cell instance에 delay를 부여합니다. Simulation 시 모든 gate를 통과하는 신호에 실제 delay가 적용되어, timing violation(setup/hold)을 확인할 수 있습니다. 이를 gate-level timing simulation이라 합니다.
SDF 생성 시점
Post-synthesis SDF는 wire delay를 estimation으로 계산합니다(정확도 낮음). Post-route SDF는 실제 routing 결과의 RC extraction을 반영합니다(정확도 높음). Sign-off simulation에서는 post-route SDF를 사용합니다.
정리
SDF는 cell delay, wire delay, timing check 값을 담는 표준 format입니다. STA tool이 생성하고, gate-level simulation에서 timing을 반영하는 데 사용됩니다. Post-route SDF가 가장 정확하며, sign-off simulation의 필수 입력입니다.