《一种图形处理器的片上存储层次结构.pdf》由会员分享,可在线阅读,更多相关《一种图形处理器的片上存储层次结构.pdf(8页完整版)》请在专利查询网上搜索。
1、(10)申请公布号 (43)申请公布日 (21)申请号 201410752216.3 (22)申请日 2014.12.09 G06T 1/20(2006.01) G06T 1/60(2006.01) G06F 3/06(2006.01) (71)申请人 中国航空工业集团公司第六三一研 究所 地址 710119 陕西省西安市锦业二路 15 号 (72)发明人 田泽 张骏 许宏杰 黎小玉 卢俊 安博锋 (74)专利代理机构 西安智邦专利商标代理有限 公司 61211 代理人 张倩 (54) 发明名称 一种图形处理器的片上存储层次结构 (57) 摘要 一种图形处理器的片上存储层次结构, 采用 三层存。
2、储结构设计, 分别是 : 寄存器层、 片上 SRAM 层和显示存储器层。寄存器层与片上 SRAM 层相 连, 片上 SRAM 层与显示存储器层相连。寄存器层 可以直接对片上 SRAM 层进行数据读写访问, 也可 以通过片上 SRAM 层对显示存储器层进行访问 ; 片 上 SRAM 层可以直接对显示存储器层进行读写访 问。 通过上述三层片上存储层次设计, 不但能够隐 藏图形处理过程中的存储器访问延迟、 充分捕捉 图形处理数据访问的局部性, 还能够在图形处理 器进行存储器数据访问时实现高效的数据缓冲, 从而提升存储器数据带宽利用率。 (51)Int.Cl. (19)中华人民共和国国家知识产权局 (。
3、12)发明专利申请 权利要求书1页 说明书4页 附图2页 (10)申请公布号 CN 104504647 A (43)申请公布日 2015.04.08 CN 104504647 A 1/1 页 2 1.一种图形处理器的片上存储层次结构, 其特征在于 : 包括从上到下依次包括寄存器 层、 片上 SRAM 层和显示存储器层 ; 所述寄存器层直接对片上 SRAM 层进行数据读写访问, 同时通过片上 SRAM 层对显示存 储器层进行访问 ; 片上 SRAM 层直接对显示存储器层进行读写访问。 2.根据权利要求 1 所述的图形处理器的片上存储层次结构, 其特征在于 : 所述寄存器 层包括多个图形属性寄存器。
4、。 3.根据权利要求 2 所述的图形处理器的片上存储层次结构, 其特征在于 : 所述片上 SRAM 层包括多个高速缓冲器和至少一个图像数据缓冲器。 4.根据权利要求所述的图形处理器的片上存储层次结构, 其特征在于 : 所述显示存储 器层包括两个存储管理单元、 第一存储器和第二存储器, 所述存储管理单元包括两路独立 的第一访存仲裁与存储保护单元和第二访存仲裁与存储保护单元、 两路独立的第一存储控 制器和第二存储控制器 ; 所述第一存储控制器实现外部存储器芯片的数据访问和时序控制 ; 所述第一访存仲裁与存储保护单元根据片上 SRAM 层的缓冲器的访问请求, 第一控制 第一存储控制器从相应的第一存储。
5、器中读写数据 ; 所述第二访存仲裁与存储保护单元根据片上 SRAM 层的缓冲器的访问请求, 控制第二 存储控制器从相应的第二存储器中读写数据。 5.根据权利要求 2 所述的图形处理器的片上存储层次结构, 其特征在于 : 多个图形 属性寄存器分别为颜色寄存器、 深度寄存器、 染色处理器内核中的通用寄存器和像素寄存 器 ; 多个高速缓冲器分别为颜色高速缓冲器、 深度高速缓冲器、 染色处理器内核中的指令 和数据高速缓冲器和图像数据缓冲器。 权 利 要 求 书 CN 104504647 A 2 1/4 页 3 一种图形处理器的片上存储层次结构 技术领域 0001 本发明涉及计算机硬件技术领域, 尤其涉。
6、及一种图形处理器的片上存储层次结 构。 背景技术 0002 随着图形化应用的不断增加, 早期单靠 CPU 进行图形绘制的解决方案已经难以满 足成绩和技术增长的图形处理需求, 图形处理器 (Graphic Processing Unit, GPU) 应运而 生。从 1999 年 Nvidia 发布第一款 GPU 产品至今, GPU 技术的发展主要经历了固定功能流水 线阶段、 分离染色处理器架构阶段、 统一染色处理器架构阶段, 其图形处理能力不断提升, 应用领域也从最初的图形绘制逐步扩展到通用计算领域。 GPU流水线高速、 并行的特征和灵 活的可编程能力, 为图形处理和通用并行计算提供了良好的运行。
7、平台。 0003 而图形处理器的存储层次结构设计是 GPU 设计过程中的关键技术, 也是 GPU 设计 的难点之一, 其设计的优劣直接影响图形处理性能。 因此, 如何通过合理的片上存储层次结 构来捕捉数据访问局部性, 从而隐藏数据访问延迟, 以及如何对所读写的存储器数据进行 缓冲, 从而提升显示存储器数据带宽利用率是 GPU 设计的核心内容之一。 发明内容 0004 本发明的目的是提供一种图形处理器的片上存储层次结构, 从而能够降低图形处 理过程中的数据访问延迟, 提升显示存储器的数据带宽利用率。 0005 本发明的技术解决方案是 : 0006 一种图形处理器的片上存储层次结构, 其特殊之处在。
8、于 : 包括从上到下依次包括 寄存器层、 片上 SRAM 层和显示存储器层 ; 0007 所述寄存器层直接对片上 SRAM 层进行数据读写访问, 同时通过片上 SRAM 层对显 示存储器层进行访问 ; 片上 SRAM 层直接对显示存储器层进行读写访问。 0008 上述寄存器层包括多个图形属性寄存器。 0009 上述片上 SRAM 层包括多个高速缓冲器和至少一个图像数据缓冲器 ; 0010 上述显示存储器层包括两个存储管理单元、 第一存储器 1 和第二存储器 2, 所述存 储管理单元包括两路独立的第一访存仲裁与存储保护单元 1 和第二访存仲裁与存储保护 单元 2、 两路独立的第一存储控制器 1 。
9、和第二存储控制器 2 ; 0011 所述第一存储控制器 1 实现外部存储器芯片的数据访问和时序控制 ; 0012 所述第一访存仲裁与存储保护单元1根据片上SRAM层的缓冲器的访问请求, 第一 控制第一存储控制器 1 从相应的第一存储器 1 中读写数据 ; 0013 所述第二访存仲裁与存储保护单元2根据片上SRAM层的缓冲器的访问请求, 控制 第二存储控制器 2 从相应的第二存储器 2 中读写数据。 0014 多个图形属性寄存器分别为颜色寄存器、 深度寄存器、 染色处理器内核中的通用 寄存器和像素寄存器。 说 明 书 CN 104504647 A 3 2/4 页 4 0015 多个高速缓冲器分别。
10、为颜色高速缓冲器、 深度高速缓冲器、 染色处理器内核中的 指令和数据高速缓冲器和图像数据缓冲器。 0016 本发明的技术效果是 : 0017 1、 本发明提供的图形处理器的片上存储层次结构不但能够降低图形处理过程中 的数据访问延迟, 充分捕捉图形处理数据访问的局部性, 还能够在图形处理器进行存储器 数据访问时实现高效的数据缓冲, 从而提升存储器数据带宽利用率。 0018 2、 寄存器层直接对片上 SRAM 层进行数据读写访问, 同时通过片上 SRAM 层对显示 存储器层进行访问 ; 片上 SRAM 层直接对显示存储器层进行读写访问, 大幅提升显示存储器 层的存储器数据带宽利用率, 降低数据访问。
11、延迟。 0019 3、 当寄存器层数据访问存在局部性时, 能够大幅减少对显示存储器层的访问请求 数量, 提高数据返回速度, 从而提高访问速度。 附图说明 0020 图 1 是本发明图形处理器的片上存储层次结构框图。 0021 图 2 是本发明所述显示存储器层中存储访问控制和管理模块结构框图。 具体实施方式 0022 下面结合附图和具体实施例, 对本发明的技术方案进行清楚、 完整地表述。显然, 所表述的实施例仅是本发明一部分实施例, 而不是全部的实施例, 基于本发明中的实施例, 本领域技术人员在没有做出创造性劳动前提所获得的所有其他实施例, 都属于本发明的保 护范围。 0023 如图 1 所示,。
12、 一种图形处理器的片上存储层次结构, 其特征在于 : 所述结构包括三 层存储结构, 分别是 : 寄存器层、 片上 SRAM 层和显示存储器层。寄存器层与片上 SRAM 层相 连, 片上 SRAM 层与显示存储器层相连。所述寄存器层包括 : 3D 引擎在图形绘制过程中使用 到的和处理完成后用来存储像素数据的寄存器 ; 3D 引擎在进行顶点和像素染色过程中, 染 色处理器内核中所集成的通用寄存器 ; 显示控制模块在进行图像处理时用来存储像素数据 的像素寄存器。所述片上 SRAM 层包括 : 用来缓存 3D 引擎图形绘制完成后图像数据的像素 Cache 和 Z-buffer Cache ; 3D 引。
13、擎在进行顶点和像素染色过程中, 染色处理器内核用来缓 存所执行指令和所需要数据的 I-Cache 和 D-Cache ; 显示控制模块在进行图像处理的过程 中用来进行行数据缓冲的SRAM。 所述显示存储器层包括 : 2路独立的显示存储器通道, 包括 独立的存储访问控制和管理模块和显示存储器控制器。 其中一路用来存储主机接口中命令 处理器模块 (CMD) 和 DMA 模块, 以及 3D 引擎在进行图形处理过程中所产生的和所用到的图 形数据、 纹理数据, 以及 3D 引擎图形绘制产生的图像数据 ; 另一路用来存储从外部数字视 频接口所输入的两路视频数据。 0024 下面分别详细介绍各层的具体结构及。
14、功能 : 0025 1 寄存器层。寄存器层主要包括以下几个模块内的寄存器 : 0026 1.1 3D 引擎模块中的像素颜色寄存器 : 3D 引擎的一个重要功能就是能够对所绘 制像素的颜色进行各种处理, 包括各种测试、 逻辑操作等。 而这些处理的前提是需要获取显 示存储器颜色缓冲区中对应像素点的颜色, 并存储在像素颜色寄存器中, 然后再与当前绘 说 明 书 CN 104504647 A 4 3/4 页 5 制的像素颜色一起进行操作。片段处理单元首先访问 SRAM 层中的像素 Cache, 在不命中的 情况下再访问第三层中的显示存储器, 最终将得到的数据存入像素颜色寄存器中。 0027 1.2 3。
15、D 引擎模块中的像素深度寄存器 : 3D 引擎的一个重要功能就是能够对所绘 制像素的深度进行测试, 从而剔除掉最终不会写入颜色帧缓冲区中的像素。而深度测试 的前提是需要获取显示存储器深度缓冲区中对应像素点的深度数据, 并存储在像素深度 寄存器中, 然后再与当前绘制的像素深度进行比较。片段处理单元首先访问 SRAM 层中的 Z-buffer Cache, 在不命中的情况下再访问显示存储器层深度缓冲区, 最终将得到的深度 数据存入像素深度寄存器中。 0028 1.3 3D 引擎模块中染色处理器内核的通用寄存器 : 染色处理器内核是 RISC 结构, 在运行染色程序时均基于内核中的 32 个 32b。
16、 通用寄存器。当需要从显示存储器中获取数 据时, 染色处理器内核首先使用 LOAD 指令访问 SRAM 层中的指令和数据 Cache, 在不命中的 情况下再访问显示存储器层中的指令和数据区域, 最终将得到的数据同时存入指令和数据 Cache 和通用寄存器中。 0029 1.4 显示控制器中的像素寄存器 : 在显示控制模块中, 入缩放、 旋转、 抖动等图像 处理功能需要在像素寄存器中进行, 然后再由产生的结果最终驱动外部显示设备。像素寄 存器从 SRAM 层中的各类图像数据缓冲器中读取像素颜色信息, 然后再按照缩放、 旋转、 抖 动等图像处理算法对像素寄存器中的颜色值进行相应处理, 最终完成图像。
17、处理功能。 0030 2 片上 SRAM 层。主要包括以下几个片上 SRAM : 0031 2.1 显示控制模块中的图像数据缓冲 SRAM: 显示控制模块除了具备驱动外部显 示设备外, 还具备其它一些图像处理功能, 如图像抖动, 图像缩放和图像旋转。为了实现这 些功能, 必须先对从显示存储器中读出的像素数据进行一定量的缓冲, 然后再对缓冲的数 据进行操作, 而缓冲这些像素数据需要由 SRAM 来完成。如对一个 1600*1200 分辨率的一 幅图像进行 90旋转, 假设显示存储器一次突发长度是 4*64b, 则首先需要使用 SRAM 缓冲 1200*4*64b, 即 37.5KB 的像素数据,。
18、 然后再进行行像素到列像素间的转换才能实现旋转功 能。 0032 2.2 染色处理器内核中的指令和数据Cache模块:3D引擎中的顶点和像素染色处 理器为可编程结构, 内部集成了 1 个或多个 RISC 处理器内核, 从而能够采用软硬件协同的 方式实现对顶点和像素的染色功能。为每个 RISC 处理器配置一个哈佛结构的指令和数据 Cache, 用来缓存该染色处理器内核需要的指令和数据。 0033 2.3 Z-buffer Cache 模块 : 该模块实现缓存像素深度数据的功能。Z-buffer Cache 模块中缓存了 3D 引擎模块在进行片段处理时需要访问的像素深度数据, 当需要频繁 读地址相。
19、同或者地址相连数据的时候能够提高读速度。Z-buffer Cache 模块中还集成了 深度数据预取模块, 能够将片段处理模块需要访问的深度数据提前存入 Z-buffer Cache 中。如果是写像素深度数据, 只有接收到绘图完成信号或者发生 Z-buffer Cache 缺失时, Z-buffer Cache 才会把所有改写过的深度数据写回到深度帧缓冲区中, 不需要每次读写深 度数据时都访问帧缓冲区, 减少了显示存储器的访问次数, 提升了显示存储器的有效带宽。 0034 2.4 像素 Cache 模块 : 该模块实现缓存像素数据的功能。像素 cache 里面存放了 经常访问的数据, 当需要频繁。
20、读相同数据的时候能够提高读速度 ; 如果是写像素数据, 只有 接收到绘图完成信号或者接收到大块像素数据传送信号时, 像素 cache 才会把所有改写过 说 明 书 CN 104504647 A 5 4/4 页 6 的数据写回到帧缓冲区中, 不需要每次读写数据时启动帧缓冲区, 减少了显示存储器的访 问次数, 提升了显示存储器的有效带宽。 0035 3 显示存储器层, 该层主要由以下子模块构成 : 0036 3.12 路独立的访存仲裁与存储保护模块 : 其中一路负责图形处理过程中需要存 取的数据和图像, 以及从像素 Cache 写入的图形数据的对帧缓冲区访问的管理 ; 另外一路 负责完成数字视频分。
21、量输入模块、 显示控制模块对帧缓存访问的管理。实现图形处理和显 示控制对存储器访问的分离。 0037 3.22 路独立的显示存储器控制器模块 : 根据 2 路存储管理单元的存储器访问仲 裁结果, 2 路独立的显示存储器控制器分别接收访存请求, 并按照配置寄存器中所对应的工 作模式访问片外存储器。 0038 最后应说明的是, 以上实施例仅用以说明本发明的技术方案, 而非对其限制 ; 尽管 参照前述实施例对本发明进行了详细的说明, 本领域的普通技术人员应当理解 ; 其依然可 以对前述各实施例记载的技术方案进行修改, 或者对其中部分技术特征进行等同替换 ; 而 这些修改或者替换, 并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范 围。 说 明 书 CN 104504647 A 6 1/2 页 7 图 1 说 明 书 附 图 CN 104504647 A 7 2/2 页 8 图 2 说 明 书 附 图 CN 104504647 A 8 。