[发明专利]一种硬件循环加速处理器及其执行的硬件循环加速方法在审
申请号: | 202010280198.9 | 申请日: | 2020-04-10 |
公开(公告)号: | CN111522584A | 公开(公告)日: | 2020-08-11 |
发明(设计)人: | 廖力灵;孙轶群 | 申请(专利权)人: | 深圳优矽科技有限公司 |
主分类号: | G06F9/30 | 分类号: | G06F9/30 |
代理公司: | 北京律和信知识产权代理事务所(普通合伙) 11446 | 代理人: | 冷文燕;武玉琴 |
地址: | 518057 广东省深圳市南*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 硬件 循环 加速 处理器 及其 执行 方法 | ||
本发明涉及一种硬件循环加速处理器及其执行的硬件循环加速方法,该硬件循环加速处理器包括:硬件循环栈,响应于循环设置指令被成功执行,在所述硬件循环栈的栈顶中设置硬件循环加速电路,所述硬件循环加速电路包括循环体基址寄存器、循环体执行次数寄存器、计数器和循环体末址寄存器。通过本发明的硬件循环加速处理器及其执行的硬件循环加速方法,能够大幅度减少电路实现面积,使处理器对循环体结构的辨别度增大,可以对所有的循环体结构进行硬件优化,提高了处理器的性能。
技术领域
本发明涉及计算机领域,特别是涉及一种硬件循环加速处理器及其执行的硬件循环加速方法。
背景技术
在处理器的运行过程中,分支指令和跳转指令是影响处理器性能的一个因素,分支指令会有一定概率产生控制冲突,使得处理器需要重新提取新的指令;所谓控制冲突,是指原本流水线按照内存地址的顺序不断的执行指令,但是某个条件下,需要跳转到其他内存地址执行指令。虽然,现在处理器的实现方式上,可以使用分支预测器减少控制冲突的频率,但是这只是通过概率学的方式去减少控制冲突带来的时钟延迟。
在指令层次上,会产生分支和跳转的指令有Branch,Jump and Link以及Jump andLink Register三条指令,其中Jump and Link和Jump and Link Register这两类指令具备的绝对的跳转功能,因此,可以通过BTB(Branch Target Buffer)将跳转的目标地址缓存起来,从而提高处理器的性能。而Branch指令则带有一定的判断条件,需要通过判断条件来确定是否跳转。
而在C语言等高级语言层次上,会产生分支指令的结构一般包括if/else,while(for)和switch三种,在这三种结构中,while(for)因为是循环的执行某段程序块,因此,可以在硬件上对其进行加速,从而提高处理器的性能。
在高级程序设计语言的设计中,循环是一种很常见的程序,循环结构在汇编指令上,通常使用Branch分支指令来实现循环结构,与if/else结构产生的Branch分支指令不同,循环结构产生Branch分支指令通常会连续一定次数的跳转或者不跳转,而处理器会执行循环体里的程序数次,这种可以重复性的操作可以通过使用硬件的技术实现加速。
在已有的使用硬件的技术实现加速的技术方案中,虽然减少了程序提取指令的次数,但仍然存在以下不足:
1.现有技术的方案通过缓存循环体指令的方式来实现硬件循环,一方面会大大增加硬件电路的面积,同时不具备通用性,因为缓存器是有限的,如果循环体内的程序过多(尤其是对于具有函数调用的循环体),多到缓存器无法完全缓存,该方案是无法实现硬件循环的;
2.现有技术的方案采用多个相同的电路结构来实现循环嵌套,这种方案无法满足任意层次的循环嵌套,尤其是循环嵌套的层数较多时,同时也大大的增加了硬件电路的面积;
3.因为在大部分的指令集实现中,循环结构在汇编上是使用Branch分支指令来实现,从而导致循环结构与if/else结构基本无法区别,因此,现有技术的方案对于检测循环体第一条指令的设计过于理想化,实际无法区别循环结构与if/else结构,因而无法适用于普遍的情况;
4.在循环体结构中,可以分为有明确循环次数的循环结构和没有明确循环次数的循环结构,同时因为break和continue等语法的存在,导致程序会跳过某一次循环,或者跳出循环,如果只是在电路上实现硬件循环,则会造成未知的错误。
发明内容
针对现有技术方案中存在的问题,本发明通过定义硬件循环指令,以及硬件实现的方式来实现程序的硬件循环,来减少控制冲突产生的延迟,从而提高处理器的性能。
根据本发明的第一个方面,提供一种硬件循环加速处理器,其包括:
取指令模块,用于读取循环设置指令;以及
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于深圳优矽科技有限公司,未经深圳优矽科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202010280198.9/2.html,转载请声明来源钻瓜专利网。