Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
CONVERTBDDMUXABL(3)		 BDD FUNCTIONS		   CONVERTBDDMUXABL(3)

NAME
       convertbddmuxabl	- converts two bdd nodes to an abl multiplexor expres-
       sion.

SYNOPSYS
       #include	"bdd101.h"
       chain_list *convertbddmuxabl( BddSystem,	NameArray, IndexArray, Equation, BddHigh, BddLow )
	 bddsystem  BddSystem;
	 char	   (*NameArray;
	 bddindex   IndexArray;
	 chain_list Equation;
	 bddnode    BddHigh;
	 bddnode    BddLow;

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 BddSys-
       tem.  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).

ASIM/LIP6			October	1, 1997		   CONVERTBDDMUXABL(3)

NAME | SYNOPSYS | PARAMETERS | DESCRIPTION | RETURN VALUE | EXAMPLE | SEE ALSO

Want to link to this manual page? Use this URL:
<https://www.freebsd.org/cgi/man.cgi?query=convertbddmuxabl&sektion=3&manpath=FreeBSD+12.1-RELEASE+and+Ports>

home | help