Question:
We would like to see an example of using a family route connection topology implemented in several different ways.
Answer:
The following graph performs a bit reversal of the indices of the inputs. The input has a decimal value index. That index is then bit reversed, the number of bits to use in the reversal is specified by "n". That value now has a new decimal value. The input with the original decimal value is connected to that output with the decimal value of the bit-reversed index
For example, input The graph can be found in:
Figure 1. The top level graph for the bit reversal demonstration.
The route topology created is seen as: First, we show how bit-reversed routing can be built using C syntax equations.
Note that the range variable R is defined in the parent graph and is not defined in this hierarchical box.
Figure 2. For the graph shown in Figure 1, this is internal to "bit_rev". The value for "R" is taken from "L" in the higher level.
Bit Reverse Flow starting bit position abcde 'a' moves to position 0 ----a 'b' moves to position 1 ---ba 'c' moves to position 2 --cba 'd' moves to position 3 -dcba 'e' moves to position 4 edcba
The constant ' rev OR mask OR sh_left
rev | mask | sh_left
rev = move the most significant bit to its correct position.
mask = move bits that are in the correct order straight down.
sh_left = shift unordered bits to the left.
All the above can be accomplished more easily using the reverse function.
The route topology created is seen as:
Application Note last updated 3/24/98