uvm_sequencer_param_base

class uvm.seq.uvm_sequencer_param_base.UVMSequencerParamBase(name, parent)[source]

Bases: UVMSequencerBase

CLASS: uvm_sequencer_param_base #(REQ,RSP)

Extends <uvm_sequencer_base> with an API depending on specific request (REQ) and response (RSP) types.

Port (UVMAnalysisExport): rsp_export

Drivers or monitors can connect to this port to send responses to the sequencer. Alternatively, a driver can send responses via its seq_item_port:

seq_item_port.item_done(response)
seq_item_port.put(response)
rsp_port.write(response)   <--- via this export

The rsp_port in the driver and/or monitor must be connected to the rsp_export in this sequencer in order to send responses through the response analysis port.

send_request(sequence_ptr, t, rerandomize=False)[source]

The send_request function may only be called after a wait_for_grant call. This call will send the request item, t, to the sequencer pointed to by sequence_ptr. The sequencer will forward it to the driver. If rerandomize is set, the item will be randomized before being sent to the driver.

Parameters
get_current_item()[source]

Returns the request_item currently being executed by the sequencer. If the sequencer is not currently executing an item, this method will return null.

The sequencer is executing an item from the time that get_next_item or peek is called until the time that get or item_done is called.

Note that a driver that only calls get() will never show a current item, since the item is completed at the same time as it is requested.

Returns

Request item currently being executed

Return type

UVMSequenceItem

get_num_reqs_sent()[source]

Returns the number of requests that have been sent by this sequencer.

Returns

Number of requests sent.

Return type

int

set_num_last_reqs(max_val)[source]
get_num_last_reqs()[source]

Function: get_num_last_reqs

Returns the size of the last requests buffer, as set by set_num_last_reqs.

extern function int unsigned get_num_last_reqs()

Returns:

get_num_rsps_received()[source]

Returns the number of responses received thus far by this sequencer.

Returns:

get_num_last_rsps()[source]

Function: get_num_last_rsps

Returns the max size of the last responses buffer, as set by set_num_last_rsps.

extern function int unsigned get_num_last_rsps()

Returns:

m_last_rsp_push_front(item)[source]

/* local */ extern function void m_last_rsp_push_front(RSP item)

Parameters

item

put_response(t)[source]

/* local */ extern function void put_response (RSP t)

Parameters

t

build_phase(phase)[source]

/* local */ extern virtual function void build_phase(uvm_phase phase)

Parameters

phase

connect_phase(phase)[source]

/* local */ extern virtual function void connect_phase(uvm_phase phase)

Parameters

phase

m_last_req_push_front(item)[source]

/* local */ extern function void m_last_req_push_front(REQ item)

Parameters

item

m_children: Dict[str, 'UVMComponent']
m_children_by_handle: Dict['UVMComponent', 'UVMComponent']
m_children_ordered: List['UVMComponent']
event_pool: UVMEventPool