File FliImpl.h¶
Functions
-
void
cocotb_init
()
-
void
handle_fli_callback
(void *data)
-
class
FliProcessCbHdl
: public virtual GpiCbHdl Subclassed by FliShutdownCbHdl, FliSignalCbHdl, FliSimPhaseCbHdl, FliStartupCbHdl, FliTimedCbHdl
cleanup callback
Called while unwinding after a GPI callback
We keep the process but desensitize it
NB: need a way to determine if should leave it sensitized…
-
int
cleanup_callback
() override¶
Public Functions
-
FliProcessCbHdl
(GpiImplInterface *impl)¶
-
int
-
class
FliSignalCbHdl
: public FliProcessCbHdl, public GpiValueCbHdl cleanup callback
Called while unwinding after a GPI callback
We keep the process but desensitize it
NB: need a way to determine if should leave it sensitized…
-
FliSignalCbHdl
(GpiImplInterface *impl, FliSignalObjHdl *sig_hdl, int edge)¶
-
int
arm_callback
() override¶
Public Functions
-
int
cleanup_callback
() override¶
Private Members
-
mtiSignalIdT
m_sig_hdl
¶
-
-
class
FliSimPhaseCbHdl
: public FliProcessCbHdl Subclassed by FliNextPhaseCbHdl, FliReadOnlyCbHdl, FliReadWriteCbHdl
cleanup callback
Called while unwinding after a GPI callback
We keep the process but desensitize it
NB: need a way to determine if should leave it sensitized…
-
int
arm_callback
() override¶
Public Functions
-
FliSimPhaseCbHdl
(GpiImplInterface *impl, mtiProcessPriorityT priority)¶
Protected Attributes
-
mtiProcessPriorityT
m_priority
¶
-
int
-
class
FliReadWriteCbHdl
: public FliSimPhaseCbHdl Public Functions
-
FliReadWriteCbHdl
(GpiImplInterface *impl)¶
-
-
class
FliNextPhaseCbHdl
: public FliSimPhaseCbHdl Public Functions
-
FliNextPhaseCbHdl
(GpiImplInterface *impl)¶
-
-
class
FliReadOnlyCbHdl
: public FliSimPhaseCbHdl Public Functions
-
FliReadOnlyCbHdl
(GpiImplInterface *impl)¶
-
-
class
FliStartupCbHdl
: public FliProcessCbHdl cleanup callback
Called while unwinding after a GPI callback
We keep the process but desensitize it
NB: need a way to determine if should leave it sensitized…
-
int
arm_callback
() override¶
-
int
run_callback
() override¶
Public Functions
-
FliStartupCbHdl
(GpiImplInterface *impl)¶
-
int
-
class
FliShutdownCbHdl
: public FliProcessCbHdl cleanup callback
Called while unwinding after a GPI callback
We keep the process but desensitize it
NB: need a way to determine if should leave it sensitized…
-
int
arm_callback
() override¶
-
int
run_callback
() override¶
Public Functions
-
FliShutdownCbHdl
(GpiImplInterface *impl)¶
-
int
-
class
FliTimedCbHdl
: public FliProcessCbHdl cleanup callback
Called while unwinding after a GPI callback
We keep the process but desensitize it
NB: need a way to determine if should leave it sensitized…
-
FliTimedCbHdl
(GpiImplInterface *impl, uint64_t time_ps)¶
-
int
arm_callback
() override¶
-
int
cleanup_callback
() override¶
Public Functions
-
void
reset_time
(uint64_t new_time)¶
Private Members
-
uint64_t
m_time_ps
¶
-
-
class
FliObj
Subclassed by FliObjHdl, FliSignalObjHdl
-
class
FliObjHdl
: public GpiObjHdl, public FliObj Public Functions
-
FliObjHdl
(GpiImplInterface *impl, void *hdl, gpi_objtype_t objtype, int acc_type, int acc_full_type, bool is_const = false)¶
-
-
class
FliSignalObjHdl
: public GpiSignalObjHdl, public FliObj Subclassed by FliValueObjHdl
Public Functions
-
FliSignalObjHdl
(GpiImplInterface *impl, void *hdl, gpi_objtype_t objtype, bool is_const, int acc_type, int acc_full_type, bool is_var)¶
-
bool
is_var
()¶
Protected Attributes
-
bool
m_is_var
¶
-
FliSignalCbHdl
m_rising_cb
¶
-
FliSignalCbHdl
m_falling_cb
¶
-
FliSignalCbHdl
m_either_cb
¶
-
-
class
FliValueObjHdl
: public FliSignalObjHdl Subclassed by FliEnumObjHdl, FliIntObjHdl, FliLogicObjHdl, FliRealObjHdl, FliStringObjHdl
Public Functions
-
FliValueObjHdl
(GpiImplInterface *impl, void *hdl, gpi_objtype_t objtype, bool is_const, int acc_type, int acc_full_type, bool is_var, mtiTypeIdT valType, mtiTypeKindT typeKind)¶
-
~FliValueObjHdl
() override¶
-
const char *
get_signal_value_binstr
() override¶
-
const char *
get_signal_value_str
() override¶
-
double
get_signal_value_real
() override¶
-
long
get_signal_value_long
() override¶
-
int
set_signal_value
(long value, gpi_set_action_t action) override¶
-
int
set_signal_value
(double value, gpi_set_action_t action) override¶
-
int
set_signal_value_str
(std::string &value, gpi_set_action_t action) override¶
-
int
set_signal_value_binstr
(std::string &value, gpi_set_action_t action) override¶
-
void *
get_sub_hdl
(int index)¶
-
mtiTypeKindT
get_fli_typekind
()¶
-
mtiTypeIdT
get_fli_typeid
()¶
-
-
class
FliEnumObjHdl
: public FliValueObjHdl Public Functions
-
FliEnumObjHdl
(GpiImplInterface *impl, void *hdl, gpi_objtype_t objtype, bool is_const, int acc_type, int acc_full_type, bool is_var, mtiTypeIdT valType, mtiTypeKindT typeKind)¶
-
const char *
get_signal_value_str
() override¶
-
long
get_signal_value_long
() override¶
-
int
set_signal_value
(long value, gpi_set_action_t action) override¶
-
-
class
FliLogicObjHdl
: public FliValueObjHdl Public Functions
-
FliLogicObjHdl
(GpiImplInterface *impl, void *hdl, gpi_objtype_t objtype, bool is_const, int acc_type, int acc_full_type, bool is_var, mtiTypeIdT valType, mtiTypeKindT typeKind)¶
-
~FliLogicObjHdl
() override¶
-
const char *
get_signal_value_binstr
() override¶
-
int
set_signal_value
(long value, gpi_set_action_t action) override¶
-
int
set_signal_value_binstr
(std::string &value, gpi_set_action_t action) override¶
-
-
class
FliIntObjHdl
: public FliValueObjHdl Public Functions
-
FliIntObjHdl
(GpiImplInterface *impl, void *hdl, gpi_objtype_t objtype, bool is_const, int acc_type, int acc_full_type, bool is_var, mtiTypeIdT valType, mtiTypeKindT typeKind)¶
-
const char *
get_signal_value_binstr
() override¶
-
long
get_signal_value_long
() override¶
-
int
set_signal_value
(long value, gpi_set_action_t action) override¶
-
-
class
FliRealObjHdl
: public FliValueObjHdl Public Functions
-
FliRealObjHdl
(GpiImplInterface *impl, void *hdl, gpi_objtype_t objtype, bool is_const, int acc_type, int acc_full_type, bool is_var, mtiTypeIdT valType, mtiTypeKindT typeKind)¶
-
~FliRealObjHdl
() override¶
-
double
get_signal_value_real
() override¶
-
int
set_signal_value
(double value, gpi_set_action_t action) override¶
Private Members
-
double *
m_mti_buff
= nullptr¶
-
-
class
FliStringObjHdl
: public FliValueObjHdl Public Functions
-
FliStringObjHdl
(GpiImplInterface *impl, void *hdl, gpi_objtype_t objtype, bool is_const, int acc_type, int acc_full_type, bool is_var, mtiTypeIdT valType, mtiTypeKindT typeKind)¶
-
~FliStringObjHdl
() override¶
-
const char *
get_signal_value_str
() override¶
-
int
set_signal_value_str
(std::string &value, gpi_set_action_t action) override¶
Private Members
-
char *
m_mti_buff
= nullptr¶
-
-
class
FliTimerCache
Find the root handle
Find the root handle using an optional name
Get a handle to the root simulator object. This is usually the toplevel.
If no name is provided, we return the first root instance.
If name is provided, we check the name against the available objects until we find a match. If no match is found we return NULL
-
FliTimedCbHdl *
get_timer
(uint64_t time_ps)¶
-
void
put_timer
(FliTimedCbHdl*)¶
-
FliTimedCbHdl *
-
class
FliIterator
: public GpiIterator Find the root handle
Find the root handle using an optional name
Get a handle to the root simulator object. This is usually the toplevel.
If no name is provided, we return the first root instance.
If name is provided, we check the name against the available objects until we find a match. If no match is found we return NULL
-
GpiIteratorMapping<int, OneToMany>
iterate_over
¶
-
FliIterator
(GpiImplInterface *impl, GpiObjHdl *hdl)¶
Public Types
-
GpiIteratorMapping<int, OneToMany>
-
class
FliImpl
: public GpiImplInterface Native Check Create
Determine whether a simulation object is native to FLI and create a handle if it is
-
const char *
reason_to_string
(int reason) override¶
Get current simulation time
Get current simulation time
NB units depend on the simulation configuration
-
void
get_sim_time
(uint32_t *high, uint32_t *low) override¶
-
void
get_sim_precision
(int32_t *precision) override¶
-
const char *
get_simulator_product
() override¶
-
const char *
get_simulator_version
() override¶
Find the root handle
Find the root handle using an optional name
Get a handle to the root simulator object. This is usually the toplevel.
If no name is provided, we return the first root instance.
If name is provided, we check the name against the available objects until we find a match. If no match is found we return NULL
-
GpiIterator *
iterate_handle
(GpiObjHdl *obj_hdl, gpi_iterator_sel_t type) override¶
Public Functions
-
void
sim_end
() override¶
Public Members
-
FliTimerCache
cache
¶
Private Functions
-
bool
isValueConst
(int kind)¶
-
bool
isValueLogic
(mtiTypeIdT type)¶
-
bool
isValueChar
(mtiTypeIdT type)¶
-
bool
isValueBoolean
(mtiTypeIdT type)¶
-
bool
isTypeValue
(int type)¶
-
bool
isTypeSignal
(int type, int full_type)¶
Private Members
-
FliReadOnlyCbHdl
m_readonly_cbhdl
¶
-
FliNextPhaseCbHdl
m_nexttime_cbhdl
¶
-
FliReadWriteCbHdl
m_readwrite_cbhdl
¶
-
const char *