图形处理器的交织虚拟本地存储器的制作方法

文档序号:6569041阅读:217来源:国知局
专利名称:图形处理器的交织虚拟本地存储器的制作方法
技术领域
本发明涉及图形处理器的虚拟本地存储器。更具体来说,本发明 涉及将包括系统存储器以及图形本地存储器中的地址位置的物理地址 空间用于图形处理器。
背景技术
对于当今的图形处理器,着重图形和视频的许多计算设备应用变 得复杂和存储器密集型。另外,由于移动性以及其它很多原因,许多 计算设备的大小和价格大幅减少。即使性能和价格因素表面上相互有 分歧,终端用户仍然期望适度^介;f各上的高图形性能。由于许多原因,适当价位的计算设备通常比高端设备的图形性能 低。 一个原因在于,设备中的中央处理器可能与图形处理器共享系统 存储器,从而节省存储器组件成本。高端图形系统通常具有它们自己 独立的图形本地存储器,图形本地存储器的存储大小比较小,但通常 具有远高于系统存储器的带宽。此外,图形密集应用越来越多地不仅 要求高性能存储器,而且还要求更大量的存储器。因此,当今的计算机用户在涉及计算设备上的图形性能时可以进行选择支付与图形本地存储器相关联的高费用,或者支付只有系统 存储器的计算设备的较少费用而损失图形性能。


作为实例来说明本发明,但本发明不受附图限制,图中相似的参 考标号表示相似的要素,附图包括图1是实现图形处理器的虚拟本地存储器的一个实施例的计算机系统的框图。图2是实现图形处理器的虚拟本地存储器的另一个实施例的计算 机系统的框图。图3是实现图形处理器的虚拟本地存储器的再一个实施例的计算机系统的框图。图4是实现图形处理器的虚拟本地存储器的又一个实施例的计算 机系统的框图。图5描述实现图形处理器的虚拟本地存储器的计算机系统的存储 器使用的一个实施例。图6是用于令图形处理器以随机、交织顺序来访问系统存储器和 图形本地存储器的方法的一个实施例的流程图。图7描述采用50%的图形本地存4诺器和50%的系统存储器分配的 虚拟图形本地存储器的一个实施例。图8描述采用75%的图形本地存储器和25%的系统存储器分配的 虚拟图形本地存储器的一个实施例。图9描述采用67%的图形本地存储器和33%的系统存储器分配的 虚拟图形本地存储器的 一 个实施例。
具体实施方式
公开了图形处理器的虚拟本地存储器的实施例。在以下描述中, 阐述了许多具体细节。但是要理解,即使没有这些具体细节也可实施 这些实施例。在其它情况下,没有详细论述7>知的元件、规范和协议, 以免影响对本发明的理解。实现图形处理器的虚拟本地存储器可有效地减轻要求用户在具有 图形本地存储器的计算设备的高费用或者仅具有系统存储器的计算设 备的低性能之间作出选择的问题。虚拟本地存储器的实施例允许图形 处理器具有同时利用图形本地存储器和系统存储器来建立图形成本与 性能的良好平衡的能力。通过使用例如1个通道的较少量图形存储器 以及系统存储器,虚拟本地存储器综合了例如2个通道的纯图形本地存储器的等效带宽。在最简单的VLM选择中, 一半所需带宽来自图 形本地存储器通道,以及一半所需带宽来自系统存储器。虚拟本地存储器的概念与统一存储器体系结构(系统+图形存储器) 相同,利用处理器和图形不会始终同时需要峰值带宽的事实,它将共 享处理器与图形之间的物理资源以降低成本。然而,虚拟本地存储器 与统一存储器体系结构具有两个重要的差别。首先,虚拟本地存储器增加可专用于图形的某种物理存储器,以 便减少所需的双倍数据速率(DDR)通道的数量。 一个图形双倍数据速 率(GDDR)通道处于1.5x与2X的DDR通道的速度(对于可比较的技术) 之间,并且易于适应平台以及具有比DDR存储器的2个替换通道更低 的成本。其次,虽然虚拟本地存储器共享处理器与图形之间的物理资 源,但它不共享地址空间。处理器和图形具有分离的地址空间。图1是实现图形处理器的虚拟本地存储器的一个实施例的计算机 系统的框图。在一个实施例中,计算机系统包含中央处理器100和芯 片组102。耦合到中央处理器100以及芯片组102的互连104用于这 两个代理之间的通信。互连104包括发送仲裁、地址、数据和控制信 息的特定互连线(未示出)。在另一个实施例中,存在耦合到互连104 的多个中央处理器(在这个图中没有示出多个处理器)。在一个实施例中,集成到芯片组102上的系统存储控制器106对 中央处理器IOO提供通过互连110对系统存^l器子系统108的访问。 在一个实施例中,图形处理器112集成在芯片组102上。此外,在一 个实施例中,同样集成到芯片组102上的图形本地存储控制器114对 图形处理器112提供通过互连118对图形本地存储器子系统116的访 问。在一个实施例中,计算机系统具有系统存储器108的两个通道(Ch 1和Ch2)以及图形本地存储器116的两个通道(Ch 1和Ch 2)。在不同 的实施例中,系统存储控制器106可耦合到系统存储器的一个、两个、 三个、四个或更多通道,以及图形本地存储控制器114可耦合到图形 本地存储器的一个、两个、三个、四个或更多通道。互连110和118包括发送仲裁、地址、数据和控制信息的特定互连线(未示出)。信息、指令和其它数据可存储在系统存储器108的通道1和2中,供中夹处 理器100、图形处理器112以及其它许多可能的设备使用。此外,信 息、指令和其它数据可存储在图形本地存储器114的通道1和2中, 供图形处理器110使用。在另一个实施例中,不存在图形本地存储器 114,因此,系统存储器108的通道1和2是图形处理器112可使用的 唯一存储器存储。这种配置对于图形存储器性能不是最佳的,因为互 连110是图形处理器112与系统存储器108之间的唯一链路。在这个 实施例中,互连IIO和系统存储器108与中央处理器共享,因此,图 形处理器112没有任何专用存储器通道,也没有快速存储器(对于相等 宽度的接口,系统存储器一般具有比图形本地存储器低的带宽)。因此, 有益的是令图形处理器112将一个或多个专用图形本地存储器通道用 于性能目的。因此,在一个实施例中,计算机系统具有图形本地存储器,以及 图形处理器112仅将图形本地存储器116用于信息存储。为了对图形 处理器提供足够的存储器带宽,可能需要两个或两个以上图形本地存 储器通道,因而没有来自存储器的性能限制。对于相等宽度的接口, 图形本地存储器一般具有比系统存储器更高的带宽(如上所述),因此 它的每兆字节通常比等量的系统存储器更昂贵。因此,这种解决方案 对于图形存储器性能是有益的,但一般比仅实现系统存储器的实施例 具有更高的成本。因此,在另一个实施例中,图形处理器112利用系统存储器108 以及图形本地存储器116来存储信息。在这个实施例中,图形处理器 112获益于通过一个或多个系统存储器通道所补充的一个或多个图形 本地存储器通道的速度,从而降低所需图形本地存储器通道的整体数 量。因此,利用系统存储器带宽来补充图形本地存储器带宽允许计算 机系统具有较少的图形本地存储器,同时保持相同的总图形带宽要求 来维持性能。图2是实现图形处理器的虚拟本地存储器的另一个实施例的计算机系统的框图。图1中的计算机系统的描述在大多数情况下也适用于图2。此外,图2描述单芯片系统。在这个实施例中,中央处理器202 和芯片组204驻留在同一个芯片200上。否则,图2中的计算机系统 以类似于图1中详细描述的计算机系统的方式运行。图3是实现图形处理器的虚拟本地存储器的再一个实施例的计算 机系统的框图。图1中的计算机系统的描述在大多数情况下也适用于 图3。此外,图3描述在单芯片300上结合了中央处理器302和图形 处理器304的计算机系统。中央处理器302和图形处理器304通过互 连308与芯片组306进行通信。系统存储控制器310和图形本地存储 控制器316均设置在芯片组306上,以便分别提供通过互连314对系 统存储器的访问以及通过互连320对图形本地存储器318的访问。图4是实现图形处理器的虚拟本地存储器的又一个实施例的计算 机系统的框图。在一个实施例中,计算机系统包含中央处理器400。 在这个实施例中,系统存储控制器402集成到中央处理器400上,以 便提供通过互连406对系统存储器404的访问。在一个实施例中,计 算机系统还包含芯片组408。互连410提供中央处理器400与芯片组 408之间的通信链路。在一个实施例中,图形处理器412集成在芯片 组408上。在一个实施例中,图形本地存储控制器也集成到芯片组408 上,以便提供通过互连418对图形本地存储器416的访问。互连406、 410和418全部用于代理之间的通信。这些互连包括发送仲裁、地址、 数据和控制信息的特定互连线(未示出)。同样在另一个实施例中,存 在设置于计算机系统中并耦合到互连406、 410的多个中央处理器(在 这个图中没有示出多个处理器)。在另 一个实施例中,图形处理器和图形本地存储控制器均与中央 处理器设置在相同的集成芯片上(未示出)。在这个实施例中,图形本 地存储器具有到这个集成芯片的直接互连。在这个实施例中,系统存 储控制器设置在芯片组上,以及系统存储器具有到该芯片组的直接互 连。另外,在这个实施例中,集成芯片(包含中央处理器、图形处理器 和图形本地存储控制器)通过耦合到两种设备的公共互连与芯片组(包含系统存储控制器)进行通信。图5描述实现图形处理器的虚拟本地存储器的计算机系统的存储 器使用的一个实施例。在这个示例实施例中,图形处理器具有对图形 本地存储器通道1以及图形本地存储器通道2(如对于两个通道采用交 叉阴影线的位置O到X表示)的单独使用权。另外,图形处理器具有对系统存储器的一部分(如对于两个通道采用交叉阴影线的位置m到 m+n表示)的单独使用权。因此,在这个实施例中,在各系统存储器通 道中以位置m开始,n个系统存储位置的块被保留,供图形处理器单 独使用。图形虚拟本地存储器地址空间表明在左侧的、图形处理器知 道的虚拟地址位置(在这个实例中为0-z)以及在右侧的、与图形本地存 储器通道和系统存储器通道中的实际位置相对应的物理地址位置。因 此,虚拟地址0对应于图形本地存4诸器通道1-地址0,虚拟地址1对 应于图形本地存储器通道2-地址0,虚拟地址3对应于系统存储器通 道1-地址m,依此类推。在这种情况下 n=x。 在这个实例中,对于线 性访问流,图形处理器访问图形本地存储器平均占所有存储器存取的 50%,以及访问系统存储器占所有存储器存取的其余50%。百分比根 据在这个示例实施例中实现的虚拟存储空间使用情况来估计。对系统 存储器和图形本地存储器的访问才莫式是平均的,因为没有使它们准确 的基于时间的顺序才莫式。如果所有虚拟存储位置被装载,并且存在对 所有虚拟存储位置访问相同次数的均匀访问模式,则存储器通道访问 百分比通常是准确的。在现实世界应用中,均匀访问模式很少是这种 情况,因此平均访问百分比根据虚拟地址空间中的图形本地存储器通 道位置和系统存储器通道位置的分布来估计。因此,这些平均访问百 分比表示由图形处理器对一个或多个系统存储器通道和一个或多个图 形本地存储器通道的交织访问才莫式。图形本地存储器与系统存储器之 间的带宽的分配是其结果。本领域的技术人员会理解,地址交织可一 般化为超过所示的单元位置粒度而包括其它交织粒度,例如超过所示 的单元位置粒度2个位置的块。图6是用于令图形处理器以随机、交织顺序来访问系统存储器和图形本地存储器的方法的一个实施例的流程图。该方法通过可包括硬 件(电路、专用逻辑等)、软件(例如运行于通用计算机系统或专用机器 上的)或者它们两者的结合的处理逻辑来执行。在一个实施例中,处理逻辑设置在具有集成图形处理器的芯片组中。参照图6,该方法通过 处理逻辑接收对图形虚拟本地存储器地址空间中的位置的存储器存取 请求开始(处理框600)。随后,处理逻辑通过查找虚拟本地存储器地址 所表示的物理地址来处理存取请求(处理框602)。上文中参照图5描述 了物理地址与虚拟本地存储器地址之间的关系。然后,处理逻辑获得 查找结果,并确定所请求存取是对于系统存储器通道还^^"于图形本 地存储器通道(处理框604)。如果处理逻辑确定该存取是对于图形本地 存储器通道,则处理逻辑将虚拟地址转换为对应的图形本地存储器地 址并完成存储器存取(处理框606)。否则,如果处理逻辑确定该存取是 对于系统存储器通道,则处理逻辑将虚拟地址转换为对应的图形本地 存储器地址并完成存储器存取(处理框608),然后该过程完成。图7至图9描述虚拟地址空间中的图形本地存储器和系统存储器 可能的分配的不同示例实施例。图4中的计算^L系统的描述也适用于 图7-9中的计算机系统。图7-9具有图4所示的所有存储控制器和功能 性,但为了方便起见将它们进行简化。图7描述采用50%的图形本地存储器和50%的系统存储器分配的 虚拟图形本地存^f渚器的一个实施例。在这个实施例中,图形带宽的一 半来自图形处理器本地的存储器,以及另一半通过互连700来自系统 存储器。在一个实施例中,系统存储器702由DDR3(双倍数据速率3) 存储器的两个通道组成,以及图形本地存储器704由GDDR(图形双倍 数据速率)存储器的一个通道组成。在这个实施例的一个例示中,GDDR通道具有DDR3的各通道的双倍带宽容量供图形处理器使用 (即,如果GDDR为1个单位的带宽,则各DDR3为0.5个单位的带宽)。 因此,在这个例示中,50。/。的图形处理器的存储器带宽来自两个DDR3 系统存储器通道,以及另外50%来自一个GDDR图形本地存储器通道。 这个具体例示具有两个缺点各个图形存储器通道的峰值带宽必须是系统存储器的各通道的峰值带宽的两倍;以及当图形正使用全带宽时, 没有系统带宽可用于CPU。可通过采用系统存储器通道(例如DDR3) 和图形存储器通道(例如GDDR)速度的任何组合来解决第 一个缺点。 但是,在这种情况下,根据图形对系统存储器带宽的定量,系统存储 器或者图形存储器可能未充分利用。可通过使系统存储器通道的峰值 带宽大于图形存储器通道的峰值带宽的一半,来解决第二个缺点。这 样,当图形本地存储器^皮完全利用时,仍然存在从系统存储器通道可 得到的带宽容量来为CPU提供服务。图8描述采用75%的图形本地存储器和25%的系统存储器分配的 虚拟图形本地存储器的一个实施例。在这个示例实施例中,四分之三的带宽来自图形处理器本地的存储器,以及四分之一通过互连800来 自系统存储器。在这个示例实施例中,系统存储器802由DDR3存储 器的两个通道组成,以及图形本地存储器804由DDR存储器的一个通 道和GDDR存储器的一个通道组成。这个实施例增加了图形处理器本 地的更多存储器带宽,以便降低中央处理器上的干扰。在这个示例实施例中,GDDR通道具有图形本地存储器DDR通 道的双倍带宽容量供图形处理器使用(即,如果GDDR为1个单位的带 宽,则图形本地存储器DDR为0.5个单位的带宽)。这个本地存储器 DDR可能比GDDR更便宜,因为它具有更小带宽,同时也比系统存 储器通道便宜,因为比系统存储器需要更小的容量,因而需要更少的 存储设备。此外,各DDR3系统存储器通道提供图形本地存储器DDR 通道的一半带宽供图形处理器使用(即,如果图形本地存储器DDR为 0.5个单位的带宽,则各DDR3系统存储器通道提供0.25个单位的带 宽)。因此,在这个示例实施例中,25%的图形处理器的存储器带宽来 自两个DDR3系统存储器通道,以及另外75%来自GDDR图形本地存 储器通道和DDR图形本地存储器通道。在这个实例中,由于DDR3 通道仅提供总图形存储器带宽的25%,所以可能存在更多带宽可用于 CPU,因为DDR3通道峰值存储器带宽大约为GDDR通道峰值存储器 带宽的一半。其它变形例也是可行的,在其中,DDR本地图形存储器是比系统存储器更慢、更便宜的存储器,由此降低系统成本。图9描述采用67%的图形本地存储器和33%的系统存储器分配的 虚拟图形本地存储器的一个实施例。因此,在这个示例实施例中,三 分之二的带宽来自图形处理器本地的存储器,以及三分之一通过互连 900来自系统存储器。在这个示例实施例中,系统存储器902由DDR3 存储器的两个通道组成,以及图形本地存储器904由GDDR存储器的 两个通道组成。这个实施例又增加了图形处理器本地的更多存储器带 宽,以便改进图形性能。在这个示例实施例中,各个GDDR图形本地存储器通道具有各 DDR3系统存储器通道的双倍带宽容量供图形处理器使用(即,如果一 个GDDR通道为1个单位的带宽,则各DDR3通道为0.5个单位的带 宽)。因此,在这个示例实施例中,33%的图形处理器的存储器带宽来 自两个DDR3系统存储器通道,以及另外67%来自两个GDDR图形本 地存储器通道。如结合图7所述,这个实施例可一般化为具有GDDR 对DDR3通道带宽的任何比率。所示的所有选择可对于图1至图4所示并结合那些附图描述的拓 朴结构的任一个重复进行。这样,公开了图形处理器的虚拟本地存储器的实施例。参照其中 具体的示范性实施例描述了这些实施例。但是,获益于本公开的技术 人员很清楚,可在不背离本文所述实施例的广义精神及范围的前提下, 对这些实施例进行各种修改和改变。因此,说明书和附图要看作^Jlf 释性的而不是限制性的。
权利要求
1.一种设备,包括一个或多个图形本地存储器通道;一个或多个系统存储器通道;以及图形处理器,可用于以交织方式来访问所述一个或多个图形本地存储器通道以及所述一个或多个系统存储器通道。
2. 如权利要求l所述的设备,其特征在于,还包括中央处理器, 可用于访问所述一个或多个系统存^f诸器通道。
3. 如权利要求2所述的设备,其特征在于,所述图形处理器和所 述中央处理器各具有互斥的系统存储器地址空间。
4. 如权利要求l所述的设备,其特征在于,还包括耦合到所述图 形处理器和所述中央处理器的互连。
5. 如权利要求4所述的设备,其特征在于,所述一个或多个图形 本地存储器通道和所述一个或多个系统存储器通道耦合到所述图形处 理器。
6. 如权利要求4所述的设备,其特征在于,所述一个或多个图形 本地存储器通道和所述一个或多个系统存储器通道耦合到所述中央处 理器。
7. 如权利要求4所述的设备,其特征在于,所述一个或多个图形 本地存储器通道耦合到所述图形处理器,以及所述一个或多个系统存 储器通道耦合到所述中央处理器。
8. 如权利要求l所述的设备,其特征在于,还包括存储控制器, 可用于为所述图形处理器4是供对所述存储器通道的访问。
9. 如权利要求l所述的设备,其特征在于,所述图形处理器在物 理上设置在芯片组中。
10. 如权利要求1所述的设备,其特征在于,还包括两个或两个 以上图形本地存储器通道,其中,至少一个通道包括图形双倍数据速 率存储器,以及至少一个通道包括双倍数据速率存储器。
11. 一种方法,包括以下步骤图形处理器以交织方式来访问一 个或多个图形本地存储器通道以及一个或多个系统存储器通道。
12. 如权利要求11所述的方法,其特征在于,还包括以下步骤 中央处理器访问所述一个或多个系统存储器通道。
13. 如权利要求12所述的方法,其特征在于,所述图形处理器和 所述中央处理器各具有互斥的系统存储器地址空间。
14. 一种系统,包括 第一总线;耦合到所述总线的系统存储器; 笫二总线;耦合到所述第二总线的图形本地存储器; 耦合到所述第一总线和第二总线的图形处理器;以及 存储控制器,可用于通过以交织方式访问所述图形本地存储器和 所述系统存储器,来对所述图形处理器提供存储器存取。
15. 如权利要求14所述的系统,其特征在于,还包括可用于访问 所述一个或多个系统存储器通道的中央处理器。
16. 如权利要求15所述的系统,其特征在于,所述图形处理器和 所述中央处理器各具有互斥的系统存储器地址空间。
17. 如权利要求14所述的系统,其特征在于,所述系统存储器和 所述图形本地存储器还各包括一个或多个存储器通道。
全文摘要
公开了一种设备、方法和系统。在一个实施例中,设备包括一个或多个图形本地存储器通道;一个或多个系统存储器通道;以及图形处理器,可用于以交织方式来访问一个或多个图形本地存储器通道以及一个或多个系统存储器通道。
文档编号G06T1/60GK101273380SQ200680035206
公开日2008年9月24日 申请日期2006年9月26日 优先权日2005年9月30日
发明者R·奥斯博恩 申请人:英特尔公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1