具有分布式第一阶缓存系统及集中式第二阶缓存的着色组合的制作方法

文档序号:2578635阅读:172来源:国知局
专利名称:具有分布式第一阶缓存系统及集中式第二阶缓存的着色组合的制作方法
技术领域
本发明大体针对由计算系统执行的计算操作,且更特别的是,针对由计算系统执 行的图形处理任务。
背景技术
图形处理单元(GPU)为经特别设计成可完成图形处理任务的复杂集成电路。例 如,GPU可执行最终用户应用系统(例如,视讯游戏应用系统)所要求的图形处理任务。就 此例而言,在最终用户应用系统、GPU之间有数层软件。最终用户应用系统系与应用程序接口(API)通讯。API允许最终用户应用系统以 标准化的格式输出图形数据及命令,而不是依照GPU的格式。市上有数种API,包含由微软 开发的DirectX 以及由硅谷图形公司开发的OpenGL 。APl系与驱动器通讯。驱动器把 由API收到的标准程序代码转译成为GPU可理解的原生指令格式。通常由GPU的制造商编 写驱动器。GPU则执行来自驱动器的指令。GPU产生在习称“渲染”处理中由较高阶的组件描述来构成影像的像素。GPU通 常使用连续渲染的概念以利用管线(pipeline)来处理像素、纹理及几何数据。该等管线 常被称为固定功能特殊用途管线的集合,例如点阵转化器(rasterizer)、设置引擎(setup engine)、色彩混合器(color blender)、阶层深度(hierarchical cbpth)、纹理映像 (texture mapping)、以及在着色管(shader pipe)或在着色管线中可完成的可编程阶段, 术语“着色”在计算机图形学中是指以完成渲染效果为主之图形资源所使用的一组软件指 令。此外,在平行处理设计中,GPU也可使用多条可编程管线以得到较高的吞吐量。多条着 色管线也被称作着色管数组。此外,GPU也支持习称纹理映像的概念。纹理映像处理是用邻近纹理像素(或文 素(texel))的色彩来决定用于纹理映射式像素(texture mapped pixel)的纹理色彩。该 处理也被称作纹理平滑化或纹理插补。不过,高影像质量纹理映像需要高度复杂的计算。此外,备有整合着色的GPU同时也支持许多类型的着色处理(shader processing)(源于像素、顶点、原始数据(primitive)、曲面及通用计算),这会提高对于有 较高效能之通用内存存取能力的需求。纹理滤波器依靠高速存取用于像素数据的本地高速缓存。不过,纹理滤波器使用 专属本地高速缓存通常会妨碍使用更通用的共享内存。尽管通用共享内存更有弹性,然而 它通常有较慢的反应时间因而有较差的效能。 在新软件应用系统不断增加复杂度的情形下,对于GPU可提供有效率高质量之渲 染、纹理滤波及错误纠正的需求也会持续增加。因此,亟须可减轻上述缺点的系统及/或方法。特别是,亟须一种与集中式可共享 第二阶缓存系统结合用于每个纹理滤波器的分布式第一阶缓存系统。

发明内容
本章节 的目的是概述本发明的几个方面以及介绍一些较佳的具体实施例。简化及 省略是为了避免混淆本章节的目的。不希望该等简化及省略限定本发明的范畴。与具体表 达及广泛描述于本文的本发明原理一致,本发明包含方法与装置,藉此着色管纹理滤波器 (shader pipe texture filter)可用第一阶缓存系统作为主要的储存方法,然而在有必要 时能够叫第一阶缓存系统读写第二阶缓存系统。当每个第一阶缓存系统与一特定着色管纹 理滤波器关联时,第二阶高速缓存没有这种关联因而所有的第一阶缓存系统都可使用它。 此外,第一阶缓存系统可配置一划定内存区域给其它的资源共享。在本发明的一具体实施例中,第一阶缓存系统系经组态成有双重存取(dual access)使得两个着色管纹理滤波器可存取单一第一阶缓存系统。在另一具体实施例中,一个以上的第二阶缓存系统被组态成可让每个第一阶缓存 系统存取。在另一具体实施例中,第一阶缓存系统与第二阶缓存系统的通讯使用一个以上的 内存信道,藉此得到较大的数据吞吐量(data throughput)。在另一具体实施例中,一个或多个第一阶缓存系统可配置多个划定内存区域给其 它的资源共享,包含其它的第一阶缓存系统。在某些情况下,此方法允许文素数据有较快的 提取时间(fetch time),在此所需数据已经从第二阶缓存系统移到第一阶缓存系统。以下参考附图的说明系详述本发明的其它特征及优点,以及本发明各种具体实施 例的结构与操作。应注意,本发明不受限于描述于本文的特定具体实施例。本文提出该等 具体实施例系仅供图解说明。基于本文的教导,熟谙此艺者显然可明白其它的具体实施例。


并入本专利说明书且构成其中之一部份的附图系图解说明本发明的具体实施例, 其系与上文给出的一般说明和下文给出的具体实施例详细说明一起用来解释本发明的原理。第1图的系统图系图标单一第一阶缓存系统与单一第二阶缓存系统的一具体实 作。第2图的系统图系图标多个第一阶及第二阶缓存系统的一具体实作。第3图的系统图系图标双端口式(dual ported)第一阶及多个第二阶缓存系统的
一具体实作。第4图的流程图系图示用于着色滤波器缓存系统(shader filter cache system) 的方法之一具体实作。由以下结合附图所提出的详细说明可更加明白本发明的特征与优点,附图都用相 同的参考字符表示对应的组件。附图中相同、功能类似、及/或结构类似的组件大体用相同 的组件符号表示。组件符号最左边的数字是表示它最先出现的附图编号。
具体实施例方式由以下本发明各种“具体实施例”的说明可更加明白本发明。因此,特定“具体实 施例”都是本发明的观点,每个都不是整个发明。在一方面,本发明系有关于有集中式第二阶缓存系统的 分布式第一阶缓存系统。着色管纹理滤波器各有专属第一阶缓存系统,该专 属第一阶缓存系统系配置为提供读写内含于该第一阶缓存系统的文素数据。此外,有一个 或多个第二阶缓存系统不专属于着色管纹理滤波器,因而所有的第一阶缓存系统可存取它 们。应了解,尽管本文提出特定的组态、配置及步骤,然而这些系仅供图解说明。熟谙 此艺者明白可使用其它的组态、配置及步骤而不脱离本发明的精神与范畴。熟谙此艺者明 白本发明也可应用于各种其它的应用系统。应注意,本专利说明书文中提及的“一具体实施例”、“具体实施例”、“示范具体实 施例”、等等系指该具体实施例可包含特定特征、结构或特性,但是每一个具体实施例不一 定包含该特定特征、结构或特性。此外,该等词组不一定意指同一个具体实施例。此外,在 描述与具体实施例结合的特定特征、结构或特性时,在熟谙此艺者的知识内,意指其它的具 体实施例可结合该特定特征、结构或特性,不论是否有明确的描述。尽管本文参照用于特定应用系统的示范具体实施例来描述本发明,应了解,本发 明不得不受限于该等示范具体实施例。取得本文所提供之教导的熟谙此艺者知道在本发明 的范畴及本发明在其中有重大效用的其它领域内仍有其它的修改、应用及具体实施例。第1图系根据本发明之一具体实施例图示单一第一阶缓存系统与单一第二阶缓 存系统100。系统100包含单一着色管纹理滤波器110与关联的第一阶缓存系统120,该第 一阶缓存系统120系配置为用宽信道内存总线(wide channel memory bus) 125来与第二 阶缓存系统130通讯。在图示于第1图的具体实施例中,着色管纹理滤波器110采用二线性滤波 (bilinear filtering)的概念以决定特定像素的色彩。在二线性滤波期间,着色管纹理滤 波器110分析离特定像素最近的4个像素之文素资料。然后,用根据距离的加权平均来组 合这4个像素的文素数据以计算出想要的结果。该文素数据系取自与当前着色管纹理滤波 器110关联的第一阶缓存系统120。不过,如果在想要的时候想要的文素数据不在第一阶缓存系统120之中的话,则 第一阶缓存系统120发送对于想要文素数据的读取请求给第二阶缓存系统130。在这种情 况下,所需数据接着会从第二阶缓存系统130拷贝至第一阶缓存系统120以便由着色管纹 理滤波器110加以分析及处理。第2图系根据本发明之一具体实施例图示有关联第一阶缓存及多个第二阶缓存 系统的多个着色管纹理滤波器。系统200包含一个或多个着色管纹理滤波器,在此着色管 纹理滤波器1至着色管纹理滤波器N用组件符号110-1至110-N表示,其中“N”为大于一 的正整数。系统200也包含与每个着色管纹理滤波器关联的第一阶缓存系统,在此Ll-I缓 存系统至Ll-N缓存系统用组件符号120-1至120-N表示,其中“N”为大于一的正整数。也 包含宽信道内存总线125,其系使第一阶缓存系统120-1至120-N连结至一组第二阶缓存系 统。在此具体实施例中,该第二阶缓存系统包含一个或多个第二阶缓存系统,在此用L2-1 缓存系统至L2-M缓存系统表示,其中“M”为大于一的整数且不一定等于N(第一阶缓存系 统的数目)。在第2图的具体实施例中,每个着色管纹理滤波器110-1至110-N都采用二线性 滤波的概念以决定特定像素的色彩。如以上所解释的,每个着色管纹理滤波器110-1至IlO-N都需要分析离特定像素最近的4个像素之文素资料。因此,每个着色管纹理滤波器的 特定文素数据都取自与它关联的第一阶缓存系统。同样地,着色管纹理滤波器1(110-1)发 送对文素数据的请求给Ll-I缓存系统(120-1)。其余的着色管纹理滤波器会用相同的方式 发送文素数据请求。
不过,若是用于任一特定着色管纹理滤波器的想要文素数据不在关联的第一阶缓 存系统120中的话,则第一阶缓存系统可发送对于想要文素数据的读取请求给第二阶缓存 系统130。在第2图的具体实施例中,多个第二阶缓存系统中之一个或多个可响应对于文素 数据的请求给第一阶缓存系统。不过,在另一具体实施例中,有单一第二阶缓存系统同时也 有多个着色管纹理滤波器及多个关联第一阶缓存系统。在与第2图有关的另一具体实施例中,一个或多个第一阶缓存系统可配置多个划 定内存区域给其它的资源共享,包含其它的第一阶缓存系统。在某些情况下,此方法允许文 素数据有较快的提取时间,在此所需数据已经从第二阶缓存系统移到第一阶缓存系统。第3图系根据本发明之一具体实施例图示有关联双端口式第一阶缓存及多个第 二阶缓存系统的多个着色管纹理滤波器。系统300包含每个都支持达两个着色管纹理滤波 器的一个或多个双埠式第一阶缓存系统,以及第二阶缓存系统。在此具体实施例中,第一 阶缓存系统支持达两个着色管纹理滤波器对于文素数据的请求。在此具体实施例中,有以 Ll-I至Ll-N标示和以320-1至320-N标示的一个或多个第一阶缓存系统,在此N为正整 体。在此,每个第一阶缓存都支持两个着色管纹理滤波器,图中为着色管纹理滤波器A、310, 以及着色管纹理滤波器B、312。此外,第一阶缓存320-1至320-N可经由宽信道内存总线 125来存取第二阶缓存系统(图中以L2-1至L2-N表示),在此N为正整体。在与第3图有关的另一具体实施例中,一个或多个第一阶缓存系统可配置多个划 定内存区域给其它的资源共享,包含其它的第一阶缓存系统。在某些情况下,此方法允许文 素数据有较快的提取时间,在此所需数据已经从第二阶缓存系统移到第一阶缓存系统。第4图为方法400的流程图,藉此着色管纹理滤波器使用第一阶缓存系统作为主 要的储存方法以及在有必要时能够存取第二阶缓存系统。方法400在步骤402开始。在步 骤404,每个第一阶缓存系统都可配置多个划定内存区域给其它的资源共享。在步骤406, 着色管纹理滤波器发送读或写命令给与它关联的第一阶缓存系统。在步骤408,关联的第一 阶缓存系统适时撷取或写入文素数据。在步骤410,每个第一阶缓存系统可发送读写的请求 给第二阶缓存系统。方法400在步骤412结束。可实作图示于第1、2、3及4图的功能、处理、系统及方法于软件、韧体、或硬件、或 使用彼等之任何组合者。如果使用可编程逻辑(programmable logic),该逻辑可在市售处 理平台或特殊用途装置上执行。熟谙此艺者应了解,基于本文的描述,可设计本发明的具体实施例于使用硬件描 述语言(HDL)的软件中,例如Verilog或VHDL。基于HDL的设计可建立电子系统的性能模 型,在此可综合该设计以及最终制造成硬件装置。此外,基于HDL的设计可储存于计算机产 品中以及在制造硬件之前加载计算机系统。应了解,旨在用来解释申请专利范围的是实施方式,而不是
发明内容发明 摘要
发明内容发明摘要系阐述本发明人可想到的一个或多个但不是所有的本发 明示范具体实施例,因而不是想要以任何方式来限定本发明及其申请专利范围。
以上已藉助图解说明特定功能及其关系之具体实作的功能建立区块(functional building block)来说明本发明。该等功能建立区块的边界系任意定义以便说明。只要可 适当地执行该等特定功能及其关系,可定义替代边界。 前面特定具体实施例的描述将完整地揭露本发明的一般性质,以致于他者藉由应 用本技艺的知识,在不需过度实验下,可轻易修改该等特定具体实施例及/或改造成可用 于各种应用系统,而不脱离本发明的一般概念。因此,希望基于本文提出的教导及指导的此 类改造及修改都落在揭示具体实施例的等价意思及范围内。应了解,本文的用语或术语是 用来说明而不是限制,使得熟谙此艺者可按照该等教导及指导来解释本专利说明书的用语 或术语。尽管以上已描述本发明的各种具体实施例,应了解,然而彼等均仅供举例说明,而 不是限制。熟谙此艺者明白其中的形式及细节可做出不同的改变而不脱离本发明的精神及 范畴。因此,本发明的广度及范畴不应受限于任何一个上述示范具体实施例,反而应该只根 据以下的申请专利范围及其等价陈述来定义。
权利要求
1.一种着色滤波器缓存系统,其包含分布式第一阶缓存系统,其配置为与着色管纹理滤波器通讯;以及 第二阶缓存系统,其中该第一阶缓存系统与该第二阶缓存系统配置为及布置成能够利用内存信道来相 互通讯。
2.如权利要求1所述的系统,其中该第一阶缓存系统包含一个或多个第一阶缓存区 块,在此每个第一阶缓存区块与着色管纹理滤波器关联,该着色管纹理滤波器配置为对于 该第一阶缓存区块读写数据。
3.如权利要求1所述的系统,其中该第二阶缓存系统包含一个或多个第二阶缓存区 块,以及其中该第一阶缓存系统配置为对于第二阶缓存区块读写数据。
4.如权利要求1所述的系统,其中该第一阶缓存系统配置为利用一个或多个内存信道 来与该第二阶缓存系统通讯。
5.如权利要求1所述的系统,其中该第一阶缓存系统配置为被一个或多个着色管纹理 滤波器共享。
6.一种用于缓存着色滤波器数据的方法,其包含接收来自着色管滤波器用以存取第一阶缓存系统的读写命令; 执行来自该着色管滤波器的该命令;将该第一阶缓存系统中的多个划定内存区域配置成能被其它的资源共享;以及 管理从该第一阶缓存系统至第二阶缓存系统的读写请求。
7.如权利要求6所述的方法,其中该接收步骤包含从多个着色管滤波器接收的步骤。
8.如权利要求6所述的方法,其中该接收步骤包含从多个第一阶缓存系统接收的步 骤,以及该配置多个划定区域的步骤包含配置多个第一阶缓存系统的多个划定区域的步马聚ο
9.如权利要求6所述的方法,其中该管理从该第一阶缓存系统至第二阶缓存系统的读 写请求的步骤包含管理从该第一阶缓存系统至多个第二阶缓存系统的读写请求。
10.如权利要求6所述的方法,其中该方法通过合成多个硬件描述语言指令来执行该 方法。
11.一种用于缓存着色滤波器数据的系统,其包含 处理器;以及与该处理器通讯的内存,储存于该内存的多个处理指令用于引导该处理器以 接收来自着色管滤波器的用于存取第一阶缓存系统的读写命令; 执行来自该着色管滤波器的该命令;将该第一阶缓存系统中的多个划定内存区域配置成能被其它的资源共享;以及 管理从该第一阶缓存系统至第二阶缓存系统的读写请求。
12.如权利要求11所述的系统,其还包含多个指令用于使该处理器 管理来自多个着色管滤波器的命令。
13.如权利要求11所述的系统,其还包含多个指令用于使该处理器管理多个第一阶缓存系统。
14.如权利要求11所述的系统,其还包含多个指令用于使该处理器管理多个第二阶缓存系统。
15.一种用于缓存着色滤波器数据的系统,其包含用于接收来自着色管滤波器用于存取第一阶缓存系统的读写命令的装置; 用于执行来自该着色管滤波器的该命令的装置;用于将该第一阶缓存系统中的多个划定内存区域配置成能被其它资源共享的装置;以及用于管理从该第一阶缓存系统至第二阶缓存系统的读写请求的装置。
16.如权利要求15所述的系统,其还包含 用于管理来自多个着色管滤波器的命令的装置。
17.如权利要求15所述的系统,其还包含 用于管理多个第一阶缓存系统的装置。
18.如权利要求15所述的系统,其还包含 用于管理多个第二阶缓存系统的装置。
19.一种计算机可读取媒体,其携带由一个或多个指令组成的一个或多个序列,在由一 个或多个基于处理器的计算机系统执行该一个或多个序列时使得该计算机系统执行一种 缓存着色滤波器数据的方法,该方法包含接收来自着色管滤波器的用于存取第一阶缓存系统的读写命令; 执行来自该着色管滤波器的该命令;将该第一阶缓存系统中的多个划定内存区域配置成能被其它的资源共享;以及 管理从该第一阶缓存系统至一第二阶缓存系统的读写请求。
全文摘要
一种着色管纹理滤波器,其系使用第一阶缓存系统作为主要的储存方法,然而在有必要时能够叫第一阶缓存系统读写第二阶缓存系统。该第一阶缓存系统系经由宽信道内存总线来与该第二阶缓存系统通讯。此外,可将该第一阶缓存系统组态成可支持两个着色管纹理滤波器同时保持对于第二阶缓存系统的存取。也提出一种方法,其系使用第一阶缓存系统作为主要的储存方法,以及在有必要时能够叫第一阶缓存系统读写第二阶缓存系统。此外,第一阶缓存系统可配置一划定内存区域给其它的资源共享。
文档编号G09G5/00GK102047316SQ200980119830
公开日2011年5月4日 申请日期2009年6月1日 优先权日2008年5月30日
发明者A·P·德洛里埃, M·C·福勒, M·J·曼托, M·P·齐尼, M·莱瑟, R·S·哈尔托赫 申请人:先进微装置公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1