hwtSimApi.basic_hdl_simulator package

Submodules

hwtSimApi.basic_hdl_simulator.io module

class hwtSimApi.basic_hdl_simulator.io.BasicRtlSimIo

Bases: object

Container of BasicRtlSimProxy objects

hwtSimApi.basic_hdl_simulator.model module

class hwtSimApi.basic_hdl_simulator.model.BasicRtlSimModel(sim: BasicRtlSimulator, name: str | None = None)

Bases: object

Base class for model in simulator

hwtSimApi.basic_hdl_simulator.model_utils module

hwtSimApi.basic_hdl_simulator.model_utils.connectSimPort(sim_unit, sim_sub_unit, unit_port_name: str, sub_unit_port_name: str)

Connect ports of simulation models by name (Replace a child port with a parent signal/port directly)

hwtSimApi.basic_hdl_simulator.model_utils.sensitivity(proc_fn, *sensitiveTo: List[BasicRtlSimProxy | Tuple[Tuple[bool, bool], BasicRtlSimProxy]])

register sensitivity for process

hwtSimApi.basic_hdl_simulator.proxy module

class hwtSimApi.basic_hdl_simulator.proxy.BasicRtlSimProxy(sim: BasicRtlSimulator, parent, name, dtype, def_val)

Bases: object

Signal proxy which manages the access to a memory in simulation

Variables:
  • ~.callbacks – list of sim processes which will be waken up if signal value is updated

  • ~.sim – main simulator

  • ~._name – name of property which is this proxy stored in on parent

  • ~._hdlName – signal name which was used in HDL

  • ~._dtype – data type of this signal

  • ~._origin – the object which was this proxy generated from

  • ~._ag – agent which controls this proxy

  • ~.parent – parent object

  • ~.def_val – value used for initialization of value (done on sim. startup)

  • ~.val – actual value of signal

  • ~.val_next – place for metainformations about next update

BIT_t = <Bits3t u1>
callbacks
def_val
init_def_val(*args, **kwargs)
parent
read()
sim
simFallingSensProcs
simRisingSensProcs
simSensProcs
val
val_next
wait(cb)
write(val: None | int | Bits3val)
class hwtSimApi.basic_hdl_simulator.proxy.BasicRtlSimProxyArrItem(parent_proxy, item_index)

Bases: object

Virtual proxy for an array item of BasicRtlSimProxy

read()

hwtSimApi.basic_hdl_simulator.rtlSimulator module

hwtSimApi.basic_hdl_simulator.sim_utils module

class hwtSimApi.basic_hdl_simulator.sim_utils.ArrayValueUpdater(nextItemVal: Value, indexes: Tuple[Value], invalidate: bool)

Bases: object

class hwtSimApi.basic_hdl_simulator.sim_utils.ValueUpdater(nextVal, invalidate: bool)

Bases: object

hwtSimApi.basic_hdl_simulator.sim_utils.sim_eval_cond(v)

Evaluate list of values as condition

Returns:

tuple (value, value valid)

hwtSimApi.basic_hdl_simulator.sim_utils.valueHasChanged(valA: Value, valB: Value)