ABC: A System for Sequential Synthesis and Verification
 
Loading...
Searching...
No Matches
mpm.h File Reference
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <assert.h>
Include dependency graph for mpm.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  Mpm_LibLut_t_
 
struct  Mpm_Par_t_
 

Macros

#define MPM_VAR_MAX   12
 INCLUDES ///.
 

Typedefs

typedef struct Mpm_LibLut_t_ Mpm_LibLut_t
 BASIC TYPES ///.
 
typedef struct Mpm_Par_t_ Mpm_Par_t
 

Functions

void Mpm_ManSetParsDefault (Mpm_Par_t *p)
 MACRO DEFINITIONS ///.
 
Mpm_LibLut_tMpm_LibLutSetSimple (int nLutSize)
 DECLARATIONS ///.
 
void Mpm_LibLutFree (Mpm_LibLut_t *pLib)
 

Macro Definition Documentation

◆ MPM_VAR_MAX

#define MPM_VAR_MAX   12

INCLUDES ///.

CFile****************************************************************

FileName [mpm.h]

SystemName [ABC: Logic synthesis and verification system.]

PackageName [Configurable technology mapper.]

Synopsis [External declarations.]

Author [Alan Mishchenko]

Affiliation [UC Berkeley]

Date [Ver. 1.0. Started - June 1, 2013.]

Revision [

Id
mpm.h,v 1.00 2013/06/01 00:00:00 alanmi Exp

] PARAMETERS ///

Definition at line 40 of file mpm.h.

Typedef Documentation

◆ Mpm_LibLut_t

typedef struct Mpm_LibLut_t_ Mpm_LibLut_t

BASIC TYPES ///.

Definition at line 46 of file mpm.h.

◆ Mpm_Par_t

typedef struct Mpm_Par_t_ Mpm_Par_t

Definition at line 56 of file mpm.h.

Function Documentation

◆ Mpm_LibLutFree()

void Mpm_LibLutFree ( Mpm_LibLut_t * pLib)
extern

Definition at line 60 of file mpmLib.c.

61{
62 if ( pLib == NULL )
63 return;
64 ABC_FREE( pLib->pName );
65 ABC_FREE( pLib );
66}
#define ABC_FREE(obj)
Definition abc_global.h:267
char * pName
Definition mpm.h:49

◆ Mpm_LibLutSetSimple()

Mpm_LibLut_t * Mpm_LibLutSetSimple ( int nLutSize)
extern

DECLARATIONS ///.

CFile****************************************************************

FileName [mpmLib.c]

SystemName [ABC: Logic synthesis and verification system.]

PackageName [Configurable technology mapper.]

Synopsis [DSD manipulation for 6-input functions.]

Author [Alan Mishchenko]

Affiliation [UC Berkeley]

Date [Ver. 1.0. Started - June 1, 2013.]

Revision [

Id
mpmLib.c,v 1.00 2013/06/01 00:00:00 alanmi Exp

] FUNCTION DEFINITIONS /// Function*************************************************************

Synopsis []

Description []

SideEffects []

SeeAlso []

Definition at line 45 of file mpmLib.c.

46{
47 Mpm_LibLut_t * pLib;
48 int i, k;
49 assert( nLutSize <= MPM_VAR_MAX );
50 pLib = ABC_CALLOC( Mpm_LibLut_t, 1 );
51 pLib->LutMax = nLutSize;
52 for ( i = 1; i <= pLib->LutMax; i++ )
53 {
54 pLib->pLutAreas[i] = MPM_UNIT_AREA;
55 for ( k = 0; k < i; k++ )
56 pLib->pLutDelays[i][k] = MPM_UNIT_TIME;
57 }
58 return pLib;
59}
#define ABC_CALLOC(type, num)
Definition abc_global.h:265
#define MPM_UNIT_TIME
Definition mpmInt.h:52
#define MPM_UNIT_AREA
Definition mpmInt.h:53
#define MPM_VAR_MAX
INCLUDES ///.
Definition mpm.h:40
struct Mpm_LibLut_t_ Mpm_LibLut_t
BASIC TYPES ///.
Definition mpm.h:46
int pLutAreas[MPM_VAR_MAX+1]
Definition mpm.h:52
int pLutDelays[MPM_VAR_MAX+1][MPM_VAR_MAX+1]
Definition mpm.h:53
int LutMax
Definition mpm.h:50
#define assert(ex)
Definition util_old.h:213

◆ Mpm_ManSetParsDefault()

void Mpm_ManSetParsDefault ( Mpm_Par_t * p)
extern

MACRO DEFINITIONS ///.

FUNCTION DECLARATIONS ///

MACRO DEFINITIONS ///.

CFile****************************************************************

FileName [mpmCore.c]

SystemName [ABC: Logic synthesis and verification system.]

PackageName [Configurable technology mapper.]

Synopsis [Core procedures.]

Author [Alan Mishchenko]

Affiliation [UC Berkeley]

Date [Ver. 1.0. Started - June 1, 2013.]

Revision [

Id
mpmCore.c,v 1.00 2013/06/01 00:00:00 alanmi Exp

] FUNCTION DEFINITIONS /// Function*************************************************************

Synopsis []

Description []

SideEffects []

SeeAlso []

Definition at line 46 of file mpmCore.c.

47{
48 memset( p, 0, sizeof(Mpm_Par_t) );
49 p->pLib = NULL; // LUT library
50 p->nNumCuts = 8; // cut number
51 p->fUseTruth = 0; // uses truth tables
52 p->fUseDsd = 0; // uses DSDs
53 p->fCutMin = 0; // enables cut minimization
54 p->fOneRound = 0; // enabled one round
55 p->DelayTarget = -1; // delay target
56 p->fDeriveLuts = 0; // use truth tables to derive AIG structure
57 p->fMap4Cnf = 0; // mapping for CNF
58 p->fMap4Aig = 0; // mapping for AIG
59 p->fMap4Gates = 0; // mapping for gates
60 p->fVerbose = 0; // verbose output
61 p->fVeryVerbose = 0; // verbose output
62}
Cube * p
Definition exorList.c:222
struct Mpm_Par_t_ Mpm_Par_t
Definition mpm.h:56
char * memset()
Here is the call graph for this function: