Files
OpenSTA/sdc/test/sdc_derate1.sdcok
Jaehyun Kim b6d598a119 test: strengthen assertions, add sorted SDC diff, and clean up tests
- Add diff_files_sorted to test/helpers.tcl for hash-order-independent
  SDC comparison (fixes non-deterministic write_sdc output ordering)
- Use diff_files_sorted in sdc_derate_disable_deep and
  sdc_port_delay_advanced tests
- Remove stale coverage percentages from test comments (Comment 1)
- Remove unnecessary catch blocks in search property tests (Comment 3)
- Strengthen load-only tests with actual data verification (Comment 8)
- Remove orphan .ok files for deleted monolithic tests (Comment 9)
- Add golden .sdcok/.libok/.vok/.sdfok files for SDC/liberty/verilog
  write-and-diff tests
- Add -B (clean rebuild) option to make_coverage_report.sh
- Replace (void) casts and EXPECT_TRUE(true) with real assertions in
  TestSdc.cc and TestVerilog.cc

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Signed-off-by: Jaehyun Kim <jhkim@precisioninno.com>
2026-02-23 11:50:23 +09:00

43 lines
2.5 KiB
Plaintext

###############################################################################
# Created by write_sdc
###############################################################################
current_design sdc_test2
###############################################################################
# Timing Constraints
###############################################################################
create_clock -name clk1 -period 10.0000 [get_ports {clk1}]
create_clock -name clk2 -period 20.0000 [get_ports {clk2}]
set_input_delay 2.0000 -clock [get_clocks {clk1}] -add_delay [get_ports {in1}]
set_input_delay 2.0000 -clock [get_clocks {clk1}] -add_delay [get_ports {in2}]
set_input_delay 2.0000 -clock [get_clocks {clk2}] -add_delay [get_ports {in3}]
set_output_delay 3.0000 -clock [get_clocks {clk1}] -add_delay [get_ports {out1}]
set_output_delay 3.0000 -clock [get_clocks {clk2}] -add_delay [get_ports {out2}]
###############################################################################
# Environment
###############################################################################
set_timing_derate -cell_delay -early -clock 0.9600
set_timing_derate -cell_delay -data -rise -early 0.9500
set_timing_derate -cell_delay -data -fall -early 0.9600
set_timing_derate -cell_check -early 0.9800
set_timing_derate -net_delay -early 0.9300
set_timing_derate -cell_delay -late -clock 1.0400
set_timing_derate -cell_delay -data -rise -late 1.0400
set_timing_derate -cell_delay -data -fall -late 1.0500
set_timing_derate -cell_check -late 1.0200
set_timing_derate -net_delay -late 1.0700
set_timing_derate -net_delay -early 0.8600 [get_nets {n3}]
set_timing_derate -net_delay -late 1.1400 [get_nets {n3}]
set_timing_derate -net_delay -early 0.8700 [get_nets {n1}]
set_timing_derate -net_delay -late 1.1300 [get_nets {n1}]
set_timing_derate -cell_check -early 0.8800 [get_cells {reg1}]
set_timing_derate -cell_check -late 1.1200 [get_cells {reg1}]
set_timing_derate -cell_delay -early 0.8900 [get_cells {buf1}]
set_timing_derate -cell_delay -late 1.1100 [get_cells {buf1}]
set_timing_derate -cell_check -early 0.9000 [get_lib_cells {NangateOpenCellLibrary/DFF_X1}]
set_timing_derate -cell_check -late 1.1000 [get_lib_cells {NangateOpenCellLibrary/DFF_X1}]
set_timing_derate -cell_delay -early 0.9100 [get_lib_cells {NangateOpenCellLibrary/INV_X1}]
set_timing_derate -cell_delay -late 1.0900 [get_lib_cells {NangateOpenCellLibrary/INV_X1}]
###############################################################################
# Design Rules
###############################################################################