VLIW体系的多簇DSP分簇算法的研究和复数运算的优化

来源 :中国科学技术大学 | 被引量 : 0次 | 上传用户:hnsushiheng
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
现代数字信号处理器(DSP)一般采取超长指令字或是超标量来实现指令级并行。超长指令字(VLIW)数字信号处理器将并行任务的识别和调度交给了编译器,因此在利用VLIW DSP的时候需要有一个功能更为强大的编译器。编译器代替硬件去进行指令调度的工作。BWDSP是中国电子集团某研究所自主研发的一款高性能数字信号处理器,它采用的是多簇结构的超长指令字架构。为了能利用C语言为BWDSP开发应用,我们将Open64编译基础设施移植到BWDSP上。并针对特定的架构和指令集,为BWDSP编译器做了优化。由于BWDSP采用的是多簇的结构,因此为了使得BWDSP编译器能充分利用处理器自身提供的资源,需要设计一个分簇算法。这个分簇算法能合理的将各个指令分配到相应的簇上面执行。由于多簇架构中,各个簇上的执行单元只能访问自身簇上的寄存器,因此如果一条指令需要利用到其他簇上指令的结果就必须利用簇间传输指令。分簇算法就需要解决并行度和簇间传输的平衡。本文提出基于SSA(静态单赋值,Static Single Assignment)数据流图的分簇算法。算法首先为基本块构建静态单赋值形式的数据流图,并自底向上遍历数据流图来计算各条指令分到某个簇上的资源得分和簇间传输的得分,通过比较这两者的得分并选择得分较高的簇作为该指令执行的簇。本文还通过多组实验验证了该算法编译器的编译性能确有提升。数字信号处理器上一类最常见的计算就是复数运算,例如FFT等都包含了大量的复数运算。而BWDSP在设计的时候就已经考虑到这一点,因此它的指令集中就包含了复数运算指令。然而Open64并没有对这类指令做进一步优化处理,因此我们需要对复数运算做进一步优化来获取更高的性能。添加复数运算的机器描述并通过编译制导来将识别复数运算之后合成复数指令。除此之外,我们还在分簇和寄存器分配模块为复数运算做了相应的修改。
其他文献
随着网络技术和计算机技术的快速发展,电子文档成为日常学习和工作中不可或缺的资料。数学表达式作为许多电子文档重要的组成部分,如何将其输入到计算机中是亟待解决的问题。早
随着智能电网建设的快速发展,电力系统设备种类和数量越来越多,对电力设备图像的特征提取和准确分类,有利于提升电力系统管理的自动化和智能化水平。本文首先对从现场采集到的电
目前,每年生物医学文献的数量正在呈指数的方式增长,科研人员为了得到好的研究成果,需要查找阅读大量的文献,但如此大规模的文献,给科研人员带来了巨大的困难。同时,现代科学
集成学习的主要思想是融合多个分类学习算法的分类性能来提高整体分类算法的泛化能力。构建一个具有多样性/差异度大的弱分类学习算法集合是集成学习取得高泛化能力的关键。对
相比传统网络,泛在网中设备数量众多,种类繁杂,且许多数据源网络长期处于无人值守的工作状态。泛在设备的存储和计算能力相比传统网络也更加有限,当前,大多数数据源网络之间
数据统计显示,意外事故发生时,当事人几分钟之内的死亡率为50%;几小时内的死亡率为30%;受伤之后,在几星期内死亡的占20%。而且,立即死亡的当事人,绝大部分丧生于事故现场。可见
人脸识别凭借其友好、便捷、隐蔽性等优势成为生物识别领域的热点研究课题之一。经过近50年的发展,基于二维图像的人脸识别技术日趋成熟,但受限于二维图像的数据形式,二维人
集电力电子和智能控制于一体的无刷直流电机(Brushless DC Motor,BLDCM),得益于其电能转化效率高、使用寿命长及维护维修方便的优势,已广泛应用于工业控制、交通运输、家用电气
三维网格模型在计算机图形学中具有主导地位。它广泛应用于电影、游戏、计算机辅助设计、模拟仿真、艺术与历史、医药等众多领域。基于多边形网格模型的数字几何处理技术不断
随着互联网的发展,数据呈现几何式的增长,如何能够从巨大的数据中快速寻找出对自己有用的数据,将会是大家面临的一个问题。搜索技术的出现方便了人们快速而且有效的获取信息