AXI Ready generation object. Ready signals of write command channel, write data channel, write response channel , read command channel and read data channel are generated independently from other attributes. This class is being used to generate all kinds of different patterns of ready signal which user wants. Please refer section READY Generation of PG267 for more details about how to generate ready.
function new( |
| ); |
Constructor to create a new AXI ready generation
Reset all variables in ready generation to default value. please refer xil_axi_ready_gen_policy_t , xil_axi_ready_rand_policy_t for more details about ready generation policy.
this.max_low_time = 5;
this.min_low_time = 0;
this.max_high_time = 5;
this.min_high_time = 0;
this.max_event_count = 1;
this.min_event_count = 1;
this.event_cycle_count_reset = 2000;
this.ready_policy = XIL_AXI_READY_GEN_SINGLE;
this.ready_rand_policy = XIL_AXI_READY_RAND_SINGLE;
this.event_count = 1;
this.high_time = 5;
this.low_time = 2;
this.rand_event_count = 1;
this.rand_high_time = 5;
this.rand_low_time = 1;
this.use_variable_ranges = XIL_AXI_FALSE;
function void copy( |
| ); |
Copies the contents of the input ready generation to the current ready generation
Clones the current ready generation and returns a handle to the new generation
Returns a format of string of Ready information for axi_ready_gen
Policy
Random Policy
Use Variable Ranges
Max Low Time
Min Low Time
Max High Time
Min High Time
Max Event Count
Min Event Count
Event Cycle Count Reset
Low Time
High Time
Event Count
Sets use_variable_ranges to be TRUE. This is to set that get_low_time, get_high_time, get_event_count are randomly generated between the range of minimum and maximum value
Sets use_variable_ranges to be FALSE.This is to set that get_low_time, get_high_time, get_event_count are returned with current low_time, high_time, event_count if ready_policy is not RANDOM
Returns the current state of the variable range use feature.
virtual function void set_ready_policy( |
| ); |
Sets the policy of axi_ready_gen. refer xil_axi_ready_gen_policy_t for policy. if policy is XIL_AXI_READY_GEN_NO_BACKPRESSURE, Then it returns
set_low_time(0)
set_low_time_range(0,0);
set_high_time(1);
set_high_time_range(1,1)
clr_use_variable_ranges()
Returns the current ready generation policy of axi_ready_gen. refer xil_axi_ready_gen_policy_t for policy information
virtual function void set_event_cycle_count_reset( |
| ); |
Sets event_cycle_count_reset value of ready generation
Returns the current event_cycle_count_reset of axi_ready_gen. In ready generation,event_cycle_count_reset is used to reset event_counter(count number of ready/valid handshake) to zero.
virtual function void get_low_time_range( |
| ); |
Returns min_low_time and max_low_time of the ready generation. low_time is how many cycles ready stay low.
virtual function void set_low_time_range( |
| ); |
Sets min_low_time and max_low_time of the ready generation
Returns low time of the current ready generation. if ready policy is XIL_AXI_READY_GEN_NO_BACKPRESSURE, low time is 0, else if ready policy is XIL_AXI_READY_GEN_RANDOM or get_use_variable_ranges is TRUE, low is the randomly generated low time. else low time is low_time of current ready generation. low_time is how many cycles ready stay low.
virtual function void set_low_time( |
| ); |
Sets the low time of the ready generation
virtual function void get_high_time_range( |
| ); |
Returns min_high_time and max_high_time of the ready generation. high_time is how many cycles ready stay high.
virtual function void set_high_time_range( |
| ); |
Sets min_high_time and max_high_time of the ready generation. high_time is how many cycles ready stay high.
Returns high time of axi_ready_gen. If ready policy is XIL_AXI_READY_GEN_NO_BACKPRESSURE, returns 1, else if ready policy is XIL_AXI_READY_GEN_RANDOM or get_use_variable_ranges is TRUE, high time is the randomly generated high time. else high time is high_time of current ready generation.High_time is how many cycles ready stay high.
virtual function void set_high_time( |
| ); |
Sets the high time of the ready generation
virtual function void get_event_count_range( |
| ); |
Returns min_event_count and max_event_count of the ready generation. event count is used when policy is XIL_AXI_READY_RAND_AFTER_VALID_EVENTS. refer xil_axi_ready_gen_policy_t about how event_count works
virtual function void set_event_count_range( |
| ); |
Sets min_event_count and max_event_count of the ready generation. event count is used when policy is XIL_AXI_READY_RAND_AFTER_VALID_EVENTS. refer xil_axi_ready_gen_policy_t about how event_count works.
Returns event_count of axi_ready_gen. event count is used when policy is XIL_AXI_READY_RAND_AFTER_VALID_EVENTS. refer xil_axi_ready_gen_policy_t about how event_count works.
virtual function void set_event_count( |
| ); |
Sets the number of events that ready stays at high. event count is used when policy is XIL_AXI_READY_RAND_AFTER_VALID_EVENTS. refer xil_axi_ready_gen_policy_t about how event_count works.
Returns ready_rand_policy of the ready generation. refer xil_axi_ready_rand_policy_t for more information.