Подскажите как организовать обмен данными между CPU0 и CPU1 с использованием DMA через DDR.
Освоил обмен через OCM как в xapp1078, но он, видимо, годен для обмена небольшими блоками данных. Хотелось бы обмениваться большими блокми и через DMA. На одном отдельном процессоре, например, CPU1 всё работает, и данные пересылаются и прерывания приходят. Но если пересылку делать из области памяти одного процессора в другой, то ни прерывания ни данных на процессоре-приёмнике не вижу, хотя первый отправляет и даже ловит прерывание об окончании отправки.
Память размечена: CPU0 base 0x00100000 size 0x0x10000000 CPU1 base 0x30000000 size 0x0x10000000
Версия ПО Vivado 2015.1
Файл standalone/boot.S - для CPU1 модифицирован как в xapp1078.
|