技术领域
本发明涉及汽车开放系统架构操作系统的警报偏移优化装置。
背景技术
随着在车辆中使用的电子装置变多,对于对其使用的软件的标准化的要求也在变高。对此,为了提高模块的重复使用性并且提高各个车辆间的零件的兼容性,正在开发着基于汽车开放系统架构(AUTOSAR)的嵌入式软件开放平台(Embedded Software OpenPlatform)。
汽车开放系统架构(AUTOSAR,AUTomotive Open System Architecture)平台作为车辆电子装置领域的操作系统,其设置有用于车辆控制器的操作控制的机制。
汽车开放系统架构平台在越来越多的地方被使用,并且可使用的功能也在变得多样化。这种汽车开放系统架构平台被扩展地应用于全球车辆市场。
此外,在用于各种车辆的控制器的情况下,使彼此的功能融合是一种趋势。即,在以往通过用于各种车辆的控制器来执行各种车辆控制功能,但是在近来正在变化为使各种车辆控制功能可在一个车辆控制器中被使用。例如,作为传统的车辆控制器,存在有集成车身控制系统(IBU,Integrated Body Control Unit)和集成控制单元(ICU,IntergratedCentral Unit)等,但是这种集成形态的控制器也在被集成为通信控制装置(CCU,Communication Control Unit)。
由此,由于在单一车辆控制器中使用的功能逐渐变多,因此发生软件的资源短缺的现象。在软件的资源短缺的情况下,车辆控制器上可能发生过载。此外,也可能发生重置或实际要执行的任务(Task)延迟或遗漏的现象。这不仅是车辆控制器的问题,而且会导致致命的车辆缺陷。
为了解决这种问题,在当前的汽车开放系统架构平台中提供的是操作系统环境下的警报偏移(Alarm Offset)功能。
警报偏移通过最大限度地分散用于通知任务执行时间的警报位置,从而防止多个任务被一次性地执行,进而避免许多资源被分配。通过这种方式,实现使多个任务在不发生问题的情况下被执行的效果。
然而,用于警报偏移的优化的方法并未被限定在任何规格中。
在一般的应用软件(ASW,Application SoftWare)的开发人员的情况下,会基于通过许多经验积累的信息来设定警报偏移,而在基础软件(BSW,Basic SoftWare)的开发人员的情况下,会基于一般情况下的信息来设定警报偏移。
由于警报偏移的优化值可根据特定车辆控制器或特定MCU而不同,因此当按照各个车辆控制器规格而执行警报偏移的优化时,可解决汽车开放系统架构操作系统下的资源短缺现象。
现有技术文献
专利文献
(专利文献1)韩国公开专利第2012-0060435号
发明内容
要解决的技术问题
对此,本发明是鉴于上述情况而创出的,其目的在于提供如下的汽车开放系统架构操作系统的警报偏移优化装置,即,该汽车开放系统架构操作系统的警报偏移优化装置通过按照各个车辆控制器规格对警报偏移进行优化,从而相比于一一测量任务执行时间,能够在实际运行时间(RUN Time)环境下快速地测量任务执行时间。
解决问题的手段
用于实现所述目的的根据本发明的优选实施例的汽车开放系统架构操作系统的警报偏移优化装置可包括启动模块和执行模块,其中,启动模块向关于警报设定测试文件的各个警报信息的偏移参数值输入预定偏移表的偏移值,并且执行模块基于输入的偏移值来执行所述警报设定测试文件以输出用于警报偏移优化的执行结果。
所述偏移表可配置成包括包含有警报数量、警报名称和警报周期的多个警报信息、以及通过偏移值与所述警报信息中的每个连接的索引信息。
所述启动模块可将根据所述索引信息的偏移值输入作为所述偏移参数值。
所述执行模块可按照所述索引信息的顺序来执行所述警报设定测试文件。
还可包括存储有所述偏移表的偏移表存储部。
还可包括测量根据所述警报设定测试文件的执行的CPU负载的负载测量模块。
还可包括当完成根据所述索引信息的所述警报设定测试文件的执行时,向所述执行模块请求重置以根据其它索引信息来执行所述警报设定测试文件的重置模块。
当根据最后一个索引信息而完成警报设定测试文件的执行时,所述执行模块可用预设的通信方式向外部传输执行结果。
所述执行结果可包括CPU最小负载、CPU最大负载和错误挂钩调用次数。
所述执行模块可对所述CPU最小负载、所述CPU最大负载和所述错误挂钩调用次数与预定基准值进行比较以判断基准值是否适合。
还可包括接收与汽车开放系统架构操作系统的任务连接的警报信息,并且使用警报信息来生成警报设定文件的制作工具。
还可包括用偏移参数值对所述警报设定文件的偏移值进行补正以生成所述警报设定测试文件的补正部。
发明效果
根据本发明的优选实施例的汽车开放系统架构操作系统的警报偏移优化装置,通过按照各个车辆控制器规格对警报偏移进行优化,而不是单纯地依靠经验,从而与一一测量任务执行时间相比,实现了能够在实际运行时间(RUN Time)环境下快速地测量任务执行时间的效果。
此外,实现了能够解决汽车开放系统架构操作系统中的资源短缺现象的效果。
附图说明
图1是根据本发明的优选实施例的汽车开放系统架构操作系统的警报偏移优化装置的框图。
图2是示出警报偏移参数值的参数化过程的视图。
图3是示出偏移表的视图。
图4是示出根据偏移表的警报偏移优化值的视图。
图5是根据本发明的优选实施例的汽车开放系统架构操作系统的警报偏移优化方法的顺序图。
附图标记说明
10:汽车开放系统架构操作系统
100:制作工具
200:补正部
300:警报偏移优化部
310:偏移表存储部
320:启动模块
330:执行模块
340:负载测量模块
350:重置模块
具体实施方式
在下文中将参照附图对本发明的优选实施例进行详细说明。首先应注意,在对各个附图的构成元件赋予附图标记时,即使相同的构成元件示出在不同的附图中,其也可具有尽可能相同的附图标记。此外应理解,在下文中将对本发明的优选实施例进行说明,但是本发明的技术思想并不限定或限制于此,并且能够由本发明所属技术领域的技术人员进行修改并以各种方式来实施。
图1是根据本发明的优选实施例的汽车开放系统架构操作系统的警报偏移优化装置的框图。
参照图1,根据本发明的优选实施例的汽车开放系统架构操作系统10可包括制作工具100、补正部200和警报偏移优化部300。
制作工具100可根据用户需求接收SWP(Software program)信息和APP信息(USER信息)。此处,SWP信息可包括Tick值、SWP警报数量、各个SWP警报的周期、各个SWP警报的偏移变更与否、以及具有固定偏移的SWP警报的固定偏移值。此处,Tick值为警报的基本单位。
APP信息可包括ASW警报数量、各个ASW警报周期、各个ASW警报的偏移变更与否、具有固定偏移的ASW警报的固定偏移值、最小和最大CPU负载、以及最小错误挂钩(ErrorHook)调用次数。错误挂钩是指在汽车开放系统架构操作系统中提供的挂钩例程(Hook Routine)以便用户能够选择是否使用发生错误的服务。
制作工具100可根据用户需求对SWP信息和APP信息进行组合以生成组合信息。此处,组合信息可包括对SWP警报和ASW警报数量进行合算的总警报数量、关于各个警报的可偏移值、关于各个警报的偏移的固定或可变更信息、以及用于判断结果值是通过(Pass)还是失败(Fail)的基准值。
关于各个警报的可偏移值(偏移最大值)可通过任务的最大周期除以Tick值来设定。在一实施例中,在Tick值为2.5ms并且警报周期为10ms的情况下,偏移最大值可设定为4。
关于各个警报的偏移的固定或可变更信息可使应具有固定偏移的警报固定,并且可使可具有变更偏移的警报变更。
判断结果是通过还是失败的基准值可通过作为APP信息的最小CPU负载和最小错误挂钩调用次数等来判断。
制作工具100可使用组合信息来生成用于警报设定的警报设定文件(Rte.c)。此外,制作工具100可将总警报数量和各个警报的名称、关于各个警报的偏移是否可变更以及Tick值输入到偏移表。通过这种方式,可构成偏移表(Offset Table)。
另外,组合信息的各个警报信息与任务映射。当关于警报设定文件(Rte.c)的警报信息被执行时,随着计数增加,警报会响起,并且与警报连接的任务被执行。警报偏移是为了不使多个警报同时响起而被设定的。即,警报偏移通过使多个警报不同时响起来避免CPU负载增加。
补正部200可对警报设定文件(Rte.c)进行补正以生成警报设定测试文件(Rte_Test.c)。补正部200可对存在于警报设定文件(Rte.c)中的各个警报信息(SetRelAlarm)的偏移值进行参数化。补正部200可生成用于对警报设定文件(Rte.c)的偏移值进行参数化的偏移参数设定函数(SchM_Init)。偏移表的偏移值可依次输入到偏移参数设定函数(SchM_Init)。
在一实施例中,最大偏移参数值可设定为任务的最大周期除以Tick值的除得值。偏移值的参数化过程将在下文中通过图2进行说明。
警报偏移优化部300可包括偏移表存储部310、启动模块320、执行模块330、负载测量模块340以及重置模块350。
偏移表存储部310可存储有由索引信息、警报信息(数量、名称、周期)、警报偏移是否可变更以及偏移值构成的偏移表。
启动模块320可以偏移表的索引顺序向警报设定测试文件(Rte_Test.c)的偏移参数设定函数(SchM_Init)输入偏移值。
执行模块330可执行输入有偏移值的警报设定测试文件(Rte_Test.c)以按照各个警报信息的偏移来计算CPU最小负载、CPU最大负载和错误挂钩的调用次数。
负载测量模块340可测量根据执行模块330的执行的CPU负载并将测量值传输到执行模块330。
重置模块350可重置警报设定测试文件(Rte_Test.C)的执行。即,重置模块350可向执行模块330请求重置以根据偏移表的其它索引来执行警报设定测试文件(Rte_Test.c)。
当根据偏移表的最后一个索引而完成警报设定测试文件(Rte_Test.c)的执行时,执行模块330可将执行结果存储在偏移表中或者通过单独的通信方式(Uart、CAN)输出执行结果。这种执行模块330的执行结果可以Excel、txt文档形态输出,并且可利用为用于警报偏移优化的信息。
图2是示出警报偏移值的参数化过程的视图。
参照图2,可确定在警报设定测试文件(Rte_Test.c)中警报设定文件(Rte.c)的警报偏移值被设定为偏移参数值。
警报设定文件(Rte.c)的各个警报信息(SetRelAlarm)可包括警报类型、周期和偏移值。
在一实施例中,某一个警报信息(SetRelAlarm)可具有OsAlarm_5ms的警报类型、2的周期、1的偏移值。此处,警报的周期可通过在2的周期上乘以2.5ms的Tick值而成为5ms。
另一个警报信息(SetRelAlarm)可具有OsAlarm_10ms_1的警报类型、4的周期、2的偏移值。此处,警报的周期可通过在4的周期上乘以2.5ms的Tick值而成为10ms。
又一个警报信息(SetRelAlarm)可具有OsAlarm_10ms_2的警报类型、4的周期、3的偏移值。此处,警报的周期可通过在4的周期上乘以2.5ms的Tick值而成为10ms。
再一个警报信息(SetRelAlarm)可具有OsAlarm_20ms的警报类型、8的周期、4的偏移值。此处,警报的周期可通过在8的周期上乘以2.5ms的Tick值而成为20ms。
再一个警报信息(SetRelAlarm)可具有OsAlarm_100ms的警报类型、40的周期、5的偏移值。此处,警报的周期可通过在40的周期上乘以2.5ms的Tick值而成为100ms。
包括这种报警信息的警报设定文件(Rte.c)可通过补正部200由警报设定测试文件(Rte_Test.c)进行补正。
在一实施例中,警报设定测试文件(Rte_Test.c)的某一个的警报信息(SetRelAlarm)可具有OsAlarm_5ms的警报类型、2的周期、OsAlarm_5ms_Offset的偏移参数值。
另一个警报信息(SetRelAlarm)可具有OsAlarm_10ms_1的警报类型、4的周期、OsAlarm_10ms_1_Offset的偏移参数值。
又一个警报信息(SetRelAlarm)可具有OsAlarm_10ms2的警报类型、4的周期、OsAlarm_10ms_2_Offset的偏移参数值。
又一个警报信息(SetRelAlarm)可具有OsAlarm_20ms的警报类型、8的周期、OsAlarm_2ms_Offset的偏移参数值。
又一个警报信息(SetRelAlarm)可具有OsAlarm_100ms的警报类型、40的周期、OsAlarm_100ms_Offset的偏移参数值。
图3是示出偏移表的视图。
参照图3,偏移表可包括警报信息(警报名、周期)、偏移变更与否、偏移参数值和索引(Index)信息。
在一实施例中,警报名为警报A(Alarm A)的情况下,可具有5ms的周期、偏移可变更、以索引1、2、100、101、500、100的顺序而为0、0、1、1、4、4(MAX)的偏移参数值。对于除此之外的警报信息的详细说明将被省略。
图4是示出根据偏移表的警报偏移优化值的视图。
参照图4,偏移表可包括执行模块330的执行结果。即,偏移表还可包括错误挂钩调用次数(基准值:0)、CPU最小负载(基准值:40%)、CPU最大负载(基准值:60%)以及基准值是否适合。
在一实施例中,在警报名为警报A(Alarm A)的情况下,错误挂钩调用次数可以索引1、2、100、101、500、100的顺序而被表示为56(NG)、49(NG)、0、0、0、48(NG)。此处,NG意味着不好。
此外,在警报A(Alarm A)的情况下,CPU最小负载可以索引1、2、100、101、500、100的顺序而被表示为60%(NG)、55%(NG)、15%、18%、60%(NG)、70%(NG)。
此外,在警报A(Alarm A)的情况下,CPU最大负载可以索引1、2、100、101、500、100的顺序而被表示为85%(NG)、81%(NG)、59%、55%、70%(NG)、70%(NG)。
此外,在警报A(Alarm A)的情况下,基准值是否适合可以索引1、2、100、101、500、100的顺序而被表示为失败(FAIL)、失败(FAIL)、通过(PASS)、通过(PASS)、失败(FAIL)、失败(FAIL)。对于除此之外的警报信息的详细说明将被省略。
图5是根据本发明的优选实施例的汽车开放系统架构操作系统的警报偏移优化方法的顺序图。
参照图5,根据本发明的优选实施例的汽车开放系统架构操作系统的警报偏移优化方法可包括警报设定测试文件输入步骤(S510)、偏移表生成步骤(S520)、偏移参数值输入步骤(S530)、警报设定测试文件执行步骤(S540)、CPU负载测量步骤(S550)、索引判断步骤(S560)、重置步骤(S570)和执行结果输出步骤(S580)。
在警报设定测试文件输入步骤(S510)中,可输入用于警报设定的警报设定测试文件。警报设定测试文件可包括用于将各个警报信息的偏移值参数化为偏移参数值的偏移参数设定函数(SchM_Init)。
在偏移表生成步骤(S520)中,可生成由索引信息、警报信息(数量、名称、周期)、警报偏移是否可变更以及偏移值构成的偏移表。偏移表可包括在偏移表存储部310中。
在偏移参数值输入步骤(S530)中,可以偏移表的索引顺序向偏移参数设定函数(SchM_Init)输入偏移值。
在警报设定测试文件执行步骤(S540)中,可以偏移表的索引顺序来执行输入有偏移值的警报设定测试文件(Rte_Test.c)以计算根据警报信息的偏移的CPU最小负载、CPU最大负载和错误挂钩调用次数。
在CPU负载测量步骤(S550)中,可对根据警报设定测试文件(Rte_Test.c)的执行的CPU负载进行测量。
在索引判断步骤(S560)中,当计算出根据警报信息的偏移的CPU最小负载、CPU最大负载和错误挂钩调用次数时,判断是否为偏移表的最后一个索引。
在重置步骤(S570)中,重置警报设定测试文件(Rte_Test.c)的执行,直到计算出关于根据偏移表的最后一个索引的警报信息的CPU最小负载、CPU最大负载和错误挂钩调用次数。
在执行结果输出步骤(S580)中,输出作为关于整个警报信息的执行结果的CPU最小负载、CPU最大负载和错误挂钩调用次数。CPU最小负载、CPU最大负载和错误挂钩调用次数可被存储在偏移表中,或者可通过Uart、CAN等的通信方式传输到外部以用于警报偏移优化。
以上说明仅仅是示意性地说明本发明的技术思想,并且本发明所属技术领域的普通技术人员能够在不背离本发明的实质性特性的范围内进行多种修改、变更和替换。因此,本发明中公开的实施例和附图并不是用于限定本发明的技术思想,而是用于对其进行说明,并且本发明的技术思想的范围并不受这种实施例和附图限定。
如本发明所属技术领域的普通技术人员可理解的,根据本发明的步骤和/或操作可以不同的顺序发生、或者并列地发生、或者为了不同的时期(epoch)等而在其它实施例中同时发生。
根据实施例,步骤和/或操作的一部分或全部可使用对存储在一个或多个非暂时性计算机可读介质中的命令、程序、交互数据结构(interactive data structure)、客户端和/或服务器进行驱动的一个或多个处理器来实现或执行至少一部分。示例性地,一个或多个非暂时性计算机可读介质可为软件、固件、硬件和/或它们的任意组合。此外,本说明书中讨论的“模块”的功能可实现为软件、固件、硬件和/或它们的任意组合。
机译: 基于汽车开放系统架构(AUTOSAR)的汽车行业验收测试分析装置,具有减少应用程序报告器,该报告器基于分析结果报告要检查的减少应用程序的详细信息
机译: 基于汽车开放系统架构的软件参数设置装置及方法
机译: 基于汽车开放系统架构软件的参数设置装置及方法