Skip to content

Commit a02d077

Browse files
ADI AMD agent abstractization: Fixes
Signed-off-by: Istvan-Zsolt Szekely <istvan.szekely@analog.com>
1 parent c5bb22e commit a02d077

File tree

16 files changed

+63
-81
lines changed

16 files changed

+63
-81
lines changed

library/vip/amd/axis/m_axis_sequencer.sv

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -271,6 +271,8 @@ package m_axis_sequencer_pkg;
271271
if (enabled || (!enabled && stop_policy == STOP_POLICY_DESCRIPTOR_QUEUE)) begin
272272
packetize();
273273
descriptor_delay_subroutine();
274+
end else begin
275+
packet_sent();
274276
end
275277
end else begin
276278
this.queue_empty_sig = 1;

testbenches/ip/axis_sequencers/environment.sv

Lines changed: 5 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -80,34 +80,23 @@ package environment_pkg;
8080

8181
// destination stub
8282
dac_mode = XIL_AXI4STREAM_READY_GEN_NO_BACKPRESSURE;
83-
this.dst_axis_agent.master_sequencer.set_mode(dac_mode);
83+
this.dst_axis_agent.slave_sequencer.set_mode(dac_mode);
8484
endtask
8585

8686
//============================================================================
8787
// Start environment
8888
//============================================================================
8989
task start();
90-
this.src_axis_agent.agent.start_master();
91-
this.dst_axis_agent.agent.start_slave();
92-
endtask
93-
94-
//============================================================================
95-
// Run subroutine
96-
//============================================================================
97-
task run;
98-
fork
99-
this.src_axis_agent.master_sequencer.run();
100-
this.dst_axis_agent.master_sequencer.run();
101-
join_none
90+
this.src_axis_agent.start_master();
91+
this.dst_axis_agent.start_slave();
10292
endtask
10393

10494
//============================================================================
10595
// Stop subroutine
10696
//============================================================================
10797
task stop;
108-
this.src_axis_agent.master_sequencer.stop();
109-
this.src_axis_agent.agent.stop_master();
110-
this.dst_axis_agent.agent.stop_slave();
98+
this.src_axis_agent.stop_master();
99+
this.dst_axis_agent.stop_slave();
111100
endtask
112101

113102
endclass

testbenches/ip/axis_sequencers/tests/test_program.sv

Lines changed: 5 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -72,7 +72,7 @@ program test_program;
7272
`TH.`SRC_AXIS.inst.IF,
7373
`TH.`DST_AXIS.inst.IF);
7474

75-
setLoggerVerbosity(ADI_VERBOSITY_NONE);
75+
setLoggerVerbosity(ADI_VERBOSITY_HIGH);
7676

7777
base_env.start();
7878
axis_seq_env.start();
@@ -81,17 +81,15 @@ program test_program;
8181

8282
axis_seq_env.configure();
8383

84-
axis_seq_env.run();
85-
8684
axis_seq_env.src_axis_agent.master_sequencer.set_data_beat_delay(`SRC_BEAT_DELAY);
8785
axis_seq_env.src_axis_agent.master_sequencer.set_descriptor_delay(`SRC_DESCRIPTOR_DELAY);
8886

89-
axis_seq_env.dst_axis_agent.master_sequencer.set_high_time(`DEST_BEAT_DELAY_HIGH);
90-
axis_seq_env.dst_axis_agent.master_sequencer.set_low_time(`DEST_BEAT_DELAY_LOW);
87+
axis_seq_env.dst_axis_agent.slave_sequencer.set_high_time(`DEST_BEAT_DELAY_HIGH);
88+
axis_seq_env.dst_axis_agent.slave_sequencer.set_low_time(`DEST_BEAT_DELAY_LOW);
9189

9290
case (`DEST_BACKPRESSURE)
93-
1: axis_seq_env.dst_axis_agent.master_sequencer.set_mode(XIL_AXI4STREAM_READY_GEN_SINGLE);
94-
2: axis_seq_env.dst_axis_agent.master_sequencer.set_mode(XIL_AXI4STREAM_READY_GEN_NO_BACKPRESSURE);
91+
1: axis_seq_env.dst_axis_agent.slave_sequencer.set_mode(XIL_AXI4STREAM_READY_GEN_SINGLE);
92+
2: axis_seq_env.dst_axis_agent.slave_sequencer.set_mode(XIL_AXI4STREAM_READY_GEN_NO_BACKPRESSURE);
9593
default: `FATAL(("Destination backpressure mode parameter incorrect!"));
9694
endcase
9795

testbenches/ip/data_offload/environment.sv

Lines changed: 5 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -56,7 +56,7 @@ package environment_pkg;
5656
this.adc_src_axis_agent.master_sequencer.add_xfer_descriptor_byte_count(bytes_to_generate, 0, 0);
5757

5858
// DAC stub
59-
this.dac_dst_axis_agent.master_sequencer.set_mode(XIL_AXI4STREAM_READY_GEN_NO_BACKPRESSURE);
59+
this.dac_dst_axis_agent.slave_sequencer.set_mode(XIL_AXI4STREAM_READY_GEN_NO_BACKPRESSURE);
6060
endtask
6161

6262
//============================================================================
@@ -65,8 +65,8 @@ package environment_pkg;
6565
// - Start the agents
6666
//============================================================================
6767
task start();
68-
this.adc_src_axis_agent.agent.start_master();
69-
this.dac_dst_axis_agent.agent.start_slave();
68+
this.adc_src_axis_agent.start_master();
69+
this.dac_dst_axis_agent.start_slave();
7070

7171
this.dac_dst_axis_agent.monitor.publisher.subscribe(this.scoreboard_tx.subscriber_sink);
7272

@@ -78,12 +78,6 @@ package environment_pkg;
7878
//============================================================================
7979
task run();
8080
fork
81-
this.adc_src_axis_agent.master_sequencer.run();
82-
this.dac_dst_axis_agent.master_sequencer.run();
83-
84-
this.adc_src_axis_agent.monitor.run();
85-
this.dac_dst_axis_agent.monitor.run();
86-
8781
this.scoreboard_tx.run();
8882
this.scoreboard_rx.run();
8983
join_none
@@ -93,9 +87,8 @@ package environment_pkg;
9387
// Stop subroutine
9488
//============================================================================
9589
task stop();
96-
this.adc_src_axis_agent.master_sequencer.stop();
97-
this.adc_src_axis_agent.agent.stop_master();
98-
this.dac_dst_axis_agent.agent.stop_slave();
90+
this.adc_src_axis_agent.stop_master();
91+
this.dac_dst_axis_agent.stop_slave();
9992
endtask
10093

10194
endclass

testbenches/ip/data_offload/tests/test_program.sv

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -77,11 +77,11 @@ program test_program;
7777
`TH.`ADC_SRC_AXIS.inst.IF,
7878
`TH.`DAC_DST_AXIS.inst.IF);
7979

80-
dmac_tx = new("DMAC TX 0", base_env.mng.sequencer, `TX_DMA_BA);
81-
dmac_rx = new("DMAC RX 0", base_env.mng.sequencer, `RX_DMA_BA);
80+
dmac_tx = new("DMAC TX 0", base_env.mng.master_sequencer, `TX_DMA_BA);
81+
dmac_rx = new("DMAC RX 0", base_env.mng.master_sequencer, `RX_DMA_BA);
8282

83-
do_tx = new("Data Offload TX 0", base_env.mng.sequencer, `TX_DOFF_BA);
84-
do_rx = new("Data Offload RX 0", base_env.mng.sequencer, `RX_DOFF_BA);
83+
do_tx = new("Data Offload TX 0", base_env.mng.master_sequencer, `TX_DOFF_BA);
84+
do_rx = new("Data Offload RX 0", base_env.mng.master_sequencer, `RX_DOFF_BA);
8585

8686
//=========================================================================
8787
// Setup generator/monitor stubs
@@ -109,21 +109,21 @@ program test_program;
109109
do_set_transfer_length(`ADC_TRANSFER_LENGTH/64);
110110

111111
// Start the ADC/DAC stubs
112-
`INFO(("Call the run() ..."), ADI_VERBOSITY_LOW);
112+
`INFO(("Call the run()"), ADI_VERBOSITY_LOW);
113113
scb_env.run();
114114

115115
scb_env.adc_src_axis_agent.master_sequencer.start();
116116

117117
// Generate DMA transfers
118-
`INFO(("Start RX DMA ..."), ADI_VERBOSITY_LOW);
118+
`INFO(("Start RX DMA"), ADI_VERBOSITY_LOW);
119119
rx_dma_transfer(dmac_rx, 32'h80000000, `ADC_TRANSFER_LENGTH);
120120

121121
scb_env.scoreboard_rx.wait_until_complete();
122122

123-
`INFO(("Initialize the memory ..."), ADI_VERBOSITY_LOW);
123+
`INFO(("Initialize the memory"), ADI_VERBOSITY_LOW);
124124
init_mem_64(32'h80000000, 1024);
125125

126-
`INFO(("Start TX DMA ..."), ADI_VERBOSITY_LOW);
126+
`INFO(("Start TX DMA"), ADI_VERBOSITY_LOW);
127127
tx_dma_transfer(dmac_tx, 32'h80000000, 1024);
128128

129129
#1us;

testbenches/ip/dma_flock/tests/test_program.sv

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -94,10 +94,10 @@ program test_program;
9494

9595
dma_flock_env.run();
9696

97-
m_dmac_api = new("TX_DMA_BA", base_env.mng.sequencer, `TX_DMA_BA);
97+
m_dmac_api = new("TX_DMA_BA", base_env.mng.master_sequencer, `TX_DMA_BA);
9898
m_dmac_api.probe();
9999

100-
s_dmac_api = new("RX_DMA_BA", base_env.mng.sequencer, `RX_DMA_BA);
100+
s_dmac_api = new("RX_DMA_BA", base_env.mng.master_sequencer, `RX_DMA_BA);
101101
s_dmac_api.probe();
102102

103103
sanity_test;

testbenches/ip/dma_flock/tests/test_program_frame_delay.sv

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -99,10 +99,10 @@ program test_program_frame_delay;
9999

100100
dma_flock_env.run();
101101

102-
m_dmac_api = new("TX_DMA_BA", base_env.mng.sequencer, `TX_DMA_BA);
102+
m_dmac_api = new("TX_DMA_BA", base_env.mng.master_sequencer, `TX_DMA_BA);
103103
m_dmac_api.probe();
104104

105-
s_dmac_api = new("RX_DMA_BA", base_env.mng.sequencer, `RX_DMA_BA);
105+
s_dmac_api = new("RX_DMA_BA", base_env.mng.master_sequencer, `RX_DMA_BA);
106106
s_dmac_api.probe();
107107

108108

testbenches/ip/dma_loopback/tests/test_program.sv

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -72,10 +72,10 @@ program test_program;
7272
start_clocks();
7373
base_env.sys_reset();
7474

75-
m_dmac_api = new("TX_DMA", base_env.mng.sequencer, `TX_DMA_BA);
75+
m_dmac_api = new("TX_DMA", base_env.mng.master_sequencer, `TX_DMA_BA);
7676
m_dmac_api.probe();
7777

78-
s_dmac_api = new("RX_DMA", base_env.mng.sequencer, `RX_DMA_BA);
78+
s_dmac_api = new("RX_DMA", base_env.mng.master_sequencer, `RX_DMA_BA);
7979
s_dmac_api.probe();
8080

8181
// -------------------------------------------------------

testbenches/ip/dma_sg/tests/test_program_1d.sv

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -71,10 +71,10 @@ program test_program_1d;
7171
`TH.`DEVICE_CLK.inst.IF.start_clock();
7272
base_env.sys_reset();
7373

74-
m_dmac_api = new("TX_DMA", base_env.mng.sequencer, `TX_DMA_BA);
74+
m_dmac_api = new("TX_DMA", base_env.mng.master_sequencer, `TX_DMA_BA);
7575
m_dmac_api.probe();
7676

77-
s_dmac_api = new("RX_DMA", base_env.mng.sequencer, `RX_DMA_BA);
77+
s_dmac_api = new("RX_DMA", base_env.mng.master_sequencer, `RX_DMA_BA);
7878
s_dmac_api.probe();
7979

8080
#1us;

testbenches/ip/dma_sg/tests/test_program_2d.sv

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -71,10 +71,10 @@ program test_program_2d;
7171
`TH.`DEVICE_CLK.inst.IF.start_clock();
7272
base_env.sys_reset();
7373

74-
m_dmac_api = new("TX_DMA", base_env.mng.sequencer, `TX_DMA_BA);
74+
m_dmac_api = new("TX_DMA", base_env.mng.master_sequencer, `TX_DMA_BA);
7575
m_dmac_api.probe();
7676

77-
s_dmac_api = new("RX_DMA", base_env.mng.sequencer, `RX_DMA_BA);
77+
s_dmac_api = new("RX_DMA", base_env.mng.master_sequencer, `RX_DMA_BA);
7878
s_dmac_api.probe();
7979

8080
#1us;

0 commit comments

Comments
 (0)