Перейти до вмісту

Display Data Channel

Матеріал з Вікіпедії — вільної енциклопедії.

Display data channel (дослівно Канал даних відображення) або DDC — набір протоколів для цифрового зв’язку між дисплеєм комп’ютера та графічним адаптером, які дозволяють дисплею передавати підтримувані режими відображення адаптеру, а комп’ютер регулює параметри монітора, наприклад яскравість чи контрастність.

Як і сучасні аналогові роз’єми VGA, роз’єми DVI та DisplayPort містять контакти для DDC, але DisplayPort підтримує лише DDC у своїй додатковій функції Dual-Mode DP (DP++ ) у режимі DVI/HDMI.

Стандарт був створений Асоціацією стандартів відеоелектроніки (VESA).

Загальна інформація

[ред. | ред. код]

Набір стандартів DDC має на меті забезпечити можливості керування живленням комп’ютерних дисплеїв за технологією Plug and Play і DPMS.

Протоколи DDC1 і DDC2B/Ab/B+/Bi — це фізичний зв’язок між монітором і відеокартою, який спочатку здійснювався на двох або трьох контактах у 15-контактному аналоговому роз’ємі VGA .

Розширені ідентифікаційні дані дисплея (англ. Extended Display Identification Data, EDID) є супутнім стандартом. Він визначає компактний двійковий формат файлу, що описує можливості монітора та підтримувані графічні режими, що зберігається в мікросхемі пам’яті лише для читання (EEPROM), запрограмованому виробником монітора. Формат використовує блок опису, що містить 128 байт даних, з додатковими блоками розширення для надання додаткової інформації. Найновішою версією є Enhanced EDID (E-EDID) Release A v2.0.

Перша версія стандарту DDC була прийнята в серпні 1994 року. Він включав формат EDID 1.0 і визначав фізичні посилання DDC1, DDC2B і DDC2Ab.

DDC версії 2, представленої в квітні 1996 року, розділив EDID в окремий стандарт і представив протокол DDC2B+.

DDC версії 3 у грудні 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. У цій схемі вхідні стани ідентифікаційних контактів кодуватимуть тип монітора таким чином:[1][2]

ID2 (контакт 4) ID0 (контакт 11) ID1 (контакт 12) Тип монітора
n/c n/c n/c монітор не підключено
n/c n/c GND < 1024×768, монохромний
n/c GND n/c < 1024×768, кольор
GND GND n/c ≥ 1024×768, кольоровий

Існували також більш складні схеми, які використовували всі 4 ідентифікаційні контакти під час маніпулювання сигналами HSync і VSync, щоб отримати 16 біт (4 значення ідентифікаційних контактів для кожної з 4 комбінацій станів HSync і VSync) ідентифікації монітора.[3]

DDC змінив призначення ідентифікаційних контактів для включення інтерфейсу послідовного зв'язку . Однак під час переходу зміни не були зворотно сумісними, і відеокарти, які використовують стару схему, могли мати проблеми, якщо підключити монітор із підтримкою DDC.[4] Сигнал DDC може бути надісланий до або з монітора відеографічної матриці (VGA) з протоколом I2C за допомогою послідовного генератора частот головного пристрою та контактів послідовних даних.

DDC1 — це простий, низькошвидкісний, односпрямований протокол послідовного з’єднання. 12 контакт, ID1 виконує функції лінії даних, яка безперервно передає 128-байтовий блок EDID, а тактова частота даних синхронізується з вертикальною синхронізацією, забезпечуючи типову тактову частоту від 60 до 100 Гц.

Найпоширеніша версія під назвою 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, який дозволив виробникам моніторів підтримувати зовнішні периферійні пристрої, такі як миша або клавіатура, практично без додаткових зусиль. Такі пристрої та монітори ненадовго були доступні в середині 1990-х років, але зникли з появою USB.

DDC2B+ і DDC2Bi — це зменшені версії DDC2Ab, які підтримують лише пристрої монітора та відеокарти, але все ще дозволяють двонаправлений зв’язок між ними.

DDC2 не є ексклюзивним для роз’єму VGA, оскільки роз’єми DVI та HDMI мають спеціальні дроти DDC2B.

Стандарт DDC/CI (англ. command interface, командний інтерфейс) був представлений у серпні 1998 року. Він визначає засоби для надсилання комп’ютером команд на монітор, а також отримання даних від датчиків монітора через двонаправлене з’єднання. Спеціальні команди для керування монітором визначено в окремому стандартному наборі команд керування монітором (англ. Monitor control command set - MCCS) версії 1.0, випущеному у вересні 1998 року.

Монітори такого стандарту іноді постачаються із зовнішнім датчиком кольору, щоб забезпечити автоматичну зміну колірного балансу. Деякі монітори із можливістю нахилу підтримують функцію автоматичного повороту, коли датчик обертання в дозволяє операційній системі підтримувати дисплей у вертикальному положенні, коли монітор переходить між портретним і альбомним положеннями.

Більшість моніторів DDC/CI підтримують лише невеликий набір команд MCCS, а деякі мають недокументовані команди. Багато виробників раніше не звертали уваги на DDC/CI, але зараз майже всі монітори підтримують такі загальні команди MCCS, як керування яскравістю та контрастністю.[a]

DDC/CI версія 1.1 була прийнята в жовтні 2004 року.[7]

Підтримка DDC/CI з боку операційної системи

[ред. | ред. код]

Незважаючи на повсюдне поширення на дисплеях після 2016 року, DDC/CI зазвичай не використовується операційною системою за замовчуванням для керування яскравістю.[8] Для надсилання команд на дисплей можна використовувати додаткове програмне забезпечення, але ступінь системної інтеграції може бути різним.

Enhanced Display Data Channel (E-DDC, розширений канал даних відображення) — це остання версія стандарту DDC. Найперша версія була представлена у вересні 1999 року та містила додавання вказівника сегмента, що дозволяло зберігати інформацію на дисплеї до 32 Кбайт для використання стандартом Enhanced EDID (E-EDID).

У попередніх реалізаціях DDC використовувався 8-бітний зсув даних під час зв’язку з пам’яттю EDID у моніторі, обмежуючи її розмір до 256 байтів, але дозволяв використовувати дешеві 2-кілобітні постійні запам'ятовувачі (EEPROM). В E-DDC була введена спеціальна схема адресації I²C, у якій можна було вибрати кілька 256-байтних сегментів. Для цього єдиний 8-бітний індекс сегмента передається на дисплей через адресу 30h шини I²C. Потім дані з вибраного сегмента зчитуються через звичайну адресу DDC2 за допомогою повторного сигналу "START" на шину I²C. Однак специфікація VESA визначає діапазон значень індексу сегмента від 00h до 7Fh, тому це дозволяє адресувати лише 128 сегментів по 256 байтів = 32 Кілобайти. Регістр індексу сегмента є мінливим, за замовчуванням він нульовий і автоматично скидається після кожного сигналу "NACK" або "STOP". Таким чином, його потрібно встановлювати кожного разу, коли виконується доступ до даних вище першого 256-байтового сегмента. Механізм автоматичного скидання призначений для забезпечення зворотної сумісності, наприклад, з хостами DDC2B, інакше вони можуть застрягти в сегменті, відмінному від 00h у деяких рідкісних випадках.

Іншими важливими змінами були видалення протоколів DDC1 і DDC2Ab, припинення підтримки окремих адрес пристроїв VESA P&D і FPDI, а також уточнення вимог до живлення пристроїв на основі DDC.

Версія E-DDC 1.1, схвалена в березні 2004 року, містила підтримку HDMI.

Версія E-DDC 1.2, затверджена в грудні 2007 року, представила підтримку стандартів DisplayPort (який не має виділених каналів DDC2B і використовує свій двонаправлений допоміжний канал для зв’язку EDID і MCCS) та DisplayID.

Версія E-DDC 1.3 від вересня 2017 року містить виправлення помилок і незначні уточнення.

Вимкнення DDC

[ред. | ред. код]

Деякі перемикачі KVM (клавіатура-відео-миша) і розширювачі відео неправильно обробляють трафік DDC, через що необхідно вимкнути функції Plug&Play в операційній системі та, можливо, навіть фізично видалити 12 контакт з кабелів VGA.[9]

Microsoft Windows містить стандартний драйвер "Plug and Play Monitor" який використовує інформацію дисплея для створення списку підтримуваних режимів монітора. Аплет панелі керування роздільною здатністю дисплея дозволяє користувачеві вимкнути функції Plug and Play цього драйвера та вручну вибрати будь-яку роздільну здатність або частоту оновлення, які підтримуються відеокартою.[10] Багато виробників відеокарт надають програми керування, які дозволяють користувачеві вибирати спеціальний режим відображення, який не відповідає інформації EDID або монітору із файлу з розширенням .INF.

Див. також

[ред. | ред. код]

Список літератури

[ред. | ред. код]
  1. Patent US5285197 – Method and apparatus for automatic selection of scan rates for enhanced VGA-compatible monitors
  2. http://pinouts.ru/Video/VGA15_pinout.shtml
  3. PS/2 Video Subsystem Technical Reference Manual, Preliminary Draft May 19th 1992
  4. Enhanced Display Data Channel Standard, Version 1.1[недоступне посилання з 01.09.2017]
  5. Poynton, Charles. "Brightness" and "Contrast" controls. poynton.ca. Процитовано 17 листопада 2020.
  6. Patek, Marcel. LCD Displays - liquid crystals - gamut - phosphors - polarization. Digital Photography.
  7. VESA Standards Summaries: Display Data Channel Command Interface (DDC/CI) Standard, Version 1.1(VESA document VESA-2004-10)
  8. What is DDC/CI and How to Use It. Appuals.com. 21 лютого 2019.
  9. Lyosha Blinnikov. Allowing any screen resolution on Vista. I performed this mod on an old 6" patch cable that was previously used for connecting a 3D accelerator. I call it my "freedom cable", as it can be connected to any monitor to temporarily disable its EDID :D
  10. You Cannot Select the Highest Monitor Graphics Modes. Архів оригіналу за 15 квітня 2011. Процитовано 12 жовтня 2009.

Коментарі

[ред. | ред. код]
  1. Note that MCCS glosses over the difference in how CRT and LCD or newer displays interpret brightness and contrast settings: adjusting LCD brightness affects overall luminance, which is the same as "contrast" on CRTs. LCD "contrast" instead adjusts the white level.[5][6]