You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
In xilinx there are stubs, or jumps between SB (i.e. a wire terminates in two SB instead of one).
Xilinx has several highly connected PIPJ's called bounce pips to which alternative pip's can connect.
Xilinx has sets of wires that leave a connection block, enter an SB, and then bounce back into the same connection block (termed as a bounce pip in Xilinx). Although this is not technically supported by VTR the same affect can be modeled using internal crossbars.
Additional features
Support for tile layouts beyond that currently supported by VTR.
Following the island style, VTR currently has a pattern of CB, Logic, CB, ...
Xilinx has a pattern of SB/CB, SB/CB, Logic, Logic, SB/CB, SB/CB, ... (see images in following post).
Support for both bi-directional and uni-directional segments in the same arch. VTR currently only supports one or the other. This item is not too important since only the longest wire segments in the Xilinx arch are bi-directional (L12 and L18).
Xilinx allows for all of its wires to make connections to wires traveling in the opposite direction of travel (i.e. any wire traveling south may connect to a wire of length one traveling north). VTR currently does not allow for this or at the very least it is not fully supported. This could prove important because it allows for wires to easily connect to LB that are an odd length away (i.e. an LB located west 3 units can be accessed by using WW4->E1).
Xilinx multipliers have input widths that are not equal (25x18 vs. 32x32). This causes some packing issues on certain benchmarks that need to be fixed.
In the Xilinx arch switch blocks and connection blocks are combined into one (improving space and routablitiy). The island style FPGA supported by VTR currently separates the two. This can be implemented by lengthening wires by +1 in their respective cardinal directions.
The text was updated successfully, but these errors were encountered:
Uh oh!
There was an error while loading. Please reload this page.
Proposed Behaviour
The following is a list of functionality that would need to be supported in VTR in order to obtain an approximate capture of the Xilinx architecture:
Core functionality
Support for different distributions of wires in the vertical/horizontal.
Support for non-uniform chanel widths
Support for the two points above for custom SB.
Support for different shaped wires (diagonals/T shaped in particular).
In xilinx there are stubs, or jumps between SB (i.e. a wire terminates in two SB instead of one).
Xilinx has several highly connected PIPJ's called bounce pips to which alternative pip's can connect.
Xilinx has sets of wires that leave a connection block, enter an SB, and then bounce back into the same connection block (termed as a bounce pip in Xilinx). Although this is not technically supported by VTR the same affect can be modeled using internal crossbars.
Additional features
Support for tile layouts beyond that currently supported by VTR.
Support for both bi-directional and uni-directional segments in the same arch. VTR currently only supports one or the other. This item is not too important since only the longest wire segments in the Xilinx arch are bi-directional (L12 and L18).
Xilinx allows for all of its wires to make connections to wires traveling in the opposite direction of travel (i.e. any wire traveling south may connect to a wire of length one traveling north). VTR currently does not allow for this or at the very least it is not fully supported. This could prove important because it allows for wires to easily connect to LB that are an odd length away (i.e. an LB located west 3 units can be accessed by using WW4->E1).
Xilinx multipliers have input widths that are not equal (25x18 vs. 32x32). This causes some packing issues on certain benchmarks that need to be fixed.
In the Xilinx arch switch blocks and connection blocks are combined into one (improving space and routablitiy). The island style FPGA supported by VTR currently separates the two. This can be implemented by lengthening wires by +1 in their respective cardinal directions.
The text was updated successfully, but these errors were encountered: