|
Вопрос по резисторному видео-ЦАП, полоски? |
|
|
|
Dec 12 2009, 11:23
|
Частый гость
 
Группа: Участник
Сообщений: 118
Регистрация: 13-09-09
Пользователь №: 52 331

|
использую видео ЦАП на резисторах (как в альтеровских китах) данные отправляю по фронту клока: Код if rising_edge(Clk) then if Blank='1' then Red<=RAM_Data(14 downto 10); Green<=RAM_Data(9 downto 5); Blue<=RAM_Data(4 downto 0); else Red<="00000"; Green<="00000"; Blue<="00000"; end if; end if; разрешение 320x240 VGA (на самом деле 640x480, просто замедленно читаем и по два раза строку) бордюров нет - изображение застилает весь экран (обычный VGA LCD монитор от ПК) НЕ нравится то, что при выводе динамичных изображений - появляются горизонтальные полоски - они как бы отсвечивают на горизонтальные соседние строки - типа тень отбрасывают. Можно и как это устранить? Связано ли это с тем что ЦАП резисторный?
|
|
|
|
2 страниц
1 2 >
|
 |
Ответов
(1 - 27)
|
Dec 12 2009, 11:48
|
Частый гость
 
Группа: Участник
Сообщений: 118
Регистрация: 13-09-09
Пользователь №: 52 331

|
Цитата(V_G @ Dec 12 2009, 14:33)  Отчасти. После ЦАП должен стоять ФНЧ с частотой среза между верхней частотой спектра и половинной частотой дискретизации. Если фильтра нет, он все равно есть (на паразитных емкостях монтажа, на входном импедансе монитора...) Возможно, Вы видите переходные процессы этого фильтра. Как минимум следует согласовать выходной импеданс ЦАП и входной - монитора. а чем согласовывать? Линейка резисторов ЦАП: 8k,4k,2k,1k,0.5k на старых видео-карточках ставили последовательно ферритовые бусины (или чип-индуктивности?) они помогут? P.S. вывод на телевизор через кодер-пал оставляет желать лучшего каковы пути повышения качества катинки?
|
|
|
|
|
Dec 12 2009, 12:49
|
Частый гость
 
Группа: Участник
Сообщений: 118
Регистрация: 13-09-09
Пользователь №: 52 331

|
Цитата(SM @ Dec 12 2009, 15:36)  Как я понимаю, это прямое следствие интерливинга (представления одного кадра из 640 строк двумя по 320). Оставьте родные 320 строк, и проблема отпадет. ЦАП тут вообще не причем. Все гадости от ЦАПа, переходные процессы, и т.п. проявляются лишь "размытием" пиксела по длине. а как-же тогда быть? ведь мне нужно 240 строк. 480 не нужно. если оставлю 320 строк, то чем заполнять нижнюю половину экрана? не понял идею объясните пожалуста подробнее Пока делаю так: строка0 12345678... строка1 12345678... строка2 abcdefghi... строка2 abcdefghi... ... строка638 абвгдеёжзий... строка639 абвгдеёжзий...
Сообщение отредактировал %-) - Dec 12 2009, 12:51
|
|
|
|
|
Dec 12 2009, 12:51
|

Профессионал
    
Группа: Свой
Сообщений: 1 818
Регистрация: 15-10-09
Из: Владивосток
Пользователь №: 52 955

|
Цитата(SM @ Dec 12 2009, 22:36)  Как я понимаю, это прямое следствие интерливинга (представления одного кадра из 640 строк двумя по 320). Оставьте родные 320 строк, и проблема отпадет. ЦАП тут вообще не причем. Все гадости от ЦАПа, переходные процессы, и т.п. проявляются лишь "размытием" пиксела по длине. Может быть и интерливинг, проверить несложно.. Но если переходная характеристика фильтра имеет колебания (а это чаще всего, Бесселевские фильтры с гладкой ПХ сами собой не получаются), то тени могут быть следствиями этих колебаний. В этом случае надо еще знать входное сопротивление монитора (смутно полагаю, что порядка 75 Ом). Возможно, эмиттерник поможет, или любой усилитель с низкоомным выходом и резистором, равным сопротивлению линии передачи, последовательно с нагрузкой, со стороны усилителя (до кабеля).
|
|
|
|
|
Dec 12 2009, 13:31
|
Гуру
     
Группа: Свой
Сообщений: 7 946
Регистрация: 25-02-05
Из: Moscow, Russia
Пользователь №: 2 881

|
Цитата(%-) @ Dec 12 2009, 15:49)  а как-же тогда быть? ведь мне нужно 240 строк. 480 не нужно. А как вы из 640-ка строк оставляли 240? Вот видимо тем же принципом... Цитата(V_G @ Dec 12 2009, 15:51)  Но если переходная характеристика фильтра имеет колебания Чтобы они там не имели, но я сильно сомневаюсь, что это столь низкочастотные колдебания, чтобы растянуться на целую следующую строку, оставив там "тень". Эти колебания вряд-ли выльются во что-то длинее 1-2 пиксела. Ну если очень уж плохо с емкостями - то пикселей 10-15. Но уж никак не на целую строку. Цитата(%-) @ Dec 12 2009, 15:53)  какбудто менее яркие пиксели отбрасывают тень на всю строку. Сложно так сказать, но как вариант - какая-то "гниль" с уровнем черного, в композитном видеосигнале - он ездит от строки к строке. Опять же ЦАП не причем.
|
|
|
|
|
Dec 12 2009, 14:37
|
Частый гость
 
Группа: Участник
Сообщений: 118
Регистрация: 13-09-09
Пользователь №: 52 331

|
Цитата(SM @ Dec 12 2009, 17:23)  Нет, не может. Я думал наоборот, что Вы впихиваете 640х480 в 320х240.
Ищите проблемы в уровне черного на выходе кодера, а не в ЦАПе. с телевизором всё понятно. но на мониторе такие-же полоски. тоесть с резисторов сразу на RGB -вход. ещё вопрос - хочу NTSC развёртку 60Гц - но чтобы PAL-овские телики держали. Пока сделал хитро - кодер в режиме ПАЛ с поднесущей 4.43, а разворачивание кадра с 60 Гц из трех телевизоров - только один корректно держал цвет. остальные два - отображали цвет непонятно - будто не хватало красного и было всё желто-синим. в меню он был как NTSC 4.43. А мне б желательно PAL-60. Ни одно ли тоже это? поймут ли обычные телики истинный NTSC с поднесущей 3.579 мгц?
|
|
|
|
|
Dec 12 2009, 15:03
|

Профессионал
    
Группа: Свой
Сообщений: 1 818
Регистрация: 15-10-09
Из: Владивосток
Пользователь №: 52 955

|
Цитата(SM @ Dec 12 2009, 23:31)  Чтобы они там не имели, но я сильно сомневаюсь, что это столь низкочастотные колдебания, чтобы растянуться на целую следующую строку, оставив там "тень". Эти колебания вряд-ли выльются во что-то длинее 1-2 пиксела. Ну если очень уж плохо с емкостями - то пикселей 10-15. Но уж никак не на целую строку. Оп... не заметил, что тени "отбрасываются" по вертикали, похоже, не в переходных процессах дело... Если говорим о видеосигнале на телевизор, то задняя площадка после строчного синхроимпульса предназначена для фиксации уровня черного. Вы ее корректно формируете? Если их нет, то вертикальные полосы по краям как раз и будут уровнями фиксации черного. Про монитор не знаю, есть ли там такие прибамбасы. Ну, и необходимость согласования с линией связи и входным сопротивлением тоже никто не отменял, 0,5 кОм - неправильное сопротивление источника видеосигнала. Но эффекты от этого Вы, возможно, обнаружите позже, если вообще обнаружите.
|
|
|
|
|
Dec 13 2009, 03:12
|
Частый гость
 
Группа: Участник
Сообщений: 118
Регистрация: 13-09-09
Пользователь №: 52 331

|
заморочка действительно была в уровне чёрного. поставил цап из следующих резисторов: 250, 500,1000,2000,4000 Ом выход цап-а нагрузил на 75 ом и далее на вход AD724 (они советуют через резистор) требуемое напряжение на вход AD724 - 0..0,714В уровень чёрного соответствует 0.2 В напряжение ножек плис на входе цап - 0..3,3V как сделать чтоб напряжение чёрного было не 0 , а 0.2 V ? делал вариант: if Data()<8 then RGB<=7 else RGB<Data, но такой вариант не устраивает - уменьшается разрешение цап. подскажите поростой путь как сделать 0,2 V на чёрном. P.S. на VGA мониторах такой проблемы нет - подавай себе 0V и всё
|
|
|
|
|
Dec 13 2009, 12:43
|
Частый гость
 
Группа: Участник
Сообщений: 118
Регистрация: 13-09-09
Пользователь №: 52 331

|
тоесть в точке соединения резисторов с резистором 75 ом добавить ещё один резистор и к питанию - так? кстати, правильно ли считаю, что при подаче логического 0 резистор ЦАП параллелится с резистором 75 Ом, а если логическая 1, то он идёт к питанию. тоесть вообще считать напряжение в диапазоне 0..31 (5 бит) замучаешься? иль где-то ошибаюсь?
|
|
|
|
|
Dec 13 2009, 13:26
|
Гуру
     
Группа: Свой
Сообщений: 7 946
Регистрация: 25-02-05
Из: Moscow, Russia
Пользователь №: 2 881

|
Цитата(%-) @ Dec 13 2009, 15:43)  иль где-то ошибаюсь?  Почти нигде не ошибаетесь, только одно - когда считаете общее сопротивление всего ЦАПа - то и питание, и общий, и выходы логики надо приближенно считать одним единым общим - т.е. все резисторы, куда бы они не шли - они с точки зрения выходного сопротивления ЦАПа все паралелльны и все на общий. А сам рассчет там элементарен - верно - единица - к питанию, ноль - к общему. При условии, что токи через резисторы заметно меньше, чем допустимые токи выходов. А то придется еще и учитывать падения напряжений на выходах. Если совсем лень всяких Кирхгофов с Омами совокуплять, то возьмите микрокап, и в нем все просто подберите в режиме анализа Dynamic DC.
|
|
|
|
|
Dec 14 2009, 01:41
|
Частый гость
 
Группа: Участник
Сообщений: 118
Регистрация: 13-09-09
Пользователь №: 52 331

|
Цитата(V_G @ Dec 14 2009, 03:34)  Я, пардон, в ad724 не разбираюсь, но из общих соображений: PAL - система европейская (по рождению) 60 Гц - частота американская Бывают такие гибриды? бывает. PAL M например (см. wikipedia). Распространена в Бразилии. Но там поднесущая цвета близкА к 3.58 (как НТСЦ) меня же интересуетс вариант с поднесущей 4.43 только один телек из трех нормально держал цвета - остальные кажут черно-белое в PAL и много желтого с синим в NTSC-4.43 вопрос: от чего зависит захват цвета в телевизоре? зависит ли он от: 1) неточной частоты кварцевого генератора поднесущей - ёмкости в цепи кварца XTAL 2) от наличиии нечётных гармоник поднесущей - нужен синус, а мы толкаем меандр 3) от строчной развёртки 4) от развёртки в целом ?
|
|
|
|
|
Dec 14 2009, 06:24
|
Частый гость
 
Группа: Участник
Сообщений: 118
Регистрация: 13-09-09
Пользователь №: 52 331

|
Цитата(torik @ Dec 14 2009, 09:04)  Не забудте еще про тройную или хотя бы двойную буферизацию кадра изображения. Иначе на динамическом изображении будете видеть горизонтальную полосу, бегающую по вертикали))) не про эту полосу идёт речь. то про что вы сказали - знаю (tearing effect) даже если изображение будет статичным и пестроцветным - на VGA мониторе (LCD) темные пикселы отбрасывают затемнение на светлые на ЭЛТ и телеке этого нет! но на телеке другая трабла - связана с отсутствием цвета или его неверная передача (желтый+синий в NTSC 4.4 или Ч/Б в PAL) Цитата(torik @ Dec 14 2009, 09:04)  А что мешает вообще изначально выводить изображение 640х480, без преобразования в 320х240? избыточность такого разрешения.
|
|
|
|
|
Dec 14 2009, 07:03
|
Частый гость
 
Группа: Участник
Сообщений: 118
Регистрация: 13-09-09
Пользователь №: 52 331

|
Цитата(SM @ Dec 14 2009, 09:46)  "PAL 60" IMHO. Он же "Pseudo PAL". Нечто игрушково-видаковское... И много ли телевизоров его поддерживают?
|
|
|
|
|
Dec 14 2009, 07:24
|
Частый гость
 
Группа: Участник
Сообщений: 118
Регистрация: 13-09-09
Пользователь №: 52 331

|
Цитата(SM @ Dec 14 2009, 10:04)  А я то откуда знаю?  Вообще лучше что-то более стандартное выбирать... Тот же NTSC 4.43 вернее будет. Или на 50 герц для ТВ перейти. 50 кадров никак нельзя! это ТЗ вот и маемся чтобы большинство телевизоров понимало в цвете 60 кадров /с какой стандарт выбрать: PAL 60 4.43 PAL 60 3.579 NTSC 4.43 или NTSC 3.579 что рапространённее у нас?
Сообщение отредактировал %-) - Dec 14 2009, 07:24
|
|
|
|
|
Dec 14 2009, 13:33
|
Частый гость
 
Группа: Участник
Сообщений: 118
Регистрация: 13-09-09
Пользователь №: 52 331

|
Цитата(SM @ Dec 14 2009, 10:34)  ну NTSC это все таки стандарт, особенно 3.59, его поддерживают вроде как все телики. Я бы наверное остановился на NTSC, а 4.43/3.59 если возможно сделал бы конфигурируемым.
А вообще - раз заказчик требует 60 герц, то пусть сам и скажет, в каком виде цвет ему выдать. рискнули предположить , что большинство телевизоров поддерживают Ntsc-3.579 и не ошиблись !!! у всех трёх цвета теперь корректны! P.S. полосы б на VGA - LCD как устранить?
|
|
|
|
2 чел. читают эту тему (гостей: 2, скрытых пользователей: 0)
Пользователей: 0
|
|
|