abc-master
|
#include "if.h"
#include "aig/gia/giaAig.h"
#include "sat/bsat/satStore.h"
#include "sat/cnf/cnf.h"
#include "misc/extra/extra.h"
#include "bool/kit/kit.h"
Go to the source code of this file.
Data Structures | |
struct | Ifn_Obj_t_ |
struct | Ifn_Ntk_t_ |
Macros | |
#define | IFN_INS 11 |
DECLARATIONS ///. More... | |
#define | IFN_WRD (IFN_INS > 6 ? 1 << (IFN_INS-6) : 1) |
#define | IFN_PAR 1024 |
Typedefs | |
typedef struct Ifn_Obj_t_ | Ifn_Obj_t |
Enumerations | |
enum | Ifn_DsdType_t { IFN_DSD_NONE = 0, IFN_DSD_CONST0, IFN_DSD_VAR, IFN_DSD_AND, IFN_DSD_XOR, IFN_DSD_MUX, IFN_DSD_PRIME } |
Functions | |
static word * | Ifn_ElemTruth (Ifn_Ntk_t *p, int i) |
static word * | Ifn_ObjTruth (Ifn_Ntk_t *p, int i) |
int | Ifn_Prepare (Ifn_Ntk_t *p, word *pTruth, int nVars) |
FUNCTION DEFINITIONS ///. More... | |
void | Ifn_NtkPrint (Ifn_Ntk_t *p) |
int | Ifn_NtkLutSizeMax (Ifn_Ntk_t *p) |
int | Ifn_NtkInputNum (Ifn_Ntk_t *p) |
int | Ifn_ErrorMessage (const char *format,...) |
int | Inf_ManOpenSymb (char *pStr) |
int | Ifn_ManStrCheck (char *pStr, int *pnInps, int *pnObjs) |
static char * | Ifn_NtkParseFindClosingParanthesis (char *pStr, char Open, char Close) |
int | Ifn_NtkParseInt_rec (char *pStr, Ifn_Ntk_t *p, char **ppFinal, int *piNode) |
int | Ifn_NtkParseInt (char *pStr, Ifn_Ntk_t *p) |
int | Ifn_ManStrType2 (char *pStr) |
int | Ifn_ManStrCheck2 (char *pStr, int *pnInps, int *pnObjs) |
int | Ifn_NtkParseInt2 (char *pStr, Ifn_Ntk_t *p) |
void | Ifn_NtkParseConstraints (char *pStr, Ifn_Ntk_t *p) |
Ifn_Ntk_t * | Ifn_NtkParse (char *pStr) |
Gia_Man_t * | Ifn_ManStrFindModel (Ifn_Ntk_t *p) |
Gia_Man_t * | Ifn_ManStrFindCofactors (int nIns, Gia_Man_t *p) |
static Cnf_Dat_t * | Cnf_DeriveGiaRemapped (Gia_Man_t *p) |
sat_solver * | Ifn_ManStrFindSolver (Gia_Man_t *p, Vec_Int_t **pvPiVars, Vec_Int_t **pvPoVars) |
sat_solver * | Ifn_ManSatBuild (Ifn_Ntk_t *p, Vec_Int_t **pvPiVars, Vec_Int_t **pvPoVars) |
void * | If_ManSatBuildFromCell (char *pStr, Vec_Int_t **pvPiVars, Vec_Int_t **pvPoVars, Ifn_Ntk_t **ppNtk) |
void | Ifn_ManSatPrintPerm (char *pPerms, int nVars) |
int | Ifn_ManSatCheckOne (sat_solver *pSat, Vec_Int_t *vPoVars, word *pTruth, int nVars, int *pPerm, int nInps, Vec_Int_t *vLits) |
void | Ifn_ManSatDeriveOne (sat_solver *pSat, Vec_Int_t *vPiVars, Vec_Int_t *vValues) |
int | If_ManSatFindCofigBits (void *pSat, Vec_Int_t *vPiVars, Vec_Int_t *vPoVars, word *pTruth, int nVars, word Perm, int nInps, Vec_Int_t *vValues) |
int | Ifn_ManSatFindCofigBitsTest (Ifn_Ntk_t *p, word *pTruth, int nVars, word Perm) |
int | If_ManSatDeriveGiaFromBits (void *pGia, Ifn_Ntk_t *p, Vec_Int_t *vValues, Vec_Int_t *vCover) |
word * | Ifn_NtkDeriveTruth (Ifn_Ntk_t *p, int *pValues) |
void | Ifn_TtComparisonConstr (word *pTruth, int nVars, int fMore, int fEqual) |
int | Ifn_AddClause (sat_solver *pSat, int *pBeg, int *pEnd) |
void | Ifn_NtkAddConstrOne (sat_solver *pSat, Vec_Int_t *vCover, int *pVars, int nVars) |
void | Ifn_NtkAddConstraints (Ifn_Ntk_t *p, sat_solver *pSat) |
int | Ifn_NtkAddClauses (Ifn_Ntk_t *p, int *pValues, sat_solver *pSat) |
void | Ifn_NtkMatchPrintStatus (sat_solver *p, int Iter, int status, int iMint, int Value, abctime clk) |
void | Ifn_NtkMatchPrintConfig (Ifn_Ntk_t *p, sat_solver *pSat) |
word | Ifn_NtkMatchCollectPerm (Ifn_Ntk_t *p, sat_solver *pSat) |
void | Ifn_NtkMatchPrintPerm (word Perm, int nInps) |
int | Ifn_NtkMatch (Ifn_Ntk_t *p, word *pTruth, int nVars, int nConfls, int fVerbose, int fVeryVerbose, word *pPerm) |
void | Ifn_NtkRead () |
Variables | |
static char * | Ifn_Symbs [16] |
#define IFN_INS 11 |
DECLARATIONS ///.
CFile****************************************************************
FileName [ifTune.c]
SystemName [ABC: Logic synthesis and verification system.]
PackageName [FPGA mapping based on priority cuts.]
Synopsis [Library tuning.]
Author [Alan Mishchenko]
Affiliation [UC Berkeley]
Date [Ver. 1.0. Started - November 21, 2006.]
Revision [
]
typedef struct Ifn_Obj_t_ Ifn_Obj_t |
enum Ifn_DsdType_t |
Enumerator | |
---|---|
IFN_DSD_NONE | |
IFN_DSD_CONST0 | |
IFN_DSD_VAR | |
IFN_DSD_AND | |
IFN_DSD_XOR | |
IFN_DSD_MUX | |
IFN_DSD_PRIME |
Definition at line 39 of file ifTune.c.
void* If_ManSatBuildFromCell | ( | char * | pStr, |
Vec_Int_t ** | pvPiVars, | ||
Vec_Int_t ** | pvPoVars, | ||
Ifn_Ntk_t ** | ppNtk | ||
) |
Definition at line 622 of file ifTune.c.
int If_ManSatDeriveGiaFromBits | ( | void * | pGia, |
Ifn_Ntk_t * | p, | ||
Vec_Int_t * | vValues, | ||
Vec_Int_t * | vCover | ||
) |
Function*************************************************************
Synopsis [Derive GIA using programmable bits.]
Description []
SideEffects []
SeeAlso []
Definition at line 731 of file ifTune.c.
int If_ManSatFindCofigBits | ( | void * | pSat, |
Vec_Int_t * | vPiVars, | ||
Vec_Int_t * | vPoVars, | ||
word * | pTruth, | ||
int | nVars, | ||
word | Perm, | ||
int | nInps, | ||
Vec_Int_t * | vValues | ||
) |
Definition at line 687 of file ifTune.c.
int Ifn_AddClause | ( | sat_solver * | pSat, |
int * | pBeg, | ||
int * | pEnd | ||
) |
Function*************************************************************
Synopsis [Adds parameter constraints.]
Description []
SideEffects []
SeeAlso []
Definition at line 920 of file ifTune.c.
int Ifn_ErrorMessage | ( | const char * | format, |
... | |||
) |
sat_solver* Ifn_ManSatBuild | ( | Ifn_Ntk_t * | p, |
Vec_Int_t ** | pvPiVars, | ||
Vec_Int_t ** | pvPoVars | ||
) |
Definition at line 608 of file ifTune.c.
int Ifn_ManSatCheckOne | ( | sat_solver * | pSat, |
Vec_Int_t * | vPoVars, | ||
word * | pTruth, | ||
int | nVars, | ||
int * | pPerm, | ||
int | nInps, | ||
Vec_Int_t * | vLits | ||
) |
Definition at line 651 of file ifTune.c.
void Ifn_ManSatDeriveOne | ( | sat_solver * | pSat, |
Vec_Int_t * | vPiVars, | ||
Vec_Int_t * | vValues | ||
) |
Definition at line 680 of file ifTune.c.
Definition at line 705 of file ifTune.c.
void Ifn_ManSatPrintPerm | ( | char * | pPerms, |
int | nVars | ||
) |
int Ifn_ManStrCheck | ( | char * | pStr, |
int * | pnInps, | ||
int * | pnObjs | ||
) |
Definition at line 206 of file ifTune.c.
int Ifn_ManStrCheck2 | ( | char * | pStr, |
int * | pnInps, | ||
int * | pnObjs | ||
) |
Definition at line 324 of file ifTune.c.
Function*************************************************************
Synopsis [Derive AIG.]
Description []
SideEffects []
SeeAlso []
Definition at line 477 of file ifTune.c.
sat_solver* Ifn_ManStrFindSolver | ( | Gia_Man_t * | p, |
Vec_Int_t ** | pvPiVars, | ||
Vec_Int_t ** | pvPoVars | ||
) |
Definition at line 584 of file ifTune.c.
int Ifn_ManStrType2 | ( | char * | pStr | ) |
int Ifn_NtkAddClauses | ( | Ifn_Ntk_t * | p, |
int * | pValues, | ||
sat_solver * | pSat | ||
) |
Function*************************************************************
Synopsis [Derive clauses given variable assignment.]
Description []
SideEffects []
SeeAlso []
void Ifn_NtkAddConstraints | ( | Ifn_Ntk_t * | p, |
sat_solver * | pSat | ||
) |
Definition at line 952 of file ifTune.c.
void Ifn_NtkAddConstrOne | ( | sat_solver * | pSat, |
Vec_Int_t * | vCover, | ||
int * | pVars, | ||
int | nVars | ||
) |
Definition at line 932 of file ifTune.c.
Function*************************************************************
Synopsis [Derive truth table given the configulation values.]
Description []
SideEffects []
SeeAlso []
Definition at line 805 of file ifTune.c.
int Ifn_NtkInputNum | ( | Ifn_Ntk_t * | p | ) |
int Ifn_NtkLutSizeMax | ( | Ifn_Ntk_t * | p | ) |
Definition at line 159 of file ifTune.c.
int Ifn_NtkMatch | ( | Ifn_Ntk_t * | p, |
word * | pTruth, | ||
int | nVars, | ||
int | nConfls, | ||
int | fVerbose, | ||
int | fVeryVerbose, | ||
word * | pPerm | ||
) |
Definition at line 1207 of file ifTune.c.
word Ifn_NtkMatchCollectPerm | ( | Ifn_Ntk_t * | p, |
sat_solver * | pSat | ||
) |
Definition at line 1185 of file ifTune.c.
void Ifn_NtkMatchPrintConfig | ( | Ifn_Ntk_t * | p, |
sat_solver * | pSat | ||
) |
Definition at line 1170 of file ifTune.c.
void Ifn_NtkMatchPrintStatus | ( | sat_solver * | p, |
int | Iter, | ||
int | status, | ||
int | iMint, | ||
int | Value, | ||
abctime | clk | ||
) |
Function*************************************************************
Synopsis [Returns the minterm number for which there is a mismatch.]
Description []
SideEffects []
SeeAlso []
Definition at line 1154 of file ifTune.c.
Ifn_Ntk_t* Ifn_NtkParse | ( | char * | pStr | ) |
Definition at line 439 of file ifTune.c.
void Ifn_NtkParseConstraints | ( | char * | pStr, |
Ifn_Ntk_t * | p | ||
) |
|
inlinestatic |
int Ifn_NtkParseInt | ( | char * | pStr, |
Ifn_Ntk_t * | p | ||
) |
Definition at line 285 of file ifTune.c.
int Ifn_NtkParseInt2 | ( | char * | pStr, |
Ifn_Ntk_t * | p | ||
) |
Definition at line 378 of file ifTune.c.
int Ifn_NtkParseInt_rec | ( | char * | pStr, |
Ifn_Ntk_t * | p, | ||
char ** | ppFinal, | ||
int * | piNode | ||
) |
Definition at line 251 of file ifTune.c.
void Ifn_NtkRead | ( | ) |
Function*************************************************************
Synopsis []
Description []
SideEffects []
SeeAlso []
Definition at line 1292 of file ifTune.c.
FUNCTION DEFINITIONS ///.
Function*************************************************************
Synopsis [Prepare network to check the given function.]
Description []
SideEffects []
SeeAlso []
Definition at line 115 of file ifTune.c.
void Ifn_TtComparisonConstr | ( | word * | pTruth, |
int | nVars, | ||
int | fMore, | ||
int | fEqual | ||
) |
Function*************************************************************
Synopsis [Compute more or equal]
Description []
SideEffects []
SeeAlso []
Definition at line 877 of file ifTune.c.
int Inf_ManOpenSymb | ( | char * | pStr | ) |