<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Recent changes to examples</title><link>https://sourceforge.net/p/tincr/wiki/examples/</link><description>Recent changes to examples</description><atom:link href="https://sourceforge.net/p/tincr/wiki/examples/feed" rel="self"/><language>en</language><lastBuildDate>Tue, 01 Sep 2015 15:28:29 -0000</lastBuildDate><atom:link href="https://sourceforge.net/p/tincr/wiki/examples/feed" rel="self" type="application/rss+xml"/><item><title>examples modified by Brad</title><link>https://sourceforge.net/p/tincr/wiki/examples/</link><description>&lt;div class="markdown_content"&gt;&lt;pre&gt;--- v11
+++ v12
@@ -82,13 +82,13 @@
 ::tincr::nodes hops $node N
 ~~~~~~

-where "N" should be replaced with any number. This will return a list of nodes that can be reached from $node in N hops. To select all these nodes in the GUI Device view, you can wrap the above command with the "select_objects" command like so:
+where `N` should be replaced with any number. This will return a list of nodes that can be reached from `$node` in N hops. To select all these nodes in the GUI Device view, you can wrap the above command with the `select_objects` command like so:

 ~~~~~~
 :::tcl
 select_objects [::tincr::nodes hops $node 3]
 ~~~~~~

-If the GUI isn't already open, you will need to call the "start_gui" command first.
+If the GUI isn't already open, you will need to call the `start_gui` command first.

 Tincr includes a script demonstrating the nodes hop capability: [hop_nodes.tcl](https://sourceforge.net/p/tincr/code/HEAD/tree/trunk/demos/hop_nodes.tcl)
&lt;/pre&gt;
&lt;/div&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Brad</dc:creator><pubDate>Tue, 01 Sep 2015 15:28:29 -0000</pubDate><guid>https://sourceforge.net9fed71818e28026b394d666ccd3e4d6912688680</guid></item><item><title>examples modified by Brad</title><link>https://sourceforge.net/p/tincr/wiki/examples/</link><description>&lt;div class="markdown_content"&gt;&lt;pre&gt;--- v10
+++ v11
@@ -1,4 +1,4 @@
-# Device Examples #
+# Tincr Examples #
 [TOC]

 ## Introduction ##
@@ -90,3 +90,5 @@
 ~~~~~~

 If the GUI isn't already open, you will need to call the "start_gui" command first.
+
+Tincr includes a script demonstrating the nodes hop capability: [hop_nodes.tcl](https://sourceforge.net/p/tincr/code/HEAD/tree/trunk/demos/hop_nodes.tcl)
&lt;/pre&gt;
&lt;/div&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Brad</dc:creator><pubDate>Tue, 01 Sep 2015 15:21:53 -0000</pubDate><guid>https://sourceforge.netc96580266f136e7cfecc2eec4f54dd9eba29e86f</guid></item><item><title>device_examples modified by Brad</title><link>https://sourceforge.net/p/tincr/wiki/device_examples/</link><description>&lt;div class="markdown_content"&gt;&lt;pre&gt;--- v9
+++ v10
@@ -1,5 +1,11 @@
 # Device Examples #
 [TOC]
+
+## Introduction ##
+
+This section is provided to help user become more familiar with Tincr and its capabilities by presenting common tasks and showing to how accomplish them using the Tincr API.
+
+### Following Examples ###

 All of the examples listed in this section assume that you have a device loaded in Vivado. Before beginning any of these examples, first open Vivado. You can either start the GUI or run Vivado from a command prompt (make sure Vivado's bin directory is on your path):

@@ -7,7 +13,7 @@
 vivado -mode tcl
 ~~~~~~

-If you are using the GUI, place your cursor in the Tcl Console window at the bottom of the application (where it says "Type a Tcl command here"). Now that Vivado's Tcl console is open, the Tincr packages need to be imported (Tincr must be installed first):
+If you are using the GUI, place your cursor in the Tcl Console window at the bottom of the application (where it says "Type a Tcl command here"). Now that Vivado's Tcl console is open, the Tincr packages need to be imported ([Tincr must be installed first](setup)):

 ~~~~~~
 :::tcl
@@ -23,7 +29,17 @@

 The xc7k70tfbg484-3 part will be used in all examples in this section. If you do not have this device install, feel free to try another part. If you are running any of the included scripts, you will need to update the part in each script.

-## Node Hopping ##
+### Included Scripts ###
+
+The Tincr distribution includes a [folder of demo scripts](https://sourceforge.net/p/tincr/code/HEAD/tree/trunk/demos). Each of these demos can be run by entering the following in a Windows command prompt:
+
+~~~~~~
+vivado -mode tcl -source %TINCR_PATH%\demos\&amp;lt;demo&amp;gt;.tcl
+~~~~~~
+
+If you are on another OS, adjust the backslashes and dereferencing characters accordingly.
+
+## Hop Nodes ##

 In Vivado, a node is a section of wire that originates and terminates in any of the following:

@@ -66,4 +82,11 @@
 ::tincr::nodes hops $node N
 ~~~~~~

-where "N" should be replaced with any number. This will return a list of nodes that can be reached from $node in N hops.
+where "N" should be replaced with any number. This will return a list of nodes that can be reached from $node in N hops. To select all these nodes in the GUI Device view, you can wrap the above command with the "select_objects" command like so:
+
+~~~~~~
+:::tcl
+select_objects [::tincr::nodes hops $node 3]
+~~~~~~
+
+If the GUI isn't already open, you will need to call the "start_gui" command first.
&lt;/pre&gt;
&lt;/div&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Brad</dc:creator><pubDate>Tue, 01 Sep 2015 15:15:11 -0000</pubDate><guid>https://sourceforge.netfa3b6951da5a6c8dae81dbbc7d6cbf0ac6b9ff24</guid></item><item><title>device_examples modified by Brad</title><link>https://sourceforge.net/p/tincr/wiki/device_examples/</link><description>&lt;div class="markdown_content"&gt;&lt;pre&gt;--- v8
+++ v9
@@ -7,7 +7,7 @@
 vivado -mode tcl
 ~~~~~~

-If you are using the GUI, place your cursor in the Tcl Console window at the bottom of the application (where it says "Type a Tcl command here"). Now that we are in Vivado's Tcl console, we need to import the Tincr packages (Tincr must be installed first):
+If you are using the GUI, place your cursor in the Tcl Console window at the bottom of the application (where it says "Type a Tcl command here"). Now that Vivado's Tcl console is open, the Tincr packages need to be imported (Tincr must be installed first):

 ~~~~~~
 :::tcl
&lt;/pre&gt;
&lt;/div&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Brad</dc:creator><pubDate>Sat, 29 Aug 2015 06:00:06 -0000</pubDate><guid>https://sourceforge.net5dc24d1c715b48c92e109464552e2c0082962871</guid></item><item><title>device_examples modified by Brad</title><link>https://sourceforge.net/p/tincr/wiki/device_examples/</link><description>&lt;div class="markdown_content"&gt;&lt;pre&gt;--- v7
+++ v8
@@ -18,7 +18,7 @@

 ~~~~~~
 :::tcl
-::tincr::designs new NodeHop xc7k70tfbg484-3
+::tincr::designs new demo xc7k70tfbg484-3
 ~~~~~~

 The xc7k70tfbg484-3 part will be used in all examples in this section. If you do not have this device install, feel free to try another part. If you are running any of the included scripts, you will need to update the part in each script.
@@ -33,5 +33,37 @@

 For example, you can have a node that starts from a PIP and ends at a site pin.

-Being able to traverse nodes quickly and easily is crucial to the implementation of any tool that involves routing a design. This example shows you how you can use Tincr to find the set of nodes that are reachable from a given node in X number of "hops". A "hop" refers to the traversal of a PIP between two nodes, in the direction of the flow of data across that PIP. In other words, the set of nodes that are 1 hop away from a given node are all nodes that are sourced by a PIP that is sourced by the given node.
+Being able to traverse nodes quickly and easily is crucial to the implementation of any FPGA routing tool. This example shows you how you can use Tincr to find the set of nodes that are reachable from a given node in X number of "hops". A "hop" refers to the traversal of a PIP between two nodes, in the direction of the flow of data across that PIP. In other words, the set of nodes that are 1 hop away from a given node are all nodes that are sourced by a PIP that is sourced by the given node.

+If you don't already have a device loaded in Vivado, please follow the instructions at the beginning of this page.
+
+### Select a node ###
+
+First, we need to select a starting node. In the Tcl command prompt, type the following:
+
+~~~~~~
+:::tcl
+set node [get_nodes INT_L_X14Y66/EE4BEG3]
+~~~~~~
+
+This command gets a handle to the node named INT_L_X14Y66/EE4BEG3 and assigns it to the node variable.
+
+Alternatively, if you are working from the GUI, you can select a node from the Device window. First, click on a node to highlight it, and then enter the following:
+
+~~~~~~
+:::tcl
+set node [get_selected_objects]
+~~~~~~
+
+If you cannot see any nodes in the Device view, ensure the "Routing Resources" toggle button is selected (on the left side of the window).
+
+### Get all nodes N hops away ###
+
+Getting a set nodes N hops away from the node chosen earlier can be done using the command
+
+~~~~~~
+:::tcl
+::tincr::nodes hops $node N
+~~~~~~
+
+where "N" should be replaced with any number. This will return a list of nodes that can be reached from $node in N hops.
&lt;/pre&gt;
&lt;/div&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Brad</dc:creator><pubDate>Sat, 29 Aug 2015 01:28:30 -0000</pubDate><guid>https://sourceforge.netc852fa76da99903d62cac27013967e399cf21ba6</guid></item><item><title>device_examples modified by Brad</title><link>https://sourceforge.net/p/tincr/wiki/device_examples/</link><description>&lt;div class="markdown_content"&gt;&lt;pre&gt;--- v6
+++ v7
@@ -1,5 +1,27 @@
 # Device Examples #
 [TOC]
+
+All of the examples listed in this section assume that you have a device loaded in Vivado. Before beginning any of these examples, first open Vivado. You can either start the GUI or run Vivado from a command prompt (make sure Vivado's bin directory is on your path):
+
+~~~~~~
+vivado -mode tcl
+~~~~~~
+
+If you are using the GUI, place your cursor in the Tcl Console window at the bottom of the application (where it says "Type a Tcl command here"). Now that we are in Vivado's Tcl console, we need to import the Tincr packages (Tincr must be installed first):
+
+~~~~~~
+:::tcl
+package require tincr
+~~~~~~
+
+The Tcl interpreter will return the version of Tincr that is installed. Next, we will create an empty design.  Enter the following:
+
+~~~~~~
+:::tcl
+::tincr::designs new NodeHop xc7k70tfbg484-3
+~~~~~~
+
+The xc7k70tfbg484-3 part will be used in all examples in this section. If you do not have this device install, feel free to try another part. If you are running any of the included scripts, you will need to update the part in each script.

 ## Node Hopping ##

@@ -13,24 +35,3 @@

 Being able to traverse nodes quickly and easily is crucial to the implementation of any tool that involves routing a design. This example shows you how you can use Tincr to find the set of nodes that are reachable from a given node in X number of "hops". A "hop" refers to the traversal of a PIP between two nodes, in the direction of the flow of data across that PIP. In other words, the set of nodes that are 1 hop away from a given node are all nodes that are sourced by a PIP that is sourced by the given node.

-Let's first open Vivado in non-project mode. From a command prompt (make sure Vivado's bin directory is on your path), type the following:
-
-~~~~~~
-vivado -mode tcl
-~~~~~~
-
-Now that we are in Vivado's Tcl interpreter, we need to import the Tincr packages (Tincr must be installed first):
-
-~~~~~~
-:::tcl
-package require tincr
-~~~~~~
-
-The Tcl interpreter will return the version of Tincr that is installed. Next, we will create an empty design.  Enter the following:
-
-~~~~~~
-:::tcl
-::tincr::designs new NodeHop xc7k70tfbg484-3
-~~~~~~
-
-In this example, I will use the part "xc7k70tfbg484-3". If this part isn't in your Vivado install, you may substitute for another one.
&lt;/pre&gt;
&lt;/div&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Brad</dc:creator><pubDate>Sat, 29 Aug 2015 01:11:45 -0000</pubDate><guid>https://sourceforge.net70a6704fc31929e21c3817cb3cb13c38480f0e3a</guid></item><item><title>device_examples modified by Brad</title><link>https://sourceforge.net/p/tincr/wiki/device_examples/</link><description>&lt;div class="markdown_content"&gt;&lt;pre&gt;--- v5
+++ v6
@@ -19,9 +19,18 @@
 vivado -mode tcl
 ~~~~~~

-Next, we need to import the Tincr packages (Tincr must be installed first):
+Now that we are in Vivado's Tcl interpreter, we need to import the Tincr packages (Tincr must be installed first):

 ~~~~~~
 :::tcl
 package require tincr
 ~~~~~~
+
+The Tcl interpreter will return the version of Tincr that is installed. Next, we will create an empty design.  Enter the following:
+
+~~~~~~
+:::tcl
+::tincr::designs new NodeHop xc7k70tfbg484-3
+~~~~~~
+
+In this example, I will use the part "xc7k70tfbg484-3". If this part isn't in your Vivado install, you may substitute for another one.
&lt;/pre&gt;
&lt;/div&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Brad</dc:creator><pubDate>Fri, 28 Aug 2015 15:25:08 -0000</pubDate><guid>https://sourceforge.net2bee61df59987c4c053ad57c3b4be1de05b518ab</guid></item><item><title>device_examples modified by Brad</title><link>https://sourceforge.net/p/tincr/wiki/device_examples/</link><description>&lt;div class="markdown_content"&gt;&lt;pre&gt;--- v4
+++ v5
@@ -14,10 +14,13 @@
 Being able to traverse nodes quickly and easily is crucial to the implementation of any tool that involves routing a design. This example shows you how you can use Tincr to find the set of nodes that are reachable from a given node in X number of "hops". A "hop" refers to the traversal of a PIP between two nodes, in the direction of the flow of data across that PIP. In other words, the set of nodes that are 1 hop away from a given node are all nodes that are sourced by a PIP that is sourced by the given node.

 Let's first open Vivado in non-project mode. From a command prompt (make sure Vivado's bin directory is on your path), type the following:
+
 ~~~~~~
 vivado -mode tcl
 ~~~~~~
+
 Next, we need to import the Tincr packages (Tincr must be installed first):
+
 ~~~~~~
 :::tcl
 package require tincr
&lt;/pre&gt;
&lt;/div&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Brad</dc:creator><pubDate>Fri, 28 Aug 2015 15:19:54 -0000</pubDate><guid>https://sourceforge.netce21a42bd57f8b1194289dfa0bc0cd936d9ce551</guid></item><item><title>device_examples modified by Brad</title><link>https://sourceforge.net/p/tincr/wiki/device_examples/</link><description>&lt;div class="markdown_content"&gt;&lt;pre&gt;--- v3
+++ v4
@@ -14,7 +14,11 @@
 Being able to traverse nodes quickly and easily is crucial to the implementation of any tool that involves routing a design. This example shows you how you can use Tincr to find the set of nodes that are reachable from a given node in X number of "hops". A "hop" refers to the traversal of a PIP between two nodes, in the direction of the flow of data across that PIP. In other words, the set of nodes that are 1 hop away from a given node are all nodes that are sourced by a PIP that is sourced by the given node.

 Let's first open Vivado in non-project mode. From a command prompt (make sure Vivado's bin directory is on your path), type the following:
-
 ~~~~~~
 vivado -mode tcl
 ~~~~~~
+Next, we need to import the Tincr packages (Tincr must be installed first):
+~~~~~~
+:::tcl
+package require tincr
+~~~~~~
&lt;/pre&gt;
&lt;/div&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Brad</dc:creator><pubDate>Fri, 28 Aug 2015 15:19:21 -0000</pubDate><guid>https://sourceforge.net4cae81b102aad40b950f0f09031d1430aa168d7a</guid></item><item><title>device_examples modified by Brad</title><link>https://sourceforge.net/p/tincr/wiki/device_examples/</link><description>&lt;div class="markdown_content"&gt;&lt;pre&gt;--- v2
+++ v3
@@ -13,7 +13,8 @@

 Being able to traverse nodes quickly and easily is crucial to the implementation of any tool that involves routing a design. This example shows you how you can use Tincr to find the set of nodes that are reachable from a given node in X number of "hops". A "hop" refers to the traversal of a PIP between two nodes, in the direction of the flow of data across that PIP. In other words, the set of nodes that are 1 hop away from a given node are all nodes that are sourced by a PIP that is sourced by the given node.

-Let's first open Vivado in non-project mode:
+Let's first open Vivado in non-project mode. From a command prompt (make sure Vivado's bin directory is on your path), type the following:

-:::tcl
-hello world!
+~~~~~~
+vivado -mode tcl
+~~~~~~
&lt;/pre&gt;
&lt;/div&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Brad</dc:creator><pubDate>Fri, 28 Aug 2015 15:17:56 -0000</pubDate><guid>https://sourceforge.net65bddf40baf5dfa3cfcc969ad4431a105dd6075c</guid></item></channel></rss>