Plutonium
#19
20 августа 2001 |
|
Программирование - формирование изображения на экране монитора (продолжение).
............................................................ ФОРМИРОВАНИЕ ИЗОБРАЖЕНИЯ НА ЭКРАНЕ МОНИТОРА: ОБЩИЕ ПРИНЦИПЫ (компиляция, продолжение) ............................................................ (с) Tertius Gaudens 2.4 Количество строк развертки Z оределяется исходя из пространственной частотной харак- теристики системы зрения. Установлено, что при расстояниях до 5-ти высот кадра достаточно Z = 660. При других угловых размерах достаточно Z в пределах [720; 2400], т.е дальнейшее увеличение Z не улучшает качество воспроизведения. Для чересстрочной развертки в европейских ТВ системах при- нято А ох А ох Z = Z 4 0 + Z 4 0 = 2Zп 4 0= 2(Zп + Zп ) = 625 = = 575 + 50 = 2*312,5 = 2(288 + 24,5) А где Z 5 0- количество активных (воспроизводимых на экране) строк кадра; ох Z - количество строк обратного хода (ОХ); Zп - количество строк в поле. Аналогично для НТСЦ Z = 525 = 452 + 73 = 2*262,5 = 2(226 + 36,5) Соответственно при построчной развертке на основе евро- пейского ТВ стандарта Z = 312 = 287 + 25 Для НТСЦ Z = 262 = 225 + 37 Частота развертки строки в стандарте 50/625 составляет F 4с 0= F 4к 0* Z = 25 Гц * 625 = 15,625 кГц При этом допускаемое стандартом отклонение строчной часто- ты составляет F 4с 0= 15625 +/- 7 03 Гц Отсюда можно получить допустимое отклонение кадровой час- тоты. Соответственно длительность строки составляет Tc 4 0= 1/Fc 4 0= 64 мкс при длительности ее активной части A ох Тc = Tc - Тc = 64 - 12 = 52 мкс ох где Т 4с 0 - длительность ОХ строки. А В НТСЦ Fс 4 0= 29,97*525 = 15,734 кГц, Тс 4 0= 63,55 мкс, Тс 5 0=52,6 мкс. При построчной развертке требования к быстродействию по- вышаются: пр чр Fк = 2Fк Отсюда необходимо, чтобы или пр чр Fс = 2Fс , или пр чр Z = Z /2 Вляние Z на качество восприятия оценивается исходя из фак- тической детальности изображения, которая составляет А 2 N = (Ф*Z ) Учитывая логарифмический характер восприятия глаза, можно А вычислить, что уменьшение Z 5 0вдвое уменьшает количество воспринимаемых элементарных деталей (элементов разложения изображения, пиксел, ПЕЛ) только на 13%. Из этого следует, что для качества восприятия Fк 4 0 имеет го- А раздо большее значение, чем Z . Именно поэтому при работе с дисплеем больше подходит построчная развертка на основе НТСЦ, а не европейский ТВ стандарт. 2.5 Полоса пропускания Необходимая частота дискретизации видеосигнала fd 4 0зависит от частоты среза df, определяемой как максимальная частота спектра относительно сигнала, разложенного в ряд Фурье. При этом, согласно теореме Котельникова необходимо, чтобы fdmin = 2df. Для гарантированного обеспечения качесва сигнала при его обратном преобразовании в аналоговую форму fd 4 0выбирают, исходя из условия fd 4 0> fdmin = 2df fd 4 0= Г*Fс где Г 7 0- количество гармоник, на какие разлагается сигнал. Отсюда можно получить общее выражение для разложения изоб- ражения: 2 Тк = Ф*Z /(2df*hr) A A hr = (Z /Z)*(Тc /Tc) где hr - коэффициент эффективности развертки. Кстати, подставляя справочные значения, можно получить 625 525 hr = 0,75; hr = 0,71 В ПАЛ принята df = 5,5, в НТСЦ - 5,01, в СЕКАМ - 6,5 мГц. Для всех ТВ систем принята fd 4 0= 13,5 мГц. Она является гар- моникой частоты 2,25 мГц - наименьшего общего кратного в системах с разложением на 525 (Г 7 0= 143) и 625 (Г 7 0= 144) строк. Отсюда для ПАЛ/СЕКАМ количество отсчетов - в строке Nx 4 0= A 864, в активной части строкм Nx 5 0= 702, длительнлсть отсчета td 4 0= 74,1 нс. A Для НТСЦ Nx = 858 и Nx = 710. Поскольку при построчной развертке количество строк вдвое менье, то значение Nx 4 0тоже соответственно уменьшается: для ПАЛ/СЕКАМ fd 4 0= 6,75 МГц; td 4 0= 148,2 (приблизительно 7 0150) нс; A Nx 4 0= 432; Nx = 351; df = 3,375 МГц. Сопоставим эти данные с требованиями к дискретизации зву- ка. Диапазон, воспринимаемый ухом - 2 Гц...20 кГц. Исходя из этого, частота дискретизации звука принята равной зв зв 2df 5 0 < fd = 44 кГц Это примерно в 2,6 раза выше, чем Fс. 2.6 Погрешность дискретизации Для того, чтобы избежать геометричних искажений по гори- зонтали (растягивания или сжатия), необходимо обеспечить A A Nx = Z *Ф С учетом этого A A A A fdг 4г 0 = Nx/Тc = Z *Ф/Тc A A tdг = 1/fdг = Тc /Z *Ф Отсюда желательная длительность дискретизации tdг 4 составит: для развёртки типа 50/625 - 67,83, для 60/525 - 87,28 нс. Поскольку длительность отображения элемента разложения (пикселя, ПЭЛ) tпэл 4 0определяет размер ПЭЛ по горизонтали, геометрическая погрешность дискретизации, %, составит dг 4 0= [(td - tdг)/tdг]*100 Отсюда для 50/625 dг = +9%, для 60/525 dг = -15%. 2.7 Пример реализации Рассмотрим возможность формирования сигналов ТВ синхрони- зации на примере МК КР1816ВЕ31. Учитывая, что этот МК содержит делитель на 12, максималь- ная частота исполнения команд составляет 1 МГц (длительность такта - 1мкс). Это позволяет непосредственно использовать МК. ───────────────────┬────────────────────┬─────── │Длительность, мкс │Погрешн. Название ├───────────┬────────┼───┬─── │необхо- │обеспе- │ПЭЛ│ % │димая │чиваемая│ │ ───────────────────┼───────────┼────────┼───┼─── Передний уступ │1,5 +/- 0,3│ 2 │ 4 │0,8 Строчный синхроимп.│4,7 +/- 0,2│ 4 │ 4 │1,1 Выравнивающий имп. │2,35+/- 0,1│ 2 │ - │0,6 Синхроимп. поля │ 27,3 │ 28 │ - │1,1 Врезка │4,7 7 0+/- 0,2│ 4 │ - │1,1 Строчн. гасящий имп│12 7 0+/- 0,3│ 12 │ 0 │0 ───────────────────┴───────────┴────────┴───┴─── Погрешность, создаваемая применением МК при td 4 0= 150 нс, определена через количество ПЭЛ и относительно длитель- ности строки: dN = (tз - tн)/td dt 4 0= [(to - tн)/Tс]*100 где tз - длительность, которую обеспечивает МК; tн - стандартная длительность. 3 Компьютерная графика 3.1 Восприятие Попробуем рассмотреть некоторые особенности, отличающие компьютерную графику от ТВ изображения. В ТВ системотехнике генераторы строчной развертки и высо- кого напряжения совмещены. Это приводит к некоторой зависи- мости горизонталного размера изображения и его интегральной яркости - и при воспроизведении компьютерной графики это имеет больше значения, чем в случае ТВ картинки. На различия в восприятии могут также влиять: - внешняя засветка; - интегральная яркость изображения; - аудитория - ее количество, состав, эмоциональный наст- рой, степень концентрации внимания (это я к тому, что, нап- ример, просматривать демки в одиночку и "на фестивале" - две большие разницы); - угловой размер экрана - при большом размере проявляется строчная структура изображения (чтобы этого избежать, в слу- чае ТВ изображения применяют гребенчатый фильтр, удвоение строк, повышение кадровой частоты и т.п.). Качество стандартного ТВ разложения вполне удовлетвори- тельно, если рассматривать его В ЦЕЛОМ (и то - при опреде- ленных углах зрения, уровнях яркости, внешней засветки). Но попробуйте сконцентроровать внимание на отдельных деталях (например, на номере игрока при общем плане матча) - и что тогда? Этим и объясняются повышенные требования к ТВЧ и ЭВМ. Отдельного рассмотрения заслуживает синтез общего изобра- жения из двух кадров при Fк 4 0= 50 Гц. Если оба исходных изоб- ражения отличаются незначительно - тогда все в порядке. Но при попытке, например, синтезировать новый цвет, зачастую получается мерцающее изображение. 3.2 Отображение на Спектруме Исходя из максимально допустимой тактовой частоы процессо- ра Z80 Fпр 4 0= 3,5 МГц в большинстве Спектрумов принята такто- вая частота Fси 4 0= 14 МГц (применяется также 14,5...15,0 МГц). Соответственно, коэффициент пересчета - kп = Fси:Fпр = 4 Частота выборки - Fпэл 4 0= Fси/2 = 7 МГц Следовательно, в стандарте 50/625 число гармоник строчной частоты - Г = Nx= Fcи : Fс 4 0= 7000 : 15,625 = 448 В то же время для 60/525 Г = 7000 : 15,734 = 444,9 (приблизительно) Это указывает на несовместимость как с НТСЦ, так и с боль- шинством современных компьютерных мониторов. Длительность ПЭЛ - tпэл = 1/Fпэл = 143 нс (приблизительно) Отсюда показатели строчной развертки составят: Tс = 64 мкс = 448 ПЭЛ А Tс = 52 мкс = 364 ПЭЛ ох Tс = 12 мкс = 84 ПЭЛ /───────────────────────Tс───────────────────────/ │ А ох │ /──────────────────Tс────────────────────/──Tс───/ │ │tу tси │ /─tв─/─────────────tс──────────────/ /-/───/ │ │ │ │ │ │ │ │ /───/───/─┌───────────────────────────────────────┐─┬───┬──┐ │ │ Zв│ │ /─/-tзн 2 BORDER 2 │ │ │ │ │ │ /─│ ┌─┬───────────────────────────┐ │ │ │ │ │ │Zзн/─│ ├─┘ │ │ │ │ │ │ │ │ │ │ PAPER 2 │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ А│ │ │ │ │ │ │ │ │ │ Z │ Zр│ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ Z │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ /─│ └─────────────────────────────┘ │ │ │ │ │ │ │ │ │ │ │ │ ох/───/─└───────────────────────────────────────┘─┴───┴──┤ │Z │Zси/─├───────────────────────────────────────┬─┬───┬──┤ │ │ │ │ │ │ │ /───/─────└───────────────────────────────────────┴─┴───┴──┘ При стандартной длительности строчного синхроимпульса 4,7 +/- 0,2 и его переднего уступа 1,5 +/- 0,3 мкс может быть реали- зовано, соответственно tси = 32 ПЭЛ = 4,6 мкс tу = 10 ПЭЛ = 1,4 мкс ох В числе Z 5 0 = 25 строк содержатся Zси 4 0= 9 строк синхрони- зации, из которых 3 средние строки отводятся под кадровые синхроимпульсы, а прочие 6 - под выравнивающие (их при рабо- те с мониторами обычно не формируют). Информационное поле (PAPER) разбивается на знакоместа, имеющие размерность 8х8 ПЭЛ: tзн = 0,143*8 = 1,14 мкс Zзм = 8 строк Приняв, что формируемое изображение "раскрашивается" по знакоместам, получим частоту дискретизации цвета: цв fd = fd/8 = 875 кГц Цвет передают 3 бита RGB и 1 бит яркости, т.е. всего - 16 градаций, что соответствует количеству уверенно идентифици- руемых цветов. PAPER имеет размерность tp = 36,6 мкс = 256 ПЭЛ = 32 знакоместа Zp = 192 строки = 24 знакоместа Ф = tp:Zp = 4:3 Обрамление информационного поля (BORDER) имеет размеры A tb = (Tc - tp)/2 = 7,7 мкс = 54 ПЭЛ A Zb = (Z - Zp)/2 = 48 строк zx tv При Fси 5 0= 14 МГц отклонение от Fси 5 0= 13,5 МГц - 3,7%, а геометрическая погрешность дискретизации составляет zx tv dг = +5,3% < dг = +9% 3.3 Реализация адресных счетчиков Подсчет Nx 4 0= 448 особых трудностей не представляет. Для этого достаточно двух четырехразрядных двоичных счетчиков (типа ИЕ7) и одного T-триггера: Nx 4 0= 448 = 16*28 = 16*(16 + 12) С подсчетом же Z = 312 дело обстоит гораздо сложнее. В ка- честве примера рассмотрим "ленинградский вариант". В нем Z = 312 = 16*12 + 16*7 + 8 После того, как счетчики CTY1 и CTY2 совместно делают 16*12 = 192 отсчетов, CTY2 устанавливается в состояние "8", и делается 16*7 = 112 отсчетов, затем CTY1 устанавливается в состояник "7" и делает остающи- еся 8 отсчетов. Для реализации этого алгоритма используются 2 корпуса ИЕ7, корпус ТМ2 и корпус ЛА3. Разработчики "Пентагона" "пошли другим путем". Ничтоже сумняшеся, они приняли Z = 320, чем, конечно, значительно упростили себе жизнь: Z = 320 = 256 + 64 = 16*10*2 В этом случае специальная схема дешифрации вообще не нужна (правда, аппаратный выигрыш по сравнению с "ленинградским вариантом" - практически никакой). При этом 320 Fк = 15,625 : 320 = 48,8 Гц Это составляет отклонение от стандарта в -2,3%. Утверждается, что за счет незначительного ухудшения эффек- тивности и эргономики развертки эти самые дополнительные 8 строк обратного хода придают дополнительные возможности для формирования динамического изображения. Мол, 512 мкс - это как раз то, чего не хватает для полного счастья при кадровой частоте прерываний. Но... Вам оно надо?! Удовлетворительную динамику, напомню, обеспечивает 25 Гц. Следовательно, доостаточно делать прерывание только в каждом втором, а, учитывая, что применяемая частота дискретизации в 2 раза меньше телевизионной, то и в каждом четвертом кадре. * * *
Другие статьи номера:
Похожие статьи:
В этот день... 21 ноября