stringtranslate.com

Видеографический массив

Video Graphics Array ( VGA ) — это контроллер видеодисплея и сопутствующий ему фактический графический стандарт, впервые представленный в линейке компьютеров IBM PS/2 в 1987 году, [1] [2] [3] который стал повсеместным в отрасли, совместимой с IBM PC, в течение трех лет. [4] Теперь этот термин может относиться к стандарту компьютерного дисплея , 15- контактному разъему D-subminiature VGA или разрешению 640 × 480, характерному для оборудования VGA. [5]

VGA был последним графическим стандартом IBM, которому соответствовало большинство производителей IBM PC-совместимых компьютеров, что сделало его наименьшим общим знаменателем , который можно было бы реализовать практически во всем графическом оборудовании ПК после 1990 года. [6]

VGA был адаптирован во множество расширенных форм третьими лицами, в совокупности известных как Super VGA [ 7], затем уступил место специальным графическим процессорам , которые, в дополнение к своим фирменным интерфейсам и возможностям, продолжают реализовывать общие графические режимы и интерфейсы VGA по сей день.

Стандарт аналогового интерфейса VGA был расширен для поддержки разрешений до 2048 × 1536 для общего использования, а специализированные приложения еще больше его улучшили. [ указать ] [8]

Аппаратная конструкция

Раздел VGA на материнской плате в IBM PS/55

Цветовая палитра оперативной памяти (RAM) и соответствующий ей цифро-аналоговый преобразователь (DAC) были интегрированы в один чип (RAMDAC ) , а контроллер электронно-лучевой трубки ( CRTC ) был интегрирован в основной чип VGA, что исключило несколько других чипов в предыдущих графических адаптерах, поэтому VGA дополнительно требовалось только внешнее видеоОЗУ и кристаллы синхронизации . [9] [10]

Это небольшое количество деталей позволило IBM включить VGA непосредственно на материнскую плату PS/2, в отличие от предыдущих моделей IBM PC – PC , PC/XT и PC AT  – которым требовался отдельный видеоадаптер, установленный в слот для подключения монитора. Термин «массив» вместо «адаптер» в названии обозначал, что это было не полностью независимое устройство расширения, а отдельный компонент, который можно было интегрировать в систему. [11]

В отличие от графических адаптеров, которые предшествовали ему ( MDA , CGA , EGA и множество сторонних опций), изначально IBM не выпускала дискретную карту VGA. Первой коммерческой реализацией VGA был встроенный компонент IBM PS/2, в котором он сопровождался 256 КБ видеопамяти и новым разъемом DE-15, заменившим DE-9, используемый предыдущими графическими адаптерами. Позже IBM выпустила автономный IBM PS/2 Display Adapter , который использовал VGA, но мог быть добавлен к машинам, в которых он не был встроен. [12] [11]

Возможности

Имитация изображения VGA 640 × 480 16 цветов
Имитированное изображение VGA 320 × 200 256 цветов (скорректированное соотношение сторон)
Сравнение стандартных разрешений, включая VGA 640 × 480

VGA поддерживает все графические режимы, поддерживаемые картами MDA, CGA и EGA, а также несколько новых режимов.

Стандартные графические режимы

Режимы 640 × 480 16 цветов и 320 × 200 256 цветов имели полностью переопределяемые палитры, причем каждая запись выбиралась из 18-битной (262 144 цвета) гаммы. [15] [16] [17] [18]

В других режимах по умолчанию использовались стандартные палитры и инструкции, совместимые с EGA или CGA, но при этом допускалась возможность переназначения палитры с помощью специфичных для VGA команд.

640 × 480графический режим

Разрешение 640 × 480 (при 256 цветах вместо 16) изначально использовалось IBM в графике PGC (для которой VGA не обеспечивает обратной совместимости), но не получило широкого распространения, пока не был представлен VGA. Поскольку VGA начали клонировать в больших количествах производители, которые добавляли все больше возможностей, его 640 × 480 , 16-цветный режим стал фактически наименьшим общим знаменателем графических карт. К середине 1990-х годов графический режим 640 × 480 × 16, использующий спецификации памяти и регистров VGA, ожидался такими операционными системами, как Windows 95 и OS/2 Warp 3.0 , которые не поддерживали более низкие разрешения или битовую глубину, или поддержку других схем памяти или регистров без дополнительных драйверов. Вплоть до 2000-х годов, даже после того, как стандарт VESA для графических карт стал обычным явлением, графический режим «VGA» оставался опцией совместимости для операционных систем ПК.

Другие графические режимы

Могут быть реализованы нестандартные режимы отображения с горизонтальным разрешением:

И высоты:

Например, режимы высокого разрешения с квадратными пикселями доступны при 768 × 576 или 704 × 528 в 16 цветах, или средне-низкое разрешение при 320 × 240 с 256 цветами. В качестве альтернативы, расширенное разрешение доступно с «толстыми» пикселями и 256 цветами, используя, например, 400 × 600 (50 Гц) или 360 × 480 (60 Гц), и «тонкими» пикселями, 16 цветами и частотой обновления 70 Гц, например, в режиме 736 × 410 .

«Узкие» режимы, такие как 256 × 224 , как правило, сохраняют то же соотношение пикселей, что и, например, в режиме 320 × 240 , если только монитор не настроен на растягивание изображения до заполнения экрана, поскольку они получаются просто путем маскирования более широкого режима, а не изменения таймингов пикселей или строк, но могут быть полезны для снижения требований к памяти и расчетов адресации пикселей для конверсий аркадных игр или эмуляторов консолей.

В версии Pinball Fantasies для ПК есть возможность использовать нестандартные режимы «высокого разрешения», такие как 640 × 350 , что позволяет отображать большую часть стола для пинбола на экране. [19]

Стандартные текстовые режимы

VGA также реализует несколько текстовых режимов:

Как и в случае с пиксельными графическими режимами, при правильном программировании VGA возможны дополнительные текстовые режимы с общим максимальным размером около 100 × 80 ячеек и активной областью, охватывающей около 88 × 64 ячеек.

Иногда встречается вариант 80 × 30 или 80 × 60 с использованием шрифта 8 × 16 или 8 × 8 и эффективного дисплея 640 × 480 пикселей, в котором вместо мерцающего режима 60 Гц отображаются дополнительные 5 или 10 строк текста и квадратных блоков символов (или, при 80 × 30 , квадратных полублоков).

Технические подробности

В отличие от предшествующих карт, которые использовали двоичные сигналы TTL для взаимодействия с монитором (а также композитные в случае CGA), VGA представила видеоинтерфейс, использующий чистые аналоговые сигналы RGB с диапазоном 0,7 вольт от пика до пика максимум. В сочетании с 18-битным RAMDAC (6 бит на канал RGB) это создавало цветовую гамму из 262 144 цветов. [15] [16] [17] [18]

Ниже приведены оригинальные характеристики VGA:

Сигнальные тайминги

Предполагаемое стандартное значение для горизонтальной частоты режима VGA 640 × 480 ровно в два раза больше значения, используемого в видеосистеме NTSC-M , поскольку это значительно упростило предложение дополнительных решений TV-out или внешних конвертеров VGA-to-TV во время разработки VGA. Оно также, по крайней мере, номинально в два раза больше, чем у CGA, который также поддерживал композитные мониторы .

Все производные тайминги VGA (т. е. те, которые используют основные кристаллы 25,175 и 28,322 МГц и, в меньшей степени, номинальную частоту линии 31,469 кГц) могут быть изменены программным обеспечением, которое обходит интерфейс прошивки VGA и напрямую взаимодействует с оборудованием VGA, как это делали многие игры на базе MS-DOS. Однако только стандартные режимы или режимы, которые, по крайней мере, используют почти точно такие же тайминги H-sync и V-sync, как один из стандартных режимов, могут работать с оригинальными мониторами VGA конца 1980-х и начала 1990-х годов. Использование других таймингов может фактически повредить такие мониторы, и поэтому издатели программного обеспечения обычно избегали этого.

«Мультисинхронные» ЭЛТ-мониторы сторонних производителей были более гибкими и в сочетании с графическими картами «super EGA», VGA и позднее SVGA, использующими расширенные режимы, могли отображать гораздо более широкий диапазон разрешений и частот обновления при произвольных частотах синхронизации и тактовой частоте пикселей.

Для наиболее распространенного режима VGA ( 640 × 480 , 60 Гц, нечересстрочная развертка ) горизонтальные тайминги можно найти в руководстве по установке дисплея HP Super VGA и в других местах. [24] [25]

Типичное использование выбранных режимов

640 × 400 при 70 Гц — это традиционный видеорежим, используемый для загрузки VGA-совместимых персональных компьютеров x86 [26] , которые показывают графический загрузочный экран, в то время как загрузка в текстовом режиме использует 720 × 400 при 70 Гц.

Однако в последние годы эта традиция была нарушена, поскольку экраны POST и BIOS перешли на более высокие разрешения, используя данные EDID для сопоставления разрешения с подключенным монитором. [ необходима цитата ]

640 × 480 при 60 Гц — графический режим Windows по умолчанию (обычно с 16 цветами) [26] вплоть до Windows 2000. Он остаётся опцией в XP и более поздних версиях [ необходима ссылка ] через опцию «видео с низким разрешением» в меню загрузки и настройки режима совместимости для каждого приложения, несмотря на то, что в более новых версиях Windows по умолчанию установлено разрешение 1024 × 768 и, как правило, не допускается установка разрешения ниже 800 × 600 .

Необходимость в таком низкокачественном, универсально совместимом резервном решении уменьшилась с начала тысячелетия, поскольку экраны или адаптеры стандарта VGA-сигнала, неспособные отображать что-либо, выходящее за рамки исходного разрешения, стали все более редкими. [ уточнить ]

Режим 320 × 200 при частоте 70 Гц был наиболее распространенным режимом для компьютерных игр начала 1990-х годов, при этом удвоение пикселей и строк выполнялось на аппаратном уровне для представления на мониторе сигнала 640 × 400 при частоте 70 Гц.

Загрузочное изображение Windows 95/98/Me LOGO.SYS имело разрешение 320 × 400, отображаемое с удвоением пикселей для представления сигнала 640 × 400 при 70 Гц на мониторе. Сигнал 400 строк был таким же, как стандартный текстовый режим 80 × 25 , что означало, что нажатие Escдля возврата в текстовый режим не изменяло частоту видеосигнала, и, таким образом, монитору не приходилось выполнять повторную синхронизацию (которая в противном случае могла бы занять несколько секунд). [ необходима цитата ]

Соединитель

Стандартный разъем VGA
Разъемы VGA- BNC

Стандартный интерфейс монитора VGA представляет собой 15- контактный миниатюрный разъем D в корпусе «E», называемый также «DE-15», «HD-15» и ошибочно «DB-15(HD)».

Все разъемы VGA передают аналоговые видеосигналы RGBHV (красный, зеленый, синий, горизонтальная синхронизация , вертикальная синхронизация ). Современные разъемы также включают в себя контакты VESA DDC для идентификации подключенных устройств отображения.

Поскольку VGA использует низковольтные аналоговые сигналы, ухудшение сигнала становится фактором с некачественными или слишком длинными кабелями. Решения включают экранированные кабели, кабели, которые включают отдельный внутренний коаксиальный кабель для каждого цветового сигнала, и «разорванные» кабели, использующие отдельный коаксиальный кабель с разъемом BNC для каждого цветового сигнала.

BNC-кабели для развязки обычно используют пять разъемов, по одному для красного, зеленого, синего, горизонтальной синхронизации и вертикальной синхронизации, и не включают другие сигнальные линии интерфейса VGA. С BNC коаксиальные провода полностью экранированы от начала до конца и через межсоединение, так что практически нет перекрестных помех и может возникнуть очень мало внешних помех. Использование видеокабелей BNC RGB предшествовало VGA на других рынках и в других отраслях.

Цветовая палитра

Цветовая палитра по умолчанию VGA 256
Палитра VGA разделена на 4 группы
Примеры изображений VGA в разрешении 640×480 с 16 цветами и 320×200 с 256 цветами (внизу). Дизеринг используется для маскировки ограничений цвета.

Цветовая система VGA использует палитры на основе регистров для сопоставления цветов с различной глубиной цвета в 18-битной выходной гамме. Она обратно совместима с адаптерами EGA и CGA, но поддерживает дополнительную глубину цвета для палитры в этих режимах.

Например, в 16-цветных режимах EGA VGA предлагает 16 регистров палитры, а в 256-цветных режимах — 256 регистров. [27] Каждый регистр палитры содержит 3×6-битное значение RGB, выбирая цвет из 18-битной гаммы ЦАП .

Эти регистры цветов инициализируются значениями по умолчанию, которые IBM ожидает наиболее полезными для каждого режима. Например, режимы EGA 16 цветов инициализируются палитрой CGA 16 цветов по умолчанию, а режим 256 цветов инициализируется палитрой, состоящей из 16 цветов CGA, 16 оттенков серого и затем 216 цветов, выбранных IBM для соответствия ожидаемым вариантам использования. [28] [29] После инициализации их можно переопределить в любое время без изменения содержимого видеопамяти, что позволяет циклически менять палитру .

В 256-цветных режимах ЦАП настроен на объединение четырех 2-битных цветовых значений, по одному из каждой плоскости, в 8-битное значение, представляющее индекс в 256-цветной палитре. Интерфейс ЦП объединяет 4 плоскости таким же образом, эта функция называется «цепь-4», так что каждый пиксель представляется ЦП как упакованное 8-битное значение, представляющее индекс палитры. [30]

Использовать

Видеопамять VGA отображается на память ПК через окно в диапазоне между сегментами 0xA0000 и 0xBFFFF в адресном пространстве реального режима ПК (A000:0000 и B000:FFFF в нотации сегмент:смещение). Обычно эти начальные сегменты следующие:

Типичная карта VGA также оснащена следующим сегментом ввода-вывода с сопоставлением портов:

Благодаря использованию различных сопоставлений адресов для разных режимов на одном компьютере можно установить монохромный адаптер (например, MDA или Hercules ) и цветной адаптер, такой как VGA, EGA или CGA .

В начале 1980-х годов это обычно использовалось для отображения электронных таблиц Lotus 1-2-3 в тексте с высоким разрешением на монохромном дисплее и соответствующей графики на дисплее CGA с низким разрешением одновременно. Многие программисты также использовали такую ​​установку, когда монохромная карта отображала отладочную информацию, в то время как программа работала в графическом режиме на другой карте. Несколько отладчиков, таких как Borland's Turbo Debugger , D86 и Microsoft's CodeView, могли работать в конфигурации с двумя мониторами. Для отладки Windows можно было использовать как Turbo Debugger, так и CodeView.

Существовали также драйверы устройств, такие как ox.sys, которые реализовывали имитацию последовательного интерфейса на монохромном дисплее и, например, позволяли пользователю получать сообщения о сбоях из отладочных версий Windows без использования реального последовательного терминала.

Также можно использовать команду "MODE MONO" в командной строке, чтобы перенаправить вывод на монохромный дисплей. При отсутствии монохромного адаптера можно было использовать адресное пространство 0xB000–0xB7FF в качестве дополнительной памяти для других программ.

Графическая карта PCI / PCIe с поддержкой VGA может предоставлять устаревшие регистры VGA в своем пространстве конфигурации PCI , которые могут быть переназначены BIOS или операционной системой . [31]

Программирование

"Развязывание" 256 КБ памяти VGA в четыре отдельных "плоскости" делает 256 КБ ОЗУ VGA доступными в 256-цветных режимах. Существует компромисс в виде дополнительной сложности и потери производительности в некоторых типах графических операций, но это смягчается тем, что другие операции становятся быстрее в определенных ситуациях:

Такое программное обеспечение, как Fractint , Xlib и ColoRIX, также поддерживало измененные 256-цветные режимы на стандартных адаптерах, используя свободно комбинируемые ширины 256, 320 и 360 пикселей и высоты 200, 240 и 256 (или 400, 480 и 512) строк, расширяясь еще дальше до 384 или 400 пиксельных столбцов и 576 или 600 (или 288, 300). Однако 320 × 240 было самым известным и наиболее часто используемым, поскольку оно предлагало стандартное разрешение в 40 столбцов и соотношение сторон 4:3 с квадратными пикселями. « Разрешение 320 × 240  × 8" обычно называлось Mode X , название, которое использовал Майкл Абраш , когда он представил разрешение в журнале доктора Добба .

Режимы с самым высоким разрешением использовались только в особых, опциональных случаях, а не как стандартные, особенно там, где было задействовано большое количество строк. Стандартные мониторы VGA имели фиксированную частоту строчной развертки (H-сканирование) — «мультисинхронные» мониторы были в то время дорогой редкостью — и поэтому частоту обновления по вертикали/кадру (V-сканирование) приходилось уменьшать, чтобы приспособиться к ним, что увеличивало видимое мерцание и, следовательно, нагрузку на глаза . Например, режим с самым высоким разрешением 800 × 600 , в противном случае основанный на соответствующем разрешении SVGA (с 628 общими строками), уменьшал частоту обновления с 60 Гц до примерно 50 Гц (а 832 × 624 , теоретическое максимальное разрешение, достижимое с 256 КБ при 16 цветах, уменьшило бы ее примерно до 48 Гц, что едва ли выше частоты, с которой мониторы XGA использовали технику двухчастотной чересстрочной развертки для смягчения мерцания полного кадра).

Эти режимы также были совершенно несовместимы с некоторыми мониторами, что приводило к проблемам с отображением, таким как исчезновение деталей изображения в области сканирования (особенно в горизонтальном измерении), вертикальный скачок, плохая горизонтальная синхронизация или даже полное отсутствие изображения в зависимости от конкретного выбранного режима. Из-за этих потенциальных проблем большинство настроек VGA, используемых в коммерческих продуктах, были ограничены более соответствующими стандартам, «безопасными для монитора» комбинациями, такими как 320 × 240 (квадратные пиксели, три видеостраницы, 60 Гц), 320 × 400 (двойное разрешение, две видеостраницы, 70 Гц) и 360 × 480 (максимальное разрешение, совместимое как со стандартными мониторами VGA, так и с картами, одна видеостраница, 60 Гц) в 256 цветах или удвоение горизонтального разрешения в 16-цветном режиме.

Производители оборудования

Несколько компаний выпустили модели графических плат, совместимые с VGA. [32]

Преемники

Супер VGA (SVGA)

Super VGA (SVGA) — стандарт отображения, разработанный в 1988 году, когда NEC Home Electronics объявила о создании Ассоциации стандартов видеоэлектроники (VESA). Разработка SVGA велась под руководством NEC , а также других членов VESA, включая ATI Technologies и Western Digital . SVGA обеспечивал графические разрешения отображения до 800 × 600 пикселей , что на 36% больше максимального разрешения VGA в 640 × 480 пикселей. [33]

Расширенный графический массив (XGA)

Extended Graphics Array (XGA) — стандарт дисплеев, представленный IBM в 1990 году. Позднее он стал наиболее распространённым названием разрешения дисплея 1024 × 768 пикселей .

Смотрите также

Ссылки

  1. ^ Петцольд, Чарльз (июль 1987 г.). «Тройной стандарт: три новых видеорежима от IBM». PC Magazine . Ziff Davis . Получено 13 апреля 2020 г.
  2. ^ Полссон, Кен. "Хронология персональных компьютеров IBM". Архивировано из оригинала 21.02.2015 . Получено 28.01.2015 .
  3. ^ "Что такое VGA (Video Graphics Array)?" . Получено 2018-08-13 .
  4. ^ Предприятие, IDG (22 октября 1990 г.). Компьютерный мир. ИДГ Предприятие.
  5. ^ "Рисование в защищенном режиме". OSDev Wiki . Получено 20.12.2020 .
  6. ^ Доктор Джон Педди (12 марта 2019 г.). «Знаменитые графические чипы: VGA от IBM. VGA был самым популярным графическим чипом из когда-либо созданных» . Получено 13 апреля 2020 г. О самолетах говорят, что DC3 и 737 — самые популярные самолеты из когда-либо построенных, а 737, в частности, самый продаваемый самолет из когда-либо созданных. То же самое можно сказать и о вездесущем VGA и его старшем брате XGA. VGA, который до сих пор можно найти в современных графических процессорах и центральных процессорах, заложил основу для стандарта видео и стандарта прикладного программирования.
  7. ^ Экерт; Азингер (15 апреля 1991 г.). «Сравнение продуктов — платы Super VGA». InfoWorld . стр. 53–63.
  8. ^ Журналы, SPH (апрель 2007 г.). ХВМ. Журналы SPH.
  9. ^ Peddie, Jon (12 марта 2019 г.). "Знаменитые графические чипы: VGA от IBM | IEEE Computer Society". IEEE Computer Society . Архивировано из оригинала 2022-11-28 . Получено 2022-12-27 .
  10. ^ Томпсон, Стивен (1988). «VGA ‒ Выбор дизайна для новой видеоподсистемы». IBM Systems Journal . 27 (2). IBM: 185‒197. doi :10.1147/sj.272.0185.
  11. ^ ab Rosch, Winn (22 декабря 1987 г.). "IBM VGA Adapter Card: 256K Video RAM, 17 Display Modes". PC Magazine . стр. 35.
  12. ^ "АДАПТЕР ДИСПЛЕЯ IBM PERSONAL SYSTEM/2 (TM), АДАПТЕР ДИСПЛЕЯ IBM PERSONAL SYSTEM/2 8514/A И". www-01.ibm.com . 1987-04-02 . Получено 2020-08-16 .
  13. ^ Хиннер, Мартин. "VGA Timings". Архивировано из оригинала 27 октября 2012 года . Получено 7 ноября 2012 года .
  14. ^ "Рисование в защищенном режиме - OSDev Wiki". wiki.osdev.org . Получено 20.12.2020 .
  15. ^ ab US5574478A, Bril, Vlad & Pett, Boyd G., "VGA система цвета для персональных компьютеров", выпущено 1996-11-12 
  16. ^ ab "Чтение и запись 18-битных файлов палитры RGB VGA (pal) с помощью C#". Блог Cyotek . 2017-12-26 . Получено 2023-03-27 .
  17. ^ ab "Программирование видео VGA/SVGA — регистры цвета". www.osdever.net . Получено 27.03.2023 .
  18. ^ ab "VGA Palette Conversion \ VOGONS". www.vogons.org . Получено 2023-03-27 .
  19. ^ "Результаты теста совместимости видеочипов PCI позднего, раннего и среднего AGP с играми DOS". archive.ph . Архивировано из оригинала 21.03.2022.
  20. ^ Абраш, Майкл. «Как работает режим 360×480 в 256 цветах». Graphics Programming Black Book . Архивировано из оригинала 23 апреля 2012 г. Получено 7 ноября 2012 г.
  21. ^ "Сигнал VGA 640 x 480 при 60 Гц. Стандартная синхронизация в отрасли". www.tinyvga.com .
  22. ^ ab Техническое справочное руководство по видеоподсистеме PS/2 1992 г.
  23. ^ "Время сигнала VGA". Архивировано из оригинала 2016-06-20.
  24. ^ "Страница таймингов VGA Хавьера Валькарсе". Архивировано из оригинала 2015-01-02.
  25. ^ Руководство по установке дисплея HP D1194A Super VGA и эргономичного дисплея HP D1195A Super VGA, Hewlett Packard
  26. ^ ab "ePanorama.net - Circuits". Архивировано из оригинала 27.02.2009.090425 epanorama.net
  27. ^ "Программирование видео VGA/SVGA — регистры цвета". www.scs.stanford.edu . Получено 16 августа 2020 г.
  28. ^ Техническое справочное руководство по аппаратному интерфейсу IBM PS/2 (PDF) . С. 13–18.
  29. ^ Вопрос по ретрокомпьютерам SE: почему-эти-цвета-были-выбраны-в-качестве-палитры-по-умолчанию-для-256-цветного-VGA?
  30. ^ Упхофф, Матиас (1990). Программирование графической карты EGA/VGA ; ISBN 3-89319-274-3 ; весь этот раздел был изучен из этой книги 
  31. ^ "PCI BAR и другие средства доступа к графическому процессору — документация git envytools". envytools.readthedocs.io . Получено 29.07.2024 .
  32. ^ "История современного графического процессора". techspot.com . Архивировано из оригинала 29 марта 2016 года . Получено 6 мая 2018 года .
  33. ^ Браунштейн, Марк (14 ноября 1988 г.). "NEC формирует группу по стандартам видео". InfoWorld . Том 10, № 46. стр. 3. ISSN  0199-6649 . Получено 27 мая 2016 г.

Дальнейшее чтение

Внешние ссылки