#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.
Classes | |
| struct | Ifn_Obj_t_ |
| struct | Ifn_Ntk_t_ |
Macros | |
| #define | IFN_INS 11 |
| DECLARATIONS ///. | |
| #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 | |
| int | Ifn_Prepare (Ifn_Ntk_t *p, word *pTruth, int nVars) |
| FUNCTION DEFINITIONS ///. | |
| 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) |
| 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) |
| int | Ifn_NtkTtBits (char *pStr) |
| Gia_Man_t * | Ifn_ManStrFindModel (Ifn_Ntk_t *p) |
| Gia_Man_t * | Ifn_ManStrFindCofactors (int nIns, 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, word *pConfigData, Vec_Int_t *vLeaves, Vec_Int_t *vCover) |
| void * | If_ManDeriveGiaFromCells (void *pGia) |
| 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_NtkMatchCollectConfig (Ifn_Ntk_t *p, sat_solver *pSat, word *pConfig) |
| 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 *pConfig) |
| void | Ifn_NtkRead () |
| #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_ManDeriveGiaFromCells | ( | void * | pGia | ) |
Function*************************************************************
Synopsis [Derive GIA using programmable bits.]
Description []
SideEffects []
SeeAlso []
Definition at line 825 of file ifTune.c.

| void * If_ManSatBuildFromCell | ( | char * | pStr, |
| Vec_Int_t ** | pvPiVars, | ||
| Vec_Int_t ** | pvPoVars, | ||
| Ifn_Ntk_t ** | ppNtk ) |
Definition at line 633 of file ifTune.c.

| int If_ManSatDeriveGiaFromBits | ( | void * | pGia, |
| Ifn_Ntk_t * | p, | ||
| word * | pConfigData, | ||
| Vec_Int_t * | vLeaves, | ||
| Vec_Int_t * | vCover ) |
Function*************************************************************
Synopsis [Derive GIA using programmable bits.]
Description []
SideEffects []
SeeAlso []
Definition at line 742 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 698 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 1021 of file ifTune.c.

| int Ifn_ErrorMessage | ( | const char * | format, |
| ... ) |
Function*************************************************************
Synopsis []
Description []
SideEffects []
SeeAlso []
Definition at line 183 of file ifTune.c.


| sat_solver * Ifn_ManSatBuild | ( | Ifn_Ntk_t * | p, |
| Vec_Int_t ** | pvPiVars, | ||
| Vec_Int_t ** | pvPoVars ) |
Definition at line 619 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 662 of file ifTune.c.

| void Ifn_ManSatDeriveOne | ( | sat_solver * | pSat, |
| Vec_Int_t * | vPiVars, | ||
| Vec_Int_t * | vValues ) |
Definition at line 691 of file ifTune.c.

Definition at line 716 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.


Definition at line 548 of file ifTune.c.


Function*************************************************************
Synopsis [Derive AIG.]
Description []
SideEffects []
SeeAlso []
Definition at line 488 of file ifTune.c.


| sat_solver * Ifn_ManStrFindSolver | ( | Gia_Man_t * | p, |
| Vec_Int_t ** | pvPiVars, | ||
| Vec_Int_t ** | pvPoVars ) |
Definition at line 595 of file ifTune.c.


| int Ifn_ManStrType2 | ( | char * | pStr | ) |
Function*************************************************************
Synopsis []
Description []
SideEffects []
SeeAlso []
Definition at line 316 of file ifTune.c.

| int Ifn_NtkAddClauses | ( | Ifn_Ntk_t * | p, |
| int * | pValues, | ||
| sat_solver * | pSat ) |
Function*************************************************************
Synopsis [Derive clauses given variable assignment.]
Description []
SideEffects []
SeeAlso []
Definition at line 1110 of file ifTune.c.


| void Ifn_NtkAddConstraints | ( | Ifn_Ntk_t * | p, |
| sat_solver * | pSat ) |
Definition at line 1053 of file ifTune.c.


| void Ifn_NtkAddConstrOne | ( | sat_solver * | pSat, |
| Vec_Int_t * | vCover, | ||
| int * | pVars, | ||
| int | nVars ) |
Definition at line 1033 of file ifTune.c.


Function*************************************************************
Synopsis [Derive truth table given the configulation values.]
Description []
SideEffects []
SeeAlso []
Definition at line 906 of file ifTune.c.

| int Ifn_NtkInputNum | ( | Ifn_Ntk_t * | p | ) |
| int Ifn_NtkLutSizeMax | ( | Ifn_Ntk_t * | p | ) |
| int Ifn_NtkMatch | ( | Ifn_Ntk_t * | p, |
| word * | pTruth, | ||
| int | nVars, | ||
| int | nConfls, | ||
| int | fVerbose, | ||
| int | fVeryVerbose, | ||
| word * | pConfig ) |
Definition at line 1328 of file ifTune.c.


| void Ifn_NtkMatchCollectConfig | ( | Ifn_Ntk_t * | p, |
| sat_solver * | pSat, | ||
| word * | pConfig ) |
| word Ifn_NtkMatchCollectPerm | ( | Ifn_Ntk_t * | p, |
| sat_solver * | pSat ) |
| void Ifn_NtkMatchPrintConfig | ( | Ifn_Ntk_t * | p, |
| sat_solver * | pSat ) |
| void Ifn_NtkMatchPrintPerm | ( | word | Perm, |
| int | nInps ) |
| 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 1260 of file ifTune.c.


| Ifn_Ntk_t * Ifn_NtkParse | ( | char * | pStr | ) |
Definition at line 440 of file ifTune.c.


| void Ifn_NtkParseConstraints | ( | char * | pStr, |
| Ifn_Ntk_t * | p ) |
Definition at line 423 of file ifTune.c.

| 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_NtkPrint | ( | Ifn_Ntk_t * | p | ) |
| void Ifn_NtkRead | ( | ) |
Function*************************************************************
Synopsis []
Description []
SideEffects []
SeeAlso []
Definition at line 1416 of file ifTune.c.

| int Ifn_NtkTtBits | ( | char * | pStr | ) |
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 978 of file ifTune.c.

| int Inf_ManOpenSymb | ( | char * | pStr | ) |