Цитата(bedrive @ Jan 5 2008, 15:45)

Добрый день!
Есть интересная задача, а точнее целый круг задач, основой для которых является
распознование объектов на видеоизображении в реальном времени. Хочется подступиться к этим
задачам с помощью ПЛИС. Кто-нибудь брался за подобное? И какими средствами, есть ли
подходящие для таких задач evolution board у Altera или Xilinx? Может посоветуете
литературу?
К сожалению, пока обпыт работы с ПЛИС ограничивается разработкой простого видеоконтроллера
для небольшого ЖК-монитора на первом Cyclone, поэтому мне трудно сразу оценить сложность
стоящих задач (понятно, что сложно, но насколько). Стоит добавить, что сами алгоритмы
распознования разработаны и работают в качестве программных продуктов на PC. Теперь
хочеться перенести это в "автономное" железо.
Заранее спасибо за любые советы и подсказки.
А что Вы подразумеваете под реальным временем в контексте задачи?
Это ведь может быть и интервал между кадрами и просто отрезок времени пока объект можно считать статичным.
Разница ведь может составить не один порядок.
Если Вы знакомы с ПЛИС и модель есть, то может лучше начать с составления
"бюджета требуемых затрат" вычислительной мощности.
Если математика с плавающей зпт, относительно сколько ее? или все удалось свести к целым.
IMHO, наиболее правильно сначала приводить модель максимально близко к языку HDL (verilog/vhdl и т.п.) или точнее к реализации в логике.
Как распараллеливается модель?
Т. е. сколько регионов/пикселов позволяет (или надо) обрабатывать одновременно.
Симуляция даст тестирование и требуемые затраты по быстродействию.
Реализация может вылится далеко не в одну ПЛИС, а группу, работающую параллельно.
evolution board Вам поможет разве что обкатать отдельные модули для оценки фактических выч. затрат
Я так подозреваю что алгоритм не может быть весьма статичным.
У него наверняка есть куча параметров, которые надо изменять в зависимости от условий.
Т. е. наличие в системе процессора для интерфейса с пользователем может оказаться весьма существенным.
Оптимальной может оказаться структура CPU + ПЛИС.
Например, ПЛИС делает черновую первичную обработку - то что хорошо параллелится и минимум плавающей математики.Почти все производители имеют чипы с блоками DSP.
А окончательное решение уже может ложится на процессор.
Здесь важен тип интерфейса CPU - ПЛИС.
Все зависит от математики, возможно она лучше ложится на DSP процессор и Вы на ПЛИС фактически его и реализуете, с большей затратой сил.
Хорошо адаптированная модель - сильно упростит систему.
В общем, чем лучше подготовить модель - тем меньше потом потери.
Что касается выбора ПЛИС - это уже на следующем этапе, когда имеете более конкретные требования к железу.