|
необходимо сделать графический контроллер на ПЛИС для вывода информации на телевизор. Нужен совет. |
|
|
|
Nov 14 2008, 09:14
|
Участник

Группа: Участник
Сообщений: 35
Регистрация: 26-02-07
Пользователь №: 25 680

|
Хочу сделать простой контроллер, по сути, видеобуфер, который будет формировать изображение в формате NTSC или PAL. А дальше, уже с помощью внешнего микроконтроллера, рисовать разноцветные буковки, простенькие графики и прочее. Хочу получить 320 на 240 точек, пара бит на цвет. Короче, все не сложно. Но и проект должен быть бюджетным. Вопросы: 1. Нет ли где готового проекта, посидеть - поковырять, сделать на его основе что нужно мне. 2. Если нет, подскажите пожалуйста, как прикинуть минимальную ПЛИС, которая потянет задачу. Склоняюсь в сторону Альтеры. Хочется чтобы была Альтера за 3-5 долларов + статическое ОЗУ за пару долларов. Спасибо!
|
|
|
|
|
 |
Ответов
|
Dec 6 2008, 10:34
|
Участник

Группа: Участник
Сообщений: 35
Регистрация: 26-02-07
Пользователь №: 25 680

|
Цитата(Dopler @ Dec 4 2008, 12:10)  Запустил свою железку. Китайцы малость обманули с разрешением телевизора (заявлено 480х234), а на самом деле получилось 460х272. Развертка прогрессивная (50 гЦ), 4 цвета (2 бита на цвет). Все это поместилось в 24 ячейки EPM3032A + один аппаратный ШИМ меги 48 для генерации синхроимпульсов + 2 микросхемы последовательной памяти N256S08 для двойной буфферизации. Спасибо что поделились результатами. Вопрос, у вас 4 цвета, вы пишете. То есть, вы выводите черно-белое изображение? Нет цветности, нет color burst? Как определили разрешение TFT ящика? При вашем разрешении в 480 точек края символов размазывались? И подобрали опытным путем 460? И все же на счет двойной буферизации. Если у вас 2 бита на точку, а не на цветовой канал, то в одном байте у вас помещается 4 точки. Думаю, вы бы все успели и с одной микросхемой памяти.....
|
|
|
|
|
Dec 6 2008, 21:11
|
Местный
  
Группа: Свой
Сообщений: 437
Регистрация: 23-04-05
Из: Таганрог
Пользователь №: 4 425

|
Цитата(Лунь @ Dec 6 2008, 13:34)  Спасибо что поделились результатами. Вопрос, у вас 4 цвета, вы пишете. То есть, вы выводите черно-белое изображение? Нет цветности, нет color burst? Как определили разрешение TFT ящика? При вашем разрешении в 480 точек края символов размазывались? И подобрали опытным путем 460? И все же на счет двойной буферизации. Если у вас 2 бита на точку, а не на цветовой канал, то в одном байте у вас помещается 4 точки. Думаю, вы бы все успели и с одной микросхемой памяти..... Да, изображение черно-белое, 4 цвета - черный, два серых и белый. С разрешением ящика все до сих пор не ясно. Проверял я его просто выводя картинку известной величины. Во всех инструкциях (к телевизорам разных фирм) заявлено разрешение матрицы 480х234. Я не мог понять, как он в 234 строки помещает телевизионный сигнал, в котором 576 строк (при черезстрочной развертке) или 288 при прогрессивной. Я думал, что он и берет только 234 строки из 288, остальные отбрасывает. Оказалось, что картинка 480*234 помещается полностью, плюс остается назанятая полоса примерно 10%, т.е. на своем экране данный телевизор отображает все положенные строки. Т.е. либо китайцы брешут в инструкции, либо там действуют какие-либо сжимающие алгоритмы. Еще один не ясный момент - по идее на экран должно выводится 52 мкс сигнала (12 мкс из 64 занимает строчный импульс), из этих соображений я и расчитывал частоту тактового генератора, чтобы в 52 мкс уложить 480 точек. В итоге данный телевизор выводит на экран только 50 мкс сигнала, поэтому разрешение получается 460 точек. Скорее всесго в дальнейшем повышу частоту до 10 мГц, что даст 500 точек по горизонтали. На TFT ящике ничего не размазывается, не по краям, не по середине. Да действительно, 4 точки в одном байте. Чтобы хранить один экран целиком (а двойная буфферизация это и подразумевает - один буфер на экране, другой формируется) необходимо - 480*234*2 = 224640 бит, что как раз помещается в одну 32К память. Отсюда следует, что для организации двух буферов нужно две таких памяти.
|
|
|
|
|
Dec 8 2008, 08:44
|
Участник

Группа: Участник
Сообщений: 35
Регистрация: 26-02-07
Пользователь №: 25 680

|
Цитата(Dopler @ Dec 7 2008, 00:11)  Да действительно, 4 точки в одном байте. Чтобы хранить один экран целиком (а двойная буфферизация это и подразумевает - один буфер на экране, другой формируется) необходимо - 480*234*2 = 224640 бит, что как раз помещается в одну 32К память. Отсюда следует, что для организации двух буферов нужно две таких памяти. А! Понял, вы применили 2 буфера чтобы в одном формировать, а из другого выводить, другими словами, формируете изображение довольно медленно, и чтобы не утомлять этим пользователя, формируете, а потом перещелкиваетесь на другую SRAM. Про размазывание я имел в виду тот случай, когда вы выводите например 400 точек на строку, а их на TFT реально 500, то что будет получаться в результате такого несовпадения? Например, контрастные изображения, типа черная буква на белом фоне у вас, не появляется ли каких-то хвостов? Ну там, полутона какие-нибудь? Спасибо что делитесь информацией.
|
|
|
|
|
Dec 9 2008, 06:41
|
Местный
  
Группа: Свой
Сообщений: 437
Регистрация: 23-04-05
Из: Таганрог
Пользователь №: 4 425

|
Цитата(Лунь @ Dec 8 2008, 11:44)  А! Понял, вы применили 2 буфера чтобы в одном формировать, а из другого выводить, другими словами, формируете изображение довольно медленно, и чтобы не утомлять этим пользователя, формируете, а потом перещелкиваетесь на другую SRAM. Да, именно так. Цитата Про размазывание я имел в виду тот случай, когда вы выводите например 400 точек на строку, а их на TFT реально 500, то что будет получаться в результате такого несовпадения? Например, контрастные изображения, типа черная буква на белом фоне у вас, не появляется ли каких-то хвостов? Ну там, полутона какие-нибудь? Спасибо что делитесь информацией. Да, получается, но это уже практически не заметно с растояния 20-30 см. В самом начале экспериментов я выводил на экран частую сетку ( с ячейкой 4 пиксела), если смотреть в упор, то видно, что белые полосы с одной стороны обрамляются серым полутоном. В данном случае этого никак не избежать, так как сигнал аналоговый, телевизор его цифрует, частоты генераторов идеально не совпадают, поэтому джиттер на один пиксел будет в любом случае.
|
|
|
|
|
Dec 9 2008, 08:42
|
Участник

Группа: Участник
Сообщений: 35
Регистрация: 26-02-07
Пользователь №: 25 680

|
Цитата(Dopler @ Dec 9 2008, 09:41)  Да, именно так. Да, получается, но это уже практически не заметно с растояния 20-30 см. В самом начале экспериментов я выводил на экран частую сетку ( с ячейкой 4 пиксела), если смотреть в упор, то видно, что белые полосы с одной стороны обрамляются серым полутоном. В данном случае этого никак не избежать, так как сигнал аналоговый, телевизор его цифрует, частоты генераторов идеально не совпадают, поэтому джиттер на один пиксел будет в любом случае. Спасибо большое, все ясно. Осталось найти время и доделать. Пока есть только синхронизация. По вашему опыту, решил тоже делать 2 буфера.
|
|
|
|
Сообщений в этой теме
Лунь необходимо сделать графический контроллер на ПЛИС для вывода информации на телевизор. Нужен совет. Nov 14 2008, 09:14 iosifk Цитата(Лунь @ Nov 14 2008, 12:14) Хочу сд... Nov 14 2008, 10:32 vik0 Цитата(Лунь @ Nov 14 2008, 11:14) 1. Нет ... Nov 14 2008, 10:36 Лунь Цитата(vik0 @ Nov 14 2008, 13:36) 1. http... Nov 14 2008, 13:06 Dopler Пару недель назад задавался такими же вопросами. М... Nov 14 2008, 18:54 Лунь Цитата(Dopler @ Nov 14 2008, 21:54) Пару ... Nov 15 2008, 15:24 Jury093 Нда.. судя по вопросам не худо бы сначала почитать... Nov 17 2008, 11:40 Лунь Цитата(Jury093 @ Nov 17 2008, 14:40) Нда.... Nov 17 2008, 12:46 Саша Z Вопрос в догонку:
когда источник картинки (streami... Nov 17 2008, 20:23 yes Цитата(Саша Z @ Nov 17 2008, 23:23) Но по... Nov 18 2008, 11:07  Лунь Цитата(yes @ Nov 18 2008, 14:07) а вопрос... Nov 18 2008, 11:19  Саша Z Цитата(yes @ Nov 18 2008, 15:07) ну там 7... Nov 18 2008, 12:17   yes Цитата(Саша Z @ Nov 18 2008, 15:17) Вот э... Nov 18 2008, 12:32    Лунь Цитата(yes @ Nov 18 2008, 15:32) мне полу... Nov 18 2008, 12:38     yes Цитата(Лунь @ Nov 18 2008, 15:38) Да, на ... Nov 18 2008, 13:32      Лунь Цитата(yes @ Nov 18 2008, 16:32) картинку... Nov 18 2008, 14:23    Саша Z Цитата(yes @ Nov 18 2008, 16:32) если инф... Nov 18 2008, 12:44
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|