VGA(VideoGraphicsArray)是IBM在1987年随PS/2机一起推出的一种视频传输标准,具有分辨率高、显示速率快、颜色丰富等优点,在彩色显示器领域得到了广泛的应用。
目前VGA技术的应用还主要基于VGA显示卡的计算机、笔记本等设备,而在一些既要求显示彩色高分辨率图像又没有必要使用计算机的设备上,VGA技术的应用却很少见到。1
VGA(VideoGraphicsArray)是IBM在1987年随PS/2机一起推出的一种视频传输标准,具有分辨率高、显示速率快、颜色丰富等优点,在彩色显示器领域得到了广泛的应用。
目前VGA技术的应用还主要基于VGA显示卡的计算机、笔记本等设备,而在一些既要求显示彩色高分辨率图像又没有必要使用计算机的设备上,VGA技术的应用却很少见到。1
VGA模式
1987年
分辨率高、显示速率快
16色和256色
VGA(VideoGraphicsArray)是IBM在1987年随PS/2机一起推出的一种视频传输标准,具有分辨率高、显示速率快、颜色丰富等优点,在彩色显示器领域得到了广泛的应用。目前VGA技术的应用还主要基于VGA显示卡的计算机、笔记本等设备,而在一些既要求显示彩色高分辨率图像又没有必要使用计算机的设备上,VGA技术的应用却很少见到。本文对嵌入式VGA显示的实现方法进行了研究。基于这种设计方法的嵌入式VGA显示系统,可以在不使用VGA显示卡和计算机的情况下,实现VGA图像的显示和控制。系统具有成本低、结构简单、应用灵活的优点,可广泛应用于超市、车站、飞机场等公共场所的广告宣传和提示信息显示,也可应用于工厂车间生产过程中的操作信息显示,还能以多媒体形式应用于日常生活。
1显示原理与VGA时序实现
通用VGA显示卡系统主要由控制电路、显示缓存区和视频BIOS程序三个部分组成。控制电路如图1所示。控制电路主要完成时序发生、显示缓冲区数据操作、主时钟选择和D/A转换等功能;显示缓冲区提供显示数据缓存空间;视频BIOS作为控制程序固化在显示卡的ROM中。
1.1VGA时序分析
通过对VGA显示卡基本工作原理的分析可知,要实现VGA显示就要解决数据来源、数据存储、时序实现等问题,其中关键还是如何实现VGA时序。VGA的标准参考显示时序如图2所示。行时序和帧时序都需要产生同步脉冲(Synca)、显示后沿(Backporchb)、显示时序段(Displayintervalc)和显示前沿(Frontporchd)四个部分。几种常用模式的时序参数如表1所示。
1.2VGA时序实现
首先,根据刷新频率确定主时钟频率,然后由主时钟频率和图像分辨率计算出行总周期数,再把表1中给出的a、b、c、d各时序段的时间按照主计数脉冲源频率折算成时钟周期数。在CPLD中利用计数器和RS触发器,以计算出的各时序段时钟周期数为基准,产生不同宽度和周期的脉冲信号,再利用它们的逻辑组合构成图2中的a、b、c、d各时序段以及D/A转换器的空白信号BLANK和同步信号SYNC。
1.3读SRAM地址的产生方法
主时钟作为像素点计数脉冲信号,同时提供显存SRAM的读信号和D/A转换时钟,它所驱动的计数器的输出端作为读SRAM的低位地址。行同步信号作为行数计数脉冲信号,它所驱动的计数器的输出端作为读SRAM的高位地址。由于采用两片SRAM,所以最高位地址作为SRAM的片选使用。由于信号经过CPLD内部逻辑器件时存在一定的时间延迟,在CPLD产生地址和读信号读取数据时,读信号、地址信号和数据信号不能满足SRAM读数据的时序要求。可以利用硬件电路对读信号进行一定的时序调整,使各信号之间能够满足读SRAM和为DAC输入数据的时序要求。
1.4数据宽度和格式
如果VGA显示真彩色BMP图像,则需要R、G、B三个分量各8位,即24位表示一个像素值,很多情况下还采用32位表示一个像素值。为了节省显存的存储空间,可采用高彩色图像,即每个像素值由16位表示,R、G、B三个分量分别使用5位、6位、5位,比真彩色图像数据量减少一半,同时又能满足显示效果。
2功能单元设计
实现VGA显示,除了实现时序控制,还必须有其他功能单元的支持才能实现完整的图像显示。
(1)控制器:VGA显示有多种模式,需要通过控制器实现模式间切换,还需要对显示的内容进行接收、处理和显示。所以控制器的性能越高,数据更新和显示效果就越好。
(2)显示数据缓存区:VGA显示要求显存速度快、容量大。读速度要达到65MHz以卜,存储容量至少要2MB。可采用高速SRAM或SDRAM作为显示数据缓存。
(3)数模转换器DAC:VGA显示对数模转换DAC有如下要求:一是高速转换,转换的速度应该在80MHz或以上;二是刚步性好,能保证R、G、B三路信号的同步性;三是有相应的精度。可选择一种包括3路8位高速D/A的专用视频芯片。
(4)数据源及其接口:要提高VGA显示的效率,就要不断更新数据,同时还要保证实时性,因此需要非常高的接口速度。VGA显示卡虽可达到100Mbps的数据更新速度,但是一般设备、特别是嵌入式设备达不到这么高的速度,而且大多数情况下也不需要这么高的数据更新率。目前常用接口为EPP接口、USB接口、TCP/IP、RS232C/485等。其中TCP/IP、EPP接口和USB接口是基于计算机的,速度较快;TCP/IP、RS232C/485是基于网络通信的接口,其中RS485速度虽慢,但应用广泛且容易实现远程控制。
在数据源为低速接口时,可以考虑采用Flash或者SM存储卡等预先存储一些常用的图像显示数据和字库文件,在更新数据时直接应用这些数据,从而加快显示缓存的更新速度。这样既能满足高分辨率图像的显示,又能满足文字信息数据的快速更新。刚时为了存储更多的图像,可以先存储JPEG格式图像,再由控制器解码成BMP位图图像后送到显示缓存显示,这样就相对扩展了Flash的存储空间。同时,由于图像的解码速度要大大快于数据源接口的速度,也就相应提高了显示缓存的数据更新速度。
由各功能单元组成的VGA显示硬件结构框图如图3所示。
3显存数据更新与显示的同步实现
在VGA显示时,要考虑如何实现显存数据更新与显示的同步进行。解决的方案有以下几种:
(1)采用具有缓存作用的双口RAM,这种方法使用的器件数量多、功耗大、成本高,基本不可取。
(2)采用两组SRAM进行乒乓工作模式,一组SRAM用于显示的同时,另一组SRAM用于图像数据的更新,然后在两组SRAM之间切换。这样做会提高一些成本,而且需要更复杂的总线控制。
(3)利用FPAG/CPLD和SDRAM构造双口SRAM。这种方法实时性好,成本较低,时序控制比较复杂,它是
实现高性能低成本要求的最佳方案。
(4)采用一组SRAM作为显存,可以简化系统设计、降低成本。这时可以考虑利用行时序和帧时序中SRAM总线空闲的时序段,在不关闭图像显示的情况下实现显存SRAM的数据更新。该方法的更新率与数据写速度密切相关,显存的写数据速度越快,该方法的更新率就越高。
假设CPU的工作时钟最大为60MHz,并采用JPEG解码更新方式。这时如果将解码缓存区分配在CPU片内内存,则更新数据时直接由内存向SRAM写数据,一次需要0.17μs;如果将解码缓存区分配在片外空间,则更新数据时CPU要先从片外读数据,再向SRAM写数据,这样写一次需要0.25μs。在相邻显示的两帧图像只存在局部差别或更新文本显示信息时,可使用局部数据更新方法,以提高更新率。表2给出了显示每帧图像包含的总线空闲时间,以及在不同解码缓存区分配方式下图像全部更新和10%局部更新的帧率。这里提到的帧率是指对显存数据的更新速度,而不是指图像的屏幕刷新率,它对刷新率没有影响。
基于以上方案设计的嵌入式VGA显示系统在只有系统控制板和CRT显示器的情况下实现了嵌入式高分辨率VGA显示。
通过对嵌入式VGA显示系统的设计分析和实际使用,得到如下结论:
(1)由于VGA显示是一个高速过程,所以选择器件时要选择高速器件。
(2)VGA显示时序要求较严格,时序中的前后沿及同步脉冲宽度都要依照严格的参考数据设置。
(3)在一般情况下,由于数据接口的限制,数据更新率不能达到计算机的水平。通过一些特殊设计,还是能够满足大多数嵌入式VGA的需求。
(4)性能、成本和复杂度要综合考虑,要以系统的实际需求为目标,采用合理而实用的设计方案。
VGA(VideoGraphicsArray)是IBM于1987年提出的一个使用模拟信号的电脑显示标准,这个标准已对于现今的个人电脑市场已经十分过时。即使如此,VGA仍然是最多制造商所共同支援的一个低标准,个人电脑在加载自己的独特驱动程式之前,都必须支援VGA的标准。例如,微软Windows系列产品的开机画面仍然使用VGA显示模式,这也说明其分辨率和载色数的不足。
VGA这个术语常常不论其图形装置,而直接用于指称640×480的分辨率。VGA装置可以同时储存4个完整的EGA色版,并且它们之间可以快速转换,在画面上看起来就像是即时的变色。
除了扩充为256色的EGA式色版,这256种色彩其实可以透过VGADAC(Digital-to-analogconverter),任意的指定为任何一种颜色。这就程度上改变了原本EGA的色版规则,因为原本在EGA上,这只是一个让程式可以在每个频道(即红绿蓝)在2bit以下选择最多种颜色的方式。但在VGA下它只是简单的64种颜色一组的表格,每一种都可以单独改变——例如EGA颜色的首两个bit代表红色的数量,在VGA中就不一定如此了。
VGA在指定色版颜色时,一个颜色频道有6个bit,红、绿、蓝各有64种不同的变化,因此总共有262,144种颜色。在这其中的任何256种颜色可以被选为色版颜色(而这256种的任何16种可以用来显示CGA模式的色彩)。
这个方法最终仍然使了VGA模式在显示EGA和CGA模式时,能够使用前所未有的色彩,因为VGA是使用模拟的方式来绘出EGA和CGA画面。提供一个色版转换的例子:要把文字模式的字符颜色设定为暗红色,暗红色就必须是CGA16色集合中的一种颜色(譬如说,取代CGA默认的7号灰色),这个7号位置将被指定为EGA色版中的42号
VGA的规格表如下:
*256KiB的Video RAM
*16色和256色模式
*总共262144种颜色的色版(红、绿、蓝三色各6bit,总共(26)3种)
*选择性的25.2MHz或28.3MHz处理频率
*最多720个水平像素
*最多480条线
*最高70Hz的更新频率
*Vertical Blanking interrupt(不是所有卡都支援)
*平面模式:最多16色(4bit面板)
*Packed-pixel模式:256色(Mode13h)
*顺畅卷动画面的能力
*Some "Raster Ops" support
*Barrel shifter
*支援分割画面
VGA支援可单独操控像素的APA(All Points Addressable)模式,也支援字母与数字的文字模式。标准的图形模式如下:
*640×480×16色
*640×350×16色
*320×200×16色
*320×200×256色(Mode13h)
它也支援用模拟的方式画出以往规格的分辨率:EGA、CGA和MDA。
标准的VGA文字模式使用80×25或40×25个字母或数字组成的平面。每个字符的块状区域可以选择16种前景色和8种背景色;8种背景色来自bit容量较低的集合(以今天的标准来说,例如ffffff或者是000000)。而字符本身也可设定是否闪烁,而字符的闪烁动作都是同时的。画面的闪烁功能和选择背景颜色的功能是可交换的,换句话说两者只能择一。以上这些选项和IBM先前生产的 CGA 转换器是相同的。
VGA虽然支援黑白和彩色的文字模式,但黑白模式很少使用。大多的VGA在显示黑白模式时使用彩色模式,即是将灰色字画在黑色背景上。而使用VGA的单色显示器也能很好的支援这样的彩色模式。现代显示器和显卡若连接不当,偶尔会导致显卡的VGA部份侦测显示器为单色的,而这将使BIOS开机显示为黑白模式。通常在加载操作系统和适当的驱动程序以后,显卡的设定被复盖,显示器就会变回彩色。
在彩色的文字模式中,每个字符其实由两个byte代表。较低的一个byte用来显示字符,而较高的byte就用来代表彩色、闪烁等等属性。这种成对的byte模式是从CGA就一直传续下来的。VGA的英文全称是Video Graphic Array,即显示绘图阵列。VGA支持在640X480的较高分辨率下同时显示16种色彩或256种灰度,同时在320X240分辨率下可以同时显示256种颜色.
肉眼对颜色的敏感远大于分辨率,所以即使分辨率较低图像依然生动鲜明。VGA由于良好的性能迅速开始流行,厂商们纷纷在VGA基础上加以扩充,如将显存提高至1M并使其支持更高分辨率如800X600或1024X768,这些扩充的模式就称之为VESA(Video Electronics Standards Association,视频电子标准协会)的Super VGA模式,简称SVGA,现在的显卡和显示器都支持SVGA模式。不管是VGA还是SVGA,使用的连线都是15针的梯形插头,传输模拟信号。
只有在电脑显卡驱动异常,进不去桌面的时候选择这个模式,这个模式会加载系统默认自带的驱动,以方便用户操作.
目前大多数计算机与外部显示设备之间都是通过模拟VGA接口连接,计算机内部以数字方式生成的显示图像信息,被显卡中的数字/模拟转换器转变为R、G、B三原色信号和行、场同步信号,信号通过电缆传输到显示设备中。对于模拟显示设备,如模拟CRT显示器,信号被直接送到相应的处理电路,驱动控制显像管生成图像。而对于LCD、DLP等数字显示设备,显示设备中需配置相应的A/D(模拟/数字)转换器,将模拟信号转变为数字信号。在经过D/A和A/D2次转换后,不可避免地造成了一些图像细节的损失。VGA接口应用于CRT显示器无可厚非,但用于连接液晶之类的显示设备,则转换过程的图像损失会使显示效果略微下降。
主要应用在,显示分辨率设置过高,显示器黑屏,无法正常显示了。要修复这个问题,就必须启动到VGA模式,这样分辨率、刷新率会很低,方便用户更改到合适的设置。
是Windows系统诊断的一种方式。
1.电脑启用vga模式是什么意思?怎么修复?·IT专家网