Канал данных дисплея , или DDC , представляет собой набор протоколов для цифровой связи между дисплеем компьютера и графическим адаптером, которые позволяют дисплею передавать свои поддерживаемые режимы отображения адаптеру и которые позволяют хосту компьютера настраивать параметры монитора, такие как яркость и контраст.
Как и современные аналоговые разъемы VGA, разъемы DVI и DP включают в себя контакты для канала данных дисплея (DDC), но DP поддерживает DDC в рамках своей дополнительной функции Dual-Mode DP ( DP ++ ) только в режиме DVI / HDMI.
Стандарт был создан Ассоциацией стандартов видеоэлектроники (VESA).
Обзор
Набор стандартов DDC нацелен на предоставление компьютерных дисплеев возможности « подключи и работай ».
Протоколы DDC1 и DDC2B / Ab / B + / Bi представляют собой физическое соединение между монитором и видеокартой, которое изначально было выполнено на двух или трех контактах 15-контактного аналогового разъема VGA .
Расширенные идентификационные данные дисплея (EDID) являются дополнительным стандартом; он определяет компактный двоичный формат файла , описывающий возможности монитора и поддерживаемые графические режимы, хранящийся в микросхеме постоянной памяти (EEPROM), запрограммированной производителем монитора. Формат использует блок описания, содержащий 128 байтов данных, с дополнительными блоками расширения для предоставления дополнительной информации. Самая последняя версия - Enhanced EDID (E-EDID) Release A, v2.0 .
Первая версия стандарта DDC была принята в августе 1994 года. Он включал формат EDID 1.0 и определял физические каналы DDC1, DDC2B и DDC2Ab.
Версия 2 DDC , представленная в апреле 1996 года, выделила EDID в отдельный стандарт и представила протокол DDC2B +.
Версия 3 DDC , декабрь 1997 г., представила протокол DDC2Bi и поддержку VESA Plug and Display и Flat Panel Display Interface на разных адресах устройств, что требует от них соответствия EDID 2.0.
Стандарт DDC был заменен E-DDC в 1999 году.
Физическая ссылка
До DDC стандарт VGA зарезервировал четыре контакта в аналоговом разъеме VGA , известные как ID0, ID1, ID2 и ID3 (контакты 11, 12, 4 и 15) для идентификации типа монитора. Эти идентификационные контакты, прикрепленные к резисторам для заземления одного или нескольких из них (GND), позволяли определять тип монитора, при этом все разомкнутые (н / з, не подключены) означают «нет монитора».
В наиболее часто документированной схеме вывод ID3 не использовался, и были определены только 3 оставшихся контакта. Цветные мониторы подтягивают ID0 к GND, а монохромные мониторы подтягивают ID1 к GND. Наконец, ID2, подключенный к GND, сигнализировал о мониторе с разрешением 1024 × 768, таком как IBM 8514 . В этой схеме входные состояния контактов ID будут кодировать тип монитора следующим образом: [1] [2] [3]
ID2 (вывод 4) | ID0 (вывод 11) | ID1 (вывод 12) | тип монитора |
---|---|---|---|
н / п | н / п | н / п | монитор не подключен |
н / п | н / п | GND | <1024 × 768, монохромный |
н / п | GND | н / п | <1024 × 768, цвет |
GND | GND | н / п | ≥ 1024 × 768, цветной |
Существовали также более сложные схемы, в которых использовались все 4 контакта ID при манипулировании сигналами HSync и VSync для извлечения 16 битов (значения 4 контактов ID для каждой из 4 комбинаций состояний HSync и VSync) идентификации монитора. [4]
DDC изменил назначение контактов ID, чтобы включить интерфейс последовательной связи . Однако во время перехода изменение не было обратно совместимым, и видеокарты, использующие старую схему, могли иметь проблемы, если был подключен монитор с поддержкой DDC. [5] Сигнал DDC может быть отправлен на или от монитора видеографического массива (VGA) по протоколу I 2 C, используя тактовые импульсы ведущего устройства и выводы последовательных данных.
DDC1
DDC1 - это простой низкоскоростной однонаправленный протокол последовательной связи . Контакт 12, ID1, функционирует как линия данных, которая непрерывно передает 128-байтовый блок EDID, а тактовая частота данных синхронизируется с вертикальной синхронизацией , обеспечивая типичные тактовые частоты от 60 до 100 Гц.
Очень немногие устройства отображения реализуют этот протокол.
DDC2
Наиболее распространенный вариант, называемый DDC2B , основан на I²C , на последовательной шине . Контакт 12, ID1 разъема VGA теперь используется как контакт данных от шины I²C, а ранее неиспользуемый контакт 15 стал тактовым сигналом I²C; штырь 9, ранее использовавшийся в качестве механического ключа, подавал питание +5 В постоянного тока до 50 мА для управления EEPROM, это позволяет хосту считывать EDID, даже если монитор выключен. Хотя I²C является полностью двунаправленным и поддерживает несколько мастеров шины , DDC2B является однонаправленным и допускает только один мастер шины - графический адаптер. Монитор действует как ведомое устройство по 7-битному адресу I²C 50h и предоставляет 128–256 байтов EDID, доступного только для чтения . Поскольку этот доступ всегда является чтением, первым октетом I²C всегда будет A1h.
DDC2Ab - это реализация интерфейса ACCESS.bus со скоростью 100 кбит / с на базе I²C , который позволил производителям мониторов поддерживать внешние периферийные устройства ACCESS.bus, такие как мышь или клавиатура, практически без дополнительных усилий; такие устройства и мониторы были кратковременно доступны в середине 1990-х годов, но исчезли с появлением USB .
DDC2B + и DDC2Bi - это уменьшенные версии DDC2Ab, которые поддерживают только устройства с мониторами и видеокартами, но по-прежнему позволяют двустороннюю связь между ними.
DDC2 не является эксклюзивным разъемом VGA, так как разъемы DVI и HDMI имеют специальные провода DDC2B.
DDC / CI
Стандарт DDC / CI ( командный интерфейс ) был представлен в августе 1998 года. Он определяет средства для компьютера, чтобы посылать команды на монитор, а также получать данные датчиков от монитора по двунаправленному каналу. Конкретные команды для управления мониторами определены в отдельном стандартном наборе команд управления монитором (MCCS) версии 1.0, выпущенном в сентябре 1998 года.
Мониторы DDC / CI иногда поставляются с внешним датчиком цвета для автоматической калибровки цветового баланса монитора. Некоторые наклонные мониторы DDC / CI поддерживают функцию автоматического поворота, при которой датчик поворота в мониторе позволяет операционной системе удерживать дисплей в вертикальном положении при перемещении монитора между его портретным и альбомным положениями.
Большинство мониторов DDC / CI поддерживают только небольшое подмножество команд MCCS, а некоторые имеют недокументированные команды. Многие производители раньше не обращали внимания на DDC / CI, но теперь почти все мониторы поддерживают такие общие команды MCCS, как управление яркостью и контрастностью. [а]
Стандарт DDC / CI описывает полный набор протоколов двунаправленного управления - DDC2Ab, DDC2Bi и DDC2B + - в едином стандарте и предоставляет средства для упаковки команд набора команд управления монитором.
Версия 1.1 DDC / CI была принята в октябре 2004 г. [8]
Версия 2.0 набора команд управления монитором была принята в октябре 2003 года. Новая версия MCCS V3 была представлена в июле 2006 года, но еще не получила достаточного внимания в отрасли. Последним выпуском стандарта V2 является версия 2.2, принятая в феврале 2009 года.
Поддержка ОС для DDC / CI
Несмотря на его повсеместное распространение на дисплеях после 2016 года, DDC / CI обычно не используется операционной системой по умолчанию для управления яркостью на внешних дисплеях. [9] Для отправки команд на дисплей можно использовать дополнительное программное обеспечение, но степень интеграции системы может быть разной.
Windows предоставляет DDC / CI как серию Win32 API конфигурации монитора . [10]
E-DDC
Расширенный канал данных дисплея ( E-DDC ) - это самая последняя версия стандарта DDC. Версия 1 была представлена в сентябре 1999 года и отличалась добавлением указателя сегмента, который позволял хранить до 32 Кбайт отображаемой информации для использования стандартом Enhanced EDID (E-EDID).
Более ранние реализации DDC использовали простое 8-битное смещение данных при обмене данными с памятью EDID в мониторе, ограничивая размер хранилища до 2 8 байтов = 256 байтов, но позволяя использовать дешевые 2-килобитные EEPROM. В E-DDC была введена специальная схема адресации I²C, в которой можно было выбрать несколько 256-байтовых сегментов. Для этого на дисплей передается один 8-битный индекс сегмента через адрес I²C 30h. (Поскольку этот доступ всегда является записью, первый октет I²C всегда будет 60h.) Данные из выбранного сегмента затем немедленно считываются через обычный адрес DDC2 с использованием повторяющегося сигнала I²C «START». Однако спецификация VESA определяет диапазон значений индекса сегмента от 00h до 7Fh, поэтому это позволяет адресовать только 128 сегментов × 256 байтов =32 КБ . Регистр индекса сегмента является энергозависимым, по умолчанию устанавливается в ноль и автоматически сбрасывается в ноль после каждого NACK или STOP. Следовательно, его необходимо устанавливать каждый раз, когда выполняется доступ к данным выше первого 256-байтового сегмента. Механизм автоматического сброса предназначен для обеспечения обратной совместимости, например, с хостами DDC2B, иначе в некоторых редких случаях они могут застрять в сегменте, отличном от 00h.
Другими важными изменениями были удаление протоколов DDC1 и DDC2Ab, отказ от поддержки отдельных адресов устройств VESA P&D и FPDI, а также уточнения требований к питанию DDC.
Версия 1.1 E-DDC , утвержденная в марте 2004 г., поддерживает HDMI и бытовую электронику.
Версия 1.2 E-DDC , утвержденная в декабре 2007 г., представила поддержку DisplayPort (который не имеет выделенных каналов DDC2B и использует свой двунаправленный вспомогательный канал для связи EDID и MCCS) и стандартов DisplayID .
Версия 1.3 E-DDC от сентября 2017 года содержит исправления для исправлений и незначительные уточнения.
Отключение DDC
Некоторые KVM-переключатели (клавиатура-видео-мышь) и видеорасширители обрабатывают трафик DDC некорректно, из-за чего необходимо отключить в операционной системе функции plug and play монитора и, возможно, даже физически удалить контакт 12 (контакт последовательных данных) из аналоговых кабелей VGA [11], которые подключают такое устройство к нескольким ПК.
Microsoft Windows имеет стандартный драйвер «Plug and Play Monitor», который использует информацию EDID дисплея для создания списка поддерживаемых режимов монитора. Апплет панели управления «Разрешение экрана» позволяет пользователю отключить функции Plug and Play этого драйвера и вручную выбрать любое разрешение или частоту обновления, поддерживаемые видеокартой. [12] Многие производители видеокарт и третьи стороны предоставляют управляющие приложения, которые позволяют пользователю выбирать пользовательский режим отображения, который не соответствует информации EDID или файлу .INF монитора.
Смотрите также
- Канал управления дисплеем
- Расширенные идентификационные данные дисплея
- Обратный DDM
Заметки
- ^ Обратите внимание, что MCCS скрывает разницу в том, как ЭЛТ и ЖК-дисплеи или более новые дисплеи интерпретируют настройки яркости и контрастности: регулировка яркости ЖК-дисплея влияет на общую яркость, которая аналогична «контрастности» на ЭЛТ. LCD "Contrast" вместо этого регулирует уровень белого. [6] [7]
Рекомендации
- ^ Патент US5285197 - Способ и устройство для автоматического выбора скорости сканирования для улучшенных VGA-совместимых мониторов.
- ^ http://www.cs.nyu.edu/~mwalfish/classes/15sp/ref/hardware/vgadoc/PINOUT.TXT
- ^ http://pinouts.ru/Video/VGA15_pinout.shtml
- ^ Техническое справочное руководство по подсистеме видео PS / 2, предварительный проект, 19 мая 1992 г.
- ^ Расширенный стандарт канала данных дисплея, версия 1.1 [ постоянная мертвая ссылка ]
- ^ Пойнтон, Чарльз. « » Яркость «и„Контраст“контроль» . poynton.ca . Дата обращения 17 ноября 2020 .
- ^ Патек, Марсель. «ЖК-дисплеи - жидкие кристаллы - цветовая гамма - люминофоры - поляризация» . Цифровая фотография .
- ^ Краткое описание стандартов VESA: стандарт командного интерфейса канала данных дисплея (DDC / CI), версия 1.1 (документ VESA VESA-2004-10)
- ^ «Что такое DDC / CI и как его использовать» . Appuals.com . 21 февраля 2019.
- ^ «Конфигурация монитора - приложения Win32» . docs.microsoft.com .
- ^ Леша Блинников. «Разрешить любое разрешение экрана в Vista» .
Я выполнил этот мод на старом 6-дюймовом патч-кабеле, который ранее использовался для подключения 3D-ускорителя. Я называю его своим «кабелем свободы», так как его можно подключить к любому монитору, чтобы временно отключить его EDID: D
- ^ http://support.microsoft.com/kb/309569
- Стандарт расширенных данных идентификации дисплея (EDID) , версия 3, 1997 г., VESA
- Часто задаваемые вопросы по стандартам VESA
- Интерфейсы дисплея: основы . Боб Майерс, Роберт Л. Майерс, Общество отображения информации
Внешние ссылки
- Linux
- ddcci-driver-linux : драйвер ядра Linux, поддерживающий управление подсветкой для мониторов, поддерживающих DDC / CI
- ddccontrol : программное обеспечение Linux, которое использует DDC / CI для управления мониторами, поддерживающими этот протокол (похоже, поддерживается на github )
- ddcutil : (ранее ddctool) программное обеспечение Linux для запроса и изменения настроек монитора через DDC / CI.
- MonitorDarkly : доказательство концепции использования мониторов над расширениями DDC / CI, зависящими от поставщика
- Окна
- softMCCS : программное обеспечение Windows, которое использует DDC / CI для управления мониторами, поддерживающими этот протокол.
- Nicomsoft WinI2C / DDC : Windows Software Development Kit (SDK), который использует протоколы I2C и DDC / CI для управления мониторами (исключено из поддержки, загружаемые ZIP-файлы не содержат приложения)
- Monitorian : приложение с открытым исходным кодом, которое использует DDC / CI для изменения яркости с помощью значка на панели задач.
- Поднос Twinkle : похож на Monitorian
- Win10_BrightnessSlider : аналог Monitorian
- Mac
- DisplayBuddy : приложение Mac для управления функциями дисплея
- NativeDisplayBrightness : приложение минимальной яркости DDC для Mac OS X
- ddcctl : инструмент с открытым исходным кодом для запроса и изменения настроек монитора через DDC / CI.
- MonitorControl : инструмент с открытым исходным кодом для Mac, который использует DDC / CI для управления мониторами, поддерживающими этот протокол.
- Lunar : приложение с открытым исходным кодом, которое использует DDC для синхронизации яркости и контрастности основного дисплея Mac с внешними мониторами.