mirror of https://github.com/openXC7/prjxray.git
tilegrid: ROI fixes
Signed-off-by: John McMaster <johndmcmaster@gmail.com>
This commit is contained in:
parent
49aa56712f
commit
48a6967adb
|
|
@ -3,10 +3,11 @@ export XRAY_PART="xc7a50tfgg484-1"
|
|||
export XRAY_ROI_FRAMES="0x00000000:0xffffffff"
|
||||
|
||||
# All CLB's in part, all BRAM's in part, all DSP's in part.
|
||||
# tcl queries IOB => don't bother adding
|
||||
export XRAY_ROI_TILEGRID="SLICE_X0Y0:SLICE_X65Y99 SLICE_X0Y100:SLICE_X57Y149 RAMB18_X0Y0:RAMB18_X1Y59 RAMB36_X0Y0:RAMB36_X1Y29 RAMB18_X2Y0:RAMB18_X2Y39 RAMB36_X2Y0:RAMB36_X2Y19 DSP48_X0Y0:DSP48_X1Y59"
|
||||
|
||||
# These settings must remain in sync
|
||||
export XRAY_ROI="SLICE_X0Y100:SLICE_X35Y149 RAMB18_X0Y40:RAMB18_X0Y59 RAMB36_X0Y20:RAMB36_X0Y29 DSP48_X0Y40:DSP48_X0Y59"
|
||||
export XRAY_ROI="SLICE_X0Y100:SLICE_X35Y149 RAMB18_X0Y40:RAMB18_X0Y59 RAMB36_X0Y20:RAMB36_X0Y29 DSP48_X0Y40:DSP48_X0Y59 IOB_X0Y100:IOB_X0Y149"
|
||||
# Most of CMT X0Y2.
|
||||
export XRAY_ROI_GRID_X1="9"
|
||||
export XRAY_ROI_GRID_X2="58"
|
||||
|
|
|
|||
|
|
@ -3,7 +3,8 @@ source "$::env(FUZDIR)/util.tcl"
|
|||
proc loc_iob {} {
|
||||
# Some pads are output only (ex: OPAD_X0Y0/PAD) => filt IOB_*
|
||||
# XXX: GTX bank missing, deal with that later
|
||||
set duts [get_bels -filter {TYPE =~ PAD && NAME =~ IOB_*}]
|
||||
set roi_sites [get_sites -of_objects [get_pblocks roi]]
|
||||
set duts [get_bels -of_objects $roi_sites -filter {TYPE =~ PAD && NAME =~ IOB_*}]
|
||||
|
||||
# Sort them into CMT columns
|
||||
set dut_columns [group_dut_cols $duts 50]
|
||||
|
|
|
|||
|
|
@ -26,7 +26,8 @@ proc write_tiles_txt {} {
|
|||
}
|
||||
|
||||
proc run {} {
|
||||
make_project
|
||||
# Generate grid of entire part
|
||||
make_project_roi XRAY_ROI_TILEGRID
|
||||
|
||||
place_design
|
||||
route_design
|
||||
|
|
|
|||
|
|
@ -137,6 +137,11 @@ proc assign_iobs {} {
|
|||
}
|
||||
|
||||
proc make_project {} {
|
||||
# Generate .bit only over ROI
|
||||
make_project_roi XRAY_ROI
|
||||
}
|
||||
|
||||
proc make_project_roi { roi_var } {
|
||||
# 6 CMTs in our reference part
|
||||
# What is the largest?
|
||||
set n_di 16
|
||||
|
|
@ -150,7 +155,7 @@ proc make_project {} {
|
|||
|
||||
create_pblock roi
|
||||
add_cells_to_pblock [get_pblocks roi] [get_cells roi]
|
||||
foreach roi "$::env(XRAY_ROI_TILEGRID)" {
|
||||
foreach roi "$::env($roi_var)" {
|
||||
puts "ROI: $roi"
|
||||
resize_pblock [get_pblocks roi] -add "$roi"
|
||||
}
|
||||
|
|
|
|||
Loading…
Reference in New Issue