专利名称:窗口化vga图象的设备和方法
技术领域:
本发明一般涉及图形显示适配器,尤其涉及具有在窗口中显示视频图形阵列(VGA)功能的适配器。
具有较高功能的加速图形显示适配器在工业中正得到广泛应用,这些适配器作为工业标准正在逐渐取代VGA适配器。加速图形适配器具有专门属于自己的处理器,用于把图象信息送入存储设备,而VGA是使用系统或主机的处理器把图象信息送入存储设备。正因为具有自己专用的处理器,加速图形适配器比VGA更快速、效率更高。
然而,由于已经存在的VGA应用程序,继续供应VGA适配器就成为工业中一个长期存在的需求。为满足这样的需求,一些显示适配器制造商设计出了具有VGA功能的加速图形显示适配器。
图1描述了一个具有这种VGA功能的加速图形适配器100,它包括加速图形控制器110以及一个VGA端口和一个输入端口。图形控制器110被连到一个帧缓冲区130,帧缓冲区130又进一步连到随机存取存储数模转换器(RAMDAC)150。RAMDAC150具有一个显示端口,用于向显示监控器160提供图象,同时还有一个VGA端口用于接收VGA图象数据。图形适配器100还包含一个VGA控制器120,连接到加速图形控制器110的VGA端口、RAMDAC150的VGA端口。以及一个动态随机存取存储器(DRAM)140。
从控制器110的输入端口接收到的加速图形数据被加速图形控制器110处理并存储在帧缓冲区130中。当需要被显示时,数据被送入RAMDAC150,用于最终在监控器160上显示。被加速控制器110接收的VGA数据,通过VGA端口被送入VGA控制器120,并存储在DRAM140中。当数据准备好显示时,被VGA控制器120从DRAM140中检索出来,然后通过RAMDAC150的VGA端口送入RAMDAC150。
正如图1所示,为实现VGA兼容,加速图形适配器使用两个存储设备-帧缓冲区130和DRAM140,这两个存储设备的使用构成适配器的全部开销。
很多时候由于各种各样的原因,用户可能希望同时在屏幕上显示VGA图象和加速图象。在这种情况下,每幅图象被显示在一个窗口中。然而,当VGA产生的图象被显示时,图1所示的图形适配器并不允许使用加速控制器。更具体的是,VGA控制器的使用决定了RAMDAC150的操作,VGA所控制的RAMDAC操作与加速图形控制的RAMDAC操作并不兼容。因此,同时在一个屏幕上显示VGA图象和加速图象是不可能的。
因此,需要一种技术,用于具有VGA功能的、只使用一个存储设备来存储图形图象(包括VGA图象)的显示适配器,允许VGA和加速图形图象的同时显示。
本发明可以满足这一技术需要。本发明提供了在显示屏幕上窗口化VGA图象的设备和方法。设备是一个图形适配器,包括一个VGA控制器,一个光栅机制,和一个具有可显示存储器与不可显示存储器的帧缓冲区。VGA控制器从帧缓冲区的不可显示存储器检索并存储VGA数据,并把这些数据提供给光栅机制,用于进一步处理,比如把显示屏幕上的VGA图象窗口化。处理后,光栅机制的加速图形处理器把VGA数据及其它图形数据存入帧缓冲区的可显示存储器中,用于以后显示。每经过监控器的一次全屏幕显示,VGA图象数据都被刷新。
图1描述了一个具有VGA功能的加速图形适配器。
图2是被本发明一优选实施方式所使用的数字计算机的框图。
图3是一个图形适配器的部分框图。
图4描述了用于在显示监控器上显示多窗口的设备的详细框图。
图2是被本发明优选实施方式所使用的数字计算机200。在具有输入设备230和输出设备240的计算机框205中,计算机包括主处理器210和与之相连的主存储器220。输入设备230可以包括键盘、鼠标,图形输入板或其它类型的输入设备。输出设备240可以包括文本监控器,绘图仪或其它类型的输出设备。主处理器210还可以与图形输出设备310相连,如经由图形适配器300的图形显示器。图形适配器300可以位于一个适配器槽260A中,在总线250上从主处理器210接收图形指令。一个调制解调器或其它通信适配器350和一个硬盘355也可以位于槽260C和260D上,用于通过总线250提供与主处理器的通信。调制解调器350可以通过通信线360与其它数据处理系统370通信。主存储器220,硬盘355和软盘都称为存储器。
本发明在图形适配器300中实现,图3是如上述在图2中描述过的图形适配器300的部分框图。这些部分包括与一个光栅机制420和一个VGA控制器425相连的地址译码器480,VGA控制器425和光栅机制420也相连。地址译码器480用于向光栅机制或VGA控制器传送数据。本领域中地址译码器已众所周知,它们的实现就不在这里说明了。光栅机制确定为产生一幅特定的图象数据,哪些象素是需要被更新的,以及如何更新象素以产生视觉上精确的显示。VGA控制器425用从处理器210中得到的图象数据更新VGA存储器。图形适配器300中还有的部分是一个帧缓冲区430,它包括一个可显示存储器432和一个不可显示存储器434。帧缓冲区430与光栅机制420相连。VGA控制器425使用不可显示存储器434存储VGA数据,可显示存储器432还与RAMDAC440相连。
如果图形系统被设计成显示1024×768或768K字节数据,帧缓冲区通常有1024K字节数据的存储能力,其中的768K字节用于容纳最终将被显示的数据,因此称为显示存储器,另外256K字节并不存放一定要显示的数据,因此被称为不可显示存储器。通常存储能力中的这256K字节不被使用,因此被浪费了。本发明有效地使用了这一存储能力来存储VGA图象数据,不再需要另外的存储设备来存储这些数据。尽管本发明使用一个设计成显示768K字节数据的系统来描述,使用不同大小的图象数据的系统也可以应用。例如,设计成显示1280K字节图象数据的系统使用有2048字节存储能力的帧缓冲区,未被使用的768字节帧缓冲区被用作VGA存储器。
传统的VGA存储设备或DRAM通常分为4级映象,每一级映象用于保存图象的不同信息。例如在文本模式下,第一级映象保存字符编码信息,第二级映象保存属性信息,第三级映象保存字体信息,第四级映象通常只用于图形模式。同样,不可显示存储器434被分为4级存储映象,用于保存VGA图象的不同信息。尽管帧缓冲区的不可显示部分可能在物理上被分为4级映象,在这一示例中它被分成虚拟映象。也就是,VGA控制器使用寻址机制有效地应用存储器作为4级不同映象。为有效地传送,VGA映象数据与一个单独的存储器434存取相结合。
在操作中,当主机处理器210向图形适配器300传送数据时,地址译码器480对数据地址进行译码以确定把数据传送到光栅机制420或VGA控制器425。传入VGA控制器425的数据被VGA控制器处理,然后传送到不可显示存储器434存储。同样,传入光栅机制420的数据经处理后被送到可显示存储器432存储。当VGA数据需要被显示时,VGA控制器425从不可显示存储器434中检索出数据,按要求对数据进行处理以生成图象,然后把它送入光栅机制420。光栅机制420把VGA数据送入可显示存储器432,以合成VGA图象和由光栅机制420生成的任何图象。光栅机制通过图2中的主处理器210,获得所需的合成图象中VGA图象窗口的起始地址。VGA图象数据被映象到可显示存储器432中由起始地址和VGA图象大小决定的地方,这些信息是由VGA操作方式定义的。如果需要,还可以对VGA图象作比例变换,以适合为显示器470生成的最终屏幕分辨率。经过这些处理的数据被送入可显示存储器432存储,当需要被显示时,数据通过RAMDAC440传到显示器470。
可显示存储器432中的图象数据以光栅扫描的方式显示在显示监控器470上。也就是,图象的显示方式是,一个通过显示监控器470的整个显示空间的扫描器用一束可调控电子束一行一行地扫描。相应的,与监控器左上角素相关的图象数据被首先提供,而与右下角象素相关的图象数据被最后提供。到达右下角象素后,电子束纵向消隐或关闭,以防止在它返回监控器左上角的过程中显示象素。在纵向消隐的初期,VGA控制器425开始从不可显示存储器434中读出数据,把它提供给光栅机制420处理。光栅机制420处理数据并把它存储到可显示存储器432。因此,在显示器470的光栅扫描处理过程需要图象数据之前,存储器432中的VGA图象已经生成了。这就和为显示器470生成VGA图象同步,避免了当要显示而扫描时,存储器中图象不完整(部分新图象,部分旧图象)的情形。注意,可显示存储器432中的加速数据在每次主处理器210向图形适配器传送加速图形数据时都被刷新。
图4描述了用于在显示监控器上显示多窗口的设备的详细框图。设备包括与帧缓冲区520相连的图形处理器510,一个窗口标识符(wid)530和RAMDAC540。RAMDAC540也和wid530及帧缓冲区520相连。图形处理器510包括在图3的光栅机制420中,它把要显示的数据(VGA和加速图形)通过数据总线570传到帧缓冲区520。图形处理器510也通过地址总线580把要传送数所的寻址信息送到wid530。LUT545中的调色板通过控制总线560被图形处理器510更新。
wid530和可显示存储器520被相同地映射,也就是,wid530中的每个位置对应于存储器520中的一个象素位置。wid530产生的一个代码被RAMDAC540用来确定相应象素的属性,如象素的颜色深度等。RAMDAC540使用这些属性来为某一特定窗口选择对数据的正确解释,如每个象素的位数,调色板地址等。这样,VGA图象数据和加速图象数据可以被同时显示在显示监控器上,分别以各自的象素解释方式在各自的窗口中。例如,每象素8位的VGA数据可以和每象素16位的加速图象一同显示。
尽管已参照特定实施方式描述了本发明,对于本领域技术人员来说,很明显还有其他实施方式。因此,如上说明不能视为对本发明范围的限制,本发明的范围由所附权利要求来确定。
权利要求
1.一种能够窗口化VGA图象的图形显示适配器包括一个光栅机制,用于处理和在显示存储器中存储图形图象数据,包括VGA图象数据,并在显示监控器上同时显示由所述图形图象数据表示的多个图形图象,每个图象数据在各自的窗口中。
2.根据权利要求1中的图形显示适配器其特征在于,所述显示存储器包括一个可显示存储器部分和一个非显示存储器部分。
3.根据权利要求2中的图形显示适配器其特征在于,不可显示存储器部分被划分成4级映象,每级映象用于保存VGA图象的信息数据。
4.根据权利要求3中的图形显示适配器其特征在于,还包括一个VGA控制器,所述VGA控制器用于存储,处理,和从所述显示存储器的所述不可显示存储器部分检索VGA图象数据。
5.根据权利要求4中的图形显示适配器其特征在于,所述被检索出的VGA图象数据被提供给所述的光栅机制,以使这些数据被保存在所述帧缓冲区的所述可显示存储器中,并使这些数据能被窗口化在所述屏幕上。
6.根据权利要求5中的图形显示适配器其特征在于,每次全屏幕显示后,VGA图象数据由所述VGA控制器提供给所述光栅机制。
7.根据权利要求6中的图形显示适配器其特征在于,所述光栅机制对所述VGA图象进行比例变换,以适合最终屏幕分辨率。
8.一种窗口化VGA图象数据的方法包括如下步骤获得并处理图形图象数据,包括VGA图象数据;将所述图形图象数据存入显示存储器;在显示监控器上同时显示多个所述图形图象数据,每一图象数据在各自的窗口中。
9.根据权利要求8中的方法其特征在于所述显示存储器包括一个可显示存储器部分和一个不可显示存储器部分。
10.根据权利要求9中的方法其特征在于,所述不可显示存储器部分分成4级映象,每级映象用来保存VGA图象的信息数据。
11.根据权利要求10中的方法其特征在于,还包括一个步骤,存储,处理和通过VGA控制器从所述显示存储器的所述不可显示存储器部分检索VGA图象数据。
12.根据权利要求11中的方法其特征在于,所述被检索出的VGA图象数据被提供给所述的光栅机制,以使这些数据被保存在所述显示存储器的所述可显示存储器部分,并使这些数据能被显示在所述屏幕的窗口中。
13.根据权利要求12中的方法其特征在于,每次全屏幕显示后,VGA图象数据由所述VGA控制器提供给所述光栅机制。
14.根据权利要求13中的方法其特征在于,所述光栅机制对所述VGA图象进行比例变换,以适合最终屏幕分辨率。
全文摘要
本发明提供了在屏幕上窗口化VGA图象的设备和方法。设备是一个图形适配器,包括一个VGA控制器,一个光栅机制,和一个具有可显示存储器和不可显示存储器的帧缓冲区。VGA控制器存储、处理,和从帧缓冲区的不可显示存储器检索VGA数据,并把这些数据提供给光栅机制用于进一步处理,比如在显示屏幕上把VGA图象显示在窗口中。处理后,光栅机制的加速图形处理器把VGA数据和其它图形数据存入帧缓冲区的可显示存储器中,用于以后的显示。
文档编号G09G5/36GK1167941SQ9710455
公开日1997年12月17日 申请日期1997年3月25日 优先权日1996年4月22日
发明者查勒斯·雷·约翰斯, 格利·阿伦·尼尔, 约翰·托马斯·罗伯森 申请人:国际商业机器公司