专利名称:一种应用于gpu中的幂指数运算装置和运算方法
技术领域:
本发明涉及集成电路领域,特别是涉及一种应用于嵌入式系统中涉及图形学中 Phong光照模型里的高光计算方法。
背景技术:
Phong光照计算模型是一种能够产生真实感很强的颜色计算方法,该计算模型与物理事实足够接近,对各种光照条件和材质属性都能获得很好的绘制效果,但是该算法计算量大,运算复杂,特别是,其中的高光计算部分还应用了幂指数运算Cosx Θ,是Phong光照计算模型中最耗时的部分。随着3D图形应用对图像真实感的要求越来越高,Phong模型也越来越多得应用到光照计算中。而对于嵌入式系统,其处理器能力有限。将Phong光照模型应用到嵌入式系统当中,需要快速准确的计算出COSxQ的结果,并且在集成电路设计时还要满足嵌入式系统面积和功耗的要求。目前,计算幂指数的方法主要有查找表法和分段直线近似法。查找表(LookUp Table,LUT)将预先计算好的值存进Ram中,然后根据输入X在表中查找出最接近的结果。这种方法采样点越多,结果的精度就越高,但是同时所需的存储空间就越大。而且这种方法只能用于单输入,对COSx Θ的查找需要三步。图形硬件中的特殊功能单元(Special Function Unit,SFU)是一种基于查找表的方法,能够计算除倒数,倒数的平方根,以2为底的对数,以 2为底的指数以及求小数部分五种功能。利用SFU查找出Cosx Θ的结果的步骤为I)根据输入cos Θ在LUT中找出对应的系数cO,cl, c2 ;2)计算 cO+clgcos Θ +c2gcos2 Θ ,得至Ij Iog2Cos Θ 的近似结果;3)计算 mul_result = xlog2cos θ ;4)根据输入mul_result在LUT中查找出对应的系数c3, c4, c5 ;5)计算 c3+c4gmul_result+c5gmul_result2,即得到 cosx Θ 的近似值。用SFU计算Cosx Θ所花费的资源太多。需要用到两块LUT,七次乘法,四次加法, 计算所需的cycle数也比较长。并且精度越高,LUT就会越大。因此,这种方法不适合应用于嵌入式系统中。分段直线近似法分别将区间
的log2(l+f)曲线和2f曲线用分段直线去近似。分的段数越多,结果就越精确,但同时硬件的开销也会增大。目前主要有三段和8段两种分段方法。三段(记做3u-3u)将区间
分为
、[1/4,3/4]、[3/4,I]三个区间;八段(记做8-8)将区间
按1/8的间隔平均分成8段。以上两种分段直线近似的方法与查找表法相比,硬件的开销会小一些,误差会比查找表法大,把这种方法应用到图形算法中,生成图形像素的RGB颜色值的误差会比较大(最大为3)。但是,可以对分段方法做一些优化,以提闻精度,减小误差。有上述现有技术的分析可知,查找表法所占用的硬件资源比较多,计算也比较耗时。传统的分段直线近似法虽然占用的硬件资源比较少,但是误差比较大。
发明内容
基于上述现有技术,本发明提出一种应用于GPU中的幂指数运算装置和运算方法,基于分段直线近似的方法实现了 Phong模型中的高光计算中的幂指数运算。本发明提出了一种应用于GPU中的幂指数运算方法,该方法包括以下步骤第一步,计算Iog2Cos Θ ,数学表达式为
权利要求
1.一种应用于GPU中的幂指数运算方法,其特征在于,该方法包括以下步骤第一步, 计算Iog2Cos Θ ,数学表达式为
2.—种应用于GPU中的幂指数运算装置,其特征在于,该运算装置包括Iog2Cose运算单元和运算单元,所述l0g2C0S Θ运算单元包括第一、第二多路选择器,二进制23位乘以16位的CSA乘法器和第一、第二加法器;第一多路器包括a。 a7共8路输入,s [7:0]为选通信号,且s[7:0]为八位2进制数,第二多路选择器包括C。 C7共8路输入,s[7:0]为选通信号,且s[7:0]为八位2进制数;所述二进制23位乘以16位的CSA乘法器用于实现 Iog2Cos Θ运算,数学表达式为
全文摘要
本发明涉及集成电路领域,特别是公开了一种应用于GPU中的幂指数运算硬件装置和运算方法第一步,计算log2cosθ第二步,计算xlog2cosθ;第三步,计算2mul_result;第四步,得到2mul_result之后,就可以用IEEE754单精度浮点数表示cosxθ的近似值。与现有技术相比,本发明能够能够在满足嵌入式系统因为空间大小和功耗而受限制的计算能力的同时,快速而又比较准确的图形处理单元完成Phong模型中的高光计算,为集成电路的设计提供了具有更好的图形处理能力的嵌入式系统设计。
文档编号G06F7/552GK102609236SQ201210019688
公开日2012年7月25日 申请日期2012年1月21日 优先权日2012年1月21日
发明者孙济洲, 常轶松, 李炳超, 郭炜, 魏继增 申请人:天津大学