Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Video Sync Generator
Форум разработчиков электроники ELECTRONIX.ru > Программируемая логика ПЛИС (FPGA,CPLD, PLD) > Системы на ПЛИС - System on a Programmable Chip (SoPC)
LAS9891
Пробую вывести изображение с FPGA на VGA-монитор. В FPGA зашит NiosII. Для начала хотелось бы сформировать массив данных 1024x1280x8 и попробовать вывести эту картинку на монитор с использованием только Video Sync Generator. Возможно ли это?
Flip-fl0p
Цитата(LAS9891 @ Mar 2 2017, 16:33) *
Пробую вывести изображение с FPGA на VGA-монитор. В FPGA зашит NiosII. Для начала хотелось бы сформировать массив данных 1024x1280x8 и попробовать вывести эту картинку на монитор с использованием только Video Sync Generator. Возможно ли это?

Для вывода изображения Nios II совсем необязателен, я бы даже сказал вреден. Зачем грузить процессор тем, что легко реализуется на ПЛИС ?
Если у Вас есть АЦП на плате для вывода VGA - то вообще проблем не вижу.
Ловите пример проекта который генерирует цветные полосы и выводит их на матрицу, работающую на параллельном интерфейсе. Модуль верхнего уровня "MATRIX_TEST". Проект для ПЛИС фирмы Altera.
Если хотите выводить изображение то это несколько сложнее, поскольку необходимо будет реализовать кадровый буфер, и выводимое изображение сначала записать в кадровый буфер.
LAS9891
Цитата(Flip-fl0p @ Mar 3 2017, 08:25) *
Если хотите выводить изображение то это несколько сложнее, поскольку необходимо будет реализовать кадровый буфер, и выводимое изображение сначала записать в кадровый буфер.


Это будет следующим этапом. Пока хочу вывести статичную картинку хранящуюся в памяти на VGA-монитор. Как вывести статичную картинку в виде массива через Video Sync Generator? Возможно ли это? Как подключить модуль video_sync_generator в Qsys:

Flip-fl0p
Цитата(LAS9891 @ Mar 3 2017, 08:31) *
Это будет следующим этапом. Пока хочу вывести статичную картинку хранящуюся в памяти на VGA-монитор. Как вывести статичную картинку в виде массива через Video Sync Generator? Возможно ли это? Как подключить модуль video_sync_generator в Qsys:

Как выводить изображение через NIOS II я не знаю, я не умею с ним работать, но в ближайших планах научиться.
Всё, что касается вывода изображения, я реализовывал полностью на FPGA. С ПК на плату отправлял изображение по UART. Это изображение записывал в SDRAM, потом из SDRAM отправлял в LVDS матрицу.
Думаю у Вас алгоритм действий будет похож.
1. Передать изображение на плату.
2. Записать изображение в кадровый буфер.
3. Вывести изображение из кадрового буфера.
А почему именно NIOS II ? Ведь можно прекрасно обойтись и без софтового процессора. Случаем не связанно с тем, что необходим контроллер SDRAM ?
LAS9891
Цитата(Flip-fl0p @ Mar 3 2017, 09:02) *
Как выводить изображение через NIOS II я не знаю, я не умею с ним работать, но в ближайших планах научиться.
Всё, что касается вывода изображения, я реализовывал полностью на FPGA. С ПК на плату отправлял изображение по UART. Это изображение записывал в SDRAM, потом из SDRAM отправлял в LVDS матрицу.
Думаю у Вас алгоритм действий будет похож.
1. Передать изображение на плату.
2. Записать изображение в кадровый буфер.
3. Вывести изображение из кадрового буфера.

А контроллер SDRAM свой изобретали?
Flip-fl0p
Цитата(LAS9891 @ Mar 3 2017, 09:03) *
А контроллер SDRAM свой изобретали?

Можно сказать и так. Я взял готовый, разобрался как он реализован, разобрался с работой SDRAM, и по образу и подобию готового контроллера написал свой контроллер. Мне показалось более правильным решением разобраться в сути работы с памятью, чем брать готовое и не понимать как оно работает.
LAS9891
Цитата(Flip-fl0p @ Mar 3 2017, 09:11) *
Можно сказать и так. Я взял готовый, разобрался как он реализован, разобрался с работой SDRAM, и по образу и подобию готового контроллера написал свой контроллер. Мне показалось более правильным решением разобраться в сути работы с памятью, чем брать готовое и не понимать как оно работает.

Так то оно правильно конечно. Но зато в Nios кроме SDRAM я могу использовать другие готовые модули, SPI например и др. Неужели придется все переписывать на Verilog...
Flip-fl0p
Цитата(LAS9891 @ Mar 3 2017, 09:19) *
Так то оно правильно конечно. Но зато в Nios кроме SDRAM я могу использовать другие готовые модули, SPI например и др. Неужели придется все переписывать на Verilog...

Смотря какая цель перед Вами стоит. Если вам нужно получить работающую железку, тогда ищите самый быстрый результат. Скорее всего разобраться с Nios будет быстрее и проще. Но учтите что Nios - платный процессор.
Если перед Вами стоит задача научиться - то мне кажется, лучше все модули реализовать на ПЛИС.
LAS9891
Неужели никто не использовал Video Sync Generator? Есть вопрос по настройкам в Qsys. Для настройки Video Sync Generator пользовался настройками с сайта http://tinyvga.com/vga-timing, а конкретнее:
Нажмите для просмотра прикрепленного файла
Но заработало только так:
Нажмите для просмотра прикрепленного файла
Так настраивал товарищ из примера http://we.easyelectronics.ru/plis/formirov...em-nios-ii.html.
Почему цифры не совпадают? Как он их рассчитал/подобрал?
Flip-fl0p
Цитата(LAS9891 @ Mar 23 2017, 10:09) *
Неужели никто не использовал Video Sync Generator? Есть вопрос по настройкам в Qsys. Для настройки Video Sync Generator пользовался настройками с сайта http://tinyvga.com/vga-timing, а конкретнее:
Нажмите для просмотра прикрепленного файла
Но заработало только так:
Нажмите для просмотра прикрепленного файла
Так настраивал товарищ из примера http://we.easyelectronics.ru/plis/formirov...em-nios-ii.html.
Почему цифры не совпадают? Как он их рассчитал/подобрал?

Брать данные под матрицу надо с даташита на матрицу. VESA описывает лишь общие рекомендации, не более.
Я не использовал синхрогенератор, который генерирует QSYS, а писал свой. Разберитесь что он из себя представляет, там по сути 2 счётчика. Один считает пиксели по горизонтали, другой по вертикали. В зависимости от состояния счётчика генерируются импульсы строчной и кадровой синхронизации.
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.