Skip to content

Commit 9de1631

Browse files
committed
Add an example for clock network definition in rr graphs
1 parent 1afe1c5 commit 9de1631

File tree

1 file changed

+43
-1
lines changed

1 file changed

+43
-1
lines changed

doc/src/vpr/global_routing_constraints.rst

Lines changed: 43 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -63,4 +63,46 @@ Segment Definition for Clock Networks
6363
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
6464
The node types ``"CHANX"`` and ``"CHANY"`` can construct the clock routing architecture, similar to a generic routing network. However, to identify nodes that are part of a clock network, one can define unique segments for clock networks. To indicate that a segment defined is a clock network resource, users can use the optional attribute ``res_type="GCLK"``. Therefore, nodes with a segment ID of this defined segment are considered to be part of a clock network.
6565

66-
While VPR currently does not leverage this distinction of clock network resources, it is recommended to use the ``res_type="GCLK"`` attribute, as this preparation ensures compatibility for future support.
66+
While VPR currently does not leverage this distinction of clock network resources, it is recommended to use the ``res_type="GCLK"`` attribute, as this preparation ensures compatibility for future support.
67+
68+
69+
Example of RR Graph Definition for Clock Networks
70+
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
71+
72+
Below are snapshots of a sample RR graph that illustrate how to define a clock network. This example demonstrates the definition of a virtual sink node, a clock network segment, and a CHANY node that is part of the clock network.
73+
74+
For the node with ``id="12746"``, the ``res_type="VIRTUAL_SINK"`` attribute marks it as the virtual sink node of a clock network named ``"global_network"``, as specified by the ``name`` attribute.
75+
76+
For the segment with ``id="1"``, the ``res_type="GCLK"`` attribute indicates that this segment is a clock network resource.
77+
78+
The ``"CHANY"`` node with the ``id="12746"`` has ``segment_id="1"``, which means this resource belongs to the clock network.
79+
80+
.. code-block:: xml
81+
:caption: Example snippets from an RR graph describing part of a clock network.
82+
:linenos:
83+
84+
<rr_nodes>
85+
<!-- Definition of a virtual sink node for a clock network named "global_network" -->
86+
<node capacity="1" clk_res_type="VIRTUAL_SINK" id="12746" name="global_network" type="SINK">
87+
<loc layer="0" ptc="72" xhigh="6" xlow="6" yhigh="6" ylow="6"/>
88+
<timing C="0" R="0"/>
89+
</node>
90+
91+
<!-- Definition of a CHANY node as part of the clock network -->
92+
<node capacity="1" direction="BI_DIR" id="12668" type="CHANY">
93+
<loc layer="0" ptc="20" xhigh="6" xlow="6" yhigh="6" ylow="6"/>
94+
<timing C="1.98240038e-13" R="50.4199982"/>
95+
<segment segment_id="1"/>
96+
</node>
97+
98+
<!-- ... other nodes ... -->
99+
</rr_nodes>
100+
101+
<segments>
102+
<!-- Definition of a clock network segment -->
103+
<segment id="1" name="spine1_drive" res_type="GCLK">
104+
<timing C_per_meter="2.06999995e-14" R_per_meter="50.4199982"/>
105+
</segment>
106+
107+
<!-- ... other segments ... -->
108+
</segments>

0 commit comments

Comments
 (0)