CN104156910A - 一种高效顶点处理装置及处理方法 - Google Patents
一种高效顶点处理装置及处理方法 Download PDFInfo
- Publication number
- CN104156910A CN104156910A CN201410414904.9A CN201410414904A CN104156910A CN 104156910 A CN104156910 A CN 104156910A CN 201410414904 A CN201410414904 A CN 201410414904A CN 104156910 A CN104156910 A CN 104156910A
- Authority
- CN
- China
- Prior art keywords
- matrix
- summit
- transformation
- transformation matrix
- multiplier
- 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.)
- Pending
Links
Landscapes
- Image Processing (AREA)
Abstract
本发明公开了一种高效顶点处理装置,包括变换矩阵存储器、顶点存储器和投影矩阵存储器,其特征是:所述变换矩阵存储器连接变换矩阵载入先进先出存储单元,所述顶点存储器连接顶点输入先进先出存储单元,所述投影矩阵存储器连接投影矩阵载入单元,所述变换矩阵载入先进先出存储单元连接变换矩阵生成单元,所述顶点输入先进先出存储单元连接坐标变换单元,所述投影矩阵载入单元连接投影单元,所述变换矩阵生成单元连接所述坐标变换单元,所述坐标变换单元连接所述投影单元,所述投影单元连接顶点输出先进先出存储单元。本发明能够减少顶点变换所需要的硬件资源,从而优化GPU的结构,减少完成顶点变换所需要的时间。
Description
技术领域
本发明涉及GPU图形处理中的顶点变换处理领域,具体地讲,涉及一种高效顶点处理装置及处理方法。
背景技术
随着材料技术、半导体技术和计算机科学的迅猛发展,图形显示技术也有2D的平面模型显示发展到今天得富有真实感的3D图形显示。在计算机中实现显示世界的场景称为真实感绘制。真实感绘制的主要任务是模拟真实物体的形状、光学特征、表面纹理和粗糙程度,以及物体之间的相对位置、遮挡关系等等。在图形处理发展的初期,图形绘制工作全部由计算机的CPU完成,但是由于图形绘制的运算量极大,CPU的处理速度无法跟上图形显示的要求。随着技术的发展,图形处理单元的出现使图形绘制的概念彻底发生了变化,使实时绘制成为了可能,然而实时绘制对图形处理单元的运算有效性及运算速度的改进又提出了要求。
3D图形绘制是真实感图形绘制的基础,作用是将一个3D的场景绘制在一个2D的屏幕中。一个3D图形绘制系统一般由三大部分组成,应用部分,几何部分和光栅部分。其中几何部分负责对多边形的顶点进行操作。典型的操作包括坐标转换、光照和裁剪。几何部分对每个顶点或者三角面进行操作,其中坐标变换和投影变换占的比重较大。
坐标系变换是用户对场景进行定向、变形、动画等处理的重要手段。从开始的模型坐标系的变换到最后的屏幕坐标系的变换,坐标系变换贯穿整个几何部分。
坐标系的所有变换都可以通过乘一个矩阵来实现。对于一个三维图形变换矩阵,应该采用4×4的矩阵表示,并将其称为齐次变换矩阵T
模型坐标系到观察坐标系的变换可以分两个步骤进行:模型坐标系到世界坐标系的变换;世界坐标系到观察坐标系的变换。其中基本的变换包括平移、旋转、缩放等等。
一般说来,模型到世界坐标系的变换是上面几种变换的组合。实际上不需要对每一个顶点进行同样的多级变换,而是先将需要进行的变换矩阵组合起来。这个组合方法叫做变换级联。将多个变换矩阵组合成单个矩阵可以有效提高变换的效率。
投影变换将位于视锥体内的物体投影到一个单位正方体,也就是从观察坐标系到裁剪坐标系的变换。以为视锥体的形式不同,可以将投影分为平行投影和透视投影。平行投影以一个立方体作为视锥体,物体无论远近,都具有一样的大小;而透视投影选择一个视锥体,与人眼看到的景物相似,远处的物体会显得小一些,适合用于真实感图形的绘制。
假如用(l,r,b,t,n,f)表示视锥体左、右、下、上、近、远平面,则平行投影的转换矩阵如下:
透视投影的转换矩阵如下:
这两个矩阵将视锥体映射到单位立方体中,具体是:近平面映射到平面z=-1;远平面映射到平面z=1;左平面映射到平面x=-1;右平面映射到平面x=1;下平面映射到平面y=-1;上平面映射到平面y=1。
发明内容
本发明要解决的技术问题是提供一种高效顶点处理装置及处理方法,减少完成顶点变换所需要的时间。
本发明采用如下技术手段实现发明目的:
一种高效顶点处理装置,包括变换矩阵存储器、顶点存储器和投影矩阵存储器,其特征是:所述变换矩阵存储器连接变换矩阵载入先进先出存储单元,所述顶点存储器连接顶点输入先进先出存储单元,所述投影矩阵存储器连接投影矩阵载入单元,所述变换矩阵载入先进先出存储单元连接变换矩阵生成单元,所述顶点输入先进先出存储单元连接坐标变换单元,所述投影矩阵载入单元连接投影单元,所述变换矩阵生成单元连接所述坐标变换单元,所述坐标变换单元连接所述投影单元,所述投影单元连接顶点输出先进先出存储单元。
作为对本技术方案的进一步限定,所述变换矩阵生成单元包括:
变换矩阵分配控制器:根据所需进行的操作对相应的变换矩阵中的参数进行赋值,并将其载入到变换矩阵先进先出存储单元中,用于控制变换矩阵的级联操作;
顶点变换矩阵生成乘法器:采用高精度的矩阵乘法器,能实现4×4矩阵与4×4矩阵的乘法运算,用于进行顶点变换所需要的变换矩阵的级联。
作为对本技术方案的进一步限定,所述坐标变换单元包括:
顶点运算矩阵乘法器:能实现4×4矩阵与4×1矩阵的乘法运算,完成顶点与变换矩阵的乘法运算;
数据暂存器:缓存经顶点运算矩阵乘法器计算后得到的顶点数据。
作为对本技术方案的进一步限定,所述投影单元包括:
投影运算矩阵乘法器:能实现4×4矩阵与4×1矩阵的乘法运算,完成顶点与投影矩阵的乘法运算;
投影变换控制器:控制投影运算矩阵乘法器利用顶点与投影矩阵的乘法运算完成投影操作。
作为对本技术方案的进一步限定,所述顶点变换矩阵生成乘法器包括3个4×4矩阵寄存器。
作为对本技术方案的进一步限定,所述顶点运算乘法器包括2个4×4矩阵寄存器和1个4×1矩阵寄存器。
作为对本技术方案的进一步限定,所述投影运算矩阵乘法器包括2个4×4矩阵寄存器和1个4×1矩阵寄存器。
作为对本技术方案的进一步限定,所述变换矩阵存储器中存储有平移、缩放、绕x轴旋转、绕y轴旋转、绕z轴旋转共五种变换矩阵。
本发明还公开了一种高效顶点处理方法,其特征在于,包括如下步骤:
(1)初始化顶点变换矩阵生成乘法器、顶点运算矩阵乘法器和投影运算矩阵乘法器中的4×4矩阵寄存器为单位矩阵;
(2)在变换矩阵分配控制器的控制下,从变换矩阵存储器中读入一个矩阵到变换矩阵载入先进先出存储单元中,将变换矩阵载入先进先出存储单元中的变换矩阵送进顶点变换矩阵生成乘法器中进行运算,同时从变换矩阵存储器中读入所需进行操作的另一个矩阵到变换矩阵载入先进先出存储单元中;
(3)判断所需进行级联的变换矩阵是否级联完毕,即变换矩阵载入先进先出存储单元是否为空,如果没有级联完毕,则将相乘得到的矩阵送入顶点变换矩阵生成乘法器的其中一个4×4矩阵寄存器中,转步骤(2),否则将所得到的变换矩阵送入顶点运算矩阵乘法器的一个4×4矩阵寄存器中;
(4)将顶点数据通过顶点输入先进先出存储单元送到顶点运算矩阵乘法器中的一个4×1寄存器中,与步骤(3)中得到的变换矩阵进行乘法运算,得到的顶点数据暂存到数据暂存器中;
(5)将投影矩阵载入到投影运算矩阵乘法器的一个4×4矩阵寄存器中,同时将步骤(4)中暂存的顶点数据载入到投影运算矩阵乘法器中的4×1矩阵寄存器中,与投影矩阵进行乘法运算完成投影操作后经由顶点输出先进先出存储单元输出。
与现有技术相比,本发明的优点和积极效果是:本发明采用管道式设计,可以减少顶点变换处理所需要的硬件资源,从而优化GPU的结构,减少完成顶点变换所需的时间。
附图说明
图1为本发明的原理方框图。
图2为本发明具体结构示意图。
具体实施方式
下面结合附图和优选实施例对本发明作更进一步的详细描述。
参见图1和图2,本发明包括变换矩阵存储器、顶点存储器和投影矩阵存储器,变换矩阵存储器存储进行每一个基本操作所需要的变换矩阵,包括平移、缩放、绕x轴旋转、绕y轴旋转、绕z轴旋转共五种变换矩阵,该部分的矩阵完成由模型坐标系到世界坐标系的变换。顶点存储器用于存储需要进行顶点运算的顶点数据。投影矩阵存储器存储两种投影矩阵,投影矩阵完成图形的投影操作。变换矩阵存储器、顶点存储器和投影矩阵存储器均采用现有技术,在此不再赘述。
所述变换矩阵存储器连接变换矩阵载入先进先出存储单元,利用先进先出结构进行并行运算可以增加运算效率。所述顶点存储器连接顶点输入先进先出存储单元,所述投影矩阵存储器连接投影矩阵载入单元,所述变换矩阵载入先进先出存储单元连接变换矩阵生成单元,所述顶点输入先进先出存储单元连接坐标变换单元,所述投影矩阵载入单元连接投影单元,所述变换矩阵生成单元连接所述坐标变换单元,所述坐标变换单元连接所述投影单元,所述投影单元连接顶点输出先进先出存储单元。变换矩阵载入先进先出存储单元、顶点输入先进先出存储单元和投影矩阵载入单元均采用现有技术,在此不再赘述。
所述变换矩阵生成单元包括:
变换矩阵分配控制器:根据所需进行的操作对相应的变换矩阵中的参数进行赋值,并将其载入到变换矩阵先进先出存储单元中,用于控制变换矩阵的级联操作;
顶点变换矩阵生成乘法器:采用高精度的矩阵乘法器,能实现4×4矩阵与4×4矩阵的乘法运算,用于进行顶点变换所需要的变换矩阵的级联。
所述坐标变换单元包括:
顶点运算矩阵乘法器:能实现4×4矩阵与4×1矩阵的乘法运算,完成顶点与变换矩阵的乘法运算;
数据暂存器:缓存经顶点运算矩阵乘法器计算后得到的顶点数据。
所述投影单元包括:
投影运算矩阵乘法器:能实现4×4矩阵与4×1矩阵的乘法运算,完成顶点与投影矩阵的乘法运算;
投影变换控制器:控制投影运算矩阵乘法器利用顶点与投影矩阵的乘法运算完成投影操作。
所述顶点变换矩阵生成乘法器包括3个4×4矩阵寄存器。
所述顶点运算乘法器包括2个4×4矩阵寄存器和1个4×1矩阵寄存器。
所述投影运算矩阵乘法器包括2个4×4矩阵寄存器和1个4×1矩阵寄存器。
所述变换矩阵存储器中存储有平移、缩放、绕x轴旋转、绕y轴旋转、绕z轴旋转共五种变换矩阵。
本发明还公开了一种高效顶点处理方法,包括如下步骤:
(1)初始化顶点变换矩阵生成乘法器、顶点运算矩阵乘法器和投影运算矩阵乘法器中的4×4矩阵寄存器为单位矩阵;
(2)在变换矩阵分配控制器的控制下,从变换矩阵存储器中读入一个矩阵到变换矩阵载入先进先出存储单元中,将变换矩阵载入先进先出存储单元中的变换矩阵送进顶点变换矩阵生成乘法器中进行运算,同时从变换矩阵存储器中读入所需进行操作的另一个矩阵到变换矩阵载入先进先出存储单元中;
(3)判断所需进行级联的变换矩阵是否级联完毕,即变换矩阵载入先进先出存储单元是否为空,如果没有级联完毕,则将相乘得到的矩阵送入顶点变换矩阵生成乘法器的其中一个4×4矩阵寄存器中,转步骤(2),否则将所得到的变换矩阵送入顶点运算矩阵乘法器的一个4×4矩阵寄存器中;
(4)将顶点数据通过顶点输入先进先出存储单元送到顶点运算矩阵乘法器中的一个4×1寄存器中,与步骤(3)中得到的变换矩阵进行乘法运算,得到的顶点数据暂存到数据暂存器中;
(5)将投影矩阵载入到投影运算矩阵乘法器的一个4×4矩阵寄存器中,同时将步骤(4)中暂存的顶点数据载入到投影运算矩阵乘法器中的4×1矩阵寄存器中,与投影矩阵进行乘法运算完成投影操作后经由顶点输出先进先出存储单元输出。
本发明未经描述的技术特征可以通过或采用现有技术实现,在此不再赘述,当然,上述说明并非是对本发明的限制,本发明也并不仅限于上述举例,本技术领域的普通技术人员在本发明的实质范围内所做出的变化、改型、添加或替换,也应属于本发明的保护范围。
Claims (9)
1.一种高效顶点处理装置,包括变换矩阵存储器、顶点存储器和投影矩阵存储器,其特征是:所述变换矩阵存储器连接变换矩阵载入先进先出存储单元,所述顶点存储器连接顶点输入先进先出存储单元,所述投影矩阵存储器连接投影矩阵载入单元,所述变换矩阵载入先进先出存储单元连接变换矩阵生成单元,所述顶点输入先进先出存储单元连接坐标变换单元,所述投影矩阵载入单元连接投影单元,所述变换矩阵生成单元连接所述坐标变换单元,所述坐标变换单元连接所述投影单元,所述投影单元连接顶点输出先进先出存储单元。
2.根据权利要求1所述的高效顶点处理装置,其特征是:所述变换矩阵生成单元包括:
变换矩阵分配控制器:根据所需进行的操作对相应的变换矩阵中的参数进行赋值,并将其载入到变换矩阵先进先出存储单元中,用于控制变换矩阵的级联操作;
顶点变换矩阵生成乘法器:采用高精度的矩阵乘法器 ,能实现4×4矩阵与4×4矩阵的乘法运算,用于进行顶点变换所需要的变换矩阵的级联。
3.根据权利要求1所述的高效顶点处理装置,其特征是:所述坐标变换单元包括:
顶点运算矩阵乘法器:能实现4×4矩阵与4×1矩阵的乘法运算,完成顶点与变换矩阵的乘法运算;
数据暂存器:缓存经顶点运算矩阵乘法器计算后得到的顶点数据。
4.根据权利要求1所述的高效顶点处理装置,其特征是:所述投影单元包括:
投影运算矩阵乘法器:能实现4×4矩阵与4×1矩阵的乘法运算,完成顶点与投影矩阵的乘法运算;
投影变换控制器:控制投影运算矩阵乘法器利用顶点与投影矩阵的乘法运算完成投影操作。
5.根据权利要求2所述的高效顶点处理装置,其特征是:所述顶点变换矩阵生成乘法器包括3个4×4矩阵寄存器。
6.根据权利要求3所述的高效顶点处理装置,其特征是:所述顶点运算乘法器包括2个4×4矩阵寄存器和1个4×1矩阵寄存器。
7.根据权利要求4所述的高效顶点处理装置,其特征是:所述投影运算矩阵乘法器包括2个4×4矩阵寄存器和1个4×1矩阵寄存器。
8.根据权利要求1所述的高效顶点处理装置,其特征是:所述变换矩阵存储器中存储有平移、缩放、绕x轴旋转、绕y轴旋转、绕z轴旋转共五种变换矩阵。
9.一种高效顶点处理方法,其特征在于,包括如下步骤:
(1)初始化顶点变换矩阵生成乘法器、顶点运算矩阵乘法器和投影运算矩阵乘法器中的4×4矩阵寄存器为单位矩阵;
(2)在变换矩阵分配控制器的控制下,从变换矩阵存储器中读入一个矩阵到变换矩阵载入先进先出存储单元中,将变换矩阵载入先进先出存储单元中的变换矩阵送进顶点变换矩阵生成乘法器中进行运算,同时从变换矩阵存储器中读入所需进行操作的另一个矩阵到变换矩阵载入先进先出存储单元中;
(3)判断所需进行级联的变换矩阵是否级联完毕,即变换矩阵载入先进先出存储单元是否为空,如果没有级联完毕,则将相乘得到的矩阵送入顶点变换矩阵生成乘法器的其中一个4×4矩阵寄存器中,转步骤(2),否则将所得到的变换矩阵送入顶点运算矩阵乘法器的一个4×4矩阵寄存器中;
(4)将顶点数据通过顶点输入先进先出存储单元送到顶点运算矩阵乘法器中的一个4×1寄存器中,与步骤(3)中得到的变换矩阵进行乘法运算,得到的顶点数据暂存到数据暂存器中;
(5)将投影矩阵载入到投影运算矩阵乘法器的一个4×4矩阵寄存器中,同时将步骤(4)中暂存的顶点数据载入到投影运算矩阵乘法器中的4×1矩阵寄存器中,与投影矩阵进行乘法运算完成投影操作后经由顶点输出先进先出存储单元输出。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410414904.9A CN104156910A (zh) | 2014-08-22 | 2014-08-22 | 一种高效顶点处理装置及处理方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410414904.9A CN104156910A (zh) | 2014-08-22 | 2014-08-22 | 一种高效顶点处理装置及处理方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN104156910A true CN104156910A (zh) | 2014-11-19 |
Family
ID=51882401
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410414904.9A Pending CN104156910A (zh) | 2014-08-22 | 2014-08-22 | 一种高效顶点处理装置及处理方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN104156910A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112581580A (zh) * | 2020-12-24 | 2021-03-30 | 西安翔腾微电子科技有限公司 | 一种基于sysML视图的GPU投影变换模块的TLM装置及操作方法 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6731303B1 (en) * | 2000-06-15 | 2004-05-04 | International Business Machines Corporation | Hardware perspective correction of pixel coordinates and texture coordinates |
CN101470892A (zh) * | 2008-01-25 | 2009-07-01 | 威盛电子股份有限公司 | 绘图处理单元以及执行单元 |
CN101754039A (zh) * | 2009-12-22 | 2010-06-23 | 中国科学技术大学 | 面向移动设备的3d参数解码系统 |
CN102834849A (zh) * | 2011-03-31 | 2012-12-19 | 松下电器产业株式会社 | 进行立体视图像的描绘的图像描绘装置、图像描绘方法、图像描绘程序 |
-
2014
- 2014-08-22 CN CN201410414904.9A patent/CN104156910A/zh active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6731303B1 (en) * | 2000-06-15 | 2004-05-04 | International Business Machines Corporation | Hardware perspective correction of pixel coordinates and texture coordinates |
CN101470892A (zh) * | 2008-01-25 | 2009-07-01 | 威盛电子股份有限公司 | 绘图处理单元以及执行单元 |
CN101754039A (zh) * | 2009-12-22 | 2010-06-23 | 中国科学技术大学 | 面向移动设备的3d参数解码系统 |
CN102834849A (zh) * | 2011-03-31 | 2012-12-19 | 松下电器产业株式会社 | 进行立体视图像的描绘的图像描绘装置、图像描绘方法、图像描绘程序 |
Non-Patent Citations (1)
Title |
---|
BOZHI LIU ET AL: "Architecture for Vertex Transformation and Triangle Clipping in 3D Graphics", 《2013 INTERNATIONAL CONFERENCE ON MECHATRONICS AND INFORMATION TECHNOLOGY(ICMIT 2013)》 * |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112581580A (zh) * | 2020-12-24 | 2021-03-30 | 西安翔腾微电子科技有限公司 | 一种基于sysML视图的GPU投影变换模块的TLM装置及操作方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6309620B2 (ja) | 頂点シェーダのフロント・エンドとしてコンピュート・シェーダを使用すること | |
Schmittler et al. | Realtime ray tracing of dynamic scenes on an FPGA chip | |
EP1594091B1 (en) | System and method for providing an enhanced graphics pipeline | |
CN101281656B (zh) | 用于将纹理映射到三维对象模型的方法和装置 | |
US20190197761A1 (en) | Texture processor based ray tracing acceleration method and system | |
TW201601115A (zh) | 藉由近似頂點至彎曲視埠上的投影在圖形處理中隨螢幕位置變化有效解析度 | |
CN105556565A (zh) | 片段着色器执行顶点着色器计算 | |
JPWO2007132746A1 (ja) | 処理装置 | |
US20080266286A1 (en) | Generation of a particle system using a geometry shader | |
JP7122396B2 (ja) | グラフィックスパイプラインにおけるメモリ使用削減のためのコンパイラ支援技法 | |
US20180211434A1 (en) | Stereo rendering | |
CN110807827A (zh) | 系统生成稳定的重心坐标和直接平面方程访问 | |
JP2012190428A (ja) | 立体映像視覚効果処理方法 | |
RU2680355C1 (ru) | Способ и система удаления невидимых поверхностей трёхмерной сцены | |
CN105303506A (zh) | 一种基于html5的数据并行处理方法及系统 | |
CN103019702A (zh) | 一种可视化三维显示控制编辑系统和方法 | |
WO2018140223A1 (en) | Stereo rendering | |
CN104156910A (zh) | 一种高效顶点处理装置及处理方法 | |
JP5864474B2 (ja) | 空間を分割してグラフィックスを処理する画像処理装置及び画像処理方法 | |
US10062140B2 (en) | Graphics processing systems | |
KR101227155B1 (ko) | 저해상도 그래픽 영상을 고해상도 그래픽 영상으로 실시간 변환하는 그래픽 영상 처리 장치 및 방법 | |
US11741653B2 (en) | Overlapping visibility and render passes for same frame | |
Wang et al. | LVDIF: a framework for real-time interaction with large volume data | |
US20130106887A1 (en) | Texture generation using a transformation matrix | |
CN111951336B (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 | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20141119 |
|
RJ01 | Rejection of invention patent application after publication |