1+ source $::env(SCRIPTS_DIR) /util.tcl
2+
13foreach libFile $::env(LIB_FILES) {
24 if {[lsearch -exact $::env(ADDITIONAL_LIBS) $libFile ] == -1} {
35 read_liberty $libFile
46 }
57}
68
7- read_verilog results/asap7/mock-array_Element/base/6_final.v
8- read_verilog $::env(RESULTS_DIR) /6_final.v
9- read_verilog $::env(PLATFORM_DIR) /verilog/stdcell/empty.v
10-
11- link_design MockArray
9+ log_cmd read_verilog results/asap7/mock-array_Element/base/6_final.v
10+ log_cmd read_verilog $::env(RESULTS_DIR) /6_final.v
11+ log_cmd read_verilog $::env(PLATFORM_DIR) /verilog/stdcell/empty.v
12+ log_cmd link_design MockArray
1213
13- read_sdc $::env(RESULTS_DIR) /6_final.sdc
14- read_spef $::env(RESULTS_DIR) /6_final.spef
14+ log_cmd read_sdc $::env(RESULTS_DIR) /6_final.sdc
15+ log_cmd read_spef $::env(RESULTS_DIR) /6_final.spef
16+ puts " read_spef for ces_*_* macros"
1517for {set x 0} {$x < 8} {incr x} {
1618 for {set y 0} {$y < 8} {incr y} {
1719 read_spef -path ces_${x} _${y} results/asap7/mock-array_Element/base/6_final.spef
1820 }
1921}
2022
21- report_parasitic_annotation
22- report_power
23- read_vcd -scope TOP/MockArray $::env(RESULTS_DIR) /MockArrayTestbench.vcd
23+ log_cmd report_power
24+
25+ set vcd_file $::env(RESULTS_DIR) /MockArrayTestbench.vcd
26+ log_cmd read_vcd -scope TOP/MockArray $vcd_file
27+
28+ puts " Total number of pins to be annotated: [ llength [get_pins -hierarchical *] ]"
29+ set no_vcd_activity {}
30+ set pins [get_pins -hierarchical *]
31+ foreach pin $pins {
32+ set activity [get_property $pin activity]
33+ set activity_origin [lindex $activity 2]
34+ if {$activity_origin == " vcd" } {
35+ continue
36+ }
37+ if {$activity_origin == " constant" } {
38+ continue
39+ }
40+ if {$activity_origin == " unknown" } {
41+ continue
42+ }
43+ if {[get_property $pin is_hierarchical]} {
44+ continue
45+ }
46+ if {$activity_origin == " clock" } {
47+ continue
48+ }
49+ set direction [get_property $pin direction]
50+ if {$direction == " internal" } {
51+ continue
52+ }
53+ lappend no_vcd_activity " [ get_full_name $pin ] $activity $direction "
54+ if {[llength $no_vcd_activity ] >= 10} {
55+ break
56+ }
57+ }
58+
59+ if {[llength $no_vcd_activity ] > 0} {
60+ puts " Error: Listing [ llength $no_vcd_activity ] pins without activity from $vcd_file :"
61+ foreach pin $no_vcd_activity {
62+ puts $pin
63+ }
64+ exit 1
65+ }
2466
2567set ces {}
2668for {set x 0} {$x < 8} {incr x} {
@@ -29,5 +71,9 @@ for {set x 0} {$x < 8} {incr x} {
2971 }
3072}
3173
74+ puts {report_power -instances [get_cells $ces ]}
3275report_power -instances [get_cells $ces ]
33- report_power
76+ log_cmd report_power
77+
78+ log_cmd report_parasitic_annotation
79+ log_cmd report_activity_annotation -report_unannotated
0 commit comments