You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
173 lines
6.0 KiB
173 lines
6.0 KiB
<html>
|
|
<head><title>The bnet package</title></head>
|
|
<body>
|
|
|
|
<h1>The bnet package</h1>
|
|
<h2>Simple-minded package to read a blif file.</h2>
|
|
<h3></h3>
|
|
<hr>
|
|
<ul>
|
|
<li><a href="bnetExtAbs.html"><h3>External abstracts</h3></a>
|
|
<li><a href="bnetAllAbs.html"><h3>All abstracts</h3></a>
|
|
<li><a href="bnetExtDet.html#prototypes"><h3>External functions</h3></a>
|
|
<li><a href="bnetAllDet.html#prototypes"><h3>All functions</h3></a>
|
|
</ul>
|
|
|
|
<hr>
|
|
|
|
<a name="description">
|
|
|
|
</a>
|
|
|
|
<hr>
|
|
<!-- Function Prototypes and description -->
|
|
|
|
<dl>
|
|
<a name="prototypes"></a>
|
|
<dt><pre>
|
|
int <i></i>
|
|
<a name="Bnet_BuildNodeBDD"><b>Bnet_BuildNodeBDD</b></a>(
|
|
DdManager * <b>dd</b>, <i>DD manager</i>
|
|
BnetNode * <b>nd</b>, <i>node of the boolean network</i>
|
|
st_table * <b>hash</b>, <i>symbol table of the boolean network</i>
|
|
int <b>params</b>, <i>type of DD to be built</i>
|
|
int <b>nodrop</b> <i>retain the intermediate node DDs until the end</i>
|
|
)
|
|
</pre>
|
|
<dd> Builds the BDD for the function of a node and stores a pointer to it in the dd field of the node itself. The reference count of the BDD is incremented. If params is BNET_LOCAL_DD, then the BDD is built in terms of the local inputs to the node; otherwise, if params is BNET_GLOBAL_DD, the BDD is built in terms of the network primary inputs. To build the global BDD of a node, the BDDs for its local inputs must exist. If that is not the case, Bnet_BuildNodeBDD recursively builds them. Likewise, to create the local BDD for a node, the local inputs must have variables assigned to them. If that is not the case, Bnet_BuildNodeBDD recursively assigns variables to nodes. Bnet_BuildNodeBDD returns 1 in case of success; 0 otherwise.
|
|
<p>
|
|
|
|
<dd> <b>Side Effects</b> Sets the dd field of the node.
|
|
<p>
|
|
|
|
<dt><pre>
|
|
int <i></i>
|
|
<a name="Bnet_DfsVariableOrder"><b>Bnet_DfsVariableOrder</b></a>(
|
|
DdManager * <b>dd</b>, <i></i>
|
|
BnetNetwork * <b>net</b> <i></i>
|
|
)
|
|
</pre>
|
|
<dd> Orders the BDD variables by DFS. Returns 1 in case of success; 0 otherwise.
|
|
<p>
|
|
|
|
<dd> <b>Side Effects</b> Uses the visited flags of the nodes.
|
|
<p>
|
|
|
|
<dt><pre>
|
|
void <i></i>
|
|
<a name="Bnet_FreeNetwork"><b>Bnet_FreeNetwork</b></a>(
|
|
BnetNetwork * <b>net</b> <i></i>
|
|
)
|
|
</pre>
|
|
<dd> Frees a boolean network created by Bnet_ReadNetwork.
|
|
<p>
|
|
|
|
<dd> <b>Side Effects</b> None
|
|
<p>
|
|
|
|
<dd> <b>See Also</b> <code><a href="bnetAllDet.html#Bnet_ReadNetwork">Bnet_ReadNetwork</a>
|
|
</code>
|
|
|
|
<dt><pre>
|
|
void <i></i>
|
|
<a name="Bnet_PrintNetwork"><b>Bnet_PrintNetwork</b></a>(
|
|
BnetNetwork * <b>net</b> <i>boolean network</i>
|
|
)
|
|
</pre>
|
|
<dd> Prints to the standard output a boolean network created by Bnet_ReadNetwork. Uses the blif format; this way, one can verify the equivalence of the input and the output with, say, sis.
|
|
<p>
|
|
|
|
<dd> <b>Side Effects</b> None
|
|
<p>
|
|
|
|
<dd> <b>See Also</b> <code><a href="bnetAllDet.html#Bnet_ReadNetwork">Bnet_ReadNetwork</a>
|
|
</code>
|
|
|
|
<dt><pre>
|
|
int <i></i>
|
|
<a name="Bnet_PrintOrder"><b>Bnet_PrintOrder</b></a>(
|
|
BnetNetwork * <b>net</b>, <i></i>
|
|
DdManager * <b>dd</b> <i></i>
|
|
)
|
|
</pre>
|
|
<dd> Prints the order of the DD variables of a network. Only primary inputs and present states are printed. Returns 1 if successful; 0 otherwise.
|
|
<p>
|
|
|
|
<dd> <b>Side Effects</b> None
|
|
<p>
|
|
|
|
<dt><pre>
|
|
BnetNetwork * <i></i>
|
|
<a name="Bnet_ReadNetwork"><b>Bnet_ReadNetwork</b></a>(
|
|
FILE * <b>fp</b>, <i>pointer to the blif file</i>
|
|
int <b>pr</b> <i>verbosity level</i>
|
|
)
|
|
</pre>
|
|
<dd> Reads a boolean network from a blif file. A very restricted subset of blif is supported. Specifically: <ul> <li> The only directives recognized are: <ul> <li> .model <li> .inputs <li> .outputs <li> .latch <li> .names <li> .exdc <li> .wire_load_slope <li> .end </ul> <li> Latches must have an initial values and no other parameters specified. <li> Lines must not exceed MAXLENGTH-1 characters, and individual names must not exceed 1023 characters. </ul> Caveat emptor: There may be other limitations as well. One should check the syntax of the blif file with some other tool before relying on this parser. Bnet_ReadNetwork returns a pointer to the network if successful; NULL otherwise.
|
|
<p>
|
|
|
|
<dd> <b>Side Effects</b> None
|
|
<p>
|
|
|
|
<dd> <b>See Also</b> <code><a href="bnetAllDet.html#Bnet_PrintNetwork">Bnet_PrintNetwork</a>
|
|
<a href="bnetAllDet.html#Bnet_FreeNetwork">Bnet_FreeNetwork</a>
|
|
</code>
|
|
|
|
<dt><pre>
|
|
int <i></i>
|
|
<a name="Bnet_ReadOrder"><b>Bnet_ReadOrder</b></a>(
|
|
DdManager * <b>dd</b>, <i></i>
|
|
char * <b>ordFile</b>, <i></i>
|
|
BnetNetwork * <b>net</b>, <i></i>
|
|
int <b>locGlob</b>, <i></i>
|
|
int <b>nodrop</b> <i></i>
|
|
)
|
|
</pre>
|
|
<dd> Reads the variable order from a file. Returns 1 if successful; 0 otherwise.
|
|
<p>
|
|
|
|
<dd> <b>Side Effects</b> The BDDs for the primary inputs and present state variables are built.
|
|
<p>
|
|
|
|
<dt><pre>
|
|
int <i></i>
|
|
<a name="Bnet_bddArrayDump"><b>Bnet_bddArrayDump</b></a>(
|
|
DdManager * <b>dd</b>, <i>DD manager</i>
|
|
BnetNetwork * <b>network</b>, <i>network whose BDDs should be dumped</i>
|
|
char * <b>dfile</b>, <i>file name</i>
|
|
DdNode ** <b>outputs</b>, <i>BDDs to be dumped</i>
|
|
char ** <b>onames</b>, <i>names of the BDDs to be dumped</i>
|
|
int <b>noutputs</b>, <i>number of BDDs to be dumped</i>
|
|
int <b>dumpFmt</b> <i>0 -> dot</i>
|
|
)
|
|
</pre>
|
|
<dd> Writes an array of BDDs to a file in dot, blif, DDcal, factored-form, or daVinci format. The BDDs and their names are passed as arguments. The inputs and their names are taken from the network. If "-" is passed as file name, the BDDs are dumped to the standard output. Returns 1 in case of success; 0 otherwise.
|
|
<p>
|
|
|
|
<dd> <b>Side Effects</b> None
|
|
<p>
|
|
|
|
<dt><pre>
|
|
int <i></i>
|
|
<a name="Bnet_bddDump"><b>Bnet_bddDump</b></a>(
|
|
DdManager * <b>dd</b>, <i>DD manager</i>
|
|
BnetNetwork * <b>network</b>, <i>network whose BDDs should be dumped</i>
|
|
char * <b>dfile</b>, <i>file name</i>
|
|
int <b>dumpFmt</b>, <i>0 -> dot</i>
|
|
int <b>reencoded</b> <i>whether variables have been reencoded</i>
|
|
)
|
|
</pre>
|
|
<dd> Writes the network BDDs to a file in dot, blif, or daVinci format. If "-" is passed as file name, the BDDs are dumped to the standard output. Returns 1 in case of success; 0 otherwise.
|
|
<p>
|
|
|
|
<dd> <b>Side Effects</b> None
|
|
<p>
|
|
|
|
|
|
</dl>
|
|
|
|
<hr>
|
|
|
|
Generated automatically by <code>extdoc</code> on 1010215
|
|
|
|
</body></html>
|