Цитата(RobFPGA @ Dec 1 2015, 16:45)

Дело не в том что для READ требуются completion а в глубине очереди на запросы чтения.
Если глубина маленькая то возникают паузы на ожидания окончания предыдущих запросов перед посылкой следующего запроса.
Надо иметь еще ввиду что AXI интерконнект может "блокировать" запросы на чтение/запись если они идут в одно периферийное устройство - тое-есть исполнятся они будут в порядке прихода а не полностью параллельно.
Спасибо, счас это всё обдумаю, пока хочу ещё спросить: для рисунка 1 (сообщение #63) , где идёт передача PC -> FPGA данные передаются ещё и в обратном направленни FPGA -> PC (на диаграмму их не добавил). Т.е. получается на S_AXIS_RQ_* в данном случае поступает больше транзакций (от MM2S и от S2MM, на чтение и на запись) чем когда однонаправленная передача данных от генератора трафика (рисунок 2, сообщение #63). Стоит ли искать проблему в этом?
Цитата(RobFPGA @ Dec 1 2015, 16:45)

Надо иметь еще ввиду что AXI интерконнект может "блокировать" запросы на чтение/запись если они идут в одно периферийное устройство - тое-есть исполнятся они будут в порядке прихода а не полностью параллельно.
Об этом не подумал, цепочка DMA -> Interconnect -> AXI_PCIe на рисунке, т.е. если включаю loopback (см рисунок), то ещё и DMA M_AXI_MM2S и M_AXI_S2MM (+ M_AXI_SG) будут делить время доступа к PCIe??! Похоже, надо сделать заглушку для M_AXIS_MM2S, чтобы отдельно проверить скорость для DMA M_AXI_MM2S?