CN1382277A - 靠近局部输入/输出总线的桥接器中的输入/输出地址转换 - Google Patents

靠近局部输入/输出总线的桥接器中的输入/输出地址转换 Download PDF

Info

Publication number
CN1382277A
CN1382277A CN00814726A CN00814726A CN1382277A CN 1382277 A CN1382277 A CN 1382277A CN 00814726 A CN00814726 A CN 00814726A CN 00814726 A CN00814726 A CN 00814726A CN 1382277 A CN1382277 A CN 1382277A
Authority
CN
China
Prior art keywords
bus
address
agp
affairs
primary 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.)
Granted
Application number
CN00814726A
Other languages
English (en)
Other versions
CN1213374C (zh
Inventor
R·奈亚
D·R·莫兰
L·W·克罗斯
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 CN1382277A publication Critical patent/CN1382277A/zh
Application granted granted Critical
Publication of CN1213374C publication Critical patent/CN1213374C/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
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/40Bus structure
    • 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/1081Address translation for peripheral access to main memory, e.g. direct memory access [DMA]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/40Bus structure
    • G06F13/4004Coupling between buses
    • G06F13/4027Coupling between buses using bus bridges
    • G06F13/404Coupling between buses using bus bridges with address mapping

Abstract

提供一种在输入/输出(I/O)扩展桥接器中执行地址转换的方法和装置。该I/O扩展桥接器包括第一接口单元、第二接口单元和地址转换单元。第一接口单元被配置成通过一个或多个I/O端口与系统存储器和I/O控制器耦合。第一接口单元使数据能通过一个或多个I/O端口往返于计算机系统的主存储器进行传递。第二接口单元提供总线控制信号和地址,使数据能通过总线传递到外围设备或从外围设备传出。地址转换单元与第一接口单元和第二接口单元连接。地址转换单元通过访问包含计算机系统的主存储器中页面的物理地址的局部存储器来转换与第二接口上接收的事务相关的地址。

Description

靠近局部输入/输出总线的桥接器中的输入/输出地址转换
                       版权通知
本文所含材料受到版权保护。本版权所有者不反对任何人按专利和商标局的专利文件或记录中呈现的那样复制本专利的公开,但是另一方面,无论如何要保留对该版权的所有权利。
                       发明背景
发明领域
本发明一般地涉及总线协议桥接。更具体地说,本发明涉及输入/输出(I/O)地址转换,比如在桥接器中将连续的逻辑地址空间重新映射到可能不连续的物理地址空间。
相关技术的描述
如果输入/输出(I/O)外围设备被提供了系统存储器(主存储器)中的大的相连视图,则它们通常会更有效地工作。这使这类装置能在包含它们感兴趣的数据的存储器的很大区域中进行随机存取。存储器的相连视图对于必须经常检索整个纹理映射、以便在显示装置上渲染场景的图形卡尤为重要。针对这种应用,I/O外围设备工作于其中的、给出大相连地址空间感的地址空间被称为“虚拟地址空间”。
总之,由于外围设备采用与主计算机系统的主存储器不同的地址空间,所以需要一种称为“地址转换”的处理,以便把外围设备所提供的虚拟地址映射到主存储器中相应的可能不连续的物理地址。
现在参考图1说明地址转换的现有技术的一个实例。图1是说明图形地址与物理地址转换的通用计算机系统100的高级框图。计算机系统100包括处理装置、如一个或多个处理器105和110,芯片组120,主存储器125,存储器总线124,图形加速端口(AGP)总线130以及PCI(外围部件互连)总线140。在此实例中,主存储器包含图形地址重定位表(GART),该表包含一些项目,用于把外围设备、如图形加速器135所用的虚拟地址映射到主存储器125中的物理地址。
芯片组120提供AGP总线130、PCI总线140以及存储器总线124之间的桥接功能。作为桥接功能的一部分,芯片组120利用GART 126将入站读和写事务(例如,由图形加速器135始发的读和写事务)中包含的图形地址转换到主存储器125中对应的物理地址。因此,在按照图1配置的计算机系统中,图形数据的处理、如纹理映射需要对主存储器125的多次存取。首先,芯片组120必须从GART 126中检索与正在执行的事务中指定的图形地址对应的项目。然后,在芯片组120确定了所需的物理地址之后,芯片组120必须执行对主存储器125的第二次存取,以便读出或写入该事务所指定的数据。
AGP的最大优点之一是,它将视频子系统与计算机系统的其余部分隔离,这样几乎不会有如采用PCI的情况那么多的I/O带宽上的争用。但是,根据上述描述,显然存在许多与目前处理AGP事务的转换方式有关的低效率情况。例如,首先对通常由动态随机存取存储器(DRAM)构成的主存储器125的存取与对静态随机存取存储器(SRAM)的存取相比要相对慢一些。第二,用于地址转换的主存储器125存取必须与其他存取请求、如由处理器105或110始发并经系统总线115接收的那些请求、或者在PCI总线140上接收的那些请求竞争。结果,因竞争通信量而减慢AGP转换。最后,如果转换单元(未示出)处理多种类型的通信量,例如系统总线通信量、PCI通信量以及AGP通信量,则由于需要仲裁逻辑来解决各种类型的入站和出站事务中转换单元的争用问题,所以情况会更加复杂。
因此,最好提供一种用于转换I/O地址技术,以便加速I/O事务的执行并提供地址转换逻辑的简化实现。此外,最好在与其他类型的通信量、如系统总线通信量或来自其他I/O装置的通信量隔离的装置中执行必要的I/O地址转换。
                       发明概述
现在描述用于在输入/输出(I/O)扩展桥接器中执行地址转换的方法和装置。I/O扩展桥接器包括第一接口单元、第二接口单元以及地址转换单元。第一接口单元被配置成通过一个或多个I/O端口与系统存储器和I/O控制器耦合。第一接口单元使数据能通过所述一个或多个I/O端口传到计算机系统的主存储器或者从其中传出。第二接口单元提供总线控制信号和地址,使数据能通过总线传递到外围设备或从外围设备中传出。地址转换单元与第一接口单元和第二接口单元耦合。地址转换单元通过访问局部存储器来转换与第二接口上接收的事务相关的地址,所述局部存储器含有计算机系统的主存储器中页面的物理地址。
本发明的其他特征和优点将从附图和详细描述中变得清楚明白。
                       附图简介
在附图中以举例而非限制的方式说明本发明,图中的类似参考标号表示类似部分,其中:
图1是说明用于图形地址转换的现有技术方法的框图。
图2是说明根据本发明的一个实施例的输入/输出地址转换的框图。
图3是说明根据本发明的一个实施例的图形地址转换的框图。
图4是说明可以实现本发明的实施例的示例芯片组的框图。
图5A是说明根据本发明的一个实施例的图形扩展桥接器的功能单元中高级互连的简化框图。
图5B是说明根据本发明的一个实施例的图形扩展桥接器的更详细视图的简化框图。
图6是在概念上说明根据本发明的一个实施例的事务处理的高级流程图。
图7是说明根据本发明的一个实施例的入站PCI写事务处理的流程图。
图8是说明根据本发明的一个实施例的出站PCI写事务处理的流程图。
图9在概念上说明根据本发明的一个实施例的图形(虚拟)至物理地址空间的转换。
图10A说明可用来查阅驻留在主存储器中4千字节页面中的数据的示例虚拟地址格式。
图10B说明可用来查阅驻留在主存储器中4兆字节页面中的数据的示例虚拟地址格式。
图11A说明支持至主存储器中4千字节页面的地址转换的示例GART项目格式。
图11B说明支持至主存储器中4兆字节页面的地址转换的示例GART项目格式。
                 本发明的详细描述
现在描述用于在I/O扩展桥接器中执行地址转换的方法和装置。概括地讲,本发明的实施例尝试提供一种用于转换I/O地址的技术,它将I/O转换装置、如I/O扩展桥接器与其他类型的通信量、如系统总线事务隔离,从而加速I/O事务的执行。根据本发明的一个特征,GART可以存储在局部SRAM中而不用跨过存储器总线。有利的是,由于接口是局部的并且提取GART项目的存取不必与其他类型的通信量竞争,所以可以更快地完成事务,而且可简化转换装置的实现。
在以下描述中,为了说明而给出大量的特定细节,以便提供对本发明的透彻理解。但是,显然对于本领域的技术人员来说,没有这些特定细节也可以实施本发明。在其他例子中,众所周知的结构和装置以框图形式表示。
本发明包括将在下面描述的各种步骤。本发明的步骤可以由硬件组件来执行,也可以用机器可执行指令来实现,这可用来使以这些指令编程的通用或专用处理器或逻辑电路执行这些步骤。或者,可以通过硬件与软件的组合来执行这些步骤。
重要的是,虽然本发明的实施例是参照可在本地、由转换各种AGP和PCI类事务的图形扩展桥接器(GXB)访问的图形加速端口(AGP)和图形地址重定位表(GART)来描述的,但是此处所述的方法和装置同样适用于其他类型的I/O事务和I/O扩展桥接器、或者其中I/O总线上的装置需要主存储器的相连视图的其他类型的总线。例如,此处所述技术被认为在与涉及VESA(视频电子标准协会)局部总线(VLB)和/或外围部件互连(PCI)总线的事务结合时是有用的。术语
在描述可以实现本发明各种实施例的示例环境之前,先简要地定义在整个本申请中要用到的一些术语。
术语“总线”一般指物理通信媒体或信道,信息通过它在两个或两个以上装置之间流动。虽然有人认为其上只有两个装置的总线是“端口”,但是此处所用的术语“总线”意在涵盖这种端口。
术语“处理器总线”、“系统总线”或“主机总线”一般指计算机系统的总线分级结构中的最高级总线。该总线通常被系统芯片组用于将信息发送到计算机系统的一个或多个处理器以及从这些处理器发送信息。
“存储器总线”指将存储器子系统连接到系统芯片组和处理器的总线。注意,在某些计算机系统中,处理器总线和存储器总线可能是同一条总线。
“局部I/O总线”一般是用于将各种类型的外围设备连接到计算机系统的存储器、系统芯片组和/或处理器的高速输入/输出(I/O)总线。例如,视频卡、盘存储装置、高速网络接口以及其他关键性能的外围设备通常都与此类型的总线耦合。常用的局部I/O总线包括VESA局部总线(VLB)、外围部件互连(PCI)总线以及图形加速端口(AGP)总线。同样出于本公开的目的,设计成由两个以上装置共用的总线和设计成仅供两个装置使用的端口、如I/O端口或AGP都被认为是总线。
“图形加速端口”(AGP)是一种高性能总线规范,如《图形加速端口接口规范》1998年5月4日的修订版2.0以及其后续修订版所述,该规范是为三维图形和视频图像的快速、高质量显示而设计的。
“PCI事务”一般指具有AGP总线上发布的AGP语义的PCI事务。
此处所用的“桥接器”一般指在芯片组中实现的逻辑和电路,例如,它用来连接两条总线,并且使一条总线上的装置可与另一条总线上的装置通信,反之亦然。例如,计算机系统中见到的一种常用桥接器是PCI-ISA(工业标准体系结构)桥接器,它通常是系统芯片组的一部分。PCI总线也可以还具有一个到处理器总线的桥接器,称为PCI扩展桥接器(PXB)。
在此申请的上下文中,“事务”包括一个或多个请求(地址)阶段和数据阶段。事务通常包括开始地址、事务类型以及要传送的数据量的指示。
特定事务的方向是从处理器的观点来确定的。因此,“入站事务”一般指由外围设备、如视频卡、盘存储装置或高速网络接口指向计算机系统的读或写请求;而“出站事务”一般指由计算机系统指向外围设备的读或写请求。输入/输出地址转换
本发明的各种特征被认为通常在与I/O扩展桥接器中执行地址转换结合时有用。为了在上下文中阐述本发明的广泛方面,下面参考图2描述可用来实现本发明的一个实施例的示例性的计算机系统体系结构。图2说明通用计算机系统200,其中可执行根据本发明的一个实施例的方法的一个或多个步骤,并且其中可设有根据本发明的一个实施例的装置。计算机系统200包括处理装置、如一个或多个处理器205和210、芯片组220、主存储器225、存储器总线224以及局部I/O总线230。根据本实施例,芯片组220包含地址转换表226。地址转换表包含许多项目(未示出),便于把从外围设备235接收的虚拟地址转换成主存储器225中的物理地址。如下面进一步描述的,芯片组220可包括一个或多个集成电路,可在其上面分布各种芯片组功能,例如系统总线仲裁、I/O地址转换等。在此实例中,芯片组220起到局部I/O总线230和系统总线215与存储器总线224之间的桥接器的作用。作为桥接操作的一部分,芯片组220访问局部地址转换表226,以便将外围设备235使用的连续I/O地址空间转换到主存储器225的物理地址空间。注意,正如以下要进一步说明的,通过将地址转换表226放置对于芯片组220来说是本地的位置(例如专用片内或片外SRAM中),可以更为有效地执行来自外围设备235的入站事务。图形地址转换
本发明的各种特征被认为对于执行从如AGP兼容图形装置使用的图形地址空间到主存储器225的物理地址空间的地址转换特别有用。图3是说明其中可以实现根据本发明一个实施例改进的虚拟地址转换技术的通用计算机系统300的高级框图。计算机系统300包括处理装置、如一个或多个处理器305和310、芯片组320、主存储器225、存储器总线324、图形加速端口(AGP)总线330以及PCI总线340。在所述实施例中,芯片组320包括图形地址重定位表(GART)326。GART 326包含GART项目(以下描述),这些项目包含用于实现从图形加速器335接收的虚拟地址到主存储器325的物理地址的转换的信息。
根据本实施例,GART 326可由芯片组320局部地访问,而不是跨过存储器总线324设置在主存储器325中。芯片组320提供AGP总线330、PCI总线340与存储器总线324之间的桥接功能。作为桥接功能的一部分,芯片组320利用局部GART 326将入站读和写事务(例如,由图形加速器335始发的读和写事务)中包含的图形地址转换成主存储器325中相应的物理地址。如上所述,参考图2,通过将GART 326设置在芯片组320中,可以更为有效地处理和执行来自外围设备、如图形加速器335的入站事务。注意,与从主存储器325(例如DRAM)提取数据可能需要大约300至500毫微秒不同,从局部SRAM提取可以在大约30毫微秒或更短的时间内完成。示例性芯片组
简要描述了可采用本发明的示例性环境之后,将参考图4描述示例性芯片组实现。图4说明根据本发明的一个实施例的多个单元(例如芯片)中功能的示范性分配。在本实例中,芯片组320包括系统地址控制器(SAC)415、系统数据控制器(SDC)420、PCI扩展桥接器(PXB)425、图形扩展桥接器(GXB)410以及静态RAM(SRAM)405。
SAC 420连接到系统总线315的地址和控制部分(未示出)。SAC负责对系统总线315对适当I/O端口或主存储器325的存取进行转换和定向。它还作为入站通信量的路由代理,将其定向到对等I/O端口412或427、主存储器325或者系统总线315。
SDC连接到系统总线315上的数据信号(未示出),还通过存储器总线324和SAC 420连接到主存储器325。无论是从系统总线315到主存储器325,还是从I/O端口412或427之一到存储器或者在对等I/O端口412或427之间,所有要传递的数据都经过SDC。SAC 415和SDC 420之间的连接允许同时把数据传递至系统总线315和I/O端口412或427,从而使到各个系统代理者的可用带宽最大化。在另一个实施例中,SAC 420和SDC的功能可以组合成单个系统存储器和I/O控制器421或者分布在附加的集成电路上。
PXB 425提供I/O端口427、如F16总线与PCI总线340之间的总线协议桥接功能。单个PXB 425通常连接到一个I/O端口427并且构建两条33兆赫的32位PCI总线。或者,PXB 425可以支持单个64位PCI总线。计算机系统可包括多个PXB(通常为1至4个)。
GXB 410通过在I/O端口412与AGP总线330之间提供总线协议桥接功能,在I/O端口412、例如两条F16总线和AGP总线330之间构建桥接器。以这种方式,GXB 410为计算机系统添加了高性能的专用图形端口。可以在计算机系统中以具体例子说明多个GXB,从而构建多图形端口的工作站。GXB 410的主要功能是构建I/O端口412与AGP总线330之间的桥接器。简要地说,GXB 410实现此功能是通过从I/O端口412接收出站事务,将它们存储在内部,然后利用适当信号发送协议在AGP总线330上传递它们。相反地,GXB 410接收AGP总线330上发出的入站事务,也将它们存储在内部,转换与该入站事务相关的图形地址,并将所转换的入站事务发送到I/O端口412上。正如下面将进一步详细描述的,GXB 410通过访问存储在片内或片外SRAM 405中的GART 326来执行地址转换。通过图4的芯片组体系结构得到若干优点。首先,GXB 410与系统总线315以及相关的系统通信量隔离,从而消除了争用GXB 410资源的原因,免除了对相关的仲裁逻辑的需要。其次,因为GART 326驻留在GXB410中,地址转换处理不会影响主存储器通信量,且存储器总线324被更为有效地利用。另外,对GART 326的局部SRAM存取大约比GXB 410必须越过存储器总线324的情况快10倍。因此,最终结果是用于服务AGP总线330上事务的改进的协议桥接器。该改进的协议桥接器比上述目前的桥接技术更简单、更快速和更有效。下面将描述GXB 410的示例性内部划分。
注意,鉴于最近集成的趋势,设想可以将一个或多个GXB 410组件集成到单个集成电路(IC)上。此外,在备选实施例中,一个或多个GXB 410组件可与处理器和/或存储器集成到单个集成电路上。图形扩展桥接器的功能划分
现在将参考图5A描述将GXB 410的各种功能划分为特定单元的实例。图5A是说明根据本发明的一个实施例的图形扩展桥接器的功能单元中高级互连的简化框图。在本实例中,GXB 410包括AGP总线接口单元505、数据缓冲器单元510、事务排队单元515、GART单元520以及I/O端口接口单元525。AGP总线接口单元505可以基于66兆赫的32位PCI总线。实际应用中,为了易于实现,AGP总线接口单元505可以被进一步划分成核心PCI总线和添加AGP功能的增量逻辑。在AGP一侧,AGP总线接口单元505包括用于管理入站和出站事务之间的AGP总线330所有权的仲裁逻辑(未示出)。此外,AGP总线接口单元505提供总线控制信号和地址,使AGP数据能在AGP总线330上传递。AGP总线接口单元505还可以维持内部事务排队和数据缓冲器(未示出),以用于执行任何必需的流内重排序和用于保留某事务、直到在事务排队单元515中有足够的资源可用来服务于该事务。
正如下面进一步描述的,事务排队单元515实现用于入站和出站事务的一个或多个内部事务排队。缓冲器空间也可以在GXB 410中实现,以便支持各种数据缓冲需要。例如,数据缓冲器单元510可包括数据缓冲器,用于暂时在GXB 410内存储数据。数据缓冲器可作为用于各方向上的各事务类型的分立缓冲器或者作为公用缓冲器来实现。
如上所述,在目前的图形地址转换机制中,GART 126存储在主存储器125中。因此,在这种实现中,GART功能是靠近主存储器125来执行的。相反,根据本实施例,GART功能是在GXB 410内由GART单元520执行的。根据一个实施例,无论何时事务队列之一中驻留有效事务,GART单元就实现进栈模式并且转换事务。在这一点上,GART单元520负责从事务队列中接受入站事务并按照需要转换该事务。在所述实施例中,GART单元520耦合到包括GART 326的局部片外SRAM 405。或者,GART 326也可以存储在片内SRAM中。GART单元520还负责对SRAM 405的内容编程。在任何存取开始之前,SRAM 405应该被初始化为无效的或被编程。例如,每当启动新应用程序时,可以指定GART单元520来动态地对SRAM 405编程。可以通过从系统总线315发出编程存取请求来实现编程。
I/O端口接口单元525通过在一个或多个I/O端口上启动请求和数据传递来为一个或多个I/O端口提供接口。例如,根据一个实施例,I/O端口接口单元525对接两条F16总线。I/O端口接口单元525根据可用性和流优先权从保持事务排队单元515中保存的入站事务队列中删除事务,并通过适当的I/O端口412发送事务。如果该请求是写,则从数据缓冲器单元510中适当的缓冲器读取数据,也将其发送。对于出站事务,在保持在事务排队单元515中的适当出站事务队列中添加项目。如果需要的话,与出站事务相关的数据被交付到数据缓冲器单元510中适当的缓冲器中。
出于说明的目的,事务和与之相关的数据被划分为独立的单元。但是,还设想了各种其他替代实施例。例如,根据一个实施例,可以将相关的数据缓冲器和事务归为一组。因此,此处任何公开不应被认为把本发明限定于根据特定GXB功能划分的实施例。
图5B是说明根据本发明的一个实施例的图形扩展桥接器410的详细情况的简化框图。根据本实例,在AGP规范的精神中,高和低AGP和PCI流都被作为独立结构一直保持到I/O端口接口单元525。事务排队单元515包括AGP低优先权队列560、AGP高优先权队列565、PCI入站队列570、SAC入站控制逻辑580、SAC出站控制逻辑585以及PCI出站队列590。AGP总线接口单元505从AGP总线330接收入站AGP事务,并将它们添加到适当的队列560、565或570。例如,来自AGP总线330的入站PCI事务被AGP总线接口单元505指定到PCI入站队列570的路由。
SAC出站控制逻辑585从I/O端口412接收出站事务,并将它们排列到PCI出站队列590中。然后,PCI出站队列590被AGP总线接口单元505卸载。注意,因为出站事务不需要地址转换,所以它们不必经过GART单元520。
根据本实施例,GART单元520包括仲裁单元530、执行单元535以及回写单元540。仲裁单元530执行两个主要功能:(1)在来自配置控制单元595的AGP和PCI存取和SRAM存取(编程存取)之间仲裁;以及(2)产生SRAM地址(GART索引)。仲裁单元530的仲裁功能包括确定下一步将转换事务队列560、565和570开头那些事务中的哪一个。与事务队列560、565和570中入站事务相关的虚拟地址(在一个实施例中其宽度为40位)太宽,以致无法直接馈送到SRAM 405。因此,仲裁单元530的SRAM地址产生功能(GART索引产生功能)根据赢得仲裁的事务的虚拟地址确定SRAM地址。仲裁单元530然后可以向执行单元535发出信息,使它应该断定用于SRAM操作(例如读或写)的适当控制信号。以此方式,执行单元535可以立即发出SRAM周期,而不必进一步处理地址。或者,仲裁单元530可以向执行单元535提供SRAM地址,而执行单元535可以组装一个完整的数据包,并将其发送到SRAM 405。
最好是,SRAM 405应该以流水线方式运行,并且每个时钟,仲裁单元530都应该能够提供要转换的下一个事务的地址,并且将下一个事务的可用性传达到执行单元535。
在一个实施例中,执行单元535通过在适当时间断定和取消SRAM控制信号来启动和控制各种SRAM操作。在一个替代实施例中,执行单元535可完成执行阶段,该阶段包括处理来自仲裁单元530的输入SRAM地址,以及通过将其发送到SRAM 405来执行它。当执行单元535接收了GART项目时,它们被用来执行地址转换或被废弃。如果GART项目所对应的入站事务地址在GART孔内,则该GART项目被用于执行地址转换。但是,如果入站事务地址在GART孔(例如,它是某个物理地址)以外,则放弃该GART项目,而且不执行地址转换。在一个替代实施例中,执行单元535可以保留旧的转换或者利用转换后备缓冲器以便于地址转换。而无论如何,“转换的地址”,例如原入站事务地址或物理地址会被提供给回写单元540。
回写单元540接收执行单元535提供的SRAM数据和使用信息,配置控制单元595将该数据格式化,并为其指定到正确目的地的路由(例如,事务排队单元515中的队列的一个项目)。例如,根据所述实施例,回写单元540负责以执行单元提供的转换地址重写入站事务的虚拟地址。高级事务处理
图6是在概念上说明根据本发明一个实施例的事务处理的高级流程图。在本实例中,在步骤610,接收到事务。然后在步骤620,根据事务类型判断是否执行地址转换。如果事务是入站事务(例如,从AGP总线330接收的事务),则事务处理继续进行步骤630。否则,如果事务是出站事务(例如,从一个或多个I/O端口412接收的事务),则事务处理继续进行步骤640。在步骤630,执行转换处理。虽然为了方便,可以投机性地从SRAM 410中提取GART项目,但是不是所有的入站事务都被转换。例如,指定超出AGP范围(例如,GART孔)的虚拟地址的入站事务将不被转换。在步骤640,出站事务绕过转换处理。最后,在步骤650,在适当总线上执行事务(例如,在一个或多个I/O端口412上执行入站事务,在AGP总线330上执行出站事务)。入站PCI写事务处理
最好,如图5B所示,GXB 410被配置为处理AGP总线330上接收的AGP事务和PCI事务,以便提供向后兼容级。通过GXB 410的处理流程,对于PCI、低优先权的AGP以及高优先权的AGP流中的每一个都非常类似。因此,此处将只描述示范性PCI事务的处理。
图7是说明根据本发明一个实施例的入站PCI写事务处理的流程图。在所述实例中,在步骤710,PCI周期运行在AGP总线330上,将PCI事务递送到GXB 410,之后是递送与该PCI事务相关的数据。在步骤720,把PCI事务缓存在PCI入站缓冲器570中。一旦赢得仲裁,与该PCI事务相关的虚拟地址被转换为主存储器325中的物理地址(步骤730),下面将进一步地说明。在步骤740,用转换的地址重写PCI事务的虚拟地址。由于检索GART项目的投机性,当不要执行转换时,转换的地址可能与虚拟地址相同。在任何情况下,在步骤750,把转换的PCI事务缓存在SAC入站缓冲器580中,直到可以在适当I/O端口412上执行该事务。最后,通过在I/O端口412上执行写周期来完成转换的PCI事务。出站PCI写事备处理
如上所述,出站事务不需要由GXB 410转换。为了进一步说明这一点,现在参考图8描述与出站PCI写事务相关的处理。根据此实例,在I/O端口412上执行写请求,PCI请求被接收并送到SAC出站控制逻辑585(步骤810和820)。与PCI请求相关的数据被传递到数据缓冲器单元510。在步骤840,一旦赢得仲裁时隙,通过在AGP总线330上执行写周期来完成出站PCI写事务。在成功完成出站PCI写事务之后,可以提供写完成指示(步骤850和860)。地址转换概述
图9在概念上说明根据本发明一个实施例的图形(虚拟)至物理地址空间的转换。简要地说,在此实例中,虚拟地址915包括AGP地址920和偏移量925。例如,虚拟地址915表示图形加速器335所使用的连续逻辑地址空间中的地址。AGP地址920、它的一部分或者由AGP地址920推导的其他信息被用于从GART 905中检索适当的项目。包含在GART项目内的信息标识了包含对应于虚拟地址915的物理地址的主存储器325中的物理页面。GART项目所标识的物理页面和与虚拟地址915间的偏移量925组合,从而构成主存储器地址930。对多种页面大小的支持
根据一个实施例,GXB 410支持主存储器325中两种不同的页大小。虚拟地址915的转换取决于相应的物理地址驻留于其中的页面大小。在一个实施例中,对于落在GART孔内的所有页面使用固定的页面大小(例如,4千字节或4兆字节),并且在系统引导期间,页面大小的指示被存储在GXB 410的控制寄存器中。目前,对于GART项目,AGP程序设计模型是采用4千字节页面设计的。通过允许更大的页面大小(例如,2兆字节、4兆字节等),GXB 410与高性能计算机系统兼容。
虽然上述GART孔中的所有页面不是一种大小就是另一种大小,但是在替代实施例中,GART孔可以同时包括不同大小的页面。在本实施例中,地址转换需要被动态地控制,如下所述。
图10A说明可用于查阅驻留在主存储器中的4千字节页面中的数据的示范性虚拟地址格式。根据本实施例,虚拟地址915是40位宽。AGP地址1020包含28位而偏移量1025包含12位。
图10B说明可用于查阅驻留在主存储器中的4兆字节页面中的数据的示范性虚拟地址格式。根据本实施例,虚拟地址915也是40位宽。但是,AGP地址1021被减少到18位而偏移量1025被增加到22位。设想各种其他的页面大小也是适用的。
图11A说明支持地址转换到主存储器中4千字节页面的示范性GART项目格式1105。在本实例中,项目1105有32位宽,包括奇偶位1115、相干位1120、有效位1125、新页面地址1130以及保留区1110。每个项目涵盖一个4千字节的页面。一兆字节就足以保存256K个项目或者总计1GB的用于4千字节页面的可转换空间。
奇偶位1115涵盖整个GART项目1105。它可以由硬件产生,经计算,使得包括奇偶位1115的1的总数合计为偶数或奇数。
相干位1120指示来自图形卡的通信量是否需要与系统总线315相干。下文会进一步讨论相干性。
有效位1125指示SRAM 405是否包含用于此项目的有效数据。如果有效位1125指示该数据对于该项目是有效的,则可以利用该项目进行地址转换。
在此实例中,新页面地址1130是24位宽。新页面地址1130包含主存储器325中包含所需物理地址的4千字节物理页面的起始地址。
图11B说明支持地址转换至主存储器中的4兆字节页面的示范GART项目格式。在此实例中,如上所述,项目1106是32位宽,包括奇偶位1116、相干位1121、有效位1126、新页面地址1131以及保留区1111和1136。每个项目涵盖一个4兆字节的页面。
如上所述,奇偶位1116涵盖整个GART项目1106,可以经计算使得包括奇偶位1116的1的总数合计为偶数或奇数。
相干位1121指示来自图形卡的通信量是否需要与系统总线315相干。下面将进一步讨论相干性。
有效位1126指示SRAM 405是否包含可供正讨论的项目使用的有效数据。如果有效位1126指示该数据对于该项目是有效的,则可以利用该项目进行地址转换。
在此实例中,新页面地址1131是14位宽。新页面地址1131包含主存储器325中的包含所需物理地址的4兆字节物理页面的起始地址。
在替代实施例中,位和字段的相关位置安排可能不同于图11A和图11B的实例所示。再者,在替代实施例中,项目的格式还可以包括指示目的页面大小(例如4千字节或4兆字节)的页面模式位,从而提供地址转换处理的动态控制。以此方式,可以同时支持一种以上的不同页面大小。相干性
来自图形卡(例如图形加速器335)的通信量可能要与系统总线325相干,也可能不要与之相干。根据一个实施例,相干性可在逐页基础上选择。出于公开的目的,“相干性”指地址出现在系统总线325上,使得一个或多个处理器305和310可以监听它们的高速缓存来获取该地址。如果纹理映射或其他图像数据被处理器标为写组合(WC),则该数据是不相干的。处理器的WC缓存器中命中的系统总线325上的地址不会被监听。或者,应用程序可能知道主存储器325中的数据未被处理器使用(例如,它来自磁盘),并且希望图形卡提取数据而不占用系统总线325的带宽,所以强制该存取为不相干。
如上所述,对于AGP范围中命中的所有AGP类型的存取,每个GART项目都有一位来确定该地址是否相干。对于AGP范围外的AGP类型的存取,可以从GXB 410的配置寄存器中读取信息(例如一个位相干指示符)来确定相干性。注意,相干性或不相干性适用于仅采用AGP协议的存取。采用PCI协议的存取始终是相干地进行的,无论它们是否命中转换表。
在上述说明书中,已经参考特定实施例描述了本发明。但是,显然,在不违背本发明更广精神和范围的前提下可以对其进行各种修改和变化。因此,说明书和附图应被看作说明性而非限定性的意义。

Claims (19)

1.一种输入/输出(I/O)扩展桥接器,它包括:
第一接口单元,它被配置成通过一个或多个I/O端口与系统存储器和I/O控制器耦合,所述第一接口单元使数据能通过所述一个或多个I/O端口传到计算机系统的主存储器或者从计算机系统的主存储器传出;
第二接口单元,它提供总线控制信号和地址,使数据能通过总线传到外围设备或者从外围设备传出;以及
地址转换单元,它与所述第一接口单元和所述第二接口单元耦合,所述地址转换单元通过访问包含所述计算机系统的主存储器中页面的物理地址的局部存储器来转换与所述第二接口上接收的事务相关的地址。
2.如权利要求1所述的I/O扩展桥接器,其特征在于:所述总线包括图形加速端口(AGP)总线。
3.如权利要求2所述的I/O扩展桥接器,其特征在于:所述局部存储器中包含图形地址重定位表(GART)。
4.如权利要求3所述的I/O扩展桥接器,其特征在于:所述局部存储器包括芯片内的静态随机存取存储器(SRAM)。
5.如权利要求3所述的I/O扩展桥接器,其特征在于:所述局部存储器包括芯片外的静态随机存取存储器(SRAM)。
6.如权利要求3所述的I/O扩展桥接器,其特征在于:所述GART包括多个分别与主存储器中页面相关的项目,所述项目包括标识是否在所述计算机系统的处理器总线上监听所述页面内地址的指示。
7.如权利要求3所述的I/O扩展桥接器,其特征在于:所述地址转换单元通过根据第一格式或第二格式解释所述GART中的项目来支持多种页面大小。
8.如权利要求7所述的I/O扩展桥接器,其特征在于:所述多种页面大小包括两个或两个以上的4千字节页面、2兆字节页面和4兆字节页面。
9.一种图形扩展桥接器,它包括:
第一接口单元,它被配置成通过一个或多个I/O端口与系统存储器和I/O控制器耦合,所述第一接口单元使数据能通过所述一个或多个I/O端口传到计算机系统的主存储器或者从计算机系统的主存储器传出;
图形加速端口(AGP)接口单元,它提供总线控制信号和地址,使数据能通过AGP总线传到外围设备或者从外围设备传出来;以及
地址转换单元,它与所述第一接口单元和所述AGP接口单元耦合,所述地址转换单元通过访问包含图形地址重定位表(GART)的芯片外静态随机存取存储器(SRAM)来转换与所述AGP总线上接收的入站AGP事务相关的图形地址,所述GART包括所述计算机系统的主存储器中页面的物理地址。
10.如权利要求9所述的图形扩展桥接器,其特征在于:所述GART包括多个分别与主存储器中页面相关的项目,而且所述项目包括标识是否在所述计算机系统的处理器总线上监听所述页面内地址的指示。
11.如权利要求9所述的I/O扩展桥接器,其特征在于:所述地址转换单元通过根据第一格式或第二格式解释所述GART中的项目来支持多种页面大小。
12.如权利要求11所述的I/O扩展桥接器,其特征在于:所述多种页面大小包括4千字节和4兆字节。
13.一种芯片组,它包括:
桥接装置,用于在一个或多个输入/输出(I/O)端口与图形加速端口(AGP)总线之间提供总线协议桥接功能,所述桥接装置被配置成根据存储在局部存储器中的图形地址重定位表(GART)、将与入站事务相关的虚拟地址转换为计算机系统的主存储器内的物理地址;以及
控制器装置,它与所述桥接装置耦合,并且被配置成与所述计算机系统的系统总线和存储器总线耦合,以便代表所述桥接装置执行往返于所述主存储器的数据传递。
14.一种芯片组,它包括:
图形扩展桥接器,它在一个或多个输入/输出(I/O)端口与图形加速端口(AGP)总线之间提供总线协议桥接功能,所述图形扩展桥接器被配置成根据存储在局部存储器中的图形地址重定位表(GART)、将与入站事务相关的虚拟地址转换为计算机系统的主存储器内的物理地址;以及
系统存储器和I/O控制器,它们与所述图形扩展桥接器耦合,并且被配置成与所述计算机系统的系统总线和存储器总线连接,所述系统存储器和I/O控制器被配置成代表所述图形扩展桥接器执行往返于所述主存储器的数据传递。
15.一种在桥接器中转换输入/输出(I/O)事务的方法,所述方法包括以下步骤:
所述桥接器接收局部I/O总线上的I/O事务;
确定与所述I/O事务相关的地址和偏移量;
根据所述地址从地址转换表中检索项目,所述地址转换表被存储在与所述桥接器直接耦合的局部存储器中;以及
根据所述项目和所述偏移量形成标识计算机系统的主存储器中的位置的物理地址。
16.如权利要求15所述的方法,其特征在于:所述局部I/O总线包括图形加速端口(AGP)总线,以及所述桥接器接收局部I/O总线上的I/O事务的步骤包括所述桥接器接收所述AGP总线上的AGP事务。
17.如权利要求15所述的方法,其特征在于:所述局部存储器包括静态随机存取存储器(SRAM)。
18.如权利要求15所述的方法,其特征在于所述方法还包括以下步骤:
确定所述位置是在所述主存储器中的4千字节的页面内还是在4兆字节的页面内;以及
根据所述确定步骤的结果解释所述项目。
19.如权利要求15所述的方法,其特征在于:所述方法还包括确定对所述物理地址的存取是相干还是不相干的步骤。
CNB008147264A 1999-08-30 2000-08-18 靠近局部输入/输出总线的桥接器中的输入/输出地址转换装置及方法 Expired - Fee Related CN1213374C (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US09/385,209 1999-08-30
US09/385,209 US6457068B1 (en) 1999-08-30 1999-08-30 Graphics address relocation table (GART) stored entirely in a local memory of an expansion bridge for address translation

Publications (2)

Publication Number Publication Date
CN1382277A true CN1382277A (zh) 2002-11-27
CN1213374C CN1213374C (zh) 2005-08-03

Family

ID=23520487

Family Applications (1)

Application Number Title Priority Date Filing Date
CNB008147264A Expired - Fee Related CN1213374C (zh) 1999-08-30 2000-08-18 靠近局部输入/输出总线的桥接器中的输入/输出地址转换装置及方法

Country Status (10)

Country Link
US (2) US6457068B1 (zh)
EP (1) EP1208443B1 (zh)
JP (1) JP4607405B2 (zh)
KR (1) KR100432470B1 (zh)
CN (1) CN1213374C (zh)
AU (1) AU6789800A (zh)
DE (1) DE60026539T2 (zh)
HK (1) HK1043222B (zh)
TW (1) TW552515B (zh)
WO (1) WO2001016772A1 (zh)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN100345136C (zh) * 2004-06-30 2007-10-24 中国科学院计算技术研究所 使64位处理器兼容32位桥接芯片的系统及转换装置
CN100445964C (zh) * 2002-12-27 2008-12-24 英特尔公司 用于后期重映射虚拟机存储器页面的机制
CN101414970B (zh) * 2008-11-26 2011-11-30 中兴通讯股份有限公司 Ioc模块分配方法及io交换器
CN102339267A (zh) * 2010-06-04 2012-02-01 英特赛尔美国股份有限公司 I2c地址转换
CN103092797A (zh) * 2012-12-13 2013-05-08 中国航空无线电电子研究所 离散量接口同步控制装置、离散量采集及输出控制方法
CN104239124A (zh) * 2008-12-31 2014-12-24 英特尔公司 将用于虚拟化引擎的指令分页调度到本地存储设备

Families Citing this family (36)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6457068B1 (en) * 1999-08-30 2002-09-24 Intel Corporation Graphics address relocation table (GART) stored entirely in a local memory of an expansion bridge for address translation
US6785759B1 (en) * 2000-05-10 2004-08-31 International Business Machines Corporation System and method for sharing I/O address translation caching across multiple host bridges
US6789154B1 (en) * 2000-05-26 2004-09-07 Ati International, Srl Apparatus and method for transmitting data
US6748512B2 (en) * 2000-12-08 2004-06-08 Intel Corporation Method and apparatus for mapping address space of integrated programmable devices within host system memory
US7009618B1 (en) * 2001-07-13 2006-03-07 Advanced Micro Devices, Inc. Integrated I/O Remapping mechanism
US7069442B2 (en) 2002-03-29 2006-06-27 Intel Corporation System and method for execution of a secured environment initialization instruction
JP2004087867A (ja) * 2002-08-28 2004-03-18 Renesas Technology Corp 半導体集積回路装置
GB0301448D0 (en) * 2003-01-22 2003-02-19 Falanx Microsystems As Microprocessor systems
US6874042B2 (en) * 2003-03-11 2005-03-29 Dell Products L.P. System and method for using a switch to route peripheral and graphics data on an interconnect
US7073010B2 (en) * 2003-12-02 2006-07-04 Super Talent Electronics, Inc. USB smart switch with packet re-ordering for interleaving among multiple flash-memory endpoints aggregated as a single virtual USB endpoint
US7411591B2 (en) * 2003-12-24 2008-08-12 Intel Corporation Graphics memory switch
US7296139B1 (en) 2004-01-30 2007-11-13 Nvidia Corporation In-memory table structure for virtual address translation system with translation units of variable range size
US7278008B1 (en) 2004-01-30 2007-10-02 Nvidia Corporation Virtual address translation system with caching of variable-range translation clusters
US7334108B1 (en) 2004-01-30 2008-02-19 Nvidia Corporation Multi-client virtual address translation system with translation units of variable-range size
US7496706B2 (en) * 2004-06-30 2009-02-24 Intel Corporation Message signaled interrupt redirection table
US8533777B2 (en) 2004-12-29 2013-09-10 Intel Corporation Mechanism to determine trust of out-of-band management agents
US7469312B2 (en) * 2005-02-24 2008-12-23 International Business Machines Corporation Computer system bus bridge
US20060190655A1 (en) * 2005-02-24 2006-08-24 International Business Machines Corporation Apparatus and method for transaction tag mapping between bus domains
US7339591B2 (en) * 2005-03-10 2008-03-04 Microsoft Corporation Method to manage graphics address remap table (GART) translations in a secure system
US7370137B2 (en) * 2005-06-06 2008-05-06 Intel Corporation Inter-domain data mover for a memory-to-memory copy engine
US20070005865A1 (en) * 2005-06-29 2007-01-04 Spry Bryan L Enforcing global ordering using an inter-queue ordering mechanism
US7814279B2 (en) * 2006-03-23 2010-10-12 International Business Machines Corporation Low-cost cache coherency for accelerators
US20080028181A1 (en) * 2006-07-31 2008-01-31 Nvidia Corporation Dedicated mechanism for page mapping in a gpu
WO2008033963A2 (en) * 2006-09-12 2008-03-20 Boa Technology, Inc. Closure system for braces, protective wear and similar articles
US20080259556A1 (en) * 2007-04-20 2008-10-23 Tracy Mark S Modular graphics expansion system
US20090157949A1 (en) * 2007-12-18 2009-06-18 Leibowitz Robert N Address translation between a memory controller and an external memory device
US7904693B2 (en) * 2008-02-01 2011-03-08 International Business Machines Corporation Full virtualization of resources across an IP interconnect using page frame table
US7900016B2 (en) * 2008-02-01 2011-03-01 International Business Machines Corporation Full virtualization of resources across an IP interconnect
JP2011118732A (ja) * 2009-12-04 2011-06-16 Yokogawa Electric Corp I/oノード
US8793439B2 (en) * 2010-03-18 2014-07-29 Oracle International Corporation Accelerating memory operations using virtualization information
CN102880587B (zh) * 2012-10-09 2014-12-24 无锡江南计算技术研究所 基于嵌入式加速核心的独立显卡架构
JP6385761B2 (ja) * 2014-09-02 2018-09-05 株式会社メガチップス バスブリッジ及びバスブリッジ群
JP6593222B2 (ja) * 2016-02-23 2019-10-23 富士通株式会社 情報処理装置、演算処理装置及び情報処理装置の制御方法
US10372663B2 (en) * 2017-07-25 2019-08-06 Qualcomm Incorporated Short address mode for communicating waveform
CN109413122B (zh) * 2017-08-16 2022-05-13 深圳市中兴微电子技术有限公司 一种数据处理方法、网络处理器及计算机存储介质
TWI720345B (zh) * 2018-09-20 2021-03-01 威盛電子股份有限公司 多核心系統的內連線結構

Family Cites Families (30)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH01181163A (ja) 1988-01-13 1989-07-19 Seiko Instr & Electron Ltd 図形表示システム
US5072369A (en) 1989-04-07 1991-12-10 Tektronix, Inc. Interface between buses attached with cached modules providing address space mapped cache coherent memory access with SNOOP hit memory updates
US5335329A (en) 1991-07-18 1994-08-02 Texas Microsystems, Inc. Apparatus for providing DMA functionality to devices located in a bus expansion chassis
WO1994016391A1 (en) 1992-12-31 1994-07-21 Intel Corporation Bus to bus interface with address translation
US5479627A (en) * 1993-09-08 1995-12-26 Sun Microsystems, Inc. Virtual address to physical address translation cache that supports multiple page sizes
US5606683A (en) * 1994-01-28 1997-02-25 Quantum Effect Design, Inc. Structure and method for virtual-to-physical address translation in a translation lookaside buffer
EP0674269B1 (en) * 1994-03-24 2001-12-19 Hewlett-Packard Company, A Delaware Corporation Translation mechanism for input/output addresses
US6029224A (en) * 1995-06-07 2000-02-22 Lucent Technologies Inc. Self-contained memory apparatus having diverse types of memory and distributed control
US5937436A (en) * 1996-07-01 1999-08-10 Sun Microsystems, Inc Network interface circuit including an address translation unit and flush control circuit and method for checking for invalid address translations
US5983332A (en) * 1996-07-01 1999-11-09 Sun Microsystems, Inc. Asynchronous transfer mode (ATM) segmentation and reassembly unit virtual address translation unit architecture
US5857080A (en) 1996-09-10 1999-01-05 Lsi Logic Corporation Apparatus and method for address translation in bus bridge devices
US6141701A (en) * 1997-03-13 2000-10-31 Whitney; Mark M. System for, and method of, off-loading network transactions from a mainframe to an intelligent input/output device, including off-loading message queuing facilities
US5857086A (en) * 1997-05-13 1999-01-05 Compaq Computer Corp. Apparatus method and system for peripheral component interconnect bus using accelerated graphics port logic circuits
US6249853B1 (en) * 1997-06-25 2001-06-19 Micron Electronics, Inc. GART and PTES defined by configuration registers
US6195734B1 (en) * 1997-07-02 2001-02-27 Micron Technology, Inc. System for implementing a graphic address remapping table as a virtual register file in system memory
US5999743A (en) * 1997-09-09 1999-12-07 Compaq Computer Corporation System and method for dynamically allocating accelerated graphics port memory space
US5914730A (en) * 1997-09-09 1999-06-22 Compaq Computer Corp. System and method for invalidating and updating individual GART table entries for accelerated graphics port transaction requests
US5914727A (en) 1997-09-09 1999-06-22 Compaq Computer Corp. Valid flag for disabling allocation of accelerated graphics port memory space
US5933158A (en) * 1997-09-09 1999-08-03 Compaq Computer Corporation Use of a link bit to fetch entries of a graphic address remapping table
US5949436A (en) * 1997-09-30 1999-09-07 Compaq Computer Corporation Accelerated graphics port multiple entry gart cache allocation system and method
US5905509A (en) * 1997-09-30 1999-05-18 Compaq Computer Corp. Accelerated Graphics Port two level Gart cache having distributed first level caches
US6130680A (en) * 1997-12-01 2000-10-10 Intel Corporation Method and apparatus for multi-level demand caching of textures in a graphics display device
WO1999034293A1 (en) * 1997-12-30 1999-07-08 Micron Technology, Inc. Accelerated graphics port for multiple memory controller computer system
US6252612B1 (en) * 1997-12-30 2001-06-26 Micron Electronics, Inc. Accelerated graphics port for multiple memory controller computer system
US7007126B2 (en) * 1998-02-13 2006-02-28 Intel Corporation Accessing a primary bus messaging unit from a secondary bus through a PCI bridge
US6199145B1 (en) * 1998-02-27 2001-03-06 Intel Corporation Configurable page closing method and apparatus for multi-port host bridges
US6145030A (en) * 1998-03-27 2000-11-07 Intel Corporation System for managing input/output address accesses at a bridge/memory controller
US6192455B1 (en) * 1998-03-30 2001-02-20 Intel Corporation Apparatus and method for preventing access to SMRAM space through AGP addressing
US6326973B1 (en) * 1998-12-07 2001-12-04 Compaq Computer Corporation Method and system for allocating AGP/GART memory from the local AGP memory controller in a highly parallel system architecture (HPSA)
US6457068B1 (en) * 1999-08-30 2002-09-24 Intel Corporation Graphics address relocation table (GART) stored entirely in a local memory of an expansion bridge for address translation

Cited By (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN100445964C (zh) * 2002-12-27 2008-12-24 英特尔公司 用于后期重映射虚拟机存储器页面的机制
US8195914B2 (en) 2002-12-27 2012-06-05 Intel Corporation Mechanism for remapping post virtual machine memory pages
CN100345136C (zh) * 2004-06-30 2007-10-24 中国科学院计算技术研究所 使64位处理器兼容32位桥接芯片的系统及转换装置
CN101414970B (zh) * 2008-11-26 2011-11-30 中兴通讯股份有限公司 Ioc模块分配方法及io交换器
CN104239124A (zh) * 2008-12-31 2014-12-24 英特尔公司 将用于虚拟化引擎的指令分页调度到本地存储设备
CN104239124B (zh) * 2008-12-31 2017-09-29 英特尔公司 将用于虚拟化引擎的指令分页调度到本地存储设备
CN102339267A (zh) * 2010-06-04 2012-02-01 英特赛尔美国股份有限公司 I2c地址转换
CN102339267B (zh) * 2010-06-04 2016-01-20 英特赛尔美国股份有限公司 I2c地址转换
US9477634B2 (en) 2010-06-04 2016-10-25 Intersil Americas LLC I2C address translation
CN103092797A (zh) * 2012-12-13 2013-05-08 中国航空无线电电子研究所 离散量接口同步控制装置、离散量采集及输出控制方法
CN103092797B (zh) * 2012-12-13 2016-02-03 中国航空无线电电子研究所 离散量接口同步控制装置、离散量采集及输出控制方法

Also Published As

Publication number Publication date
KR20020064280A (ko) 2002-08-07
US6618770B2 (en) 2003-09-09
KR100432470B1 (ko) 2004-05-20
HK1043222A1 (en) 2002-09-06
US20020129187A1 (en) 2002-09-12
CN1213374C (zh) 2005-08-03
HK1043222B (zh) 2006-06-30
JP4607405B2 (ja) 2011-01-05
AU6789800A (en) 2001-03-26
US6457068B1 (en) 2002-09-24
EP1208443A1 (en) 2002-05-29
EP1208443B1 (en) 2006-03-08
TW552515B (en) 2003-09-11
DE60026539D1 (de) 2006-05-04
JP2003508850A (ja) 2003-03-04
WO2001016772A1 (en) 2001-03-08
DE60026539T2 (de) 2006-08-17

Similar Documents

Publication Publication Date Title
CN1213374C (zh) 靠近局部输入/输出总线的桥接器中的输入/输出地址转换装置及方法
US6750870B2 (en) Multi-mode graphics address remapping table for an accelerated graphics port device
JP4926947B2 (ja) システムメモリへのgpuのレンダリング
US5914730A (en) System and method for invalidating and updating individual GART table entries for accelerated graphics port transaction requests
US6813653B2 (en) Method and apparatus for implementing PCI DMA speculative prefetching in a message passing queue oriented bus system
US6076139A (en) Multimedia computer architecture with multi-channel concurrent memory access
US5359715A (en) Architectures for computer systems having multiple processors, multiple system buses and multiple I/O buses interfaced via multiple ported interfaces
US6326973B1 (en) Method and system for allocating AGP/GART memory from the local AGP memory controller in a highly parallel system architecture (HPSA)
US7383412B1 (en) On-demand memory synchronization for peripheral systems with multiple parallel processors
US5936640A (en) Accelerated graphics port memory mapped status and control registers
US5990914A (en) Generating an error signal when accessing an invalid memory page
JP3403284B2 (ja) 情報処理システム及びその制御方法
US20020118204A1 (en) System of accessing data in a graphics system and method thereof
CN1010809B (zh) 页式存储器中数据的存取装置和方法
US20060294321A1 (en) Communication registers for processing elements
EP1894110A2 (en) Memory micro-tiling
JPH11167523A (ja) コンピュータ・システム
US6957280B2 (en) Streamlining ATA device initialization
EP0745941B1 (en) A system and method for providing a flexible memory hierarchy
EP1839148A2 (en) Transferring data between system and storage in a shared buffer
CN1282087C (zh) 远程数据存取方法及使用该方法的计算机
KR100816108B1 (ko) 가상 그래픽 메모리 어드레스를 물리적 메모리 어드레스로변환하는 장치, 시스템 및 방법
US6546449B1 (en) Video controller for accessing data in a system and method thereof
CN1299099A (zh) 桥装置
CN115757224A (zh) 一种双cpu结合直接存取内存数字电路系统

Legal Events

Date Code Title Description
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
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
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20050803

Termination date: 20160818