ABC: A System for Sequential Synthesis and Verification
 
Loading...
Searching...
No Matches
mioForm.c File Reference
#include "mioInt.h"
#include "bdd/parse/parse.h"
Include dependency graph for mioForm.c:

Go to the source code of this file.

Macros

#define MIO_SYMB_AND   '*'
 DECLARATIONS ///.
 
#define MIO_SYMB_AND2   '&'
 
#define MIO_SYMB_OR   '+'
 
#define MIO_SYMB_OR2   '|'
 
#define MIO_SYMB_XOR   '^'
 
#define MIO_SYMB_NOT   '!'
 
#define MIO_SYMB_AFTNOT   '\''
 
#define MIO_SYMB_OPEN   '('
 
#define MIO_SYMB_CLOSE   ')'
 

Functions

int Mio_LibraryParseFormulas (Mio_Library_t *pLib)
 FUNCTION DEFINITIONS ///.
 
char * Mio_SopRegister (Mem_Flex_t *pMan, char *pName)
 

Macro Definition Documentation

◆ MIO_SYMB_AFTNOT

#define MIO_SYMB_AFTNOT   '\''

Definition at line 36 of file mioForm.c.

◆ MIO_SYMB_AND

#define MIO_SYMB_AND   '*'

DECLARATIONS ///.

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

FileName [mioForm.c]

PackageName [MVSIS 1.3: Multi-valued logic synthesis system.]

Synopsis [Parsing equestion formula.]

Author [MVSIS Group]

Affiliation [UC Berkeley]

Date [Ver. 1.0. Started - September 8, 2003.]

Revision [

Id
mioForm.c,v 1.4 2004/06/28 14:20:25 alanmi Exp

]

Definition at line 30 of file mioForm.c.

◆ MIO_SYMB_AND2

#define MIO_SYMB_AND2   '&'

Definition at line 31 of file mioForm.c.

◆ MIO_SYMB_CLOSE

#define MIO_SYMB_CLOSE   ')'

Definition at line 38 of file mioForm.c.

◆ MIO_SYMB_NOT

#define MIO_SYMB_NOT   '!'

Definition at line 35 of file mioForm.c.

◆ MIO_SYMB_OPEN

#define MIO_SYMB_OPEN   '('

Definition at line 37 of file mioForm.c.

◆ MIO_SYMB_OR

#define MIO_SYMB_OR   '+'

Definition at line 32 of file mioForm.c.

◆ MIO_SYMB_OR2

#define MIO_SYMB_OR2   '|'

Definition at line 33 of file mioForm.c.

◆ MIO_SYMB_XOR

#define MIO_SYMB_XOR   '^'

Definition at line 34 of file mioForm.c.

Function Documentation

◆ Mio_LibraryParseFormulas()

int Mio_LibraryParseFormulas ( Mio_Library_t * pLib)

FUNCTION DEFINITIONS ///.

Function*************************************************************

Synopsis [Deriving the functionality of the gates.]

Description []

SideEffects []

SeeAlso []

Definition at line 58 of file mioForm.c.

59{
60 Mio_Gate_t * pGate;
61
62 // count the gates
63 pLib->nGates = 0;
64 Mio_LibraryForEachGate( pLib, pGate )
65 pLib->nGates++;
66
67 // start a temporary BDD manager
68 pLib->dd = Cudd_Init( 20, 0, CUDD_UNIQUE_SLOTS, CUDD_CACHE_SLOTS, 0 );
69 // introduce ZDD variables
70 Cudd_zddVarsFromBddVars( pLib->dd, 2 );
71
72 // for each gate, derive its function
73 Mio_LibraryForEachGate( pLib, pGate )
74 if ( Mio_GateParseFormula( pGate ) )
75 return 1;
76 return 0;
77}
#define Mio_LibraryForEachGate(Lib, Gate)
GLOBAL VARIABLES ///.
Definition mio.h:81
struct Mio_GateStruct_t_ Mio_Gate_t
Definition mio.h:43

◆ Mio_SopRegister()

char * Mio_SopRegister ( Mem_Flex_t * pMan,
char * pName )

Function*************************************************************

Synopsis [Registers the cube string with the network.]

Description []

SideEffects []

SeeAlso []

Definition at line 91 of file mioForm.c.

92{
93 char * pRegName;
94 if ( pName == NULL ) return NULL;
95 pRegName = Mem_FlexEntryFetch( pMan, strlen(pName) + 1 );
96 strcpy( pRegName, pName );
97 return pRegName;
98}
char * Mem_FlexEntryFetch(Mem_Flex_t *p, int nBytes)
Definition mem.c:388
int strlen()
char * strcpy()
Here is the call graph for this function: