AXI4-Stream Interface - 4.1 English

DMA/Bridge Subsystem for PCI Express Product Guide (PG195)

Document ID
PG195
Release Date
2023-11-24
Version
4.1 English
For AXI4-Stream, the example design is a loopback design. Channel H2C_0 is looped back to C2H_0 (and so on) for all other channels. First, the test case starts the C2H engine. The C2H engine waits for data that is transmitted by the H2C engine. Then, the test case starts the H2C engine. The H2C engine reads data from host and sends to the Card, which is looped back to the C2H engine. The C2H engine then takes the data, and writes back to host memory. The following are the simulation steps:
  1. The test case sets up one descriptor for the H2C engine.
  2. The H2C descriptor is created in the Host memory. The H2C descriptor gives the data length 128 bytes, Source address (host), and Destination address (Card).
  3. The test case writes data (incremental 128 bytes of data) in the Host source address space.
  4. The test case also sets up one descriptor for the C2H engine in Host memory.
  5. The C2H descriptor gives data length 128 bytes, source address (Card), and destination address (host).
  6. Write C2H descriptor starting address to register (0x5080 and 0x5084).
  7. Write to the C2H control register to start the C2H transfer first.
  8. The C2H engine starts and waits for data to come from the H2C ports.
  9. Write H2C descriptor starting address to register (0x4080 and 0x4084).
  10. Write to the H2C control register to start H2C transfer.
  11. The H2C engine takes data from the host source address to the Card destination address.
  12. The data is looped back to the C2H engine.
  13. The C2H engine read data from the Card and writes it back to the Host memory destination address.
  14. The test case checks for the H2C and C2H descriptor completed count (value of 1).
  15. The test case then compares the data for correctness.
  16. The test case then disables transfer by deactivating the Run bit (bit 0) in the Control registers 0x0004 and 0x1004 for the H2C and C2H engines.