Class uvm_sequencer_param_base
Name |
Default value |
Description |
---|---|---|
REQ |
uvm_sequence_item |
|
RSP |
REQ |
Name |
Type |
Description |
---|---|---|
sqr_rsp_analysis_fifo |
||
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. |
Name |
Actual Type |
Description |
---|---|---|
this_type |
||
req_type |
||
rsp_type |
Constructors
- function new ( string name, uvm_component parent ) [source]
Creates and initializes an instance of this class using the normal constructor arguments for uvm_component: name is the name of the instance, and parent is the handle to the hierarchical parent, if any. New
Functions
- virtual function void send_request ( uvm_sequence_base sequence_ptr, uvm_sequence_item t, bit rerandomize ) [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. Send_request
- function REQ 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.
- function int get_num_reqs_sent ( ) [source]
Returns the number of requests that have been sent by this sequencer. Get_num_reqs_sent
- function void set_num_last_reqs ( int unsigned max ) [source]
Sets the size of the last_requests buffer. Note that the maximum buffer size is 1024. If max is greater than 1024, a warning is issued, and the buffer is set to 1024. The default value is 1. Set_num_last_reqs
- function int unsigned get_num_last_reqs ( ) [source]
Returns the size of the last requests buffer, as set by set_num_last_reqs. Get_num_last_reqs
- function REQ last_req ( int unsigned n ) [source]
Returns the last request item by default. If n is not 0, then it will get the n�th before last request item. If n is greater than the last request buffer size, the function will return null .
- function int get_num_rsps_received ( ) [source]
Returns the number of responses received thus far by this sequencer. Get_num_rsps_received
- function void set_num_last_rsps ( int unsigned max ) [source]
Sets the size of the last_responses buffer. The maximum buffer size is 1024. If max is greater than 1024, a warning is issued, and the buffer is set to 1024. The default value is 1. Set_num_last_rsps
- function int unsigned get_num_last_rsps ( ) [source]
Returns the max size of the last responses buffer, as set by set_num_last_rsps. Get_num_last_rsps
- function RSP last_rsp ( int unsigned n ) [source]
Returns the last response item by default. If n is not 0, then it will get the nth-before-last response item. If n is greater than the last response buffer size, the function will return null .
- function void put_response ( uvm_sequence_item t ) [source]
Put_response
- virtual function void do_print ( uvm_printer printer ) [source]
Do_print
- virtual function void analysis_write ( uvm_sequence_item t ) [source]
Analysis_write
CLASS
uvm_sequencer_param_base #(REQ,RSP)
Extends uvm_sequencer_base with an API depending on specific request (REQ) and response (RSP) types.