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
раза меньше телевизионной, то и в каждом четвертом кадре.

                             * * *






Темы: Игры, Программное обеспечение, Пресса, Аппаратное обеспечение, Сеть, Демосцена, Люди, Программирование

Похожие статьи:
BBS - список станций BBS ZXNet.
Обзор игрушек - Обзор новых игровых программ: ARENA
Pro-обзор - insanity#9 review: "Этот номер хотя и не был изначально ожидаем мною как скандальный, но после выхода таковым стал. Лично я остался если не избитым до смерти, то по крайней мере покалеченным"

В этот день...   17 ноября