mirror of
https://github.com/YosysHQ/abc.git
synced 2026-09-04 08:33:58 +02:00
Modifying 'write_truth' to dump truth table in hex.
This commit is contained in:
@@ -125,6 +125,7 @@ extern int Extra_ReadHexadecimal( unsigned Sign[], char * pString, int
|
||||
extern void Extra_PrintHexadecimal( FILE * pFile, unsigned Sign[], int nVars );
|
||||
extern void Extra_PrintHexadecimalString( char * pString, unsigned Sign[], int nVars );
|
||||
extern void Extra_PrintHex( FILE * pFile, unsigned * pTruth, int nVars );
|
||||
extern void Extra_PrintHex2( FILE * pFile, unsigned * pTruth, int nVars );
|
||||
extern void Extra_PrintHexReverse( FILE * pFile, unsigned * pTruth, int nVars );
|
||||
extern void Extra_PrintSymbols( FILE * pFile, char Char, int nTimes, int fPrintNewLine );
|
||||
|
||||
|
||||
@@ -656,6 +656,24 @@ void Extra_PrintHex( FILE * pFile, unsigned * pTruth, int nVars )
|
||||
}
|
||||
// fprintf( pFile, "\n" );
|
||||
}
|
||||
void Extra_PrintHex2( FILE * pFile, unsigned * pTruth, int nVars )
|
||||
{
|
||||
int nMints, nDigits, Digit, k;
|
||||
|
||||
// write the number into the file
|
||||
//fprintf( pFile, "0x" );
|
||||
nMints = (1 << nVars);
|
||||
nDigits = nMints / 4 + ((nMints % 4) > 0);
|
||||
for ( k = nDigits - 1; k >= 0; k-- )
|
||||
{
|
||||
Digit = ((pTruth[k/8] >> (k * 4)) & 15);
|
||||
if ( Digit < 10 )
|
||||
fprintf( pFile, "%d", Digit );
|
||||
else
|
||||
fprintf( pFile, "%c", 'A' + Digit-10 );
|
||||
}
|
||||
// fprintf( pFile, "\n" );
|
||||
}
|
||||
void Extra_PrintHexReverse( FILE * pFile, unsigned * pTruth, int nVars )
|
||||
{
|
||||
int nMints, nDigits, Digit, k;
|
||||
|
||||
Reference in New Issue
Block a user