mirror of https://github.com/YosysHQ/abc.git
Changes to LUT mappers.
This commit is contained in:
parent
4b0c12eb1e
commit
31fb2e8506
2
abc.rc
2
abc.rc
|
|
@ -4,7 +4,7 @@ set check # checks intermediate networks
|
|||
#unset checkread # does not check new networks after reading from file
|
||||
#set backup # saves backup networks retrived by "undo" and "recall"
|
||||
#set savesteps 1 # sets the maximum number of backup networks to save
|
||||
set progressbar # display the progress bar
|
||||
#set progressbar # display the progress bar
|
||||
|
||||
# program names for internal calls
|
||||
set dotwin dot.exe
|
||||
|
|
|
|||
|
|
@ -2367,6 +2367,10 @@ SOURCE=.\src\map\if\ifTruth.c
|
|||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\src\map\if\ifTune.c
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\src\map\if\ifUtil.c
|
||||
# End Source File
|
||||
# End Group
|
||||
|
|
|
|||
|
|
@ -486,7 +486,7 @@ int If_DsdObjCompare( Vec_Ptr_t * p, int iLit0, int iLit1 )
|
|||
return -1;
|
||||
if ( Abc_LitIsCompl(iLit0) < Abc_LitIsCompl(iLit1) )
|
||||
return 1;
|
||||
assert( iLit0 == iLit1 );
|
||||
// assert( iLit0 == iLit1 );
|
||||
return 0;
|
||||
}
|
||||
void If_DsdObjSort( Vec_Ptr_t * p, int * pLits, int nLits, int * pPerm )
|
||||
|
|
|
|||
|
|
@ -0,0 +1,117 @@
|
|||
/**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 [$Id: ifTune.c,v 1.00 2006/11/21 00:00:00 alanmi Exp $]
|
||||
|
||||
***********************************************************************/
|
||||
|
||||
#include "if.h"
|
||||
#include "sat/bsat/satSolver.h"
|
||||
|
||||
ABC_NAMESPACE_IMPL_START
|
||||
|
||||
////////////////////////////////////////////////////////////////////////
|
||||
/// DECLARATIONS ///
|
||||
////////////////////////////////////////////////////////////////////////
|
||||
|
||||
////////////////////////////////////////////////////////////////////////
|
||||
/// FUNCTION DEFINITIONS ///
|
||||
////////////////////////////////////////////////////////////////////////
|
||||
|
||||
/**Function*************************************************************
|
||||
|
||||
Synopsis []
|
||||
|
||||
Description []
|
||||
|
||||
SideEffects []
|
||||
|
||||
SeeAlso []
|
||||
|
||||
***********************************************************************/
|
||||
int If_ManStrCheck( char * pStr )
|
||||
{
|
||||
int i, Marks[32] = {0}, MaxVar = 0, MaxDef = 0;
|
||||
for ( i = 0; pStr[i]; i++ )
|
||||
{
|
||||
if ( pStr[i] == '=' || pStr[i] == ';' ||
|
||||
pStr[i] == '(' || pStr[i] == ')' ||
|
||||
pStr[i] == '[' || pStr[i] == ']' ||
|
||||
pStr[i] == '<' || pStr[i] == '>' ||
|
||||
pStr[i] == '{' || pStr[i] == '}' )
|
||||
continue;
|
||||
if ( pStr[i] >= 'a' && pStr[i] <= 'z' )
|
||||
{
|
||||
if ( pStr[i+1] == '=' )
|
||||
Marks[pStr[i] - 'a'] = 2, MaxDef = 1 + Abc_MaxInt(MaxDef, pStr[i] - 'a');
|
||||
else
|
||||
Marks[pStr[i] - 'a'] = 1, MaxVar = 1 + Abc_MaxInt(MaxVar, pStr[i] - 'a');
|
||||
continue;
|
||||
}
|
||||
printf( "String \"%s\" contains unrecognized symbol (%c).\n", pStr, pStr[i] );
|
||||
}
|
||||
for ( i = 0; i < MaxDef; i++ )
|
||||
if ( Marks[i] == 0 )
|
||||
printf( "String \"%s\" has no symbol (%c).\n", pStr, 'a' + Marks[i] );
|
||||
for ( i = 0; i < MaxVar; i++ )
|
||||
if ( Marks[i] == 2 )
|
||||
printf( "String \"%s\" defined input symbol (%c).\n", pStr, 'a' + Marks[i] );
|
||||
for ( i = MaxVar; i < MaxDef; i++ )
|
||||
if ( Marks[i] == 1 )
|
||||
printf( "String \"%s\" has no definition for symbol (%c).\n", pStr, 'a' + Marks[i] );
|
||||
return 1;
|
||||
}
|
||||
|
||||
/**Function*************************************************************
|
||||
|
||||
Synopsis []
|
||||
|
||||
Description []
|
||||
|
||||
SideEffects []
|
||||
|
||||
SeeAlso []
|
||||
|
||||
***********************************************************************/
|
||||
sat_solver * If_ManSatBuild( char * pStr )
|
||||
{
|
||||
sat_solver * pSat = NULL;
|
||||
|
||||
return pSat;
|
||||
}
|
||||
|
||||
/**Function*************************************************************
|
||||
|
||||
Synopsis [Test procedure.]
|
||||
|
||||
Description []
|
||||
|
||||
SideEffects []
|
||||
|
||||
SeeAlso []
|
||||
|
||||
***********************************************************************/
|
||||
void If_ManSatTest()
|
||||
{
|
||||
}
|
||||
|
||||
////////////////////////////////////////////////////////////////////////
|
||||
/// END OF FILE ///
|
||||
////////////////////////////////////////////////////////////////////////
|
||||
|
||||
|
||||
ABC_NAMESPACE_IMPL_END
|
||||
|
||||
|
|
@ -17,4 +17,5 @@ SRC += src/map/if/ifCom.c \
|
|||
src/map/if/ifSeq.c \
|
||||
src/map/if/ifTime.c \
|
||||
src/map/if/ifTruth.c \
|
||||
src/map/if/ifTune.c \
|
||||
src/map/if/ifUtil.c
|
||||
|
|
|
|||
Loading…
Reference in New Issue