图形处理器的内部数据切换系统转让专利

申请号 : CN200610167291.9

文献号 : CN100595788C

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 苏建富

申请人 : 威盛电子股份有限公司

摘要 :

本发明提供一种图形处理器的内部数据切换系统。上述图形处理器根据其中的多个暂存器的设定值以绘制数字化影像。图形存储器用以在上述数字化影像输出至显示器以前,暂时储存上述数字化影像。驱动模块用以驱动上述图形处理器。当上述驱动模块从一第一应用程序接收一第一绘图请求时,根据上述第一绘图请求产生对应上述应用程序的暂存器设定值,并将上述设定值写至上述图形处理器的上述多个暂存器。当上述驱动模块接着从另一应用程序接收一第二绘图请求时,上述图形处理器储存上述多个暂存器的设定值于上述图形存储器成为一第一备份记录。本发明所述的图形处理器的内部数据切换系统,节省了驱动模块与图形处理器之间的信道频宽。

权利要求 :

1.一种图形处理器的内部数据切换系统,其特征在于,所述 图形处理器的内部数据切换系统包含:

一图形处理器,包含多个暂存器,并根据上述多个暂存器的 设定值以绘制一数字化影像;

一图形存储器,用以在上述数字化影像输出至一显示器以前, 暂时储存上述数字化影像;

一驱动模块,用以驱动上述图形处理器,当从一第一应用程 序接收一第一绘图请求时,根据上述第一绘图请求产生对应上述 第一应用程序的上述多个暂存器的设定值,并将上述多个暂存器 的设定值写至上述图形处理器的上述多个暂存器,当上述驱动模 块接着从一第二应用程序接收一第二绘图请求时,指导上述图形 处理器储存上述多个暂存器的设定值于上述图形存储器成为一第 一备份记录,其中上述第二应用程序不同于上述第一应用程序。

2.根据权利要求1所述的图形处理器的内部数据切换系统, 其特征在于,当上述驱动模块从上述第二应用程序接收到上述第 二绘图请求时,根据上述第二绘图请求产生对应上述第二应用程 序的上述多个暂存器的设定值,并将对应上述第二应用程序的上 述多个暂存器的设定值写至上述图形处理器的上述多个暂存器, 当上述驱动模块接着从一第三应用程序接收一第三绘图请求时, 指导上述图形处理器储存对应上述第二应用程序的上述多个暂存 器的设定值于上述图形存储器成为一第二备份记录,其中上述第 二应用程序不同于上述第三应用程序。

3.根据权利要求2所述的图形处理器的内部数据切换系统, 其特征在于,当上述第三应用程序为上述第一应用程序时,上述 驱动模块从上述图形存储器找到上述第一备份记录,并且指导上 述图形处理器从上述第一备份记录中取得对应上述第一应用程序 的上述多个暂存器的设定值,并将上述第一应用程序的上述多个 暂存器的设定值写至上述图形处理器的上述多个暂存器。

4.根据权利要求3所述的图形处理器的内部数据切换系统, 其特征在于,当上述驱动模块接收上述第三绘图请求时,根据上 述第三绘图请求以产生上述多个暂存器一部分的新设定值,并将 上述部分的新设定值写入至上述多个暂存器的部分暂存器;

当上述驱动模块接着指导上述图形处理器储存对应上述第一 应用程序的上述多个暂存器的设定值于上述图形存储器成为一第 三备份记录时,删除上述第一备份记录。

5.一种图形处理器的内部数据切换系统,其特征在于,该图 形处理器的内部数据切换系统包含:

一图形处理器,包含第一暂存器群组及第二暂存器群组,其 中上述第一暂存器群组为有效暂存器群组,上述图形处理器根据 上述有效暂存器群组的设定值以绘制一数字化影像;

一图形存储器,用以在上述数字化影像输出至一显示器以前, 暂时储存上述数字化影像;

一驱动模块,用以驱动上述图形处理器,当从一第一应用程 序接收一第一绘图请求时,根据上述第一绘图请求产生对应上述 第一应用程序的设定值,并将上述设定值写至上述图形处理器的 上述第一暂存器群组,当上述驱动模块接着从一第二应用程序接 收一第二绘图请求时,设定上述第二暂存器群组为上述有效暂存 器群组,借此以保留上述第一暂存器群组的设定值,作为一第一 备份记录,其中上述第二应用程序不同于上述第一应用程序。

6.根据权利要求5所述的图形处理器的内部数据切换系统, 其特征在于,当上述驱动模块从上述第二应用程序接收上述第二 绘图请求时,更指导上述图形处理器储存上述第一暂存器群组的 设定值的上述第一备份记录于上述图形存储器。

7.根据权利要求6所述的图形处理器的内部数据切换系统, 其特征在于,根据上述第二绘图请求产生对应上述第二应用程序 的设定值,以写至上述图形处理器的上述第二暂存器群组,上述 图形处理器根据上述第二暂存器群组以进行数字化影像绘制。

8.根据权利要求7所述的图形处理器的内部数据切换系统, 其特征在于,当上述驱动模块接着从上述第一应用程序接收一第 三绘图请求时,上述驱动模块判别上述第一暂存器群组是否有上 述第一应用程序对应的上述第一备份记录,  当上述第一暂存器群 组有上述第一备份记录时,设定上述第一暂存器群组为上述有效 暂存器群组。

9.根据权利要求8所述的图形处理器的内部数据切换系统, 其特征在于,上述驱动模块根据上述第三绘图请求产生上述第一 暂存器群组的一部分暂存器的设定值,以写入上述第一暂存器群 组的上述部分暂存器,上述图形处理器根据上述第一暂存器群组 中的设定值以进行数字化影像绘制。

10.根据权利要求8所述的图形处理器的内部数据切换系统, 其特征在于,当上述第一暂存器群组无上述第一备份记录时,上 述驱动模块设定上述第一暂存器群组为上述有效暂存器群组,从 上述图形存储器中取得上述第一备份记录,将上述第一备份记录 载入至上述第一暂存器群组。

说明书 :

技术领域

本发明是有关于计算机技术,且特别有关于图形处理器的内 部数据切换系统。

背景技术

图形处理器被设计以绘制二维(2-dime nsional,2D)或三维 (3-dimensional,3D)的影像。在一计算机装置中,当一应用程 序请求图形处理器的资源时,图形处理器的驱动程序接收应用程 序的请求以计算图形处理器所需的暂存器设定值,再写至该图形 处理器。图形处理器须根据对应上述应用程序的完整的暂存器设 定值以正确地绘制影像。驱动程序持有的一份图形处理器暂存器 设定值的最新版本,以下称为芯片影像文件(chip image)。举例来 说,图1的驱动程序134持有对应一应用程序131的芯片影像文件 136。在由同一应用程序131发出不同绘图请求时,仅需将芯片影 像文件136中基于每一请求需更新的部分暂存器设定值计算出来, 再传送给图形处理器120的暂存器122,不需传送完整的芯片影像 文件。
在多工操作系统的环境下,当不同应用程序(例如应用程序 131-133)竞相使用图形处理器120的资源时,驱动程序134需要 为取得其资源的每一应用程序产生完整的芯片影像文件,并传送 至图形处理器120。由于芯片影像文件的数据量颇大,从驱动程序 134传送至图形处理器120时便会占用其二者间信道(包含总线 140、142及北桥芯片112)的频宽。越多程序竞争图形处理器资源 时,此情形则更加剧。

发明内容

有鉴于此,本发明是提供一种图形处理器的内部数据切换系 统,包含图形处理器、图形存储器以及驱动模块。上述图形处理 器根据其中的多个暂存器的设定值以绘制一数字化影像。上述图 形存储器用以在上述数字化影像输出至一显示器以前,暂时储存 上述数字化影像。上述驱动模块用以驱动上述图形处理器。当上 述驱动模块从一第一应用程序接收一第一绘图请求时,根据上述 第一绘图请求产生对应上述第一应用程序的上述多个暂存器的设 定值,并将上述多个暂存器的设定值写至上述图形处理器的上述 多个暂存器。当上述驱动模块接着从一第二应用程序接收一第二 绘图请求时,指导上述图形处理器储存上述多个暂存器的设定值 于上述图形存储器成为一第一备份记录,其中上述第二应用程序 不同于上述第一应用程序。
本发明另提供一种图形处理器的内部数据切换系统,包含图 形处理器、图形存储器以及驱动模块。
上述图形处理器包含第一暂存器群组及第二暂存器群组。上 述第一暂存器群组为有效暂存器群组。上述图形处理器根据上述 有效暂存器群组的设定值以绘制一数字化影像。上述图形存储器 用以在上述数字化影像输出至一显示器以前,暂时储存上述数字 化影像。
上述驱动模块用以驱动上述图形处理器。当上述驱动模块从 一第一应用程序接收一第一绘图请求时,根据上述第一绘图请求 产生对应上述第一应用程序的设定值,并将上述设定值写至上述 图形处理器的上述第一暂存器群组。当上述驱动模块接着从一第 二应用程序接收一第二绘图请求时,保留上述第一暂存器群组的 设定值,作为一第一备份记录,其中上述第二应用程序不同于上 述第一应用程序。
本发明另提供一种图形处理器的内部数据切换系统,包含图 形处理器、图形存储器以及驱动模块。上述图形处理器根据其中 的多个暂存器的设定值以绘制一数字化影像。上述图形存储器用 以在上述数字化影像输出至一显示器以前,暂时储存上述数字化 影像。上述驱动模块用以驱动上述图形处理器,并指导上述图形 处理器储存上述多个暂存器的设定值的一第一备份记录于上述图 形存储器。
本发明所述的图形处理器的内部数据切换系统,节省了驱动 模块与图形处理器之间的信道频宽。

附图说明

图1显示一传统计算机系统的示意图;
图2显示图形处理器的内部数据切换系统的结构方块图;
图3显示上述系统的运作流程图;
图4显示图形处理器的内部数据切换系统的结构方块图;
图5显示上述系统的运作流程图。

具体实施方式

以下说明是本发明的较佳实施例。其目的是要举例说明本发 明一般性的原则,不应视为本发明的限制,本发明的范围当以权 利要求书所界定的范围为准。
请参照图2,其是依据本发明的一实施例所绘示的图形处理器 的内部数据切换系统200,该内部数据切换系统200包含图形处理 器220、图形存储器(video RAM,简称VRAM)240以及驱动模块 234。
图形处理器220用以绘制二维或三维的数字化影像。驱动模块 234可以由计算机程序操作,用以驱动图形处理器220。图形处理 器220包含多个暂存器(register)222,并根据上述多个暂存器222 的设定值以绘制数字化影像。图形存储器240在上述数字化影像被 输出至显示器250以前,用以暂时储存上述数字化影像。
典型上,图形存储器240可以与图形处理器220一起设置于一 显示配置器(display adapter)上。值得注意的是,图形处理器220 可以储存多个暂存器222的设定值于图形存储器240,也可以从图 形存储器240载入上述设定值。驱动模块234则可以负责配置用来 储存上述设定值的存储器位置,以及找到将从图形存储器240被载 入多个暂存器222的设定值的存储器位置。
请参照图3,其中显示图形处理器的内部数据切换系统200的 运作方式流程图。
起初驱动模块234未服务任何应用程序。驱动模块234当从应 用程序131接收一第一绘图请求时(步骤S2),则提供服务给应用程 序131(步骤S4)。驱动模块234根据应用程序131的请求以驱动图形 处理器220进行绘图。在步骤S4中,驱动模块234根据上述第一绘 图请求产生对应于应用程序131的完整的暂存器设定值作为芯片 影像文件236,即所有多个暂存器222的设定值(步骤S6),并将上 述设定值写至图形处理器220的多个暂存器222(步骤S8),借以驱 动图形处理器220。写入新的设定值至所有多个暂存器222的动作 以下称为完整更新(full update),而写入新的设定值至部分多个暂 存器222的动作以下称为部分更新(partial update)。驱动模块234 及图形处理器220是第一次服务应用程序131,所以步骤S8是一次 完整更新操作。
当驱动模块234接着从另一应用程序(例如应用程序132)接收 一第二绘图请求时(步骤S10),指导图形处理器220原始的多个暂 存器222的设定值写入于图形存储器240成为一第一备份记录(例 如图2中对应于应用程序131的备份记录241)(步骤S12)。举例来 说,当驱动模块234接着从应用程序132接收一第二绘图请求时, 图形处理器220储存对应于应用程序131的完整暂存器设定值于图 形存储器220成为备份记录241。备份记录241对应于应用程序 131。
驱动模块234接着判定发出上述第二绘图请求的应用程序是 否有对应的备份记录被储存于图形存储器240(步骤S14)。如有, 驱动模块234将该应用程序对应的备份记录载入多个暂存器 222(步骤S16)。如否,则直接执行步骤S24以服务该应用程序。
由于驱动模块234目前是第一次服务应用程序132,所以图形 存储器240中无对应的备份记录,而驱动模块234直接执行步骤 S24以服务应用程序132。在步骤S24中,驱动模块234根据应用程 序132的绘图请求以产生对应于应用程序132的所有多个暂存器 222的完整设定值,作为芯片影像文件236(步骤S26),并将芯片影 像文件236写至图形处理器220的多个暂存器222(步骤S28)。驱动 模块234及图形处理器220是第一次服务应用程序132,所以此写 入步骤也是一次完整更新操作。
驱动模块234也可以在必要的时候备份对应于应用程序132的 多个暂存器222的设定值。举例来说,当驱动模块234接着从另一 应用程序接收一第三绘图请求时(步骤S10),指导图形处理器220 储存多个暂存器222的设定值于上述图形存储器240成为对应于应 用程序132的备份记录242(步骤S12)。备份记录241及242可以是 未经编码的芯片影像文件。
当发出上述第三绘图请求的应用程序又为应用程序131时,驱 动模块234判别出其所对应的备份记录241已储存于图形存储器 240,于是从中找到该备份记录241并反馈该备份记录241至多个 暂存器222(步骤S16)。换言之,驱动模块234指导图形处理器220 从备份记录241中取得对应于应用程序131的多个暂存器222的设 定值,并将取得的设定值写至图形处理器220的多个暂存器222。
由于图形处理器220已经从图形存储器240取得对应于应用程 序131的暂存器设定值,驱动模块234不需要为应用程序131对多 个暂存器222作完整更新,而直接执行步骤S18。当驱动模块234 接收上述第三绘图请求时,服务发出上述第三请求的应用程序(步 骤S18),根据上述第三绘图请求以产生多个暂存器222一部分的新 设定值(步骤S20),并将上述部分的新设定值写入至多个暂存器 222之中的该部分暂存器(步骤S22)。借此以节省驱动模块234与图 形处理器220之间的信道频宽。
当驱动模块234接着从另一应用程序接收一第四绘图请求时, 指导图形处理器220储存对应于应用程序131的暂存器设定值于图 形存储器240成为备份记录243。驱动模块234可以直接删除备份 记录241,或以备份记录243覆写备份记录241。
请参照图4,其是依据本发明的另一实施例所绘示的图形处理 器的内部数据切换系统400,该内部数据切换系统400包含图形处 理器420、图形存储器240及驱动模块434。除了以下特别说明的 以外,本实施例的各实体的运作及特征可以参照上述实施例的对 应部分。
图4的驱动模块434用以驱动图形处理器420。图形处理器420 包含暂存器群组422及424,其中之一为有效暂存器群组。图形处 理器420起初以暂存器群组422为有效暂存器群组,并根据其中的 设定值以绘制数字化影像。图形存储器240用以在上述数字化影像 输出至一显示器以前,暂时储存上述数字化影像。
参照图5,起初驱动模块434未服务任何应用程序。当驱动模 块434从一应用程序131接收一第一绘图请求时(步骤S102),服务 应用程序131(步骤S104),包含根据上述第一绘图请求产生对应于 应用程序131的设定值作为芯片影像文件436(步骤S106),并将上 述设定值(芯片影像文件436)写至图形处理器420的有效暂存器群 组,即暂存器群组422(步骤S108)。
当驱动模块434接着从另一应用程序(例如应用程序132)接收 一第二绘图请求时(步骤S110),指导图形处理器420储存暂存器群 组422的设定值的备份记录(即备份记录241)于图形存储器240(步 骤S120),并设定图形处理器420的另一暂存器群组(例如暂存器群 组424)为有效暂存器群组(步骤S122)。借此以保留暂存器群组422 中的设定值。因此,最近执行的应用程序所对应的暂存器设定值 可以保存于一组暂存器群组中。在暂存器群组422中的是备份记录 241A。备份记录241及241A皆对应于应用程序131。
驱动模块434接着判定发出上述第二绘图请求的应用程序是 否有对应的备份记录被(1)储存于另一暂存器群组(例如暂存器群 组424)、(2)储存于图形存储器240,或者(3)无对应的备份记录(步 骤S140)。如果是情况(1)有对应备份记录储存于另一暂存器群组 (例如暂存器群组424),既然图形处理器420在步骤S122已将有效 暂存器群组切换为该另一暂存器群组(例如暂存器群组424),便可 直接利用其中的设定,以在步骤S180中绘制数字影像。
如果是情况(2)有对应备份记录储存于图形存储器240,驱动 模块434找到该应用程序对应的备份记录(步骤S160),并将该应用 程序对应的备份记录载入有效暂存器群组(例如暂存器群组 424)(步骤S162)。如果是情况(3)没有对应的备份记录,则驱动模 块434直接执行步骤S240。
由于驱动模块434目前是第一次服务应用程序132,所以暂存 器群组424及图形存储器240中无对应的备份记录,而驱动模块 434直接执行步骤S240以服务应用程序132。在步骤S240中,驱动 模块434根据应用程序132的绘图请求以产生对应于应用程序132 的暂存器群组424的完整设定值,作为芯片影像文件436(步骤 S260),并将芯片影像文件436写至图形处理器420的暂存器群组 424(步骤S280)。驱动模块434及图形处理器420是第一次服务应 用程序132,所以此写入步骤也是一次完整更新操作。
驱动模块434也可以在必要的时候备份对应于应用程序132的 暂存器群组424的设定值。举例来说,当驱动模块434接着从另一 应用程序接收一第三绘图请求时(步骤S110),指导图形处理器420 储存暂存器群组424的设定值于上述图形存储器240成为对应于应 用程序132的备份记录242(步骤S120),并设定有图形处理器420 的另一暂存器群组(例如暂存器群组422)为有效暂存器群组(步骤 S122),借此保留暂存器群组424的设定值,即备份记录242A。
当发出上述第三绘图请求的应用程序为应用程序131时,驱动 模块434判别其对应的备份记录已储存于暂存器群组422及图形存 储器240(步骤S140)。暂存器群组422已存有备份记录241A,所以 不需要从图形存储器240载入备份记录241,而直接执行步骤S180 以服务该应用程序。
由于图形处理器420已经从暂存器群组422取得对应于应用程 序131的暂存器设定值,驱动模块434不需要为应用程序131对暂 存器群组422作完整更新。当驱动模块434接着从应用程序131接 收上述第三绘图请求时,根据上述第三绘图请求以产生暂存器群 组422一部分的新设定值(步骤S200),并将上述部分的新设定值写 入至暂存器群组422之中的该部分暂存器(步骤S220)。借此以节省 驱动模块434与图形处理器420之间的信道频宽。
应用程序132为上一个被服务的应用程序,其对应的暂存器设 定值被保留于暂存器群组424。图形处理器420必须有切换有效暂 存器群组的功能。须要了解的是,图形处理器也可以具有多个暂 存器群组以作为储存设定值的快取存储器。在此情况下,其驱动 模块可以保留一份应用程序与对应备份记录的数据。当驱动模块 要继续服务一应用程序,判别其对应备份记录所有暂存器群组, 再设定该暂存器群组为有效暂存器群组。
总之,上述图形处理器的内部数据切换系统中,图形处理器 储存其暂存器设定值于上述图形存储器,其对应一应用程序。当 要再次服务该应用程序时,也可以从上述图形存储器中反馈该设 定值。图形处理器也可以具有多个暂存器群组,设定其中之一为 有效暂存器群组,其它的暂存器群组作为储存设定值的快取存储 器。
以上所述仅为本发明较佳实施例,然其并非用以限定本发明 的范围,任何熟悉本项技术的人员,在不脱离本发明的精神和范 围内,可在此基础上做进一步的改进和变化,因此本发明的保护 范围当以本申请的权利要求书所界定的范围为准。
附图中符号的简单说明如下:
110:中央处理器
112:北桥芯片
120、220:图形处理器
122:暂存器
131-133:应用程序
134:驱动程序
136:芯片影像文件
140、142:总线
200:图形处理器的内部数据切换系统
222:多个暂存器
234、434:驱动模块
236、436:芯片影像文件
240:图形存储器
241-243、241A-242A:备份记录
250:显示器
400:图形处理器的内部数据切换系统
420:图形处理器
422、424:暂存器群组