abc-master
|
#include "base/abc/abc.h"
#include "base/main/main.h"
#include "proof/fraig/fraig.h"
#include "misc/extra/extraBdd.h"
Go to the source code of this file.
Functions | |
static ABC_NAMESPACE_IMPL_START void | Abc_NtkFraigSweepUsingExdc (Fraig_Man_t *pMan, Abc_Ntk_t *pNtk) |
DECLARATIONS ///. More... | |
static stmm_table * | Abc_NtkFraigEquiv (Abc_Ntk_t *pNtk, int fUseInv, int fVerbose, int fVeryVerbose) |
static void | Abc_NtkFraigTransform (Abc_Ntk_t *pNtk, stmm_table *tEquiv, int fUseInv, int fVerbose) |
static void | Abc_NtkFraigMergeClassMapped (Abc_Ntk_t *pNtk, Abc_Obj_t *pChain, int fUseInv, int fVerbose) |
static void | Abc_NtkFraigMergeClass (Abc_Ntk_t *pNtk, Abc_Obj_t *pChain, int fUseInv, int fVerbose) |
static int | Abc_NodeDroppingCost (Abc_Obj_t *pNode) |
static int | Abc_NtkReduceNodes (Abc_Ntk_t *pNtk, Vec_Ptr_t *vNodes) |
static void | Abc_NodeSweep (Abc_Obj_t *pNode, int fVerbose) |
static void | Abc_NodeConstantInput (Abc_Obj_t *pNode, Abc_Obj_t *pFanin, int fConst0) |
int | Abc_NtkFraigSweep (Abc_Ntk_t *pNtk, int fUseInv, int fExdc, int fVerbose, int fVeryVerbose) |
FUNCTION DEFINITIONS ///. More... | |
int | Abc_NtkCleanup (Abc_Ntk_t *pNtk, int fVerbose) |
int | Abc_NtkCleanupNodes (Abc_Ntk_t *pNtk, Vec_Ptr_t *vRoots, int fVerbose) |
int | Abc_NtkSweep (Abc_Ntk_t *pNtk, int fVerbose) |
int | Abc_NodeRemoveNonCurrentObjects (Abc_Ntk_t *pNtk) |
void | Abc_NtkSetTravId_rec (Abc_Obj_t *pObj) |
int | Abc_NtkCheckConstant_rec (Abc_Obj_t *pObj) |
int | Abc_NtkLatchSweep (Abc_Ntk_t *pNtk) |
int | Abc_NtkReplaceAutonomousLogic (Abc_Ntk_t *pNtk) |
int | Abc_NtkCleanupSeq (Abc_Ntk_t *pNtk, int fLatchSweep, int fAutoSweep, int fVerbose) |
int | Abc_NtkSweepBufsInvs (Abc_Ntk_t *pNtk, int fVerbose) |
Function*************************************************************
Synopsis [Replaces the local function by its cofactor.]
Description []
SideEffects []
SeeAlso []
Definition at line 669 of file abcSweep.c.
|
static |
Function*************************************************************
Synopsis [Returns the number of literals saved if this node becomes useless.]
Description []
SideEffects []
SeeAlso []
Definition at line 456 of file abcSweep.c.
int Abc_NodeRemoveNonCurrentObjects | ( | Abc_Ntk_t * | pNtk | ) |
Function*************************************************************
Synopsis [Removes all objects whose trav ID is not current.]
Description []
SideEffects []
SeeAlso []
Definition at line 698 of file abcSweep.c.
|
static |
int Abc_NtkCheckConstant_rec | ( | Abc_Obj_t * | pObj | ) |
Function*************************************************************
Synopsis [Check if the fanin of this latch is a constant.]
Description [Returns 0/1 if constant; -1 if not a constant.]
SideEffects []
SeeAlso []
Definition at line 758 of file abcSweep.c.
int Abc_NtkCleanup | ( | Abc_Ntk_t * | pNtk, |
int | fVerbose | ||
) |
Function*************************************************************
Synopsis [Removes dangling nodes.]
Description [Returns the number of nodes removed.]
SideEffects []
SeeAlso []
Definition at line 476 of file abcSweep.c.
Function*************************************************************
Synopsis [Removes dangling nodes.]
Description [Returns the number of nodes removed.]
SideEffects []
SeeAlso []
Definition at line 501 of file abcSweep.c.
int Abc_NtkCleanupSeq | ( | Abc_Ntk_t * | pNtk, |
int | fLatchSweep, | ||
int | fAutoSweep, | ||
int | fVerbose | ||
) |
Function*************************************************************
Synopsis [Sequential cleanup.]
Description [Performs three tasks:
SideEffects []
SeeAlso []
Definition at line 909 of file abcSweep.c.
|
static |
Function*************************************************************
Synopsis [Collects equivalence classes of node in the network.]
Description []
SideEffects []
SeeAlso []
Definition at line 188 of file abcSweep.c.
|
static |
Function*************************************************************
Synopsis [Process one equivalence class of nodes.]
Description [This function does not remove the nodes. It only switches around the connections.]
SideEffects []
SeeAlso []
Definition at line 389 of file abcSweep.c.
|
static |
Function*************************************************************
Synopsis [Transforms the list of one-phase equivalent nodes.]
Description []
SideEffects []
SeeAlso []
Definition at line 307 of file abcSweep.c.
int Abc_NtkFraigSweep | ( | Abc_Ntk_t * | pNtk, |
int | fUseInv, | ||
int | fExdc, | ||
int | fVerbose, | ||
int | fVeryVerbose | ||
) |
FUNCTION DEFINITIONS ///.
Function*************************************************************
Synopsis [Sweping functionally equivalence nodes.]
Description [Removes gates with equivalent functionality. Works for both technology-independent and mapped networks. If the flag is set, allows adding inverters at the gate outputs.]
SideEffects []
SeeAlso []
Definition at line 60 of file abcSweep.c.
|
static |
DECLARATIONS ///.
CFile****************************************************************
FileName [abcDsd.c]
SystemName [ABC: Logic synthesis and verification system.]
PackageName [Network and node package.]
Synopsis [Technology dependent sweep.]
Author [Alan Mishchenko]
Affiliation [UC Berkeley]
Date [Ver. 1.0. Started - June 20, 2005.]
Revision [
]
Function*************************************************************
Synopsis [Sweep the network using EXDC.]
Description []
SideEffects []
SeeAlso []
Definition at line 147 of file abcSweep.c.
|
static |
Function*************************************************************
Synopsis [Transforms the network using the equivalence relation on nodes.]
Description []
SideEffects []
SeeAlso []
Definition at line 275 of file abcSweep.c.
int Abc_NtkLatchSweep | ( | Abc_Ntk_t * | pNtk | ) |
Function*************************************************************
Synopsis [Removes redundant latches.]
Description [The redundant latches are of two types:
SideEffects []
SeeAlso []
Definition at line 802 of file abcSweep.c.
Function*************************************************************
Synopsis [Preserves the nodes collected in the array.]
Description [Returns the number of nodes removed.]
SideEffects []
SeeAlso []
Definition at line 535 of file abcSweep.c.
int Abc_NtkReplaceAutonomousLogic | ( | Abc_Ntk_t * | pNtk | ) |
Function*************************************************************
Synopsis [Replaces autonumnous logic by free inputs.]
Description [Assumes that non-autonomous logic is marked with the current ID.]
SideEffects []
SeeAlso []
Definition at line 852 of file abcSweep.c.
void Abc_NtkSetTravId_rec | ( | Abc_Obj_t * | pObj | ) |
Function*************************************************************
Synopsis [Check if the fanin of this latch is a constant.]
Description [Returns 0/1 if constant; -1 if not a constant.]
SideEffects []
SeeAlso []
Definition at line 738 of file abcSweep.c.
int Abc_NtkSweep | ( | Abc_Ntk_t * | pNtk, |
int | fVerbose | ||
) |
Function*************************************************************
Synopsis [Tranditional sweep of the network.]
Description [Propagates constant and single-input node, removes dangling nodes.]
SideEffects []
SeeAlso []
Definition at line 574 of file abcSweep.c.
int Abc_NtkSweepBufsInvs | ( | Abc_Ntk_t * | pNtk, |
int | fVerbose | ||
) |
Function*************************************************************
Synopsis [Sweep to remove buffers and inverters.]
Description []
SideEffects []
SeeAlso []
Definition at line 959 of file abcSweep.c.