본문 바로가기
VLSI

SDC (Synopsys Design Constraint)

by 익명의레디 2024. 6. 5.
SDC (Synopsys Design Constraint)

SDC란 VLSI 설계에서 가장 중요한 File 중 하나입니다. 이름에서 알 수 있듯, Synopsys사에서 만든 Format입니다.
Clock에 대한 Constraint를 줍니다. 반도체는 Clock이 0 -> 1, 1 -> 0으로 동작할 때 작동합니다. SDC는 Clock이 어떻게 동작할지 제약을 주는 File입니다.

PPA (Power / Performance / AREA)에서 Performance와 관련이 있습니다. Clock Freq가 빠를수록 고성능인데요. Clock Freq를 SDC에서 지정합니다.

SDC는 각 Mode마다 존재합니다. Func, Scan, Bist 등 DFT Mode에 따른 SDC가 필요합니다.

 

오늘은 자주 쓰이는 SDC 구문에 대해서 설명해 보도록 하겠습니다.


 

create_clock

새로운 Clock을 생성.

ex) create_clock  –name SCLK  –period 10  –waveform { 0 5 } [ get_ports {SCLK}]

"SCLK" Port에서 주기가 10인 "SCLK" 라는 Clock을 정의

 

create_generate_clcok

기존의 Clock에서 새로운 Clock을 분주.

ex) create_generated_clock  –name SCLK_GEN   –source [get_ports {SCLK}]   –divided_by 2  –add  -master_clock [get_clocks {SCLK}] [get_pins {DIV_FF/Q}]

"SCLK"라는 Clock을 DIV_FF의 Q Pin을 통해 "SCLK_GEN"이라는 Clock으로 분주.
-divided_by로 FREQ를 2로 Divide.

set_false_path

지정한 Path에 대해서 Timing을 Check 하지 않음.

set_disable_timing

지정한 Point에 대해 Timing Arc를 끊음.

set_input_delay

Input Port에 연결되는 Path에 Delay 지정

set_output_delay

Output Port에 연결되는 Path에 Delay 지정

set_clock_latency

Clock의 Latency를 지정. (clock 밀고 당기기)

set_ideal_network

지정한 Point에서 Cell까지 Clock을 Ideal 하게 봄

 

참고로 SDC는 Timing과 직접적으로 관련이 되기 때문에 Design 초반부터 SDC가 제대로 됐는지 Check가 필요합니다.
문제가 있다면 Front Engineer와 협의하여 수정이 필요합니다. SDC Check는 필수입니다.

'VLSI' 카테고리의 다른 글

Post Mask ECO?(Metal ECO)  (1) 2024.07.22
LEF와 Tech LEF의 차이? (Cell LEF, Site, Row, Track)  (0) 2024.06.23
Back-End(P&R) Flow  (0) 2024.05.29
Physical Design을 하기 위한 Input File.  (0) 2024.05.27
Physical Cell에 대하여  (0) 2024.05.26