[发明专利]编译可编程剔除单元有效
申请号: | 201010620058.8 | 申请日: | 2010-12-21 |
公开(公告)号: | CN102103512A | 公开(公告)日: | 2011-06-22 |
发明(设计)人: | R·M·托特;F·P·克莱伯格;J·N·哈塞尔格林;C·J·穆克伯格;T·G·阿凯奈-莫勒 | 申请(专利权)人: | 英特尔公司 |
主分类号: | G06F9/45 | 分类号: | G06F9/45 |
代理公司: | 上海专利商标事务所有限公司 31100 | 代理人: | 毛力;袁逸 |
地址: | 美国加利*** | 国省代码: | 美国;US |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 编译 可编程 剔除 单元 | ||
背景技术
本发明一般涉及数字表示的图形,尤其涉及改善生成数字表示的图形的性能。
在20世纪80年代和90年代,出现了带有图形加速器的用于计算机和游戏控制台的显示适配器,从而在图形生成中使中央处理单元(CPU)卸载。最初,显示适配器提供2D图形的加速,但最终它们也包括支持加速3D图形。现代显示适配器使用通常称为图形处理单元(GPU)的处理单元。
由于3D图形的复杂性,GPU将其大量处理能力用于执行与3D图形有关的计算。总是有需要更高帧率(每秒呈现的屏幕图像)、更高分辨率和更高图像质量的新应用和游戏,从而产生应当在尽可能短的时间里呈现每个屏幕图像的要求。换言之,提高性能总是重要的。
可通过实现更高的时钟速度、管线化、或利用并行计算以提高GPU的处理能力来提高性能。然而,这往往产生更多热量,从而冷却GPU而产生更多功耗和更高风扇噪音。此外,对每个GPU的时钟速度是有限制的。
附图简述
图1是示出根据本发明实施例的在显示适配器中不同实体如何交互的框图。
图2是示出图1的显示适配器中使用的不同程序之间的关系的示意框图。
图3示出可在图1的显示适配器中使用区间算术来剔除瓦块的示例。
图4a和4b示出可在图1的显示适配器中执行的剔除过程的流程图。
图5示出实施图1的显示适配器的典型通用计算机的概览架构。
图6a是示出图1的显示适配器中的输入值的例外情形的显示视图。
图6b是示出图6a的情形中的输入值的曲线图。
图7a和7b是可在图1的显示适配器中使用的纹理的说明性透视图。
图8a-d是可在图1的显示适配器中使用的纹理的说明性视图。
图9是一个实施例的流程图。
详细描述
参照图1,显示适配器100可包括多边形构造块102,其负责如所连接的中央处理单元(CPU)570(图5中所示)所指示地构造多边形。尽管可使用任何多边形,通常使用三隅角形。对于每个多边形,瓦块光栅器104将要呈现的多边形划分成一个或多个瓦块(tile),其中每个瓦块至少部分地与该多边形交迭。一般而言,瓦块是一群片断。在一个实施例中,瓦块是包含多个片断的二维矩形。这些片断各自对应于一像素,且包含用于呈现该像素以及测试是否应当在屏幕上呈现该像素所需的所有数据。瓦块的常见大小是8x8片断,但任何大小的瓦块都落在本发明的范围内。
分层深度剔除块106执行分层深度剔除,这是基于深度缓冲的剔除。这里,可执行保守测试以证明该瓦块是否被深度缓冲器中的内容覆盖。换言之,该测试确定从观看者的观点来看是否有另一个所呈现的对象完全覆盖该瓦块中的多边形。如果是这种情形,则整个瓦块可被剔除,即被挑出以作较少处理,例如被跳过。这随后在一些实施例中可得到性能增益。分层深度剔除可在可编程剔除单元108的剔除之前或之后执行。该单元可以是固定函数,这在一个实施例中意味着其不执行可置换程序。
在可编程剔除单元108中,根据也称为可置换剔除模块的可置换剔除程序118来执行剔除。该剔除程序118的细节以及作用在下文结合图4a更详细地解释。
在片断光栅器110中,经可编程剔除单元108处理的瓦块被分解成与多边形交迭的片断。这些片断各自对应于一像素,且包含用于呈现该像素以及测试是否应当在屏幕上呈现该像素所需的数据。片断数据可包括光栅位置、深度、色彩、纹理坐标、模板、α(阿尔法,用于混合)等。对于每个像素,可能存在多个片断样本。
在片断编程单元112中,使用片断程序120来处理从片断光栅器输出的片断。该单元的目的是为了执行诸如将先前评估的色彩与纹理组合、以及添加诸如雾等效果、以及在可能时标识不需要呈现的片断(即,片断剔除)等任务。
纹理单元114用于例如使用一维、二维、三维、四维和立方图纹理进行纹理查找,以及将这些提供给可编程剔除单元108和片断编程单元112。
混合/深度/α单元116使用从片断编程单元112提供的片断在将这些片断写入目标缓冲器之前执行深度测试、α测试、以及混合。
图2中所示的组合程序或编译器程序222可用于自动生成在可编程剔除单元108中使用的剔除程序118和在片断编程单元112中使用的片断程序120。任选地,程序员可编写单独的剔除和片断程序118、120。
作为示例,考虑组合程序222的伪代码段(1),其原始编写成用作片断程序:
DP3d,n,I (1)
KIL d<0
TEX2D c,t0,r1
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于英特尔公司,未经英特尔公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201010620058.8/2.html,转载请声明来源钻瓜专利网。
- 上一篇:具离心风扇的电子装置
- 下一篇:用于钎焊热交换器管的铝合金带