polarablexpr - moves inverters to the atomic level.
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 *polarablexpr( Expr, Polar )
chain_list *Expr;
polarablexpr modifies Expr by moving down the inverters to the atomic level. polarablexpr applies the Morgan's laws. If Polar is equal to ABL_POLAR_NEGATIVE the function returns the modified expression after having complemented it. The expression pointer Expr MUSTN'T be used after the call to this function.
polarablexpr 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 = polarablexpr( 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.