本发明涉及电子相关,尤其是涉及一种数字信号处理器的指令执行方法及数字信号处理器。
背景技术:
1、目前应用于新能源汽车的芯片对于高速处理采样数据的需求越来越高,尤其是针对驾驶安全的信号高速采集运算响应时间要求极高,而现有拥有指令集的dsp(数字信号处理器)在执行相应指令的时候仍然采用标准的多级流水线顺序执行,在处理特殊的需要快速响应执行的指令时,无法根据芯片当前的状态动态调整指令集的执行优先级,特别是在需要高效优先处理实时采样信号数据和相应数据的时候,无法做到高效响应执行指令。中央处理器(central processing unit,cpu)在处理关键指令的动作是基于一个事件进行的触发,该事件中包含了多条指令完成这一事件动作,如果cpu检测到需要优先执行的事件时,仍然由cpu顺序执行该事件,就需要等待cpu执行完之前指令并加载事件指令。如果此时执行的事件还需要调用相关数据,就要等待cpu完成数据指令后再完成所有事件,其执行效率大大降低。
技术实现思路
1、本发明旨在至少解决现有技术中存在的技术问题之一。为此,本发明提出一种数字信号处理器的指令执行方法,能够提升指令优先级,加速专有指令的运算和处理,从而提升响应速度,提升数字信号处理器的处理能力。
2、本发明还提供了一种数字信号处理器、控制装置以及计算机可读存储介质。
3、根据本发明的第一方面实施例的数字信号处理器的指令执行方法,所述数字信号处理器包括主处理单元、优先处理单元、多个外设单元、指令存储单元,每个所述外设单元皆与所述指令存储单元、所述主处理单元和所述优先处理单元连接,所述指令存储单元分别与所述主处理单元和所述优先处理单元连接,所述主处理单元用于通过多级流水线顺序处理多个所述外设单元的指令集,所述指令存储单元用于存储所述指令集;
4、所述数字信号处理器的指令执行方法包括以下步骤:
5、获取目标指令以及所述目标指令对应所述外设单元的外设时钟使能信号,所述目标指令为所述指令集中的一个;
6、通过所述目标指令的指令结构和预设的指令设置条件确定所述目标指令的指令类型,所述指令类型包括普通指令和优先指令;
7、确定所述外设时钟使能信号的信号状态,所述信号状态包括使能状态和未使能状态;
8、根据所述指令类型和所述信号状态确定所述目标指令的执行优先级状态,所述执行优先级状态包括优先执行状态和普通执行状态,所述指令类型为所述优先指令且所述信号状态为使能状态时所述执行优先级状态为所述优先执行状态;
9、根据所述执行优先级状态执行指令处理策略,所述指令处理策略包括优先处理策略,所述执行优先级状态为所述优先执行状态时执行所述优先处理策略,所述优先处理策略包括:发送伴核启动信号至所述优先处理单元,并发送主核启动信号至所述主处理单元,以启动所述优先处理单元加载并处理所述目标指令,且所述主处理单元同时通过多级流水线顺序处理所述指令集中的其余指令。
10、根据本发明实施例的数字信号处理器的指令执行方法,至少具有如下有益效果:
11、现有拥有指令集的数字信号处理器在执行相应指令的时候仍然采用标准的多级流水线顺序执行,在处理特殊的需要快速响应执行的指令时,无法根据芯片当前的状态动态调整指令集的执行优先级。本发明实施例的指令执行方法通过设置两个独立的处理单元,并通过指令结构固化指令类型,将指令分为普通指令和优先指令,并通过确定目标指令的指令类型以及目标指令对应外设单元的外设时钟使能信号的信号状态来确定是否采用优先处理单元优先处理目标指令,从而能够在针对数字信号处理器处理需要快速响应的指令时,启动优先处理单元进行优先处理,提升指令优先级,加速专有指令的运算和处理,从而提升响应速度,提升数字信号处理器的处理能力。
12、根据本发明的一些实施例,所述通过所述目标指令的指令结构和预设的指令设置条件确定所述目标指令的指令类型,包括以下步骤:
13、读取所述目标指令的指令标志位并进行译码得到译码结果,所述目标指令的指令结构包括所述指令标志位和指令数据位;
14、比对所述译码结果和预设的所述指令设置条件,若所述译码结果与预设的所述指令设置条件相同,将所述目标指令的指令类型确认为所述优先指令,若所述译码结果与预设的所述指令设置条件不相同,将所述目标指令的指令类型确认为所述普通指令。
15、根据本发明的一些实施例,所述指令标志位为所述目标指令的指令结构的前三位。
16、根据本发明的一些实施例,所述外设单元具有使能寄存器和时钟使能寄存器;所述外设时钟使能信号由以下步骤得到:
17、读取所述目标指令对应所述外设单元的外设使能信号和时钟使能信号,所述外设使能信号表示所述使能寄存器的第一运行状态,所述时钟使能信号表示所述时钟使能寄存器的第二运行状态;
18、根据所述外设使能信号和所述时钟使能信号确定所述外设时钟使能信号。
19、根据本发明的一些实施例,所述确定所述外设时钟使能信号的信号状态,包括以下步骤:
20、确定所述外设使能信号的所述第一运行状态和所述时钟使能信号的所述第二运行状态;
21、若所述第一运行状态和所述第二运行状态皆为使能状态,将所述外设时钟使能信号的所述信号状态确认为使能状态;
22、若所述第一运行状态和所述第二运行状态中任意一个为未使能状态,将所述外设时钟使能信号的所述信号状态确认为未使能状态。
23、根据本发明的一些实施例,所述指令处理策略还包括普通处理策略,所述执行优先级状态为所述普通执行状态时执行所述普通处理策略,所述普通处理策略包括:发送所述主核启动信号至所述主处理单元,以使得所述主处理单元通过多级流水线顺序处理所述指令集,所述指令集中包含所述目标指令。
24、根据本发明的一些实施例,执行所述普通处理策略时,所述优先处理单元为未使能状态。
25、根据本发明的第二方面实施例的数字信号处理器,包括:
26、多个外设单元;
27、主处理单元,与每个所述外设单元连接,所述主处理单元用于通过多级流水线顺序处理多个所述外设单元的指令集;
28、优先处理单元,与每个所述外设单元连接,所述优先处理单元用于独立处理指令;
29、指令存储单元,分别与每个所述外设单元、所述主处理单元和所述优先处理单元连接,所述指令存储单元用于存储所述指令集;
30、检测单元,分别与每个所述外设单元、所述主处理单元、所述优先处理单元、所述指令存储单元连接,所述检测单元用于执行如上述第一方面实施例所述的数字信号处理器的指令执行方法。
31、根据本发明实施例的数字信号处理器,至少具有如下有益效果:
32、现有拥有指令集的数字信号处理器在执行相应指令的时候仍然采用标准的多级流水线顺序执行,在处理特殊的需要快速响应执行的指令时,无法根据芯片当前的状态动态调整指令集的执行优先级。本发明实施例的数字信号处理器通过设置两个独立的处理单元,并通过指令结构固化指令类型,将指令分为普通指令和优先指令,并通过检测单元确定目标指令的指令类型以及目标指令对应外设单元的外设时钟使能信号的信号状态来确定是否采用优先处理单元优先处理目标指令,从而能够在针对数字信号处理器处理需要快速响应的指令时,启动优先处理单元进行优先处理,提升指令优先级,加速专有指令的运算和处理,从而提升响应速度,提升数字信号处理器的处理能力。
33、根据本发明的第三方面实施例的控制装置,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如上述第一方面实施例所述的数字信号处理器的指令执行方法。由于控制装置采用了上述实施例的数字信号处理器的指令执行方法的全部技术方案,因此至少具有上述实施例的技术方案所带来的所有有益效果。
34、根据本发明的第四方面实施例的计算机可读存储介质,存储有计算机可执行指令,所述计算机可执行指令用于执行如上述第一方面实施例所述的数字信号处理器的指令执行方法。由于计算机可读存储介质采用了上述实施例的数字信号处理器的指令执行方法的全部技术方案,因此至少具有上述实施例的技术方案所带来的所有有益效果。
35、本发明的其它特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者通过实施本发明而了解。
1.一种数字信号处理器的指令执行方法,其特征在于,所述数字信号处理器包括主处理单元、优先处理单元、多个外设单元、指令存储单元,每个所述外设单元皆与所述指令存储单元、所述主处理单元和所述优先处理单元连接,所述指令存储单元分别与所述主处理单元和所述优先处理单元连接,所述主处理单元用于通过多级流水线顺序处理多个所述外设单元的指令集,所述指令存储单元用于存储所述指令集;
2.根据权利要求1所述的数字信号处理器的指令执行方法,其特征在于,所述通过所述目标指令的指令结构和预设的指令设置条件确定所述目标指令的指令类型,包括以下步骤:
3.根据权利要求2所述的数字信号处理器的指令执行方法,其特征在于,所述指令标志位为所述目标指令的指令结构的前三位。
4.根据权利要求1所述的数字信号处理器的指令执行方法,其特征在于,所述外设单元具有使能寄存器和时钟使能寄存器;所述外设时钟使能信号由以下步骤得到:
5.根据权利要求4所述的数字信号处理器的指令执行方法,其特征在于,所述确定所述外设时钟使能信号的信号状态,包括以下步骤:
6.根据权利要求1所述的数字信号处理器的指令执行方法,其特征在于,所述指令处理策略还包括普通处理策略,所述执行优先级状态为所述普通执行状态时执行所述普通处理策略,所述普通处理策略包括:发送所述主核启动信号至所述主处理单元,以使得所述主处理单元通过多级流水线顺序处理所述指令集,所述指令集中包含所述目标指令。
7.根据权利要求6所述的数字信号处理器的指令执行方法,其特征在于,执行所述普通处理策略时,所述优先处理单元为未使能状态。
8.一种数字信号处理器,其特征在于,包括:
