用于SIMD向量微处理器的多功能浮点乘加运算装置制造方法及图纸

技术编号:5309901 阅读:374 留言:0更新日期:2012-04-11 18:40
本发明专利技术公开了一种用于SIMD向量微处理器的多功能浮点乘加运算装置,它包括挂载于向量处理阵列(5)的每个向量处理单元(51)中的操作数准备单元(1)和浮点快速融合乘加单元(2),操作数准备单元(1)将输入的源操作数处理得到指数、尾数和符号位分离的操作数并输出至浮点快速融合乘加单元(2),浮点快速融合乘加单元(2)用于对所述操作数进行浮点乘加运算获取运算结果并将运算结果写回所述操作数准备单元(1)。本发明专利技术支持高效浮点矩阵运算和快速浮点求除法求倒数运算,具有浮点运算性能好、开销小、功能多、编码少、速度快的优点。

【技术实现步骤摘要】

本专利技术涉及微处理器领域,特别涉及一种用于SIMD向量微处理器的多功能浮点 乘加运算装置。
技术介绍
图像处理、雷达信号处理和现代通信等应用领域,需要超高性能的信号处理器对 大量数据进行处理,对数据计算的精度和实时性要求高。由于算法具有高的浮点计算密集 性,涉及大量的浮点矩阵运算及浮点乘加/减或卷积运算,处理器的浮点数据处理能力显 得越发重要。针对上述的应用特点,已有研究中提出了各种浮点乘加运算部件的运行机制 和硬件实现结构,使其支持浮点乘加运算。如美国专利US0,101,242 Al多功能乘加浮点单 元MULTIPURPOSE MULTIPLY-ADD FUNCTION UNIT保护了一个用于图形处理器中可配置多功 能浮点乘加运算单元,提供对双精度算术算法的直接支持;再如北京龙芯中科技术服务中 心有限公司,针对浮点乘加运算,申请的关于单双精度的兼容处理装置和方法,向量浮点乘 加运算装置和方法,从各角度提升浮点处理能力。现有技术普遍存在的缺点是第一,硬件复用率低,功能单一,利用浮点融合乘加 结构,仅实现了浮点的乘/加/乘加运算功能;第二,利用浮点乘加运算装置的现有的结构 和运算特点,实现求除法和求倒数运算,往往采用传统的不恢复除法SRT算法,或查表再配 合软件编程迭代,收敛速度慢周期长,占用较多硬件资源;第三,不能支持现代数字信号处 理算法中大规模的快速的矩阵运算,或矩阵运算的处理能力不足,编程代码量大。综上所述,尽量复用传统浮点乘加装置,提供一种可快速支持除法和倒数运算,且 支持现代信号处理中强大矩阵运算能力的浮点乘加运算装置,是本专利技术需要解决的问题。
技术实现思路
本专利技术针对上述现有技术的缺点,提供一种支持高效浮点矩阵运算和快速浮点求 除法求倒数运算,浮点运算性能好、开销小、功能多、编码少、速度快的用于SIMD向量微处 理器的多功能浮点乘加运算装置。为了解决上述技术问题,本专利技术采用的技术方案为一种用于SIMD向量微处理器的多功能浮点乘加运算装置,它包括挂载于向量处理阵 列的每个向量处理单元中的操作数准备单元和浮点快速融合乘加单元,所述操作数准备单 元将输入的源操作数处理得到指数、尾数和符号位分离的操作数并输出至浮点快速融合乘 加单元,所述浮点快速融合乘加单元用于对所述操作数进行浮点乘加运算获取运算结果并 将运算结果写回所述操作数准备单元。作为本专利技术上述技术方案的进一步改进所述操作数准备单元包括操作数选择逻辑单元和分别与操作数选择逻辑单元相连的 局部寄存器、全局矩阵寄存器、累加器,所述局部寄存器用于存放操作数或者写回的运算结 果,可被本向量处理单元访问;所述全局矩阵寄存器用于存放操作数或者写回的运算结果,支持行列访问,可被全局向量处理单元访问;所述累加器用于存放操作数或者写回的运算 结果;所述操作数选择逻辑单元的数量与向量处理阵列中向量处理单元的数量相同,所述 操作数选择逻辑单元获取指数、尾数和符号位分离的操作数并输出至浮点快速融合乘加单兀。所述操作数选择逻辑单元包括数据选择单元和分别与数据选择单元相连的操作 数例外判断单元、倒数近似值查找表、循环缓冲单元、数据分离单元,所述操作数例外判断 单元分别与局部寄存器、全局矩阵寄存器、累加器相连并对输入的操作数进行例外判断,所 述倒数近似值查找表用于为浮点除法运算的尾数输出倒数近似值,所述循环缓冲单元用于 存储除法或者求倒数运算过程的每次迭代后的中间结果,所述数据选择单元与一个用于维 护除法状态的状态机相连,所述数据选择单元根据执行运算类型选择进入数据分离单元的 操作数,所述数据分离单元将操作数分离为尾数位、指数位和符号位输出至浮点快速融合 乘加单元。所述浮点快速融合乘加单元包括符号处理模块、指数处理模块、尾数处理模块和 写回模块,所述符号处理模块、指数处理模块、尾数处理模块分别与写回模块相连,所述写 回模块将运算结果或者中间运算结果写回所述局部寄存器或者累加器。本专利技术具有下述优点本专利技术用于SIMD向量微处理器的多功能浮点乘加运算装置包括挂载于向量处理阵列 的每个向量处理单元中的操作数准备单元和浮点快速融合乘加单元,因此可以作为向量处 理单元的一个功能部件,因此可以在可进行传统的浮点乘法、加法、乘加运算的基础上可以 实现浮点矩阵运算,具有浮点运算功能丰富、硬件复用率高、硬件开销小的优点。操作数准备单元包括操作数选择逻辑单元和分别与操作数选择逻辑单元相连的 局部寄存器、全局矩阵寄存器、累加器,因此通过局部寄存器、支持全局行列访问的全局矩 阵寄存器、累加器,可以实现支持大规模的快速矩阵运算,矩阵运算能力强大,矩阵运算性 能好,而且不需要可以进行操作数的调度和选择,从而编程代码量小;操作数选择逻辑单元包括数据选择单元和分别与数据选择单元相连的操作数例外判 断单元、倒数近似值查找表、循环缓冲单元、数据分离单元,本专利技术实施例结合其硬件结构 采用快速算法,周期短速度快,可以实现快速的求倒数和浮点除法运算,占用资源小、运算 周期短、运算速度快;浮点快速融合乘加单元包括符号处理模块、指数处理模块、尾数处理模块和写回模块, 调度流水线更加合理,并且可以通过硬件实现并行执行、合并执行,浮点运算效率高。附图说明图1为本专利技术实施例的主体框架结构示意图; 图2为本专利技术实施例的结构示意图3为具有本专利技术实施例的SIMD向量微处理器的局部结构示意图; 图4为本专利技术实施例进行浮点除法运算的流程示意图; 图5为本专利技术实施例进行浮点矩阵运算的执行示意图。图例说明1、操作数准备单元;11、局部寄存器;12、全局矩阵寄存器;13、累加器; 14、操作数选择逻辑单元;141、操作数例外判断单元;142、倒数近似值查找表;143、循环缓4冲单元;144、数据选择单元;145、数据分离单元;146、状态机;2、浮点快速融合乘加单元; 21、符号处理模块;22、指数处理模块;23、尾数处理模块;24、写回模块;3、指令控制器;4、 标量处理单元;5、向量处理阵列;51、向量处理单元;6、数据混洗网络;7、规约网络;8、多功 能浮点乘加运算装置。具体实施例方式如图1所示,本专利技术实施例的用于SIMD向量微处理器的多功能浮点乘加运算装置 包括挂载于向量处理阵列5的每个向量处理单元51中的操作数准备单元1和浮点快速融 合乘加单元2,操作数准备单元1将输入的源操作数处理得到指数、尾数和符号位分离的操 作数并输出至浮点快速融合乘加单元2,浮点快速融合乘加单元2用于对操作数进行浮点 乘加运算获取运算结果并将运算结果写回操作数准备单元1。操作数准备单元1包括操作数选择逻辑单元14和分别与操作数选择逻辑单元14 相连的局部寄存器11、全局矩阵寄存器12、累加器13,局部寄存器11用于存放操作数或者 写回的运算结果,可被本向量处理单元51访问;全局矩阵寄存器12用于存放操作数或者写 回的运算结果,支持行列访问,可被全局向量处理单元51访问;累加器13用于存放操作数 或者写回的运算结果;操作数选择逻辑单元14的数量与向量处理阵列5中向量处理单元 51的数量相同,操作数选择逻辑单元14将处理得到指数、尾数和符号位分离的操作数输出 至浮点快速融合乘加单元2。本实施例中,局部寄存器11只能被多功能浮点乘加运算装置 8所属的本文档来自技高网
...

【技术保护点】
一种用于SIMD向量微处理器的多功能浮点乘加运算装置,其特征在于:它包括挂载于向量处理阵列(5)的每个向量处理单元(51)中的操作数准备单元(1)和浮点快速融合乘加单元(2),所述操作数准备单元(1)将输入的源操作数处理得到指数、尾数和符号位分离的操作数并输出至浮点快速融合乘加单元(2),所述浮点快速融合乘加单元(2)用于对所述操作数进行浮点乘加运算获取运算结果并将运算结果写回所述操作数准备单元(1)。

【技术特征摘要】

【专利技术属性】
技术研发人员:陈书明杨惠万江华孙永节孙锁林胡封林余再祥罗恒吴虎成胡春媚汪东唐涛
申请(专利权)人:中国人民解放军国防科学技术大学
类型:发明
国别省市:43[中国|湖南]

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1