图形处理方法、系统和设备的制造方法

文档序号:9709042阅读:259来源:国知局
图形处理方法、系统和设备的制造方法
【技术领域】
[0001]本发明总体涉及图形处理。更具体地,本发明涉及一种用于合并图形处理过程中的上下文(context)方法、系统和设备。
【背景技术】
[0002]图形上下文(graphics context)和图形对象(graphics object)是图形处理的基本部分。为了渲染图形,通常,中央处理器(CPU)将命令包发送给图形处理器(GPU)。该命令包包含命令和对象。该命令限定图形上下文,即,GPU应当如何绘图。此处,图形上下文可被认为是一组绘图设置。这些设置通常被记录在寄存器中。寄存器是GPU内部的快速存储器,并且该GPU能够读/写这些寄存器并应用该设置。所述对象是GPU应当绘制的客体。GPU会分配资源、遵循该命令并绘制该对象以用于在显示装置上显示。
[0003]在图形处理的现有的方法中,当CPU发送第一个命令包时,GPU会分配资源,包括存储空间和寄存器,产生上下文及其标识号码(ID),并分析命令和对象。当CPU发送第二个命令包时,GPU将会作同样的工作。当完成一个命令包后,GPU会转向下一个命令包。只有在完成了第一个命令包后,GPU才会去处理第二个命令包。GPU将会重复该项工作,直到CPU停止发送任何命令包。
[0004]图1显示了一种当前的被配置成执行现有的图形处理方法的GPU的示意图。如图1所示,该当前的GPU包括环形缓冲区(Ring Buffer (RB)),读指针和写指针。该环形缓冲区包含一些包存储槽(packet slot)。所有发送自CPU的命令包P0、P1、P2、P3……等等都被存储在该环形缓冲区内的包存储槽中。该命令包包含图形上下文和图形对象。所述读指针指向当前的命令包,例如图1所示的P0。该GPU将读取当前的命令包并应用该图形上下文去绘制所述图形对象。当当前的命令包完成后,该读指针将指向下一个新的命令包(例如图1所示的P1),并且GPU将会读取该下一个新的命令包的内容并且处理该新的命令包。所述写指针指向第一个空的包存储槽。当CPU发送新的命令包至GPU时,GPU会把该命令包存储在该写指针所指向的该第一个空的包存储槽中。然后,该写指针将指向下一个空的包存储槽。
[0005]当该读指针和该写指针都指向同一个包存储槽时,即表示该环形缓冲区是空的。当该读指针指向该写指针所指的包存储槽的下一个包存储槽时,即表示该环形缓冲区是满的。如果该环形缓冲区是满的,GPU会停止从CPU接收任何命令包,直到该环形缓冲区中的至少一个包存储槽被释放。

【发明内容】

[0006]在现有的图形处理设备和方法中,当CPU发送多个命令包时,GPU要耗费大量的资源和时间来分配存储空间、应用上下文和绘制对象。对此,在上下文的转换上会耗费许多资源和时间,因为对于命令包中的每一个上下文,GPU都必须作一次转换。
[0007]例如,如果GPU想要绘制具有很多树的山,每一棵树具有其自己的上下文。对于每一个命令包,GPU需要等待当前命令包的结束,为新的上下文初始化新的环境,并且绘制新的对象,即便这些上下文是相同的。这浪费了许多资源和时间,因为如果绘制一棵树、然后转换上下文并绘制另一棵,将会在上下文的转换方面浪费许多时间和资源,并且将会占用许多重要的资源,因为GPU必须不断地应用“新”的上下文。
[0008]而且,在现有的图形处理设备和方法中,如果CPU发送很多命令包,环形缓冲区将会很容易被充满,这会降低GPU的工作效率。
[0009]为了克服现有的图形处理设备和方法中的缺陷,本发明提供了一种图形处理方法、系统和设备,其能够节约许多资源和时间并且能够提高图形处理的工作效率。
[0010]在体现本发明第一方面的示例性实施方式中,提供了一种图形处理方法,该图形处理方法包括:从命令包中分离图形上下文和图形对象;计算该图形上下文的魔术数字;将该图形上下文的魔术数字与存储在上下文表中的魔术数字进行比较,其中每个魔术数字与一个具体的图形上下文相对应;以及如果在所述上下文表中的魔术数字中不存在所述图形上下文的所述魔术数字,则将该图像上下文加入到图形上下文存储器的图形上下文存储槽中、将所述图形对象加入到与所述图像上下文存储器分离的图形对象列表中,并将所述图形上下文存储槽与该图形对象相关联。
[0011]在体现本发明第二方面的示例性实施方式中,提供了一种图形处理系统,该图形处理系统包括:装置,用于将来自命令包的图形上下文和图形对象分离;图形上下文存储装置,用于存储所述图形上下文,所述图形上下文存储装置包括图形上下文存储槽;图形对象存储装置,用于存储所述图形对象,所述图形对象存储装置与所述图形上下文存储装置是分离的;装置,用于计算所述图形上下文的魔术数字以确定该图形对象的魔术数字;魔术数字存储装置,用于存储所述图形上下文的魔术数字;装置,用于将所述图形上下文的被计算的魔术数字与存储在所述魔术数字存储装置中的魔术数字进行比较,以确定所述魔术数字存储装置中的魔术数字中是否存在该计算的魔术数字,其中每个魔术数字与一个具体的图形上下文相对应;以及装置,用于如果所述魔术数字存储装置中的魔术数字中不存在该计算的魔术数字时,将所述图形上下文加入到所述图形上下文存储装置的图形上下文存储槽中,将所述图形对象加入到所述图形对象存储装置中,以及将所述图形上下文存储槽与所述存储的图形对象相关联。
[0012]在体现本发明第三方面的示例性实施方式中,提供了一种图形处理设备,该图形处理设备包括:可编程计算单元,其被配置成将来自命令包的图形上下文和图形对象分离,并且计算该图形上下文的魔术数字;图形上下文缓冲区,其被配置成存储所述图形上下文,所述图形上下文缓冲区包括多个图形上下文存储槽;图形对象列表,其被配置成存储所述图形对象,所述图形对象列表与所述图形上下文缓冲区是分离的;上下文表,用于存储所述图形上下文的魔术数字;装置,用于将所述图形上下文的被计算的魔术数字与存储在所述上下文表中的魔术数字进行比较,以确定所述上下文表中的魔术数字中是否存在所述图形上下文的该计算的魔术数字,其中每个魔术数字与一个具体的图形上下文相对应;以及装置,用于如果所述上下文表的魔术数字中不存在所述计算的魔术数字,则所述将所述图形上下文加入到所述图形上下文缓冲区的图形上下文存储槽中,将所述图形对象加入到所述图形对象列表中,以及将所述图形上下文存储槽与存储在所述图形对象列表中的图形对象相关联。
[0013]本申请的下文描述了本发明的其它方面和实施方式。
【附图说明】
[0014]附图以示例的方式图示了本发明,其并不构成对本发明的限制。在附图中相同的数字表示相同的部件,其中:
[0015]图1为现有技术中的图形处理设备的示意图;
[0016]图2为显示了根据本发明的一个示例性实施方式的图形处理设备的示意图;
[0017]图3为显示了根据本发明的一个示例性实施方式的图形处理方法的示意流程图;
[0018]图4显示了根据本发明的一个示例性实施方式的用于读取和应用上下文缓存区中的上下文的方法的示例性流程图;
[0019]图5为根据本发明的一个示例性实施方式的用于在上下文缓存区中写上下文的方法的示例性流程图;
【具体实施方式】
[0020]下面将参照附图中所示的一些实施例具体描述本发明的一些示例性实施方式。在下文的描述中,描述了一些具体的细节以提供对本发明的更深的理解。然而,对于本领域的技术人员来说显而易见的是,即使不具有这些具体细
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1