hwtLib.amba.sim package

Submodules

hwtLib.amba.sim.agentCommon module

class hwtLib.amba.sim.agentCommon.BaseAxiAgent(intf)[source]

Bases: hwt.interfaces.agents.handshaked.HandshakedAgent

getRd()[source]

get “ready” signal

getVld()[source]

get “valid” signal

hwtLib.amba.sim.axi3DenseMem module

class hwtLib.amba.sim.axi3DenseMem.Axi3DenseMem(clk, axi=None, axiAR=None, axiR=None, axiAW=None, axiW=None, axiB=None, parent=None)[source]

Bases: hwtLib.abstract.denseMemory.DenseMemory

Simulation memory for Axi3/4 interfaces (slave component)

__init__(clk, axi=None, axiAR=None, axiR=None, axiAW=None, axiW=None, axiB=None, parent=None)[source]
Parameters:
  • clk – clk which should this memory use in simulation
  • axi – axi (Axi3/4 master) interface to listen on
  • axiR, axiAW, axiW, axiB (axiAR,) – splited interface use this if you do not have full axi interface
  • parent – parent instance of this memory, memory will operate with same memory as parent one
Attention:

use axi or axi parts not bouth

Attention:

memories are commiting into memory in “data” property after transaction is complete

doRead()[source]
doWrite()[source]
doWriteAck(_id)[source]
parseReq(req)[source]

hwtLib.amba.sim.axiMemSpaceMaster module

class hwtLib.amba.sim.axiMemSpaceMaster.AxiLiteMemSpaceMaster(bus, registerMap)[source]

Bases: hwtLib.sim.abstractMemSpaceMaster.AbstractMemSpaceMaster

Controller of AxiLite simulation agent which keeps track of axi lite transactions and aggregates them to proper register names on target bus

__init__(bus, registerMap)[source]

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

_axi3lite_writeAddr(addrChannel, addr, size)[source]

add address transaction to addr channel of agent

_axi4lite_writeAddr(addrChannel, addr, size)[source]

add address transaction to addr channel of agent

_read(addr, size, onDone=None)[source]

add read address transaction to agent

_write(addr, size, data, mask, onDone=None)[source]

add write address and write data to agent

Parameters:onDone – callback function(sim) -> None
_writeData(data, mask, onDone=None)[source]

add data write transaction to agent

Parameters:onDone – callback function(sim) -> None
class hwtLib.amba.sim.axiMemSpaceMaster.TupleWithCallback[source]

Bases: tuple

Module contents