roboforum.ru

Технический форум по робототехнике.
Текущее время: 27 ноя 2024, 02:38

Часовой пояс: UTC + 4 часа




Начать новую тему Ответить на тему  [ Сообщений: 7 ] 
Автор Сообщение
 Заголовок сообщения: Вопрос по применению ПЛИС
СообщениеДобавлено: 09 сен 2007, 12:33 
Не в сети
Аватара пользователя

Зарегистрирован: 31 янв 2006, 14:37
Сообщения: 90
Откуда: Москва
Добрый день!
с ПЛИСами не работал, поэтому спрашиваю реально ли сделать на них следующее:

массив из N 16битных чисел и константа D0

for( ; ; ) {
1. каждое число в массиве сдвигается на соседнее место M[i]->M[i+1],   M[N] при этом теряется, M[0] освобождается
2. записать извне (spi или паралл.)  новое число на место M[0]
3. взять среднее  от k чисел M[0],....,M[k]  (M1) и  M[N-k],.....,M[N]   (M2)
4. вычислить (M2-M1)/(N-k)=D
5. сравнить  D и D0
}

какова максимально возможная скорость реализации этого алгоритма ?
на сколько большими могут быть заданы числа N и k (хотелось бы N>1.000.000 k>1000)?

спасибо!


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: 09 сен 2007, 12:47 
Не в сети
отсылающий читать курс
Аватара пользователя

Зарегистрирован: 06 ноя 2005, 04:18
Сообщения: 14195
Откуда: Москва
Конечно возможно. Про скорость не занаю.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: 09 сен 2007, 16:36 
Не в сети
Мастер Самоделкин
Аватара пользователя

Зарегистрирован: 11 окт 2004, 19:20
Сообщения: 3678
Откуда: Россия, СПб
прог. языки: C/C++, Python, asm
ФИО: Курмис Александр Андреевич
С шагами 3 и 4 будет много гемора, зато все остальное возможно на порядок быстрее чем в контроллере.
Скачайте MaxPlus2 с сайта Altera.com и попробуйте - он скажет сколько времени это будет выполняться.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: 09 сен 2007, 17:58 
Не в сети
Аватара пользователя

Зарегистрирован: 31 янв 2006, 14:37
Сообщения: 90
Откуда: Москва
спасибо, попробую, не очень тривиальная программа на первый взгляд (


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: 13 сен 2007, 22:49 
Не в сети
Аватара пользователя

Зарегистрирован: 06 янв 2006, 03:02
Сообщения: 496
Откуда: Москва
прог. языки: VHDL, C++, Matlab
ФИО: Павел
для этого лучше взять АРМ или ДСП.
реализовывать на ПЛИС не выгодно, если количество значений, от которых нужно брать среднее более-менее фиксировано и можно обойтись без деления, то максимально достижимая частота вычислителя на топовой плисе - 550 МГц. Все операции будут выполнены за один такт. Иначе придётся делить, а это порядка тридцати тактов.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: 14 сен 2007, 09:07 
Не в сети
Аватара пользователя

Зарегистрирован: 31 янв 2006, 14:37
Сообщения: 90
Откуда: Москва
а что будет для арм ?

в принципе нужно штучное устройство, поэтому экономическая выгодя не столь важна.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: 14 сен 2007, 15:24 
Не в сети
Аватара пользователя

Зарегистрирован: 06 янв 2006, 03:02
Сообщения: 496
Откуда: Москва
прог. языки: VHDL, C++, Matlab
ФИО: Павел
топовая плис стоит от 1000$ ))))
Можно взять быстрый АРМ, мегагерц на 600, он считать будет медленнее плисы, но и стоить будет на 2-3 порядка меньше. Или ДСП. ДСП есть довольно быстрые. Посмотри аналог девайс или тексас инструментс.


Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 7 ] 

Часовой пояс: UTC + 4 часа


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 10


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
Русская поддержка phpBB
phpBB SEO