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

 
 
> Идея по созданию FP сопроцессора для omap-l137(8)
KostyantynT
сообщение Dec 19 2011, 08:56
Сообщение #1


Местный
***

Группа: Свой
Сообщений: 290
Регистрация: 27-06-05
Из: Киев
Пользователь №: 6 345



Есть работающее устройство на базе omapl-137. ARM9 и DSP разогнаны до 400 мГц. На DSP крутится серьезный алгоритм обработки данных. На арме тоже приходится помимо фронтэнда на базе Qt, считать достаточно сложные алгоритмы с float арифметикой. Поэтому у арма серьезная загрузка. Работает это хозяйство под Linux.

Возникла идея использовать DSP как FP сопроцессор для арма. Например, по определенным адресам в Shared memory кладем два float аргумента и команду для вычисления. Вызываем прерывание DSP, он обрабатывает данные и кладет результат обратно. Все это время арм опрашивает флаг готовности данных, по получению флага - забирает результат. Что имеем:

1. DSP занят своим основным алгоритмом, периодически отвлекаясь на запросы арма, "посчитай мол".
2. Ускорение float в десятки раз для арма.
3. Не требуется переписывание всего отлаженного алгоритма или его частей под DSP.
4. Простой алгоритм обмена, требуется только сделать ремапинг shared memory/
5. В библиотеку можно включить код проверки загрузки DSP приложеним, если оно не загружено, то использовать стандартные float вычисления.

От техасовских монструозных библиотек обмена между DSP и ARM отказался и использую свой самописный UIO драйвер, чему несказанно рад.

Сразу возникает вопрос.

1. Как указать компилятору GCC, что мы используем свой FP сопроцессор.
2. Какие операции помимо умножения деления выполняет стандартный FP сопроцессор ARM?

Просьба покрититиковать или посоветовать по данному подходу.


--------------------
Если в сердце дверь закрыта - надо в печень постучать..
Go to the top of the page
 
+Quote Post



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

 


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


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