Scroll to navigation

APPLYBDDNODEITE(3) BDD FUNCTIONS APPLYBDDNODEITE(3)

NAME

applybddnodeite - computes the IF-THEN-ELSE logical operation.

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 ∗applybddnodeite( BddSystem, BddIf, BddThen, BddElse )
  bddnode   ∗BddSystem;
  bddnode   ∗BddIf;
  bddnode   ∗BddThen;
  bddnode   ∗BddElse;

PARAMETERS

BddSystem
The bdd system.
BddIf
The IF bdd node.
BddThen
The THEN bdd node.
BddElse
The ELSE bdd node.

DESCRIPTION

applybddnodeite computes the following logical function ( BddIf AND BddThen) OR ((NOT BddIf) AND BddElse) in the bdd system BddSystem. If a null pointer is given, the default bdd system is used.
 

RETURN VALUE

applybddnodeite returns a pointer to the resulting bdd node with its number of external reference incremented.

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 );
   addbddcircuitin( (bddcircuit ∗)0, "i2", 0, BDD_IN_MODE_FIRST );
   BddNode = applybddnodeite( (bddsystem ∗)0,
                              searchbddcircuitin( (bddcircuit ∗)0, "i0" ),
                              searchbddcircuitin( (bddcircuit ∗)0, "i1" ),
                              searchbddcircuitin( (bddcircuit ∗)0, "i2" ) );
   Expr = convertbddcircuitabl( (bddcircuit ∗)0, BddNode );
   /* displays ((i0 and i1) or ((not i0) and i2) */
   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.
 
October 1, 1997 ASIM/LIP6