Matriz de gráficos de video
Video Graphics Array (VGA) es un controlador de visualización de video y el estándar de gráficos de facto que lo acompaña, introducido por primera vez con la línea de computadoras IBM PS/2 en 1987, que se hizo omnipresente en la industria compatible con PC de IBM en tres años. El término ahora puede referirse al estándar de pantalla de la computadora, el conector VGA subminiatura D de 15 pines o la resolución de 640 × 480 característica del hardware VGA.
VGA fue el último estándar de gráficos de IBM al que se ajustaron la mayoría de los fabricantes de computadoras compatibles con PC de IBM, lo que lo convierte en el mínimo común denominador que se puede esperar que implemente prácticamente todo el hardware de gráficos de PC posterior a 1990.
IBM pretendía reemplazar VGA con el estándar Extended Graphics Array (XGA), pero fracasó. En cambio, VGA fue adaptado en muchas formas extendidas por terceros, conocidos colectivamente como Super VGA, luego dio paso a unidades de procesamiento de gráficos personalizadas que, además de sus interfaces y capacidades patentadas, continúan implementando interfaces y modos de gráficos VGA comunes hasta el presente. día.
El estándar de interfaz analógica VGA se ha ampliado para admitir resoluciones de hasta 2048 × 1536 e incluso superiores en aplicaciones especiales.
Diseño de equipos
La paleta de colores de memoria de acceso aleatorio (RAM) y su correspondiente convertidor de digital a analógico (DAC) se integraron en un chip (RAMDAC) y el controlador de tubo de rayos catódicos (CRTC) se integró en un chip VGA principal, que eliminó varios otros chips en adaptadores de gráficos anteriores, por lo que VGA solo requería adicionalmente RAM de video externa y cristales de sincronización.
Este pequeño recuento de piezas permitió a IBM incluir VGA directamente en la placa base PS/2, a diferencia de los modelos anteriores de PC de IBM (PC, PC/XT y PC AT), que requerían la instalación de un adaptador de pantalla independiente en una ranura para poder para conectar un monitor. El término "matriz" en lugar de "adaptador" en el nombre denotaba que no era un dispositivo de expansión completamente independiente, sino un único componente que podía integrarse en un sistema.
A diferencia de los adaptadores de gráficos que lo precedieron (MDA, CGA, EGA y muchas opciones de terceros), inicialmente IBM no lanzó una tarjeta VGA discreta. La primera implementación comercial de VGA fue un componente incorporado de IBM PS / 2, en el que estaba acompañado por 256 KB de RAM de video y un nuevo conector DE-15 que reemplazó al DE-9 utilizado por los adaptadores de gráficos anteriores. Posteriormente, IBM lanzó el IBM PS/2 Display Adapter independiente, que utilizaba el VGA pero podía agregarse a máquinas que no lo tenían incorporado.
Capacidades
La VGA es compatible con todos los modos de gráficos compatibles con las tarjetas MDA, CGA y EGA, así como con varios modos nuevos.
Modos gráficos estándar
- 640×480 en 16 colores o monocromo
- 640×350 o 640×200 en 16 colores o monocromo (compatibilidad de GEA)
- 320×200 en 256 colores (Mode 13h)
- 320×200 en 4 o 16 colores (compatibilidad CGA)
Los modos 640×480 de 16 colores y 320×200 de 256 colores tenían paletas totalmente redefinibles, con cada entrada seleccionada de una gama de 18 bits (262 144 colores).
Los otros modos tenían por defecto paletas e instrucciones compatibles con EGA o CGA estándar, pero aún permitían reasignar la paleta con comandos específicos de VGA.
Modo gráfico 640×480
A medida que los fabricantes comenzaron a clonar el VGA en grandes cantidades y agregaron capacidades cada vez mayores, su modo de 640 × 480 y 16 colores se convirtió de facto en el denominador común más bajo de las tarjetas gráficas. A mediados de la década de 1990, los sistemas operativos como Windows 95 y OS/2 Warp 3.0 esperaban un modo de gráficos de 640 × 480 × 16 que usaba la memoria VGA y las especificaciones de registro, que no brindaban soporte para resoluciones más bajas o profundidades de bits, o soporte para otros diseños de memoria o registro sin controladores adicionales. Hasta bien entrada la década de 2000, incluso después de que el estándar VESA para tarjetas gráficas se convirtiera en algo común, el "VGA" el modo gráfico siguió siendo una opción de compatibilidad para los sistemas operativos de PC.
Otros modos gráficos
Se pueden implementar modos de visualización no estándar, con resoluciones horizontales de:
- 512 a 800 píxeles de ancho, en 16 colores
- 256 a 400 píxeles de ancho, en 256 colores
Y alturas de:
- 200, o 350 a 410 líneas (incluyendo 400 líneas) a 70 Hz tasa de actualización, o
- 224 a 256, o 448 a 512 líneas (incluyendo 240 o 480 líneas) a 60 Hz tasa de actualización
- 512 a 600 líneas a tasas de actualización vertical reducidas (hasta 50 Hz, e incluyendo por ejemplo 528, 544, 552, 560, 576-line), dependiendo de la compatibilidad de monitor individual.
Por ejemplo, los modos de alta resolución con píxeles cuadrados están disponibles en 768 × 576 o 704 × 528 en 16 colores, o en resolución media-baja a 320 × 240 con 256 colores. Como alternativa, la resolución extendida está disponible con "fat" píxeles y 256 colores usando, p. 400×600 (50 Hz) o 360×480 (60 Hz) y "delgado" píxeles, 16 colores y frecuencia de actualización de 70 Hz con, p. Modo 736×410.
"Estrecho" modos como 256 × 224 tienden a conservar la misma proporción de píxeles que, p. modo de 320 × 240 a menos que el monitor se ajuste para estirar la imagen para llenar la pantalla, ya que se derivan simplemente enmascarando el modo más amplio en lugar de alterar los tiempos de píxeles o líneas, pero pueden ser útiles para reducir los requisitos de memoria y los cálculos de direccionamiento de píxeles para conversiones de juegos de arcade o emuladores de consola.
La versión para PC de Pinball Fantasies tiene la opción de usar modos no estándar de "alta resolución" modos, como 640x350, lo que le permite mostrar una porción más grande de la mesa de pinball en la pantalla.
Modos de texto estándar
VGA también implementa varios modos de texto:
- 80×25, renderizado con una fuente de pixel 9×16, con una resolución efectiva de 720×400
- 40×25, con una fuente 9×16, con una resolución efectiva de 360×400
- 80×43 o 80×50, con una red de fuentes 8×8, con una resolución efectiva de 640×344 o 640×400 píxeles.
Al igual que con los modos de gráficos basados en píxeles, los modos de texto adicionales son posibles al programar el VGA correctamente, con un máximo general de alrededor de 100 × 80 celdas y un área activa que abarca alrededor de 88 × 64 celdas.
Una variante que a veces se ve es 80 × 30 u 80 × 60, con una fuente de 8 × 16 u 8 × 8 y una pantalla efectiva de 640 × 480 píxeles, que cambia el uso del modo de 60 Hz más parpadeante por un formato adicional 5 o 10 líneas de texto y bloques de caracteres cuadrados (o, a 80×30, medios bloques cuadrados).
Detalles técnicos
A diferencia de las tarjetas que la precedieron, que usaban señales TTL binarias para interactuar con un monitor (o compuesto, en el caso de la CGA), la VGA introdujo una interfaz de video que usaba señales RGB analógicas puras, 0,7 voltios de pico a pico máx. Junto con un RAMDAC de 18 bits, produjo una gama de colores de 262.144 colores. Esta gama ha llegado a ser conocida como el espacio de color sRGB (pero generalmente se divide en 16 777 216 colores usando un RAMDAC de 24 bits u 8 bits por color primario).
Las especificaciones VGA originales son las siguientes:
- 25.175 MHz o 28.322 MHz master pixel reloj
- Máximo de 640 píxeles horizontales en modo gráfico, y 720 píxeles en modo de texto
- Máximo de 480 líneas
- Tasas de reducción a 60 o 70 Hz
- Interrupción vertical en blanco (No todas las tarjetas de clonación soportan esto.)
- Modo plano: hasta 16 colores (4 aviones bit)
- Modo de píxel empaquetado: 256 colores (Mode 13h)
- Soporte de desplazamiento suave Hardware
- No.
- Admite transferencias rápidas de datos a través de registros "VGA latch"
- Barrel shifter
- Soporte de pantalla dividida
Tiempos de señal
El valor estándar previsto para la frecuencia horizontal del modo 640×480 de VGA es exactamente el doble del valor utilizado en el sistema de video NTSC-M, ya que esto hizo mucho más fácil ofrecer soluciones de salida de TV opcionales o Cajas convertidoras de VGA a TV en el momento del desarrollo de VGA. También es al menos nominalmente el doble que CGA, que también admitía monitores compuestos.
Todas las temporizaciones VGA derivadas (es decir, aquellas que utilizan los cristales maestros de 25,175 y 28,322 MHz y, en menor medida, la velocidad de línea nominal de 31,469 kHz) se pueden modificar mediante un software que omite el firmware VGA. interfaz y se comunica directamente con el hardware VGA, como lo hicieron muchos juegos basados en MS-DOS. Sin embargo, solo los modos estándar, o los modos que al menos usan casi exactamente los mismos tiempos de sincronización H y sincronización V que uno de los modos estándar, pueden funcionar con los monitores VGA originales de finales de los 80 y principios de los 90. De hecho, el uso de otros tiempos puede dañar dichos monitores y, por lo tanto, los editores de software generalmente lo evitan.
"multisync" de terceros Los monitores CRT eran más flexibles y, en combinación con las tarjetas gráficas 'super EGA', VGA y SVGA posteriores que usaban modos extendidos, podían mostrar una gama mucho más amplia de resoluciones y frecuencias de actualización en frecuencias de sincronización y frecuencias de reloj de píxeles arbitrarias..
Para el modo VGA más común (640 × 480, 60 Hz, no entrelazado), los tiempos horizontales se pueden encontrar en la Guía de instalación de la pantalla HP Super VGA y en otros lugares.
Usos típicos de los modos seleccionados
640×400 @ 70 Hz es tradicionalmente el modo de video que se usa para arrancar computadoras personales x86 compatibles con VGA que muestran una pantalla de arranque gráfica, mientras que el arranque en modo texto usa 720×400 @ 70 Hz.
Esta convención se ha erosionado en los últimos años, sin embargo, con pantallas POST y BIOS moviéndose a resoluciones más altas, aprovechando los datos EDID para hacer coincidir la resolución con un monitor conectado.
640 × 480 a 60 Hz es el modo de gráficos predeterminado de Windows (generalmente con 16 colores), hasta Windows 2000. Sigue siendo una opción en XP y versiones posteriores a través del menú de inicio "video de baja resolución" opciones y configuraciones de modo de compatibilidad por aplicación, a pesar de que Windows ahora tiene un valor predeterminado de 1024 × 768 y, en general, no permite establecer ninguna resolución por debajo de 800 × 600.
La necesidad de un recurso alternativo universalmente compatible y de baja calidad ha disminuido desde el cambio de milenio, ya que las pantallas o adaptadores de señalización estándar VGA que no pueden mostrar nada más allá de las resoluciones originales se han vuelto cada vez más raros.
320 × 200 a 70 Hz era el modo más común para los juegos de PC de la era VGA, con duplicación de píxeles y duplicación de líneas realizadas en hardware para presentar una señal de 640 × 400 a 70 Hz en el monitor.
La imagen de inicio de LOGO.SYS de Windows 95/98/Me tenía una resolución de 320 x 400 y se mostraba duplicando píxeles para presentar una señal de 640 x 400 a 70 Hz en el monitor. La señal de 400 líneas era la misma que la del modo de texto estándar de 80x25, lo que significaba que presionar Esc para volver al modo de texto no cambiaba la frecuencia de la señal de vídeo y, por lo tanto, el monitor no tuvo que resincronizarse (lo que, de otro modo, podría haber tardado varios segundos).
Conector
La interfaz de monitor VGA estándar es un conector D-subminiatura de 15 pines en la interfaz "E" caparazón, denominado indistintamente como "HD-15", "DE-15" y "DB-15".
Debido a que VGA usa señales analógicas de bajo voltaje, la degradación de la señal se convierte en un factor con cables de baja calidad o demasiado largos. Las soluciones incluyen cables blindados, cables que incluyen un cable coaxial interno independiente para cada señal de color y cables "partidos" cables que utilizan un cable coaxial separado con un conector BNC para cada señal de color.
Los cables de conexión BNC suelen utilizar cinco conectores, uno para rojo, verde, azul, sincronización horizontal y sincronización vertical, y no incluyen las otras líneas de señal de la interfaz VGA. Con BNC, los cables coaxiales están totalmente blindados de extremo a extremo y a través de la interconexión, de modo que prácticamente no se producen diafonías y muy poca interferencia externa.
Paleta de colores
El sistema de color VGA utiliza paletas basadas en registros para asignar colores en varias profundidades de bits a su gama de salida de 18 bits. Es compatible con versiones anteriores de los adaptadores EGA y CGA, pero admite una profundidad de bits adicional para la paleta cuando se encuentra en estos modos.
Por ejemplo, en los modos EGA de 16 colores, VGA ofrece 16 registros de paleta y en los modos de 256 colores, ofrece 256 registros. Cada registro de paleta contiene un valor RGB de 3 × 6 bits, seleccionando un color de la gama de 18 bits del DAC.
Estos registros de color se inicializan a los valores predeterminados que IBM espera que sean más útiles para cada modo. Por ejemplo, los modos de 16 colores EGA se inicializan en la paleta de 16 colores CGA predeterminada, y el modo de 256 colores se inicializa en una paleta que consta de 16 colores CGA, 16 tonos de gris y luego 216 colores elegidos por IBM para adaptarse a los casos de uso esperados.. Después de la inicialización, se pueden redefinir en cualquier momento sin alterar el contenido de la RAM de video, lo que permite el ciclo de la paleta.
En los modos de 256 colores, el DAC está configurado para combinar cuatro valores de color de 2 bits, uno de cada plano, en un valor de 8 bits que representa un índice en la paleta de 256 colores. La interfaz de la CPU combina los 4 planos de la misma manera, una característica llamada 'cadena-4', de modo que cada píxel aparece en la CPU como un valor empaquetado de 8 bits que representa el índice de la paleta.
Usar
La memoria de video del VGA se asigna a la memoria de la PC mediante una ventana en el rango entre los segmentos 0xA0000 y 0xBFFFF en el espacio de direcciones en modo real de la PC (A000:0000 y B000:FFFF en segmento: notación de compensación). Por lo general, estos segmentos iniciales son:
- 0xA0000 para modos gráficos EGA/VGA (64 KB)
- 0xB0000 para el modo de texto monocromo (32 KB)
- 0xB8000 para el modo de texto de color y modos gráficos compatibles con CGA (32 KB)
Debido al uso de diferentes asignaciones de direcciones para diferentes modos, es posible tener un adaptador monocromático (es decir, MDA o Hercules) y un adaptador de color como VGA, EGA o CGA instalados en la misma máquina.
A principios de la década de 1980, esto se usaba normalmente para mostrar hojas de cálculo de Lotus 1-2-3 en texto de alta resolución en una pantalla monocromática y gráficos asociados en una pantalla CGA de baja resolución simultáneamente. Muchos programadores también usaron una configuración de este tipo con la tarjeta monocromática que mostraba información de depuración mientras un programa se ejecutaba en modo gráfico en la otra tarjeta. Varios depuradores, como Turbo Debugger de Borland, D86 y CodeView de Microsoft, podrían funcionar en una configuración de monitor dual. Se puede usar Turbo Debugger o CodeView para depurar Windows.
También había controladores de dispositivos DOS como ox.sys
, que implementaba una simulación de interfaz serial en la pantalla monocromática y, por ejemplo, permitía al usuario recibir mensajes de bloqueo de las versiones de depuración de Windows sin utilizando un terminal serie real.
También es posible utilizar el "MODO MONO" Comando en el indicador de DOS para redirigir la salida a la pantalla monocromática. Cuando no estaba presente un adaptador monocromático, era posible usar el espacio de direcciones 0xB000–0xB7FF como memoria adicional para otros programas.
Programación
"Desencadenamiento" la memoria VGA de 256 KB en cuatro "planos" hace que los 256 KB de RAM de VGA estén disponibles en modos de 256 colores. Existe una compensación por la complejidad adicional y la pérdida de rendimiento en algunos tipos de operaciones gráficas, pero esto se ve mitigado por otras operaciones que se vuelven más rápidas en ciertas situaciones:
- El relleno de polígono de un solo color podría acelerarse debido a la capacidad de establecer cuatro píxeles con un solo escrito al hardware.
- El adaptador de vídeo podría ayudar a copiar las regiones de video RAM, que a veces era más rápido que hacerlo con la interfaz CPU-to-VGA relativamente lenta.
- El uso de múltiples páginas de vídeo en hardware permitió doble amortiguación, triple amortiguación o pantallas divididas, que, aunque disponible en el modo 320×200 16-color de VGA, no fue posible utilizando el modo de stock 13h.
- Sobre todo, varios modos de visualización más altos de resolución arbitraria fueron posibles, hasta el límite programable de 800×600 con 16 colores (o 400×600 con 256 colores), así como otros modos personalizados utilizando combinaciones inusuales de pixel horizontal y vertical cuenta en modo de color.
Software como Fractint, Xlib y ColoRIX también admitía modos modificados de 256 colores en adaptadores estándar con anchos libremente combinables de 256, 320 y 360 píxeles y alturas de 200, 240 y 256 (o 400, 480 y 512). líneas, extendiéndose aún más a 384 o 400 columnas de píxeles y 576 o 600 (o 288, 300). Sin embargo, 320×240 fue el más conocido y utilizado con mayor frecuencia, ya que ofrecía una resolución estándar de 40 columnas y una relación de aspecto de 4:3 con píxeles cuadrados. "320×240×8" La resolución se llamaba comúnmente Modo X, el nombre utilizado por Michael Abrash cuando presentó la resolución en Dr. Dobb's Journal.
Los modos de resolución más alta solo se usaron en casos especiales de participación en lugar de como estándar, especialmente cuando había un alto número de líneas involucradas. Los monitores VGA estándar tenían una velocidad de escaneo de línea fija (H-scan): "multisync" los monitores eran, en ese momento, rarezas costosas, por lo que la frecuencia de actualización vertical/cuadro (V-scan) tuvo que reducirse para acomodarlos, lo que aumentó el parpadeo visible y, por lo tanto, la fatiga visual. Por ejemplo, el modo más alto de 800 × 600, que se basa en la resolución SVGA correspondiente (con 628 líneas en total), redujo la frecuencia de actualización de 60 Hz a aproximadamente 50 Hz (y 832 × 624, la resolución máxima teórica alcanzable con 256 kb a 16 colores, lo habría reducido a unos 48 Hz, apenas más alto que la velocidad a la que los monitores XGA empleaban una técnica de entrelazado de doble frecuencia para mitigar el parpadeo de fotograma completo).
Estos modos también eran completamente incompatibles con algunos monitores, lo que producía problemas de visualización, como la desaparición de los detalles de la imagen en el sobrebarrido (especialmente en la dimensión horizontal), balanceo vertical, sincronización horizontal deficiente o incluso una falta total de imagen según el modo exacto que se intentara.. Debido a estos problemas potenciales, la mayoría de los ajustes de VGA utilizados en productos comerciales se limitaron a dispositivos más compatibles con los estándares y "seguros para el monitor" combinaciones, como 320×240 (píxeles cuadrados, tres páginas de video, 60 Hz), 320×400 (doble resolución, dos páginas de video, 70 Hz) y 360×480 (resolución más alta compatible con monitores y tarjetas VGA estándar, una página de video, 60 Hz) en 256 colores, o duplicar la resolución horizontal en el modo de 16 colores.
Fabricantes de hardware
Varias empresas produjeron modelos de tarjetas gráficas compatibles con VGA.
- ATI: Solución gráfica Plus, Serie Wonder, Serie Mach
- S3 Graphics: S3 911, 911A, 924, 801, 805, 805i, 928, 805p, 928p, S3 Vision series, S3 Trio series
- Matrox: MAGIC RGB
- Plantronics: Colorplus
- Paradise Systems (defunct): PEGA 1, PEGA 1a, PEGA 2a
- Laboratorios Tseng: ET3000, ET4000, ET6000
- Cirrus Logic: serie CL-GD400, CL-GD500 y CL-GD5000
- Trident Microsystems: serie TVGA 8000, serie TVGA 9000, serie TGUI9000
- IIT
- NEC
- Chips y Tecnologías
- SiS
- Tamerack
- Realtek
- Oak Technology
- LSI
- Hualon
- Cornerstone Imaging
- Winbond
- AMD
- Western Digital
- Intergraph
- Instrumentos de Texas
- Gemini (defunct)
- Génova (defunct)
Sucesores
Súper VGA (SVGA)
Super VGA (SVGA) es un estándar de visualización desarrollado en 1988, cuando NEC Home Electronics anunció la creación de Video Electronics Standards Association (VESA). NEC lideró el desarrollo de SVGA, junto con otros miembros de VESA, incluidos ATI Technologies y Western Digital. Los gráficos habilitados para SVGA muestran resoluciones de hasta 800 × 600 píxeles, un 36 % más que la resolución máxima de VGA de 640 × 480 píxeles.
Conjunto de gráficos extendidos (XGA)
Extended Graphics Array (XGA) es un estándar de pantalla de IBM introducido en 1990. Más tarde se convirtió en la denominación más común de la resolución de pantalla de 1024 × 768 píxeles.
Contenido relacionado
Biblioteca (informática)
Lógica de escalera
Motorola 68HC11