NAME¶
convertbddmuxabl - converts two
bdd nodes to an
abl multiplexor
expression.
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"
chain_list *convertbddmuxabl( BddSystem, NameArray, IndexArray, Equation, BddHigh, BddLow )
bddsystem ΒddSystem;
char (*NameArray;
bddindex ΙndexArray;
chain_list Εquation;
bddnode ΒddHigh;
bddnode ΒddLow;
PARAMETERS¶
- BddSystem
- The bdd system.
- NameArray
- The array of names.
- IndexArray
- The array of indexes.
- Equation
- The multiplexor command.
- BddHigh
- The first bdd node.
- BddLow
- The second bdd node.
DESCRIPTION¶
convertbddmuxabl creates the following
abl expression (
BddHigh AND
Equation ) OR (
BddLow AND (NOT
Equation ) ) in the
bdd system
BddSystem. If a null
pointer is given, the default
bdd system is used. The
NameArray,
and
IndexArray parameters are used to translate the variable nodes into
atomic expressions. The array
NameArray is list of names. The array
IndexArray does the correspondence between a
bdd node index and
a slot in the
NameArray. If the
IndexArray parameter is a null
pointer, then the name of the
bdd index BDD_INDEX_MIN is assumed to be
the first slot of the
NameArray, and so on.
RETURN VALUE¶
convertbddmuxabl returns a pointer to the
abl expression
translated.
EXAMPLE¶
#include "bdd101.h"
bddsystem ∗BddSystem;
bddnode ∗BddNode1;
bddnode ∗BddNode2;
chain_list ∗Expr;
char ∗NameArray[ 2 ];
BddSystem = createbddsystem( 100, 1000, 100, 50000 );
BddNode1 = addbddvarlast( BddSystem );
BddNode2 = addbddvarlast( BddSystem );
NameArray[ 0 ] = namealloc( "i0" );
NameArray[ 1 ] = namealloc( "i1" );
Expr = convertbddmuxabl( BddSystem, NameArray, (bddindex ∗)0,
createablatom( "C" ), BddNode1, BddNode2 );
/* displays (i0 and C) or (i1 and (not C)) */
viewablexpr( Expr, ABL_VIEW_VHDL );
freeablexpr( Expr );
destroybddsystem( (bddsystem ∗)0 );
SEE ALSO¶
bdd(1),
abl(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.