Здравствуйте. Мне посоветовали обратиться в эту ветку форума (кое-что было в
Electronix.ru)
Задача:
есть битовый поток со скоростью 8Мбит/с (1 Мбайт/с) (или чуть меньше). Управление потоком своеобразное и очень медленное (сотни мс). Потери данных не должно быть. Его необходимо преобразовать в ethernet, далее данные надо передать через маршрутизируемую сеть и восстановить обратно в битовый поток. Как-либо обрабатывать данные не требуется. Данные (DATA) сопровождаюся тактовым сигналов (CLK).
Общие соображения:
Так как потерь данных быть не должно, то необходимы буферы на передаче и приеме объёмом 2-4 Мбайта.
Сеть маршрутизируемая. то поддержка стека TCP/IP в полном (или почти полном) объёме.
Решение 1:
SPI (или SSC) на прием как slave через DMA (хотелось бы сразу 32 бита принимать). Прерывание DMA заполняет приемный буфер . Формирование пакета на передачу, пакет в буфер передачи. Прерывание DMA вычитывает из буфера передачи данные и отправляет через интерфейс (MII или другой) в физический уровень ethernet. В тоже время система должна анализировать входной трафик (малый) на предмет команд управления и их отработку. Отработка команд - некоторый аналог I2C или one-ware, но жутко медленный интерфейс, скорее всего программный по таймеру (0.5 -1 мс на бит). В процессе работы необходимо хранение небольшого объёма служебной информации.
Аппаратное решение: ARM9 + NORflash+NANDflash+SDRAM? Наверно без ПЛИС?
Программное решение: OS (RTOS или linux или что-то другое) или только софт под задачу без ОС?
На приеме обратное преобразование, SPI везде slave.
+ гибкость программная и запас на будущее по производительности?
- наверно сложно и дорого
Решение 2:
ПЛИС на прием потока, далее FIFO (только где такой объём взять?) и контроллер (ATmega128 или мощнее), данные далее передаются в Wiznet5100 (не в RAW режиме)?
Программное решение: прошивка ПЛИС, программа для контроллера.
На приеме обратное преобразование.
+дешевле и проще программно
-все в притык по производительности?
Просьба указать на "залеты" по аппаратной реализации и программное, то есть реализуемы ли варианты! В каком варианте интегрально дешевле и меньше проблем?
Спасибо.
Наука изощряет ум; ученье вострит память. Козьма Прутков