Test Engine FPGA IP User Guide: Agilex™ 5 and Agilex™ 7 FPGAs

ID 817758
Date 7/08/2024
Public
Document Table of Contents

5.3.1.1.4. tut4_parallel_rw

Usage

def traffic_patterns.MemAxi4DriverPrograms.tut4_parallel_rw (self)

Description

Issue writes and reads in parallel.

This program issues writes and reads in parallel while ensuring that:
  • The reads error check the writes by checking if the read data matches the write data. Simultaneously writing and reading from the same address is a Read-After-Write (RAW) hazard since you're not waiting for the write response. To avoid RAW hazards, this program is decomposed into stages wherein each stage accesses a different address region. Within each stage one address region is being written to, while the previous address region is being read from in parallel.

  • AXI sub-channel throughput is maximized by avoiding caution for non-existent hazards. This program doesn't write to an address that was previously read from, hence there's no risk of Write-After-Read (WAR) hazards, and hence each stage doesn't wait for read responses before proceeding.