mirror of https://github.com/openXC7/prjxray.git
005-tilegrid: pcie-int-interface: address review comments
Signed-off-by: Alessandro Comodi <acomodi@antmicro.com>
This commit is contained in:
parent
cb272206a2
commit
67b04455d1
|
|
@ -223,13 +223,17 @@ def propagate_INT_bits_in_column(database, tiles_by_grid):
|
|||
|
||||
def propagate_INT_INTERFACE_bits_in_column(
|
||||
database, tiles_by_grid, int_interface_name):
|
||||
""" Propigate INT offsets up and down INT columns.
|
||||
""" Propagate INT_INTERFACE column for a given INT_INTERFACE tile name.
|
||||
|
||||
INT columns appear to be fairly regular, where starting from offset 0,
|
||||
INT tiles next to INT tiles increase the word offset by 2. The HCLK tile
|
||||
is surrounded above and sometimes below by an INT tile. Because the HCLK
|
||||
tile only useds one word, the offset increase by one at the HCLK.
|
||||
INT_INTERFACE tiles do not usually have any PIPs or baseaddresses,
|
||||
except for a few cases such as PCIE or GTP INTERFACE tiles.
|
||||
|
||||
These are very regular tiles, except for the horizontal clock line,
|
||||
which adds a one-word offset.
|
||||
|
||||
This function replicates the baseaddress and calculates the correct offset
|
||||
for each INT INTERFACE tile in a column, starting from a tile in the column
|
||||
that has the baseaddress calculated from the corresponding tilegrid fuzzer.
|
||||
"""
|
||||
|
||||
seen_int = set()
|
||||
|
|
|
|||
|
|
@ -23,12 +23,16 @@ proc parse_csv {} {
|
|||
continue
|
||||
}
|
||||
|
||||
# Skip empty lines
|
||||
if { $line == "" } {
|
||||
continue
|
||||
}
|
||||
|
||||
set parts [split $line ","]
|
||||
|
||||
dict lappend params_map [lindex $parts 2] [lindex $parts 1]
|
||||
}
|
||||
|
||||
puts $params_map
|
||||
return $params_map
|
||||
}
|
||||
|
||||
|
|
@ -41,11 +45,6 @@ proc route_through_delay {} {
|
|||
continue
|
||||
}
|
||||
|
||||
if { $key == "" } {
|
||||
puts "Dictionary key is incorrect, continuing"
|
||||
continue
|
||||
}
|
||||
|
||||
set net_name "PLL0LOCKEN_$key"
|
||||
set net [get_nets $net_name]
|
||||
|
||||
|
|
|
|||
|
|
@ -23,12 +23,16 @@ proc parse_csv {} {
|
|||
continue
|
||||
}
|
||||
|
||||
# Skip empty lines
|
||||
if { $line == "" } {
|
||||
continue
|
||||
}
|
||||
|
||||
set parts [split $line ","]
|
||||
|
||||
dict lappend params_map [lindex $parts 0] [lindex $parts 1]
|
||||
}
|
||||
|
||||
puts $params_map
|
||||
return $params_map
|
||||
}
|
||||
|
||||
|
|
@ -42,11 +46,6 @@ proc route_through_delay {} {
|
|||
continue
|
||||
}
|
||||
|
||||
if { $key == "" } {
|
||||
puts "Dictionary key is incorrect, continuing"
|
||||
continue
|
||||
}
|
||||
|
||||
foreach net $nets {
|
||||
set wire [get_wires -of_objects $net -filter {TILE_NAME =~ "*PCIE_INT_INTERFACE*" && NAME =~ "*OUT0*"}]
|
||||
|
||||
|
|
|
|||
Loading…
Reference in New Issue