[发明专利]一种处理器的硬件循环处理方法和系统有效
申请号: | 201611021587.X | 申请日: | 2016-11-21 |
公开(公告)号: | CN106775591B | 公开(公告)日: | 2019-06-18 |
发明(设计)人: | 李炜;陶建平;韩景通 | 申请(专利权)人: | 江苏宏云技术有限公司 |
主分类号: | G06F9/30 | 分类号: | G06F9/30 |
代理公司: | 北京德崇智捷知识产权代理有限公司 11467 | 代理人: | 徐波;卫麟 |
地址: | 215600 江苏省连*** | 国省代码: | 江苏;32 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | 一种处理器的硬件循环处理系统和方法,通过在原有的取指单元中增加循环缓存,将对应循环体中的前N条指令通过循环缓存直接输出至后续的译码单元,消除循环处理过程中,每次从循环体最后一条指令跳转至循环体第一条指令时,由于程序存储器读出数据的延时而造成的额外的等待周期,从而实现硬件循环的零延时跳转。本发明所述方法设计简单,在原有系统中仅仅需要增加一个硬件的循环缓存和对应的选择模块,便可实现硬件循环的零延时跳转。另外,本方法还能够减少取指单元对程序存储器的访问,从而降低处理器的功耗。 | ||
搜索关键词: | 一种 处理器 硬件 循环 处理 方法 系统 | ||
【主权项】:
1.一种处理器硬件循环处理系统,其特征在于,该系统包括程序存储器(100)、取指单元(101)、循环缓存(102)、选择模块(107)、译码单元(103)和执行单元(108);所述程序存储器(100)连接取指单元(101)的输入端,所述取指单元(101)的指令输出端连接选择模块(107)的一个输入端,选择模块(107)的另一个输入端连接循环缓存(102)的输出端;选择模块(107)的输出端连接译码单元(103)的输入端;所述译码单元(103)的输出端连接执行单元(108)的输入端;所述取指单元(101)还与译码单元(103)的第一控制信号端(105)连接,所述循环缓存(102)还与译码单元(103)的第二控制信号端(106)连接;所述译码单元(103)的第一控制信号端(105)用于在译码单元(103)未读取到循环节点指令时,控制所述取指单元(101)通过选择模块(107)向译码单元(103)输出需要进行译码的下一条指令;同时,所述译码单元(103)在读取到新循环的第一条指令后,还通过第一控制信号端(105)控制所述取指单元(101)通过选择模块(107)同步向循环缓存(102)输出新循环体的第一条至第N条指令;所述循环缓存(102)用于接收新循环体的前N条指令,并将接受的N条指令压入堆栈进行存储;其中,所述的循环节点指令指循环进行的过程中,循环体中的最后一条指令;所述的循环缓存(102)接收的新循环体内指令的条数N=min{n,m},n为循环体中指令条数,m为指令从程序存储器(100)到达译码单元(103)所经历的时钟周期数减1;所述译码单元(103)的第二控制信号端(106)用于在译码单元(103)读取到循环节点指令时,控制循环缓存(102)通过选择模块(107)依次向译码单元(103)输出当前循环体的第一条至第N条指令。
下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于江苏宏云技术有限公司,未经江苏宏云技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/patent/201611021587.X/,转载请声明来源钻瓜专利网。