【技术实现步骤摘要】
机器指令预处理方法、电子设备及计算机可读存储介质
[0001]本专利技术属于机器指令预处理
,尤其涉及一种机器指令预处理方法、电子设备及计算机可读存储介质。
技术介绍
[0002]处理器在执行机器指令时,如果按照指令先后顺序执行,则碰到从内存读取数据的加载指令、除法运算指令等延迟较长的指令时,后面紧跟着使用该指令结果的指令,就会陷入长时间的等待,大大降低了处理器执行效率,因此,为了提高指令执行效率,通常由处理器通过硬件添加乱序模块的方式,实现以指令乱序的方式执行机器指令,即打乱机器指令的顺序,就算指令位于后面,如果满足条件可以执行,就先执行。
[0003]但是,设计及优化乱序模块大大延长了处理器的研发时间,并且需要大量资深芯片研发人员,大大增加了处理器研发的成本,同时,乱序模块将大大影响处理器的处理能力,并且为了适配现有处理器庞大的指令集,又大大增加了乱序模块的设计难度。
[0004]此外,对于小型、低成本的处理器,出于成本的考虑,只能让处理器按照顺序执行机器指令,由此带来了低效率的问题。
专利 ...
【技术保护点】
【技术特征摘要】
1.一种机器指令预处理方法,其特征在于,包括:S110、根据指令被执行的先后顺序,将待发送给目标处理器执行的编译好的每一条机器指令依次分别设置于不同的指令行中,所述指令行代表供所述目标处理器在一个执行周期内同时执行的指令集合;S120、从第二个指令行开始,依次对每一行进行指令乱序:S121)从所有已完成指令乱序的指令行中,寻找同时满足以下条件的候选行作为目标行:当前行的机器指令与候选行的机器指令不存在依赖关系;加入当前行的机器指令后,候选行的机器指令数量不超过所述目标处理器在一个执行周期内同时执行的指令数量最大值,且同类型机器指令数量不超过所述目标处理器在一个执行周期内同时执行该类型机器指令的数量最大值;加入当前行的机器指令后,不会与候选行的机器指令产生新的依赖关系;S122)若找到所述目标行,则将所述当前行的机器指令加入所述目标行中,反之,将所述当前行的机器指令加入所述所有已完成指令乱序的指令行中的最后一个指令行的下一行;其中,第一个指令行视为已完成指令乱序;S130、根据所述目标处理器的执行周期,由上至下依次将所有已完成指令乱序的指令行中的每一行指令发送给所述目标处理器。2.根据权利要求1所述的一种机器指令预处理方法,其特征在于,所述S121进一步包括:从所述所有已完成指令乱序的指令行中的最后一个指令行开始,由下至上逐行匹配所述条件,寻找目标行。3.根据权利要求2所述的一种机器指令预处理方法,其特征在于,所述S121进一步包括:将满足所述条件且位于最上方的行,作为目标行...
【专利技术属性】
技术研发人员:王大岁,孙伟,
申请(专利权)人:上海聪链信息科技有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。