发展情况
早期版本的视频显示适配器是依靠CPU来处理图象信息的,CPU不断地计算每 个象素点对变化信息的要求,并把数据通过I/O总线送到视频卡的帧缓冲器中, 所谓的帧缓冲器就是一个每时每刻保存屏幕图象的存储器。
Windows的图形用户接口激剧增加了 CPU和I/O总线的工作负荷,为了减 轻CPU的负担又要得到相当多的图形加速,解决的办法只能是在视频加速卡上加上一个处理芯片,不过CPU执行图形设备接口功能调用,而加速器不能执行该调用.图形加速器减少CPU的I/O总线的办法之 —就是对Windows的一些关键的GID功能使用硬连线的办法.(GDI是Windows 实现必要的图形功能的组成部分).2
我们来看一个完螫的工作过程。 Windows的应用程序送给图形设备接口 (GDI)—个图形功能调用请求,GDI就要求视频驱动程序执行这一功能,驱动程序 把请求送到加速器进行处理,处理器芯片通过帧缓冲控制器把处理后的屏幕数据 写到帧缓冲器中,帧缓冲控制器再把数据送到内存数模转换器,在那里把数据转 换成控制CRT(阴极射线管)的模拟信号,如果视频驱动程序不能识别出送来的请 求,图形设备接口就利用CPU和系统RAM来执行这一功能。这就是为什么加速卡带有各种驱动程序能支持最流行的Windows的图形应用程序的原因。2
为了获得最佳的显示配置,应当不断更新驱动程序.当在系统中加入 新的图形软件或者多媒体软件的时候,检査一下有没有加速卡最新版本的驱动程序,它们有可能包括在该软件里·如果没有,一般情况下都可以从制造商的公告牌下载得到它们,或者可以从某个在线服务的公开讨论会下载. 如果打算从当前的显示配置中把加速卡更换升级,那一定要保证选购一个符合系统总线标准的卡.2
结构图形加速器上的主要元件有图形加速芯片(Graphics accelerate chip)、随机存取存贮器(RAM)、随机存取存贮器数模转换器(RAMDAC)、时钟合成器(Clock Synchesizer)及基本输入输出系统(BIOS)。3
图形加速器的随机存取存贮器RAM可由动态随机存取存贮器芯片DRAM组成,也可由具有双向存取功能的图像随机存取存贮器芯片组成,前者造价便宜,后者造价昂贵,但对图像存取快,这是因为这种存贮器具有双端口,正如在图像存贮器VRAM中介绍的那样,它具有两个端口,图像数据从一个端口流进VRAM,从另一端可立即流出,在图像加速中,流出的图像像素的颜色数据立即通过随机存取存贮器的数模转换器(RAMDAC),转换成红、绿、蓝三色强度的电压值,送往显示器显示出颜色来。3
RAMDAC类似于VGA适配器中属性控制器中的数模转换器,它也包含有颜色查找表,通过VRAM的图像颜色数据,查找相应的红、绿、蓝三色数据送往数模转换器输出三色强度的颜色电压。
时钟合成器用来产生显示器的同步信号和有关控制的时钟信号。
基本输入输出系统(BI0S)是图像的基本输入输出系统,它固化了许多图像功能的DOS调用,如同VGA中的BIOS一样。3
功能随着象素分辨率和颜色分辨率的提高,构造一个视频系统相对说来既不困难,成本也不高,只需随之增加刷新缓冲区的存储容量即可。但是,随着分辨率的提高,也就意味着计 算工作量会成倍乃至几十倍增加,对图形控制工作量也是呈猛增势头。在PC视频子系统 内,无论计算还是控制均是由CPU完成的.由于计算量和控制量的增加,意味着在屏幕上显示信息量增加,由此可推出,整个系统的输入输出信息量增加,从而导致经常会超出 系统资源所允许的范围现象。4
解决这一问题的方法是,在视频系统内以图形加速器的形式构造一个有自激功能的 机构.在这里,标准视频系统的主要目的是把刷新缓冲区基本管理机制提供给硬件,刷新 缓冲区基本管理主要是对各个象素、一些专用象素或象素组用来控制显示图形块的图形 加速器等图形单元图形部件的管理,以及对像绘制线段、圆弧和显示模块等高层次图形原语等功能的管理。4
通过专用的图形协同处理器,在硬件上就可直接实现扩展功能,通过由硬件支持的图 形程序设计接口也同样可以实现扩展功能。一般说来,所谓硬件支持指的是标准微处理机支持,而且是与驻留在ROM内的图形控制程序一起提供支持。对这样的系统来说,高级 程序设计接口是一个非常重要的接口,在构造图形加速器时非常有用。
图形加速器主要是接收CPU对图元的描述(往往是命令、函数和描述属性的参数),执行坐标系的变换(把世界坐标系变换成设备坐标系,主要是浮点计算),裁剪、变比、彩色明暗处理、开窗口和隐藏面消除等操作,其输出有的是像素操作、光素操作,而高档的图形加速器直接输出红绿蓝彩色信号。5
作为工作站上的图形系统,除了图形加速器外,还要有该图形加速器所支持的图形库,例如:SUN公司的GX,TurboGXplus,SPARCstationZX图形加速器支持该公司XGL的图形库,SGI公司的Indy图形板,Reality EnginZ等都支持该公司的IRIS图形库和OPENGL。5
加速原理图形加速器的关键器件是图形加速芯片,它将一些常用的基本绘图功能和图像处理功能的软件进行了固化,即将这些功能软件固化在该芯片内,这样当要用到这些画图功能时,无需再由CPU进行计算并调用某些画图功能,而直接由加速芯片执行,因而可大大提高画图速度,对VGA或SVGA来说,上述过程还需通过总线来回在CPU和适配器之间进行图像数据传输,因而更延误了时间。对图形加速器来说,上述过程均在加速器内进行,不再进行总线操作。因而加速了图形生成。3
在图形加速芯片中固化的图形和图像功能随厂家不同而有所不同,例如专为Windows设计的图形加速器,对处理由模线、长方形等规则图形组成的图形适用,因为在Windows窗口内,看到的图形大都由这些规则图形组成,当用来加速不规则图形,例如三维画则不适用。3
图形加速器完全兼容VGA和SVGA,它们一般采用VESA总线或PCI总线。
由于图形加速器中VRAM存放的是要显示的图像数据,表示一个像素数据的长度,代表了可显示的颜色数,因而随VRAM容量的不同、显示分辨率的不同,可显示的颜色数也不同,表3.6示出了图形加速器可支持的图像分辨率和显示的颜色数及要求的VRAM容量。
优点图形加速器能够快速的计算图形方面的计算,如绘制三角形,也具备常用图形图像格式的计算,如jpg解压、视频流解压等等,具备高级的纹理、材质、光照的计算,大大减轻主CPU的运算负担,从而“加速”了图形图像。
图形加速器的优点非常明显:除整个图形系统的性能有明显改进外,还明显减轻了由于对众多图形管理而给CPU带来的压力,有些硬件还达到了独立操作的境地。有了高级图形接口就可以防止程序设计人员直接对视频硬件操作.由此也就有效地避免了兼容性问题。从某种意义上说,图形加速器只不过是有效的满足了图形程序设计接口的需要,而 且一开始就应该把图形程序设计接口装到bios内。4