| 1 | |
|---|
| 2 | write_order - write the current order of the MDD variables of the flattened |
|---|
| 3 | network |
|---|
| 4 | _________________________________________________________________ |
|---|
| 5 | |
|---|
| 6 | write_order [-h] [-o <type>] [<file>] |
|---|
| 7 | |
|---|
| 8 | Write the current order of the MDD variables of the flattened network. |
|---|
| 9 | If no file name is specified, the output is written to stdout. A |
|---|
| 10 | sample output is shown here. |
|---|
| 11 | # name type mddId vals levs |
|---|
| 12 | system.choosing0 primary-input 31 2 (61) |
|---|
| 13 | system.p0.pc latch 32 11 (62, 63, 64, 65) |
|---|
| 14 | |
|---|
| 15 | |
|---|
| 16 | The first column gives the full hierarchical path name of the node, |
|---|
| 17 | starting from the current hierarchical node. The second column gives |
|---|
| 18 | the type of the node in the flattened network (see the command |
|---|
| 19 | print_network). The third column gives the MDD id of the node; this |
|---|
| 20 | can be thought of as just another name for the node. The fourth column |
|---|
| 21 | gives the number of values that the multi-valued variable at the |
|---|
| 22 | output of the node can assume. The last column gives the levels of the |
|---|
| 23 | BDD variables that encode the multi-valued variable (0 is the topmost |
|---|
| 24 | level of the BDD). |
|---|
| 25 | |
|---|
| 26 | The bits of a multi-valued variable need not appear consecutively (due |
|---|
| 27 | to dynamic variable ordering). Each node appears at most once in the |
|---|
| 28 | output file. The nodes in the file appear in ascending order of the |
|---|
| 29 | lowest level bit in the encoding of the node's multi-valued variable |
|---|
| 30 | (e.g. a node with levels (12, 73) will appear before a node with |
|---|
| 31 | levels (17, 21, 25)). |
|---|
| 32 | |
|---|
| 33 | To specify a variable ordering for static_order, a convenient tactic |
|---|
| 34 | is to write out the current ordering, edit the file to rearrange the |
|---|
| 35 | ordering (or comment out some nodes, using "#"), and then read the |
|---|
| 36 | file back in using static_order. Note that everything after the first |
|---|
| 37 | column is ignored when the file is read in. |
|---|
| 38 | |
|---|
| 39 | Command options: |
|---|
| 40 | |
|---|
| 41 | -h |
|---|
| 42 | Print the command usage. |
|---|
| 43 | |
|---|
| 44 | -o <type> |
|---|
| 45 | Specify the network nodes to write out. Type can be one of the |
|---|
| 46 | following: |
|---|
| 47 | |
|---|
| 48 | all: Write out all the nodes of the network. This option is |
|---|
| 49 | allowed only if all variables have been ordered. |
|---|
| 50 | |
|---|
| 51 | input_and_latch: (default) Write out the primary inputs, pseudo |
|---|
| 52 | inputs, latches, and next state variables. |
|---|
| 53 | |
|---|
| 54 | next_state_node: Write out the next state variables (node type |
|---|
| 55 | is "shadow"). This file can be modified and read back in using |
|---|
| 56 | the static_order -s next_state_node command. |
|---|
| 57 | |
|---|
| 58 | <file> |
|---|
| 59 | File to which to write the ordering. By default, the ordering |
|---|
| 60 | is written to stdout. |
|---|
| 61 | _________________________________________________________________ |
|---|
| 62 | |
|---|
| 63 | Last updated on 20050519 10h16 |
|---|