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

 
 
> Скорость выполнения кода из флеша и ОЗУ у Cortex-M3
pirx
сообщение Aug 12 2013, 09:50
Сообщение #1





Группа: Новичок
Сообщений: 1
Регистрация: 12-08-13
Пользователь №: 77 884



С одной стороны у Cortex-M3 при выполнении кода из ОЗУ для выборки команд и данных будет использоваться лишь одна шина.
Но с другой стороны на больших тактовых частотах приходится включать дополнительную задержку перед чтением из флеша (для STM32F103 два периода тактовой частоты при 48 MHz < SYSCLK <= 72 MHz, если я правильно понял даташит).
Будет проигрыш или выигрыш в скорости при размещении кода в ОЗУ?
Проверить на практике мне затруднительно – нужно разбираться со скриптами линкера и прочим.
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
ukpyr
сообщение Aug 12 2013, 10:23
Сообщение #2


Профессионал
*****

Группа: Участник
Сообщений: 1 264
Регистрация: 17-06-08
Из: бандустан
Пользователь №: 38 347



Цитата
Но с другой стороны на больших тактовых частотах приходится включать дополнительную задержку перед чтением из флеша
там есть prefetch buffer, при включении которого задержка флеша нивелируется:
Цитата
"Prefetch buffer (2 x 64-bit blocks): it is enabled after reset; a whole block can be
replaced with a single read from the Flash memory as the size of the block matches the
bandwidth of the Flash memory. Thanks to the prefetch buffer, faster CPU execution is
possible as the CPU fetches one word at a time with the next word readily available in
the prefetch buffer"


Сообщение отредактировал ukpyr - Aug 12 2013, 10:27
Go to the top of the page
 
+Quote Post



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

 


RSS Текстовая версия Сейчас: 23rd July 2025 - 19:47
Рейтинг@Mail.ru


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