Добрый день,
Стоит задача выбора платформы для нового проекта. ВременнЫе рамки проекта очень жесткие, поэтому и с аппаратной и с программной точек зрения желательно иметь в качестве основы так называемый(ую) system-on-module (они же OEM board, single board computer и т.п.), т.е. процессор, память, флэшка и прочая периферия общего назначения на одной карточке плюс board support package (пример).
Суть прибора вкратце: на входе электрический сигнал, дальше цепь преобразования, дальше FPGA с измерительной логикой внутри, оно формирует пакеты данных, которые контроллер по прерыванию должен считывать из буфера FPGA по процессорной шине и складывать в RAM (мин. спецификация на поток данных с FPGA невелика - 750 байт/с, но в дальнейшем возможно понадобиться существенно большая пропускная способность). Контроллер обсчитывает различную хитрую статистику по этим данным (как в реальном времени, так и пост-обработка), рисует красивые графики на цветном экране, а также (если нужно) выдает результаты по USB и Ethernet
Отправные точки для выбора system-on-board:
- CPU от 200 MHz (больше - лучше)
- SDRAM от 256 MB (нужен буфер минимум на 90 MB, плюс несколько буферов для вычислений, размеры которых пока еще не уточнены, может быть и в 128 MB втиснемся, но рисковать не хотелось бы).
- Ethernet, USB2.0 device, желательно также SD контроллер или USB хост.
- I2C
- хотя бы 20-30 GPIO
- Внешние входы прерываний
- LCD контроллер цветного экрана (800х480, 16-256 цветов), желательно с поддержкой touchscreen
- хороший board support package (очень желательно, чтобы это был Linux) с доступными средствами его сборки
- очень желательно архитектура ARM (для максимального переиспользования имеющегося опыта и имеющихся средств отладки), но, в принципе, другие архитектуры тоже рассматриваются.
- цена не очень критична, гораздо важнее сократить время разработки
Так как сроки совсем жесткие, то времени пробовать различные варианты (заказывать несколько eval board, собирать систему и гонять тесты) попросту нет; грубо говоря, нужно сделать "правильный выбор" сразу :-) Мы работали до этого только с NXP, но на основе их CPU я что-то подходящих плат не вижу. Поэтому вопрос такой. Не могли бы вы порекомендовать проверенные на собственном опыте конкретные system-on-module с подобными характеристиками и свои впечатления от работы с ними (проблемы, качество и полнота документации, качество и быстрота тех. поддержки, в идеале - приблизительные interrupt/FIQ latency на этих платформах под Linux)?
Заранее спасибо!