Нужно мне гнать поток данных из своей логики через AXI4-Stream. Написал я интерфейсный блок AXI4-Stream, добавил к своей логике, сделал ядро. Подключил к AXI_DMA. Взял драйвер отсюда
https://github.com/Xilinx/embeddedsw/blob/m...e_simple_poll.cПроходит инициализация DMA и виснет проц на строке
XAxiDma_IntrDisable(&AxiDma, XAXIDMA_IRQ_ALL_MASK, XAXIDMA_DEVICE_TO_DMA);
то есть ровно в том месте где идет попытка записи в регистры DMA.
Ну думаю - накосячил где-то со своим IP. Нашел пошаговую инструкцию подключения и работы с AXI_DMA
http://www.fpgadeveloper.com/2014/03/using...dma-engine.htmlТам и vhdl код ядра взял, там и драйвер взял. Все по инструкции сделал. Снова виснет в ТОМ ЖЕ МЕСТЕ. Если закоментировать запрет прерываний, то виснет на строке
XAxiDma_SimpleTransfer(&AxiDma,(UINTPTR) RxBufferPtr, MAX_PKT_LEN, XAXIDMA_DEVICE_TO_DMA);
то есть опять в том месте где идет запись в DMA.
Понимаю что проблема элементарная и кроется в мелочи, но осилить не могу уже несколько дней. Прошу помощи.
P.S. Использую ISE 14.5, XPS, SDK.
Сообщение отредактировал Nivovod - Mar 2 2018, 12:59