from:ZedBoard -- (6) Используйте Vivado HLS для создания ядра IP интерфейса AXI.
- Новое строительство
- Добавьте ap_int.h в исходный файл
#include "ap_int.h"
Структура, определенная в исходном файле, выглядит следующим образом:
template <int D>
struct axis
{
ap_int <D> data;
ap_uint <D/8> keep;
ap_uint <1> last;
axis<D>& operator=(const axis<D>& ax)
{
data = ax.data;
keep = ax.keep;
last = ax.last;
return *this;
}
};
Добавьте следующие два параметра в список параметров функции:axis<32> *o_MM2S_AXIS, axis<32> i_S2MM_AXIS
Эти два параметра представляют данные, выводимые за пределы IP-ядра, и данные, вводимые в IP-ядро другими модулями.
Отправка данных может быть достигнута путем записи o_MM2S_AXIS->data, входные данные могут быть получены путем доступа к i_S2MM_AXIS.data. Если нет особой необходимости, сигналы keep и last менять не нужно, а вход можно напрямую назначить на выход: