diff --git a/doc/OpenSTA.odt b/doc/OpenSTA.odt index 6fc4c047..c445ecd0 100644 Binary files a/doc/OpenSTA.odt and b/doc/OpenSTA.odt differ diff --git a/doc/OpenSTA.pdf b/doc/OpenSTA.pdf index 5750f166..f69ea92a 100644 Binary files a/doc/OpenSTA.pdf and b/doc/OpenSTA.pdf differ diff --git a/test/get_filter.ok b/test/get_filter.ok index 86bee827..8e98cdba 100644 --- a/test/get_filter.ok +++ b/test/get_filter.ok @@ -1,34 +1,34 @@ -get_cells +[get_cells -filter liberty_cell==BUFx2_ASAP7_75t_R *] u1 -get_clocks +[get_clocks -filter is_virtual==0 *] clk -get_clocks 2 +[get_clocks -filter is_virtual==1 *] vclk -get_clocks 3 +[get_clocks -filter is_virtual *] vclk -get_clocks 4 -get_clocks 5 +[get_clocks -filter is_virtual&&is_generated *] +[get_clocks -filter is_virtual&&is_generated==0 *] vclk -get_clocks 6 +[get_clocks -filter is_virtual||is_generated *] vclk -get_clocks 7 +[get_clocks -filter is_virtual==0||is_generated *] clk -get_lib_cells +[get_lib_cells -filter is_buffer==1 *] asap7_small/BUFx2_ASAP7_75t_R -get_lib_cells 2 +[get_lib_cells -filter is_inverter==0 *] asap7_small/AND2x2_ASAP7_75t_R asap7_small/BUFx2_ASAP7_75t_R asap7_small/DFFHQx4_ASAP7_75t_R -get_lib_pins +[get_lib_pins -filter direction==input BUFx2_ASAP7_75t_R/*] A -get_lib_pins 2 +[get_lib_pins -filter direction==output BUFx2_ASAP7_75t_R/*] Y -get_libs +[get_libs -filter name==asap7_small *] asap7_small -get_nets +[get_nets -filter name=~*q *] r1q r2q -get_pins +[get_pins -filter direction==input *] r1/CLK r1/D r2/CLK @@ -38,17 +38,17 @@ r3/D u1/A u2/A u2/B -get_pins 2 +[get_pins -filter direction==output *] r1/Q r2/Q r3/Q u1/Y u2/Y -get_ports +[get_ports -filter direction==input *] clk1 clk2 clk3 in1 in2 -get_ports 2 +[get_ports -filter direction==output *] out diff --git a/test/get_filter.tcl b/test/get_filter.tcl index 96b66714..e3269754 100644 --- a/test/get_filter.tcl +++ b/test/get_filter.tcl @@ -6,39 +6,39 @@ create_clock -name clk -period 500 {clk1 clk2 clk3} create_clock -name vclk -period 1000 # Test filters for each SDC command -puts "get_cells" +puts {[get_cells -filter liberty_cell==BUFx2_ASAP7_75t_R *]} report_object_full_names [get_cells -filter liberty_cell==BUFx2_ASAP7_75t_R *] -puts "get_clocks" +puts {[get_clocks -filter is_virtual==0 *]} report_object_full_names [get_clocks -filter is_virtual==0 *] -puts "get_clocks 2" +puts {[get_clocks -filter is_virtual==1 *]} report_object_full_names [get_clocks -filter is_virtual==1 *] -puts "get_clocks 3" +puts {[get_clocks -filter is_virtual *]} report_object_full_names [get_clocks -filter is_virtual *] -puts "get_clocks 4" +puts {[get_clocks -filter is_virtual&&is_generated *]} report_object_full_names [get_clocks -filter is_virtual&&is_generated *] -puts "get_clocks 5" +puts {[get_clocks -filter is_virtual&&is_generated==0 *]} report_object_full_names [get_clocks -filter is_virtual&&is_generated==0 *] -puts "get_clocks 6" +puts {[get_clocks -filter is_virtual||is_generated *]} report_object_full_names [get_clocks -filter is_virtual||is_generated *] -puts "get_clocks 7" +puts {[get_clocks -filter is_virtual==0||is_generated *]} report_object_full_names [get_clocks -filter is_virtual==0||is_generated *] -puts "get_lib_cells" +puts {[get_lib_cells -filter is_buffer==1 *]} report_object_full_names [get_lib_cells -filter is_buffer==1 *] -puts "get_lib_cells 2" +puts {[get_lib_cells -filter is_inverter==0 *]} report_object_full_names [get_lib_cells -filter is_inverter==0 *] -puts "get_lib_pins" +puts {[get_lib_pins -filter direction==input BUFx2_ASAP7_75t_R/*]} report_object_full_names [get_lib_pins -filter direction==input BUFx2_ASAP7_75t_R/*] -puts "get_lib_pins 2" +puts {[get_lib_pins -filter direction==output BUFx2_ASAP7_75t_R/*]} report_object_full_names [get_lib_pins -filter direction==output BUFx2_ASAP7_75t_R/*] -puts "get_libs" +puts {[get_libs -filter name==asap7_small *]} report_object_full_names [get_libs -filter name==asap7_small *] -puts "get_nets" +puts {[get_nets -filter name=~*q *]} report_object_full_names [get_nets -filter name=~*q *] -puts "get_pins" +puts {[get_pins -filter direction==input *]} report_object_full_names [get_pins -filter direction==input *] -puts "get_pins 2" +puts {[get_pins -filter direction==output *]} report_object_full_names [get_pins -filter direction==output *] -puts "get_ports" +puts {[get_ports -filter direction==input *]} report_object_full_names [get_ports -filter direction==input *] -puts "get_ports 2" +puts {[get_ports -filter direction==output *]} report_object_full_names [get_ports -filter direction==output *]