реклама на сайте
подробности

 
 
> Ускорение ARM (AT91SAM9260)
andrewlekar
сообщение Feb 12 2010, 05:45
Сообщение #1


Знающий
****

Группа: Участник
Сообщений: 837
Регистрация: 8-02-07
Пользователь №: 25 163



По описанию на форуме включил на процессоре D-Cache и ощутил нехилый прирост производительности. Теперь появился ряд вопросов:
1. Видел несколько раз упоминания об ускорении Bus Matrix. Однако в даташите никаких намёков на управляющие регистры для этого дела не увидел. Можете поделиться примерами и теоретическим обоснованием ускорения?
2. Для области DMA сейчас использую некешируемый и небуферизированный сегмент памяти. Заметил упоминание aaarrr о том, что буферизацию можно включить. Как работать с DMA у которой есть буферизация, так чтобы ничего не развалилось?
3. Я принимаю по DMA из ISI большой объём данных - картинку. Пока что для этих целей тупо выделил под DMA область памяти в 1 мегабайт. После получения картинки сливаю в кэшируемую память и работаю с ней. Такие размеры буфера DMA это нормально или нужно реализовывать приём по DMA кусками?
4. Есть ли надёжный способ проверить что MMU и D-Cache настроен правильно и память распределена корректно? Просто у меня всё с первого раза завелось, хотя было внесено довольно много изменений в настройки линкера и в обработку переменных. Хотелось бы имуть уверенность, что всё через некоторое время не развалится smile.gif
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
andrewlekar
сообщение Feb 12 2010, 07:34
Сообщение #2


Знающий
****

Группа: Участник
Сообщений: 837
Регистрация: 8-02-07
Пользователь №: 25 163



Насколько я понял из доков, drain write buffer выполняется при любом чтении из этой памяти. Следовательно, если DMA используется и для чтения и для записи, можно включить на памяти для DMA буферизацию, а перед записью туда произвести хотя бы одно чтение. Всё верно?

По поводу invalidate: предлагается перед началом обработки полученной картинки его выполнить? Как произвести invalidate для кэша? Установить атрибут памяти как некешируемой а потом вернуть обратно? Или есть другой способ?

Да и ещё, FCSE для этого проца как включать и стоит ли? У меня там ртос и соответственно постоянно переключается контекст.
Go to the top of the page
 
+Quote Post



Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 27th August 2025 - 08:16
Рейтинг@Mail.ru


Страница сгенерированна за 0.01538 секунд с 7
ELECTRONIX ©2004-2016