AXI4 задерживает транзакции
Я просто ищу совет. В настоящее время у меня есть собственный IP, интегрированный в VHDL, который имеет ведомый вход AXI4 и ведущий выход AXI4, и в настоящее время сигналы напрямую связаны друг с другом.
Я хотел бы добавить настраиваемую задержку для сигналов AXI, чтобы они могли задерживаться на определенное время через IP, а не соединяться друг с другом.
Мой вопрос я могу отложить транзакции чтения и записи через IP, просто используя AxVALID
а также AxREADY
(а может и RVALID
/RREADY
а также WVALID
/WREADY
) сигналы?
Если, например, мне нужна задержка в 20 тактов, я могу дождаться подтверждения внешнего мастера VALID
и подождите 20 часов, прежде чем IP-ведомый подтвердит READY
? Это правильная логика?
Заранее спасибо за любой совет.
1 ответ
Да, это можно сделать. В зависимости от вашей инфраструктуры это может вызвать перегрузку шины. В качестве альтернативы, вы также должны вставить FIFO для буферизации этих отложенных транзакций шины.