26int acd_evaluate(
word * pTruth,
unsigned nVars,
int lutSize,
unsigned *pdelay,
unsigned *cost,
int try_no_late_arrival )
37 int val =
acd.run( pTruth, *pdelay );
45 *pdelay =
acd.get_profile();
51int acd_decompose(
word * pTruth,
unsigned nVars,
int lutSize,
unsigned *pdelay,
unsigned char *decomposition )
61 acd.run( pTruth, *pdelay );
62 int val =
acd.compute_decomposition();
70 *pdelay =
acd.get_profile();
71 acd.get_decomposition( decomposition );
75int acd2_evaluate(
word * pTruth,
unsigned nVars,
int lutSize,
unsigned *pdelay,
unsigned *cost,
int try_no_late_arrival )
83 int val =
acd.run( pTruth, *pdelay );
91 acd.compute_decomposition();
92 *pdelay =
acd.get_profile();
98int acd2_decompose(
word * pTruth,
unsigned nVars,
int lutSize,
unsigned *pdelay,
unsigned char *decomposition )
106 acd.run( pTruth, *pdelay );
107 int val =
acd.compute_decomposition();
115 *pdelay =
acd.get_profile();
117 acd.get_decomposition( decomposition );
127 if (
acd.run( pTruth ) == 0 )
147 if (
acd.run( pTruth ) == 0 )
160 for (
int i = 0; i <= lutSize - 2; ++i )
166 if (
acd.run( pTruth ) == 0 )
168 acd.compute_decomposition();
169 acd.get_decomposition( decomposition );
#define ABC_NAMESPACE_IMPL_START
#define ABC_NAMESPACE_IMPL_END
Ashenhurst-Curtis decomposition.
int acd_decompose(word *pTruth, unsigned nVars, int lutSize, unsigned *pdelay, unsigned char *decomposition)
int acdXX_decompose(word *pTruth, unsigned lutSize, unsigned nVars, unsigned char *decomposition)
int acd66_evaluate(word *pTruth, unsigned nVars)
int acdXX_evaluate(word *pTruth, unsigned lutSize, unsigned nVars)
ABC_NAMESPACE_IMPL_START int acd_evaluate(word *pTruth, unsigned nVars, int lutSize, unsigned *pdelay, unsigned *cost, int try_no_late_arrival)
int acd2_evaluate(word *pTruth, unsigned nVars, int lutSize, unsigned *pdelay, unsigned *cost, int try_no_late_arrival)
int acd2_decompose(word *pTruth, unsigned nVars, int lutSize, unsigned *pdelay, unsigned char *decomposition)
Ashenhurst-Curtis decomposition for "66" cascade.
Ashenhurst-Curtis decomposition for "XX" cascade.
unsigned __int64 word
DECLARATIONS ///.
Parameters for ac_decomposition.
bool use_first
Use the first feasible decomposition found.
bool try_no_late_arrival
If decomposition with delay profile fails, try without.
uint32_t lut_size
LUT size for decomposition (3 < num < 7).
Statistics for ac_decomposition.