[发明专利]一条指令完成一次蝶形运算的微处理器实现方法无效
申请号: | 200910090205.2 | 申请日: | 2009-07-31 |
公开(公告)号: | CN101615113A | 公开(公告)日: | 2009-12-30 |
发明(设计)人: | 何虎;刘源;沈钲 | 申请(专利权)人: | 清华大学 |
主分类号: | G06F9/302 | 分类号: | G06F9/302;G06F9/38 |
代理公司: | 北京市立方律师事务所 | 代理人: | 张 磊 |
地址: | 100084北*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一条 指令 完成 一次 蝶形 运算 微处理器 实现 方法 | ||
技术领域
本发明涉及计算机技术领域,特别涉及一种一条指令完成一次蝶形运算的微处理器实现方法。
背景技术
微处理器是一个集成在一片上的半导体集成电路,包括对一系列算术逻辑操作的控制和执行。微处理器大致可以分为两类:通用微处理器和专用微处理器。通用微处理器可以使用户通过编程的方法实现广泛的功能,因此常在个人电脑(PC)上用作中央处理器(CPU)。与之对应的是,专用处理器只用于特定的环境,因为知道处理器的主要功能,设计者就可以使用需求来建立处理器结构,使得在性能上专用处理器的专用单元可以比通用处理器对应单元显著增强。
数字信号处理就是专用处理器的一个典型应用。数字信号处理包括信号获取,信号传输,信号处理,使用大量技术的一种专用微处理器即数字信号处理器(DSP)。数字信号处理需要处理大量数据,为了适应此特征,数字信号处理器优化了密集运算和存储器访问的效率。比如,在快速傅里叶变换(FFTs)和数字滤波器的实现中包括大量重复操作比如乘加和位移,数字信号处理器提供了特别的功能以适应这些重复的操作,使得在实时应用比如图像和声音处理中其性能比起通用处理器有很大的提升。
DSP在目前的电子产品中有广泛的应用,比如数字电话,视频会议设备,复杂自动化系统等。可以预见的是,DSP在将来会有更多的数字系统中能有更广泛的应用。
目前,微处理器设计者正在努力开发指令并行度以增加微处理器的性能。应用于现代处理器中的一种并行结构,具有取指指令包和多个执行指令包以及多个功能单元,参见超长指令字(VLIW)结构。
设计者也使用一些通用于微处理器的方法成功提升了DSP的性能。包括,增加时钟速度,在电路结构中消除数据处理的瓶颈,在处理器中增加更多的执行单元,增加编译器的调度能力以产生更有效的执行代码。
现有技术存在的缺点是,当前微处理器的性能还有待提升。
发明内容
本发明的目的旨在至少解决上述技术缺陷之一,特别是解决现有微处理器性能不足的问题。
为达到上述目的,本发明一方面提出一种一条指令完成一次蝶形运算的微处理器实现方法,包括以下步骤:解码级解析指令,并生成操作码和旁路控制信号;根据指令从源寄存器中获取第一操作数和第二操作数;根据所述旁路控制信号选择进行一级操作或者两级操作,并根据生成的所述操作码进行蝶形运算。
在本发明的一个实施例中,如果所述指令为BTFDTPR.2指令,则所述生成选择两级操作的旁路控制信号。
在本发明的一个实施例中,所述两级操作包括:将第一操作数和第二操作数相乘的第一执行级,且所述第一执行级将相乘的乘积结果送入第二执行级;和,将所述乘积结果相加和相减,并将相加和相减结果移位的第二执行级,且所述第二执行级将移位结果放入目标寄存器中的相应位置。
在本发明的一个实施例中,所述将第一操作数和第二操作数相乘包括:将所述第一操作数和第二操作数的高16位和低16位分别相乘,并将两个32位的乘积结果送入流水线寄存器。
在本发明的一个实施例中,所述将所述乘积结果相加和相减,并将相加和相减结果移位包括:将两个乘积结果分别相加和相减,存入临时寄存器;将相加和相减的结果带补偿右移16位,并将两个移位后的16位分别放入目标寄存器的高16位和低16位。
在本发明的一个实施例中,所述微处理器包括一个指令获取单元、指令分发单元、六个执行单元XA,XM,XD,YA,YM,YD、和三组通用寄存器堆X,Y,G。
在本发明的一个实施例中,各个执行单元与寄存器的连接是完全对称的。
在本发明的一个实施例中,所述执行单元XM包括乘法单元、多路选择器MUX、加法单元,所述乘法单元,用于根据所述操作码将第一操作数和第二操作数相乘;所述MUX,用于根据所述旁路控制信号将所述第一操作数和第二操作数,或者所述乘法单元的乘积结果提供给所述加法单元;所述加法单元,根据所述操作码或者操作码寄存器中暂存的操作码将所述乘积结果相加和相减,并将相加和相减结果移位。
在本发明的一个实施例中,所述加法单元与操作码选择器相连,所述操作码选择器根据所述旁路控制信号选择所述操作码或者操作码寄存器中暂存的操作码。
通过本发明能够实现一条指令完成一次蝶形单元运算的功能,从而能够有效地提高处理器的性能。
本发明附加的方面和优点将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本发明的实践了解到。
附图说明
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于清华大学,未经清华大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/200910090205.2/2.html,转载请声明来源钻瓜专利网。