-
- Нет такой инструкции. Однако я полагаю, что инструкции не
обращающиеся к шине памяти эквивалентны останову ядра с точки
зрения контроллера DMA. Проблема в данном случае, я так думаю, в
самой диаграмме транзакций. Видимо они 4-цикловые и нет никакой
конвейеризации. При 4 кратном понижении частоты реквестов DMA
против частоты ядра еще возникают гонки и вываливается overrun. А
ниже я смотрел только когда в 4,5 раза ниже ядра и тогда overrun
пропадает совсем. Думаю, что и 4,1 my504(16 знак., 13.11.2021 17:08)
- А камень-то какой? У тех же старших STM на шине кросс-коммутатор
висит, обращения к разным блокам ОЗУ друг другу не мешают вообще,
может и тут чего подобное можно замутить? - LightElf(13.11.2021 17:24)
- dsPIC33CH512MP208. Двухядерный. Все происходит в Slave-ядре, которое ничем кроме описываемого процесса не занимается. Асинхронный к этому процессу обмен с внешним миром и прочие ништяки - это Master-ядро. Ну и кросс-коммутатор не гарантирует одноцикловость транзакций в ОЗУ. Я еще раз повторю, думаю, что дело не в занятии шины. Опять же говорить сейчас про STM32 - это грязно насмехаться над собеседником. )))) Чур меня от STM. Года на два минимум. А там посмотрим. ;-) - my504(13.11.2021 17:48)
- А камень-то какой? У тех же старших STM на шине кросс-коммутатор
висит, обращения к разным блокам ОЗУ друг другу не мешают вообще,
может и тут чего подобное можно замутить? - LightElf(13.11.2021 17:24)
- Нет такой инструкции. Однако я полагаю, что инструкции не
обращающиеся к шине памяти эквивалентны останову ядра с точки
зрения контроллера DMA. Проблема в данном случае, я так думаю, в
самой диаграмме транзакций. Видимо они 4-цикловые и нет никакой
конвейеризации. При 4 кратном понижении частоты реквестов DMA
против частоты ядра еще возникают гонки и вываливается overrun. А
ниже я смотрел только когда в 4,5 раза ниже ядра и тогда overrun
пропадает совсем. Думаю, что и 4,1 my504(16 знак., 13.11.2021 17:08)