Цитата(alexadmin @ Nov 27 2017, 14:34)
Вроде не должно зависать. Waitrequest устанавливается только при обращении к dma-регистру устройства? Если со стороны процессора все транзакции закончены, то не очень понятно с чего бы ему реагировать на waitrequest...
Как только процессор записал последние данные для настройки DMA, DMA тут же пытается считать данные из моего компонента, а так как компонент требует дальнейшей настройки, то связка master-dma и slave-мой_компонент зависает. Почему зависает Nios не ясно может из-за того, что следующая команда в программе идёт именно продолжение настройки моего компонента, т.е. обращение к занятому компоненту.
Как я понял разницу между Flow control и waitrequest:
Flow control - не производит чтение или запись если устройство не готово
waitrequest - производится, чтение или запись даже если устройство не готово и зависает в режиме ожидания пока устройство не будет готово. При этом занятый Slave нельзя нельзя ни записать ни прочитать другому мастеру, т.к. нельзя прервать транзакцию.