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

 
 
 
Reply to this topicStart new topic
> Video Sync Generator, Вывод на VGA-монитор
LAS9891
сообщение Mar 2 2017, 13:33
Сообщение #1


Местный
***

Группа: Участник
Сообщений: 206
Регистрация: 18-06-15
Пользователь №: 87 194



Пробую вывести изображение с FPGA на VGA-монитор. В FPGA зашит NiosII. Для начала хотелось бы сформировать массив данных 1024x1280x8 и попробовать вывести эту картинку на монитор с использованием только Video Sync Generator. Возможно ли это?
Go to the top of the page
 
+Quote Post
Flip-fl0p
сообщение Mar 3 2017, 05:25
Сообщение #2


В поисках себя...
****

Группа: Свой
Сообщений: 729
Регистрация: 11-06-13
Из: Санкт-Петербург
Пользователь №: 77 140



Цитата(LAS9891 @ Mar 2 2017, 16:33) *
Пробую вывести изображение с FPGA на VGA-монитор. В FPGA зашит NiosII. Для начала хотелось бы сформировать массив данных 1024x1280x8 и попробовать вывести эту картинку на монитор с использованием только Video Sync Generator. Возможно ли это?

Для вывода изображения Nios II совсем необязателен, я бы даже сказал вреден. Зачем грузить процессор тем, что легко реализуется на ПЛИС ?
Если у Вас есть АЦП на плате для вывода VGA - то вообще проблем не вижу.
Ловите пример проекта который генерирует цветные полосы и выводит их на матрицу, работающую на параллельном интерфейсе. Модуль верхнего уровня "MATRIX_TEST". Проект для ПЛИС фирмы Altera.
Если хотите выводить изображение то это несколько сложнее, поскольку необходимо будет реализовать кадровый буфер, и выводимое изображение сначала записать в кадровый буфер.
Прикрепленные файлы
Прикрепленный файл  MATRIX_TEST.7z ( 4.42 килобайт ) Кол-во скачиваний: 16
 
Go to the top of the page
 
+Quote Post
LAS9891
сообщение Mar 3 2017, 05:31
Сообщение #3


Местный
***

Группа: Участник
Сообщений: 206
Регистрация: 18-06-15
Пользователь №: 87 194



Цитата(Flip-fl0p @ Mar 3 2017, 08:25) *
Если хотите выводить изображение то это несколько сложнее, поскольку необходимо будет реализовать кадровый буфер, и выводимое изображение сначала записать в кадровый буфер.


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

Go to the top of the page
 
+Quote Post
Flip-fl0p
сообщение Mar 3 2017, 06:02
Сообщение #4


В поисках себя...
****

Группа: Свой
Сообщений: 729
Регистрация: 11-06-13
Из: Санкт-Петербург
Пользователь №: 77 140



Цитата(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 ?

Сообщение отредактировал Flip-fl0p - Mar 3 2017, 06:03
Go to the top of the page
 
+Quote Post
LAS9891
сообщение Mar 3 2017, 06:03
Сообщение #5


Местный
***

Группа: Участник
Сообщений: 206
Регистрация: 18-06-15
Пользователь №: 87 194



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

А контроллер SDRAM свой изобретали?
Go to the top of the page
 
+Quote Post
Flip-fl0p
сообщение Mar 3 2017, 06:11
Сообщение #6


В поисках себя...
****

Группа: Свой
Сообщений: 729
Регистрация: 11-06-13
Из: Санкт-Петербург
Пользователь №: 77 140



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

Можно сказать и так. Я взял готовый, разобрался как он реализован, разобрался с работой SDRAM, и по образу и подобию готового контроллера написал свой контроллер. Мне показалось более правильным решением разобраться в сути работы с памятью, чем брать готовое и не понимать как оно работает.

Сообщение отредактировал Flip-fl0p - Mar 3 2017, 06:13
Go to the top of the page
 
+Quote Post
LAS9891
сообщение Mar 3 2017, 06:19
Сообщение #7


Местный
***

Группа: Участник
Сообщений: 206
Регистрация: 18-06-15
Пользователь №: 87 194



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

Так то оно правильно конечно. Но зато в Nios кроме SDRAM я могу использовать другие готовые модули, SPI например и др. Неужели придется все переписывать на Verilog...
Go to the top of the page
 
+Quote Post
Flip-fl0p
сообщение Mar 3 2017, 06:33
Сообщение #8


В поисках себя...
****

Группа: Свой
Сообщений: 729
Регистрация: 11-06-13
Из: Санкт-Петербург
Пользователь №: 77 140



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

Смотря какая цель перед Вами стоит. Если вам нужно получить работающую железку, тогда ищите самый быстрый результат. Скорее всего разобраться с Nios будет быстрее и проще. Но учтите что Nios - платный процессор.
Если перед Вами стоит задача научиться - то мне кажется, лучше все модули реализовать на ПЛИС.

Сообщение отредактировал Flip-fl0p - Mar 3 2017, 06:37
Go to the top of the page
 
+Quote Post
LAS9891
сообщение Mar 23 2017, 07:09
Сообщение #9


Местный
***

Группа: Участник
Сообщений: 206
Регистрация: 18-06-15
Пользователь №: 87 194



Неужели никто не использовал Video Sync Generator? Есть вопрос по настройкам в Qsys. Для настройки Video Sync Generator пользовался настройками с сайта http://tinyvga.com/vga-timing, а конкретнее:

Прикрепленное изображение

Но заработало только так:

Прикрепленное изображение

Так настраивал товарищ из примера http://we.easyelectronics.ru/plis/formirov...em-nios-ii.html.
Почему цифры не совпадают? Как он их рассчитал/подобрал?
Go to the top of the page
 
+Quote Post
Flip-fl0p
сообщение Mar 23 2017, 08:11
Сообщение #10


В поисках себя...
****

Группа: Свой
Сообщений: 729
Регистрация: 11-06-13
Из: Санкт-Петербург
Пользователь №: 77 140



Цитата(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 счётчика. Один считает пиксели по горизонтали, другой по вертикали. В зависимости от состояния счётчика генерируются импульсы строчной и кадровой синхронизации.
Go to the top of the page
 
+Quote Post

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

 


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


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