SWIG/Python bindings for the Unified Coverage Interoperability Standard (UCIS) API from Accellera.
Requires a recent version of SWIG (http://www.swig.org/) [ tested with SWIG v2.0.1 ]
Modify the Makefile to point to your EDA tool release of the UCIS API and associated implementation.
UCIS_INCLUDE_PATH should point to the location of the ucis.h and UCIS_LIB_PATH should point to the associated libucis.a or libucis.so file.
Your LD_LIBRARY_PATH environment variable needs to point to at least the UCIS_LIB_PATH to access the libucis.so and the location of the resulting _ucis.so from running make for PyUCIS. You'll also need to have the ucis.py file in your PYTHONPATH. Then run python and
from ucis import *
Depending on if you want to use a prefix namespace or not when accessing UCIS API calls. All features of the UCIS API then have the same names as defined there.
from ucis import * import sys db = ucis_Open('sink.ucdb') si = ucis_ScopeIterate(db, None, sys.maxint) sh = ucis_ScopeScan(db, si) print ucis_GetStringProperty( db, sh, 0, UCIS_STR_INSTANCE_DU_NAME)
- Callbacks to API methods from Python don't currently work.
- Some constants such as INT64_NEG1 cannot be used in API places where uint64_t are used in the UCIS standard.