CN111028131A - 一种面向GPU硬件产生Mipmap多重细节层纹理算法的TLM微结构 - Google Patents

一种面向GPU硬件产生Mipmap多重细节层纹理算法的TLM微结构 Download PDF

Info

Publication number
CN111028131A
CN111028131A CN201911125784.XA CN201911125784A CN111028131A CN 111028131 A CN111028131 A CN 111028131A CN 201911125784 A CN201911125784 A CN 201911125784A CN 111028131 A CN111028131 A CN 111028131A
Authority
CN
China
Prior art keywords
mipmap
tile
module
layer
depth
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
CN201911125784.XA
Other languages
English (en)
Other versions
CN111028131B (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.)
Xian Aeronautics Computing Technique Research Institute of AVIC
Original Assignee
Xian Aeronautics Computing Technique Research Institute of AVIC
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 Xian Aeronautics Computing Technique Research Institute of AVIC filed Critical Xian Aeronautics Computing Technique Research Institute of AVIC
Priority to CN201911125784.XA priority Critical patent/CN111028131B/zh
Publication of CN111028131A publication Critical patent/CN111028131A/zh
Application granted granted Critical
Publication of CN111028131B publication Critical patent/CN111028131B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T1/00General purpose image data processing
    • G06T1/20Processor architectures; Processor configuration, e.g. pipelining
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T11/002D [Two Dimensional] image generation
    • G06T11/001Texturing; Colouring; Generation of texture or colour
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T15/003D [Three Dimensional] image rendering
    • G06T15/04Texture mapping
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Graphics (AREA)
  • Image Generation (AREA)

Abstract

本发明涉及计算机硬件建模技术领域,尤其涉及一种面向GPU硬件产生Mipmap多重细节层纹理算法的TLM微结构设计。该面向GPU产生Mipmap多重细节层纹理算法的TLM微结构包括依次连接的获取参数模块1、计算每层信息模块2和计算单深度Mipmap模块3;计算单深度Mipmap模块3包括计算tile行Mipmap子模块31和收集tile行Mipmap子模块32;计算tile行Mipmap子模块31包括tile的Mipmap计算单元311。本发明实现了基于TLM模型的产生Mipmap多重细节层纹理算法的功能和实现结构,解决了面向GPU硬件产生Mipmap多重细节层纹理TLM微结构的算法功能验证的问题,有效的加快RTL设计开发。

Description

一种面向GPU硬件产生Mipmap多重细节层纹理算法的TLM微 结构
技术领域
本发明涉及计算机硬件建模技术领域,尤其涉及一种面向GPU硬件产生Mipmap多重细节层纹理算法的TLM微结构。
背景技术
在图形处理器芯片(下简称GPU)设计与开发中,算法的正确性和高效性是决定GPU功能和性能的重要因素。GPU为了提升性能,在进行纹理数据存储/读取时是以tile(4x4像素)为单位,为了读写接口上统一,计算Mipmap也是以tile(4x4像素)为单位。如何综合考虑一维、二维、三维纹理处理,以及多种边缘情况分类,并且适合于硬件实现的算法结构,是亟需解决的技术问题。GPU芯片硬件在实现细节算法时逻辑复杂,在RTL阶段验证到并debug难度大。因此需要在RTL设计之前,尽可能早的对Mipmap算法进行验证,为RTL设计提供参考依据。
发明内容
基于背景技术中存在的问题,本发明提供的一种面向GPU硬件产生Mipmap多重细节层纹理算法的TLM微结构,能够解决RTL仿真产生Mipmap多重细节层纹理算法的正确性以及高效性,能够协助RTL提前对产生Mipmap多重细节层纹理算法的硬件微结构在TLM模型上进行功能验证。
本发明的技术解决方案是:
一种面向GPU硬件产生Mipmap多重细节层纹理算法的TLM微结构,该TLM微结构包括依次连接的获取参数模块1、计算每层信息模块2和计算单深度Mipmap模块3;
所述计算单深度Mipmap模块3包括计算tile行Mipmap子模块31和收集tile行Mipmap子模块32;
所述计算tile行Mipmap子模块31包括tile的Mipmap计算单元311;
其中,tile表示4x4像素块,tile行表示4个像素行。
进一步的,所述获取参数模块1将收到产生Mipmap控制信号,获取每一Mipmap层的宽度、高度和深度信息,并将Mipmap层的宽度、高度和深度通过TLM接口发送给计算每层信息模块2。
进一步的,所述计算每层信息模块2将收到获取参数模块1发送的Mipmap层的宽度、高度和深度,根据以上信息分别计算x方向和y方向的tile个数、一维标志、以及最后非完整tile标志,还有z方向的Mipmap深度值及一维标志,并将各个方向的一维标志及相关信息通过TLM接口发送给计算单深度Mipmap模块3。
进一步的,所述计算单深度Mipmap模块3将收到计算每层信息模块2发送的各个方向的一维标志及相关信息,在每个深度层计算当前的Mipmap层纹理,并写入缓冲区。
进一步的,所述tile行Mipmap计算31包括了若干个tile的Mipmap计算单元311;
根据tile行像素的具体每行像素个数计算此tile行包括的tile个数;
tile的Mipmap计算单元311接收到计算每层信息模块2发送的各个方向的一维标志及相关信息,读取上个Mipmap层对应位置的纹理数据,当深度不是一维时,需要读取两个深度的Mipmap对应纹理;同时,根据各个方向的一维标志及相关信息,判读当前像素在tile所属状态;根据tile状态分别计算当前层Mipmap纹理,并且当深度不是一维时,需要将两个深度的Mipmap数据再次计算Mipmap;然后计算的Mipmap数据发送给收集tile行Mipmap子模块32。
进一步的,所述收集tile行Mipmap子模块32接收到计算tile行Mipmap子模块31发送的Mipmap数据,收集到tile行的Mipmap数据转成tile,并根据纹理内部格式处理后,写入缓冲区。
本发明的有益效果:
本发明实现了基于TLM模型的产生Mipmap多重细节层纹理算法功能和实现结构,综合实现了一维、二维、三维的纹理处理,以及多种边缘情况分类,并且适合于硬件实现的算法结构,加速了Mipmap读写存储效率,解决了面向GPU硬件产生Mipmap多重细节层纹理算法功能验证的问题,有效的加快了RTL设计开发。
附图说明
图1为本发明产生Mipmap多重细节层纹理算法的硬件TLM微结构框图;
图2为本发明中的tile的Mipmap计算流程图。
具体实施方式
下面结合附图和具体实施例,对本发明的技术方案进行清楚、完整地表述。显然,所表述的实施例仅是本发明一部分实施例,而不是全部的实施例,基于本发明中的实施例,本领域技术人员在没有做出创造性劳动前提所获得的所有其他实施例,都属于本发明的保护范围。
本发明提供了一种面向GPU硬件产生Mipmap多重细节层纹理算法的TLM微结构,该结构包括获取参数模块1、计算每层信息模块2和计算单深度Mipmap模块3。
所述获取参数模块1将收到产生Mipmap控制信号,获取每一Mipmap层的宽度、高度和深度信息,并将Mipmap层的宽度、高度和深度通过TLM接口发送给计算每层信息模块2。
所述计算每层信息模块2将收到获取参数模块1发送的Mipmap层的宽度、高度和深度,根据以上信息分别计算x方向和y方向的tile个数、一维标志、以及最后非完整tile标志,还有z方向的Mipmap深度值及一维标志,并将各个方向的一维标志及相关信息通过TLM接口发送给计算单深度Mipmap模块3。
所述计算单深度Mipmap模块3将收到计算每层信息模块2发送的各个方向的一维标志及相关信息,在每个深度层计算当前的Mipmap层纹理,并写入缓冲区。
一种面向GPU硬件产生的Mipmap多重细节层纹理算法,该算法包括以下步骤:
1)获取Mipmap层参数:
获取每一Mipmap层的宽度、高度和深度信息。
2)计算每层各个方向的一维标志及相关信息:
根据上一Mipmap层的宽度、高度和深度信息,计算x方向和y方向的tile个数、一维标志、以及最后非完整tile标志,还有z方向的Mipmap深度值及一维标志。
3)单深度Mipmap计算:
3.1)tile行的Mipmap计算:
根据一层深度纹理的tile行个数,同时进行多个tile行的Mipmap计算。
3.2)tile的Mipmap计算:
根据一个tile行的tile个数,同时进行多个tile的Mipmap计算。
3.3)读取上层tile数据:
根据z方向一维标志位,读取上一层对应深度的Mipmap纹理tile数据,并且根据纹理内部格式进行相应处理。
3.4)判断每个tile状态
根据x方向和y方向的tile个数、一维标志、以及最后非完整tile标志等信息判读当前像素在tile所属状态。
3.5)根据tile状态及深度信息计算Mipmap
根据tile状态分别计算当前层Mipmap纹理,并且当深度不是一维时,需要将两个深度的Mipmap数据再次计算Mipmap。
3.6)Mipmap转tile并写入缓冲区
累积收集Mipmap数据,当满足tile行个数的Mipmap后,将数据转换成tile,并根据纹理内部格式处理后,写入缓冲区。
实施例:
下面结合附图对本发明做进一步详细描述,请参阅图1。
该结构包括获取参数模块1、计算每层信息模块2和计算单深度Mipmap模块3。
所述获取参数模块1将收到产生Mipmap控制信号,获取每一Mipmap层的宽度、高度和深度信息,并将Mipmap层的宽度、高度和深度通过TLM接口发送给计算每层信息模块2。
所述计算每层信息模块2将收到获取参数模块1发送的Mipmap层的宽度、高度和深度,根据以上信息分别计算x方向和y方向的tile个数、一维标志、以及最后非完整tile标志,还有z方向的Mipmap深度值及一维标志,并将各个方向的一维标志及相关信息通过TLM接口发送给计算单深度Mipmap模块3。
所述计算单深度Mipmap模块3将收到计算每层信息模块2发送的各个方向的一维标志及相关信息,在每个深度层计算当前的Mipmap层纹理,并写入缓冲区。
基于上述TLM微结构的面向GPU硬件产生Mipmap多重细节层纹理算法,包括以下步骤:
步骤1、获取Mipmap层参数,获取每一Mipmap层的宽度、高度和深度信息。
步骤2、计算每层各个方向的一维标志及相关信息,根据上一Mipmap层的宽度、高度和深度信息,计算x方向和y方向的tile个数、一维标志、以及最后非完整tile标志,还有z方向的Mipmap深度值及一维标志。
步骤3、单深度Mipmap计算,根据一层深度纹理的tile行个数,同时进行多个tile行的Mipmap计算,再根据一个tile行的tile个数,同时进行多个tile的Mipmap计算。
如图2所示,在单个tile的Mipmap产生中,先根据z方向一维标志位,读取上一层对应深度的Mipmap纹理tile数据,并且根据纹理内部格式进行相应处理。再根据x方向和y方向的tile个数、一维标志、以及最后非完整tile标志等信息判读当前像素在tile所属状态。然后根据tile状态分别计算当前层Mipmap纹理,并且当深度不是一维时,需要将两个深度的Mipmap数据再次计算Mipmap。
最后累积收集Mipmap数据,当满足tile行个数的Mipmap后,将数据转换成tile,并根据纹理内部格式处理后,写入缓冲区。

Claims (6)

1.一种面向GPU硬件产生Mipmap多重细节层纹理算法的TLM微结构,其特征在于:包括依次连接的获取参数模块1、计算每层信息模块2和计算单深度Mipmap模块3;
所述计算单深度Mipmap模块3包括计算tile行Mipmap子模块31和收集tile行Mipmap子模块32;
所述计算tile行Mipmap子模块31包括tile的Mipmap计算单元311;
其中,tile表示4x4像素块,最左下角像素的x,y坐标均为4的整数倍,
tile行表示4个像素行,起始像素行的y坐标是4的整数倍。
2.根据权利要求1所述的面向GPU硬件产生Mipmap多重细节层纹理算法的TLM微结构,其特征在于,所述获取参数模块1将收到产生Mipmap控制信号,获取每一Mipmap层的宽度、高度和深度信息,并将Mipmap层的宽度、高度和深度通过TLM接口发送给计算每层信息模块2。
3.根据权利要求1所述的面向GPU硬件产生Mipmap多重细节层纹理算法的TLM微结构,其特征在于,所述计算每层信息模块2将收到获取参数模块1发送的Mipmap层的宽度、高度和深度,根据以上信息分别计算x方向和y方向的tile个数、一维标志、以及最后非完整tile标志,还有z方向的Mipmap深度值及一维标志,并将各个方向的一维标志及相关信息通过TLM接口发送给计算单深度Mipmap模块3。
4.根据权利要求1所述的面向GPU硬件产生Mipmap多重细节层纹理算法的TLM微结构,其特征在于,所述计算单深度Mipmap模块3将收到计算每层信息模块2发送的各个方向的一维标志及相关信息,在每个深度层计算当前的Mipmap层纹理,并写入缓冲区。
5.根据权利要求4所述的一种面向GPU硬件产生Mipmap多重细节层纹理算法的TLM微结构,其特征在于:所述tile行Mipmap计算31包括了若干个tile的Mipmap计算单元311;
根据tile行像素的具体每行像素个数计算此tile行包括的tile个数;
tile的Mipmap计算单元311接收到计算每层信息模块2发送的各个方向的一维标志及相关信息,读取上个Mipmap层对应位置的纹理数据,当深度不是一维时,需要读取两个深度的Mipmap对应纹理;同时,根据各个方向的一维标志及相关信息,判读当前像素在tile所属状态;根据tile状态分别计算当前层Mipmap纹理,并且当深度不是一维时,需要将两个深度的Mipmap数据再次计算Mipmap;然后计算的Mipmap数据发送给收集tile行Mipmap子模块32。
6.根据权利要求4所述的一种面向GPU硬件产生Mipmap多重细节层纹理算法的TLM微结构,其特征在于:所述收集tile行Mipmap子模块32接收到计算tile行Mipmap子模块31发送的Mipmap数据,收集到tile行的Mipmap数据转成tile,并根据纹理内部格式处理后,写入缓冲区。
CN201911125784.XA 2019-11-18 2019-11-18 一种面向GPU硬件产生Mipmap多重细节层纹理算法的TLM微结构 Active CN111028131B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201911125784.XA CN111028131B (zh) 2019-11-18 2019-11-18 一种面向GPU硬件产生Mipmap多重细节层纹理算法的TLM微结构

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201911125784.XA CN111028131B (zh) 2019-11-18 2019-11-18 一种面向GPU硬件产生Mipmap多重细节层纹理算法的TLM微结构

Publications (2)

Publication Number Publication Date
CN111028131A true CN111028131A (zh) 2020-04-17
CN111028131B CN111028131B (zh) 2023-06-13

Family

ID=70200432

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201911125784.XA Active CN111028131B (zh) 2019-11-18 2019-11-18 一种面向GPU硬件产生Mipmap多重细节层纹理算法的TLM微结构

Country Status (1)

Country Link
CN (1) CN111028131B (zh)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1893564A (zh) * 2005-07-04 2007-01-10 索尼株式会社 图像特效设备、图形处理器和记录介质
US20080094407A1 (en) * 2006-06-20 2008-04-24 Via Technologies, Inc. Systems and Methods for Storing Texture Map Data
US20120038657A1 (en) * 2010-08-16 2012-02-16 Microsoft Corporation Gpu texture tile detail control
CN106537459A (zh) * 2014-07-24 2017-03-22 Arm有限公司 图形处理系统

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1893564A (zh) * 2005-07-04 2007-01-10 索尼株式会社 图像特效设备、图形处理器和记录介质
US20080094407A1 (en) * 2006-06-20 2008-04-24 Via Technologies, Inc. Systems and Methods for Storing Texture Map Data
US20120038657A1 (en) * 2010-08-16 2012-02-16 Microsoft Corporation Gpu texture tile detail control
CN106537459A (zh) * 2014-07-24 2017-03-22 Arm有限公司 图形处理系统

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
韩孟桥;蒋林;杨博文;山蕊;耿玉荣;: "移动图形处理器的纹理Cache设计" *

Also Published As

Publication number Publication date
CN111028131B (zh) 2023-06-13

Similar Documents

Publication Publication Date Title
CN112241997B (zh) 基于多尺度点云上采样的三维模型建立、修复方法及系统
CN107767453B (zh) 一种基于规则约束的建筑物lidar点云重构优化方法
CN108198145A (zh) 用于点云数据修复的方法和装置
CN109815865A (zh) 一种基于虚拟水尺的水位识别方法及系统
US20150235392A1 (en) Drawing data generation device and image drawing device
CN109147025B (zh) 一种面向rgbd三维重建的纹理生成方法
CN108716916B (zh) 一种基于超级块的分布式并行星点质心提取方法及fpga实现装置
CN107464286B (zh) 三维城市模型中的孔洞修复方法及装置、设备及可读介质
CN110163087A (zh) 一种人脸姿态识别方法及系统
CN102339479A (zh) 使用光谱分析的伸展驱动的网格参数化
CN103256914B (zh) 一种基于dem计算淤地坝淹没面积的方法及系统
CN104318552B (zh) 基于凸包投影图匹配的模型配准方法
CN105957149A (zh) 一种适用于高效渲染的城市三维模型数据预处理方法
CN113837275A (zh) 基于扩张坐标注意力的改进YOLOv3目标检测方法
CN107886573B (zh) 一种复杂地质条件下边坡三维有限元网格生成方法
CN108010122A (zh) 一种人体三维模型重建与测量的方法及系统
CN111652976B (zh) 基于dem栅格数据的通视分析方法
CN111028131B (zh) 一种面向GPU硬件产生Mipmap多重细节层纹理算法的TLM微结构
CN112687008B (zh) 基于地质构造散点数据自动求取含烃面积的方法
CN111199086A (zh) 三维几何离散化处理系统
CN114092653A (zh) 基于2d图像重建3d图像方法、装置、设备及存储介质
CN108986212A (zh) 一种基于裂缝消除的三维虚拟地形lod模型的生成方法
CN111008515B (zh) 一种面向gpu硬件子纹理替换存储算法的tlm微结构
CN109934837B (zh) 一种3d植物叶片轮廓的提取方法、装置及系统
Wang et al. A prediction method for assembly surface contact considering form error

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant