NAME¶
applybddnode - applies an operator on two
bdd nodes.
ORIGIN¶
This software belongs to the ALLIANCE CAD SYSTEM developed by the ASIM team at
LIP6 laboratory of Université Pierre et Marie CURIE, in Paris,
France.
Web :
http://asim.lip6.fr/recherche/alliance/
E-mail :
alliance-users@asim.lip6.fr
SYNOPSYS¶
#include "bdd101.h"
bddnode ∗applybddnode( BddSystem, Oper, BddNode1, BddNode2 )
bddsystem ∗BddSystem;
long Oper;
bddnode ∗BddNode1;
bddnode ∗BddNode2;
PARAMETERS¶
- BddSystem
- The bdd system.
- Oper
- The binary operator.
- BddNode1
- The first bdd node.
- BddNode2
- The second bdd node.
DESCRIPTION¶
applybddnode computes the boolean function
BddNode1 Oper
BddNode2 in the
bdd system
BddSystem. If a null pointer
is given, the default
bdd system is used.
RETURN VALUE¶
applybddnode returns a pointer to the resulting
bdd node with its
number of external reference incremented.
ERRORS¶
"bad operator xxx error !"
The Oper parameter must be a valid
binary operator.
EXAMPLE¶
#include "bdd101.h"
bddsystem ∗BddSystem;
bddcircuit ∗BddCircuit;
bddnode ∗BddNode;
chain_list ∗Expr;
BddSystem = createbddsystem( 100, 1000, 100, 50000 );
BddCircuit = createbddcircuit( "hello_world", 10, 10, BddSystem );
addbddcircuitin( (bddcircuit ∗)0, "i0", 0, BDD_IN_MODE_FIRST );
addbddcircuitin( (bddcircuit ∗)0, "i1", 0, BDD_IN_MODE_FIRST );
BddNode = applybddnode( (bddsystem ∗)0,
ABL_AND,
searchbddcircuitin( (bddcircuit ∗)0, "i0" ),
searchbddcircuitin( (bddcircuit ∗)0, "i1" ) );
Expr = convertbddcircuitabl( (bddcircuit ∗)0, BddNode );
/* displays (i0 and i1) */
viewablexpr( Expr, ABL_VIEW_VHDL );
freeablexpr( Expr );
destroybddsystem( (bddsystem ∗)0 );
destroybddcircuit( (bddcircuit ∗)0 );
SEE ALSO¶
bdd(1)
BUG REPORT¶
This tool is under development at the
ASIM department of the
LIP6
laboratory.
We need your feedback to improve documentation and tools.