#include "base/abc/abc.h"
#include "covInt.h"
Go to the source code of this file.
|
static Cov_Obj_t * | Abc_ObjGetStr (Abc_Obj_t *pObj) |
|
static void | Abc_ObjSetSupp (Abc_Obj_t *pObj, Vec_Int_t *vVec) |
|
static Vec_Int_t * | Abc_ObjGetSupp (Abc_Obj_t *pObj) |
|
static void | Abc_ObjSetCover2 (Abc_Obj_t *pObj, Min_Cube_t *pCov) |
|
static Min_Cube_t * | Abc_ObjGetCover2 (Abc_Obj_t *pObj) |
|
static void | Abc_ObjSetCover (Abc_Obj_t *pObj, Min_Cube_t *pCov, int Pol) |
|
static Min_Cube_t * | Abc_ObjGetCover (Abc_Obj_t *pObj, int Pol) |
|
Abc_Ntk_t * | Abc_NtkCovDerive (Cov_Man_t *p, Abc_Ntk_t *pNtk) |
| FUNCTION DEFINITIONS ///. More...
|
|
Abc_Ntk_t * | Abc_NtkCovDeriveClean (Cov_Man_t *p, Abc_Ntk_t *pNtk) |
|
Abc_Ntk_t * | Abc_NtkCovDeriveRegular (Cov_Man_t *p, Abc_Ntk_t *pNtk) |
|
Abc_Ntk_t * | Abc_NtkSopEsopCover (Abc_Ntk_t *pNtk, int nFaninMax, int fUseEsop, int fUseSop, int fUseInvs, int fVerbose) |
| FUNCTION DEFINITIONS ///. More...
|
|
Cov_Man_t * | Cov_ManAlloc (Abc_Ntk_t *pNtk, int nFaninMax) |
| DECLARATIONS ///. More...
|
|
void | Cov_ManFree (Cov_Man_t *p) |
|
void | Abc_NodeCovDropData (Cov_Man_t *p, Abc_Obj_t *pObj) |
|
Abc_Ntk_t * | Abc_NtkCovTestSop (Abc_Ntk_t *pNtk) |
|
DECLARATIONS ///.
CFile****************************************************************
FileName [cov.h]
SystemName [ABC: Logic synthesis and verification system.]
PackageName [Mapping into network of SOPs/ESOPs.]
Synopsis [External declarations.]
Author [Alan Mishchenko]
Affiliation [UC Berkeley]
Date [Ver. 1.0. Started - June 20, 2005.]
Revision [
- Id:
- cov.h,v 1.00 2005/06/20 00:00:00 alanmi Exp
]
Definition at line 34 of file cov.h.
Definition at line 35 of file cov.h.
Function*************************************************************
Synopsis [Drop the covers at the node.]
Description []
SideEffects []
SeeAlso []
Definition at line 126 of file covMan.c.
132 if ( --nFanouts == 0 )
static Vec_Int_t * Abc_ObjGetSupp(Abc_Obj_t *pObj)
static Min_Cube_t * Abc_ObjGetCover2(Abc_Obj_t *pObj)
static void Vec_IntWriteEntry(Vec_Int_t *p, int i, int Entry)
static int Vec_IntEntry(Vec_Int_t *p, int i)
static void Abc_ObjSetCover2(Abc_Obj_t *pObj, Min_Cube_t *pCov)
static void Min_CoverRecycle(Min_Man_t *p, Min_Cube_t *pCover)
static void Vec_IntFree(Vec_Int_t *p)
static void Abc_ObjSetSupp(Abc_Obj_t *pObj, Vec_Int_t *vVec)
FUNCTION DEFINITIONS ///.
Function*************************************************************
Synopsis [Derives the decomposed network.]
Description []
SideEffects []
SeeAlso []
Definition at line 183 of file covBuild.c.
203 printf(
"Abc_NtkCovDerive: The network check has failed.\n" );
static int Abc_NtkIsStrash(Abc_Ntk_t *pNtk)
#define Abc_NtkForEachCo(pNtk, pCo, i)
ABC_DLL int Abc_NtkCheck(Abc_Ntk_t *pNtk)
FUNCTION DEFINITIONS ///.
static Abc_Obj_t * Abc_ObjFanin0(Abc_Obj_t *pObj)
ABC_DLL void Abc_NtkDelete(Abc_Ntk_t *pNtk)
ABC_DLL Abc_Ntk_t * Abc_NtkStartFrom(Abc_Ntk_t *pNtk, Abc_NtkType_t Type, Abc_NtkFunc_t Func)
ABC_DLL void Abc_NtkFinalize(Abc_Ntk_t *pNtk, Abc_Ntk_t *pNtkNew)
Abc_Obj_t * Abc_NtkCovDeriveNode_rec(Cov_Man_t *p, Abc_Ntk_t *pNtkNew, Abc_Obj_t *pObj, int Level)
ABC_DLL int Abc_NtkLogicMakeSimpleCos(Abc_Ntk_t *pNtk, int fDuplicate)
Function*************************************************************
Synopsis [Derives the decomposed network.]
Description [The resulting network contains only pure AND/OR/EXOR gates and inverters. This procedure is usedful to generate Verilog.]
SideEffects []
SeeAlso []
Definition at line 357 of file covBuild.c.
376 printf(
"Abc_NtkCovDeriveInv: The network check has failed.\n" );
static int Abc_NtkIsStrash(Abc_Ntk_t *pNtk)
Abc_Obj_t * Abc_NtkCovDeriveNodeInv_rec(Cov_Man_t *p, Abc_Ntk_t *pNtkNew, Abc_Obj_t *pObj, int fCompl)
static int Abc_ObjFaninC0(Abc_Obj_t *pObj)
#define Abc_NtkForEachCo(pNtk, pCo, i)
ABC_DLL int Abc_NtkCheck(Abc_Ntk_t *pNtk)
FUNCTION DEFINITIONS ///.
static Abc_Obj_t * Abc_ObjFanin0(Abc_Obj_t *pObj)
ABC_DLL void Abc_NtkDelete(Abc_Ntk_t *pNtk)
ABC_DLL void Abc_ObjAddFanin(Abc_Obj_t *pObj, Abc_Obj_t *pFanin)
ABC_DLL Abc_Ntk_t * Abc_NtkStartFrom(Abc_Ntk_t *pNtk, Abc_NtkType_t Type, Abc_NtkFunc_t Func)
ABC_DLL int Abc_NtkLogicMakeSimpleCos(Abc_Ntk_t *pNtk, int fDuplicate)
Function*************************************************************
Synopsis [Derives the decomposed network.]
Description []
SideEffects []
SeeAlso []
Definition at line 503 of file covBuild.c.
531 printf(
"Abc_NtkCovDerive: The network check has failed.\n" );
static int Abc_NtkIsStrash(Abc_Ntk_t *pNtk)
ABC_DLL Abc_Obj_t * Abc_AigConst1(Abc_Ntk_t *pNtk)
static int Abc_ObjFanoutNum(Abc_Obj_t *pObj)
ABC_DLL Abc_Obj_t * Abc_NtkCreateNodeConst1(Abc_Ntk_t *pNtk)
static int Abc_ObjFaninC0(Abc_Obj_t *pObj)
#define Abc_NtkForEachCo(pNtk, pCo, i)
ABC_DLL int Abc_NtkCheck(Abc_Ntk_t *pNtk)
FUNCTION DEFINITIONS ///.
static Abc_Obj_t * Abc_ObjFanin0(Abc_Obj_t *pObj)
ABC_DLL void Abc_NtkDelete(Abc_Ntk_t *pNtk)
ABC_DLL void Abc_ObjAddFanin(Abc_Obj_t *pObj, Abc_Obj_t *pFanin)
ABC_DLL Abc_Ntk_t * Abc_NtkStartFrom(Abc_Ntk_t *pNtk, Abc_NtkType_t Type, Abc_NtkFunc_t Func)
ABC_DLL Abc_Obj_t * Abc_NtkCreateNodeInv(Abc_Ntk_t *pNtk, Abc_Obj_t *pFanin)
ABC_DLL int Abc_NtkLogicMakeSimpleCos(Abc_Ntk_t *pNtk, int fDuplicate)
ABC_DLL void Abc_SopComplement(char *pSop)
Abc_Obj_t * Abc_NtkCovDerive_rec(Cov_Man_t *p, Abc_Ntk_t *pNtkNew, Abc_Obj_t *pObj)
Abc_Ntk_t* Abc_NtkSopEsopCover |
( |
Abc_Ntk_t * |
pNtk, |
|
|
int |
nFaninMax, |
|
|
int |
fUseEsop, |
|
|
int |
fUseSop, |
|
|
int |
fUseInvs, |
|
|
int |
fVerbose |
|
) |
| |
FUNCTION DEFINITIONS ///.
Function*************************************************************
Synopsis [Performs decomposition.]
Description []
SideEffects []
SeeAlso []
Definition at line 60 of file covCore.c.
69 p->fUseEsop = fUseEsop;
90 printf(
"Abc_NtkCov: The network check has failed.\n" );
static int Abc_NtkIsStrash(Abc_Ntk_t *pNtk)
static ABC_NAMESPACE_IMPL_START void Abc_NtkCovCovers(Cov_Man_t *p, Abc_Ntk_t *pNtk, int fVerbose)
DECLARATIONS ///.
ABC_DLL int Abc_NtkCheck(Abc_Ntk_t *pNtk)
FUNCTION DEFINITIONS ///.
Cov_Man_t * Cov_ManAlloc(Abc_Ntk_t *pNtk, int nFaninMax)
DECLARATIONS ///.
Abc_Ntk_t * Abc_NtkCovDeriveRegular(Cov_Man_t *p, Abc_Ntk_t *pNtk)
ABC_DLL void Abc_NtkDelete(Abc_Ntk_t *pNtk)
void Cov_ManFree(Cov_Man_t *p)
typedefABC_NAMESPACE_HEADER_START struct Cov_Man_t_ Cov_Man_t
DECLARATIONS ///.
Definition at line 80 of file cov.h.
static Cov_Obj_t * Abc_ObjGetStr(Abc_Obj_t *pObj)
Definition at line 77 of file cov.h.
static Cov_Obj_t * Abc_ObjGetStr(Abc_Obj_t *pObj)
Definition at line 71 of file cov.h.
static void * Vec_PtrEntry(Vec_Ptr_t *p, int i)
typedefABC_NAMESPACE_HEADER_START struct Cov_Man_t_ Cov_Man_t
DECLARATIONS ///.
Definition at line 74 of file cov.h.
static Cov_Obj_t * Abc_ObjGetStr(Abc_Obj_t *pObj)
Definition at line 79 of file cov.h.
static Cov_Obj_t * Abc_ObjGetStr(Abc_Obj_t *pObj)
Definition at line 76 of file cov.h.
static Cov_Obj_t * Abc_ObjGetStr(Abc_Obj_t *pObj)
Definition at line 73 of file cov.h.
static Cov_Obj_t * Abc_ObjGetStr(Abc_Obj_t *pObj)
DECLARATIONS ///.
CFile****************************************************************
FileName [covMan.c]
SystemName [ABC: Logic synthesis and verification system.]
PackageName [Mapping into network of SOPs/ESOPs.]
Synopsis [Decomposition manager.]
Author [Alan Mishchenko]
Affiliation [UC Berkeley]
Date [Ver. 1.0. Started - June 20, 2005.]
Revision [
- Id:
- covMan.c,v 1.00 2005/06/20 00:00:00 alanmi Exp
]FUNCTION DEFINITIONS /// Function*************************************************************
Synopsis []
Description []
SideEffects []
SeeAlso []
Definition at line 45 of file covMan.c.
56 pMan->nFaninMax = nFaninMax;
57 pMan->nCubesMax = 2 * pMan->nFaninMax;
static int Abc_NtkObjNumMax(Abc_Ntk_t *pNtk)
static void Vec_PtrFill(Vec_Ptr_t *p, int nSize, void *Entry)
#define ABC_ALLOC(type, num)
Min_Man_t * Min_ManAlloc(int nVars)
DECLARATIONS ///.
static Vec_Int_t * Vec_IntAlloc(int nCap)
FUNCTION DEFINITIONS ///.
static void Vec_IntPush(Vec_Int_t *p, int Entry)
static void Vec_PtrWriteEntry(Vec_Ptr_t *p, int i, void *Entry)
static Vec_Ptr_t * Vec_PtrAlloc(int nCap)
FUNCTION DEFINITIONS ///.
typedefABC_NAMESPACE_HEADER_START struct Cov_Man_t_ Cov_Man_t
DECLARATIONS ///.
static int Abc_BitWordNum(int nBits)
#define Abc_NtkForEachObj(pNtk, pObj, i)
ITERATORS ///.
Function*************************************************************
Synopsis []
Description []
SideEffects []
SeeAlso []
Definition at line 92 of file covMan.c.
96 for ( i = 0; i <
p->vObjStrs->nSize; i++ )
98 vSupp = ((
Cov_Obj_t *)
p->vObjStrs->pArray[i])->vSupp;
typedefABC_NAMESPACE_IMPL_START struct Vec_Int_t_ Vec_Int_t
DECLARATIONS ///.
static void Vec_IntFree(Vec_Int_t *p)
static void Vec_PtrFree(Vec_Ptr_t *p)
void Min_ManFree(Min_Man_t *p)