除了视频VRAM被看成是一个大的位图数组外,显示程序可以在视频VRAM中设置任何它希望显示的模式,然后立即在显示器上显示出来。例如,要显示字符,显示程序先为每个字符在视频VRAM中分配一块9×14大小的空间,然后在相应的位置上填上要显示的点,再在屏幕上显示出来。这种实现方式可以使显示程序生成不同的字体并任意混合,硬件要做的只是显示出位图数组的内容。对于彩色显示器,每个象素可以用8,16或24位描述其显示属性。
位图显示方式在支持多窗口的应用中被广泛使用。窗口是由一个程序使用的屏幕区域。有了多窗口后,同时运行几个程序成为可能,每个程序可以在自己的窗口内独立显示自己的运行结果。
尽管图形显示器具有高度的灵活性,但它们也同时具有两个主要的不足之处。第一,图形显示器必然需要有大容量的视频VRAM。目前常见的显示器的分辨率分别为640×480(VGA),800×600(SVGA),1024×768(XVGA)和1280×960(图形工作站)。需要指出的是,为了和当前电视机的宽高比一致,这些显示器的宽高比均为4:3。为得到真彩色的显示效果,每个象素的三原色还各需8位来描述,也就是3字节/象素。这样,对于分辨率为1024×768的显示器,就需要2.3MB的视频VRAM。
对大容量视频VRAM的要求迫使一些计算机对此进行了一些妥协,只使用一个8位数来表示颜色属性。该数被用作查找有256个入口的调色板硬件表的索引,调色板的每个元素存放一个24位的RGB(红、绿、蓝3基色)值。通过索引颜色这种设计方案,可以减少2/3的视频VRAM需求,但屏幕上同时最多只能有256种颜色。一般情况下,屏幕上每个窗口都有自己的颜色对应关系,但由于只有一个硬件调色板,当屏幕上有多个窗口存在时,只有一个能正确着色。
图形显示器的第二个不足在性能上。因为尽管数据从视频存储器VRAM拷贝到显示器不需要占用系统主总线,但将数据写到视频VRAM中却要使用系统总线。要显示1024×768的全屏幕、全颜色的一幅图象就需要为每帧拷贝2.3MB的数据到视频VRAM中。即使每秒采用25帧,也要求有57.6MB/秒的传输速度。这种负载不仅(E)ISA总线无法负担,就是在使用
PCI总线的高性能的显卡也必须采取一些措施,作出一些让步。
与性能相关的问题还有如何滚屏。许多显卡使用特殊的硬件,通过改变基址寄存器而不是复制数据来移动部分屏幕内容。
|
|