You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
111 lines
4.7 KiB
Tcl
111 lines
4.7 KiB
Tcl
2 years ago
|
open_run impl_1
|
||
|
|
||
|
catch {
|
||
|
report_utilization -cells [get_cells -hierarchical A2P_WB*] -file cells_utilization.txt
|
||
|
}
|
||
|
|
||
|
catch {
|
||
|
report_utilization -cells [get_cells -hierarchical *_zz*] -append -file cells_utilization.txt
|
||
|
}
|
||
|
catch {
|
||
|
report_utilization -cells [get_cells -hierarchical dBusWB*] -append -file cells_utilization.txt
|
||
|
}
|
||
|
catch {
|
||
|
report_utilization -cells [get_cells -hierarchical iBusWB*] -append -file cells_utilization.txt
|
||
|
}
|
||
|
|
||
|
catch {
|
||
|
report_utilization -cells [get_cells -hierarchical execute_MemoryTranslatorPlugin*] -append -file cells_utilization.txt
|
||
|
report_utilization -cells [get_cells -hierarchical MemoryTranslatorPlugin*] -append -file cells_utilization.txt
|
||
|
}
|
||
|
|
||
|
report_utilization -cells [get_cells -hierarchical RegFilePlugin*] -append -file cells_utilization.txt
|
||
|
catch {
|
||
|
report_utilization -cells [get_cells -hierarchical SPRPlugin*] -append -file cells_utilization.txt
|
||
|
}
|
||
|
|
||
|
# egrep "Command|Slice LUT|Muxes" cells_utilization.txt
|
||
|
|
||
|
# stages
|
||
|
report_utilization -cells [get_cells -hierarchical IBusCachedPlugin*] -append -file cells_utilization.txt
|
||
|
catch {
|
||
|
report_utilization -cells [get_cells -hierarchical IBusCachedPlugin_fetchPc_*] -append -file cells_utilization.txt
|
||
|
report_utilization -cells [get_cells -hierarchical IBusCachedPlugin_predictor_*] -append -file cells_utilization.txt
|
||
|
report_utilization -cells [get_cells -hierarchical IBusCachedPlugin_injector_*] -append -file cells_utilization.txt
|
||
|
}
|
||
|
report_utilization -cells [get_cells -hierarchical decode_*] -append -file cells_utilization.txt
|
||
|
report_utilization -cells [get_cells -hierarchical execute_*] -append -file cells_utilization.txt
|
||
|
catch {
|
||
|
report_utilization -cells [get_cells -hierarchical execute_BranchPlugin*] -append -file cells_utilization.txt
|
||
|
}
|
||
|
#went away when i added areas below!
|
||
|
#report_utilization -cells [get_cells -hierarchical execute_IntAluPlugin*] -append -file cells_utilization.txt
|
||
|
#why are these gone with donttouch?
|
||
|
#report_utilization -cells [get_cells -hierarchical execute_DBusCachedPlugin*] -append -file cells_utilization.txt
|
||
|
report_utilization -cells [get_cells -hierarchical memory_*] -append -file cells_utilization.txt
|
||
|
report_utilization -cells [get_cells -hierarchical writeBack_*] -append -file cells_utilization.txt
|
||
|
|
||
|
|
||
|
# new stuff! got areas named
|
||
|
catch {
|
||
|
report_utilization -cells [get_cells -hierarchical Hazards*] -append -file cells_utilization.txt
|
||
|
report_utilization -cells [get_cells -hierarchical *DECODER*] -append -file cells_utilization.txt
|
||
|
report_utilization -cells [get_cells -hierarchical *SRC1*] -append -file cells_utilization.txt
|
||
|
#?report_utilization -cells [get_cells -hierarchical *SRC2*] -append -file cells_utilization.txt
|
||
|
#report_utilization -cells [get_cells -hierarchical *ALU1*] -append -file cells_utilization.txt
|
||
|
report_utilization -cells [get_cells -hierarchical *ALU2*] -append -file cells_utilization.txt
|
||
|
#?report_utilization -cells [get_cells -hierarchical *MUL1*] -append -file cells_utilization.txt
|
||
|
#?report_utilization -cells [get_cells -hierarchical *MUL2*] -append -file cells_utilization.txt
|
||
|
#?report_utilization -cells [get_cells -hierarchical *MUL3*] -append -file cells_utilization.txt
|
||
|
report_utilization -cells [get_cells -hierarchical *MULDIV*] -append -file cells_utilization.txt
|
||
|
report_utilization -cells [get_cells -hierarchical *MULDIV1*] -append -file cells_utilization.txt
|
||
|
#?report_utilization -cells [get_cells -hierarchical *MULDIV2*] -append -file cells_utilization.txt
|
||
|
}
|
||
|
|
||
|
### cells
|
||
|
|
||
|
# LUT
|
||
|
set outFile [open {cells_lut.txt} w]
|
||
|
|
||
|
#set cells [get_cells -hier -filter {PARENT == A2P_WB}]
|
||
|
set cells [get_cells -hier -filter {PARENT == a2p_i/A2P_WB/inst}]vrv_i/VexRiscv_0/inst
|
||
|
set cells [get_cells -hier -filter {PARENT == vrv_i/VexRiscv_0/inst}]
|
||
|
|
||
|
set names {}
|
||
|
|
||
|
puts ""
|
||
|
puts "Cells (non-flop)"
|
||
|
foreach cell $cells {
|
||
|
set name [get_property NAME $cell]
|
||
|
if {[get_property PRIMITIVE_GROUP $cell] != "LUT"} {
|
||
|
if {[get_property PRIMITIVE_GROUP $cell] != "FLOP_LATCH"} {
|
||
|
# OTHERS CARRY MUXFX BMEM MULT [EMPTY=MACRO TOP]
|
||
|
puts "Not a LUT or FLOP_LATCH: [get_property PRIMITIVE_GROUP $cell] $name"
|
||
|
}
|
||
|
} else {
|
||
|
#puts $name
|
||
|
puts $outFile $name
|
||
|
lappend names $name
|
||
|
}
|
||
|
}
|
||
|
puts "Cells (nonflop): [llength $names]"
|
||
|
close $outFile
|
||
|
|
||
|
# flops
|
||
|
set outFile [open {cells_ff.txt} w]
|
||
|
|
||
|
#set cells [get_cells -hier -filter {(PRIMITIVE_TYPE =~ FLOP*) && (PARENT == A2P_WB)}]
|
||
|
set cells [get_cells -hier -filter {(PRIMITIVE_TYPE =~ FLOP*) && (PARENT == a2p_i/A2P_WB/inst)}]
|
||
|
set cells [get_cells -hier -filter {(PRIMITIVE_TYPE =~ FLOP*) && (PARENT == vrv_i/VexRiscv_0/inst)}]
|
||
|
set names {}
|
||
|
|
||
|
puts ""
|
||
|
puts "Flops"
|
||
|
foreach cell $cells {
|
||
|
set name [get_property NAME $cell]
|
||
|
#puts $name
|
||
|
puts $outFile $name
|
||
|
lappend names $name
|
||
|
}
|
||
|
puts "Flops: [llength $names]"
|
||
|
close $outFile
|