hwtLib.common_nonstd_interfaces package

Submodules

hwtLib.common_nonstd_interfaces.addr_data_hs module

class hwtLib.common_nonstd_interfaces.addr_data_hs.AddrDataBitMaskHs(masterDir=<DIRECTION.OUT: 1>, loadConfig=True)[source]

Bases: hwtLib.common_nonstd_interfaces.addr_data_hs.AddrDataHs

See

AddrDataHs with a mask signal

Note

mask has 1b granularity

_declr()[source]

declarations

  • do all declarations of externally accessible objects there (Interfaces)

  • _declr method is called after _config

  • if this object is Unit all interfaces are threated as externally accessible interfaces if this object is Interface instance all subinterfaces are loaded as well

_initSimAgent(sim: pycocotb.hdlSimulator.HdlSimulator)[source]
class hwtLib.common_nonstd_interfaces.addr_data_hs.AddrDataHs(masterDir=<DIRECTION.OUT: 1>, loadConfig=True)[source]

Bases: hwt.interfaces.std.HandshakeSync

Simple handshaked interface with address and data signal

_config()[source]

Configure object parameters

  • setup all parameters on this object, use Param class instances to allow use of parameter inheritance

  • called in __init__ of class

_declr()[source]

declarations

  • do all declarations of externally accessible objects there (Interfaces)

  • _declr method is called after _config

  • if this object is Unit all interfaces are threated as externally accessible interfaces if this object is Interface instance all subinterfaces are loaded as well

_initSimAgent(sim: pycocotb.hdlSimulator.HdlSimulator)[source]
class hwtLib.common_nonstd_interfaces.addr_data_hs.AddrDataHsAgent(sim: pycocotb.hdlSimulator.HdlSimulator, intf, allowNoReset=False)[source]

Bases: hwt.interfaces.agents.handshaked.HandshakedAgent

get_data()[source]

extract data from interface

set_data(data)[source]

write data to interface

class hwtLib.common_nonstd_interfaces.addr_data_hs.AddrDataMaskHsAgent(sim: pycocotb.hdlSimulator.HdlSimulator, intf, allowNoReset=False)[source]

Bases: hwt.interfaces.agents.handshaked.HandshakedAgent

get_data()[source]

extract data from interface

set_data(data)[source]

write data to interface

class hwtLib.common_nonstd_interfaces.addr_data_hs.AddrDataVldAgent(sim: pycocotb.hdlSimulator.HdlSimulator, intf, allowNoReset=False)[source]

Bases: hwt.interfaces.agents.handshaked.HandshakedAgent

get_data()[source]

extract data from interface

set_data(data)[source]

write data to interface

class hwtLib.common_nonstd_interfaces.addr_data_hs.AddrDataVldHs(masterDir=<DIRECTION.OUT: 1>, loadConfig=True)[source]

Bases: hwtLib.common_nonstd_interfaces.addr_data_hs.AddrDataHs

See

AddrDataHs with a vld_flag signal

_declr()[source]

declarations

  • do all declarations of externally accessible objects there (Interfaces)

  • _declr method is called after _config

  • if this object is Unit all interfaces are threated as externally accessible interfaces if this object is Interface instance all subinterfaces are loaded as well

_initSimAgent(sim: pycocotb.hdlSimulator.HdlSimulator)[source]

hwtLib.common_nonstd_interfaces.addr_data_hs_bidir module

class hwtLib.common_nonstd_interfaces.addr_data_hs_bidir.AddrInDataOutHs(masterDir=<DIRECTION.OUT: 1>, loadConfig=True)[source]

Bases: hwtLib.handshaked.intfBiDirectional.HandshakedBiDirectional

_config()[source]

Configure object parameters

  • setup all parameters on this object, use Param class instances to allow use of parameter inheritance

  • called in __init__ of class

_declr()[source]

declarations

  • do all declarations of externally accessible objects there (Interfaces)

  • _declr method is called after _config

  • if this object is Unit all interfaces are threated as externally accessible interfaces if this object is Interface instance all subinterfaces are loaded as well

_initSimAgent(sim: pycocotb.hdlSimulator.HdlSimulator)[source]
class hwtLib.common_nonstd_interfaces.addr_data_hs_bidir.AddrInDataOutHsAgent(sim, intf)[source]

Bases: hwtLib.handshaked.intfBiDirectional.HandshakedBiDirectionalAgent

Simulation agent for AddrDataOutInHs interface

get_data()[source]

extract data from interface

onDriverWriteAck()[source]

read din

onMonitorReady()[source]

write din

set_data(data)[source]

write data to interface

class hwtLib.common_nonstd_interfaces.addr_data_hs_bidir.AddrInOutDataInHs(masterDir=<DIRECTION.OUT: 1>, loadConfig=True)[source]

Bases: hwtLib.handshaked.intfBiDirectional.HandshakedBiDirectional

_config()[source]

Configure object parameters

  • setup all parameters on this object, use Param class instances to allow use of parameter inheritance

  • called in __init__ of class

_declr()[source]

declarations

  • do all declarations of externally accessible objects there (Interfaces)

  • _declr method is called after _config

  • if this object is Unit all interfaces are threated as externally accessible interfaces if this object is Interface instance all subinterfaces are loaded as well

_initSimAgent(sim: pycocotb.hdlSimulator.HdlSimulator)[source]
class hwtLib.common_nonstd_interfaces.addr_data_hs_bidir.AddrInOutDataInHsAgent(sim, intf)[source]

Bases: hwtLib.handshaked.intfBiDirectional.HandshakedBiDirectionalAgent

Simulation agent for AddrInOutDataInHs interface

get_data()[source]

extract data from interface

onDriverWriteAck()[source]

read din

onMonitorReady()[source]

write din

set_data(data)[source]

write data to interface

class hwtLib.common_nonstd_interfaces.addr_data_hs_bidir.AddrOutDataInHs(masterDir=<DIRECTION.OUT: 1>, loadConfig=True)[source]

Bases: hwtLib.handshaked.intfBiDirectional.HandshakedBiDirectional

_config()[source]

Configure object parameters

  • setup all parameters on this object, use Param class instances to allow use of parameter inheritance

  • called in __init__ of class

_declr()[source]

declarations

  • do all declarations of externally accessible objects there (Interfaces)

  • _declr method is called after _config

  • if this object is Unit all interfaces are threated as externally accessible interfaces if this object is Interface instance all subinterfaces are loaded as well

_initSimAgent(sim: pycocotb.hdlSimulator.HdlSimulator)[source]
class hwtLib.common_nonstd_interfaces.addr_data_hs_bidir.AddrOutDataInHsAgent(sim, intf)[source]

Bases: hwtLib.handshaked.intfBiDirectional.HandshakedBiDirectionalAgent

Simulation agent for AddrOutDataInHs interface

get_data()[source]

extract data from interface

onDriverWriteAck()[source]

read din

onMonitorReady()[source]

write din

set_data(data)[source]

write data to interface

hwtLib.common_nonstd_interfaces.addr_data_hs_to_Axi module

class hwtLib.common_nonstd_interfaces.addr_data_hs_to_Axi.AddrDataHs_to_Axi(intfCls=<class 'hwtLib.amba.axi4.Axi4'>)[source]

Bases: hwtLib.abstract.busBridge.BusBridge

Bridge AddrDataHs,RamHsR -> Axi3/4

  • read delay: 1, transaction overlap 0

  • write delay: 1, transaction overlap 0

Variables
  • S_ADDR_STEP – number of bites per step on AddrDataHs,RamHsR interfaces

  • M_DATA_WIDTH – data width for AXI interface

  • M_ID_WIDTH – id width for AXI interface

  • M_ADDR_OFFSET – address offset value for axi interface

__init__(intfCls=<class 'hwtLib.amba.axi4.Axi4'>)[source]

Initialize self. See help(type(self)) for accurate signature.

_config()[source]

Configure object parameters

  • setup all parameters on this object, use Param class instances to allow use of parameter inheritance

  • called in __init__ of class

_declr()[source]

declarations

  • do all declarations of externally accessible objects there (Interfaces)

  • _declr method is called after _config

  • if this object is Unit all interfaces are threated as externally accessible interfaces if this object is Interface instance all subinterfaces are loaded as well

_impl()[source]

implementations

  • implement functionality of componnent there

  • called after _declr

static _serializeDecision(parentUnit, priv)

Decide to serialize only objs with uniq parameters and class

Parameters

priv – private data for this function ({frozen_params: obj})

Returns

tuple (do serialize this object, next priv, replacement unit)

addr_defaults(a: hwtLib.amba.axi4.Axi4_addr)[source]
connect_addr(src, dst)[source]
connect_r(s_r: hwtLib.handshaked.ramAsHs.RamHsR, axi: hwtLib.amba.axi4.Axi4, r_cntr: hwt.synthesizer.rtlLevel.rtlSignal.RtlSignal, CNTR_MAX: int, in_axi_t: Union[hwt.hdl.types.struct.HStruct, hwt.hdl.types.union.HUnion])[source]
connect_w(s_w: hwtLib.common_nonstd_interfaces.addr_data_hs.AddrDataHs, axi: hwtLib.amba.axi4.Axi4, w_cntr: hwt.synthesizer.rtlLevel.rtlSignal.RtlSignal, CNTR_MAX: int, in_axi_t: hwt.hdl.types.struct.HStruct)[source]
generate_in_axi_type()[source]
split_subaddr(addr: hwt.synthesizer.rtlLevel.rtlSignal.RtlSignal)[source]
hwtLib.common_nonstd_interfaces.addr_data_hs_to_Axi.example_AddrDataHs_to_Axi()[source]

Download a 512b word over 64b interface

hwtLib.common_nonstd_interfaces.data_mask_last_hs module

class hwtLib.common_nonstd_interfaces.data_mask_last_hs.DataMaskHsAgent(sim: pycocotb.hdlSimulator.HdlSimulator, intf, allowNoReset=False)[source]

Bases: hwt.interfaces.agents.handshaked.HandshakedAgent

Simulation agent for DataMaskLastHs interface.

get_data()[source]

extract data from interface

set_data(data)[source]

write data to interface

class hwtLib.common_nonstd_interfaces.data_mask_last_hs.DataMaskLastHs(masterDir=<DIRECTION.OUT: 1>, loadConfig=True)[source]

Bases: hwt.interfaces.std.Handshaked

Handshaked interface with data, mask, last signal.

_config()[source]

Configure object parameters

  • setup all parameters on this object, use Param class instances to allow use of parameter inheritance

  • called in __init__ of class

_declr()[source]

declarations

  • do all declarations of externally accessible objects there (Interfaces)

  • _declr method is called after _config

  • if this object is Unit all interfaces are threated as externally accessible interfaces if this object is Interface instance all subinterfaces are loaded as well

_initSimAgent(sim: pycocotb.hdlSimulator.HdlSimulator)[source]

hwtLib.common_nonstd_interfaces.index_key_hs module

class hwtLib.common_nonstd_interfaces.index_key_hs.IndexKeyHs(masterDir=<DIRECTION.OUT: 1>, loadConfig=True)[source]

Bases: hwt.interfaces.std.Handshaked

_config()[source]

Configure object parameters

  • setup all parameters on this object, use Param class instances to allow use of parameter inheritance

  • called in __init__ of class

_declr()[source]

declarations

  • do all declarations of externally accessible objects there (Interfaces)

  • _declr method is called after _config

  • if this object is Unit all interfaces are threated as externally accessible interfaces if this object is Interface instance all subinterfaces are loaded as well

_initSimAgent(sim: pycocotb.hdlSimulator.HdlSimulator)[source]
class hwtLib.common_nonstd_interfaces.index_key_hs.IndexKeyHsAgent(sim: pycocotb.hdlSimulator.HdlSimulator, intf, allowNoReset=False)[source]

Bases: hwt.interfaces.agents.handshaked.HandshakedAgent

get_data() → Union[Tuple[int, int], int][source]

extract data from interface

set_data(data: Union[Tuple[int, int], int])[source]

write data to interface