fix and simplify power_json test

Signed-off-by: James Cherry <cherry@parallaxsw.com>
This commit is contained in:
James Cherry 2025-12-20 10:45:17 -07:00
parent 56e4bd8ce1
commit fb61208148
4 changed files with 61 additions and 20 deletions

55
test/power_json.ok Normal file
View File

@ -0,0 +1,55 @@
{
"Sequential": {
"internal": 8.01e-06,
"switching": 4.99e-08,
"leakage": 1.45e-09,
"total": 8.06e-06
},
"Combinational": {
"internal": 2.03e-07,
"switching": 5.32e-08,
"leakage": 1.59e-10,
"total": 2.56e-07
},
"Clock": {
"internal": 0.00e+00,
"switching": 0.00e+00,
"leakage": 0.00e+00,
"total": 0.00e+00
},
"Macro": {
"internal": 0.00e+00,
"switching": 0.00e+00,
"leakage": 0.00e+00,
"total": 0.00e+00
},
"Pad": {
"internal": 0.00e+00,
"switching": 0.00e+00,
"leakage": 0.00e+00,
"total": 0.00e+00
},
"Total": {
"internal": 8.22e-06,
"switching": 1.03e-07,
"leakage": 1.61e-09,
"total": 8.32e-06
}
}
[
{
"name": "u2",
"internal": 1.05e-07,
"switching": 2.74e-08,
"leakage": 9.07e-11,
"total": 1.32e-07
}
,
{
"name": "u1",
"internal": 9.83e-08,
"switching": 2.58e-08,
"leakage": 6.82e-11,
"total": 1.24e-07
}
]

View File

@ -1,24 +1,8 @@
# report_power reg1_asap7
set sta_report_default_digits 4
read_liberty ../examples/asap7_small.lib.gz
read_verilog ../examples/reg1_asap7.v
read_liberty asap7_small.lib.gz
read_verilog reg1_asap7.v
link_design top
create_clock -name clk1 -period 500 clk1
create_clock -name clk2 -period 500 clk2
create_clock -name clk3 -period 500 clk3
set_input_delay -clock clk1 1 {in1 in2}
set_input_delay -clock clk2 1 {in1 in2}
set_input_delay -clock clk3 1 {in1 in2}
set_input_transition 10 {in1 in2 clk1 clk2 clk3}
create_clock -name clk -period 500 {clk1 clk2 clk3}
set_propagated_clock {clk1 clk2 clk3}
read_spef ../examples/reg1_asap7.spef
set_power_activity -input -activity .1
set_power_activity -input_port reset -activity 0
report_power -format json
report_power -format json -instances "[get_cells -filter "name=~clkbuf*"]"
report_power -format json -instances {u1 u2}

View File

@ -159,6 +159,7 @@ record_public_tests {
liberty_latch3
package_require
path_group_names
power_json
prima3
report_checks_sorted
report_checks_src_attr

View File

@ -28,6 +28,7 @@ exec tclsh $0 ${1+"$@"}
# Directory containing tests.
set test_dir [file dirname [info script]]
set sta_dir [file normalize [file join $test_dir ".."]]
source [file join $test_dir regression_vars.tcl]
source [file join $test_dir regression.tcl]