一种用于低功耗处理器的加快条件跳转执行的装置制造方法及图纸

技术编号:10999894 阅读:104 留言:0更新日期:2015-02-04 20:32
一种用于低功耗处理器的加快条件跳转执行的装置,所述装置包括:一个流水线逻辑控制模块,用于指令流的译码并接受C标志位选择模块请求可以堵塞流水线;一个C标志位专用运算模块,仅仅实现结果中包含C标志位的指令所对应的执行逻辑,计算好的C标志位只用于直通给C标志位选择模块;一个C标志位选择模块,用于接受译码后的指令流,选取不同的C标志位用于条件跳转执行的执行,寄存器组读写控制模块,用于接受流水线逻辑控制模块的控制,控制除C标志位外的指令运算结果的回写,并根据其他模块的请求读出相应的寄存器数据。本发明专利技术有效加快执行速度、提升处理器性能。

【技术实现步骤摘要】
一种用于低功耗处理器的加快条件跳转执行的装置
本专利技术涉及一种低功耗处理器,尤其是一种在硬件资源要求不高的情形下加快条件跳转执行速度的装置。
技术介绍
当前对于嵌入式处理器来说,都是采用流水线的方式来进行数据的运算。经典的五级流水线分为取指级、译码级、执行级、内存访问级和写回级,对于条件跳转执行而言,如果条件跳转有效,需要改变程序执行流,因此为了提高取指效率,一般条件跳转就需要在取指级就进行判断,这样可以减少流水线空泡。而对于程序流来说,存在一种情况是条件跳转指令判定跳转的条件需要上一条指令在执行级运算后的结果,因此需要将后一级的结果直通给取指级进行运算。对于低功耗处理器来说,由于对功耗的要求比对性能的要求高,因此流水线比较简单。对于一个三级流水线的处理器来说,如果只有取指级、执行级和回写级,那么需要在取指级进行跳转指令的判定。一种处理方式是直接采用静态预测,预测总是跳或者不跳,到执行级来确认预测正确与否。这种机制虽然简单,但是预测准确率低,对性能损失太多,现在的嵌入式处理器一般都不采用这种方式。还有一种方式就是采用直通的方式,从执行级取回C标志位进行取指级跳转指令的判定。但是存在一种情形是如果执行级处理的指令操作数仍旧需要从片外读回一个值,然后从写回级直通回执行级用于算术运算,算数运算完成后的C标志位再直通给取指级进行条件跳转的判定,如果需要跳转,那么需要再向片外发起新的取指令请求,那么整条运算路径将会过长,这条路径将会是处理器的关键路径,严重影响处理器的工作频率。为了克服已有的低功耗处理器对条件跳转处理机制的不足,在硬件资源要求提高不多的情形下,本专利技术提供了一种用于低功耗处理器的加快条件跳转执行的装置。
技术实现思路
为了克服已有技术低功耗处理器在条件跳转处理方式的执行速度较慢、影响处理器性能的不足,本专利技术提供了一种有效加快执行速度、提升处理器性能的用于低功耗处理器的加快条件跳转执行的装置。本专利技术解决其技术问题所采用的技术方案是:一种用于低功耗处理器的加快条件跳转执行的装置,所述装置包括:流水线逻辑控制模块,用于处理器在执行条件跳转指令时对操作数准备模块,条件跳转执行模块,算术逻辑运算模块,C标志位专用运算模块,C标志位寄存器,C标志位选择模块和寄存器组读写控制模块的控制及数据的处理,感知处理器所处状态并对指令流进行译码,将译码后信息输出给操作数准备模块和C标志位选择模块,最后根据C标志位选择模块输出的C标志位无效信息堵塞流水线;操作数准备模块,用于接受流水线逻辑控制模块的控制,通过流水线逻辑控制模块输入的指令流译码信息,相应地提供给算术逻辑运算模块和C标志位专用运算模块所需的操作数;条件跳转执行模块,用于接受流水线逻辑控制模块的控制,从C标志位选择模块中得到所需的C标志位数据,并根据不同指令类型判定是否需要跳转,最终完成条件跳转指令的执行;算术逻辑运算模块,用于接受流水线逻辑控制模块的控制,从操作数准备逻辑模块中得到所需的运算操作数,针对所有的算数运算、逻辑运算等运算进行操作并得到操作结果,所述操作结果包括C标志位结果,然后输出给寄存器组读写控制模块和C标志位寄存器,用于寄存器的回写;C标志位专用运算模块,用于接受流水线逻辑控制模块的控制,该模块仅仅实现结果中包含C标志位的指令所对应的执行逻辑,从操作数准备逻辑模块中得到所需的运算操作数,只用于计算C标志位,并将所得的C标志位直通给C标志位选择模块;C标志位寄存器,用于接受流水线逻辑控制模块的控制,存储算数逻辑运算模块中计算得到的C标志位结果,并将该C标志位寄存器的值直通给C标志位选择模块;C标志位选择模块,用于接受流水线逻辑控制模块的控制,根据流水线逻辑控制模块中得到的指令流信息,从C标志位专用运算模块或者C标志位寄存器中选通一路,将选通的C标志位提供给条件跳转执行模块;寄存器组读写控制模块,用于接受流水线逻辑控制模块的控制,控制除C标志位外的指令运算结果的回写,并根据算术逻辑运算模块的请求读出相应的寄存器数据。进一步,所述流水线逻辑控制模块中,实时监测流水线状态,根据条件跳转指令所处的指令流,向C标志位选择模块输出不同的指令流信息,该指令流信息分为三种情形:情形一为当前跳转指令和之前的指令没有数据相关性;情形二为当前跳转指令和之前指令存在数据相关性,而且C标志位的运算操作数不来自片外的内存读取结果;情形三为当前跳转指令和之前指令存在数据相关性,而且C标志位的运算操作数来自片外的内存读取结果。再进一步,所述操作数准备模块中,提供给算术逻辑运算模块计算所需的操作数,该操作数来源包含从流水线后级直通的从片外存储器取回的值,并且算术逻辑运算模块计算得到的C标志位结果只用于回写C标志位寄存器,不能直通给C标志位选择模块;提供给C标志位专用运算模块所需的操作数,该操作数来源除了不包含从片外存储器取回的值之外,其余均与算术逻辑运算模块相同,并且C标志位专用运算模块计算得到的C标志位结果只用于直通给C标志位选择模块。更进一步,所述C标志位专用运算模块中,仅实现运算结果包含C标志位的指令集合,进一步仅实现该指令集合中产生C标志位的运算逻辑。所述C标志位选择模块中,根据流水线逻辑控制模块提供的指令流信息选择不同来源的C标志位提供给条件跳转执行模块,具体根据三种不同情形的指令流信息进行判定,对于情形一,C标志位选择模块选择C标志位寄存器中的值,对于情形二和情形三,C标志位选择模块均选择C标志位专用运算模块产生的C位运算结果。所述C标志位选择模块中,在选择C标志位的同时会根据流水线逻辑控制模块输入的指令流信息判断给出的C标志位结果是否出错,若流水线中出现情形三所示的指令流,则C标志位选择模块将其输出的C标志位信息标识为错误,并通知流水线逻辑控制模块堵住流水线,直到该情形三的指令流从流水线中消失。本专利技术的有益效果主要表现在:在硬件资源提高不多的前提下,消除流水线执行条件跳转指令时需要等待C标志位结果生成而引起的性能损失,快速提供C标志位结果的装置;有效加快执行速度、提升处理器性能。附图说明图1为条件跳转执行的实现装置结构示意图。图2为C标志位专用运算模块装置结构示意图。图3为C标志位选择模块工作机制流程示意图。具体实施方式下面结合附图对本专利技术作进一步描述。参照图1~图3,一种用于低功耗处理器的加快条件跳转执行的装置,所述装置包括:流水线逻辑控制模块,用于处理器在执行条件跳转指令时对操作数准备模块,条件跳转执行模块,算术逻辑运算模块,C标志位专用运算模块,C标志位寄存器,C标志位选择模块和寄存器组读写控制模块的控制及数据的处理,感知处理器所处状态并对指令流进行译码,将译码后信息输出给操作数准备模块和C标志位选择模块,最后根据C标志位选择模块输出的C标志位无效信息堵塞流水线;操作数准备模块,用于接受流水线逻辑控制模块的控制,通过流水线逻辑控制模块输入的指令流译码信息,相应地提供给算术逻辑运算模块和C标志位专用运算模块所需的操作数;条件跳转执行模块,用于接受流水线逻辑控制模块的控制,从C标志位选择模块中得到所需的C标志位数据,并根据不同指令类型判定是否需要跳转,最终完成条件跳转指令的执行;算术逻辑运算模块,用于接受流水线逻辑控制模块的控制,从操作数准备逻辑模块中得到本文档来自技高网
...
一种用于低功耗处理器的加快条件跳转执行的装置

【技术保护点】
一种用于低功耗处理器的加快条件跳转执行的装置,其特征在于:所述装置包括:流水线逻辑控制模块,用于处理器在执行条件跳转指令时对操作数准备模块,条件跳转执行模块,算术逻辑运算模块,C标志位专用运算模块,C标志位寄存器,C标志位选择模块和寄存器组读写控制模块的控制及数据的处理,感知处理器所处状态并对指令流进行译码,将译码后信息输出给操作数准备模块和C标志位选择模块,最后根据C标志位选择模块输出的C标志位无效信息堵塞流水线;操作数准备模块,用于接受流水线逻辑控制模块的控制,通过流水线逻辑控制模块输入的指令流译码信息,相应地提供给算术逻辑运算模块和C标志位专用运算模块所需的操作数;条件跳转执行模块,用于接受流水线逻辑控制模块的控制,从C标志位选择模块中得到所需的C标志位数据,并根据不同指令类型判定是否需要跳转,最终完成条件跳转指令的执行;算术逻辑运算模块,用于接受流水线逻辑控制模块的控制,从操作数准备逻辑模块中得到所需的运算操作数,针对所有的算数运算、逻辑运算等运算进行操作并得到操作结果,所述操作结果包括C标志位结果,然后输出给寄存器组读写控制模块和C标志位寄存器,用于寄存器的回写;C标志位专用运算模块,用于接受流水线逻辑控制模块的控制,该模块仅仅实现结果中包含C标志位的指令所对应的执行逻辑,从操作数准备逻辑模块中得到所需的运算操作数,只用于计算C标志位,并将所得的C标志位直通给C标志位选择模块;C标志位寄存器,用于接受流水线逻辑控制模块的控制,存储算数逻辑运算模块中计算得到的C标志位结果,并将该C标志位寄存器的值直通给C标志位选择模块;C标志位选择模块,用于接受流水线逻辑控制模块的控制,根据流水线逻辑控制模块中得到的指令流信息,从C标志位专用运算模块或者C标志位寄存器中选通一路,将选通的C标志位提供给条件跳转执行模块;寄存器组读写控制模块,用于接受流水线逻辑控制模块的控制,控制除C标志位外的指令运算结果的回写,并根据算术逻辑运算模块的请求读出相应的寄存器数据。...

【技术特征摘要】
1.一种用于低功耗处理器的加快条件跳转执行的装置,其特征在于:所述装置包括:流水线逻辑控制模块,用于处理器在执行条件跳转指令时对操作数准备模块,条件跳转执行模块,算术逻辑运算模块,C标志位专用运算模块,C标志位寄存器,C标志位选择模块和寄存器组读写控制模块的控制及数据的处理,感知处理器所处状态并对指令流进行译码,将译码后信息输出给操作数准备模块和C标志位选择模块,最后根据C标志位选择模块输出的C标志位无效信息堵塞流水线;操作数准备模块,用于接受流水线逻辑控制模块的控制,通过流水线逻辑控制模块输入的指令流译码信息,相应地提供给算术逻辑运算模块和C标志位专用运算模块所需的操作数;条件跳转执行模块,用于接受流水线逻辑控制模块的控制,从C标志位选择模块中得到所需的C标志位数据,并根据不同指令类型判定是否需要跳转,最终完成条件跳转指令的执行;算术逻辑运算模块,用于接受流水线逻辑控制模块的控制,从操作数准备逻辑模块中得到所需的运算操作数,针对所有的算数运算、逻辑运算进行操作并得到操作结果,所述操作结果包括C标志位结果,然后输出给寄存器组读写控制模块和C标志位寄存器,用于寄存器的回写;C标志位专用运算模块,用于接受流水线逻辑控制模块的控制,该C标志位专用运算模块仅仅实现结果中包含C标志位的指令所对应的执行逻辑,从操作数准备逻辑模块中得到所需的运算操作数,只用于计算C标志位,并将所得的C标志位直通给C标志位选择模块;C标志位寄存器,用于接受流水线逻辑控制模块的控制,存储算数逻辑运算模块中计算得到的C标志位结果,并将该C标志位寄存器的值直通给C标志位选择模块;C标志位选择模块,用于接受流水线逻辑控制模块的控制,根据流水线逻辑控制模块中得到的指令流信息,从C标志位专用运算模块或者C标志位寄存器中选通一路,将选通的C标志位提供给条件跳转执行模块;寄存器组读写控制模块,用于接受流水线逻辑控制模块的控制,控制除C标志位外的指令运算结果的回写,并根据算术逻辑运算模块的请求读出相应的寄存器数据;所述流水线逻辑控制模块中,实时...

【专利技术属性】
技术研发人员:江鹏王晓峰张文蒙
申请(专利权)人:杭州中天微系统有限公司
类型:发明
国别省市:浙江;33

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

1