Skip to content

Замечание относительно поведения AXI FULL

Alex Petrov edited this page Jul 22, 2017 · 2 revisions

Судя по всему AXI-FULL очень любит посылки размером с целый регистр (4 байта). 1 и 2 байта тоже посылаются без проблем, а вот при посылке 3 байт, ну или 7 и тд. происходит нечто странное. Первые два байта посылаются на первом клоке (в своих байтах входного порта), а третий досылается на втором клоке (в третьем байте входного порта).

Для подсчета количества принятых байт можно заставить Виваду сгенерировать тривиальный сумматор и использовать его вывод для увеличения значения счетчика:

num_bytes_received <= num_bytes_received + s_axi_wstrb[0] + s_axi_wstrb[1] + s_axi_wstrb[2] + s_axi_wstrb[3];