abc-master
|
#include <math.h>
#include "mioInt.h"
#include "base/main/main.h"
#include "exp.h"
#include "misc/util/utilTruth.h"
#include "opt/dau/dau.h"
Go to the source code of this file.
Functions | |
ABC_NAMESPACE_IMPL_START void | Mio_LibraryDelete (Mio_Library_t *pLib) |
DECLARATIONS ///. More... | |
void | Mio_GateDelete (Mio_Gate_t *pGate) |
void | Mio_PinDelete (Mio_Pin_t *pPin) |
Mio_Pin_t * | Mio_PinDup (Mio_Pin_t *pPin) |
int | Mio_CheckPins (Mio_Pin_t *pPin1, Mio_Pin_t *pPin2) |
int | Mio_CheckGates (Mio_Library_t *pLib) |
void | Mio_WritePin (FILE *pFile, Mio_Pin_t *pPin, int NameLen, int fAllPins) |
void | Mio_WriteGate (FILE *pFile, Mio_Gate_t *pGate, int GateLen, int NameLen, int FormLen, int fPrintSops, int fAllPins) |
void | Mio_WriteLibrary (FILE *pFile, Mio_Library_t *pLib, int fPrintSops) |
int | Mio_DelayCompare (Mio_Gate_t **ppG1, Mio_Gate_t **ppG2) |
Mio_Gate_t ** | Mio_CollectRoots (Mio_Library_t *pLib, int nInputs, float tDelay, int fSkipInv, int *pnGates, int fVerbose) |
int | Mio_DelayCompareNew (Mio_Cell_t *pG1, Mio_Cell_t *pG2) |
void | Mio_CollectCopy (Mio_Cell_t *pCell, Mio_Gate_t *pGate) |
Mio_Cell_t * | Mio_CollectRootsNew (Mio_Library_t *pLib, int nInputs, int *pnGates, int fVerbose) |
Mio_Cell_t * | Mio_CollectRootsNewDefault (int nInputs, int *pnGates, int fVerbose) |
word | Mio_DeriveTruthTable6 (Mio_Gate_t *pGate) |
void | Mio_DeriveTruthTable (Mio_Gate_t *pGate, unsigned uTruthsIn[][2], int nSigns, int nInputs, unsigned uTruthRes[]) |
int | Mio_SopGetVarNum (char *pSop) |
void | Mio_DeriveTruthTable2 (Mio_Gate_t *pGate, unsigned uTruthsIn[][2], int nTruths, int nInputs, unsigned uTruthRes[]) |
void | Mio_DeriveGateDelays (Mio_Gate_t *pGate, float **ptPinDelays, int nPins, int nInputs, float tDelayZero, float *ptDelaysRes, float *ptPinDelayMax) |
Mio_Gate_t * | Mio_GateCreatePseudo (int nInputs) |
void | Mio_LibraryShiftDelay (Mio_Library_t *pLib, double Shift) |
void | Mio_LibraryMultiArea (Mio_Library_t *pLib, double Multi) |
void | Mio_LibraryMultiDelay (Mio_Library_t *pLib, double Multi) |
void | Mio_LibraryTransferDelays (Mio_Library_t *pLibD, Mio_Library_t *pLibS) |
void | Nf_ManPrepareGate (int nVars, word uTruth, int *pComp, int *pPerm, Vec_Wrd_t *vResult) |
void | Nf_ManPreparePrint (int nVars, int *pComp, int *pPerm, char Line[2 *720 *64][8]) |
void | Nf_ManPrepareLibrary (Mio_Library_t *pLib) |
void | Nf_ManPrepareLibraryTest2 () |
int Mio_CheckGates | ( | Mio_Library_t * | pLib | ) |
Definition at line 169 of file mioUtils.c.
Function*************************************************************
Synopsis [Check if pin characteristics are the same.]
Description []
SideEffects []
SeeAlso []
Definition at line 151 of file mioUtils.c.
void Mio_CollectCopy | ( | Mio_Cell_t * | pCell, |
Mio_Gate_t * | pGate | ||
) |
Function*************************************************************
Synopsis [Collects the set of root gates.]
Description [Only collects the gates with unique functionality, which have fewer inputs and shorter delay than the given limits.]
SideEffects []
SeeAlso []
Definition at line 392 of file mioUtils.c.
Mio_Gate_t** Mio_CollectRoots | ( | Mio_Library_t * | pLib, |
int | nInputs, | ||
float | tDelay, | ||
int | fSkipInv, | ||
int * | pnGates, | ||
int | fVerbose | ||
) |
Function*************************************************************
Synopsis [Collects the set of root gates.]
Description [Only collects the gates with unique functionality, which have fewer inputs and shorter delay than the given limits.]
SideEffects []
SeeAlso []
Definition at line 302 of file mioUtils.c.
Mio_Cell_t* Mio_CollectRootsNew | ( | Mio_Library_t * | pLib, |
int | nInputs, | ||
int * | pnGates, | ||
int | fVerbose | ||
) |
Definition at line 404 of file mioUtils.c.
Mio_Cell_t* Mio_CollectRootsNewDefault | ( | int | nInputs, |
int * | pnGates, | ||
int | fVerbose | ||
) |
Definition at line 498 of file mioUtils.c.
int Mio_DelayCompare | ( | Mio_Gate_t ** | ppG1, |
Mio_Gate_t ** | ppG2 | ||
) |
Function*************************************************************
Synopsis [Compares the max delay of two gates.]
Description []
SideEffects []
SeeAlso []
Definition at line 281 of file mioUtils.c.
int Mio_DelayCompareNew | ( | Mio_Cell_t * | pG1, |
Mio_Cell_t * | pG2 | ||
) |
Function*************************************************************
Synopsis [Compares the max delay of two gates.]
Description []
SideEffects []
SeeAlso []
Definition at line 367 of file mioUtils.c.
void Mio_DeriveGateDelays | ( | Mio_Gate_t * | pGate, |
float ** | ptPinDelays, | ||
int | nPins, | ||
int | nInputs, | ||
float | tDelayZero, | ||
float * | ptDelaysRes, | ||
float * | ptPinDelayMax | ||
) |
Function*************************************************************
Synopsis [Derives the area and delay of the root of the gate.]
Description [Array of the resulting delays should be initialized to the (negative) SUPER_NO_VAR value.]
SideEffects []
SeeAlso []
Definition at line 725 of file mioUtils.c.
void Mio_DeriveTruthTable | ( | Mio_Gate_t * | pGate, |
unsigned | uTruthsIn[][2], | ||
int | nSigns, | ||
int | nInputs, | ||
unsigned | uTruthRes[] | ||
) |
Function*************************************************************
Synopsis [Derives the truth table of the gate.]
Description []
SideEffects []
SeeAlso []
Definition at line 608 of file mioUtils.c.
void Mio_DeriveTruthTable2 | ( | Mio_Gate_t * | pGate, |
unsigned | uTruthsIn[][2], | ||
int | nTruths, | ||
int | nInputs, | ||
unsigned | uTruthRes[] | ||
) |
Function*************************************************************
Synopsis [Derives the truth table of the root of the gate.]
Description [Given the truth tables of the leaves of the gate, this procedure derives the truth table of the root.]
SideEffects []
SeeAlso []
Definition at line 652 of file mioUtils.c.
word Mio_DeriveTruthTable6 | ( | Mio_Gate_t * | pGate | ) |
Function*************************************************************
Synopsis [Derives the truth table of the gate.]
Description []
SideEffects []
SeeAlso []
Definition at line 514 of file mioUtils.c.
Mio_Gate_t* Mio_GateCreatePseudo | ( | int | nInputs | ) |
Function*************************************************************
Synopsis [Creates a pseudo-gate.]
Description [The pseudo-gate is a N-input gate with all info set to 0.]
SideEffects []
SeeAlso []
Definition at line 771 of file mioUtils.c.
void Mio_GateDelete | ( | Mio_Gate_t * | pGate | ) |
Function*************************************************************
Synopsis []
Description []
SideEffects []
SeeAlso []
Definition at line 81 of file mioUtils.c.
ABC_NAMESPACE_IMPL_START void Mio_LibraryDelete | ( | Mio_Library_t * | pLib | ) |
DECLARATIONS ///.
CFile****************************************************************
FileName [mioUtils.c]
PackageName [MVSIS 1.3: Multi-valued logic synthesis system.]
Synopsis [File reading/writing for technology mapping.]
Author [MVSIS Group]
Affiliation [UC Berkeley]
Date [Ver. 1.0. Started - September 8, 2003.]
Revision [
]FUNCTION DEFINITIONS /// Function*************************************************************
Synopsis []
Description []
SideEffects []
SeeAlso []
Definition at line 48 of file mioUtils.c.
void Mio_LibraryMultiArea | ( | Mio_Library_t * | pLib, |
double | Multi | ||
) |
Function*************************************************************
Synopsis [Multiply areas/delays by values proportional to fanin count.]
Description []
SideEffects []
SeeAlso []
Definition at line 829 of file mioUtils.c.
void Mio_LibraryMultiDelay | ( | Mio_Library_t * | pLib, |
double | Multi | ||
) |
Definition at line 841 of file mioUtils.c.
void Mio_LibraryShiftDelay | ( | Mio_Library_t * | pLib, |
double | Shift | ||
) |
Function*************************************************************
Synopsis [Adds constant value to all delay values.]
Description [The pseudo-gate is a N-input gate with all info set to 0.]
SideEffects []
SeeAlso []
Definition at line 802 of file mioUtils.c.
void Mio_LibraryTransferDelays | ( | Mio_Library_t * | pLibD, |
Mio_Library_t * | pLibS | ||
) |
Function*************************************************************
Synopsis [Transfers delays from the second to the first.]
Description []
SideEffects []
SeeAlso []
Definition at line 872 of file mioUtils.c.
void Mio_PinDelete | ( | Mio_Pin_t * | pPin | ) |
Function*************************************************************
Synopsis []
Description []
SideEffects []
SeeAlso []
Definition at line 108 of file mioUtils.c.
Function*************************************************************
Synopsis []
Description []
SideEffects []
SeeAlso []
Definition at line 125 of file mioUtils.c.
int Mio_SopGetVarNum | ( | char * | pSop | ) |
Function*************************************************************
Synopsis [Reads the number of variables in the cover.]
Description []
SideEffects []
SeeAlso []
Definition at line 631 of file mioUtils.c.
void Mio_WriteGate | ( | FILE * | pFile, |
Mio_Gate_t * | pGate, | ||
int | GateLen, | ||
int | NameLen, | ||
int | FormLen, | ||
int | fPrintSops, | ||
int | fAllPins | ||
) |
Function*************************************************************
Synopsis []
Description []
SideEffects []
SeeAlso []
Definition at line 220 of file mioUtils.c.
void Mio_WriteLibrary | ( | FILE * | pFile, |
Mio_Library_t * | pLib, | ||
int | fPrintSops | ||
) |
Function*************************************************************
Synopsis []
Description []
SideEffects []
SeeAlso []
Definition at line 251 of file mioUtils.c.
void Mio_WritePin | ( | FILE * | pFile, |
Mio_Pin_t * | pPin, | ||
int | NameLen, | ||
int | fAllPins | ||
) |
Function*************************************************************
Synopsis []
Description []
SideEffects []
SeeAlso []
Definition at line 193 of file mioUtils.c.
Function*************************************************************
Synopsis []
Description []
SideEffects []
SeeAlso []
Definition at line 914 of file mioUtils.c.
void Nf_ManPrepareLibrary | ( | Mio_Library_t * | pLib | ) |
Definition at line 976 of file mioUtils.c.
void Nf_ManPrepareLibraryTest2 | ( | ) |
Definition at line 1035 of file mioUtils.c.
void Nf_ManPreparePrint | ( | int | nVars, |
int * | pComp, | ||
int * | pPerm, | ||
char | Line[2 *720 *64][8] | ||
) |
Definition at line 939 of file mioUtils.c.