[发明专利]GPU中一种快速读取顶点的实现方法有效

专利信息
申请号: 201210287997.4 申请日: 2012-08-14
公开(公告)号: CN102819819A 公开(公告)日: 2012-12-12
发明(设计)人: 焦永 申请(专利权)人: 长沙景嘉微电子股份有限公司
主分类号: G06T1/20 分类号: G06T1/20
代理公司: 暂无信息 代理人: 暂无信息
地址: 410205 湖南*** 国省代码: 湖南;43
权利要求书: 查看更多 说明书: 查看更多
摘要:
搜索关键词: gpu 一种 快速 读取 顶点 实现 方法
【说明书】:

技术领域

发明主要涉及到GPU设计领域,特指GPU中绘图命令解析和图元顶点获取领域。

背景技术

顶点数据的组织和读取是固定流水线实现的GPU中一个重要问题。它的好坏直接影响到绘图的效率。传统的做法是在命令字中指定图元类型、分量个数、顶点个数、各个分量的起始地址及Stride等信息,往往一个绘图命令需要多个(7个或更多)命令字来描述,这样做的缺点是:(1)由于命令字较多,给PCI总线带来很大的压力,在绘制过程中,PCI总线需要一直传送命令,而由于频率的限制,命令的传送速度往往跟不上绘制速度;(2)由于每个分量都需要按照命令字指定的起始地址和Stride等信息向DDR发请求取数据,导致Burst比较小,读取DDR的延迟就比较大,读取一个顶点的数据往往需要发送多次读请求才能获取数据,不能充分利用DDR的带宽。

发明内容

本发明要解决的问题就在于:针对现有技术存在的缺点,本发明提供了一种GPU中快速取顶点的实现结构,该实现结构通过将顶点数据顺序组织,加大Burst值的读取方式,充分利用存储器带宽,大大提高了取顶点的效率,同时采用这种方式还可以减小命令字的个数。

本发明的实现方法需要将顶点数据按照固定的顺序存放,若当期的图元为线段,要求线段的每个顶点的数据都按照X、Y、Z、W、R、G、B、A(均为32位单精度浮点数据,分别对应顶点的横坐标,纵坐标,深度坐标,齐次坐标系数,颜色分量红、绿、蓝、透明度)的顺序连续存放,若当前图元为三角形,要求三角形的每个顶点数据都按照X、Y、Z、W、R、G、B、A、S、T(均为32位单精度浮点数据,分别对应顶点的横坐标,纵坐标,深度坐标,齐次坐标系数,颜色分量红、绿、蓝、透明度,纹理图片横坐标,纹理图片纵坐标)、0、0(补充两个0数据是为了使数据128位对齐,有利于DDR的高位宽)的顺序存放,同时CPU通过PCI总线对图元管理模块配置顶点数据的起始存放地址(通过配置图元管理模块相应的寄存器可以实现,图元管理模块以此地址为起始地址连续从DDR中取顶点数据);然后CPU通过PCI总线向命令解析模块发送命令,命令解析模块通过异步FIFO读取命令字,若当前的命令为有效命令(图元绘制命令或清空FIFO命令),则对命令字的各分量进行译码得到图元类型和顶点个数信息,并将该信息传送给图元管理模块,若在绘制过程中需要修改绘制参数(如:纹理地址切换、变换矩阵切换)或当前帧的绘制命令发送完毕,需要由软件发送一条清空FIFO的命令。图元管理模块在收到软件配置的起始地址后,向读取顶点数据模块发送起始地址,由于所有顶点数据顺序存放,故可以以较大的BurstLength(突发数目,即可以连续返回多个顶点数据)向DDR控制器发送读请求,只要读取顶点的FIFO未满,就可以按照地址递增顺序持续发送读请求,同时将得到的顶点数据发送给图元管理模块,图元管理模块根据命令要求将这些数据组织成对应的图元数据后发送给绘图模块,若当前收到的是清空FIFO的命令,图元管理模块会根据此清空命令将获取DDR数据的FIFO清空,保证下一次发送的命令不会取到错误顶点。

本发明的优点就在于:1、充分利用存储器带宽:本发明提出的快速取顶点的实现结构可以以较大的BurstLength发送读存储器请求,充分利用存储器带宽; 2、减小命令字个数:由于顶点数据按顺序存放,所以传统绘图命令字中的各分量起始地址、Stride等信息可以省略,可以将一条命令的命令字由7~8个减至2个。 

发明内容

图1是本发明实现的GPU中一种快速取顶点的实现结构;

具体实施方式

以下将结合附图和具体实施例对本发明做进一步详细说明。

如图1所示,GPU中一种快速读取顶点的实现结构。CPU通过PCI总线配置图元顶点数据的起始存放地址(图元数据均按照固定格式存放,线段顶点格式为X、Y、Z、W、R、G、B、A,三角形顶点格式为X、Y、Z、W、R、G、B、A、S、T、0、0),然后CPU通过PCI总线向命令解析模块发送命令,命令解析模块通过读取异步FIFO获得命令数据,若为合法命令则将命令字中的各分量译码并送入图元管理模块;图元管理模块根据配置的起始地址通过读顶点数据模块向DDR控制器以较大的BurstLength发送请求,在得到DDR的返回数据之后,将其写入FIFO中,只要FIFO中未满就可以持续发送读请求;图元管理模块从FIFO中读取返回数据,然后按照命令字的格式将数据组织好发送给绘图流水线;若当前得到的命令为清空FIFO命令,那么图元管理模块会发送清空信号给FIFO,将FIFO中的数据清空,保证下一次的绘制不会读取到错误顶点。

下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。

该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于长沙景嘉微电子股份有限公司,未经长沙景嘉微电子股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服

本文链接:http://www.vipzhuanli.com/pat/books/201210287997.4/2.html,转载请声明来源钻瓜专利网。

×

专利文献下载

说明:

1、专利原文基于中国国家知识产权局专利说明书;

2、支持发明专利 、实用新型专利、外观设计专利(升级中);

3、专利数据每周两次同步更新,支持Adobe PDF格式;

4、内容包括专利技术的结构示意图流程工艺图技术构造图

5、已全新升级为极速版,下载速度显著提升!欢迎使用!

请您登陆后,进行下载,点击【登陆】 【注册】

关于我们 寻求报道 投稿须知 广告合作 版权声明 网站地图 友情链接 企业标识 联系我们

钻瓜专利网在线咨询

周一至周五 9:00-18:00

咨询在线客服咨询在线客服
tel code back_top