龙芯开源社区

 找回密码
 注册新用户(newuser)
查看: 1546|回复: 0

建议龙芯添加几条复数处理指令

  [复制链接]
发表于 2015-10-25 11:34:23 | 显示全部楼层 |阅读模式
其实 MIPS/ 龙芯中的 ps (paired single) 可以当作对复数的一种硬件支持,只是缺乏几条指令而已,ps 的
加减就跟复数加减法一致。今天看到了龙芯的 neg.ps 指令,想到应该增加一条 conj.ps 就是取复共轭的指令,
仅仅把第二个浮点取相反数。 还需要支持的就是复数乘法 cmul.ps 指令,其实有了复共轭运算指令之后,如果
支持 ps 的归并加减指令,那么用5、6条 ps 指令可以模拟复数乘法,不一定要专门的复数乘法指令。当然如果能增加一条硬件指令而不带来其它问题的话更好。

有人可能觉得 ps 的单精度复数用处不大,因为一般用到复数的都是科学运算,而科学运算通常要双精度浮点。其实不然,单精度复数在二维图形图像处理方面用到很多,通过硬件对单精度复数的支持能够广泛提升相关性能而不付出额外成本(反正已经硬件已经支持 ps 数据,再增加一两条指令问题不大)。

本版积分规则

小黑屋|手机版|Archiver|Lemote Inc.  

GMT+8, 2019-7-18 01:53 , Processed in 0.181155 second(s), 20 queries .

快速回复 返回顶部 返回列表