石鑫华视觉 手机微信QQ:13450001061 / 18038383457

视觉技术

视频图形阵列VGA

文章来源:石鑫华视觉网时间:2022-03-20 23:34:18 点击:512

视频图形阵列VGA

VGA概述

视频图形阵列(英语:Video Graphics Array,简称VGA)是IBM1987年提出的一个使用模拟信号的电脑显示标准。这个标准已对于现今的个人电脑市场已经十分过时。即使如此,VGA仍然是最多制造商所共同支持的一个标准,个人电脑在加载自己的独特驱动程序之前,都必须支持VGA的标准。例如,微软Windows系列产品的开机画面仍然使用VGA显示模式,这也说明其分辨率和载色数的不足。

VGA这个术语常常不论其图形设备,而直接用于指称640×480的分辨率。VGA设备可以同时存储4个完整的EGA色版,并且它们之间可以快速转换,在画面上看起来就像是实时的变色。

在色版上,VGA除了扩充为256色的EGA式色版外,这256种颜色是可以改变的。可以通过 VGA DAC,任意的指定为任何一种颜色。这就程度上改变了原本EGA的色版规则。因为在CGA上,只有16种无法改的色彩。在EGA上虽然仍只能显示16种色彩,但这16种色彩其实是从64彩色盘中挑选出的。EGA分配给每个色频(RGB)两个比特,22=4种变化,43个色频=64种色彩。而VGA在指定色版颜色时,一个颜色频道有6bit,红、绿、蓝各有64种不同的变化,因此总共有 262,144 种颜色。在这其中的任何 256 种颜色可以被选为色版颜色(而这 256 种的任何 16 种可以用来显示 CGA 模式的色彩)。

这个方法最终仍然使了VGA模式在显示EGACGA模式时,能够使用前所未有的色彩,因为VGA是使用模拟的方式来绘出EGACGA画面。提供一个色版转换的例子:要把文字模式的字符颜色设置为暗红色,暗红色就必须是 CGA 16 色集合中的一种颜色(譬如说,取代 CGA 默认的 7 号灰色),这个 7 号位置将被指定为 EGA 色版中的 42 号,然后 VGA DAC EGA #42 指定为暗红色。则画面上的原本的 CGA 七号灰色,都会变成暗红色。这个技巧在 256 色的 VGA DOS 游戏中,常常被用来表示加载游戏的淡入淡出画面。

总结来说,CGA EGA 同时只能显示 16 种色彩,不过 EGA 有更多色盘可用。而 VGA 不但兼容于 CGA EGA 模式,更可以使用 Mode 13h 模式一次显示 256 色版中的所有色彩,而这 256 种颜色是从 262,144 种颜色(18-bit)中挑出的。

视频图形阵列(VGA)

image.png
  VGA

类型

模拟的电脑视频连接接口

产品历史

设计者

IBM

设计年代

1987

制造年代

1987年至今

规格

外接

yes

图像信号

模拟RGB视频 (-3 db at 400 MHz)

数据信号

R,G,B

脚位数量

15

脚位配置

image.png
 
从正面看VGA接座

引脚1

Red

引脚2

绿

Green

引脚3

Blue

引脚4

ID   Bit


引脚5

N/C


引脚6

接地端

R.GND

引脚7

绿接地端

G.GND

引脚8

接地端

B.GND

引脚9

无针脚(保留)

No.Pin

引脚10

接地端

GND

引脚11


ID   Bit

引脚12


ID   Bit

引脚13

水平同步

H   Sync

引脚14

垂直同步

V   Sync

引脚15


N/C

存储器寻址

VGA所使用的显存,通过一个窗口对应于PC的主存,它们的真实地址为0xA0000xC000之间的存储器。典型地来说地址的开始点是:

  • 0xA000 使用于 EGA/VGA 图型模式(4 KB

  • 0xB000 单色文字模式(2 KB

  • 0xB800 彩色文字模式和 CGA 兼容模式(2 KB

由于使用的区段皆不相同,在同一部机器上设备一个单色显卡(MDA)和另一个彩色显卡(VGAEGACGA)是不冲突的。在 1980 年代初,这种典型的搭配方式用于 Lotus 1-2-3 试算表上,一部高解析单色屏幕用来显示文字,而另一部低解析的 CGA 屏幕用来显示图表。许多程序员也用这种配置来开发软件,一部屏幕显示 debug 细节,另一部屏幕则显示真正的软件运行画面。许多商业的除错软件都支持这种配置,例如 Borland Turbo Debugger、由 Alan J. Cox 开发的 D86、微软的 CodeView 等,Turbo Debugger CodeView 可以甚至可拿来 debug 微软的 Windows 软件。也有 DOS 驱动程序如ox.sys模拟一个终端机来接受 Windows debug 信息,而不用真正接上另一个终端机。在 DOS 底下使用单色模式指令,使其输出转向单色也是可能的。另外,假如电脑上并无单色显卡,那么可以使用 EMM386.EXE 程序让其他程序可以使用 B000-B7FF 这一段存储器。(于 config.sys 文件中加入 "DEVICE=EMM386.EXE I=B000-B7FF"

程序技巧

一个未被纪录但十分广泛使用的技术称作 Mode X(由 Michael Abrash 导入),使程序员能够使用在 Mode 13h 之下无法做到的分辨率。他将 256 KiB 连续的显存解开并分成四个层次,因此在 256 色模式时全部 256 KiB 的存储器都可以使用。技术上这将使得处理变得更复杂,并且性能降低。但在一些特殊情况下,性能损失的情况可以被弥补:

  • 单色的多边形填色增快,因为一次写入可以设置四个像素。

  • VGA 可以用来协助显存之间的拷贝,有些时候会比使用 8088 80286 等慢速 CPU 更快。

  • 提供更高的分辨率:16 色可使用 704×528736×552768×576、甚至 800×600。诸如 Xlib1990 年代早期的 C 图形库)和 ColoRIX256 色的图形程序)支持 256 色下的各种分辨率调和:直行 256320 360 个像素,以及水平行 200240256400 480 个像素的组合(上限的 640×400 几乎用掉 256 KiB 中每一个 byte)。不过,320×240仍然是最常被使用的,因它为典型的4:3比例,为方形像素。

  • multiple video pages 让程序员能够使用双重缓冲(所有的 16 色模式都可),这在 Mode 13h 无法办到。

有时候,显示屏必须降低更新频率来满足这些模式,这会造成眼睛的疲劳这样的低分辨率虽然在PC市场早已淡出,但在Pocket PCPDA市场,它正逐渐成为标准。它也常被用来指称15针的D型接头,这种接头仍然用来传输各式各样分辨率的模拟信号。

VGA曾经被IBM官方宣布使用XGA标准所取代,但在历史上,它其实是被其他的OEM制造商用所谓的SVGA标准所取代。

技术性细节

VGA中的A指的是阵列(array而非转换器(adapter,因为它从一开始就被设计为一个单一的集成芯片,用来取代Motorola 6845和数十个离散的逻辑芯片组合而成的ISA母版,这种设计是之前的MDACGAEGA所使用的。VGA的这个特性允许它轻易的植入PC的主板之中,只需要额外的显存、振荡器和一个RAMDAC,就具备显示功能。IBMPS/2电脑系列就是采用将VGA放置于主板上的设计。

VGA的规格表如下:

  • 256 KiB Video RAM

  • 16 色和 256 色模式

  • 总共      262144 种颜色的色版(红、绿、蓝三色各 6 bit,总共  263种)

  • 选择性的      25.2 MHz 28.3 MHz 处理频率

  • 最多 720 个水平像素

  • 最多 480 条线

  • 最高 70 Hz      的更新频率

  • Vertical Blanking interrupt(不是所有卡都支持)

  • 平面模式:最多      16 色(4 bit 皮肤)

  • Packed-pixel 模式:256 (Mode 13h)

  • 顺畅滚动画面的能力

  • Some "Raster Ops" support

  • Barrel shifter

  • 支持分区画面

VGA支持可单独操控像素的APAAll Points Addressable)模式,也支持字母与数字的文字模式。标准的图形模式如下:

  • 640×480×16

  • 640×350×16

  • 320×200×16

  • 320×200×256色(Mode 13h

它也支持用模拟的方式画出向下兼容的分辨率:EGACGAMDA

标准文字模式

标准的VGA文字模式使用 80×25 40×25 个字母或数字组成的平面。每个字符的块状区域可以选择16种前景色和8种背景色;8种背景色来自bit容量较低的集合(以今天的标准来说,例如 ffffff 或者是 000000)。而字符本身也可设置是否闪烁,而字符的闪烁动作都是同时的。画面的闪烁功能和选择背景颜色的功能是可交换的,换句话说两者只能择一。以上这些选项和IBM先前生产的 CGA 转换器是相同的。

VGA虽然支持黑白和彩色的文字模式,但黑白模式很少使用。大多的VGA在显示黑白模式时使用彩色模式,即是将灰色字画在黑色背景上。而使用VGA的单色显示屏也能很好的支持这样的彩色模式。现代显示屏和显卡若连接不当,偶尔会导致显卡的VGA部份侦测显示屏为单色的,而这将使BIOS开机显示为黑白模式。通常在加载操作系统和适当的驱动程序以后,显卡的设置被覆盖,显示屏就会变回彩色。

在彩色的文字模式中,每个字符其实由两个byte代表。较低的一个byte用来显示字符,而较高的byte就用来代表彩色、闪烁等等属性。这种成对的byte模式是从CGA就一直传续下来的。

VGA色版

VGA的色彩系统可以向前兼容于EGACGA转换器,而它在其上又新增了一种设置。CGA可以显示16种色彩,EGA则将其扩充成从64种颜色色版选出的16色模式(即红绿蓝各2 bits)。VGA则更将其扩充成256种颜色色版,但为了向前兼容,一次只能选择256种之中的64种(例如第一个64种颜色集合、第二个)。所以一个。它们也不兼容于较老旧的显示屏,将造成诸如 overscan、闪烁、垂直滚动、缺乏水平同步等等缺点。因为如此,多数的商业软件使用的 VGA 调适都限制在显示屏的安全界线之下,例如 320×400(双倍分辨率,2 video pages)、320×240(方形像素,3 video pages)和 360x480(最高的兼容分辨率,1 video page)。

VGA接口工业相机

工业机器视觉应用中,还有许多的VGA接口的工业相机,主要用于一些直接由人眼观察的视觉项目中。因为只需要一个显示器、相机、镜头成像观察,不需要电脑、处理器等,因此通常设计成VGA接口,可以直接连接显示器进行观察。

VGA接口的相机,通常因为显示器的分辨率比较低,因此相机本身的分辨率也比较低,一般只能在130万左右,高的可以达到200万的的宽屏模式(1920*1080P),低端的则只有30万像素左右。


首页
84162741QQ
联系