为显示属性提供内定时时变特性的图形显示系统和方法

文档序号:2641433阅读:233来源:国知局

专利名称::为显示属性提供内定时时变特性的图形显示系统和方法
技术领域
:本发明通常涉及计算机图形系统和子系统,特别涉及显示属性具有时变特性的计算机图形子系统。更具特殊的是,本发明涉及在计算机图形系统和子系统中为提供立体显示、亮度变化或图像混合所需的定时技术。在计算机图形领域,许多应用要求具有立体显示功能。立体显示可在二维屏幕上提供三维(3D)显示的幻觉。在计算机图形中,立体显示通常应用于分子模型建立、高级CAD/CAM、建筑学、以及其它应用领域,在这些领域中,立体显示可以加强对给定问题集的理解或可视化(科学可视化)。目前出现一种趋势,即使用立体显示在计算机应用中提供所谓的“虚拟现实”。这些应用的一部分属于科学可视化领域,而绝大多数3D和立体应用预期将应用于娱乐(游戏)和教育。为将这种应用的大规模市场潜力变为现实,商业上的压力正在起作用以显著提高立体显示的性能及减少其复杂度和成本。为从二维屏幕上产生三维(3D)显示的视觉,先有技术中采用了许多立体化技术。所有技术都力图向观察者的每只眼睛唯一、独立地呈现略有差别的图像,以模仿观察者的自然立体视觉效果。先有技术分为同时地或者顺序地向左眼和右眼呈现不同的图像,这些相同的技术适用于大多数显像媒体类型,无论是电子的(如计算机CRT显示器)还是光学的(如电影银幕)。用于立体3D应用的计算机显示通常属于前一种类型,它从一个显示屏幕上向每只眼睛唯一地呈现交替的图像帧。左眼必须不会感觉出预定给右眼的图像帧,反之亦然。为此,可给用户戴上特制眼镜,当预定给右眼的图像帧正在显示时,它可以挡住左眼的视线,反之亦然。同时,还必须使送给每只眼的单独图像连续交替播放。在计算机图形中,一帧显示图像可分为大量离散的图像元素或像素。每个像素代表输出显示器上的一个物理位置,并与一个颜色或特定灰度值相联系。在图像和图形系统中,显示器上的每个像素各由保存在存贮设备中的数据表示。这种保存显示图像的存贮设备通常称为帧缓冲区。一个高分辨率显示器通常具有1600×1280,即2048000个像素的图象。每个像素的值可由1到32或更多的位来表示,因而需用大量的存贮器来保存图像。为满足这种对大容量高速存贮器的要求,需要使用高密度存贮设备,例如动态随机存取存贮器(″DRAM″)。视频显示器扫描模式和刷新频率的原理要求(通过视频生成电路)把对帧缓冲区的刷新与对其保存值的扫描分离开来,以便在视频显示器上产生图像。于是,一种称为视频RAM(VRAM)的特殊DRAM存贮器被研制出来,它可以即时地将图形帧缓冲区中地内容显示到屏幕上,同时允许图形或图像处理器以新数据刷新帧缓冲区。VRAM含有两个输入/输出端口(一个用于随机存取,一个用于串行存取)和一个地址端口。这类存贮器通常称为双端口存贮器。通常,在计算机图形中,立体显示还使用“双缓冲器”技术。以双缓冲器形式正在被显示的像素显示数据分成两个子像素区域。这两个区域称为缓冲区A和缓冲区B。系统提供一个“缓冲区选择”信号(根据其它属性)指明两个缓冲区中哪一个应被处理及显示。通过简单地变换缓冲区选择信号,在整个显示器上任何位置上所有属于某一双缓冲应用的双缓冲像素将立即在缓冲区A和缓冲区B之间切换。作为另一种更好的选择,调色板DAC设备可以隔开缓冲区A和缓冲区B之间的切换,直至下一显示帧的开始。在进行立体显示时,缓冲区A可以包含左眼的图像,而缓冲区B可以包含右眼的图像。在每一显示帧的末尾,立体应用能够在下一显示帧开始之前进行缓冲区A和缓冲区B之间的切换。另外,在下一显示帧开始之前,立体应用必须向立体图像系统发出信号表明已在左眼和右眼之间进行了显示切换。至关重要的是缓冲区切换以及向立体图像系统发送信号必须精确地定时在帧消隐阶段,否则,立体显示效果将受到彻底地破坏。任何这样的定时错误所带来的视觉效果将显著劣于在基于双缓冲器的计算机动画应用中所出现的任何同种定时错误。因而,对于立体显示来说,呈现给每只眼的独立视图必须以交替显示帧的形式播放。这些独立视图必须以非常高的帧速率连续播放,这是因为每只眼睛只看到这些帧中的一半。为了将显示的闪烁效应降至最低,每只眼睛每秒钟应当接收到至少60帧,从而使总的帧频率达到每秒钟至少120帧。使用双缓冲器技术的立体显示中存在的最大问题是对缓冲区间切换的定时和精确同步。立体显示要求非常高的帧显示频率,同时还要求每播放一帧都要进行缓冲区间的切换。这一点与基于双缓冲器的动画是相反的,在后者中,帧频率较低,同时缓冲区切换每隔几帧才进行一次,并且不需要完全的帧同步。立体应用不仅要求非常精确地控制缓冲区选择信号,还必须将左/右切换信号精确地发送给立体图像系统,以便遮挡左/右眼的视线。诸如立体应用的这类使显示带有时变特性的应用,通常运行于计算机系统中的中央处理单元(CPU)之中。为了使对这些特性的控制达到所需的高度同步要求,CPU必须监视计算机图形系统中的帧消隐状态,为此通常采用“轮询”方法(尽管某些图形系统可提供垂直帧消隐中断)。“轮询”方法要求运行在连续循环中的软件要连续地读取一个状态寄存器以等待其状态的改变,这将非常浪费CPU周期。当帧消隐产生时,CPU必须更新缓冲区选择信号——例如,在一个适当的窗口属性表项中更新——然后向立体图像系统发送信号,表明已经发生了左/右切换。考虑到图形系统和立体图像系统来回的延迟(和瓶颈),CPU必须对这些操作进行非常精确的定时。如果CPU运行实时OS(操作系统),那么可以实现充分精确的定时,然而大多数计算机(特别是桌上型计算机)并非运行实时OS。因此,一个正运行在CPU中的立体应用经常会碰到重大的中断,有可能被对换出CPU很长一段时间,因而对缓冲区切换误定时的可能性是相当高的。通过使立体应用完全占用CPU,而封锁所有其它应用,虽可以在一定程度上解决上述问题,但计算机中的所有一切将进入一种无味的停机状态,这有可能包括OS本身。这不仅是一种不良的编程风格,而且会使计算机挂起或封锁用户,同时,这仍将不能保证对缓冲区之间的切换及向立体视觉系统发送信号的精确定时和同步。由于为保持立体效果必须实时进行缓冲区选择,也由于这耗费了大量的CPU和系统总线周期,计算机系统的性能因而显著下降。本发明给出了一种为显示属性提供内定时时变特性的图形显示子系统。该图形显示子系统包含一个显示设备,用来显示带有可变显示特性像素的连续图像帧;和一个用以将图像帧传送给显示设备的电路。在一个属性表中当与一个或多个像素相关的某一显示属性被设置时,这个或这些像素将被选择。在一个给定时间间隔内,该电路改变正在显示设备上显示的像素的显示属性。在较佳实施例中,可变显示属性可以是立体图像显示,或是图像亮度控制,或者是图像混合控制。本发明的上述及其它目标、特征和优点经过下面的详细书面说明后将变得显而易见。在所附的权利要求中陈述了认为是本发明的新颖特性的特征。然而通过参考下面对一个示意性实施例的详述并同时参看附图,可以更好地理解本发明本身以及较佳使用模式、进一步的目标和优点。图1示意了被本发明一个较佳实施例所采用的一个图形显示子系统的框图。图2示意的是根据本发明的一个较佳实施例,带有内定时立体显示功能的调色板DAC的更详细框图。图3给出了一个流程图,它示意了根据本发明的一个较佳实施例,在图形显示子系统中提供内定时立体显示功能的方法。图4示意了根据本发明一个较佳实施例的一个图形显示子系统的框图,它可使图形显示图像产生内部定时的亮度变化。图5给出了一个流程图,它示意了根据本发明的一个较佳实施例,为显示图像产生内定时亮度变化的方法。图6给出了一个框图,它示意了根据本发明的一个较佳实施例,可提供内定时混合功能的图形显示子系统。图7给出了一个流程图,它示意了根据本发明的一个较佳实施例,可进行内定时图像混合的方法。图8给出了一个框图,它示意了根据本发明的一个较佳实施例,可产生时变显示属性的内定时电路。现在参看附图,特别参看图1,图中示出被本发明一个较佳实施例所采用的一个图形显示系统的框图。该图形显示系统包括图形控制器10,图形存贮器(VRAM)20,图形数-模转换器(调色板DAC)100,以及显示设备50。调色板DAC有时称为“RAMDAC”或“LUT-DAC”。系统总线40将图形显示系统与计算机系统的其它部分相连。图形控制器10从连到系统总线40的中央处理单元或存贮设备(未画出)接收要显示在CRT显示器上的包括显示像素数据在内的信息。图形控制器传送显示像素数据、地址信息、及控制信号,以更新图形存贮器。图形存贮器20通过一条串行数据总线向调色板DAC100传送串行像素数据。调色板DAC100对收到的显示像素数据进行处理,将之转换成模拟信号,以驱动相连的显示设备50(通常为一个CRT),从而呈现出可视图像。现在参看图2。图中示出的是根据本发明的一个较佳实施例,带有内定时立体显示功能的调色板DAC100的框图。图形存贮器20包含立体显示数据的一帧或多帧图像,其中每一帧包含大量的像素,而每一像素有两个或更多的子像素字段,代表该帧的多个帧缓冲区。调色板DAC100从图形存贮器20接收大量像素中的一个样本像素102作为当前显示图像的一部分。如图2所示,每一像素102可分为一个第一子像素字段112(缓冲区A)和一个第二子像素字段114(缓冲区B),其中,这两个帧缓冲区中的一个缓冲区A或缓冲区B包含当前图像帧中针对左眼的帧缓冲区,而另一个则包含针对右眼的帧缓冲区。缓冲区A和缓冲区B同时传送给调色板DAC100。例如,一个32位的像素将作为两个16位的子像素字段由调色板DAC100处理,其中一个子像素字段是针对左眼帧的,而另一个是针对右眼帧的,从而产生立体显示。当把调色板DAC100编程用于双缓冲器应用时,调色板DAC100采用双缓冲像素格式通过处理缓冲区A数据或缓冲区B数据,对显示像素数据进行操作。通常,工作站图形显示,特别是多媒体工作站图形显示提供双缓冲器显示功能。最初发明双缓冲器显示是为了避免在不断更新的图像帧之间产生间隔。当一个缓冲区正在被显示时,另一个缓冲区可同时被更新,而不致在屏幕上产生无用的屏幕前人为干扰。当该缓冲区已更新完毕,且紧接当前显示帧已到达末尾之后,缓冲区选择信号便可被切换。于是允许在下一帧中显示刚刚更新的缓冲区。在下一帧重复该过程,即显示刚刚更新过的缓冲区,同时用下一帧显示需用的数据更新另一个缓冲区。采用这种方式,双缓冲器显示可以实现显示数据的实际更新对观众隐藏,于是一旦完成更新后,可以立即将更新的结果显示到屏幕上。在高级的工作站图形中,屏幕上可以同时呈现一个显示单缓冲器应用的窗口和一个显示双缓冲器应用的窗口。其实现原理是为每个像素向该工作站的调色板DAC(显示数-模转换器)传送两类数据一个窗口标识符(WID)和像素显示数据。WID是一个指针,它标识了该像素所从属的窗口、应用或像素类别。调色板DAC100根据WID,从窗口属性表(WAT)中查看该像素类别的各种属性。窗口属性表(WAT)保存在调色板DAC100的存贮器104中。WAT包含的属性定义了像素数据的格式、像素数据相关的显示层的存在和数目、在各显示层之间像素数据是如何划分的、对每一显示层中的像素数据所需实施的处理方式、以及判断哪一层应被显示的条件,除此之外还包括其它特征。各种像素类别的上述属性由运行于工作站中的应用软件加载到窗口属性表中。加载到窗口属性表中的属性之一用于区分“双缓冲器”和“单缓冲器”应用。(对于一个给定WID)当WAT中的属性表明的是一个双缓冲器应用时,带有该WID的像素显示数据被分成两个子像素字段。这两个字段被指定为缓冲区A和缓冲区B。WID中的另一个属性(双缓冲器选择)表明(根据其它属性)这两个缓冲区中的哪一个应被处理和显示。对于一个给定的WID,通过简单地改变WID中的双缓冲器选择属性,在整个显示器任何位置上所有属于一个双缓冲器应用并带有相同WID的双缓冲器像素将立即在缓冲区A和缓冲区B之间切换。作为另一种更好的选择,调色板DAC设备可以隔开缓冲区A和缓冲区B之间的切换,直至下一显示帧的开始。单缓冲器应用只向调色板DAC传送一个缓冲区的数据,因此无须提供一个缓冲区选择属性,或者也可以将该属性永远设置为存有单缓冲器数据的缓冲区(如缓冲区A)。正如所见,这种高级图形系统和工作站提供基于每个窗口的双缓冲器显示功能。然而,其控制是基于像素的。这将允许应用显示于任意形状窗口中。通过使用WID和及其访问的保存在WAT中的属性,双缓冲器显示功能可以有选择地应用于任何窗口或窗口集合,从而允许双缓冲器应用和单缓冲器应用同时显示。如图2所示,在立体显示(和双缓冲器显示)期间,像素102被划分为一个第一子像素字段112(缓冲区A)和一个第二子像素字段114(缓冲区B)。正如本领域的技术人员所知道的那样,每一显示像素含有两个子像素字段112、114,它们分别包含在缓冲区A和缓冲区B中。这样,缓冲区A包含针对某只眼(例如右眼)的图像帧中的显示像素数据,这些显示数据由图像帧中所有像素的子像素字段112组成,缓冲区B包含针对另一只眼(例如左眼)的图像帧中的显示像素数据,这些显示数据由图像帧中所有像素的子像素字段114组成。例如,一个每像素16位的立体应用将作为每像素32位的应用被加载到系统的VRAM中。调色板DAC100选择一个特定的显示帧(即缓冲区),并对所选子像素字段112和114中的16位进行处理和转换。正如本领域的技术人员所知道的那样,存贮设备20是一个高速DRAM设备,如VRAM。在立体显示期间,保存在存贮设备20中的像素数据逻辑地划分为两个逻辑帧缓冲区缓冲区A和缓冲区B,每个缓冲区含有每个像素的两个子像素字段之一。另外,每一个逻辑缓冲区可以保存于物理上分离的存贮器设备中。本发明试图能够实施于任意类型的存贮器配置方案,并且,本发明不限于其较佳实施例中的存贮器配置方案。如图2所示,本发明的缓冲区选择电路产生一个缓冲区选择信号,以选择缓冲区A和缓冲区B中需被访问的一个缓冲区,其像素数据在当前图像帧显示期间输出到像素处理电路130。像素处理电路130包含颜色查看表(“调色板”)、gamma校正表、颜色空间转换、直接颜色扩充和直接颜色旁路电路,所有这些都按照熟知的技术对所访问的数据进行处理。处理后的像素数据接着输出到RGBDACs116,以转换成模拟视频信号(RGB_OUT)从而驱动监视器显示设备,例如CRT,或者转换成数字信号以驱动LCD显示器。调色板DAC100含有一个存贮器或寄存器104。存贮器104含有调色板DAC设备的WAT。WAT中的每个表项包含三个属性位(其它属性位未画出),用于控制和选择给定像素类别的立体显示功能。该像素类别可以代表任意的、可显示在屏幕上任意位置的给定应用窗口或应用窗口集合。这三个适用于立体显示的属性位是双缓冲器允许、双缓冲器选择、和立体显示允许,它们分别保存在双缓冲器允许(DBE)寄存器106、双缓冲器选择(DBS)寄存器108和立体显示允许(SDE)寄存器110。尽管在较佳实施例中描述了不同的寄存器,所有属性均可以在较佳实施例的单个寄存器或存贮器单元中以每个属性占用一位或多位的形式保存。另外,在其它实施例中,其它属性可以在WAT中表示。例如,在一个可选实施例中含有“亮度”属性。当CPU设置亮度属性时,经过一段给定的时间间隔,调色板DAC100可以改变与被设置属性相关的像素类别的亮度级别。举例来说,这可以使给定窗口的显示图像从显示器上慢慢消失。在另一个可选实施例中,WAT中含有一个混合属性。当CPU设置混合属性时,调色板DAC100将两个分离的图像帧相混合从而产生显示出的图像。最初,显示出的图像中来源于一个给定图像帧的部分占某一预定的比例,经过一段给定的时间间隔,该比例转而增加或减少。举例来说,采用这种方法可以在显示器上使一个图像慢慢地变换成另一个图像。DBE寄存器106含有双缓冲器允许属性,它允许双缓冲器显示和立体显示。DBS寄存器108含有双缓冲器选择属性,对于双缓冲器显示,它用来选择合适的帧缓冲区,而对于立体显示,它用来选择帧缓冲区A或帧缓冲区B作为右眼图像帧。SDE寄存器110含有立体显示允许属性,它用来表明与窗口标识(WID)相关的像素类别是否将以立体显示的方式显示出来。如果设置了立体显示允许属性,在图形存贮器20中的帧缓冲区将为立体显示保存连续的左右眼图像帧。为使调色板DAC100完成双缓冲器或立体显示,图形应用必须设置DBE寄存器106中的双缓冲器允许位。于是,当DBE为1时,像素数据被解释为具有双缓冲器或立体缓冲器,否则,像素数据被解释为单缓冲区。当DBE表明“双缓冲区”有效时,立体显示允许属性表明了两缓冲区中的像素数据是传统的双缓冲区还是“立体双缓冲区”,如果像素数据是立体双缓冲区,那么调色板DAC100在每帧的消隐阶段内部地进行帧缓冲区间的切换。这样一来,调色板DAC100免去了立体应用和CPU在每帧的消隐阶段进行缓冲区间切换的任务。在一个较佳实施例中,帧缓冲区A含有针对某只眼的图像帧,而帧缓冲区B含有针对另一只眼的图像帧。立体显示应用通过在DBS寄存器108中设置双缓冲区选择属性来指定哪个帧缓冲区含有右眼的图像帧。如果缓冲区A含有右眼的图像帧,DBS寄存器108则被设置,而如果缓冲区B含有右眼的图像帧,DBS寄存器108则被清除。立体选择信号发生器126为立体显示确定时序。立体选择信号发生器126提供一个双稳态触发器或锁存器,它含有一个在0和1之间变换的输出状态,状态的改变发生在显示设备(CRT50)的帧消隐阶段。立体选择信号在显示设备的第一帧消隐阶段切换到第一个极性,而在显示设备的下一帧消隐阶段切换到第二极性。在一个较佳实施例中,0状态表示一个左眼帧,而1状态表示一个右眼帧。立体选择信号发生器126将立体选择信号输出到与门124。该双稳态触发器或锁存器的状态也作为调色板DAC100的输出,用来通知立体图像系统哪一帧(左/右)正在被当前图像帧显示。如果在SDE寄存器110中设置了立体显示允许属性,与门124的输出将与立体选择信号相一致。该输出与保存在DBS寄存器108中的双缓冲器选择属性一同被输入到异或门122。异或门122的输出和保存在DBE寄存器106中的双缓冲器允许属性被一同输入到与门118。与门118产生一个缓冲区选择信号用以控制多路转换器(MUX)120。在多路转换器120输出中,“0”缓冲区选择信号选择给定像素102的子像素字段112,“1”缓冲区选择信号选择给定像素102的子像素字段114。正如本领域的技术人员所知道的那样,对于从图形存贮器20传送到调色板DAC100的图像帧中每一个像素,由所产生的缓冲区选择信号控制多路转换器120从中选择适当的左眼或右眼子像素字段。对于整个图像帧进行适当子像素字段的选择,从而使整个的左眼或右眼帧缓冲区都经过像素处理电路130的处理。帧的显示顺序被视作标记为左眼和右眼的两种帧类型的交替显示。对于所有不具有立体显示属性的像素数据,在左眼和右眼帧中将显示相同的数据。如果DBE等于1,那么DBS则表明哪一个缓冲区(缓冲区A或缓冲区B)含有右眼图像帧。如果DBE等于1而SDE等于0,那么双缓冲器将成为是双缓冲器显示的传统类型,选择缓冲区的依据完全且固定地依赖于DBS的值。如果DBE等于1而SDE等于1,那么立体显示被允许,对于每一帧都在缓冲区A和缓冲区B之间交替地选择缓冲区。如果立体显示被允许(SDE=1),那么当DBS=1时,在左眼帧中显示缓冲区B,在右眼帧中显示缓冲区A。调色板DAC100有关上述电路的真值表如下表所示。注意,当DBE等于0时,像素数据被解释成单缓冲区,这样以来,对每个图像帧,整个像素102都将经过像素处理电路130的处理。</tables>表正如所见,本发明中的调色板DAC可以十分简单地对帧消隐阶段的缓冲区间切换实现绝对精确的同步,而无须CPU或应用软件干预。在每一显示帧的末尾,立体应用将在下一显示帧开始之前进行缓冲区A和缓冲区B间的切换。可以看出,缓冲区切换及向立体视觉系统发送信号精确地同步于帧消隐阶段,从而保护了立体效果。这样以来,传送给各眼睛的分离图像将在交替的显示帧中呈现。这些分离的图像以很高的帧速率连续显示,这是因为每只眼睛只看到这些帧的一半。为了将显示的闪烁效应降至最低,每只眼睛每秒钟应当接收到至少60帧,从而使总的帧频率达到每秒钟至少120帧。为了进一步减轻应用和CPU的负担,使它们免去精确地定时向立体视觉系统的信号发送以便在用户的特制眼镜中完成视线遮挡切换,在本发明的较佳实施例中,调色板DAC100提供了一个外部输出信号(左/右),用以表明当前正在显示的是一个左眼帧还是一个右眼帧。另外,在下一显示帧开始之前,调色板DAC100将向立体视觉系统发出信号表明已在左眼和右眼之间进行了显示切换。可以看出,虽然是基于每个像素提供立体显示的控制,但是基于每个窗口提供立体显示功能。这将允许应用显示于任意形状窗口中。立体属性可以有选择地应用到任意窗口或窗口集合,从而允许立体应用和非立体应用同时显示(对于非立体应用,右眼帧和左眼帧中将显示相同的图像)。现在参看图3,该图给出了一个流程图,它示意了根据本发明的一个较佳实施例,在图形显示子系统中提供内定时立体显示功能的方法。流程从步骤200开始,此时调色板DAC100开始接收当前图像帧,将之显示在显示设备上。在步骤202产生缓冲区选择信号,它对每一图像帧都在左眼缓冲区和右眼缓冲区之间作出交替的选择。如同采用双缓冲器选择属性进行选择那样,缓冲区选择信号将在当前图像帧显示期间选择左眼缓冲区或右眼缓冲区,在下一图像帧显示期间选择另一个缓冲区,然后在再下一图像帧显示期间选择最初的缓冲区,如此进行下去,即在每一新的图像帧显示期间,都交替地选择左眼缓冲区和右眼缓冲区其中之一。这样一来,呈现给用户的将是连续交替出现的左眼图像帧和右眼图像帧。流程进行到步骤204,其中调色板DAC100接收到当前图像帧的一个像素。被接收像素将带有一个相关的WID,表明该像素所属的像素类别。在判定框206,将判断是否为被接收像素设置了双缓冲器允许属性,该属性由WAT中与被接收像素WID相关的表目表明。如果双缓冲器允许属性未设置,被接收像素将以单缓冲器的方式显示,如步骤208所示。如果双缓冲器属性被设置,流程进行到判定框210,此时将判断是否为被接收像素设置了立体显示允许属性,该属性由WAT中与被接收像素WID相关的表目表明。如果立体显示允许属性未设置,被接收像素将以双缓冲器的方式显示,如步骤212所示。如果为被接收像素设置了立体显示属性,流程进行到判定框214,此时将判断是否为被接收像素设置了双缓冲器选择属性。如果设置了双缓冲选择属性,缓冲区A将被设定为右眼缓冲区,如步骤216所示。如果没有为被接收像素设置双缓冲器选择属性,缓冲区B将被设定为右眼缓冲区,如步骤218所示。此后,流程进行到步骤220,此时,由缓冲区选择信号选择出的缓冲区所包含的像素数据被显示出来。正如所见,缓冲区选择信号将从左眼缓冲区或右眼缓冲区中选择其一作为当前图像帧,如步骤202所示。被接收像素的哪一个子像素字段将在当前图像帧中得到显示将取决于该缓冲区选择信号和双缓冲器选择属性,双缓冲器选择属性指明子像素字段中的哪些为左眼帧,哪些为右眼帧。当在步骤220、步骤202或步骤211中显示了被接收像素中经选择的子像素字段之后,本发明中的流程进行到判定框222,此时将判断是否当前图像帧的所有像素已被调色板DAC100接收到。如果没有,流程将返回步骤204,其中将接收并处理当前图像帧的下一像素。如果当前图像帧的所有像素都已被接收和显示,流程将进行到步骤224,此时选择一个新的图像帧作为当前图像帧,然后返回步骤204,在步骤204中,调色板DAC100接收到新当前图像帧的第一个像素。在新当前图像帧期间,缓冲区选择信号已被切换,而选择与先前帧相反的缓冲区。之后将对当前新图像帧重复本发明的处理流程。在本发明另一个可选的实施例中,CPU在存贮器的寄存器104中设置亮度属性,这样可以在一定的时间间隔之后降低显示出的图像帧的亮度。采用这种方法,显示图像将慢慢地从显示器上消失。图4示意了根据本发明一个较佳实施例的一个图形显示子系统的框图,它可使显示图像产生内部定时的亮度变化。像素数据来自调色板DACVRAM的帧缓冲区。像素数据被划分成像素显示数据和每一像素的像素WID,像素显示数据输入到像素显示数据处理电路300,而像素WID输入到窗口属性表302。标准像素属性输入到像素显示数据处理300,用以控制显示图像输出的窗口大小、位置、重叠等。窗口属性表302同时输出一个“亮度属性”,在一段时间间隔内,该属性在0和1之间的范围内上升或下降地改变。在乘法器304-308中,亮度属性与像素显示数据处理300输出的RGB信号相乘,于是向显示设备产生在给定时间间隔之后发生亮度变化的输出信号R’G’B’。根据对亮度属性进行的控制的不同,可以使显示图像慢慢地从显示器上消失或浮现,如下所述。现在参看图5,该图给出了一个流程图,它示意了根据本发明的一个较佳实施例,为显示图像产生内定时亮度变化的方法。流程从步骤350开始,在步骤352,运行于CPU中的图形应用在WAT中设置某个像素或某类像素的亮度属性。之后流程进行到步骤354,此时所有那些在WAT中设置了亮度属性的像素被显示出来,或继续被显示。然后流程进行到步骤356,此时所有那些在WAT中设置了亮度属性的像素的亮度将在一个给定的时间间隔内以固定的速率发生变化。在给定时间间隔的末尾,流程结束于步骤358。在另一个可选实施例中,WAT中含有一个混合属性。当CPU设置混合属性时,调色板DAC100将来自两个独立的图像帧的象素数据相组合从而产生显示出的图像。最初,显示出的图像中来源于一个给定图像帧的部分占某一预定的比例,然后在一段给定的时间间隔后增加或减少。举例来说,采用这种方法可以在显示器上使一个图像慢慢地变换成另一个图像。在共同未决的申请中,本发明人描述了可实现混合功能的装置和方法。此申请序号为08/466,569,它被转让给本申请的受让人。图6给出了一个框图,它示意了根据本发明的一个较佳实施例,可提供内定时混合功能的图形显示子系统。从VRAM接收到像素数据,像素显示数据被输入第一像素显示数据处理400和第二像素显示数据处理402。像素显示数据处理400产生一个第一显示层。像素显示数据处理402产生一个第二显示层。举例来说,该第二显示层可用作一个重叠层。每个像素的像素WID被输入到窗口属性表404中。标准像素属性则输入到像素显示数据处理单元400和402。由像素显示数据处理单元400、402产生的每个原色输出成对地分别输入到混合器406、408、410。于是,R1和R2输入到混合器406产生R’,G1和G2输入到混合器408产生G’,B1和B2输入到混合器410产生B’。每个混合器406、408、410都由一个混合值(α)控制。经过一段给定的时间间隔,该混合值将发生变化,例如从0.0变化到1.0或从1.0变化到0.0;或在0.0和1.0之间的某个更小范围内变化。每个混合器406、408、410产生的混合输出是该混合值的函数,遵循函数式αA+(1-α)B,其中α为混合值,A为给定混合器的第一输入,B为给定混合器的第二输入。混合输出R’G’B’被输出到显示设备以产生混合图像。经过一段给定的时间间隔,混合值发生变化,如下所述,这样,举例来说,显示出的图像将从第一显示图像开始,然后慢慢地溶合成第二显示图像。现在参看图7,该图给出了一个流程图,它示意了根据本发明的一个较佳实施例,可进行内定时图像混合的方法。流程从步骤450开始进行到步骤452,此时,在WAT中为将被混合且变换成第二图像的显示图像中的某类像素设置混合属性。然后流程进行到步骤454,此时,所有那些混合属性被设置的像素将在CRT中显示出来或继续显示。之后流程进行到步骤456,此时,经过了一段给定的时间间隔,所有那些混合属性被设置的像素在两个独立图像帧中的混合级发生了改变。在给定的时间间隔末尾,流程结束于步骤458。现在参看图8,图中给出了一个框图,它示意了根据本发明的一个较佳实施例,可产生时变显示属性的内定时电路。信号划分器500收到一个“帧结束”信号,表明何时每一显示帧已经结束。信号划分器500将到来的帧结束信号除以N,这样,信号划分器500每隔N帧且在第N帧的末尾输出一个信号。信号划分器500的输出与“Step_Parm_En”信号一起被输入到与门502,当要求WAT中某一特定的显示属性具有时变特性时,“Step_Parm_En”信号将被设置。当诸如混合或亮度之类的显示属性要求从窗口属性表302、404中输出该显示属性时需要发生输出的阶跃变化时,该阶跃参数允许信号被设置。与门502的输出为“Step_Parm”信号,该信号和比较器506的输出(初始时被设置)一同输入到与门504。与门504的输出被输入到寄存器508的写允许端。寄存器508含有一个作为该时变电路输出的参数值(Parm_Value)。正如所了解的那样,该参数值可以是亮度属性或混合值。寄存器508的实现方法包括使之成为窗口属性表中的一个寄存器,或使之成为由WAT中某一个表项指向的可变参数表寄存器组中的一个单独表项。初始时将参数值确定为所需的数值,并将之加载到寄存器508。寄存器508的输出与保存在寄存器512中的阶跃值(Step_Value)一起被输出到算术单元510。所需的阶跃值也是被预先加载到寄存器512中。算术单元510(被设定为增加或减少)按照阶跃值增加或减少参数值。每隔N帧,寄存器508的写允许端接收到来自与门504的信号,于是算术单元510把结果参数值加载到寄存器508。寄存器508的输出与寄存器514的输出一同输入到比较器506,寄存器514存有为上述参数值预设的结束值。该预设的结束值也是被预先加载到寄存器514中。当参数值触发了比较器506的预定比较条件(或者相等,或者大于,或者小于)时,比较器506的输出被清除,于是禁止与门504的输出。此时,在给定的时间间隔末尾,上述参数值的变化停止。尽管上文已根据一个较佳实施例对本发明进行了详细的示意和说明,本领域的技术人员都明白,在不背离本发明的主旨和范围的前提下,可以做出各种形式上和细节上的变化。权利要求1.一个具有内定时立体显示功能的图形显示子系统,它含有用以保存像素数据的第一和第二缓冲区;一个用以显示连续图像帧的显示设备;一个用以将图像帧传送到显示设备的电路,当图形显示子系统中的立体显示允许属性被设置时,该电路从第一缓冲区传送像素数据从而在显示设备上显示第一图像帧,并从第二缓冲区传送像素数据从而在显示设备上显示第二图像帧。2.根据权利要求1的一个具有内定时立体显示功能的图形显示子系统,其特征在于,该图形显示子系统含有大量的属性,这些属性包括双缓冲器选择属性,该属性将第一缓冲区定义为含有右眼图像帧的右眼缓冲区;以及双缓冲器允许属性,该属性允许双缓冲器显示和立体显示。3.根据权利要求2的一个具有内定时立体显示功能的图形显示子系统,其中该电路含有一个信号发生器,用以输出立体选择信号,该立体选择信号在显示设备的第一帧消隐阶段切换到第一极性,在显示设备的相邻后续帧消隐阶段切换到第二极性;将立体选择信号和立体允许信号作为输入的一个第一与门;将第一与门输出和双缓冲选择信号作为输入的异或门;将异或门输出和双缓冲器允许信号作为输入的一个第二与门,该第二与门的输出表明对当前图像帧来说,哪个缓冲区将被转换。4.一个具有内定时立体显示功能的图形显示子系统,它含有一个显示设备,它以给定的帧速率显示图像帧的像素,其中,给定图像帧中的每个像素都属于一类像素;一个存贮器,它含有作用于一类像素上的大量属性,其中,所述大量的属性包括立体显示允许属性,该属性表明是否该类像素将以立体显示的方式显示出来;用来存储象素数据的第一和第二缓冲器,分别含有第一帧缓冲区和第二帧缓冲区;一个信号发生器,用以输出立体选择信号,该立体选择信号在第一时间间隔内切换到第一极性,在第二时间间隔内切换到第二极性;以及一个用以产生缓冲区选择信号的缓冲区选择电路。对于给定图像帧中的一个给定像素,如果立体显示允许属性表明此给定像素将以立体显示的方式显示出来,那么该缓冲区选择信号从第一帧缓冲区和第二帧缓冲区中选择其一,其中,缓冲区选择电路收到一个立体选择信号,如果收到的立体选择信号为第一极性,则产生一个缓冲区选择信号,所产生的缓冲区选择信号将选择第一帧缓冲区,如果收到的立体选择信号为第二极性,则产生的缓冲区选择信号将选择第二帧缓冲区,其中,作为对给定图像帧中给定像素的显示,将给定像素的被选定帧缓冲区输出到显示设备。5.根据权利要求4的一个具有内定时立体显示功能的图形显示子系统,其特征在于,所述大量的属性包括双缓冲区选择属性,该属性将某一缓冲区定义为第一缓冲区;以及双缓冲区允许属性,该属性允许双缓冲区显示和立体显示,而且,该双缓冲区允许属性允许缓冲区选择电路进行工作。6.根据权利要求5的一个具有内定时立体显示功能的图形显示子系统,其特征在于,缓冲区选择电路含有一个将立体选择信号和立体允许信号作为输入的第一与门;一个将第一与门输出和双缓冲器选择信号作为输入的异或门;以及一个将异或门输出和双缓冲器允许信号作为输入的第二与门,该第二与门的输出为缓冲区选择信号。7.根据权利要求4的一个具有内定时立体显示功能的图形显示子系统,其特征在于,显示设备具有一个位于图像帧之间的帧消隐阶段,并且在帧消隐阶段立体选择信号在极性之间切换。8.具有内定时立体显示功能的图形显示子系统所使用的一种方法,该方法含有下面的步骤为将以立体显示方式显示出来的图像帧中的一个或多个像素设置立体显示允许属性;产生缓冲区选择信号,对于显示的每一图像帧,该信号都交替地选择第一缓冲区或第二缓冲区;以及对于图像帧中已设置了立体显示允许属性的每个像素,将该像素数据从缓冲区选择信号选出的缓冲区中显示出来。9.根据权利要求8的具有内定时立体显示功能的图形显示子系统所使用的一种方法,其特征在于,产生缓冲区选择信号的步骤包括在显示设备显示图像帧的帧消隐阶段对缓冲区的选择进行切换。10.根据权利要求8的具有内定时立体显示功能的图形显示子系统所使用的一种方法,其特征在于,含有设置双缓冲器允许属性的步骤,并且如果双缓冲器允许属性被设置,那么将进行显示像素数据的步骤。11.可为显示属性提供内定时时变特性的图形显示子系统所使用的一种方法,该方法含有下面的步骤为将要显示出来的图像帧中的一个或多个像素设置显示属性,其中,带有显示属性的像素具有相关显示特性;在一个选定的时间间隔内,改变上述已设置显示属性的一个或多个像素的相关显示特性,其中,该相关显示特性并非由中央处理单元来改变;以及在一个选定的时间间隔内,显示已设置显示属性的一个或多个像素。12.根据权利要求11的可为显示属性提供内定时时变特性的图形显示子系统所使用的一种方法,其特征在于,该图形显示子系统含有两个帧缓冲区,从中可以访问像素数据并将之显示出来,被改变的显示特性是对于一个特定的显示帧,哪一缓冲区可被访问。13.根据权利要求11的可为显示属性提供内定时时变特性的图形显示子系统所使用的一种方法,其特征在于,该图形显示子系统含有两个帧缓冲区,从中可以访问像素数据并将之显示出来,被改变的显示特性是来自特定帧缓冲区的像素数据所占比例,它被用来显示特定像素。14.根据权利要求11的可为显示属性提供内定时时变特性的图形显示子系统所使用的一种方法,其特征在于,被改变的显示特性是相关像素的亮度级。15.可为显示属性提供内定时时变特性的图形显示子系统,含有一个显示设备,用以显示连续的图象帧,其中一个图象帧含有大量的像素,并且每个像素具有一个显示属性;以及一个用以将图像帧传送到显示设备的电路,其中,该电路在一个选定的时间间隔内改变显示在显示设备上的一个或多个选定像素的显示属性,其中选择这个或这些选定像素所依据的是这个或这些选定像素的相关显示属性。16.根据权利要求15的可为显示属性提供内定时时变特性的图形显示子系统,其特征在于,该图形显示子系统含有两个帧缓冲区,从中可以访问像素数据并将之显示出来,被改变的显示特性是对于一个特定的显示帧,哪一缓冲区可被访问。17.根据权利要求15的可为显示属性提供内定时时变特性的图形显示子系统,其特征在于,该图形显示子系统含有两个帧缓冲区,从中可以访问像素数据并将之显示出来,为选择的象素改变的显示特性是来自特定帧缓冲区的像素数据所占比例,它被用来显示特定像素。18.根据权利要求15的可为显示属性提供内定时时变特性的图形显示子系统,其特征在于,被改变的显示特性是相关像素的亮度级。全文摘要本发明给出了一种为显示属性提供内定时时变特性的图形显示子系统。该图形显示子系统包含一个显示设备,它用来显示带有可变显示特性像素的连续图像帧;和一个用以将图像帧传送给显示设备的电路。在一个属性表中当与一个或多个像素相关的某一显示属性被设置时,这个或这些像素将被选择。在一个给定时间间隔内,该电路改变正在显示设备上显示的像素的显示属性。在较佳实施例中,可变显示属性可以是立体图像显示,或是图像亮度控制,或者是图像混合控制。文档编号G09G5/14GK1162800SQ9710280公开日1997年10月22日申请日期1997年2月24日优先权日1996年3月8日发明者R·M·P·韦斯特,E·K·艾文斯申请人:国际商业机器公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1