CN101681502A - 用于三维图形电路的像素高速媛冲存储器 - Google Patents

用于三维图形电路的像素高速媛冲存储器 Download PDF

Info

Publication number
CN101681502A
CN101681502A CN200780041387A CN200780041387A CN101681502A CN 101681502 A CN101681502 A CN 101681502A CN 200780041387 A CN200780041387 A CN 200780041387A CN 200780041387 A CN200780041387 A CN 200780041387A CN 101681502 A CN101681502 A CN 101681502A
Authority
CN
China
Prior art keywords
memory
image cell
value
device memory
graphics
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN200780041387A
Other languages
English (en)
Other versions
CN101681502B (zh
Inventor
威廉·托尔泽弗斯基
于春
阿列克谢·V·布尔德
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Qualcomm Inc
Original Assignee
Qualcomm Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Qualcomm Inc filed Critical Qualcomm Inc
Publication of CN101681502A publication Critical patent/CN101681502A/zh
Application granted granted Critical
Publication of CN101681502B publication Critical patent/CN101681502B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T17/00Three dimensional [3D] modelling, e.g. data description of 3D objects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T1/00General purpose image data processing
    • G06T1/60Memory management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/0802Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
    • G06F12/0875Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches with dedicated cache, e.g. instruction or stack
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/12Replacement control
    • G06F12/121Replacement control using replacement algorithms
    • G06F12/126Replacement control using replacement algorithms with special data handling, e.g. priority of data or instructions, handling errors or pinning
    • G06F12/127Replacement control using replacement algorithms with special data handling, e.g. priority of data or instructions, handling errors or pinning using additional replacement algorithms
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T1/00General purpose image data processing

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Graphics (AREA)
  • Geometry (AREA)
  • Software Systems (AREA)
  • Image Generation (AREA)
  • Image Processing (AREA)
  • Memory System Of A Hierarchy Structure (AREA)
  • Testing, Inspecting, Measuring Of Stereoscopic Televisions And Televisions (AREA)

Abstract

本发明提供设备,其包括装置存储器、硬件实体、子图像单元值高速缓冲存储器和高速缓冲存储器写入操作器。所述硬件实体中的至少一些硬件实体执行涉及存取和使用所述装置存储器的动作。所述硬件实体包括3D图形电路以处理来自图元对象的3D图像以准备显示。所述高速缓冲存储器与所述装置存储器分离,且经提供以保持包括经缓冲子图像单元值的数据。所述高速缓冲存储器连接到所述3D图形电路,使得所述3D图形电路的像素处理部分存取所述高速缓冲存储器中的所述经缓冲子图像单元值,而不是所述像素处理部分直接存取所述装置存储器中的所述子图像单元值。在优先级方案的指导下,所述写入操作器将所述经缓冲子图像单元值写入到所述装置存储器。所述优先级方案将毗连一个或一个以上图元对象的边界单元值保存在所述高速缓冲存储器中。

Description

用于三维图形电路的像素高速缓冲存储器
相关申请案
本专利申请案主张2006年11月9日申请的标题为“用于三维图形电路的像素高速缓冲存储器(PIXEL CACHE FOR 3D GRAPHICS CIRCUITRY)”的第60/865,011号临时申请案的优先权,所述临时申请案转让给本受让人,且其全文在此明确以引用的方式并入本文中。
技术领域
本发明涉及具有3D图形能力的嵌入式***。在其它方面中,本发明涉及用于所述具有3D图形能力的嵌入式***的图形管线、移动电话和/或存储器结构。
背景技术
嵌入式***(例如)具有有限存储器资源。特定嵌入式***可具有主存储器和***总线,所述两者均由不同***硬件实体共用,所述***硬件实体包括3D图形芯片。
同时,嵌入式***3D图形芯片可能经由***总线获取主存储器的大部分带宽。存储器带宽需求可导致存储器存取瓶颈,其可不利地影响3D图形芯片以及使用同一主存储器和***总线的其它硬件实体的操作。
发明内容
本发明提供设备,其包含装置存储器、连接到所述装置存储器的硬件实体、子图像单元值高速缓冲存储器和高速缓冲存储器写入操作器。所述硬件实体中的至少一些硬件实体经提供以执行涉及存取和使用所述装置存储器的动作。所述硬件实体包括3D图形电路。所述高速缓冲存储器与所述装置存储器分离,且经提供以保持包括经缓冲子图像单元值的数据。所述高速缓冲存储器连接到所述3D图形电路以使得所述3D图形实体的像素处理部分存取所述高速缓冲存储器中的所述经缓冲子图像单元值,而不是所述像素处理部分直接存取所述装置存储器中的所述子图像单元值。根据一优先级方案,所述高速缓冲存储器写入操作器将所述经缓冲子图像单元值写入到所述装置存储器。所述优先级方案将边界单元值保存在所述高速缓冲存储器中。
附图说明
以下参考附图在“具体实施方式”中进一步描述本发明的实施例,附图中,相同参考数字在所有若干图式的视图中表示类似部件,且附图中:
图1为具有像素高速缓冲存储器的嵌入式装置的一实施例的方框图;
图2为根据一实施例的像素高速缓冲存储器过程的流程图;以及
图3为用于像素处理级的高速缓冲架构的一实例的方框图。
具体实施方式
为促进理解以下详细描述,将提供本文中所使用的某些术语的定义。图元可为(例如)点、线或三角形。可以扇形、条带或网眼的群组再现三角形。对象可为一个或一个以上图元。像素包括关于屏幕上的位置的信息以及色彩信息和(任选地)额外信息(例如,深度)。色彩信息可(例如)呈RGB三原色的形式。屏幕栅格单元为可由特定像素占据的屏幕区域。子图像单元为对应于图像的一部分(可对应于所再现屏幕上的位置)的单元。栅格单元为以栅格形式布置的单元。屏幕栅格值为对应于屏幕栅格单元的值。
图1为嵌入式装置10的一实例的方框图,在所说明的实施例中,所述嵌入式装置10包含无线移动通信装置。所说明的嵌入式装置10包括***总线24、装置存储器(在所说明的***中为主存储器20)和3D图形电路12。装置存储器经由***总线24连接到嵌入式装置10的其它部分,且可由嵌入式装置10的所述其它部分存取。提供也连接到***总线24的硬件实体26。硬件实体26中的至少一些硬件实体执行涉及存取和使用主存储器20的动作。硬件实体26可包含(例如)处理器、一个或一个以上ASIC(专用集成电路)和/或其它硬件。3D图形电路12连接到***总线24。3D图形电路12可为较大整合***(例如,芯片上***(SoC))的核心,或3D图形电路12可包括3D图形芯片(例如,3D图形加速器芯片)。3D图形电路12包括图形管线,其可包括(例如)像素数据高速缓冲存储器14、一个或一个以上像素处理级16和先前对象保存机构18。
像素数据高速缓冲存储器14可呈一个或多个存储器、缓冲器或高速缓冲存储器的形式,且像素数据高速缓冲存储器14保持用于由3D图形电路12的像素处理级16处理的每个像素中的数据。所说明的高速缓冲存储器14提供对像素相关数据(例如,来自主存储器20内所提供的一个或一个以上像素数据缓冲器22的像素信息)的本地存储。所述一个或一个以上像素数据缓冲器22可包含(例如)一个或一个以上色彩缓冲器、Z缓冲器和/或模板缓冲器。那些缓冲器可单独存储用于特定3D图形图像的可寻址像素。每一像素可(例如)使用X(水平位置)和Y(垂直位置)屏幕位置索引整数值来索引。在所说明的***中,像素数据缓冲器22包括每一像素的RGB值和阿尔法(alpha)值。在所说明的实施例中,还提供包括每一像素的深度值(Z)的Z缓冲器。
可提供一个或一个以上像素数据高速缓冲存储器14,其可对应于各自像素处理级16。每一像素数据高速缓冲存储器14包括:高速缓冲存储器的可用部分,可从主存储器20将新像素数据读取到所述可用部分中;以及保存部分,其不可用于从主存储器20将像素数据读取到高速缓冲存储器中。提供先前对象保存机构18以致使对来自己由像素处理级16中的一个特定级16处理的先前对象的像素数据的保存。
3D图形电路12可包括许多像素处理级16,例如,混合级(未图示)、纹理化级(未图示)、隐藏表面移除(HSR)级(未图示)和模板级(未图示)。
所说明的像素数据高速缓冲存储器14可执行如图2中的流程图所展示的过程。对每一像素或像素群组30来说,由像素高速缓冲存储器执行许多动作。如图2中所示,那些动作包括:在动作32中,确定由给定像素处理级请求的数据是否在高速缓冲存储器中。当数据在高速缓冲存储器中时,过程进行到动作36,在所述点处处理数据。当数据不在高速缓冲存储器中时,过程从动作32进行到动作34,在所述点处经由***总线24从主存储器20中的像素数据缓冲器22将数据读取到像素高速缓冲存储器14中。一旦在动作36处处理数据,在动作38处可将所述数据写入到主存储器。可立即或在稍后适当时刻将经处理的数据写出到主存储器20。在所说明的实施例中,在处理下一对象时可能将不需要的一些像素数据将比其它数据(即,毗连正在处理的当前对象和一个或一个以上其它对象的边界像素数据)更早地被写入到主存储器。由图2中展示的动作40指示此对边界像素数据的保存。
为知道像素数据何时毗连一个或一个以上对象,(例如)将像素数据分类(例如,在光栅化级处)为两个群组,包括毗连至少一个对象的边界像素值(例如,毗连高速缓冲存储器单位48)和非边界像素值(例如,内部高速缓冲存储器单位46)。
通过保存边界像素值(例如,毗连每个所说明的实施例的一个或一个以上对象),当处理另一对象(例如,另一对象44)的像素数据时,边界像素值将已在高速缓冲存储器内,所述边界像素值在处理当前对象42(现在的前一对象)时已被读取到高速缓冲存储器中。
在所说明的实施例中,对象包括三角形。
可将像素值分组为高速缓冲存储器单位,每一高速缓冲存储器单位包括一个或一个以上像素。在所说明的实施例中,高速缓冲存储器单位是一组像素,例如,如图2中所示的像素阵列50。高速缓冲存储器单位可为(例如)多个像素值的区块、瓦片或行。
虽然特定实施例涉及处理像素值,但所揭示特征的变化形式可包括(例如)处理对应于子图像单元的子图像单元值。
毗连的高速缓冲存储器单位48和内部高速缓冲存储器单位46可在光栅化级(即,将图元或对象(在此情况下为三角形)转换为像素数据的点)进行特征化。此可(例如)通过将一个或少量位添加到每一像素的数据来完成,以指示所述像素数据对应于边界高速缓冲存储器单位还是内部高速缓冲存储器单位。另外,应注意,内部高速缓冲存储器单位可更应进行压缩。每一像素的像素数据可进一步包括用于指示所述像素是否被压缩的位。像素数据可包括(例如)色彩信息和阿尔法信息,或仅深度(Z)值,或所述信息的组合。由图2中展示的过程所处理的数据可为整个对象的数据,或为对象的一部分的数据。
提供所说明的3D图形电路12,而以依照图元对象(在所说明的实施例中为三角形)所界定的块为单位来处理(以显示)3D图像。所说明的高速缓冲存储器14包括经缓冲子图像单元值(在此实施例中为像素值),且连接到3D图形电路12以使得3D图形电路12的像素处理部分(在所说明的实施例中为级16)存取高速缓冲存储器中的经缓冲单元值,而并不是那些像素处理部分直接存取装置存储器(主存储器20)中的那些值。提供高速缓冲存储器写入操作器(例如,参看动作38)以将经缓冲子图像单元值写入到装置存储器。在实例实施例中,将缓冲值按单位写入到装置存储器,每一单位包括整数多个经缓冲子图像单元值。此单位可被称为高速缓冲存储器单位。
高速缓冲存储器可进一步包括高速缓冲存储器未命中读取操作器(例如,参看动作34)以将数据从装置存储器读出到高速缓冲存储器。为促进此读取操作,将高速缓冲存储器中的某些存储器位置指定为可被自由覆写,例如,通过使用一位来指示像素数据是脏的还是有效的。当数据是脏的时,其并不与装置存储器中的对应像素数据一致,且在所述数据可被覆写之前其需要被写入到装置存储器。当像素数据是干净的或无效时,所述像素数据对应于装置存储器中的数据,且因此可在读取操作中被覆写。
写入到装置存储器是根据优先级方案而进行的。优先级方案(至少)将毗连一个以上图元对象的那些值保存在高速缓冲存储器单元中。毗连一个以上图元对象的那些单元值可(例如)在多个图元对象之间的边界范围内且/或在与边界相交的单位内,每一单位包括整数多个经缓冲子图像单元值。
可提供最近最少使用的(LRU)替换35作为动作34的一部分,以致使在高速缓冲存储器未命中读取后需要新数据时,根据LRU替换政策从装置存储器读取单元值。此表示,在一个实施例中,所保存的边界单元数据在高速缓冲存储器内所有非边界数据都被替换之后才被替换。另外,在所说明的实施例中,在边界单元值的脏数据被写回之前,非边界单元值的脏数据先被写回。举例来说,在高速缓冲存储器未命中后,非边界单元值的脏数据被写回而不等待读取,同时在高速缓冲存储器中用于所请求的高速缓冲存储器未命中边界单元值的空间不可用后,边界单元值的脏数据被写回。
图3说明用于给定像素处理级的高速缓冲架构60的一实例。所说明的架构60包括给定像素处理级62,其可例如为隐藏表面移除级、混合级和/或模板操作级。所说明的给定像素处理级62连接到对应的缓冲器高速缓冲存储器64。因此,所说明的实施例可包括用于对像素数据进行操作或处理的每一像素处理级的各自对应缓冲器高速缓冲存储器。对应的缓冲器高速缓冲存储器64连接到用于边界单位的高速缓冲存储器66和用于内部单位的缓冲器68。在缓冲器68与***总线之间提供压缩/解压缩单元70,所述***总线连接到装置存储器(在图3中未图示)。如图3中所示,在由缓冲器68检索内部单位的同时,由高速缓冲存储器66从装置存储器检索边界单位。在将内部单位存储在缓冲器68中之前,那些单位在其含有压缩的像素数据时由压缩/解压缩单元70解压缩。在此类数据被写回到装置存储器之前,在适当时由压缩/解压缩单元70将其再次压缩。在所说明的实施例中,高速缓冲存储器66是合适的高速缓冲存储器,而缓冲器68为双(或多)缓冲器。高速缓冲存储器66的大小大约为多个高速缓冲存储器单位,而缓冲器68的大小大体上较小,例如在所说明的实施例中为数个高速缓冲存储器单位。
在所说明的实施例中,高速缓冲存储器66可为(例如)组关联式高速缓冲存储器,其提供比直接映像式高速缓冲存储器的操作优越的操作,以用于存储毗连的高速缓冲存储器单位的目的。
对应的缓冲器高速缓冲存储器64是相关联的高速缓冲存储器,其使用用于写入到高速缓冲存储器66或缓冲器68的直写方法从高速缓冲存储器66和缓冲器68中的每一者接收数据,高速缓冲存储器66或缓冲器68接着可执行对装置存储器的写入操作,如上文关于图2所描述。
可由通用计算机和/或由专用处理计算机来执行由本文的图中所展示的元件中的每一元件所执行的处理。所述处理可由单一平台或由分布式处理平台,或由若干单独的平台来执行。另外,所述处理可以专用硬件的形式或以由通用计算机执行的软件的形式来实施。在所述处理中处置的或由于所述处理而产生的任何数据均可存储在任何类型的存储器中。以实例的方式,所述数据可存储在临时存储器中,例如,存储在给定计算机***或子***的RAM中。另外,或在替代方案中,所述数据可存储在长期存储装置中,例如,磁盘、可重写光盘等。为了本发明的目的,机器可读取媒体可包含任何形式的数据存储机构,包括所述存储器技术以及所述结构和所述数据的硬件或电路表示。可在任何机器可读取媒体和/或在集成电路中实施过程。
最初提出且可修改的权利要求书涵盖本文中所揭示的实施例和教示的变化形式、替代方案、修改、改进、等效物和实质性等效物,包括那些目前未预见或未了解的实施例,以及例如可源自申请人/专利权所有者的实施例和其它实施例。

Claims (59)

1.一种设备,其包含:
装置存储器和连接到所述装置存储器的硬件实体,所述硬件实体中的至少一些硬件实体执行涉及存取和使用所述装置存储器的动作,且所述硬件实体包括3D图形电路以处理来自图元对象的3D图像以准备显示;
子图像单元值高速缓冲存储器,其与所述装置存储器分离以保持包括经缓冲子图像单元值的数据,所述高速缓冲存储器连接到所述3D图形电路,使得所述3D图形电路的像素处理部分存取所述高速缓冲存储器中的所述经缓冲子图像单元值,而不是所述像素处理部分直接存取所述装置存储器中的所述子图像单元值;以及
高速缓冲存储器写入操作器,其根据优先级方案将所述经缓冲子图像单元值写入到所述装置存储器,所述优先级方案将毗连至少一个图元对象的边界单元值保存在所述高速缓冲存储器中。
2.根据权利要求1所述的设备,其中所述图元对象包括三角形。
3.根据权利要求2所述的设备,其中所述3D图形电路包括3D图形芯片,所述3D图形芯片包括3D图形管线。
4.根据权利要求3所述的设备,其中所述子图像单元值包括像素的色彩值。
5.根据权利要求3所述的设备,其中所述子图像单元值包括深度(Z)值。
6.根据权利要求1所述的设备,其中所述子图像单元值包括像素的色彩值。
7.根据权利要求1所述的设备,其中所述子图像单元值包括深度(Z)值。
8.根据权利要求1所述的设备,其中所述子图像单元包括栅格单元。
9.根据权利要求1所述的设备,其中所述经缓冲子图像单元值由所述写入操作器按单位写入到所述装置存储器,每一单位包括整数多个所述经缓冲子图像单元值。
10.根据权利要求1所述的设备,其进一步包括指定机构,以将所述高速缓冲存储器的存储器位置指定为在将数据从所述装置存储器读取到所述子图像单元值高速缓冲存储器后可被自由覆写。
11.根据权利要求1所述的设备,其进一步包含高速缓冲存储器未命中读取操作器,所述操作器包括最近最少使用(LRU)替换部分,以在给定像素处理部分在高速缓冲存储器未命中读取后需要新数据时根据LRU替换政策从所述装置存储器读取单元值。
12.根据权利要求11所述的设备,其中所述替换政策致使在替换边界单元值的数据之前替换非边界单元值的数据。
13.根据权利要求12所述的设备,其中所述高速缓冲存储器写入操作器包括写入机构,以在高速缓冲存储器未命中后将非边界单元值的脏数据写入到所述装置存储器而不等待来自所述装置存储器的读取,且在所述高速缓冲存储器中用于所请求的高速缓冲存储器未命中边界单元值的空间不可用后,将边界单元值的脏数据写入到所述装置存储器。
14.根据权利要求1所述的设备,其中毗连一个以上图元对象的所述边界单元值包括在多个图元对象之间的边界的一范围内的单元值。
15.根据权利要求1所述的设备,其中毗连一个以上图元对象的所述边界单元值包括在与边界相交的单位内的单元值,每一单位包括整数多个所述经缓冲子图像单元值。
16.根据权利要求1所述的设备,其中所述设备包括嵌入式装置。
17.一种集成电路,其包含:
半导体衬底;
在所述衬底上的装置存储器和连接到所述装置存储器的硬件实体,所述硬件实体中的至少一些硬件实体执行涉及存取和使用所述装置存储器的动作,且所述硬件实体包括3D图形电路以处理来自图元对象的3D图像以准备显示;
在所述半导体衬底上的子图像单元值高速缓冲存储器,其与所述装置存储器分离以保持包括经缓冲子图像单元值的数据,所述高速缓冲存储器连接到所述3D图形电路,使得所述3D图形电路的像素处理部分存取所述高速缓冲存储器中的所述经缓冲子图像单元值,而不是所述像素处理部分直接存取所述装置存储器中的所述子图像单元值;以及
在所述半导体衬底上的高速缓冲存储器写入操作器,其根据优先级方案将所述经缓冲子图像单元值写入到所述装置存储器,所述优先级方案将毗连至少一个图元对象的边界单元值保存在所述高速缓冲存储器中。
18.根据权利要求17所述的集成电路,其中所述图元对象包括三角形。
19.根据权利要求18所述的集成电路,其中所述3D图形电路包括3D图形芯片,所述3D图形芯片包括3D图形管线。
20.根据权利要求17所述的集成电路,其中所述子图像单元值包括像素。
21.根据权利要求17所述的集成电路,其中所述子图像单元值包括深度(Z)值。
22.根据权利要求17所述的集成电路,其中所述子图像包括栅格。
23.根据权利要求18所述的集成电路,其中所述经缓冲子图像单元值由所述写入操作器按单位写入到所述装置存储器,每一单位包括整数多个所述经缓冲子图像单元值。
24.根据权利要求17所述的集成电路,其进一步包括指定机构,以将所述高速缓冲存储器的存储器位置指定为在将数据从所述装置存储器读取到所述高速缓冲存储器后可被自由覆写。
25.根据权利要求17所述的集成电路,其进一步包含高速缓冲存储器未命中读取操作器,所述操作器包括最近最少使用(LRU)替换部分,以在给定像素处理部分在高速缓冲存储器未命中读取后需要新数据时根据LRU替换政策从所述装置存储器读取单元值。
26.根据权利要求25所述的集成电路,其中所述替换政策致使在替换边界单元值的数据之前替换非边界单元值的数据。
27.根据权利要求26所述的集成电路,其中所述高速缓冲存储器写入操作器包括写入机构,以在高速缓冲存储器未命中后将非边界单元值的脏数据写回到所述装置存储器而不等待来自所述装置存储器的读取,且在所述高速缓冲存储器中用于所请求的高速缓冲存储器未命中边界单元值的空间不可用后将边界单元值的脏数据写入到所述装置存储器。
28.一种方法,其包含:
3D图形电路的像素处理部分存取与装置存储器分离的高速缓冲存储器中的经缓冲子图像单元值,而不是所述像素处理部分直接存取所述装置存储器中的所述子图像单元值;以及
根据优先级方案将所述经缓冲子图像单元值写入到所述装置存储器,所述优先级方案将毗连至少一个图元对象的边界单元值保存在所述高速缓冲存储器中。
29.根据权利要求28所述的方法,其中所述图元对象包括三角形。
30.根据权利要求29所述的方法,其中所述3D图形电路包括3D图形芯片,所述3D图形芯片包括3D图形管线。
31.根据权利要求28所述的方法,其中所述子图像单元值包括像素。
32.根据权利要求28所述的方法,其中所述子图像单元值包括深度(Z)值。
33.根据权利要求28所述的方法,其中所述子图像包括栅格。
34.根据权利要求29所述的方法,其中将所述经缓冲子图像单元值按单位写入到所述装置存储器,每一单位包括整数多个所述经缓冲子图像单元值。
35.根据权利要求28所述的方法,其进一步包含将所述高速缓冲存储器的存储器位置指定为在将数据从所述装置存储器读取到所述高速缓冲存储器后可被自由覆写。
36.根据权利要求28所述的方法,其进一步包含在给定像素处理部分在高速缓冲存储器未命中读取后需要新数据时根据LRU替换政策从所述装置存储器读取单元值。
37.根据权利要求36所述的方法,其中所述替换政策致使在替换边界单元值的数据之前替换非边界单元值的数据。
38.根据权利要求37所述的方法,其中在高速缓冲存储器未命中后将非边界单元值的脏数据写入到所述装置存储器而不等待来自所述装置存储器的读取,且在所述高速缓冲存储器中用于所请求的高速缓冲存储器未命中边界单元值的空间不可用后将边界单元值的脏数据写入到所述装置存储器。
39.一种设备,其包含:
用于针对3D图形电路中的像素处理存取与装置存储器分离的高速缓冲存储器中的经缓冲子图像单元值而并不是直接存取所述装置存储器中的所述子图像单元值的装置;以及
用于根据优先级方案将所述经缓冲子图像单元值写入到所述装置存储器的装置,所述优先级方案将毗连至少一个图元对象的边界单元值保存在所述高速缓冲存储器中。
40.根据权利要求39所述的设备,其中所述图元对象包括三角形。
41.根据权利要求40所述的设备,其中所述3D图形电路包括3D图形芯片,所述3D图形芯片包括3D图形管线。
42.根据权利要求39所述的设备,其中所述子图像单元值包括像素。
43.根据权利要求39所述的设备,其中所述子图像单元值包括深度(Z)值。
44.根据权利要求39所述的设备,其中所述子图像包括栅格。
45.根据权利要求40所述的设备,其中所述经缓冲子图像单元值按单位被写入到所述装置存储器,每一单位包括整数多个所述经缓冲子图像单元值。
46.根据权利要求39所述的设备,其进一步包括用于将所述高速缓冲存储器的存储器位置指定为在将数据从所述装置存储器读取到所述高速缓冲存储器后可被自由覆写的装置。
47.根据权利要求39所述的设备,其进一步包含用于在高速缓冲存储器未命中读取后需要新数据时根据LRU替换政策从所述装置存储器读取单元值的装置。
48.根据权利要求47所述的设备,其中所述替换政策致使在替换边界单元值的数据之前替换非边界单元值的数据。
49.根据权利要求48所述的设备,其中在高速缓冲存储器未命中后非边界单元值的脏数据被写入到所述装置存储器而不等待来自所述装置存储器的读取,且在所述高速缓冲存储器中用于所请求的高速缓冲存储器未命中边界单元值的空间不可用后边界单元值的脏数据被写入到装置存储器。
50.一种编码有数据的机器可读取媒体,所述数据与机器互操作以致使:
3D图形电路的像素处理部分存取与装置存储器分离的高速缓冲存储器中的经缓冲子图像单元值,而不是所述像素处理部分直接存取所述装置存储器中的所述子图像单元值;以及
根据优先级方案将所述经缓冲子图像单元值写入到所述装置存储器,所述优先级方案将毗连至少一个图元对象的边界单元值保存在所述高速缓冲存储器中。
51.根据权利要求50所述的机器可读取媒体,其中所述图元对象包括三角形。
52.根据权利要求51所述的机器可读取媒体,其中所述3D图形电路包括3D图形芯片,所述3D图形芯片包括3D图形管线。
53.根据权利要求50所述的机器可读取媒体,其中所述子图像单元值包括像素。
54.根据权利要求50所述的机器可读取媒体,其中所述子图像单元值包括深度(Z)值。
55.根据权利要求50所述的机器可读取媒体,其中所述子图像包括栅格。
56.根据权利要求51所述的机器可读取媒体,其中所述经缓冲子图像单元值按单位被写入到所述装置存储器,每一单位包括整数多个所述经缓冲子图像单元值。
57.根据权利要求50所述的机器可读取媒体,所述数据可与机器互操作以将所述高速缓冲存储器的存储器位置指定为在将数据从所述装置存储器读取到所述高速缓冲存储器后可被自由覆写。
58.根据权利要求50所述的机器可读取媒体,所述数据可与机器互操作以在给定像素处理部分在高速缓冲存储器未命中读取后需要新数据时根据LRU替换政策从所述装置存储器读取单元值。
59.根据权利要求58所述的机器可读取媒体,其中所述替换政策致使在替换边界单元值的数据之前替换非边界单元值的数据。
CN2007800413873A 2006-11-09 2007-11-08 用于三维图形电路的像素高速缓冲存储器 Expired - Fee Related CN101681502B (zh)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US86501106P 2006-11-09 2006-11-09
US60/865,011 2006-11-09
US11/621,052 2007-01-08
US11/621,052 US7737985B2 (en) 2006-11-09 2007-01-08 Pixel cache for 3D graphics circuitry
PCT/US2007/084171 WO2008060961A2 (en) 2006-11-09 2007-11-08 Pixel cache for 3d graphics circuitry

Publications (2)

Publication Number Publication Date
CN101681502A true CN101681502A (zh) 2010-03-24
CN101681502B CN101681502B (zh) 2012-11-14

Family

ID=39368781

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2007800413873A Expired - Fee Related CN101681502B (zh) 2006-11-09 2007-11-08 用于三维图形电路的像素高速缓冲存储器

Country Status (8)

Country Link
US (1) US7737985B2 (zh)
EP (1) EP2118846A2 (zh)
JP (1) JP4880759B2 (zh)
KR (1) KR101100046B1 (zh)
CN (1) CN101681502B (zh)
CA (1) CA2667736A1 (zh)
TW (1) TW200832278A (zh)
WO (1) WO2008060961A2 (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103971327A (zh) * 2013-01-24 2014-08-06 三星电子株式会社 像素高速缓存、其操作方法和包括像素高速缓存的图像处理装置
CN104516825A (zh) * 2013-09-30 2015-04-15 三星电子株式会社 高速缓冲存储器***及其操作方法
CN109214977A (zh) * 2017-07-05 2019-01-15 三星电子株式会社 图像处理装置及其控制方法

Families Citing this family (30)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20130222422A1 (en) * 2012-02-29 2013-08-29 Mediatek Inc. Data buffering apparatus capable of alternately transmitting stored partial data of input images merged in one merged image to image/video processing device and related data buffering method
US9245491B2 (en) * 2012-12-13 2016-01-26 Texas Instruments Incorporated First de-compressing first compressing schemes for pixels from/to bus interface
US9336561B2 (en) * 2012-12-19 2016-05-10 Intel Corporation Color buffer caching
US11818401B2 (en) 2017-09-14 2023-11-14 Apple Inc. Point cloud geometry compression using octrees and binary arithmetic encoding with adaptive look-up tables
US10897269B2 (en) 2017-09-14 2021-01-19 Apple Inc. Hierarchical point cloud compression
US10861196B2 (en) 2017-09-14 2020-12-08 Apple Inc. Point cloud compression
US10805646B2 (en) 2018-06-22 2020-10-13 Apple Inc. Point cloud geometry compression using octrees and binary arithmetic encoding with adaptive look-up tables
US11113845B2 (en) 2017-09-18 2021-09-07 Apple Inc. Point cloud compression using non-cubic projections and masks
US10909725B2 (en) 2017-09-18 2021-02-02 Apple Inc. Point cloud compression
US10607373B2 (en) 2017-11-22 2020-03-31 Apple Inc. Point cloud compression with closed-loop color conversion
US11010928B2 (en) 2018-04-10 2021-05-18 Apple Inc. Adaptive distance based point cloud compression
US10909727B2 (en) 2018-04-10 2021-02-02 Apple Inc. Hierarchical point cloud compression with smoothing
US10909726B2 (en) 2018-04-10 2021-02-02 Apple Inc. Point cloud compression
US10939129B2 (en) 2018-04-10 2021-03-02 Apple Inc. Point cloud compression
US11017566B1 (en) 2018-07-02 2021-05-25 Apple Inc. Point cloud compression with adaptive filtering
US11202098B2 (en) 2018-07-05 2021-12-14 Apple Inc. Point cloud compression with multi-resolution video encoding
US11012713B2 (en) 2018-07-12 2021-05-18 Apple Inc. Bit stream structure for compressed point cloud data
US11676371B2 (en) 2018-08-17 2023-06-13 Fotonation Limited Apparatus for processing a neural network
US11367224B2 (en) 2018-10-02 2022-06-21 Apple Inc. Occupancy map block-to-patch information compression
US11057564B2 (en) 2019-03-28 2021-07-06 Apple Inc. Multiple layer flexure for supporting a moving image sensor
US11711544B2 (en) 2019-07-02 2023-07-25 Apple Inc. Point cloud compression with supplemental information messages
US11627314B2 (en) 2019-09-27 2023-04-11 Apple Inc. Video-based point cloud compression with non-normative smoothing
US11562507B2 (en) 2019-09-27 2023-01-24 Apple Inc. Point cloud compression using video encoding with time consistent patches
US11538196B2 (en) 2019-10-02 2022-12-27 Apple Inc. Predictive coding for point cloud compression
US11895307B2 (en) 2019-10-04 2024-02-06 Apple Inc. Block-based predictive coding for point cloud compression
US11798196B2 (en) 2020-01-08 2023-10-24 Apple Inc. Video-based point cloud compression with predicted patches
US11475605B2 (en) 2020-01-09 2022-10-18 Apple Inc. Geometry encoding of duplicate points
US11615557B2 (en) 2020-06-24 2023-03-28 Apple Inc. Point cloud compression using octrees with slicing
US11620768B2 (en) 2020-06-24 2023-04-04 Apple Inc. Point cloud geometry compression using octrees with multiple scan orders
US11948338B1 (en) 2021-03-29 2024-04-02 Apple Inc. 3D volumetric content encoding using 2D videos and simplified 3D meshes

Family Cites Families (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5046023A (en) * 1987-10-06 1991-09-03 Hitachi, Ltd. Graphic processing system having bus connection control capable of high-speed parallel drawing processing in a frame buffer and a system memory
US5131080A (en) * 1987-08-18 1992-07-14 Hewlett-Packard Company Graphics frame buffer with RGB pixel cache
DE4227733A1 (de) * 1991-08-30 1993-03-04 Allen Bradley Co Konfigurierbarer cachespeicher und datenverarbeitungssystem mit einem derartigen speicher
EP0747825B1 (en) * 1995-06-06 2001-09-19 Hewlett-Packard Company, A Delaware Corporation SDRAM data allocation system and method
DE69601599T2 (de) * 1995-06-07 1999-10-14 Ibm Videoverarbeitungseinheit mit Steuerung des Adressierungsmodus
US6608625B1 (en) * 1998-10-14 2003-08-19 Hitachi, Ltd. Three dimensional graphic processor
US6704023B1 (en) * 1998-12-04 2004-03-09 Silicon Motion, Inc. 3-D graphics chip with embedded DRAMbuffers
US6650333B1 (en) * 1999-06-09 2003-11-18 3Dlabs Inc., Ltd. Multi-pool texture memory management
US6587113B1 (en) * 1999-06-09 2003-07-01 3Dlabs Inc., Ltd. Texture caching with change of update rules at line end
US6801209B1 (en) * 1999-12-30 2004-10-05 Intel Corporation Method and apparatus for storing data in a block-based memory arrangement
US6633299B1 (en) * 2000-01-10 2003-10-14 Intel Corporation Method and apparatus for implementing smart allocation policies for a small frame buffer cache serving 3D and 2D streams
US6778179B2 (en) * 2001-05-18 2004-08-17 Sun Microsystems, Inc. External dirty tag bits for 3D-RAM SRAM
US6720969B2 (en) * 2001-05-18 2004-04-13 Sun Microsystems, Inc. Dirty tag bits for 3D-RAM SRAM
JP2003196156A (ja) * 2001-12-28 2003-07-11 Fujitsu Ltd 情報処理装置および情報処理方法
US7151544B2 (en) * 2003-05-16 2006-12-19 Sun Microsystems, Inc. Method for improving texture cache access by removing redundant requests
US7145566B2 (en) * 2003-07-18 2006-12-05 Microsoft Corporation Systems and methods for updating a frame buffer based on arbitrary graphics calls
US20050195200A1 (en) * 2004-03-03 2005-09-08 Chuang Dan M. Embedded system with 3D graphics core and local pixel buffer

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103971327A (zh) * 2013-01-24 2014-08-06 三星电子株式会社 像素高速缓存、其操作方法和包括像素高速缓存的图像处理装置
CN104516825A (zh) * 2013-09-30 2015-04-15 三星电子株式会社 高速缓冲存储器***及其操作方法
CN104516825B (zh) * 2013-09-30 2019-06-11 三星电子株式会社 高速缓冲存储器***及其操作方法
CN109214977A (zh) * 2017-07-05 2019-01-15 三星电子株式会社 图像处理装置及其控制方法
CN109214977B (zh) * 2017-07-05 2023-11-14 三星电子株式会社 图像处理装置及其控制方法

Also Published As

Publication number Publication date
US7737985B2 (en) 2010-06-15
CN101681502B (zh) 2012-11-14
TW200832278A (en) 2008-08-01
WO2008060961A2 (en) 2008-05-22
KR20090080547A (ko) 2009-07-24
JP2010509688A (ja) 2010-03-25
WO2008060961A3 (en) 2009-11-12
CA2667736A1 (en) 2008-05-22
US20080111825A1 (en) 2008-05-15
KR101100046B1 (ko) 2011-12-29
EP2118846A2 (en) 2009-11-18
JP4880759B2 (ja) 2012-02-22

Similar Documents

Publication Publication Date Title
CN101681502B (zh) 用于三维图形电路的像素高速缓冲存储器
US6825847B1 (en) System and method for real-time compression of pixel colors
US7519781B1 (en) Physically-based page characterization data
JP4477237B2 (ja) 階層順によるラスタ化方法および装置
US7944441B2 (en) Compression and decompression of data using plane equations
US6618053B1 (en) Asynchronous multilevel texture pipeline
CN101802872B (zh) 深度缓冲器压缩
CN101103381B (zh) 用于呈现三维图形的方法及装置
JP5368254B2 (ja) 画像ファイル生成装置、画像処理装置、画像ファイル生成方法、画像処理方法、および画像ファイルのデータ構造
CN106339061A (zh) 一种移动终端及其运行应用程序的方法
JP3586991B2 (ja) テクスチャ・データ読出装置およびレンダリング装置
EP1255227A1 (en) Vertices index processor
JP2882465B2 (ja) 画像生成方法およびその装置
US7809904B1 (en) Page preloading using page characterization data
CN114461406A (zh) DMA OpenGL优化方法
JP2011090648A (ja) 画像処理装置および画像処理方法
US20050195200A1 (en) Embedded system with 3D graphics core and local pixel buffer
US20030231176A1 (en) Memory access device, semiconductor device, memory access method, computer program and recording medium
US20120026179A1 (en) Image processing division
US7928988B1 (en) Method and system for texture block swapping memory management
JP2003196674A (ja) 画像処理方法、画像処理装置及びコンピュータ読み取り可能記憶媒体
CN102682419B (zh) 用于向量图形的动态线段对照表产生方法及装置
CN110223369B (zh) Tbr架构的帧缓存写回方法、装置及计算机存储介质
US20230206380A1 (en) Optimizing partial writes to compressed blocks
JP2006338334A (ja) データ処理装置及びデータ処理方法

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
CI01 Correction of invention patent gazette

Correction item: Denomination of Invention

Correct: Pixel cache memory for a three-dimensional graphics circuit

False: Pixel high-speed blanking memory for three-dimensional graphic circuit

Number: 12

Volume: 26

CI02 Correction of invention patent application

Correction item: Denomination of Invention

Correct: Pixel cache memory for a three-dimensional graphics circuit

False: Pixel high-speed blanking memory for three-dimensional graphic circuit

Number: 12

Page: The title page

Volume: 26

C14 Grant of patent or utility model
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20121114

Termination date: 20191108