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

 
 
> codesource флаги для cortexm4
sergey sva
сообщение Jan 13 2014, 18:43
Сообщение #1


Гуру
******

Группа: Свой
Сообщений: 2 546
Регистрация: 23-05-07
Из: Самарская область Сызрань
Пользователь №: 27 923



Указываю ключ mcpu-cortexm4, как правильнее настроить fpu hardware или software ?
У cortexm4 встроенный fpu если задать soft то аппаратный fpu не будет использоваться?
В коде используется библиотека math будут функции оптимизироваться под fpu?
Не совсем понимаю объясните плз.
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
Aaron
сообщение Jan 14 2014, 05:50
Сообщение #2


Местный
***

Группа: Свой
Сообщений: 243
Регистрация: 5-10-06
Из: Зеленоград
Пользователь №: 21 007



Взято из readme к тулчейну:
Код
|----------|--------------------------------------------|----------|
|Cortex-M4 | -mthumb -mcpu=cortex-m4                    | armv7e-m |
|(No FP)   |--------------------------------------------|          |
|          | -mthumb -march=armv7e-m                    |          |
|----------|--------------------------------------------|----------|
|Cortex-M4 | -mthumb -mcpu=cortex-m4 -mfloat-abi=softfp | armv7e-m |
|(Soft FP) | -mfpu=fpv4-sp-d16                          | /softfp  |
|          |--------------------------------------------|          |
|          | -mthumb -march=armv7e-m -mfloat-abi=softfp |          |
|          | -mfpu=fpv4-sp-d16                          |          |
|----------|--------------------------------------------|----------|
|Cortex-M4 | -mthumb -mcpu=cortex-m4 -mfloat-abi=hard   | armv7e-m |
|(Hard FP) | -mfpu=fpv4-sp-d16                          | /fpu     |
|          |--------------------------------------------|          |
|          | -mthumb -march=armv7e-m -mfloat-abi=hard   |          |
|          | -mfpu=fpv4-sp-d16                          |          |

По поводу использования прекомпилированных библиотек: в зависимости от ключей из таблицы линкер должен сам подхватывать соответствующую стандартную библиотеку.
Аналогично, DSP библиотеки есть прекомпилированные - и надо просто подключать нужную.
arm_cortexM4l_math.lib - No FP
arm_cortexM4lf_math.lib - Soft FP
Если нужен Hard FP, то библиотеку надо компилировать самому из исходников (по крайней мере у меня нету под hard FP либы готовой).

По поводу использования soft/hard - вы не совсем верно понимаете. Под этими словами подразумевается способ обращения к регистрам FPU. Могу немного ошибаться в теории, но примерно это означает следующее: soft FP будет использовать регистры общего назначения для доступа к FPU, а hard FP - специально выделенные для этого регистры. В обсновном в интернете и в примерах почему-то используют soft FP, сравнения производительности я не делал между этими режимами, так что подробнее прокомментировать не смогу.

Сообщение отредактировал Aaron - Jan 14 2014, 06:04
Go to the top of the page
 
+Quote Post



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

 


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


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