首页> 中国专利> 用于多纹理化的动态可配置纹理高速缓冲存储器

用于多纹理化的动态可配置纹理高速缓冲存储器

摘要

本发明揭示用于动态地配置纹理高速缓冲存储器的技术。在三维(3D)图形管线的纹理映射过程期间,如果批是用于单纹理映射,则将所述纹理高速缓冲存储器配置成n路组关联纹理高速缓冲存储器。然而,如果所述批是用于多纹理映射,则将所述n路组关联纹理高速缓冲存储器划分成n/M路组关联子高速缓冲存储器,其中n和M为大于1的整数,且n可被M除尽。

著录项

  • 公开/公告号CN101583929A

    专利类型发明专利

  • 公开/公告日2009-11-18

    原文格式PDF

  • 申请/专利权人 高通股份有限公司;

    申请/专利号CN200880001639.4

  • 发明设计人 于春;

    申请日2008-02-20

  • 分类号G06F12/08;

  • 代理机构北京律盟知识产权代理有限责任公司;

  • 代理人刘国伟

  • 地址 美国加利福尼亚州

  • 入库时间 2023-12-17 22:57:19

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2012-06-27

    授权

    授权

  • 2010-01-13

    实质审查的生效

    实质审查的生效

  • 2009-11-18

    公开

    公开

说明书

技术领域

本发明大体上涉及图形,且更具体来说,涉及用于动态地配置纹理高速缓冲存储器的技术。

背景技术

纹理映射是3D图形管线中用于将真实感添加到计算机产生的场景的最成功和盛行的技术中的一者。典型纹理映射(TM)过程是高度存储器存取密集的,因为TM过程的特征涉及多次纹理查找。频繁的纹理查找引起存储器总线上的瓶颈。为减轻此问题,通常使用纹理高速缓冲存储器。纹理高速缓冲存储器用于消除从外部存储器源(例如,芯片外存储器)获取纹素(texel)的冗余且利用三角形的光栅化的自然空间位置。

图形应用程序通常在批模式下发送绘制命令。在批模式下,所有像素作为一批而共用同一上下文状态寄存器。在单纹理批中,所有像素从一个单纹理图获取纹素。然而,在多纹理批模式下,如果将不同纹理存储于一个高速缓冲存储器内,则很有可能发生冲突性未命中。当将两个纹理图指派或分配给同一高速缓冲存储器线时,所述纹理图将彼此对冲且产生冗余存储器业务。

鉴于前述内容,不同纹理图使用一个高速缓冲存储器降低了功率和像素性能。

因此,此项技术中需要动态地配置纹理高速缓冲存储器的技术。

发明内容

本文中描述动态地配置纹理高速缓冲存储器的技术。在一实施例中,提供一种无线装置,所述无线装置包含具有动态可配置高速缓冲存储器的图形处理单元。所述动态可配置高速缓冲存储器在单纹理映射模式被启用时具有对应于n路组关联纹理高速缓冲存储器的第一配置,且在多纹理映射模式被启用时具有对应于一组n/M路组关联子高速缓冲存储器的第二配置,其中n和M为大于1的整数,且n可被M除尽。所述装置还包括耦合到所述图形处理单元的存储器。

在另一方面中,一种图形处理单元包括可操作以确定为选定应用程序使单纹理映射被启用还是多纹理映射被启用的驱动器。所述单元还包括动态可配置的高速缓冲存储器,所述动态可配置高速缓冲存储器在所述单纹理映射被启用时具有对应于n路组关联纹理高速缓冲存储器的第一配置,且在所述多纹理映射被启用时具有对应于一组n/M路组关联子高速缓冲存储器的第二配置,其中n和M为大于1的整数,且n可被M除尽。

在又一方面中,一种包括机器可读媒体的计算机程序产品具有用于致使机器确定选定应用程序使单纹理映射被启用还是多纹理映射被启用的指令。当单纹理映射被启用时,所述指令致使所述机器配置n路组关联纹理高速缓冲存储器。当多纹理映射被启用时,所述指令还致使所述机器将所述n路组关联纹理高速缓冲存储器划分成一组M个n/M路组关联子高速缓冲存储器,其中n和M为大于1的整数,n可被M除尽,且M对应于纹理图的数目。

下文更详细地描述本发明的各个方面和实施例。

附图说明

从下文结合图式时所陈述的详细描述将更加明白本发明的各方面和实施例,图式中参考标号始终识别对应者。

图1展示无线装置的框图。

图2展示图形处理单元的大体框图。

图3A展示常规三维(3D)管线。

图3B展示常规像素渲染级。

图4展示动态可配置纹理高速缓冲存储器的大体框图。

图5A展示在单纹理模式下的像素批。

图5B展示在多纹理模式下的像素批。

图6A-6B展示在单纹理模式下的动态可配置纹理高速缓冲存储器的示意图。

图7A-7B展示在多纹理模式下的动态可配置纹理高速缓冲存储器的示意图。

图8展示主存储器中所存储的应用程序的大体框图。

具体实施方式

词语“示范性”在本文中用于意味着“用作实例、例子或说明”。在本文中描述为“示范性”的任何实施例或设计不必被解释为比其它实施例或设计优选或有利。

许多游戏应用程序需要在二维(2D)空间(例如,显示屏幕)中显示3D对象的三维(3D)图形应用程序。2D图形中的像素具有位置、色彩和亮度的特性,而3D像素增加指示点位于假想Z轴上何处的深度特性。当组合3D像素时,产生纹理,每一3D像素具有其自身深度值。

本文所描述的技术可用于无线通信、计算、网络连接、个人电子器件等。在下文中描述所述技术在无线通信上的示范性使用。

图1展示无线通信系统中的无线装置10的一实施例的框图。无线装置10可为蜂窝式或相机电话、终端、手持机、个人数字助理(PDA)或某一其它装置。无线通信系统可为码分多址(CDMA)系统、全球移动通信系统(GSM)系统或某一其它系统。

无线装置10能够经由接收路径和发射路径提供双向通信。在接收路径上,通过天线12接收由基站发射的信号且提供到接收器(RCVR)14。接收器14调节并数字化接收到的信号且将样本提供到数字区20以供进一步处理。在发射路径上,发射器(TMTR)16接收将从数字区20发射的数据、处理并调节所述数据,且产生调制信号,所述调制信号经由天线12而被传输到基站。

数字区20包括各种处理、接口和存储器单元,例如,调制解调器处理器22、视频处理器24、控制器/处理器26、显示处理器28、ARM/DSP 32、图形处理单元(GPU)34、内部存储器36,和外部总线接口(EBI)38。调制解调器处理器22为数据发射和接收执行处理(例如,编码、调制、解调和解码)。视频处理器24对视频应用(例如,摄影机、视频重放和视频会议)的视频内容(例如,静态图像、移动视频,和移动文本)执行处理。控制器/处理器26可引导数字区20内的各种处理和接口单元的操作。显示处理器28执行处理以促进视频、图形和文本在显示单元30上的显示。ARM/DSP 32可为无线装置10执行各种类型的处理。图形处理单元34执行图形处理。

本文中所描述的技术可用于数字区20中的任一处理器,例如,图形处理单元34。内部存储器36存储用于数字区20内的各种单元的数据和/或指令。EBI 38促进数据沿着总线或数据线DL在数字区20(例如,内部存储器36)与主存储器40之间的转移。

可以一个或一个以上DSP、微处理器、RISC等来实施数字区20。数字区20也可制造在一个或一个以上专用集成电路(ASIC)或一些其它类型的集成电路(IC)上。

本文中所描述的技术可实施于各种硬件单元中。举例来说,所述技术可实施于ASIC、DSP、RISC、ARM、数字信号处理装置(DSPD)、可编程逻辑装置(PLD)、现场可编程门阵列(FPGA)、处理器、控制器、微控制器、微处理器,和其它电子单元。

图2展示GPU(整体以34表示)的大体框图。GPU 34包括三维(3D)切换驱动器42和动态可配置纹理高速缓冲存储器44。3D切换驱动器42为高速缓冲存储器44提供切换控制信号SW1以进行重配置。GPU 34还包括3D图形管线60,稍后将详细描述3D图形管线60。另外,GPU 34包括具有获取控制器48的处理器46。获取控制器48用于产生命令以从纹理图TM中的一者或一者以上获取所请求的纹理数据。

图8展示主存储器40中所存储的应用程序A1...AZ。所存储的应用程序A1...AZ可包括游戏应用程序或其它图形应用程序。每一应用程序使纹理类型TT和一个或一个以上纹理图TM与其相关联。在操作中,依据选定应用程序,3D切换驱动器42解析选定应用程序且确定为选定应用程序启用哪一纹理(单个或多个纹理)类型TT。其后,3D切换驱动器42产生切换控制信号SW1以使高速缓冲存储器44针对单纹理模式或多纹理模式而重配置。纹理映射是经由至少一个纹理图TM将2D纹理图像映射于3D对象的表面上的阴影技术。2D纹理图像存储于主(外部)存储器40中。纹理图像的个别元素被称为纹素。

还参看图3A和图3B,分别展示常规3D图形管线和像素渲染级(整体以60和64表示)的实施例。3D图形管线60将在显示单元30上的整个3D表示任务划分成至少两(2)个管线级:顶点处理级62和像素渲染级64。在操作中,顶点处理级62可包括当前在或ES中实施的所有功能或功能的子集。

像素渲染级64包括光栅化、混合和纹理应用操作66和隐藏表面移除操作68。然而,像素渲染级64可包括由或ES界定的其它操作。像素渲染级64将来自顶点处理级62的关于3D对象的信息转换成可显示于显示单元30上的位图。像素渲染级64处理输入三角形组以产生3D图形图像的像素表示。在光栅化、混合和纹理应用操作66期间,纹理映射引擎66A执行纹理化操作。

参看图4,展示动态可配置纹理高速缓冲存储器44的大体框图。GPU 34的动态可配置纹理高速缓冲存储器44为动态可配置/可重配置的,以在单纹理模式100(当在选定应用程序中启用单纹理映射时)和多纹理模式200(当在选定应用程序中启用多纹理映射时)中的一者下操作。在图6A-6B中最佳看到在单纹理模式100下的动态可配置纹理高速缓冲存储器44的示意图。在单纹理模式100下的动态可配置纹理高速缓冲存储器44为n路组关联高速缓冲存储器。在示范性实施例中,n为偶数。在所说明的实施例中,n等于4。在示范性实施例中,4路组关联纹理高速缓冲存储器具有约4KB的大小以处置纹理查找,每一高速缓冲存储器线为128个位宽。在单纹理模式100下的动态可配置纹理高速缓冲存储器44经设计以支持高达每遍两个纹理。

出于说明的目的,每遍两个纹理意味着,对于每一像素来说,从两个不同纹理图同时将纹素映射于每一像素上,而未经历多遍。举例来说,如果高速缓冲存储器仅支持单纹理映射,则为存档多纹理映射效应,必须对每一像素执行多次单纹理映射。相应地,每遍多个纹理意味着,对于每一像素来说,从多个(不同)纹理图同时映射纹素,而未经历多遍。

现参看图5A,展示单纹理模式的批(整体表示为B)的框图。图形应用程序通常在批模式下发送绘制命令,其中批B中的所有像素(表示为PIXELB1、PIXELB2、...PIXELBX)共用同一上下文状态寄存器50(其中X等于所述批中像素的数目)。

在由纹理类型TT确定的单纹理模式下,所有像素PIXELB1、PIXELB2、...PIXELBX从单个纹理图TM获取纹素。所述纹理图TM为单纹理图。在两个纹理(多纹理模式)批中,像素PIXELB1、PIXELB2、...PIXELBX中的每一者从2个不同纹理图获取纹素(其中X等于所述批中像素的数目)。

在所述示范性实施例中,每一像素PIXELB1、PIXELB2、...PIXELBX产生所述像素的纹理地址和其它信息。所述像素的纹理地址具有对应标记和索引,分别表示为TAG_IN和INDEX[3:0]。分量[3:0]对应于寻址格式。此处,“3:0”为四(0,1,2,3)数位二进制地址的命名表示。因此,(示范性实施例的)索引具有24个不同地址。索引用于存取标记随机存取存储器(tagram)1020、1021、1022、1023(图6A)。标记随机存取存储器1020、1021、1022、1023的下标也对应于路。因此,下标0对应于way0、下标1对应于way1、下标2对应于way2,且下标3或(n-1)对应于way3或way(n-1)。

在图6A-6B中,展示在单纹理模式100下的动态可配置纹理高速缓冲存储器44的示意图。高速缓冲存储器的组关联为4路(n=4)。因此,存在四(4)个条目或高速缓冲存储器线供一个索引INDEX[3:0]选择。如在图6A中最佳看到,在单纹理模式100下的高速缓冲存储器44包括n个高速缓冲存储器区块,其中每一区块包括路标记随机存取存储器1020、1021、1022或1023和一路valid_bit指示符1040、1041、1042或1043。如在图6B中最佳看到,每一区块进一步包括一路数据随机存取存储器1200、1201、1202或1203。每一区块还表示完整的“高速缓冲存储器线”。

动态可配置纹理高速缓冲存储器44由n个“高速缓冲存储器线”组成。通过索引选择每一高速缓冲存储器线。高速缓冲存储器44是3D固线式管线与主(外部)存储器40之间的存储器层级的一级。当3D图形管线60将地址发送到主(外部)存储器40以读回纹素时,3D图形管线60首先检查数据(纹素)是否在动态可配置纹理高速缓冲存储器44内。将所述地址划分成:表示为INDEX[3:0]的索引,其用于选择高速缓冲存储器线;以及表示为TAG_IN的标记字段,其用于与高速缓冲存储器的标记字段的值进行比较。如果存在匹配,则其意味着内容在高速缓冲存储器44内,且具体来说,在具有所述匹配的高速缓冲存储器线内。

在典型高速缓冲存储器中,每一高速缓冲存储器线具有一有效位指示符。在所述示范性实施例中,有效位的值包括1)Valid_bit=“1”意味着有效内容存储于此高速缓冲存储器线中;以及2)Valid_bit=“0”意味着高速缓冲存储器线是空的。所述有效位由寄存器实施,且由重置信号初始化为“0”。

有效位指示符与每一相应路标记随机存取存储器1020、1021、1022和1023相关联。因此,way0标记随机存取存储器1020使way0 valid_bit指示符1040与其相关联。way1标记随机存取存储器1021使way1 valid_bit指示符1041与其相关联。way2标记随机存取存储器1022使way2 valid_bit指示符1042与其相关联。way3标记随机存取存储器1023使way3 valid_bit指示符1043与其相关联。valid_bit指示符指示进入高速缓冲存储器44中的给定条目含有有效数据。路valid_bit指示符1040、1041、1042和1043分别产生线L30、L31、L32和L33上的输出。

每一路标记随机存取存储器1020、1021、1022和1023接收三(3)个输入。线L2上的第一输入为用于批B中的相应像素的TAG_IN,以粗体展示。线L4上的第二输入为表示为INDEX[3:0]的索引,其展示为具有由两个点跟着的短划线的线。所述索引用于存取路标记随机存取存储器1020、1021、1022和1023。每一路标记随机存取存储器1020、1021、1022和1023的第三输入来自以点线展示的路更新解码器112。路更新解码器112从路选择器106接收线L10上的输入。

如将从下文的描述看到,线L4上的索引INDEX[3:0]选择高速缓冲存储器线的路标记随机存取存储器1020、1021、1022和1023中的一者,其接着输出在对应输出线L20、L21、L22或L23上的所存储标记值。

路选择器106包括路选择位108。将路选择位108的输出馈送到线L10以由路更新解码器112进行处理。还将路选择位108的输出馈送到累加器110,其将一(1)添加到路选择位108的输出。数字2(在标示为106的框中)表示两位信号。线L8上的输出环回到路选择位108。路更新解码器112输出线L12、L14、L16和L18上的控制位(展示为点线)以选择n路关联组中的一者。路更新解码器112接收线L10上的两位信号,且产生一位信号,以选择n个区块或路标记随机存取存储器1020、1021、1022和1023和/或图6B中所示的高速缓冲存储器线的路数据随机存取存储器1200、1201、1202和1203中的任一者。

当在高速缓冲存储器44中发生未命中时,所请求的数据应进入一个高速缓冲存储器线,且必须替换占据那个高速缓冲存储器线的数据。在n路关联高速缓冲存储器中,(n)个数据随机存取存储器1200、1201、1202和1203的选择用于放置所请求的数据。路选择器106将从n路中拾取待替换的高速缓冲存储器线。

路valid_bit指示符1040、1041、1042和1043的输出分别产生线L30、L31、L32和L33上的输出,其分别被发送到比较器1140、1141、1142和1143。另外,线L20、L21、L22和L23上来自路标记随机存取存储器1020、1021、1022和1023的输出分别被发送到比较器1140、1141、1142和1143。比较器1140、1141、1142和1143还接收从线L2输入的TAG_IN。

在线L20、L21、L22和L23上的分别来自标记随机存取存储器1020、1021、1022和1023的4(n=4)个可能标记内容与传入的像素标记TAG_IN之间执行由比较器1140、1141、1142和1143进行的比较。如果来自比较器1140、1141、1142和1143的四个比较中的一者产生匹配,则此匹配暗示高速缓冲存储器命中。因此,线L50上的来自操作数116的输出表示高速缓冲存储器命中。以实例的方式,将操作数116表示为“与”门。否则,如果无匹配,则线L50上的来自操作数116的输出表示高速缓冲存储器未命中。比较器1140、1141、1142和1143输出线L40、L41、L42和L43上的其相应比较的结果,所述结果被馈送到操作数门116的输入。操作数门116还接收线L6上的表示active_bit的输入。如果线L50上的来自操作数116的输出表示未命中,则所述输出为发送到获取控制器48的获取请求。获取控制器48接着经由总线或数据线DL通信以从主(外部)存储器40检索必需的纹理图数据。

然而,如果线L30、L31、L32、L33中的任一者上的Valid_bit为“0”,则不使用与那个Valid_bit相关联的比较。

特定参看图6B,当存在由高速缓冲存储器线或区块中的任一者进行的高速缓冲存储器命中时,分别在线L70、L71、L72或L73中的一者上从对应路数据随机存取存储器1200、1201、1202或1203读出所请求的纹理数据。将线L70、L71、L72或L73上的输出纹理数据发送到多路复用器122。在线L80上将来自多路复用器122的输出发送到纹理映射引擎66A。

线L10上的来自路选择器106的输出用于控制多路复用器122。每一路数据随机存取存储器1200、1201、1202或1203被填充有线L1上的来自主(外部)存储器40的对应纹理图数据。

线L6上的Active_bit特定用于3D图形管线60中。有时,像素不需要纹理查找。在此特定情况下,线L6上的有效位也被设置到“0”。因此,高速缓冲存储器44将不对此像素进行操作。

当纹理映射引擎66A处于多纹理模式下时,批B中的像素(表示为PIXELB1、PIXELB2、...PIXELBX)从多个不同纹理图TM获取纹素。

现参看图5B,展示在多纹理模式下的批的框图。在示范性实施例中,多纹理模式与两个纹理图有关。然而,可使用两个或两个以上纹理图。对于两个纹理批来说,像素PIXELB1、PIXELB2、...PIXELBX中的每一者从两(2)个不同纹理图获取纹素(其中X等于所述批中像素的数目)。每一像素PIXELB1、PIXELB2、...PIXELBX产生第一纹理地址字段0、第二纹理地址字段1和用于其它像素信息的字段。第一纹理地址字段0具有标记和索引,对于子高速缓冲存储器C0来说,其被表示为Tex0 TAG_IN和Tex0INDEX[3:0]。第二纹理地址字段1具有标记和索引,对于子高速缓冲存储器C1来说,其被表示为Tex1 TAG_IN和Tex1 INDEX[3:0]。索引Tex0 INDEX[3:0]用于存取子高速缓冲存储器C0的Tex0路标记随机存取存储器20200、20201(图7A)。索引Tex1 INDEX[3:0]用于存取子高速缓冲存储器C1的Tex1路标记随机存取存储器20210、20211(图7A)。

在图7A-7B中,展示在多纹理模式200下的动态可配置纹理高速缓冲存储器44的示意图。高速缓冲存储器的组关联为图6A-6B的4路(n=4),其被分裂或划分以产生两个2路组关联子高速缓冲存储器C0和C1。因此,存在由子高速缓冲存储器C0中的一个索引Tex 0 INDEX[3:0]选出的两个条目。同样,存在由子高速缓冲存储器C1中的一个索引Tex 1 INDEX[3:0]选出的两个条目。子高速缓冲存储器C0包括两个路,“way0”和“way1”。子高速缓冲存储器C0具有至少两个高速缓冲存储器区块,way0和way1。way0区块包括Tex0 way0标记随机存取存储器20200,且way1区块包括Tex0 way1标记随机存取存储器20201。每一区块way0和way1进一步包括way0 valid_bit指示符20400和way1 valid_bit指示符20401(其中下标的第一位表示纹理图且第二位表示路)。子高速缓冲存储器C1包括2路(“way0”和“way1”)。子高速缓冲存储器C1具有两个区块,way0区块和way1区块。way0区块包括Tex1 way0标记随机存取存储器20210,且way1区块具有Tex1 way1标记随机存取存储器20211。子高速缓冲存储器C1的way0区块进一步包括way0 valid_bit指示符20410,且way1区块具有way1 valid_bit指示符20411

valid_bit指示符指示进入子高速缓冲存储器C0或C1中的给定条目含有有效数据。way0 valid_bit指示符20400、20401分别产生线L300、L310上输出。way1 valid_bit指示符20410、20411分别产生线L301、L311上的输出。

子高速缓冲存储器C0的标记随机存取存储器20200、20201中的每一者接收三(3)个输入。第一输入为线L20上的用于批B中的相应像素的TEX0 TAG_IN,以粗体展示。在线L40上的第二输入为索引TEX0 INDEX[3:0],其展示为具有由两个点跟着的短划线的线。索引用于存取标记随机存取存储器20200、20201。到每一路标记随机存取存储器20200、20201的第三输入来自线L100上的路选择器2060

valid_bit指示符20400、20401的输出分别产生线L300、L310上的输出,所述输出分别被发送到比较器21400、21401。另外,线L200、L210上的来自子高速缓冲存储器C0的标记随机存取存储器20200、20201的输出分别被发送到比较器21400、21401。比较器21400、21401还接收TEX0 TAG_IN。

然而,如果线L300、L310、L301或L311中的任一者上的Valid_bit为“0”,则不使用与那个Valid_bit相关联的比较。此外,线L6上的Active_bit特定用于3D图形管线60中且以与上述方式相同的方式起作用。

在线L200、L210上的分别来自子高速缓冲存储器C0的2路标记随机存取存储器20200、20201的两个可能标记内容与传入的像素标记TEX0 TAG_IN之间执行由比较器21400、21401进行的比较。如果来自比较器21400、21401的两个比较中的一者产生匹配,则此匹配暗示子高速缓冲存储器命中。因此,线L500上的来自操作数2160的输出表示子高速缓冲存储器命中。以实例的方式,将操作数2160表示为“与”门。否则,线L500上的来自操作数门2160的输出表示高速缓冲存储器未命中。比较器21400、21401输出线L400、L410上的其相应比较的结果,所述结果被馈送到操作数门2160的输入。操作数门2160还接收线L6上的表示active_bit的输入。

子高速缓冲存储器C1的每一标记随机存取存储器20210、20211接收三(3)个输入。第一输入为线L21上的用于批B中的相应像素的TEX1 TAG_IN,以粗体展示。线L41上的第二输入为索引TEX1 INDEX[3:0],其展示为具有由两个点跟着的短划线的线。索引用于存取标记随机存取存储器20210、20211。每一标记随机存取存储器20210、20211的第三输入来自线L101上的路选择器2061

路valid_bit指示符20410、20411的输出分别产生线L301、L311上的输出,所述输出分别被发送到比较器21410、21411。另外,线L201、L211上的来自子高速缓冲存储器C1的标记随机存取存储器20210、20211的输出分别被发送到比较器21410、21411。比较器21410、21411也接收Tex1 TAG_IN。

在线L201、L211上的分别来自子高速缓冲存储器C1的2路标记随机存取存储器20210、20211的2个可能标记内容与传入的像素标记TEX1 TAG_IN之间执行由比较器21410、21411进行的比较。如果来自比较器21410、21411的两个比较中的一者产生匹配,则此匹配暗示子高速缓冲存储器命中。因此,线L501上的来自“与”门2161的输出表示子高速缓冲存储器命中。否则,线L501上的来自操作数门2161的输出表示子高速缓冲存储器未命中。比较器21410、21411输出线L401、L411上的其相应比较的结果,所述结果被馈送到操作数门2161的输入。操作数门2160还接收线L6上的表示active_bit的输入。

在最终级中,子高速缓冲存储器C0和子高速缓冲存储器C1的输出是多路复用器218的输入。多路复用器218对线L500和L501上的输出进行多路复用以形成线L60上的新的经多路复用的输出。线L60上的输出表示发送到获取控制器48的获取请求。所述经多路复用的输出一次发送一个获取请求。

特定参看图7B,当存在由子高速缓冲存储器C0或C1的高速缓冲存储器线或区块中的任一者进行的高速缓冲存储器命中时,分别在线L700、L710或L701、L711中的一者上从对应路数据随机存取存储器22000、22001或22010、22011读出所请求的纹理数据。将子高速缓冲存储器C0中的线L700、L710上的输出纹理数据发送到多路复用器2220。将子高速缓冲存储器C1中的线L701、L711上的输出纹理数据发送到多路复用器2221。将线L800和L801上的分别来自多路复用器2220和2221的输出当作多个纹理图发送到纹理映射引擎66A。

线L100上的来自路选择器2060的输出用于控制多路复用器2220。同样,线L101上的来自路选择器2061的输出用于控制多路复用器2221。每一路数据随机存取存储器2200、2201、1203被填充有线L1上的来自主(外部)存储器40的对应纹理图数据。表示为2100、2101的反相器使在反馈线L80和L81上发送的位反相。反馈线L80和L81经耦合以将经反相的位分别环回到路选择器2060、2061的Tex0路选择位2080和Tex1路选择位2081

上述实施例,动态可配置纹理高速缓冲存储器44可容易地配置以使用一个高速缓冲存储器来优化单纹理模式100和多纹理模式200中的一者下的纹理映射引擎66A。此外,一般不出现冲突性未命中。此外,两个(M=2)或两个以上纹理图TM将不彼此对冲和/或产生冗余存储器业务。

描述动态可配置纹理高速缓冲存储器44(例如,可重配置的n路组关联纹理高速缓冲存储器)的每一可能配置受到抑制。然而,高速缓冲存储器44当在多纹理模式200下时应经配置以具有专用于每一纹理图的n/M组关联纹理子高速缓冲存储器。n和M为大于一(1)的整数,且n可被M除尽。M的值可为纹理图的数目。在所述实例中,M为提供两(2)个子高速缓冲存储器的二(2),每一子高速缓冲存储器专用于所述两个纹理图中的相应一者。

在一个或一个以上示范性实施例中,可以硬件、软件、固件或其任一组合来实施所描述的功能。如果以软件来实施,则所述功能可作为一个或一个以上指令或代码而存储于计算机可读媒体上或经由计算机可读媒体传输。计算机可读媒体包括计算机存储媒体和通信媒体,通信媒体包括促进将计算机程序从一个地方转移到另一地方的任何媒体。存储媒体可为可由计算机存取的任何可用媒体。以实例而不限制的方式,此计算机可读媒体可包含RAM、ROM、EEPROM、CD-ROM或其它光盘存储装置、磁盘存储装置或其它磁性存储装置,或可用于载运或存储呈指令或数据结构的形式的所要程序代码和可通过计算机存取的任何其它媒体。而且,将任何连接合适地称作计算机可读媒体。举例来说,如果使用同轴电缆、光纤电缆、双绞线、数字订户线(DSL)或例如红外、无线电和微波等无线技术从网站、服务器,或其它远程源传输软件,则所述同轴电缆、光纤电缆、双绞线、DSL,或例如红外、无线电和微波等无线技术包括于媒体的定义中。如本文所使用,磁盘和光盘包括压缩光盘(CD)、激光光盘、光盘、数字通用光盘(DVD)、软盘和蓝光光盘,其中磁盘通常以磁性方式再现数据,而光盘使用激光以光学方式再现数据。上述各物的组合也应包括于计算机可读媒体的范围内。

提供对所揭示实施例的先前描述以使所属领域的技术人员能够制造或使用本发明。所属领域的技术人员将容易明白对这些实施例的各种修改,且在未脱离本发明的精神或范围的情况下可将本文中所界定的一般原理应用于其它实施例。因此,本发明不意欲限于本文中所示的实施例,而是将赋予本发明与本文中所揭示的原理和新颖特征一致的最广泛范围。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号