Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: sin/cos в eclipse с использованием HW float
Форум разработчиков электроники ELECTRONIX.ru > Программируемая логика ПЛИС (FPGA,CPLD, PLD) > Системы на ПЛИС - System on a Programmable Chip (SoPC)
alexPec
Всем доброго дня.
Поставил в SOPC hardware floating point, который в составе nios, в Q9.1 не увидел в objdump при вычислении sin ни одной инструкции custom. При обычных умножить/плюс/минус вызываются инструкции custom. И вычисление sin/cos занимает тучу времени. Его как то можно при sin/cos заставить использовать ядро HW float или самому придется городить через ряд Тейлора?
vadimuzzz
тут пишут, что линкер подключает неоптимизированную версию libm (см. сообщение AlejandroLG). Но там же высказывается мнение, что лучше делать для синуса свои инструкции на основе таблиц.
alexPec
Цитата(vadimuzzz @ May 3 2015, 05:24) *
тут пишут, что линкер подключает неоптимизированную версию libm (см. сообщение AlejandroLG). Но там же высказывается мнение, что лучше делать для синуса свои инструкции на основе таблиц.



Значит путь правильный, пока так и решил проблему - сделал таблицу, видимо лучше не сделать.
serjj
Цитата
При обычных умножить/плюс/минус вызываются инструкции custom. И вычисление sin/cos занимает тучу времени

При вычислении sin/cos с плавающей точкой возможно деление используется? Насколько я помню деление в модуле кастомных инструкций подключается отдельно. Попробуйте его подключить и проверить, что оно вызывается, по аналогии с вашим тестом для умножения/сложения. Я в 14.1 qsys ставил новый альтеровский сопроцессор для плавающей точки, там деление вроде по-умолчанию включено. Но существенного ускорения так и не смог получить - у меня была векторная операция с поэлементным делением, ниос его не успевал сделать, в итоге пока не стал разбираться и заменил на целочисленные вычисления.
gridinp
Ключевой момент - есть ли в строке gcc опция -mcustom-fpu-cfg=..., если нет то надо разбираться, она попадает в makefile при "Generate BSP"
https://gcc.gnu.org/onlinedocs/gcc/Nios-II-Options.html
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.