CN1503945B - 共享转换地址的高速缓存 - Google Patents

共享转换地址的高速缓存 Download PDF

Info

Publication number
CN1503945B
CN1503945B CN018165591A CN01816559A CN1503945B CN 1503945 B CN1503945 B CN 1503945B CN 018165591 A CN018165591 A CN 018165591A CN 01816559 A CN01816559 A CN 01816559A CN 1503945 B CN1503945 B CN 1503945B
Authority
CN
China
Prior art keywords
address
control hub
storage control
storage
virtual memory
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.)
Expired - Fee Related
Application number
CN018165591A
Other languages
English (en)
Other versions
CN1503945A (zh
Inventor
B·怀特
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.)
Intel Corp
Original Assignee
Intel Corp
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 Intel Corp filed Critical Intel Corp
Publication of CN1503945A publication Critical patent/CN1503945A/zh
Application granted granted Critical
Publication of CN1503945B publication Critical patent/CN1503945B/zh
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Classifications

    • 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/10Address translation
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G5/00Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators
    • G09G5/36Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators characterised by the display of a graphic pattern, e.g. using an all-points-addressable [APA] memory
    • G09G5/363Graphics controllers
    • 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/10Address translation
    • G06F12/1027Address translation using associative or pseudo-associative address translation means, e.g. translation look-aside buffer [TLB]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/14Digital output to display device ; Cooperation and interconnection of the display device with other functional units
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G2360/00Aspects of the architecture of display systems
    • G09G2360/12Frame memory handling
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G2360/00Aspects of the architecture of display systems
    • G09G2360/12Frame memory handling
    • G09G2360/125Frame memory handling using unified memory architecture [UMA]

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Graphics (AREA)
  • Computer Hardware Design (AREA)
  • Human Computer Interaction (AREA)
  • Memory System Of A Hierarchy Structure (AREA)
  • Image Generation (AREA)
  • Digital Computer Display Output (AREA)

Abstract

为了在给包括内部图形系统的计算机系统的性能提供升级能力以包括高性能图形的同时,降低该计算机系统的成本,存储控制集线器包括一种图形子系统和高速缓冲存储器。该图形子系统适合于进行数据图形处理。该高速缓冲存储器适合于存储物理存储器内可供所述图形子系统用于存储图形数据的位置地址,并适合于存储物理存储器内可供耦合到所述存储控制集线器的外部图形控制器用于存储图形数据的位置地址。

Description

共享转换地址的高速缓存
技术领域
本发明涉及存储控制器集线器内的高速缓存。
背景技术
微型计算机系统通常包括一个或多个存储控制集线器,控制并协调计算机系统存储器、中央处理单元(CPU)和外围设备间的数据传送。可由称作为图形控制器的外围设备支持图形应用,该图形控制器需要一个存储控制集线器在图形控制器、系统存储器和CPU之间传送数据。
微型计算机系统设计所关心的是两维(2D)、三维(3D)和视频图像(下面通称为“图形”)处理的质量。高性能图形处理要求处理器密集的计算(processor-intensive)以及大量数据的快速处理。已经实现了几种设计以便获得高性能的图形处理,同时也降低了整个系统的成本,并允许计算机系统能力的升级。
计算机系统可包括图形控制器,它耦合于存储图形数据的本地存储器,从而减少了必须在图形控制器和系统存储器和/或CPU之间传送的数据量。增加图形控制器可用的本地存储器容量可改进图形的性能,但也增加了计算机系统的成本,因为本地图形存储器的成本相当昂贵。然而,如果使用专用总线(例如,加速图形端口(AGP))将控制器耦合到存储控制集线器,则只需较少的本地存储器,就可获得相同的图形性能。AGP允许控制器将部分系统存储器当作专用的本地图形存储器,这将减少所需的本地存储器容量,并降低整个系统的成本。
通过去除外围图形控制器并将其功能集成进存储控制集线器内,也可降低计算机系统的成本。在这样的配置中,将存储控制集线器称作为图形/存储控制集线器更加贴切,因为除存储控制和传送功能外,存储控制集线器还执行图形处理功能。另外,它包括一个或多个向外部设备发送图形信号的输出端口,外部设备有比如阴极射线管(CRT)和平板监测器。图形/存储控制集线器可以耦合到本地存储器,用于存储图形数据。
发明内容
根据本发明的第一方面,提供一种存储控制集线器,它包括一个内部图形子系统和一个高速缓冲存储器。该子系统适合于进行图形数据操作。该高速缓冲存储器适合于存储物理存储器内可供所述内部图形子系统用于存储图形数据的位置地址。且所述高速缓冲存储器适合于存储物理存储器内可供耦合于存储控制集线器的外部图形控制器用于存储图形数据的位置地址。
根据本发明的第二方面,提供一种计算机系统,它包括CPU、显示装置、适合于存储视频数据和非视频数据的系统存储器、以及耦合到所述CPU并耦合到所述系统存储器的存储控制集线器。所述存储控制集线器包括内部图形子系统和高速缓冲存储器。将该内部图形子系统配置成能对图形数据进行图形操作。该高速缓冲存储器适合于存储物理存储器内可供所述内部图形子系统用于存储图形数据的位置地址,且所述高速缓冲存储器适合于存储物理存储器内可供耦合到所述存储控制集线器的外部图形控制器用于存储图形数据的位置地址。
根据本发明的第三方面,提供一种用于在存储控制集线器高速缓冲存储器中存储物理存储器中位置的地址的方法,它包括如下步骤:确定所述存储控制集线器是可操作地耦合于外部图形控制器,还是所述存储控制集线器使用内部图形子系统进行图形数据操作。如果所述存储控制集线器耦合于外部图形控制器,则在所述存储控制集线器内的高速缓冲存储器中存储物理存储器中可供所述外部图形控制器用于存储图形数据的位置的地址。但是,如果所述存储控制集线器使用内部图形子系统进行图形数据操作,则在所述高速缓冲存储器中存储物理存储器中可供所述外部图形控制器用于存储图形数据的位置的地址。
附图说明
图1是计算机系统的示意框图。
图2是一张图形存储控制集线器的示意框图。
图3和图4是图形存储控制集线器的加速图形端口(AGP)功能的示意框图。
具体实施方式
在计算机系统中,存储控制集线器可以与内部图形控制器集成,并可以通过AGP端口与外部图形设备连接。因为存储控制集线器既控制图形又控制存储功能,所以将它称为图形/存储控制集线器(GMCH)。GMCH通过AGP接口既提供内部图形处理也提供可升级的图形性能。
GMCH可用于两种互斥模式中的一种:AGP模式,在该模式下,GMCH使用其与外部图形控制器连接的能力,而且其内部的图形功能被禁止;或Gfx模式,在该模式下,GMCH使用其内部图形能力,而且其与外部图形控制器连接的性能被禁止。在Gfx模式下,GMCH仍能通过AGP端口与本地存储模块连接,以提供附加的图形存储器,供内部图形使用。GMCH是在AGP模式下工作还是在Gfx模式下操作可在计算机启动顺序期间自动确定并设置。
图1描述了一种能实现GMCH的典型计算机系统1。计算机系统1包括耦合到GMCH 3的微处理器(例如,CPU)2,GMCH 3包含一个系统存储控制集线器。GMCH 3也可称作为“芯片集”或“核心逻辑”。GMCH 3在CPU2和系统存储器4之间以及CPU2和总线之间提供一个接口,该总线是比如,外设部件互连(PCI)或HublinkTM总线5。各种输入/输出(I/O)设备6耦合到PCI总线5,该PCI总线5经过输入/输出控制集线器(ICH)11耦合于GMCH 3。计算机系统1还可包括图形设备7,该图形设备可以是耦合到本地存储器8的图形控制器,或者是为GMCH 3的内部图形功能提供外部本地存储器的AGP内联存储模块(AIMM)。共享的AGP/本地存储器接口9在GMCH 3和图形设备7之间提供了专用接口总线。如果该计算机系统中有一台图形设备7,则可将图形和视频信号从图形设备7发送到显示装置10,或者如果没有图形设备7,则可将图形和视频信号从GMCH 3发送到显示装置10。
图2示出了GMCH 3的其它详情,包括耦合到AGP接口21的CPU接口20、本地存储器接口22、输入/输出(I/O)集线器接口23以及系统存储器接口24。可由内部图形部件25来执行图形功能,该内部图形部件25包括数据流和管理该数据流的调度控制器26,以及执行数据图形操作的各种图形引擎27。
参考图3和图4,AGP事务以分离事务方式(split transaction fashion)运行,在该方式中,从系统存储器4传送数据或将数据传送至系统存储器4的请求在时间上从数据传送的本身断开。AGP顺应性图形设备(总线主控)7a通过存取请求启动事务。AGP接口21通过在稍后的时间指挥相应的数据传送来响应该请求,从而允许AGP图形设备7a在等待数据传送发生的同时对几个存取请求进行流水化操作。作为流水化操作的结果,可能在请求队列100中同时有几个读和/或写的存取请求未解决。存取请求可以在AGP9的地址/数据总线(AD总线)105和107上进行流水化操作,或者通过AGP9的边带地址线107传送,并由请求队列100接收。
调度器102处理请求队列100中的存取请求。从系统存储器4中获得读取的数据,且由调度器102主动将该数据通过读数据返回队列104并在AGP9的AD总线105上返回。当在写数据队列108中有空间时,按调度器102的指示,由AGP顺应性图形控制器7提供写数据。这样,AGP事务通常包括相互交织的存取请求和数据传送。
当GMCH 3与外部AGP顺应性图形控制器7a一起在AGP模式下工作,或当GMCH 3使用其内部图形功能在Gfx模式下工作时,可将图形数据存储在系统存储器4内。当用系统存储器4存储图形数据时,GMCH 3使用虚拟存储器寻址概念来存取图形数据。在AGP模式下,定义32MB或64MB的图形窗口,通过该图形窗口,图形控制器7a可以访问该物理系统存储器4内的地址。虽然,分配给AGP图形控制器7a使用的物理系统存储器的地址是不连续的,但是该图形窗口对图形控制器7a表现为32MB或64MB连续线性存储块。该图形窗口内的连续存储器地址块允许图形控制器7a快速地访问在虚拟存储器中作为单个实体的大型数据结构,诸如纹理位图(通常为1KB到128KB)。
来自图形控制器7a的存取请求对窗口范围内的虚拟存储器进行寻址,并随后,GMCH 3将窗口内的存取请求转发给物理系统存储器4。在数据流控制器26内用图形地址重映射表(GART)对从图形控制器7a送出的最初发出的地址进行转换。GART是一使窗口范围内的虚拟存储器地址与相应的物理存储器地址匹配的表。GART存储在系统存储器内GMCH 3已知的位置中,因为它的位置存储在GMCH 3内的一个寄存器内。将地址按4KB一页从图形窗口映射到系统存储器,并且每条GART记录转换为4KB的一页。这样,当从图形控制器7a接收到在图形窗口内的存取请求时,暂时中止该请求,同时从系统存储器4中提取合适的GART记录。用所提取的转换表记录对图形窗口内的存取请求的地址进行转换,并将该请求转送到系统存储器4内由所提取的GART记录标识的物理地址。
为了加速从AGP图形控制器7a到系统存储器4的存储器存取请求,GMCH 3提供了用于本地存储来自GART的多达四条记录的GART记录高速缓冲存储器28。GART记录高速缓冲存储器28也可称作为转换后备缓冲器(TLB)。当首先从系统存储器4中的GART检索到一条GART记录,从而将虚拟地址转换成物理地址时,该条记录可被存储在驻留于数据流控制器26中的TLB28内。当下一次来自图形控制器7a的地址请求需要使用相同的GART记录时,可从本地TLB28检索记录,而不是从较远的系统存储器4的GART进行检索。因为GART记录可以存储在TLB28内,并且每条GART记录提供对4KB一页的存储器地址的访问,所以在必须从系统存储器4检索一条新GART记录之前,可用本地存储在TLB28内的GART记录,对来自图形控制器7a的高达16KB的存取请求进行转换。如果数据流控制器26需要一条并未本地存储在TLB28内的GART记录,则可以从系统存储器4内检索到所需的记录,并随后存储在TLB 28内以备以后的使用,由此,替代了先前存储在TLB28内的记录。
再次参考图2,在Gfx模式下,GMCH 3的内部图形引擎27定义了一个64MB的逻辑地址空间,通过该逻辑地址空间,物理系统存储器4内的地址或AIMM可以由内部图形引擎27进行访问。虽然物理系统存储器4或AIMM中分配给内部图形引擎27使用的地址是不连续的,但该逻辑地址空间对图形控制器7a表现为32MB或64MB的连续线性存储器块。像用于AGP模式下的图形窗口一样,逻辑地址空间内的连续存储器地址块允许内部图形引擎27如虚拟存储器内的单实体一样,对大型数据结构进行快速地访问。
在数据流控制器26内,用图形转换表(GTT)对来自内部图形引擎27的存取请求进行转换,该图形转换表存储在系统存储器内的某一位置,该位置由GMCH 3存储在GMCH 3内的寄存器中。将逻辑地址空间内的地址按4KB一页映射到系统存储器或AIMM内,并将每条GTT的记录转换为4KB一页。如果有AIMM卡,则GTT记录还确定是将存取请求映射到系统存储器4还是映射到AIMM存储器。用于GMCH 3中高速缓存GART记录的相同TLB28可用于本地存储来自GTT的多达四条记录,从而加速访问物理存储器。由于可以存储在TLB28中的GART记录或GTT记录的数量受TLB的物理模板区域大小的限制,所以用相同的TLB在AGP模式下存储GART记录并在Gfx模式下存储GTT记录,可有效地使可存储在TLB内的GART或GTT的记录数,与当将分别的TLB用于GART和GTT记录时可存储的数目相比增加一倍。另外,用相同的TLB在AGP模式下存储GART记录,并在Gfx模式下存储GTT记录,可简化GMCH 3的内部逻辑,因为单逻辑可用于TLB的两种功能。
其他实施例落在下列权利要求的范围内。

Claims (16)

1.一种存储控制集线器,包括:
适合于进行图形数据操作的内部图形子系统;和
高速缓冲存储器,适合于当所述存储控制集线器使用所述内部图形子系统进行图形数据操作时存储物理存储器内可供所述内部图形子系统用于存储图形数据的位置的地址,且所述高速缓冲存储器适合于当所述存储控制集线器耦合于所述外部图形控制器时存储物理存储器内可供给耦合于存储控制集线器的外部图形控制器用于存储图形数据的位置地址。
2.根据权利要求1所述的存储控制集线器,其特征在于,还包括一个专用总线接口,它将所述外部图形控制器耦合于所述存储控制集线器。
3.根据权利要求2所述的存储控制集线器,其特征在于,所述专用总线接口包括加速图形端口(AGP)。
4.根据权利要求1所述的存储控制集线器,其特征在于,将所述存储控制集线器配置成能提供一线性的虚拟存储器地址块,由所述内部图形子系统使用,其中,所述高速缓冲存储器适合于存储物理存储器内与所述线性的虚拟存储器地址块内的地址相对应的位置的地址。
5.根据权利要求1所述的存储控制集线器,其特征在于,将所述的存储控制集线器配置成能提供一线性的虚拟存储器地址块,由所述外部图形控制器使用,其中,所述高速缓冲存储器适合于存储物理存储器内与所述线性的虚拟存储器地址块内的地址相对应的位置的地址。
6.根据权利要求1所述的存储控制集线器,其特征在于,将所述存储控制集线器配置成能提供第一个线性的虚拟存储器地址块,它由所述外部图形控制器使用,并适合于提供第二个线性的虚拟存储器地址块,该地址块由所述内部图形子系统使用,其中,所述高速缓冲存储器适合于存储物理存储器内与所述第一个线性的虚拟存储器地址块内的地址相对应的位置的地址,并且所述高速缓冲存储器适合于存储物理存储器内与所述第二个线性的虚拟存储器地址块内的地址相对应的位置的地址。
7.一种计算机系统,包括:
CPU;
显示装置;
系统存储器,适合于存储视频数据和非视频数据;以及
耦合到所述CPU并耦合到所述系统存储器的存储控制集线器,所述存储控制集线器包括:
内部图形子系统,配置成能对图形数据进行图形操作;以及
高速缓冲存储器,适合于当所述存储控制集线器使用所述内部图形子系统进行图形数据操作时存储物理存储器内可供所述内部图形子系统用于存储图形数据的位置地址,且所述高速缓冲存储器适合于当所述存储控制集线器耦合于所述外部图形控制器时存储物理存储器内可供耦合到所述存储控制集线器的外部图形控制器用于存储图形数据的位置地址。
8.根据权利要求7所述的计算机系统,其特征在于,还包括专用总线接口,用于将所述外部图形控制器耦合到所述存储控制集线器。
9.根据权利要求8所述的计算机系统,其特征在于,所述专用总线接口包括加速图形端口(AGP)。
10.根据权利要求7所述的计算机系统,其特征在于,将所述存储控制集线器配置成能提供一个线性的虚拟存储器地址块,该地址块由所述内部图形子系统使用;以及
其中,所述高速缓冲存储器适合于存储物理存储器内与所述线性的虚拟存储器地址块内的地址相对应的位置的地址。
11.根据权利要求7所述的计算机系统,其特征在于,将所述存储控制集线器配置成能提供一个线性的虚拟存储器地址块,由所述外部图形控制器使用;并且
其中,所述高速缓冲存储器适合于存储物理存储器内与所述线性的虚拟存储器地址块内的地址相对应的位置的地址。
12.根据权利要求7所述的计算机系统,其特征在于,将所述存储控制集线器配置成能提供第一个线性的虚拟存储器地址块,该地址块由所述外部图形控制器使用并且适合于提供第二个线性的虚拟存储器地址块,该地址块由所述内部图形子系统使用;并且
其中,所述高速缓冲存储器适合于存储物理存储器内所述第一个线性的虚拟存储器地址块内的地址相对应的位置的地址,并且所述高速缓冲存储器适合于存储物理存储器内与所述第二个线性的虚拟存储器地址块内的地址相对应的位置的地址。
13.一种用于在存储控制集线器高速缓冲存储器中存储物理存储器中位置的地址的方法,其特征在于,所述方法包括如下步骤:
确定所述存储控制集线器是可操作地耦合于外部图形控制器,还是所述存储控制集线器使用内部图形子系统进行图形数据操作;以及
如果所述存储控制集线器耦合于外部图形控制器,则在所述存储控制集线器内的高速缓冲存储器中存储物理存储器中可供所述外部图形控制器用于存储图形数据的位置的地址;但
如果所述存储控制集线器使用内部图形子系统进行图形数据操作,则在所述高速缓冲存储器中存储物理存储器中可供所述外部图形控制器用于存储图形数据的位置的地址。
14.根据权利要求13所述的方法,其特征在于,还包括如下步骤:
如果所述存储控制集线器使用内部图形子系统进行图形数据操作,则在存储控制集线器中提供一个线性的虚拟存储器地址块,由所述内部图形子系统使用;以及
如果所述存储控制集线器使用内部图形子系统进行图形数据操作,则在高速缓冲存储器内存储物理存储器中与所述线性虚拟存储器地址块内的地址相对应的位置的地址。
15.根据权利要求13所述的方法,其特征在于,还包括如下步骤:
如果所述存储控制集线器耦合于外部图形控制器,则在所述存储控制集线器内提供一块线性的虚拟存储器地址块,由所述外部图形控制器使用;以及
如果所述存储控制集线器耦合于外部图形控制器,则在所述高速缓冲存储器内存储物理存储器内与所述线性的虚拟存储器地址块内的地址相对应的位置的地址。
16.根据权利要求13所述的方法,其特征在于,还包括如下步骤:
如果所述存储控制集线器使用内部图形子系统进行图形数据操作,则在存储控制集线器中提供一个由所述外部图形控制器使用的线性虚拟存储器地址块,并在所述高速缓冲存储器内存储物理存储器内与所述线性的虚拟存储器地址块内的地址相对应的位置的地址;或
如果所述存储控制集线器耦合于外部图形控制器,则在所述存储控制集线器中提供一个由内部图形子系统使用的线性虚拟存储器地址块,并在所述高速缓冲存储器内存储物理存储器内与所述线性虚拟存储器地址块内的地址相对应的位置的地址。
CN018165591A 2000-09-29 2001-09-26 共享转换地址的高速缓存 Expired - Fee Related CN1503945B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US09/676,844 US6859208B1 (en) 2000-09-29 2000-09-29 Shared translation address caching
US09/676,844 2000-09-29
PCT/US2001/030362 WO2002027499A2 (en) 2000-09-29 2001-09-26 Shared translation address caching

Publications (2)

Publication Number Publication Date
CN1503945A CN1503945A (zh) 2004-06-09
CN1503945B true CN1503945B (zh) 2010-04-28

Family

ID=24716246

Family Applications (1)

Application Number Title Priority Date Filing Date
CN018165591A Expired - Fee Related CN1503945B (zh) 2000-09-29 2001-09-26 共享转换地址的高速缓存

Country Status (11)

Country Link
US (2) US6859208B1 (zh)
EP (1) EP1325417B1 (zh)
JP (1) JP3810736B2 (zh)
KR (1) KR100571730B1 (zh)
CN (1) CN1503945B (zh)
AU (1) AU2001294840A1 (zh)
DE (1) DE60142841D1 (zh)
HK (1) HK1053716A1 (zh)
SG (1) SG129307A1 (zh)
TW (1) TW576967B (zh)
WO (1) WO2002027499A2 (zh)

Families Citing this family (58)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6859208B1 (en) * 2000-09-29 2005-02-22 Intel Corporation Shared translation address caching
TW512277B (en) * 2001-06-22 2002-12-01 Silicon Integrated Sys Corp Core logic of a computer system and control method of the same
US7133972B2 (en) 2002-06-07 2006-11-07 Micron Technology, Inc. Memory hub with internal cache and/or memory access prediction
US7117316B2 (en) * 2002-08-05 2006-10-03 Micron Technology, Inc. Memory hub and access method having internal row caching
US7836252B2 (en) 2002-08-29 2010-11-16 Micron Technology, Inc. System and method for optimizing interconnections of memory devices in a multichip module
US6820181B2 (en) 2002-08-29 2004-11-16 Micron Technology, Inc. Method and system for controlling memory accesses to memory modules having a memory hub architecture
US7073041B2 (en) * 2002-10-30 2006-07-04 Motorola, Inc. Virtual memory translation unit for multimedia accelerators
US7421694B2 (en) * 2003-02-18 2008-09-02 Microsoft Corporation Systems and methods for enhancing performance of a coprocessor
US7673304B2 (en) * 2003-02-18 2010-03-02 Microsoft Corporation Multithreaded kernel for graphics processing unit
US6947051B2 (en) * 2003-02-18 2005-09-20 Microsoft Corporation Video memory management
US7444637B2 (en) * 2003-02-18 2008-10-28 Microsoft Corporation Systems and methods for scheduling coprocessor resources in a computing system
US7245145B2 (en) 2003-06-11 2007-07-17 Micron Technology, Inc. Memory module and method having improved signal routing topology
US7120727B2 (en) 2003-06-19 2006-10-10 Micron Technology, Inc. Reconfigurable memory module and method
US7260685B2 (en) 2003-06-20 2007-08-21 Micron Technology, Inc. Memory hub and access method having internal prefetch buffers
US7389364B2 (en) 2003-07-22 2008-06-17 Micron Technology, Inc. Apparatus and method for direct memory access in a hub-based memory system
US7210059B2 (en) 2003-08-19 2007-04-24 Micron Technology, Inc. System and method for on-board diagnostics of memory modules
US7136958B2 (en) 2003-08-28 2006-11-14 Micron Technology, Inc. Multiple processor system and method including multiple memory hub modules
US7310752B2 (en) 2003-09-12 2007-12-18 Micron Technology, Inc. System and method for on-board timing margin testing of memory modules
US7194593B2 (en) 2003-09-18 2007-03-20 Micron Technology, Inc. Memory hub with integrated non-volatile memory
US7330992B2 (en) 2003-12-29 2008-02-12 Micron Technology, Inc. System and method for read synchronization of memory modules
US7188219B2 (en) 2004-01-30 2007-03-06 Micron Technology, Inc. Buffer control system and method for a memory system having outstanding read and write request buffers
US7788451B2 (en) 2004-02-05 2010-08-31 Micron Technology, Inc. Apparatus and method for data bypass for a bi-directional data bus in a hub-based memory sub-system
US7366864B2 (en) 2004-03-08 2008-04-29 Micron Technology, Inc. Memory hub architecture having programmable lane widths
US7257683B2 (en) 2004-03-24 2007-08-14 Micron Technology, Inc. Memory arbitration system and method having an arbitration packet protocol
US7120723B2 (en) 2004-03-25 2006-10-10 Micron Technology, Inc. System and method for memory hub-based expansion bus
US6980042B2 (en) 2004-04-05 2005-12-27 Micron Technology, Inc. Delay line synchronizer apparatus and method
US7590797B2 (en) 2004-04-08 2009-09-15 Micron Technology, Inc. System and method for optimizing interconnections of components in a multichip memory module
US7363419B2 (en) 2004-05-28 2008-04-22 Micron Technology, Inc. Method and system for terminating write commands in a hub-based memory system
US7519788B2 (en) 2004-06-04 2009-04-14 Micron Technology, Inc. System and method for an asynchronous data buffer having buffer write and read pointers
US7310748B2 (en) 2004-06-04 2007-12-18 Micron Technology, Inc. Memory hub tester interface and method for use thereof
US7392331B2 (en) 2004-08-31 2008-06-24 Micron Technology, Inc. System and method for transmitting data packets in a computer system having a memory hub architecture
TW200634532A (en) * 2005-03-23 2006-10-01 Realtek Semiconductor Corp Apparatus and method of utilizing interface to load program code
US7616218B1 (en) * 2005-12-05 2009-11-10 Nvidia Corporation Apparatus, system, and method for clipping graphics primitives
JP5076317B2 (ja) * 2005-12-27 2012-11-21 ソニー株式会社 情報処理装置、情報処理方法及びそのプログラム
JP5111797B2 (ja) * 2006-06-29 2013-01-09 株式会社東芝 情報処理装置及び情報処理方法
US8594441B1 (en) 2006-09-12 2013-11-26 Nvidia Corporation Compressing image-based data using luminance
US8601223B1 (en) 2006-09-19 2013-12-03 Nvidia Corporation Techniques for servicing fetch requests utilizing coalesing page table entries
US8543792B1 (en) 2006-09-19 2013-09-24 Nvidia Corporation Memory access techniques including coalesing page table entries
US8347064B1 (en) 2006-09-19 2013-01-01 Nvidia Corporation Memory access techniques in an aperture mapped memory space
US8352709B1 (en) 2006-09-19 2013-01-08 Nvidia Corporation Direct memory access techniques that include caching segmentation data
US8707011B1 (en) 2006-10-24 2014-04-22 Nvidia Corporation Memory access techniques utilizing a set-associative translation lookaside buffer
US8700883B1 (en) 2006-10-24 2014-04-15 Nvidia Corporation Memory access techniques providing for override of a page table
US8504794B1 (en) 2006-11-01 2013-08-06 Nvidia Corporation Override system and method for memory access management
US8706975B1 (en) 2006-11-01 2014-04-22 Nvidia Corporation Memory access management block bind system and method
US8607008B1 (en) * 2006-11-01 2013-12-10 Nvidia Corporation System and method for independent invalidation on a per engine basis
US8347065B1 (en) 2006-11-01 2013-01-01 Glasco David B System and method for concurrently managing memory access requests
US8533425B1 (en) 2006-11-01 2013-09-10 Nvidia Corporation Age based miss replay system and method
US8724895B2 (en) 2007-07-23 2014-05-13 Nvidia Corporation Techniques for reducing color artifacts in digital images
US8373718B2 (en) 2008-12-10 2013-02-12 Nvidia Corporation Method and system for color enhancement with color volume adjustment and variable shift along luminance axis
US10146545B2 (en) 2012-03-13 2018-12-04 Nvidia Corporation Translation address cache for a microprocessor
US9880846B2 (en) 2012-04-11 2018-01-30 Nvidia Corporation Improving hit rate of code translation redirection table with replacement strategy based on usage history table of evicted entries
US10241810B2 (en) 2012-05-18 2019-03-26 Nvidia Corporation Instruction-optimizing processor with branch-count table in hardware
US20140189310A1 (en) 2012-12-27 2014-07-03 Nvidia Corporation Fault detection in instruction translations
US10108424B2 (en) 2013-03-14 2018-10-23 Nvidia Corporation Profiling code portions to generate translations
US20160139806A1 (en) * 2014-11-13 2016-05-19 Cavium, Inc. Independent Ordering Of Independent Transactions
US10013385B2 (en) 2014-11-13 2018-07-03 Cavium, Inc. Programmable validation of transaction requests
US9569362B2 (en) 2014-11-13 2017-02-14 Cavium, Inc. Programmable ordering and prefetch
US10872458B1 (en) * 2019-09-06 2020-12-22 Apple Inc. Graphics surface addressing

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0902355A2 (en) * 1997-09-09 1999-03-17 Compaq Computer Corporation System and method for invalidating and updating individual gart (graphic address remapping table) entries for accelerated graphics port transaction requests
US5941968A (en) * 1997-04-14 1999-08-24 Advanced Micro Devices, Inc. Computer system for concurrent data transferring between graphic controller and unified system memory and between CPU and expansion bus device
WO2000029934A1 (en) * 1998-11-16 2000-05-25 Checkout Holdings Limited Pc based systems for driving of multiple screens
US6069638A (en) * 1997-06-25 2000-05-30 Micron Electronics, Inc. System for accelerated graphics port address remapping interface to main memory

Family Cites Families (24)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH01191914A (ja) 1988-01-27 1989-08-02 Toshiba Corp コンピュータシステム
US5793996A (en) 1995-05-03 1998-08-11 Apple Computer, Inc. Bridge for interconnecting a computer system bus, an expansion bus and a video frame buffer
JPH0997214A (ja) 1995-09-29 1997-04-08 Internatl Business Mach Corp <Ibm> 補助プロセッサのためのアドレス変換を含む情報処理システム
US6104417A (en) * 1996-09-13 2000-08-15 Silicon Graphics, Inc. Unified memory computer architecture with dynamic graphics memory allocation
KR19980054412A (ko) 1996-12-27 1998-09-25 문정환 단일 메모리 구조의 병목현상을 개선한 그래픽 시스템
US6052133A (en) * 1997-06-27 2000-04-18 S3 Incorporated Multi-function controller and method for a computer graphics display system
WO1999028893A1 (en) 1997-12-01 1999-06-10 Mediaq, Inc. High performance, highly integrated computer architecture with extendible embedded memory
JP4022369B2 (ja) 1997-12-30 2007-12-19 マイクロン テクノロジー,インコーポレイテッド マルチメモリコントローラコンピュータシステム用加速グラフィックスポート
US6097402A (en) 1998-02-10 2000-08-01 Intel Corporation System and method for placement of operands in system memory
US6304244B1 (en) 1998-04-24 2001-10-16 International Business Machines Corporation Method and system for dynamically selecting video controllers present within a computer system
US6532019B1 (en) 1998-06-17 2003-03-11 Advanced Micro Devices, Inc. Input/output integrated circuit hub incorporating a RAMDAC
US6148357A (en) 1998-06-17 2000-11-14 Advanced Micro Devices, Inc. Integrated CPU and memory controller utilizing a communication link having isochronous and asynchronous priority modes
US6591347B2 (en) * 1998-10-09 2003-07-08 National Semiconductor Corporation Dynamic replacement technique in a shared cache
US6477623B2 (en) 1998-10-23 2002-11-05 Micron Technology, Inc. Method for providing graphics controller embedded in a core logic unit
US6513099B1 (en) * 1998-12-22 2003-01-28 Silicon Graphics Incorporated Enhanced graphics cache memory
US6208273B1 (en) 1999-01-29 2001-03-27 Interactive Silicon, Inc. System and method for performing scalable embedded parallel data compression
US6275240B1 (en) 1999-05-27 2001-08-14 Intel Corporation Method and apparatus for maintaining load balance on a graphics bus when an upgrade device is installed
TW436694B (en) 1999-08-24 2001-05-28 Via Tech Inc System control chip and computer system having a multiplexed graphic bus architecture
US6374317B1 (en) * 1999-10-07 2002-04-16 Intel Corporation Method and apparatus for initializing a computer interface
US6667745B1 (en) * 1999-12-22 2003-12-23 Microsoft Corporation System and method for linearly mapping a tiled image buffer
US6496193B1 (en) * 1999-12-30 2002-12-17 Intel Corporation Method and apparatus for fast loading of texture data into a tiled memory
US6714957B1 (en) * 2000-01-04 2004-03-30 National Semiconductor Corporation System and method for efficient processing of denormal results as hardware exceptions
US6480200B1 (en) * 2000-06-09 2002-11-12 Hewlett-Packard Company Method and apparatus for deferred texture validation on a multi-tasking computer
US6859208B1 (en) * 2000-09-29 2005-02-22 Intel Corporation Shared translation address caching

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5941968A (en) * 1997-04-14 1999-08-24 Advanced Micro Devices, Inc. Computer system for concurrent data transferring between graphic controller and unified system memory and between CPU and expansion bus device
US6069638A (en) * 1997-06-25 2000-05-30 Micron Electronics, Inc. System for accelerated graphics port address remapping interface to main memory
EP0902355A2 (en) * 1997-09-09 1999-03-17 Compaq Computer Corporation System and method for invalidating and updating individual gart (graphic address remapping table) entries for accelerated graphics port transaction requests
WO2000029934A1 (en) * 1998-11-16 2000-05-25 Checkout Holdings Limited Pc based systems for driving of multiple screens

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
全文.
同上.

Also Published As

Publication number Publication date
JP3810736B2 (ja) 2006-08-16
CN1503945A (zh) 2004-06-09
KR20030034224A (ko) 2003-05-01
US7145568B2 (en) 2006-12-05
EP1325417B1 (en) 2010-08-18
EP1325417A2 (en) 2003-07-09
AU2001294840A1 (en) 2002-04-08
TW576967B (en) 2004-02-21
JP2004510250A (ja) 2004-04-02
HK1053716A1 (en) 2003-10-31
KR100571730B1 (ko) 2006-04-18
SG129307A1 (en) 2007-02-26
US6859208B1 (en) 2005-02-22
WO2002027499A2 (en) 2002-04-04
DE60142841D1 (de) 2010-09-30
WO2002027499A3 (en) 2003-03-13
US20050122340A1 (en) 2005-06-09

Similar Documents

Publication Publication Date Title
CN1503945B (zh) 共享转换地址的高速缓存
US7697009B1 (en) Processing high numbers of independent textures in a 3-D graphics pipeline
US6618770B2 (en) Graphics address relocation table (GART) stored entirely in a local memory of an input/output expansion bridge for input/output (I/O) address translation
US6195734B1 (en) System for implementing a graphic address remapping table as a virtual register file in system memory
US7475190B2 (en) Direct access of cache lock set data without backing memory
US6463510B1 (en) Apparatus for identifying memory requests originating on remote I/O devices as noncacheable
US5900017A (en) Snooping a variable number of cache addresses in a multiple processor system by a single snoop request
US5920881A (en) Method and system for using a virtual register file in system memory
US9196014B2 (en) Buffer clearing apparatus and method for computer graphics
US6167498A (en) Circuits systems and methods for managing data requests between memory subsystems operating in response to multiple address formats
WO2022095439A1 (zh) 一种用于数据处理的硬件加速系统及芯片
US6192457B1 (en) Method for implementing a graphic address remapping table as a virtual register file in system memory
US5860081A (en) Interfacing an L2 cache to a single bus having alternative protocols
EP2738736B1 (en) Image drawing apparatus with a cache memory
US5303363A (en) Image processing apparatus having disk storage resembling ram memory
US6301648B1 (en) Method and apparatus for processing memory accesses utilizing a TLB
CN112214444A (zh) 一种核间通信方法、arm、dsp及终端
CA1190335A (en) Graphics display system and method
GB2387939A (en) Object addresed memory hierarchy
JPS6113633B2 (zh)
JP2964504B2 (ja) 文書処理装置
JPH1091527A (ja) 記憶装置および記録媒体
JPH0711790B2 (ja) データ処理装置
US7840757B2 (en) Method and apparatus for providing high speed memory for a processing unit
JPH06149680A (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
C14 Grant of patent or utility model
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20100428

Termination date: 20170926

CF01 Termination of patent right due to non-payment of annual fee