CN102819820A - 基于分块渲染的gpu中多管线渲染的实现方法 - Google Patents

基于分块渲染的gpu中多管线渲染的实现方法 Download PDF

Info

Publication number
CN102819820A
CN102819820A CN2012102878755A CN201210287875A CN102819820A CN 102819820 A CN102819820 A CN 102819820A CN 2012102878755 A CN2012102878755 A CN 2012102878755A CN 201210287875 A CN201210287875 A CN 201210287875A CN 102819820 A CN102819820 A CN 102819820A
Authority
CN
China
Prior art keywords
piece
pipeline
module
data
gpu
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
CN2012102878755A
Other languages
English (en)
Other versions
CN102819820B (zh
Inventor
焦永
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.)
CHANGSHA JINGJIA MICROELECTRONIC Co Ltd
Original Assignee
CHANGSHA JINGJIA MICROELECTRONIC Co Ltd
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 CHANGSHA JINGJIA MICROELECTRONIC Co Ltd filed Critical CHANGSHA JINGJIA MICROELECTRONIC Co Ltd
Priority to CN201210287875.5A priority Critical patent/CN102819820B/zh
Publication of CN102819820A publication Critical patent/CN102819820A/zh
Application granted granted Critical
Publication of CN102819820B publication Critical patent/CN102819820B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Image Generation (AREA)

Abstract

本发明公开了一种基于分块渲染的GPU中多管线渲染的实现方法。它包括绘图命令解析,2D绘图模块—完成2D清屏、点阵字等功能,图元管理—完成图元顶点及属性的获取,几何变换/光照,裁剪,屏幕坐标变换,图元分块,M条光栅化管线,M条Z/Stencil测试管线,M条纹理映射管线,M条融合管线,图形显示等模块。该实现结构通过资源复制实现了分块渲染的性能加速目的。

Description

基于分块渲染的GPU中多管线渲染的实现方法
技术领域
本发明主要涉及到基于分块渲染的GPU设计领域,特指基于分块渲染的GPU中多管线渲染的实现。
背景技术
  分块渲染技术是为了缓解传统GPU中频繁访存导致效率低下而提出的。传统GPU采用固定流水线技术,渲染一个图元要经过Z测试、纹理、Alpha测试、融合等多个读写存储器的过程,一个像素可能经过多次访存之后并不需要真正写入帧存,由此带来的性能损失是很大的。为了缓解这一问题,分块渲染技术就被提出来,这种技术是将绘图区划分为若干个大小相等的块,将图元按块划分完成之后,在绘制时按照块的顺序绘制,这就保证了绘制当前块的时候,只需要缓存当前块的信息即可,等当前块全部绘制完成之后再将当前块写回帧存,大大减少了访存次数。目前基于分块渲染的GPU中,由于只采用一条管线渲染,并不能最大限度发挥分块渲染GPU的运行效率。
发明内容
本发明要解决的问题就在于:针对现有技术存在的不足,本发明提供了一种基于分块渲染的GPU中多管线渲染的实现结构,该实现结构可以最大限度发挥分块渲染GPU的技术优势。
本发明的实现方法:软件通过PCI总线向GPU硬件发送绘图命令和参数配置命令,GPU收到命令进入命令解析模块,按照图元类型从DDR读取图元顶点并组织成相应图元的数据进入几何变换/光照、裁剪、屏幕坐标转换模块,然后按照定义的分块大小(如32×32像素为一块)将图元分块,为了使分块和绘制并行工作,维持两个计数器—采用2个RAM分别记录两帧图像的每块的图元数目,每一个块在DDR中都有一个固定的读写起始地址和固定的存储空间,将分块后的图元数据按照图元所属的块写入相应的DDR地址,一帧内的所有图元都写入DDR之后,按照块的顺序将DDR中的块内的待绘制数据取出,进入光栅化过程,为实现多管线的绘制,可以设计M个光栅化管线,按照管线0绘制块号为0,M,2M,3M,……,nM的块;管线1绘制块号为1,M+1,2M+1,3M+1,……,nM+1的块;管线2绘制块号为2,M+2,2M+2,3M+2,……,nM+2的块;……;管线M-1绘制块号为M-1,2M-1,3M-1,……,(n+1)M-1的块;根据光栅化的管线数目,在像素渲染部分设置同样数目的管线,设置M个Z/Stencil(深度/模板)测试模块,每一个模块内部结构相同,根据应用的要求,可以在块内缓冲区预先设置一个初值,那么在该块绘制过程中就避免了频繁的读写DDR中Z/Stencil Buffer中的数据,节约了带宽的同时也加快了Z/Stencil测试速度;同样设置M个纹理映射模块,每一个模块对应一个纹理Cache,M个纹理Cache再对应一个二级Cache,此结构可以充分利用Cache中的数据,提高命中率;设置M个融合模块,在绘制当前块开始时将该块在显示帧存中的数据读出放在片上存储器中,在该块绘制的过程中将无需再次读取DDR,直到将该块绘制完毕,一次性将该片上存储器中的数据写回到对应的显示帧存中,同样可以减少大量的访存时间。当一帧的图像绘制完毕后,显示模块根据分辨率产生对应的时序将帧存中的数据读出,显示在屏幕上。
本发明的优点就在于:1、逻辑简单:本发明提出的多管线渲染结构充分采用逻辑重用的策略,实现比较简单;2、可扩展性好:设计完成一条渲染管线之后,可以将其扩展成多条管线,只需要修改仲裁模块就可以方便实现。
附图说明
图1是本发明实现的基于分块渲染的GPU中多管线渲染的实现结构。
具体实施方式
以下将结合附图和具体实施例对本发明做进一步详细说明。如图1所示,为本发明实现的基于分块渲染的GPU中多管线渲染的实现结构。它包括绘图命令解析,2D绘图模块—完成2D清屏、点阵字等功能,图元管理—完成图元顶点及属性的获取,几何变换/光照,裁剪,屏幕坐标变换,图元分块,M条光栅化管线,M条Z/Stencil测试管线,M条纹理映射管线,M条融合管线,图形显示等模块。软件通过PCI总线向GPU硬件发送绘图命令和参数配置命令,GPU收到命令进入命令解析模块,按照图元类型从DDR读取图元顶点并组织成相应图元的数据进入几何变换/光照、裁剪、屏幕坐标转换模块,然后按照定义的分块大小(如32×32像素为一块)将图元分块,为了使分块和绘制并行工作,维持两个计数器—采用2个RAM分别记录两帧图像的每块的图元数目,每一个块在DDR中都有一个固定的读写起始地址和固定的存储空间,将分块后的图元数据按照图元所属的块写入相应的DDR地址,一帧内的所有图元都写入DDR之后,按照块的顺序将DDR中的块内的待绘制数据取出,进入光栅化过程,为实现多管线的绘制,可以设计M个光栅化管线,按照管线0绘制块号为0,M,2M,3M,……,nM的块;管线1绘制块号为1,M+1,2M+1,3M+1,……,nM+1的块;管线2绘制块号为2,M+2,2M+2,3M+2,……,nM+2的块;……;管线M-1绘制块号为M-1,2M-1,3M-1,……,(n+1)M-1的块;
根据光栅化的管线数目,在像素渲染部分设置同样数目的管线,设置M个Z/Stencil(深度/模板)测试模块,每一个模块内部结构相同,根据应用的要求,可以在块内缓冲区预先设置一个初值,那么在该块绘制过程中就避免了频繁的读写DDR中Z/Stencil Buffer中的数据,节约了带宽的同时也加快了Z/Stencil测试速度;同样设置M个纹理映射模块,每一个模块对应一个纹理Cache,M个纹理Cache再对应一个二级Cache,此结构可以充分利用Cache中的数据,提高命中率;设置M个融合模块,在绘制当前块开始时将该块在显示帧存中的数据读出放在片上存储器中,在该块绘制的过程中将无需再次读取DDR,直到将该块绘制完毕,一次性将该片上存储器中的数据写回到对应的显示帧存中,同样可以减少大量的访存时间。当一帧的图像绘制完毕后,显示模块根据分辨率产生对应的时序将帧存中的数据读出,显示在屏幕上。

Claims (2)

1.基于分块渲染的GPU中多管线渲染的实现方法,其特征为:软件通过PCI总线向GPU硬件发送绘图命令和参数配置命令,GPU收到命令进入命令解析模块,按照图元类型从DDR读取图元顶点并组织成相应图元的数据进入几何变换/光照、裁剪、屏幕坐标转换模块,然后按照定义的分块大小(如32×32像素为一块)将图元分块,为了使分块和绘制并行工作,维持两个计数器—采用2个RAM分别记录两帧图像的每块的图元数目,每一个块在DDR中都有一个固定的读写起始地址和固定的存储空间,将分块后的图元数据按照图元所属的块写入相应的DDR地址,一帧内的所有图元都写入DDR之后,按照块的顺序将DDR中的块内的待绘制数据取出,进入光栅化过程,为实现多管线的绘制,可以设计M个光栅化管线,按照管线0绘制块号为0,M,2M,3M,……,nM的块;管线1绘制块号为1,M+1,2M+1,3M+1,……,nM+1的块;管线2绘制块号为2,M+2,2M+2,3M+2,……,nM+2的块;……;管线M-1绘制块号为M-1,2M-1,3M-1,……,(n+1)M-1的块。
2.根据权利要求1中光栅化的管线数目,在像素渲染部分设置同样数目的管线,设置M个Z/Stencil测试模块,每一个模块内部结构相同,根据应用的要求,可以在块内缓冲区预先设置一个初值,那么在该块绘制过程中就避免了频繁的读写DDR中Z/Stencil Buffer中的数据,节约了带宽的同时也加快了Z/Stencil测试速度;同样设置M个纹理映射模块,每一个模块对应一个纹理Cache,M个纹理Cache再对应一个二级Cache,此结构可以充分利用Cache中的数据,提高命中率;设置M个融合模块,在绘制当前块开始时将该块在显示帧存中的数据读出放在片上存储器中,在该块绘制的过程中将无需再次读取DDR,直到将该块绘制完毕,一次性将该片上存储器中的数据写回到对应的显示帧存中,同样可以减少大量的访存时间,当一帧的图像绘制完毕后,显示模块根据分辨率产生对应的时序将帧存中的数据读出,显示在屏幕上。
CN201210287875.5A 2012-08-14 2012-08-14 基于分块渲染的gpu中多管线渲染的实现方法 Active CN102819820B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201210287875.5A CN102819820B (zh) 2012-08-14 2012-08-14 基于分块渲染的gpu中多管线渲染的实现方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201210287875.5A CN102819820B (zh) 2012-08-14 2012-08-14 基于分块渲染的gpu中多管线渲染的实现方法

Publications (2)

Publication Number Publication Date
CN102819820A true CN102819820A (zh) 2012-12-12
CN102819820B CN102819820B (zh) 2014-03-12

Family

ID=47303927

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201210287875.5A Active CN102819820B (zh) 2012-08-14 2012-08-14 基于分块渲染的gpu中多管线渲染的实现方法

Country Status (1)

Country Link
CN (1) CN102819820B (zh)

Cited By (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103456034A (zh) * 2013-08-28 2013-12-18 厦门雷霆互动网络有限公司 一种基于分布式烘培光照的场景编辑器及编辑方法
CN103730097A (zh) * 2013-12-27 2014-04-16 广东威创视讯科技股份有限公司 超高分辨率图像的显示方法与系统
CN103745448A (zh) * 2013-12-24 2014-04-23 四川大学 光栅3d显示中超高分辨率合成图像的快速生成方法
CN103955407A (zh) * 2014-04-24 2014-07-30 深圳中微电科技有限公司 在处理器中减小纹理延迟的方法及装置
CN106779057A (zh) * 2016-11-11 2017-05-31 北京旷视科技有限公司 基于gpu的计算二值神经网络卷积的方法及装置
CN107958437A (zh) * 2017-11-24 2018-04-24 中国航空工业集团公司西安航空计算技术研究所 一种多gpu大分辨率多屏图形分块并行渲染方法
CN108510430A (zh) * 2018-03-27 2018-09-07 长沙景嘉微电子股份有限公司 基于分块渲染的gpu中一种资源共享的实现方法
CN109191362A (zh) * 2018-07-30 2019-01-11 芯视图(常州)微电子有限公司 多个rop的并行调度以及rop的流水设计
CN112486609A (zh) * 2020-11-25 2021-03-12 湖南麒麟信安科技股份有限公司 一种基于云桌面的虚拟显卡实现方法和装置
WO2021136433A1 (zh) * 2019-12-31 2021-07-08 华为技术有限公司 一种电子设备及计算机系统
CN116523729A (zh) * 2023-06-27 2023-08-01 深流微智能科技(深圳)有限公司 一种图形处理设备、图形渲染管线分配方法及相关装置
CN116883228A (zh) * 2023-09-08 2023-10-13 武汉凌久微电子有限公司 一种gpu像素填充率测量方法
CN117745518A (zh) * 2024-02-21 2024-03-22 芯动微电子科技(武汉)有限公司 一种优化内存分配的图形处理方法及系统

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101114375A (zh) * 2006-07-26 2008-01-30 辉达公司 加速的起始瓦片搜索
US20080094412A1 (en) * 2006-10-23 2008-04-24 Guofang Jiao 3-d clipping in a graphics processing unit
CN101689306A (zh) * 2007-02-16 2010-03-31 高通股份有限公司 有效的二维及三维图形处理
CN102096897A (zh) * 2011-03-17 2011-06-15 长沙景嘉微电子有限公司 基于分块渲染的gpu中块存储策略的实现

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101114375A (zh) * 2006-07-26 2008-01-30 辉达公司 加速的起始瓦片搜索
US20080094412A1 (en) * 2006-10-23 2008-04-24 Guofang Jiao 3-d clipping in a graphics processing unit
CN101689306A (zh) * 2007-02-16 2010-03-31 高通股份有限公司 有效的二维及三维图形处理
CN102096897A (zh) * 2011-03-17 2011-06-15 长沙景嘉微电子有限公司 基于分块渲染的gpu中块存储策略的实现

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
张淑等: "分块渲染的三维图形中光栅操作的硬件实现", 《西安邮电学院学报》 *

Cited By (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103456034A (zh) * 2013-08-28 2013-12-18 厦门雷霆互动网络有限公司 一种基于分布式烘培光照的场景编辑器及编辑方法
CN103745448A (zh) * 2013-12-24 2014-04-23 四川大学 光栅3d显示中超高分辨率合成图像的快速生成方法
CN103745448B (zh) * 2013-12-24 2016-08-17 四川大学 光栅3d显示中超高分辨率合成图像的快速生成方法
CN103730097A (zh) * 2013-12-27 2014-04-16 广东威创视讯科技股份有限公司 超高分辨率图像的显示方法与系统
CN103730097B (zh) * 2013-12-27 2016-04-13 广东威创视讯科技股份有限公司 超高分辨率图像的显示方法与系统
CN103955407A (zh) * 2014-04-24 2014-07-30 深圳中微电科技有限公司 在处理器中减小纹理延迟的方法及装置
CN103955407B (zh) * 2014-04-24 2018-09-25 深圳中微电科技有限公司 在处理器中减小纹理延迟的方法及装置
CN106779057B (zh) * 2016-11-11 2020-04-17 北京旷视科技有限公司 基于gpu的计算二值神经网络卷积的方法及装置
CN106779057A (zh) * 2016-11-11 2017-05-31 北京旷视科技有限公司 基于gpu的计算二值神经网络卷积的方法及装置
CN107958437A (zh) * 2017-11-24 2018-04-24 中国航空工业集团公司西安航空计算技术研究所 一种多gpu大分辨率多屏图形分块并行渲染方法
CN108510430A (zh) * 2018-03-27 2018-09-07 长沙景嘉微电子股份有限公司 基于分块渲染的gpu中一种资源共享的实现方法
CN109191362A (zh) * 2018-07-30 2019-01-11 芯视图(常州)微电子有限公司 多个rop的并行调度以及rop的流水设计
CN109191362B (zh) * 2018-07-30 2023-07-18 南京军微半导体科技有限公司 多个rop的并行调度方法
WO2021136433A1 (zh) * 2019-12-31 2021-07-08 华为技术有限公司 一种电子设备及计算机系统
CN112486609A (zh) * 2020-11-25 2021-03-12 湖南麒麟信安科技股份有限公司 一种基于云桌面的虚拟显卡实现方法和装置
CN116523729A (zh) * 2023-06-27 2023-08-01 深流微智能科技(深圳)有限公司 一种图形处理设备、图形渲染管线分配方法及相关装置
CN116523729B (zh) * 2023-06-27 2023-09-15 深流微智能科技(深圳)有限公司 一种图形处理设备、图形渲染管线分配方法及相关装置
CN116883228A (zh) * 2023-09-08 2023-10-13 武汉凌久微电子有限公司 一种gpu像素填充率测量方法
CN116883228B (zh) * 2023-09-08 2023-12-01 武汉凌久微电子有限公司 一种gpu像素填充率测量方法
CN117745518A (zh) * 2024-02-21 2024-03-22 芯动微电子科技(武汉)有限公司 一种优化内存分配的图形处理方法及系统
CN117745518B (zh) * 2024-02-21 2024-06-11 芯动微电子科技(武汉)有限公司 一种优化内存分配的图形处理方法及系统

Also Published As

Publication number Publication date
CN102819820B (zh) 2014-03-12

Similar Documents

Publication Publication Date Title
CN102819820B (zh) 基于分块渲染的gpu中多管线渲染的实现方法
CN101236661B (zh) 在计算机中管理纹理数据的系统与方法
CN105630441B (zh) 一种基于统一染色技术的gpu系统
US6278645B1 (en) High speed video frame buffer
US5864512A (en) High-speed video frame buffer using single port memory chips
CN102096897B (zh) 基于分块渲染的gpu中块存储策略的实现
CN109636894B (zh) 一种基于像素点栅格化的动态三维热力计算方法及系统
CN101201933B (zh) 绘图处理单元及方法
CN103679786B (zh) 图形处理单元可编程着色器的纹元数据结构和其操作方法
CN103729190B (zh) 在移动终端上多种媒介统一解析显示的方法
CN105488753B (zh) 一种对图像进行二维傅立叶变换或反变换的方法及装置
CN115701305A (zh) 阴影筛选
CN114638863A (zh) 基于fpga的差分动态显微图像处理方法、装置及系统
CN101727875A (zh) 一种图形处理设备及方法
US20060187229A1 (en) Page based rendering in 3D graphics system
US8355580B2 (en) Method and system for generating boundary in the process of rasterizing vector graphic as well as method for producing the system
US10019349B2 (en) Cache memory and method of managing the same
US6982719B2 (en) Switching sample buffer context in response to sample requests for real-time sample filtering and video generation
KR101039132B1 (ko) 2차원 벡터 그래픽 처리를 위한 라스터라이저 및 그 방법
CN101216932A (zh) 图形处理装置、单元与执行三角形配置、属性配置的方法
CN104504647A (zh) 一种图形处理器的片上存储层次结构
CN102799431B (zh) 图元预处理和处理方法、图形处理方法及其处理器、装置
CN106846452A (zh) 一种gpu上针对延迟着色反走样绘制的优化方法
CN106991638A (zh) 一种基于序列影像Harris‑DOG特征提取的多粒度并行优化的方法
CN108510430A (zh) 基于分块渲染的gpu中一种资源共享的实现方法

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C53 Correction of patent of invention or patent application
CB03 Change of inventor or designer information

Inventor after: Rao Xianhong

Inventor before: Jiao Yong

COR Change of bibliographic data

Free format text: CORRECT: INVENTOR; FROM: JIAO YONG TO: RAO XIANHONG

GR01 Patent grant
GR01 Patent grant