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
Add metadata support to architecture and rr_graph XML. (#473)
* Add metadata support to architecture and rr_graph XML.
The metadata is unused by the core VPR algorithms, but
can be attached at useful points throughout the
architecture and rr_graph XML to enable bitstream export.
Signed-off-by: Keith Rothman <[email protected]>
Copy file name to clipboardExpand all lines: doc/src/arch/reference.rst
+55-7Lines changed: 55 additions & 7 deletions
Original file line number
Diff line number
Diff line change
@@ -905,7 +905,7 @@ The following tags are common to all <pb_type> tags:
905
905
Input logical equivalence means that the pin order can be swapped without changing functionality.
906
906
For example, an AND gate has logically equivalent inputs because you can swap the order of the inputs and it’s still correct; an adder, on the otherhand, is not logically equivalent because if you swap the MSB with the LSB, the results are completely wrong.
907
907
LUTs are also considered logically equivalent since the logic function (LUT mask) can be rotated to account for pin swapping.
908
-
908
+
909
909
* ``none``: No input pins are logically equivalent.
910
910
911
911
Input pins can not be swapped by the router. (Generates a unique SINK rr-node for each block input port pin.)
@@ -945,12 +945,12 @@ The following tags are common to all <pb_type> tags:
945
945
946
946
* ``full``: All output pins are considered logically equivalent.
947
947
948
-
All output pins can be swapped without limitation by the router. For example, this option would be appropriate to model an output port which has a full crossbar between it and the logic within the block that drives it. (Generates a single SRC rr-node shared by each output port pin.)
948
+
All output pins can be swapped without limitation by the router. For example, this option would be appropriate to model an output port which has a full crossbar between it and the logic within the block that drives it. (Generates a single SRC rr-node shared by each output port pin.)
949
949
950
950
* ``instance``: Models that sub-instances within a block (e.g. LUTs/BLEs) can be swapped to achieve a limited form of output pin logical equivalence.
951
-
952
-
Like ``full``, this generates a single SRC rr-node shared by each output port pin. However, each net originating from this source can use only one output pin from the equivalence group. This can be useful in modeling more complex forms of equivalence in which you can swap which BLE implements which function to gain access to different inputs.
953
-
951
+
952
+
Like ``full``, this generates a single SRC rr-node shared by each output port pin. However, each net originating from this source can use only one output pin from the equivalence group. This can be useful in modeling more complex forms of equivalence in which you can swap which BLE implements which function to gain access to different inputs.
953
+
954
954
.. warning:: When using ``instance`` equivalence you must be careful to ensure output swapping would not make the cluster internal routing (previously computed by the clusterer) illegal; the tool does not update the cluster internal routing due to output pin swapping.
955
955
956
956
**Default:** ``none``
@@ -1051,7 +1051,7 @@ They describe how a complex block interfaces with the inter-block world.
0 commit comments