指令处理方法及装置制造方法及图纸

技术编号:25636605 阅读:16 留言:0更新日期:2020-09-15 21:29
本申请提供一种指令处理方法及装置,所述方法应用于硬件加速模块,所述方法包括:接收CPU发送的加速指令,所述加速指令包括待执行任务的属性信息;根据所述待执行任务的属性信息,构造完成所述待执行任务的第一条任务指令,所述第一条任务指令包括任务目标以及数据存储位置;将构造的所述第一条任务指令发送至对应的任务完成模块,以使得所述任务完成模块依据所述任务目标完成对应的待执行任务,并将执行结果和所述数据存储位置发送至存储控制单元,所述存储控制单元根据所述数据存储位置将所述执行结果存储至对应的存储单元,以使得所述CPU从所述存储单元中获取所述执行结果。

【技术实现步骤摘要】
指令处理方法及装置
本申请涉及通信
,尤其涉及一种指令处理方法及装置。
技术介绍
在计算机系统中,程序通常以CPU下发某指令作为起止边界。大多数程序可以被看作有序的指令集合。对于某些流程十分冗长,又或者运算比较复杂的程序而言,为了完成对应的操作,有关指令将在整个指令集空间中占用相当一部分空间。如果程序存在相对固定的指令下发顺序,即繁琐的工作流程在框架上完全固定(例如,某程序每次被执行时都将调用一个专用寄存器,区别仅在每次从该寄存器中读出的数据不同),CPU通常会为这类程序或指令,进行大量重复性的工作(例如,CPU需要下发多条指令以完成一次查表,而每条指令的构造又需要若干指令完成逻辑运算、逻辑判断、地址计算等步骤),如此,对于指令集空间、CPU工作效率等性能造成极大的浪费。
技术实现思路
有鉴于此,本申请提供了一种指令处理方法及装置,用以解决现有技术中,对于某些固定流程,CPU对其存在大量重复性的工作,对指令集空间、CPU工作效率等性能造成极大浪费的问题。第一方面,本申请提供了一种指令处理方法,所述方法应用于硬件加速模块,所述方法包括:接收CPU发送的加速指令,所述加速指令包括加速标志以及待执行任务的属性信息;根据所述加速标识以及待执行任务的属性信息,构造完成所述待执行任务的第一条任务指令,所述第一条任务指令包括任务目标以及数据存储位置;将构造的所述第一条任务指令发送至对应的任务完成模块,以使得所述任务完成模块依据所述任务目标完成对应的待执行任务,并将执行结果和所述数据存储位置发送至存储控制单元,所述存储控制单元根据所述数据存储位置将所述执行结果存储至对应的存储单元,以使得所述CPU从所述存储单元中获取所述执行结果。第二方面,本申请提供了一种指令处理装置,所述装置包括:接收单元,用于接收CPU发送的加速指令,所述加速指令包括待执行任务的属性信息;构造单元,用于根据所述待执行任务的属性信息,构造完成所述待执行任务的第一条任务指令,所述第一条任务指令包括任务目标以及数据存储位置;发送单元,用于将构造的所述第一条任务指令发送至对应的任务完成模块,以使得所述任务完成模块依据所述任务目标完成对应的待执行任务,并将执行结果和所述数据存储位置发送至存储控制单元,所述存储控制单元根据所述数据存储位置将所述执行结果存储至对应的存储单元,以使得所述CPU从所述存储单元中获取所述执行结果。因此,通过应用本申请提供的一种指令处理方法及装置,硬件加速模块接收到CPU发送的加速指令后,根据加速指令包括的加速标志以及待执行任务的属性信息,构造完成该待执行任务的第一条任务指令。其中,该条任务指令包括任务目标以及数据存储位置。硬件加速模块将该条任务指令发送至对应的任务完成模块,如此,使得任务完成模块依据任务目标完成对应的待执行任务,并将执行结果和数据存储位置发送至存储控制单元,存储控制单元根据数据存储位置将执行结果存储至对应的存储单元,CPU从存储单元中获取执行结果。前述方式解决了现有技术中,对于某些固定流程,CPU对其存在大量重复性的工作,对指令集空间、CPU工作效率等性能造成极大浪费的问题。实现精简指令集的目的,减少特定流程指令的数量,提高CPU工作效率。附图说明图1为本申请实施例提供的一种指令处理方法的流程图;图2为本申请实施例提供的一种指令处理装置结构图。具体实施方式这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施例并不代表与本申请相一致的所有实施例。相反,它们仅是与如所附权利要求书中所详述的、本申请的一些方面相一致的装置和方法的例子。在本申请使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本申请。在本申请和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。还应当理解,本文中使用的术语“和/或”是指并包含一个或多个相对应的列出项目的任何或所有可能组合。应当理解,尽管在本申请可能采用术语第一、第二、第三等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本申请范围的情况下,第一信息也可以被称为第二信息,类似地,第二信息也可以被称为第一信息。取决于语境,如在此所使用的词语“如果”可以被解释成为“在……时”或“当……时”或“响应于确定”。下面对本申请实施例提供的指令处理方法进行详细地说明。参见图1,图1为本申请实施例提供的一种指令处理方法的流程图。该方法应用于硬件加速模块,具体包括下述步骤。步骤110、接收CPU发送的加速指令,所述加速指令包括加速标志以及待执行任务的属性信息。具体地,在本申请实施例中,CPU支持多线程的工作模式。假设CPU中处于活跃状态的某线程即将进入取任务或任务完成的流程,CPU根据当前任务,生成加速指令,该加速指令包括加速标志以及待执行任务的属性信息。CPU向硬件加速模块发送加速指令。硬件加速模块从加速指令中获取加速标志。根据加速标识,完成自启动。需要说明的是,待执行任务的属性信息具体是指用于表示该待执行任务特征的信息,例如,表示读、写、比较等执行动作特征的信息。在本申请实施例中,加速指令还包括任务目标、任务地址、控制信息等内容。其中,控制信息具体是指硬件加速模块在后续构造任务指令的次数。例如,若控制信息为3,则硬件加速模块在后续需构造3次任务指令,完成3次加速过程。步骤120、根据所述加速标识以及待执行任务的属性信息,构造完成所述待执行任务的第一条任务指令,所述第一条任务指令包括任务目标以及数据存储位置。具体地,硬件加速模块接收加速指令后,从中获取加速标志以及待执行任务的属性信息。根据待执行任务的属性信息,构造完成该待执行任务的第一条任务指令。其中,该条任务指令包括任务目标一级数据存储位置。进一步地,若加速指令中未包括加速标志,则硬件加速模块依照现有完成CPU下发指令的流程,执行加速指令,该流程类似现有指令完成过程,在此不再复述。更进一步地,步骤110中的加速指令还包括线程号,在构造完成待执行任务的任务指令之前,硬件加速模块根据线程号,从CPU处接管步骤110中描述的线程,然后,硬件加速模块代替CPU完成一系列固定的工作(例如,Load/Store、DMA等)。CPU在下放该线程后,将切换至其他线程并维持在工作状态。如此,实现精简软件处理流程的目的,优化CPU的计算性能。步骤130、将构造的所述第一条任务指令发送至对应的任务完成模块,以使得所述任务完成模块依据所述任务目标完成对应的待执行任务,并将执行结果和所述数据存储位置发送至存储控制单元,所述存储控制单元根据所述数据存储位置将所述执行结果存储至对应的存储单元,从而使所述CPU从所述存储单元中获取所述执行结果。本文档来自技高网...

【技术保护点】
1.一种指令处理方法,其特征在于,所述方法应用于硬件加速模块,所述方法包括:/n接收CPU发送的加速指令,所述加速指令包括加速标志以及待执行任务的属性信息;/n根据所述加速标识以及待执行任务的属性信息,构造完成所述待执行任务的第一条任务指令,所述第一条任务指令包括任务目标以及数据存储位置;/n将构造的所述第一条任务指令发送至对应的任务完成模块,以使得所述任务完成模块依据所述任务目标完成对应的待执行任务,并将执行结果和所述数据存储位置发送至存储控制单元,所述存储控制单元根据所述数据存储位置将所述执行结果存储至对应的存储单元,从而使所述CPU从所述存储单元中获取所述执行结果。/n

【技术特征摘要】
1.一种指令处理方法,其特征在于,所述方法应用于硬件加速模块,所述方法包括:
接收CPU发送的加速指令,所述加速指令包括加速标志以及待执行任务的属性信息;
根据所述加速标识以及待执行任务的属性信息,构造完成所述待执行任务的第一条任务指令,所述第一条任务指令包括任务目标以及数据存储位置;
将构造的所述第一条任务指令发送至对应的任务完成模块,以使得所述任务完成模块依据所述任务目标完成对应的待执行任务,并将执行结果和所述数据存储位置发送至存储控制单元,所述存储控制单元根据所述数据存储位置将所述执行结果存储至对应的存储单元,从而使所述CPU从所述存储单元中获取所述执行结果。


2.根据权利要求1所述的方法,其特征在于,所述硬件加速模块接收CPU发送的加速指令之前,所述方法还包括:
与所述CPU协商在所述存储单元中用于存放所述执行结果的存储地址。


3.根据权利要求1所述的方法,其特征在于,所述加速指令还包括线程号;
所述构造完成所述待执行任务的第一条任务指令之前,所述方法还包括:
根据所述线程号,监控所述线程号指示的线程。


4.根据权利要求3所述的方法,其特征在于,所述方法还包括:
周期性扫描所述存储控制单元;
根据所述线程号,判断所述存储控制单元存储的执行结果中是否存在与所述线程号对应的执行结果;
若存在,则获取与所述线程号对应的执行结果,所述执行结果包括构造第二条任务指令所需的待执行任务的属性信息,所述第一条任务指令与所述第二条任务指令归属同一任务。


5.根据权利要求1所述的方法,其特征在于,所述方法还包括:
向所述CPU发送通知消息,所述通知消息用于使所述CPU确定所述待执行任务已执行完成。


6.根据权利要求3所述的方法,其特征在于,所述方法还包括:
接收暂停指示;
根据所述暂停指示,将当前构造的一条任务指令存储至所述存储单元中为所述线程号指示的线程预留的存储空间内;
当接收到启动指示后,将所述当前构造的一条任务指令发送至对应的任务完成模块。

【专利技术属性】
技术研发人员:刘浩楠
申请(专利权)人:新华三半导体技术有限公司
类型:发明
国别省市:四川;51

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

1