Изменить стиль страницы
Как «разогнать» матрицу

Итак, задача формулируется следующим образом: сделать матрицу со средним, а не «ISO’шным» временем отклика порядка 10-20 мс. И оказывается, совершенствовать технологию TN+Film, добиваясь необходимых при классическом подходе 4-6 мс времени отклика по стандарту ISO вовсе не обязательно: усовершенствовав схему управления LCD-панелью, этого легко добиться для уже существующих, причем куда более медленных матриц! Достаточно сместить «рабочую точку» переключения всех пикселов в «быструю» область. Ведь если поворот жидких кристаллов происходит не мгновенно, то что нам мешает начать его быстро, а затем остановить «на полпути»?

Снова обратимся к графикам. Для начала взглянем, как в действительности происходит переключение субпиксела от полностью непрозрачного к полупрозрачным вариантам для нашей «усредненной матрицы» (рис. 4). А теперь представим, что мы используем LCD-панель, изображение на которой обновляется 60 раз в секунду (время обновления кадра 16,7 мс) и попробуем ее слегка «разогнать», приблизив время реакции матрицы к периоду обновления изображения. Введем некий гипотетический промежуточный цвет, для которого переключение матрицы будет довольно быстрым. Однако еще до того, как матрица успеет к этому цвету переключиться, остановим процесс на нужном нам промежуточном значении, изменив соответствующим образом напряжение на субпикселе во время следующего обновления экрана (отмечено жирной вертикальной чертой). Если все будет проделано правильно, получится следующее (рис. 5).

Не правда ли, впечатляет? Нанеся график времени отклика «усовершенствованной» матрицы на наш график (оранжевым цветом), мы увидим такую картину (рис. 6)[Маленький горбик в конце графика появился из-за того, что для достаточно большого изменения угла поворота кристаллов последние повернуться на этот угол за период обновления экрана все равно не могут].

Вот тебе и «медленная» матрица! Оказывается, что «глупая» прямолинейная схема управления, напрямую пересчитывающая желаемый уровень яркости субпиксела в соответствующее напряжение, не позволяет панели показать все, на что она способна. И если слегка доработать схему (чтобы она учитывала не только желаемый, но и уже существующий уровень яркости), то на нынешних матрицах нетрудно будет получить 60 и даже 100 Гц кадровой развертки. А это означает полное решение проблемы недостаточного времени отклика LCD-матриц.

Впрочем, я рассказал далеко не обо всех прелестях Overdrive. Дело в том, что модернизировать электронику собственно панели для использования этой технологии совершенно необязательно! Достаточно того, чтобы Overdrive поддерживала видеокарта! Ведь, в сущности, неважно, электроника ли панели «учтет» предыдущее значение цвета пиксела и выставит «быстрый» уровень сигнала (соответствующий некоторому псевдоцвету) на один период обновления экрана, или это за нее сделает графический процессор видеокарты, выдавая на LCD не «правильную» картинку, а скорректированную с учетом инерционности матрицы. Более того: LCD Overdrive средствами видеокарты - самая что ни на есть объективная реальность, поскольку в том или ином варианте поддерживается почти всеми производителями видеокарт. У ATI эта «фича» называется LRDC и входит в состав технологии LCD Enhancement Engine (LCD-EE); у nVidia - LCD overdrive и входит в технологию PureVideo, и для их активации достаточно лишь включить соответствующую технологию в настройках драйвера. О том, какие версии драйверов подходят для этой цели и где в них спрятаны соответствующие настройки, мы поговорим чуть ниже, а пока задумаемся над следующим вопросом.

Неужели все так хорошо?

Конечно же, нет! С технологией Overdrive связаны по меньшей мере две серьезные проблемы, каждая из которых может свести практический эффект от ее использования к нулю.

Во-первых, для работы Overdrive компьютеру требуется постоянно «держать в памяти» сразу два изображения: одно, которое панель в данный момент должна показывать, и второе, которое панель показывает в действительности. А ведь это - несколько мегабайт быстродействующей видеопамяти! Кроме того, требуется иметь очень точно составленные таблички (64x64 для 18-битных и 256x256 для 24-битных матриц) «псевдоцветов», которые нужно использовать при данном сочетании текущего и желаемого состояния субпиксела, и «результирующих цветов», показывающих, какой цвет будет при использовании этого псевдоцвета достигнут к моменту следующего обновления изображения матрицы, - вот и еще 128 Кбайт памяти и обслуживающей ее логики. Конечно, для современной видеокарты реализовать подобную систему не составляет большого труда (прошли те времена, когда все упиралось в медленную и дорогую видеопамять), однако не вполне понятно, откуда видеокарта возьмет эту 131 тысячу чисел, свойственную именно этой конкретной матрице. А LCD-монитор, напротив, прекрасно «осведомлен» о своих скоростных характеристиках (пользуясь специальным оборудованием, их нетрудно измерить), но для него динамическая коррекция картинки с учетом ее предыдущего состояния - принципиально новая и сложная в реализации задача, требующая специального DSP-процессора.

***
Журнал «Компьютерра» №31 от 30 августа 2005 года pic_4.jpg

Во-вторых, средств объективного контроля действительного состояния LCD-панели попросту не существует. А значит, использующая Overdrive система может лишь приближенно считать, что если 16,7 мс назад на такой-то субпиксел было подано такое-то напряжение, то сейчас он должен находиться в таком-то состоянии. В обычных системах небольшие ошибки и разброс параметров пикселов приводят к небольшим погрешностям в установившемся цвете панели; в Overdrive-системах подобные ошибки могут накапливаться и приводить не только к большим погрешностям в цветопередаче, но, в принципе, и к искажению получающихся картинок. С этим можно бороться, внося специальные ошибки в таблицы пересчета, однако полностью проблему это все равно не решает.

Таким образом, «Overdrive первого поколения» не совсем тот Overdrive, который я описал в предыдущем разделе, а лишь грубое его подобие. Вместо того чтобы подавать напряжение, которое за заданное время (соответствующее времени обновления экрана) переведет субпиксел в желаемое состояние, на него подается напряжение, переводящее его в некое промежуточное состояние, из которого потом можно довольно быстро переключиться к любому желаемому уровню цвета. К примеру, чтобы перейти из состояния "0" в состояние «200», можно вначале переключиться к «255», а затем скорректировать получившийся результат, переключившись на запрошенные «200». Если матрица очень быстро переключается между 0 и 255 и быстро же переключается между, скажем, состояниями из диапазона 190…254, то независимо от того, насколько точный результат нам дает первое переключение (к 255), мы получим требуемые 200 единиц прозрачности субпиксела существенно быстрее, чем если бы сразу переключались от 0 к 200. Реализовать такой Overdrive гораздо проще, он абсолютно устойчив к погрешностям и вдобавок не требует точной подстройки к матрице (достаточно грубых оценок ее производительности). Но зато теперь вылезла другая проблема - вместо плавного изменения цвета от темного к светлому у нас возникает характерная небольшая быстро гаснущая «вспышка», которую глаз может уловить. Увы, до разработки более сложных и совершенных систем управления панелью технологии придется мириться с этим недостатком.