diff options
author | Alan Mishchenko <alanmi@berkeley.edu> | 2015-01-21 17:43:46 -0800 |
---|---|---|
committer | Alan Mishchenko <alanmi@berkeley.edu> | 2015-01-21 17:43:46 -0800 |
commit | ffc7b60d2d9b8d082c07ffd64c5a3de98b4cc459 (patch) | |
tree | d68936b328fea34932412351c0c6c3f496989e69 /src/base/wlc/wlcBlast.c | |
parent | 14425c111ef5dba0ab3d96a3f115c3320ee95e23 (diff) | |
download | abc-ffc7b60d2d9b8d082c07ffd64c5a3de98b4cc459.tar.gz abc-ffc7b60d2d9b8d082c07ffd64c5a3de98b4cc459.tar.bz2 abc-ffc7b60d2d9b8d082c07ffd64c5a3de98b4cc459.zip |
Support of init-state in AIGs derived from word-level designs in Wlc_Ntk_t.
Diffstat (limited to 'src/base/wlc/wlcBlast.c')
-rw-r--r-- | src/base/wlc/wlcBlast.c | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/src/base/wlc/wlcBlast.c b/src/base/wlc/wlcBlast.c index c135b63e..f5707294 100644 --- a/src/base/wlc/wlcBlast.c +++ b/src/base/wlc/wlcBlast.c @@ -777,6 +777,20 @@ Gia_Man_t * Wlc_NtkBitBlast( Wlc_Ntk_t * p, Vec_Int_t * vBoxIds ) // finalize AIG pNew = Gia_ManCleanup( pTemp = pNew ); Gia_ManStop( pTemp ); + // transform AIG with init state + if ( p->pInits ) + { + if ( (int)strlen(p->pInits) != Gia_ManRegNum(pNew) ) + { + printf( "The number of init values (%d) does not match the number of flops (%d).\n", strlen(p->pInits), Gia_ManRegNum(pNew) ); + printf( "It is assumed that the AIG has constant 0 initial state.\n" ); + } + else + { + pNew = Gia_ManDupZeroUndc( pTemp = pNew, p->pInits, 1 ); + Gia_ManStop( pTemp ); + } + } // finalize AIG with boxes if ( vBoxIds ) { |