Unverified Commit 547de096 by alanminko Committed by GitHub

Merge pull request #145 from QuantamHD/fix_internal_pins

Fixes internal pin parsing error in ASAP7 liberty file.
parents 5405003a f288c4d7
...@@ -955,6 +955,8 @@ int Scl_LibertyReadPinDirection( Scl_Tree_t * p, Scl_Item_t * pPin ) ...@@ -955,6 +955,8 @@ int Scl_LibertyReadPinDirection( Scl_Tree_t * p, Scl_Item_t * pPin )
return 0; return 0;
if ( !strcmp(pToken, "output") ) if ( !strcmp(pToken, "output") )
return 1; return 1;
if ( !strcmp(pToken, "internal") )
return 2;
break; break;
} }
return -1; return -1;
...@@ -1525,7 +1527,7 @@ Vec_Str_t * Scl_LibertyReadSclStr( Scl_Tree_t * p, int fVerbose, int fVeryVerbos ...@@ -1525,7 +1527,7 @@ Vec_Str_t * Scl_LibertyReadSclStr( Scl_Tree_t * p, int fVerbose, int fVeryVerbos
float CapOne, CapRise, CapFall; float CapOne, CapRise, CapFall;
if ( Scl_LibertyReadPinFormula(p, pPin) != NULL ) // skip output pin if ( Scl_LibertyReadPinFormula(p, pPin) != NULL ) // skip output pin
continue; continue;
assert( Scl_LibertyReadPinDirection(p, pPin) == 0 ); assert( Scl_LibertyReadPinDirection(p, pPin) == 0 || Scl_LibertyReadPinDirection(p, pPin) == 2);
pName = Scl_LibertyReadString(p, pPin->Head); pName = Scl_LibertyReadString(p, pPin->Head);
Vec_PtrPush( vNameIns, Abc_UtilStrsav(pName) ); Vec_PtrPush( vNameIns, Abc_UtilStrsav(pName) );
Vec_StrPutS_( vOut, pName ); Vec_StrPutS_( vOut, pName );
...@@ -1546,6 +1548,8 @@ Vec_Str_t * Scl_LibertyReadSclStr( Scl_Tree_t * p, int fVerbose, int fVeryVerbos ...@@ -1546,6 +1548,8 @@ Vec_Str_t * Scl_LibertyReadSclStr( Scl_Tree_t * p, int fVerbose, int fVeryVerbos
{ {
if ( !Scl_LibertyReadPinFormula(p, pPin) ) // skip input pin if ( !Scl_LibertyReadPinFormula(p, pPin) ) // skip input pin
continue; continue;
if (Scl_LibertyReadPinDirection(p, pPin) == 2) // skip internal pin
continue;
assert( Scl_LibertyReadPinDirection(p, pPin) == 1 ); assert( Scl_LibertyReadPinDirection(p, pPin) == 1 );
pName = Scl_LibertyReadString(p, pPin->Head); pName = Scl_LibertyReadString(p, pPin->Head);
Vec_StrPutS_( vOut, pName ); Vec_StrPutS_( vOut, pName );
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment