存取方法以及共享存储器系统技术方案

技术编号:7123795 阅读:302 留言:0更新日期:2012-04-11 18:40
存取方法以及共享存储器系统,用来提供各种系统与方法来存取图形处理单元中的共享存储器。其中一实施例包括判断将读取自共享存储器的数据是否对齐共享存储器的边界,其中,数据包括多个数据区块。判断即将被安排来处理的数据区块所采用的拌和类型。根据数据是否对齐共享存储器的边界且根据判断获得的拌和类型,决定执行一或多个环绕功能的顺序。通过执行一或多个环绕功能以及读取多个数据区块来存取共享存储器,以根据拌和类型来建立数据。

【技术实现步骤摘要】

本专利技术涉及一种在图形处理单元(graphics processing unit, GPU)中的图形管线(pipeline),特别涉及一种在图形处理单元内执行共享存储器存取的系统与方法。
技术介绍
计算机图形处理系统处理大量的数据,其中包括纹理数据(texture data)。纹理是一个数字图像,通常为矩形,其具有一个(U,ν)坐标空间。纹理的最小可寻址单元是一纹理图像单元(texel),根据其位置分配到一特定(u,ν)坐标。在一纹理映射(texture mapping)操作中,当提供一图形模型以建立一目标图像时,纹理被映射在此图形模型的表面。在此目标图像中,像素设置在(X,y)坐标系统上的特定坐标。纹理映射的目的是在物件的表面上提供逼真的外观。MICROSOFT 所提出的Direct3D 11规格定义了新类型的着色器/渲染器 (shader),即已知的运算着色器(compute shader),其提供多线程(multi-thread)支持以帮助图形进阶应用的发展,例如视频游戏。运算着色器提供了对于例如在图形处理器中所使用的单指令多数据(singleinstruction/multiple data, SIMD)内核的运算功率与频宽的存取。运算着色器被调用作为多线程,其中,这些线程被划分为多个线程组。当存在同步化操作以提供线程执行的安排时,此同步化手段可以是频宽与存储器的加强行为。
技术实现思路
本专利技术提供一种存取方法,用以存取图形处理单元中的共享存储器。此存取方法包括判断将读取自共享存储器的数据是否对齐共享存储器的边界,其中,数据包括多个数据区块。此存取方法还包括判断即将被安排来处理的数据区块所采用的拌和类型。根据数据是否对齐共享存储器的边界且根据判断获得的拌和类型,决定执行一或多个环绕功能的顺序。此存取方法还包括通过执行一或多个环绕功能以及读取多个数据区块来存取共享存储器,以根据拌和类型来建立数据。本专利技术也提供一种共享存储器系统。此共享存储器系统包括共享存储器与存储器控制器。共享存储器其耦接运算着色器以及在图形处理单元(graphics processing unit, GPU)管线中的多个元件。存储器控制器判断关于共享存储器而将被存取的数据是否对齐共享存储器的边界,其中,此数据包括多个区块。存储器控制器包括拌和模块与存储器存取模块。拌和模块判断即将被安排来处理的多个数据区块所采用的类型。存储器存取模块则根据类型来存取共享存储器,其中,存储器存取模块使用一或多个环绕操作来存取该共享存储器。本专利技术还提供一种存取方法,用以存取图形处理单元中的共享存储器。此存取方法包括判断在共享存储器中将被处理的数据的类型,其中,数据被划分成多个存取槽、多个通道、以及多个跨步。根据此类型,决定执行多个存取槽环绕、多个通道环绕、以及多个跨步环绕中的一个或多个的顺序。此存取方法还包括根据此顺序来执行多个存取槽环绕、多个通道环绕、以及多个跨步环绕中的一个或多个。 附图说明图1表示根据本专利技术实施例的图形系统,在其中实施共享存储器;图2是表示图1的图形管线的各种元件;图3A及图;3B表示图1的共享存储器的各种元件;图4表示根据本专利技术一实施例,对应图1的共享存储器而执行存储器存取的方法;图5表示根据本专利技术另一实施例,对应图1的共享存储器而执行存储器存取的方法;图6表示将一对准的4x4像素区块由系统存储器载入共享存储器的示意图;图7表示使用存取槽环绕、通道环绕、以及跨步环绕来将一非对准的4x4像素区块由系统存储器载入共享存储器的示意图;以及图8-图14表示利用存取槽环绕、通道环绕、以及跨步环绕来存取图1的共享存储器的各种实施例。主要元件符号说明图 1 100 图形处理器系统; 101 系统存储器;102 图形处理器;104 计算内核;106 执行单元集用场控制与顶点/串流快取单元;108 图形管线;110 图形处理单元(GPU);112 共享存储器;图 2 202 输入组译器;204 顶点着色器;205 外壳着色器;206 镶嵌单元;207 域着色器;208 几何着色器;210 光栅处理器;212 像素着色器;214 一般目的(GP)着色器;216 显示装置;第3A-3B 图302 共通寄存器文件(CRF);304 存储器控制器;306 拌和模块;308 存储器存取模块; 310 输出拌和模块;图 4 402、404、406、408 步骤方块;图 5 502,504,506 步骤方块;图 6-图 7 5101 ‘ 系统存储器;112 共享存储器702 ‘ 数据区块702;图8--图 14 101 ‘ 系统存储器;112 共享存储器310 ‘ 输出拌和模块;。具体实施例方式为使本专利技术的上述目的、特征和优点能更明显易懂,下文特举一优选实施例,并配合附图,作详细说明如下。已知设备在存取图形管线上的共享存储器方面的已知缺点是,当典型地逐个撷取数据的区块以建立需要的区块时,存取非对齐的数据可能需要多个存储器存取周期。在本专利技术中将叙述存取共享存储器以在图形管线中实行线程的系统与方法,其提供了在存取与运用可变的数据尺寸的适应性,而减少所需的存储器周期数量,其中此可变的数据尺寸是跨越存储于图形处理单元(graphics processing unit, GPU)的共享存储器内的多个通道 (lane)。共享存储器系统的示范实施例被配置给在线程实行期间的存储器读取/写入操作,且包括划分成多个存储器库与偏移量的一随机存取存储器(RAM)。在线程实行时,所述的共享存储器系统可在如同线程启动及线程同步的操作期间中被使用。在视频解码期间,例如数据可能需要根据特定类型来被读取且配置,使得可能需要拌和(swizzling)操作。此外,非对齐的数据区块可能被撷取,其偏移量与存储器库边界或是配置在共享存储器内的像素区块没有对齐。为了说明,参阅图7,其显示一个4x4像素区块的2维阵列。在一些情况下,将被存取的数据区块702可能与多个4x4像素区块部分重叠,因此其被描述成一非对齐数据区块,这是因为数据区块702没有完全地位于一特定4x4 像素区块中。在图7的非限制的例子中,非对齐的4x4像素区块702可能通过一系列的存储槽、 通道、以及跨步环绕操作来存取,这些操作于后文说明。通过使用此处所述的各种共享存储器存取手段,可存取不同尺寸的非对齐数据区块。例如,一个16x1数据区块可被存取,且跨越多个通道的1x16区块也可被存取。通过使用所述的存储器存取手段,可用有效的方法来执行不同的尺寸数据的读取及写入。参阅图1,其表示根据本专利技术实施例的一图形平台(platform)的功能方块图,在其中实施根据本专利技术实施的一共享存储器系统。在一些实施中,图形处理系统100可配置为一计算机系统。图形处理器-系统100包括图形处理单元(GPU) 110,GPU 110还包括图形处理器102。图形处理器102也包括一多执行单元(multiple execution unit (EU))的计算内核104,计算内核104可以为一软件可编程内核处理器,且在一实施例中,计算内核 104包括一个一般目的(general propose, GP)的着色器。图形处理器102包括一执行单元集用场(ex本文档来自技高网...

【技术保护点】
1.一种存取方法,用以存取一图形处理单元中的一共享存储器,该存取方法包括:判断将读取自该共享存储器的一数据是否对齐该共享存储器的一边界,其中,该数据包括多个数据区块;判断即将被安排来处理的所述数据区块所采用的一拌和类型;根据该数据是否对齐该共享存储器的该边界且根据判断获得的该拌和类型,决定执行一或多个环绕功能的一顺序;以及通过执行该或所述环绕功能以及读取所述数据区块来存取该共享存储器,以根据该拌和类型来建立该数据。

【技术特征摘要】
...

【专利技术属性】
技术研发人员:焦阳
申请(专利权)人:威盛电子股份有限公司
类型:发明
国别省市:71

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1