[发明专利]多浮点操作数加/减运算控制器有效
申请号: | 201310692203.7 | 申请日: | 2013-12-13 |
公开(公告)号: | CN103677742A | 公开(公告)日: | 2014-03-26 |
发明(设计)人: | 蔡启仲;柯宝中;李刚;邱盛成;李克俭 | 申请(专利权)人: | 广西科技大学 |
主分类号: | G06F7/575 | 分类号: | G06F7/575 |
代理公司: | 柳州市荣久专利商标事务所(普通合伙) 45113 | 代理人: | 张荣玖 |
地址: | 545006 广西*** | 国省代码: | 广西;45 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 浮点 作数 运算 控制器 | ||
技术领域
本发明涉及一种多浮点操作数加/减运算控制器,尤其涉及一种基于采用FPGA并行操作电路硬连接的多浮点操作数加/减运算控制电路及其时序控制方法。
背景技术
在微处理器的指令系统中,浮点数加/减法指令实现2个32位符合IEEE754标准的浮点数加/减运算,每条指令执行一次加法或减法运算,指令中一个是操作数1,一个是操作数2,运算器的两个操作数输入端分别与两个暂存器的输出端连接,一个暂存操作数1和运算结果,一个暂存操作数2;其操作过程分为两种情况,一种情况是分时通过微处理器的内部数据总线将操作数1和操作数2分别传输至运算器的两个暂存器,运算结束再通过微处理器的内部数据总线将运算结果写回存放在操作数1的暂存器中;第二种情况是操作数1是上次运算的结果,上次运算结果写回之后,再传输操作数2,运算结果写回操作数1的暂存器;运算结果写回和操作数2的传输的处理过程是通过微处理器的内部数据总线分时操作;如果有多个连续的加减运算,比如7个操作数,需要6条运算指令予以实现,执行这6条指令需要取指和指令译码6次,结果写回6次,而操作数2传送给运算器的一个输入端和结果写回到操作数1暂存器的过程是由微处理器控制部件发出控制脉冲处理,不利于进一步提高算术运算类指令执行的速度;浮点数加/减运算器的设计也采用流水线执行的方式,将运算过程分为若干模块,在微处理器控制部件发出的时序脉冲的控制下,多条浮点数加/减运算指令按照模块顺序执行,流水线中的每条指令运算结束都需要将运算结果写回;但对于所执行的浮点数加/减法指令需要应用上一条运算指令的运算结果作为操作数的指令,则浮点数加/减运算的流水线操作失去作用,影响了浮点数加/减运算指令执行的速度。
发明内容
本发明的目的在于提供一种多浮点操作数加/减运算控制器,应用FPGA设计多浮点操作数加/减运算控制器的硬连接电路;对于一条多浮点操作数加/减运算指令的命令字和多浮点操作数采取连续写入存储的方法,写入过程占用系统总线;在写入第一个浮点操作数后,控制器内部产生与系统时钟Clock信号同步的读时序脉冲信号,在读时序脉冲信号控制下自主完成读出浮点操作数执行加/减运算,加/减运算命令执行过程不占用系统总线,写入存储多浮点操作数过程与执行加/减运算命令的过程能够并行进行;在控制器执行加/减运算命令过程中,系统可以读出执行命令过程中的中间结果和最终运算结果。
解决上述技术问题的技术方案是:一种多浮点操作数加/减运算控制器,用于实现多个32位符合IEEE754标准的浮点数加或减运算,包括命令字及操作数写时序控制模块、操作数存储器、操作数读时序控制模块、运算与输出控制模块;
所述命令字及操作数写时序控制模块与操作数存储器、操作数读时序控制模块、运算与输出控制模块连接;
所述操作数存储器还与操作数读时序控制模块、运算与输出控制模块连接;
所述操作数读时序控制模块还与运算与输出控制模块连接;
所述命令字及操作数写时序控制模块控制完成指令的写入和存储,需要占用系统总线;一条指令包括31位命令字和若干个浮点操作数,浮点操作数最多为26个;所述命令字及操作数写时序控制模块被系统选中时,启动命令字及操作数写时序控制模块工作,内部产生与系统WR信号同步的写时序脉冲序列;在写时序脉冲的控制下,锁存多浮点操作数加/减运算指令的命令字,写入多浮点操作数并予以存储;最后一个浮点操作数被写入存储后,所述命令字及操作数写时序控制模块停止工作;
所述操作数存储器为双端口存储器,一个只写端口,一个只读端口,用于储存命令字及操作数写时序控制模块写入的多浮点操作数(下称为操作数);所述操作数存储器的写端口操作数的写入和读端口操作数的读出不存在需要仲裁的情况;所述操作数存储器的写端口受命令字及操作数写时序控制模块控制,将系统数据总线DB传输的操作数写入操作数存储器;读端口受操作数读时序控制模块控制,将操作数读出传输到运算与输出控制模块;
所述操作数读时序控制模块在内部读时序脉冲的控制下,自主完成操作数从操作数存储器中的读出,不需要占用系统总线;在命令字及操作数写时序控制模块写入第1个操作数后被启动工作,输出忙信号Busy由“1”→“0”,根据第1个操作数类型,内部产生与系统时钟Clock信号同步的读时序脉冲序列,按顺序将操作数读出参与加或减运算;当参与运算的最后1个操作数读出之后,输出忙信号Busy由“0”→“1”,再经过一个加或减的运算周期,发出一个时钟周期Clock的结果锁存脉冲后,停止操作数读时序控制模块的工作;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于广西科技大学,未经广西科技大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201310692203.7/2.html,转载请声明来源钻瓜专利网。
- 上一篇:便携信息终端、信息管理系统以及共享方法
- 下一篇:一种信息处理方法及电子设备