Table of Contents

Name

relprodbddnodeassoc - computes a relational product.

Origin

This software belongs to the ALLIANCE CAD system from the CAO-VLSI team at ASIM/LIP6/UPMC laboratory.
LIP6/ASIM
University P. et M. Curie 4, place Jussieu 75252 PARIS Cedex 05 FRANCE
Fax : {33/0} 1.44.27.62.86
E-mail support : alliance-support@asim.lip6.fr

Synopsys

#include bdd101.h"
bddnode *relprodbddnodeassoc( BddSystem, BddNode1, BddNode2, BddAssoc ) bddsystem *BddSystem;
bddnode *BddNode1;
bddnode *BddNode2;
bddassoc *BddAssoc;

Parameters

BddSystem
The bdd system.
BddNode1
The first bdd node.
BddNode2
The second bdd node.
BddAssoc
The variable association.

Description

relprodbddnodeassoc computes BddNode1 AND BddNode2, and suppress the variables associated with something in the variable association BddAssoc, in the bdd system BddSystem. If a null pointer is given, the default bdd system is used.

Return Value

relprodbddnodeassoc returns the computed bdd node.

Errors

bad variable association xxx, error !" The BddAssoc parameter must a valid variable association.

Example

#include bdd101.h"
bddsystem *BddSystem;
bddcircuit *BddCircuit;

bddnode
*BddNode;
bddnode
*BddNode1;
bddnode
*BddNode2;
bddnode
*BddVariable; bddassoc *Assoc; chain_list *Expr;
bddvar
Variable; BddSystem = createbddsystem( 100, 1000, 100, 50000 ); BddCircuit = createbddcircuit( hello_world", 10, 10, BddSystem ); Expr = createablbinexpr( ABL_AND, createablatom( i0 ), createablatom( i1 ) ); BddNode1 = addbddcircuitabl( BddCircuit, Expr ); freeablexpr( Expr ); Expr = createablbinexpr( ABL_OR, createablatom( i0 ), createablatom( i1 ) ); BddNode2 = addbddcircuitabl( BddCircuit, Expr ); freeablexpr( Expr ); BddVariable = searchbddcircuitin( (bddcircuit *)0, i0 ); Variable = getbddvarbyindex( (bddsystem *)0, BddVariable->INDEX ); Assoc = addbddassoc( (bddsystem *)0 ); addbddnodeassoc( (bddsystem *)0, Assoc, Variable, BddSystem->ONE ); BddNode = relprodbddnodeassoc( (bddsystem *)0, BddNode1, BddNode2, Assoc ); Expr = convertbddcircuitabl( BddCircuit, BddNode ); /* displays i1 */ viewablexpr( Expr, ABL_VIEW_VHDL ); freeablexpr( Expr ); destroybddassoc( (bddsystem *)0 ); destroybddsystem( (bddsystem *)0 ); destroybddcircuit( (bddcircuit *)0 );

See Also

bdd(1)

Bug Report

This tool is under development at the ASIM/LIP6/UPMC laboratory, cao-vlsi research team.
We need your feedbak to improve documentation and tools. If you find bugs, please fill-in the form at http://asim.lip6.fr/alliance/support/bug-report/ Thanks for doing this.


Table of Contents

 



Alliance Web Site © 1997, 2002 ASIM/LIP6/UPMC, page maintained by Czo [Olivier Sirol] , last updated on 26 May 2000.