Здравствуйте.
Цитата
собственно, как правильно реализовать поддержку AXI-stream? Толковых мануалов и примеров найти пока не удалось.
Вот есть
документ от Xilinx. Стр. 47 например и далее расписано какие сигналы и как реализовывать.
Цитата
разве использование специфической шины не ведёт к дополнительным накладным расходам ресурсов ПЛИС?
Не все сигналы являются обязательными, в самом простом случае есть данные, клок, резет и TVALID (см. табличку в документе).
Цитата
что делать, если надо реализовать какую-то bitwise-magic - вытащить статусный бит, инвертировать, "обрезать" разрядность и т.д.?
В составе шины есть несколькоразрядная TUSER, которую можно использовать для любых дополнительных сигналов. Разрядность между модулями в цепочке согласуется параметрами.
Для меня наглядным было поглядеть как реализована шина в FFT корке от Xilinx, там видно как что работает и почему это удобно.
Цитата
Аналогичные вопросы и по AXI (не stream). С готовыми ядрами всё красиво - собирается, настраивается, даже как-то "подтягиваются" драйвера в devicetree
(хотя уже не всегда и не для всего). А вот как что-то своё, написанное на том же Verilog и нормально работающее в ISE, сделать совместимым с нетривиальной шиной - проблема...
Самое простое - AXI Lite, все очень просто реализуется, расписано там же в документе