avl_axi._srdriver module

class avl_axi._srdriver.SubordinateReadDriver(*args, **kwargs)[source]
Parameters:
__init__(name, parent)[source]

Initialize the Subordinate Read Driver for the AMBA agent.

Parameters:
  • name (str) – Name of the agent instance

  • parent (Component) – Parent component

Return type:

None

in_order

Responses return in order of control

qosaccept

QOS Accept hint value

async reset()[source]

Reset the driver by setting all signals to their default values. This method is called when the driver is reset.

By default 0’s all signals - can be overridden in subclasses to add randomization or other behavior.

Return type:

None

async quiesce_control()[source]

Quiesce the control channel by setting all control signals to their default values. This method is called after a control transaction is completed.

By default 0’s all control signals - can be overridden in subclasses to add randomization or other behavior.

Return type:

None

async drive_control()[source]

Drive the control channel by sending read address transactions. This method runs in a loop, waiting for the appropriate conditions to send transactions.

Return type:

None

async quiesce_data()[source]

Quiesce the data channel by setting all data signals to their default values. This method is empty as reads have no data channel.

Return type:

None

async drive_data()[source]

Drive the data channel by sending read data transactions. This method is empty as reads have no data channel.

Return type:

None

async quiesce_response()[source]

Quiesce the response channel by setting all response signals to their default values. This method is called after a response transaction is completed. By default 0’s all response signals - can be overridden in subclasses to add randomization or other behavior.

Return type:

None

async drive_response()[source]

Drive the response channel by sending read data transactions. This method runs in a loop, waiting for the appropriate conditions to send transactions.

Return type:

None

async get_next_item(item=None)[source]

Get the next item to be sent on the response channel. This method can be overridden in subclasses to modify the item before it is sent. By default, it initializes the read count if not already set.

Parameters:

item (SequenceItem) – The item to be sent on the response channel

Returns:

The item to be sent on the response channel

Return type:

SequenceItem

class avl_axi._srdriver.SubordinateReadRandomDriver(*args, **kwargs)[source]
Parameters:
async get_next_item(item=None)[source]

Get the next item to be sent on the response channel. This method randomizes the item if it has not been sent before.

Parameters:

item (SequenceItem) – The item to be sent on the response channel

Returns:

The item to be sent on the response channel

Return type:

SequenceItem

class avl_axi._srdriver.SubordinateReadMemoryDriver(*args, **kwargs)[source]
Parameters:
__init__(name, parent)[source]

Initialize the Subordinate Write Driver for the AXI agent.

This agent behaves as a memory

Memory operations are performed at the end of the ar phase as responses can be delayed

Parameters:
  • name (str) – Name of the agent instance

  • parent (Component) – Parent component

Return type:

None