11# left (bottom to top)
22# cvxif_req_o
3- # axi_req_o - noc_req_o in ours
4- # scan_output - doesn't exist in ours
5- set_io_pin_constraint -group -order -region left:20-38.7 -pin_names {cvxif_req_o* }
6- set_io_pin_constraint -group -order -region left:38.8 -90.2 -pin_names {noc_req_o* }
3+ # axi_req_o - renamed to noc_req_o in 716d21c
4+ # scan_output - inserted by commercial tool?
5+ set_io_pin_constraint -group -order -region left:4.09-40.70 -pin_names {cvxif_req_o[*] }
6+ set_io_pin_constraint -group -order -region left:40.85 -90.13 -pin_names {noc_req_o[*] }
77
88# right (bottom to top)
9- # scan_input - doesn't exist in ours
10- # test_mode - doesn't exist in ours
11- # scan_enable - doesn't exist in ours
12- # axi_resp_i - noc_resp_i in ours
9+ # scan_input - inserted by commercial tool?
10+ # test_mode - inserted by commercial tool?
11+ # scan_enable - inserted by commercial tool?
12+ # axi_resp_i - renamed to noc_resp_i in 716d21c
1313# cvxif_resp_i
1414# debug_req_i
1515# time_irq_i
@@ -19,16 +19,20 @@ set_io_pin_constraint -group -order -region left:38.8-90.2 -pin_names {noc_req_o
1919# boot_addr_i
2020# rst_ni
2121# clk_i
22- set_io_pin_constraint -group -order -region right:5-31.4 -pin_names {noc_resp_i*}
23- set_io_pin_constraint -group -order -region right:31.5-73.1 -pin_names {cvxif_resp_i*}
24- set_io_pin_constraint -group -order -region right:73.3-73.7 -pin_names {debug_req_i \
25- time_irq_i ipi_i}
26- set_io_pin_constraint -group -order -region right:74-74.3 -pin_names {irq_i*}
27- set_io_pin_constraint -group -order -region right:74.5-82 -pin_names {hart_id_i*}
28- set_io_pin_constraint -group -order -region right:82.2-89.8 -pin_names {boot_addr_i*}
29- set_io_pin_constraint -group -order -region right:89.9-90.3 -pin_names {rst_n_i clk_i}
22+ # Not enough space for the amount of pins, so upper bound increased from 25.34 to 45.34 - ripples
23+ # through rest of pins
24+ set_io_pin_constraint -group -order -region right:5.25-45.34 -pin_names {noc_resp_i[*]}
25+ set_io_pin_constraint -group -order -region right:45.62-93.07 -pin_names {cvxif_resp_i[*]}
26+ set_io_pin_constraint -group -order -region right:93.32-93.73 \
27+ -pin_names {
28+ debug_req_i time_irq_i ipi_i
29+ }
30+ set_io_pin_constraint -group -order -region right:94.01-94.28 -pin_names {irq_i[*]}
31+ set_io_pin_constraint -group -order -region right:94.51-102.01 -pin_names {hart_id_i[*]}
32+ set_io_pin_constraint -group -order -region right:102.25-109.74 -pin_names {boot_addr_i[*]}
33+ set_io_pin_constraint -group -order -region right:109.99-110.25 -pin_names {rst_ni clk_i}
3034
31- # don't exist in reference design implementation - does it make us I/O bound?
35+ # The rvfi_probes_o pins don't exist in reference design implementation
3236# put a third of them on the top, a third on the bottom, and let the placer
3337# decide where to put the remaining third
3438set num_rvfi_probes_ports 4295
@@ -42,5 +46,6 @@ for { } { $i < $third_rvfi_probes_ports * 2 } { incr i } {
4246 lappend bottom_group " rvfi_probes_o\[ $i \] "
4347}
4448
49+
4550set_io_pin_constraint -group -order -region bottom:* -pin_names $top_group
4651set_io_pin_constraint -group -order -region top:* -pin_names $bottom_group
0 commit comments