本发明专利技术提供了一种多发射指令处理系统及方法,所述多发射指令处理系统包括:处理器,所述处理器能够在同一时刻执行复数条指令;存储系统,所述存储系统用以存储指令;指令控制器,所述指令控制器包括轨道表,所述轨道表存储所述存储系统中存储的分支指令的位置;所述指令控制器根据所述分支指令的位置控制所述存储系统向处理器输出可能被执行的指令。在本发明专利技术提供的多发射指令处理系统中,通过指令控制器根据轨道表中存储的分支指令的位置控制存储系统向处理器输出可能被执行的指令,以充分利用处理器的指令执行能力,提高了多发射指令处理系统执行指令的性能。
【技术实现步骤摘要】
【专利摘要】本专利技术提供了一种,所述多发射指令处理系统包括:处理器,所述处理器能够在同一时刻执行复数条指令;存储系统,所述存储系统用以存储指令;指令控制器,所述指令控制器包括轨道表,所述轨道表存储所述存储系统中存储的分支指令的位置;所述指令控制器根据所述分支指令的位置控制所述存储系统向处理器输出可能被执行的指令。在本专利技术提供的多发射指令处理系统中,通过指令控制器根据轨道表中存储的分支指令的位置控制存储系统向处理器输出可能被执行的指令,以充分利用处理器的指令执行能力,提高了多发射指令处理系统执行指令的性能。【专利说明】
本专利技术涉及计算机架构
,特别涉及一种。
技术介绍
在现代处理器设计中,处理器的性能提升主要通过提高处理器的主频来实现。然而,随着片上集成的晶体管的数量越来越多,功耗和散热问题变得更加严重。单纯提高主频的方法已经很难适应现在处理器的发展。在这种情况下,需要一种简单而有效的处理器流水线控制方法来提高指令的执行效率。也就是说,用较少的硬件资源实现指令的流水线控制,从而实现较高的指令吞吐率。流水线技术是指把一条指令的执行分成若干个阶段,每个阶段完成指令的一部分功能。这样在多条指令同时执行的时候,多条指令的不同阶段可以同时执行。在实际中,指令和指令之间可能存在着数据依赖关系。比如,一条指令的源操作数是前面一条指令的目的操作数,这样就产生了写后读相关。现有技术中,通过具有多发射特性的处理器实现上述功能,该处理器能够在同一时刻执行复数条指令。但是,由于流水线技术存在上述依赖特性,往往不能充分使用处理器的上述性能。比如,一处理器能够在同一时刻执行4条指令,但由于流水线技术的依赖特性,只提供了 3条指令给处理器同时执行。由此,便不能够充分利用处理器的多发射特性,降低了处理器执行指令的性能。
技术实现思路
本专利技术的目的在于提供一种多发射指令处理系统,以解决现有技术中不能够充分利用处理器的指令执行能力的问题。为解决上述技术问题,本专利技术提供了一种多发射指令处理系统,所述多发射指令处理系统包括:处理器,所述处理器能够在同一时刻执行复数条指令;存储系统,所述存储系统用以存储指令;指令控制器,所述指令控制器包括轨道表,所述轨道表存储所述存储系统中存储的分支指令的位置;所述指令控制器根据所述分支指令的位置控制所述存储系统向处理器输出可能被执行的指令。可选的,在本专利技术所述的多发射指令处理系统中,所述指令控制器还包括循迹器,所述循迹器根据轨道表中存储的分支指令的位置,从处理器正在执行的指令之后的第一个分支指令开始,提前移动并指向若干层分支之后的分支指令;所述指令控制器根据所述循迹器移动过程中经过的分支指令,选择相应的指令段中的指令,并控制所述存储系统向处理器输出选中的指令供处理器执行。可选的,在本专利技术所述的多发射指令处理系统中,所述指令控制器还包括一分段裁剪器,所述分段裁剪器给每个分支指令的目标指令段及每个分支指令的下一指令段给予不同的分段,并对每个分段给予不同的分段号;所述指令控制器控制所述存储系统向处理器输出可能被执行的指令时,同时向处理器输出该指令对应的分段号。可选的,在本专利技术所述的多发射指令处理系统中,分支指令与其之前的连续所有非分支指令属于同一个分段。可选的,在本专利技术所述的多发射指令处理系统中,所述分段裁剪器包括一裁剪器,所述裁剪器保留从处理器正在执行的分支指令开始的若干层的分支目标指令段和下一指令段的分段号。可选的,在本专利技术所述的多发射指令处理系统中,当所述处理器执行一分支指令,得到分支转移是否发生的执行结果时,所述处理器向所述指令控制器发送所述执行结果。可选的,在本专利技术所述的多发射指令处理系统中,所述裁剪器根据所述处理器向所述指令控制器发送来的执行结果,区分出裁剪器中肯定被执行的指令段的分段号;并将该肯定被执行的指令段的分段号送往处理器。可选的,在本专利技术所述的多发射指令处理系统中,所述处理器根据接收的肯定被执行的指令段对应的分段号,将对应指令段产生的最终结果写入物理寄存器中。可选的,在本专利技术所述的多发射指令处理系统中,所述裁剪器根据所述处理器向所述指令控制器发送来的执行结果,区分出裁剪器中确定不被执行的指令段的分段号;并将该确定不被执行的指令段的分段号送往处理器。可选的,在本专利技术所述的多发射指令处理系统中,所述处理器根据接收的确定不被执行的指令段对应的分段号,删除所述指令段产生的中间结果及最终结果。可选的,在本专利技术所述的多发射指令处理系统中,所述指令控制器对指令段中的指令的选取包括:对每一层分支的目标指令段及下一指令段中的指令平均选取。可选的,在本专利技术所述的多发射指令处理系统中,所述指令控制器对指令段中的指令的选取包括:根据一定算法对每一层分支的目标指令段及下一指令段中的指令非平均选取。可选的,在本专利技术所述的多发射指令处理系统中,所述轨道表还存储分支指令发生分支转移的预测位,所述预测位提供所述分支指令分支转移是否发生的概率。可选的,在本专利技术所述的多发射指令处理系统中,当所述分支指令分支转移发生的概率比不发生的概率高时,所述指令控制器控制所述存储系统向处理器输出所述分支指令的目标指令段及所述分支指令的下一指令段中的指令,并且在所述提供的指令中,所述分支指令的目标指令段中的指令比分支指令的下一指令段中的指令多;当所述分支指令分支转移发生的概率比不发生的概率低时,所述指令控制器控制所述存储系统向处理器输出所述分支指令的目标指令段及所述分支指令的下一指令段中的指令,并且在所述提供的指令中,所述分支指令的目标指令段中的指令比分支指令的下一指令段中的指令少。可选的,在本专利技术所述的多发射指令处理系统中,所述预测位为单数位或者复数位,其中,所述预测位的初始值设置为固定值或者根据分支指令转移跳转方向予以设置。可选的,在本专利技术所述的多发射指令处理系统中,根据处理器执行分支指令得到的分支转移是否发生的结果,修正轨道表中对应所述分支指令的预测值。可选的,在本专利技术所述的多发射指令处理系统中,还包括队列器,所述队列器存储所述存储系统输出的可能被执行的指令;所述队列器根据接收的需要删除的指令段对应的分段号,删除相应的指令段中的指令。可选的,在本专利技术所述的多发射指令处理系统中,向处理器输出的可能被执行的指令属于多个线程。可选的,在本专利技术所述的多发射指令处理系统中,所述分段裁剪器标记指令所属线程的线程号,及标记指令所属指令段的分段号。本专利技术还提供了一种多发射指令处理方法,所述多发射指令处理方法包括:指令控制器根据轨道表存储的存储系统中存储的分支指令的位置,控制所述存储系统向处理器输出可能被执行的指令;处理器接收存储系统输出的可能被执行的指令,并同一时刻执行复数条指令。可选的,在本专利技术所述的多发射指令处理方法中,指令控制器控制所述存储系统向处理器输出可能被执行的指令之前,还包括:指令控制器将分支指令与其之前的连续所有非分支指令归为一个分段。可选的,在本专利技术所述的多发射指令处理方法中,指令控制器将分支指令与其之前的连续所有非分支指令归为一个分段包括:指令控制器给每个分支指令的目标指令段及每个分支指令的下一指令段给予不同的分段。可选的,在本专利技术所述的多发射指令处理方法中,指令控制器将分支指令与其之前的连续所有非分支指令本文档来自技高网...
【技术保护点】
一种多发射指令处理系统,其特征在于,包括:处理器,所述处理器能够在同一时刻执行复数条指令;存储系统,所述存储系统用以存储指令;指令控制器,所述指令控制器包括轨道表,所述轨道表存储所述存储系统中存储的分支指令的位置;所述指令控制器根据所述分支指令的位置控制所述存储系统向处理器输出可能被执行的指令。
【技术特征摘要】
【专利技术属性】
技术研发人员:林正浩,
申请(专利权)人:上海芯豪微电子有限公司,
类型:发明
国别省市:上海;31
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。