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

 
 
> Обработка видео
amiller
сообщение Sep 2 2016, 06:25
Сообщение #1


Частый гость
**

Группа: Участник
Сообщений: 176
Регистрация: 20-02-14
Из: Томск
Пользователь №: 80 612



Стоит задача:
В области электронной микроскопии реализовать формирование строчной и кадровой развертки для системы отклонения и обработку видеосигнала с максимальными параметрами 1024х1024 50Гц.
Предыдущий вариант системы работал с максимальным разрешением 480х480 10Гц и был реализован на STM32F437.
Развертки были сделаны на внешних ЦАП (SPI). Оцифровка изображения на встроенном АЦП в dual mode (примерно 2,5 мегасемпла).
Видеобуфер во внешней памяти и на комп данные предавались без предварительной обработки через Ethernet на комп, где и отображалась картинка.
Так как практически всё делалось через DMA, то в контроллере оставалась ещё уйма свободного времени для фоновых задач.
Но по новому ТЗ скорость обработки надо увеличить в 20 раз, что нереально в такой конфигурации.
Пока на ум приходит только следующее:
1. С помощью видеокарты с аналоговым выходом и поддерживающей HD качество формирую пилообразные развертки (сигналами цветности) и синхроимпульсы.
2. Развертки через усилители подаются на систему отклонения, а синхроимпульсы подмешиваются к сигналу с датчика изображения (яркости).
3. Сформированный видеосигнал подается на плату видеозахвата, поддерживающую соответствующее качество.
В теории должно сработать.
Вопрос: может быть есть специализированные контроллеры, девайсы, которым по зубам эта задача?
Или может есть совсем другое решение, до которого я не смог додуматься?
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
Alex11
сообщение Sep 2 2016, 17:51
Сообщение #2


Гуру
******

Группа: Свой
Сообщений: 2 106
Регистрация: 23-10-04
Из: С-Петербург
Пользователь №: 965



Платы видеозахвата в большинстве своем работают на стандартном PAL сигнале. Все остальное, как правило, туда не засунуть. Я бы порекомендовал сделать гигабитный ethernet на FPGA, передача по UDP, АЦП отдельно. Будет наиболее дешево и просто. Это если не жатое видео передавать в PC. Если нужно сжатие - то только нормальный процессор с видеоускорителем. TI - один из лучшух вариантов, т.к. имеет открытую документацию.
Go to the top of the page
 
+Quote Post
jcxz
сообщение Sep 3 2016, 05:46
Сообщение #3


Гуру
******

Группа: Свой
Сообщений: 5 228
Регистрация: 3-07-08
Из: Омск
Пользователь №: 38 713



Даже не понижая требований посчитаем:
1024*1024*50*2 = 104857600 B/sec - требуемая скорость передачи в комп.
Если для передачи в комп возьмём FT601 - за такт в её FIFO можно загружать 32бита. Получаем: 104857600/4 = 26214400 слов/сек.
Поделим макс. тактовую ядра на полученную скорость потока: 204000000/26214400 = ~7.78 такта/слово.
Маловато конечно, но! Например SGPIO-периферия LPC4370 работает на частоте ядра (SGPIO_CLOCK), но макс. частота сдвига битов по даташиту: "Note that the input frequency should be less than half of the
SGPIO_CLOCK frequency". А это много меньше чем 7.78такта. И SGPIO допускает внешнее тактирование, что (как я понимаю) совместимо с протоколом "245 Synchronous FIFO" FT601.
АЦП LPC4370 имеет FIFO глубиной 16 слов и умеет упаковывать свой выходной поток в 32-битные слова. Соответственно: из АЦП получаем поток 26214400 слов/сек.
Также DMA-контроллер в этом LPC имеет 2 BusMaster-интерфейса, что позволяет ему (вроде как) одновременно читать/писать периферию и писать/читать память за один такт (например: один BusMaster читает следующее слово из периферии, другой - в это же время пишет предыдущее слово в ОЗУ).
Так что думаю вполне возможно организовать работу так, что: пакетными DMA-пересылками заполняем один 4К-буфер в ОЗУ из FIFO АЦП. В это время другой 4К-буфер пересылается через SGPIO в FT601 (SGPIO тоже имеет FIFO) также пакетными DMA-транзакциями.
Можно даже попробовать гнать исходящий поток в FT601 через обычный GPIO в фоновой задаче без DMA. Надо внимательнее изучить даташиты.
Либо может ещё лучше - согласовать EMC-интерфейс LPC с шиной FT601 - это был-бы самый оптимальный вариант.
А если немного снизить требования по кадровой частоте например до ~39fps, то получим уже: 1024*1024*39*2/4 = 20447232 слов/сек, т.е. примерно ~10 тактов/слово - думаю такой поток уже вполне реально вывести из LPC4370 через GPIO или SGPIO или EMC.
Так что можно построить систему ТС-а так же как и в его предыдущей версии: на одном МК, только заменив его. И не надо забывать что LPC4370 имеет 3 ядра, пока одно ядро гонит поток из АЦП наружу (или управляет DMA, делающее это), другое ядро может рулить внешниим ЦАП-ами.
Ещё вариант ускорения: так как SGPIO и АЦП имеют собственные FIFO, то может вообще получится гнать поток напрямую АЦП->SGPIO минуя ОЗУ. А может это даже лучше делать не через DMA, а одному из ядер, благо их 3 и они могут работать не мешая друг другу.
Go to the top of the page
 
+Quote Post

Сообщений в этой теме
- amiller   Обработка видео   Sep 2 2016, 06:25
- - 1113   сигнал для системы отклонения должен быть какой-то...   Sep 2 2016, 06:39
- - DASM   Ничего не понял.. ТЗ непонятно. А так да, СТМ в ви...   Sep 2 2016, 06:41
|- - amiller   Цитата(DASM @ Sep 2 2016, 10:41) Ничего н...   Sep 2 2016, 07:40
- - scifi   Есть такой МК - LPC4370. У него есть АЦП на 80 MSP...   Sep 2 2016, 07:57
- - _pv   http://redpitaya.com/ гигабитного езернета хватит ...   Sep 2 2016, 08:35
|- - jcxz   Может быть через интерфейс EMC или через SGPIO LPC...   Sep 2 2016, 09:02
|- - _pv   Цитата(jcxz @ Sep 2 2016, 16:02) Тогда ес...   Sep 2 2016, 10:26
|- - scifi   Цитата(_pv @ Sep 2 2016, 13:26) Если 8 би...   Sep 2 2016, 10:29
- - KnightIgor   Цитата(amiller @ Sep 2 2016, 07:25) Стоит...   Sep 2 2016, 10:33
|- - _pv   Цитата(KnightIgor @ Sep 2 2016, 17:33) Sm...   Sep 2 2016, 12:29
- - ivan2006   Цитата(amiller @ Sep 2 2016, 09:25) Стоит...   Sep 2 2016, 15:33
|- - amiller   Цитата(ivan2006 @ Sep 2 2016, 19:33) Попр...   Sep 2 2016, 16:15
- - _pv   ЦитатаПока самым перспективным вижу использование ...   Sep 2 2016, 16:39
- - _pv   Цитатасогласовать EMC-интерфейс LPC с шиной FT601 ...   Sep 3 2016, 09:56
- - amiller   Цитата(_pv @ Sep 3 2016, 13:56) ТС присма...   Sep 3 2016, 11:24
|- - mantech   Цитата(amiller @ Sep 3 2016, 14:24) redpi...   Sep 3 2016, 15:28
|- - _pv   Цитата(mantech @ Sep 3 2016, 22:28) Цена ...   Sep 3 2016, 16:16
- - jcxz   Цитата(_pv @ Sep 3 2016, 15:56) и ещё при...   Sep 4 2016, 04:19


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

 


RSS Текстовая версия Сейчас: 22nd July 2025 - 21:42
Рейтинг@Mail.ru


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