仿真环境下的多核任务处理方法及装置制造方法及图纸

技术编号:25890056 阅读:41 留言:0更新日期:2020-10-09 23:30
本发明专利技术公开了一种仿真环境下的多核任务处理方法及装置,方法包括:分别构建在目标仿真环境下能够使用的多核用户接口和周期任务用户接口,在目标仿真环境的模型文件中调用前述用户接口进行任务配置,将所配置的多个周期任务分配至至少两个不同的核;针对每一个核,将其中执行周期相同的周期任务作为一个OS任务,并为每一个OS任务配置一个任务接口函数,使其在运行时,一个周期任务中任务接口函数只被调用一次。上述实现中,能够将一个核中周期相同的任务合并在一起,并为其统一配置一个任务接口函数,这样在一个执行周期中调用一次任务接口函数就能够完成所有相同周期的周期任务,避免了周期任务被重复调用的情况。

【技术实现步骤摘要】
仿真环境下的多核任务处理方法及装置
本专利技术涉及仿真处理技术,更具体的说,是涉及一种仿真环境下的多核任务处理方法及装置。
技术介绍
当前多核处理器在一些仿真环境下的应用,通常是在嵌入式部分完成OS(OperatingSystem,操作系统)任务的配置,在相应仿真环境下进行模型仿真时,直接提供与嵌入式对应的OS任务模块,仿真系统调用提供的OS任务模块执行相应的功能操作,实现相应仿真环境下的多核应用。然而,上述实现由于OS任务的配置在嵌入式部分就已经固定,即OS任务相应的软件程序已经固定写死,每个任务都对应独立的软件代码,这样在任一个处理核中调用多个执行周期相同的任务模块时,就会造成一个执行周期内,这个执行周期的任务会被重复调用,不仅浪费系统资源,且会影响用户的使用体验。
技术实现思路
有鉴于此,本专利技术提供了一种仿真环境下的多核任务处理方法及装置,以克服现有技术中存在的一个执行周期内任务被重复调用的问题。为实现上述目的,本专利技术提供如下技术方案:一种仿真环境下的多核任务处理方法,包括:分别构建多核和周期任务在目标仿真环境下能够使用的用户接口,得到多核用户接口和周期任务用户接口;在目标仿真环境的模型文件中调用所述多核用户接口和所述周期任务用户接口进行任务配置,所述任务配置包括配置周期任务的任务内容,并将所配置的多个周期任务分配至至少两个不同的核,所述任务内容包括任务操作和执行周期;统计所述至少两个不同的核中每个核需要执行的周期任务的执行周期;>针对每一个核,将其中执行周期相同的周期任务作为一个OS任务;为每一个所述OS任务配置一个任务接口函数,并生成对应的配置代码,以使得后续在仿真运行所述OS任务时,针对每一个所述OS任务,在其一个执行周期中,所述任务接口函数只被调用一次。可选的,所述分别构建多核和周期任务在目标仿真环境下能够使用的用户接口,得到多核用户接口和周期任务用户接口,包括:使用目标仿真环境可使用的语言分别编写多核和周期任务的系统函数;分别封装所述系统函数,以得到能够在目标仿真环境下使用的多核用户接口和周期任务用户接口。可选的,在所述为每一个所述OS任务配置一个任务接口函数,并生成对应的配置代码后,还包括:针对每一个OS任务执行如下操作:仿真运行所述OS任务;基于所述仿真运行结果确定所述OS任务的操作运行时间是否大于其执行周期;在大于的情况下,将所述OS任务的部分任务分配至当前核的其他OS任务。可选的,所述将所述OS任务的部分任务分配至当前核的其他OS任务,包括:在当前核中新建一个OS任务作为扩展OS任务,所述扩展OS任务的执行周期与所述OS任务的执行周期相同;将所述OS任务中的部分任务分配至所述扩展OS任务。可选的,所述将所述OS任务中的部分任务分配至所述扩展OS任务,包括:基于所述OS任务的执行周期和其包含的所有的周期任务的运行时间,将所述OS任务中的部分任务分配至所述扩展OS任务,使得分配后的所述OS任务和所述扩展OS任务的运行时间都不大于自身的执行周期。可选的,还包括:在当前核的负载率超过第一阈值的情况下,将负载率超过第一阈值的核中部分OS任务分配至其他核。可选的,所述将负载率超过第一阈值的核中部分OS任务分配至其他核,包括:将负载率超过第一阈值的核中部分OS任务分配至其他核中与该OS任务的执行周期相同的OS任务,或分配至其他核中作为一个单独的OS任务。一种仿真环境下的多核任务处理装置,包括:接口构建模块,用于分别构建多核和周期任务在目标仿真环境下能够使用的用户接口,得到多核用户接口和周期任务用户接口;任务配置模块,用于在目标仿真环境的模型文件中调用所述多核用户接口和所述周期任务用户接口进行任务配置,所述任务配置包括配置周期任务的任务内容,并将所配置的多个周期任务分配至至少两个不同的核,所述任务内容包括任务操作和执行周期;周期统计模块,用于统计所述至少两个不同的核中每个核需要执行的周期任务的执行周期;任务确定模块,用于针对每一个核,将其中执行周期相同的周期任务作为一个OS任务;调用配置模块,用于为每一个所述OS任务配置一个任务接口函数,并生成对应的配置代码,以使得后续在仿真运行所述OS任务时,针对每一个所述OS任务,在其一个执行周期中,所述任务接口函数只被调用一次。可选的,所述接口构建模块包括:函数处理模块,用于使用目标仿真环境可使用的语言分别编写多核和周期任务的系统函数;接口封装模块,用于分别封装所述系统函数,以得到多核和周期任务能够在目标仿真环境下使用的用户接口。可选的,还包括:任务管理模块,用于针对每一个所述OS任务进行任务管理;所述任务管理模块包括:仿真运行模块,用于针对每一个OS任务:仿真运行所述OS任务;时间确定模块,用于基于所述仿真运行模块的仿真运行结果确定所述OS任务的操作运行时间是否大于其执行周期;任务分配模块,用于在所述时间确定模块的确定结果为是的情况下,将所述OS任务的部分任务分配至当前核的其他OS任务。经由上述的技术方案可知,与现有技术相比,本专利技术实施例公开了一种仿真环境下的多核任务处理方法及装置,方法包括:分别构建在目标仿真环境下能够使用的多核用户接口和周期任务用户接口,在目标仿真环境的模型文件中调用多核用户接口和周期任务用户接口进行任务配置,将所配置的多个周期任务分配至至少两个不同的核,统计至少两个不同的核中每个核需要执行的周期任务的执行周期,针对每一个核,将其中执行周期相同的周期任务作为一个OS任务,并为每一个OS任务配置一个任务接口函数、生成对应的配置代码,使其在运行时,一个执行周期中每个OS任务的任务接口函数只被调用一次。上述实现中,OS任务的配置在目标仿真环境下进行,能够将一个核中周期相同的任务合并在一起,并为其统一配置一个任务接口函数,这样在一个执行周期中调用一次任务接口函数就能够完成所有相同周期的周期任务,避免了周期任务被重复调用的情况,不仅节省了系统资源,也能够提升用户的使用体验。附图说明为了更清楚地说明本专利技术实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本专利技术的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。图1为本专利技术实施例公开的一种Simulink环境下的多核任务处理方法的流程图;图2为本专利技术实施例公开的构建多核和周期任务的S-函数模块的用户接口的流程图;图3为本专利技术实施例公开的另一种Simulink环境下的多核任务处理方法的流程图;图4为本专利技术实施例公开的一种Simulink环境下的多核任务处理装置的结构示意图;图5为本专利技术实施例公开的接口构建模块的结构示意图;<本文档来自技高网...

【技术保护点】
1.一种仿真环境下的多核任务处理方法,其特征在于,包括:/n分别构建多核和周期任务在目标仿真环境下能够使用的用户接口,得到多核用户接口和周期任务用户接口;/n在目标仿真环境的模型文件中调用所述多核用户接口和所述周期任务用户接口进行任务配置,所述任务配置包括配置周期任务的任务内容,并将所配置的多个周期任务分配至至少两个不同的核,所述任务内容包括任务操作和执行周期;/n统计所述至少两个不同的核中每个核需要执行的周期任务的执行周期;/n针对每一个核,将其中执行周期相同的周期任务作为一个OS任务;/n为每一个所述OS任务配置一个任务接口函数,并生成对应的配置代码,以使得后续在仿真运行所述OS任务时,针对每一个所述OS任务,在其一个执行周期中,所述任务接口函数只被调用一次。/n

【技术特征摘要】
1.一种仿真环境下的多核任务处理方法,其特征在于,包括:
分别构建多核和周期任务在目标仿真环境下能够使用的用户接口,得到多核用户接口和周期任务用户接口;
在目标仿真环境的模型文件中调用所述多核用户接口和所述周期任务用户接口进行任务配置,所述任务配置包括配置周期任务的任务内容,并将所配置的多个周期任务分配至至少两个不同的核,所述任务内容包括任务操作和执行周期;
统计所述至少两个不同的核中每个核需要执行的周期任务的执行周期;
针对每一个核,将其中执行周期相同的周期任务作为一个OS任务;
为每一个所述OS任务配置一个任务接口函数,并生成对应的配置代码,以使得后续在仿真运行所述OS任务时,针对每一个所述OS任务,在其一个执行周期中,所述任务接口函数只被调用一次。


2.根据权利要求1所述的方法,其特征在于,所述分别构建多核和周期任务在目标仿真环境下能够使用的用户接口,得到多核用户接口和周期任务用户接口,包括:
使用目标仿真环境可使用的语言分别编写多核和周期任务的系统函数;
分别封装所述系统函数,以得到能够在目标仿真环境下使用的多核用户接口和周期任务用户接口。


3.根据权利要求1所述的方法,其特征在于,在所述为每一个所述OS任务配置一个任务接口函数,并生成对应的配置代码后,还包括:
针对每一个OS任务执行如下操作:
仿真运行所述OS任务;
基于所述仿真运行结果确定所述OS任务的操作运行时间是否大于其执行周期;
在大于的情况下,将所述OS任务的部分任务分配至当前核的其他OS任务。


4.根据权利要求3所述的方法,其特征在于,所述将所述OS任务的部分任务分配至当前核的其他OS任务,包括:
在当前核中新建一个OS任务作为扩展OS任务,所述扩展OS任务的执行周期与所述OS任务的执行周期相同;
将所述OS任务中的部分任务分配至所述扩展OS任务。


5.根据权利要求4所述的方法,其特征在于,所述将所述OS任务中的部分任务分配至所述扩展OS任务,包括:
基于所述OS任务的执行周期和其包含的所有的周期任务的运行时间,将所述OS任务中的部分任务分配至所述扩展OS任务,使得分配后的所述OS任务和所述扩展OS任务的运行时间都不大于自身...

【专利技术属性】
技术研发人员:刘旭阳
申请(专利权)人:北京经纬恒润科技有限公司
类型:发明
国别省市:北京;11

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

1