Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Приблизительное число тактов на мат. операцию
Форум разработчиков электроники ELECTRONIX.ru > Микроконтроллеры (MCs) > ARM
chernenko
Раньше работал с ARM (AT91SAM9261), но сейчас нет под рукою и не могу посмотреть сколько приблизительно тактов затрачивается на некоторые математические операции.
В симуляторе прогнал и получил следующие значения (цифры приблизительные):

1. Арктангенс частного
1.1. double atan2(double x, double y); - 2000 тактов
1.2. float atan2(float x, float y); - 580 тактов

2. Умножение
2.1. умножение двух double - 75
2.2. умножение двух float - 33
2.3. умножение двух long - 3

3. Деление
3.1. деление двух double - 576
3.2. деление двух float - 95
3.3. деление двух long - 12

4. Суммирование
4.1. суммирование двух double - 56
4.2. суммирование двух float - 33
4.3. суммирование двух long - 3

Никто не может подсказать на сколько это близко к реальности например для ядра ARM922T и ARM926EJ-S? У меня сейчас нет отладки, поэтому не могу посмотреть.
Какое время на обработку прерывания у этих ядер (FAQ смотрел, но меня больше интересует реальный опыт)? Помню у меня раньше по оценке было около 25-30 тактов.
aaarrr
При выполнении программы из кэш реальная скорость должна быть близка к показаниям симулятора.

Конкретные цифры будут зависить от используемого компилятора.
chernenko
Цитата(aaarrr @ Mar 28 2008, 13:54) *
Конкретные цифры будут зависить от используемого компилятора.


Использовал IAR for ARM 4.41
От компилятора конечно зависят, но отклонение в зависимости от компилятора наверное не очень то большое?
aaarrr
Может быть даже в разы - зависит от качества библиотек.
chernenko
Цитата(aaarrr @ Mar 28 2008, 15:26) *
Может быть даже в разы - зависит от качества библиотек.


А в случае ИАРа и его стандартных библиотек?
Кстате, насколько они эффективны по сравнению с другими библиотеками?
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.