polardupablexpr - duplicates an expression and moves down the inverters.
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
#include abl101.h"
chain_list *polardupablexpr( Expr, Polar )
chain_list *Expr;
polardupablexpr modifies Expr by moving down the inverters to the atomic level. polardupablexpr applies the Morgan's laws. If Polar is equal to ABL_POLAR_NEGATIVE the function returns the modified expression after having complemented it.
polardupablexpr returns the modified expression.
#include abl101.h"
chain_list *Expr1;
chain_list *Expr2;
Expr1 = createabloper( ABL_NOT );
Expr2 = createabloper( ABL_NOT );
addablhexpr( Expr1, createablatom( a ) );
addablhexpr( Expr2, Expr1 );
Expr1 = polardupablexpr( Expr2, ABL_POLAR_POSITIVE );
/* displays a */
viewablexpr( Expr1, ABL_VIEW_VHDL );
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.