Forum Discussion

Seadog's avatar
Seadog
Icon for Occasional Contributor rankOccasional Contributor
3 years ago

Read pipelining in AXI-4 interfaces

This question is in regards to AXI-4 slave interfaces, in particular the AXI-4 interface on the HBM2 memory controller (S10 MX devices).

AXI-4 specifically supports out-of-order responses to read commands, provided that the ID values for the commands are not the same. This implies some level of read command pipelining (acceptance of multiple read commands before returning the associated read data).

Is there a limit on the number of pipelined read commands the HBM2 controller will accept (with or without the same ID value)? Is there a similar limitation/capability for write commands?

Thanks.

3 Replies

  • sstrell's avatar
    sstrell
    Icon for Super Contributor rankSuper Contributor

    I didn't think out-of-order responses are even supported with the Platform Designer interconnect. Does that work for you?

  • Seadog's avatar
    Seadog
    Icon for Occasional Contributor rankOccasional Contributor

    The document you referenced seems to apply to M20K and MLAB memory applications, and doesn't mention HBM2; the AXI-4 interface for HBM2 includes the ID field, which exists specifically to support out-of-order transactions. From the AXI-4 standard:

    The AXI4 protocol supports an extended ordering model based on the use of the AXI ID transaction identifier. See
    Chapter A6 AXI4 Ordering Model.

    But that is not really what I was asking about, which was support of pipelined reads (and writes); I do hope that pipelined reads are supported, because otherwise burst read transactions could be pretty slow (the latency between read address and returned data would be dead time).

    After thinking about this for a while I realize that knowledge of the read pipeline depth is unnecessary, as the slave can just stop responding to read address transactions once it hits the pipeline depth limit.