应用FPGA的嵌入式实时操作系统时间性能测试系统的制作方法

文档序号:17130428发布日期:2019-03-16 01:07阅读:145来源:国知局
应用FPGA的嵌入式实时操作系统时间性能测试系统的制作方法

本发明属于软件测评技术领域,具体涉及一种应用fpga的嵌入式实时操作系统时间性能测试系统。



背景技术:

嵌入式实时操作系统是对实时性有严格要求的专用计算机操作系统,其实时性体现在时间性能和运行时间的确定性。任务切换时间、中断响应时间、任务抢占时间、信号量延迟时间是反映嵌入式操作系统时间性能的重要指标。

嵌入式实时操作系统时间性能测试的方法有基准测试法、硬件法。基准测试法,其通过定义一系列的性能基准测试程序,依据rtos自身时基获取的时间数据,如rhealstone、进程分派延迟时间法、hartstone方法、lmbench方法,该类方法比较快捷,但是基准测试程序中频繁的系统调度也使得大量cpu时间被占用,影响测试精度。硬件法主要是利用示波器、逻辑分析仪等嵌入式开发辅助设备与测试程序结合对系统进行时间性能测试,但是辅助设备只负责获取测量时间,灵活性差。



技术实现要素:

(一)要解决的技术问题

本发明要解决的技术问题是:如何提出一种应用fpga的嵌入式实时操作系统时间性能测试系统,以减少测试程序的系统调用,减少信号延迟时间,提高测试精度,增加测试的灵活性。

(二)技术方案

为解决上述技术问题,本发明提供一种应用fpga的嵌入式实时操作系统时间性能测试系统,所述时间性能测试系统分为fpga模块和被测端模块;

所述fpga模块包括:工作指令信号生成模块、第一时间记录模块、响应信号接收模块、第四时间记录模块、第一时间间隔运算模块、存储模块;

所述被测端模块包括:工作任务执行模块响应信号生成模块;

其中,

所述工作指令信号生成模块用于向目标机提供工作指令信号,第一时间记录模块用于记录下发出工作指令信号时的第一时间,作为时间测量起始点;

所述工作任务执行模块用于在目标机接收到工作指令信号后,根据工作指令信号执行对应工作任务;

所述响应信号生成模块用于在工作任务执行模块完成工作任务后,生成响应信号,并输出;

所述响应信号接收模块用于接收所述响应信号;

所述第四时间记录模块用于采用fpga模块自身的时间基准进行计数,记录下所述响应信号的接收时间,即第四时间,作为时间测量终止点;

所述第一时间间隔运算模块用于对第一时间和第四时间之间的时间间隔进行运算,获得第一时间间隔;

所述存储模块对测量的多组时间间隔数据进行存储并转发至上位机;

然后由上位机对收到的时间间隔数据进行统计分析,获得时间性能测试结果。

其中,所述时间性能测试系统适用于嵌入式实时操作系统的任务切换时间、信号量延迟时间、任务抢占时间,中断响应时间性能指标的测试。

其中,所述工作指令信号包括:任务切换信号、任务抢占信号、中断信号。

其中,所述fpga模块还包括:第二时间间隔运算模块;

所述被测端模块还包括:第二时间记录模块、第三时间记录模块;

其中,所述目标机接收到工作指令信号,工作任务执行模块根据工作指令信号执行对应工作任务,同时进行工作任务相关的时间测量,第二时间记录模块用于记录下开始执行工作任务时的第二时间,第三时间记录模块用于记录下执行工作任务完成时的第三时间,响应信号生成模块生成携带有所述第二时间和第三时间的响应信号,并输出;

所述第二时间间隔运算模块用于对第二时间和第三时间之间的时间间隔进行运算,获得第二时间间隔;存储模块对测量的多组时间间隔数据进行存储并转发至上位机。

其中,所述工作指令信号生成模块的工作过程中,包括:

上位机配置工作指令信号的配置参数;

工作指令信号生成模块接收上位机的工作指令信号的配置参数;

工作指令信号生成模块根据配置参数输出相应的工作指令信号,并发送至目标机。

其中,所述第二时间记录模块输出的第二时间以起始电平信号的形式输出,所述第三时间记录模块输出的第三时间以终止电平信号的形式输出。

其中,所述起始电平信号和终止电平信号分别由第二时间记录模块和第三时间记录模块根据目标的是任务执行情况适时输出。

其中,所述工作指令信号还包括计时激励信号;

所述起始电平信号由第二时间记录模块受所述计时激励信号激励产生,所述终止电平信号由第三时间记录模块根据目标的是任务执行情况适时响应输出。

其中,所述第二时间间隔运算模块对第二时间和第三时间之间的时间间隔进行运算,获得第二时间间隔的过程中,

所述第二时间和第三时间分别为目标机适时输出的起始电平信号和终止电平信号,作为时间测量的起始点和终止点。

其中,所述第二时间间隔运算模块对第二时间和第三时间之间的时间间隔进行运算,获得第二时间间隔的过程中,

所述第二时间和第三时间分别为激励信号激励产生的起始电平信号和目标机适时响应输出的终止电平信号,作为时间测量的起始点和终止点。

(三)有益效果

与现有技术相比较,本发明对嵌入式实时操作系统时间性能测量,将外部激励与计时功能由fpga实现,上位机实现数据统计分析,相比基准测试法,减少了测试过程的系统调用和信号延迟时间,提高了测试精度,相比硬件法提高了测试的灵活性。

附图说明

图1为本发明技术方案所提供的测试系统结构示意图。

图2为本发明方案中应用fpga的嵌入式实时操作系统时间性能指标测试方法流程图。

图3为本发明方案中任务切换时间性能指标目标机测试程序流程图。

具体实施方式

为使本发明的目的、内容、和优点更加清楚,下面结合附图和实施例,对本发明的具体实施方式作进一步详细描述。

为解决现有技术问题,本发明提供一种应用fpga的嵌入式实时操作系统时间性能测试系统,如图1-图3所示,所述时间性能测试系统分为fpga模块和被测端模块;

所述fpga模块包括:工作指令信号生成模块、第一时间记录模块、响应信号接收模块、第四时间记录模块、第一时间间隔运算模块、存储模块;

所述被测端模块包括:工作任务执行模块响应信号生成模块;

其中,

所述工作指令信号生成模块用于向目标机提供工作指令信号,第一时间记录模块用于记录下发出工作指令信号时的第一时间,作为时间测量起始点;

所述工作任务执行模块用于在目标机接收到工作指令信号后,根据工作指令信号执行对应工作任务;

所述响应信号生成模块用于在工作任务执行模块完成工作任务后,生成响应信号,并输出;

所述响应信号接收模块用于接收所述响应信号;

所述第四时间记录模块用于采用fpga模块自身的时间基准进行计数,记录下所述响应信号的接收时间,即第四时间,作为时间测量终止点;

所述第一时间间隔运算模块用于对第一时间和第四时间之间的时间间隔进行运算,获得第一时间间隔;

所述存储模块对测量的多组时间间隔数据进行存储并转发至上位机;

然后由上位机对收到的时间间隔数据进行统计分析,获得时间性能测试结果。

其中,所述时间性能测试系统适用于嵌入式实时操作系统的任务切换时间、信号量延迟时间、任务抢占时间,中断响应时间性能指标的测试。

其中,所述工作指令信号包括:任务切换信号、任务抢占信号、中断信号。

其中,所述fpga模块还包括:第二时间间隔运算模块;

所述被测端模块还包括:第二时间记录模块、第三时间记录模块;

其中,所述目标机接收到工作指令信号,工作任务执行模块根据工作指令信号执行对应工作任务,同时进行工作任务相关的时间测量,第二时间记录模块用于记录下开始执行工作任务时的第二时间,第三时间记录模块用于记录下执行工作任务完成时的第三时间,响应信号生成模块生成携带有所述第二时间和第三时间的响应信号,并输出;

所述第二时间间隔运算模块用于对第二时间和第三时间之间的时间间隔进行运算,获得第二时间间隔;存储模块对测量的多组时间间隔数据进行存储并转发至上位机。

其中,所述工作指令信号生成模块的工作过程中,包括:

上位机配置工作指令信号的配置参数;

工作指令信号生成模块接收上位机的工作指令信号的配置参数;

工作指令信号生成模块根据配置参数输出相应的工作指令信号,并发送至目标机。

其中,所述第二时间记录模块输出的第二时间以起始电平信号的形式输出,所述第三时间记录模块输出的第三时间以终止电平信号的形式输出。

其中,所述起始电平信号和终止电平信号分别由第二时间记录模块和第三时间记录模块根据目标的是任务执行情况适时输出。

其中,所述工作指令信号还包括计时激励信号;

所述起始电平信号由第二时间记录模块受所述计时激励信号激励产生,所述终止电平信号由第三时间记录模块根据目标的是任务执行情况适时响应输出。

其中,所述第二时间间隔运算模块对第二时间和第三时间之间的时间间隔进行运算,获得第二时间间隔的过程中,

所述第二时间和第三时间分别为目标机适时输出的起始电平信号和终止电平信号,作为时间测量的起始点和终止点。

其中,所述第二时间间隔运算模块对第二时间和第三时间之间的时间间隔进行运算,获得第二时间间隔的过程中,

所述第二时间和第三时间分别为激励信号激励产生的起始电平信号和目标机适时响应输出的终止电平信号,作为时间测量的起始点和终止点。

此外,本发明还提供一种应用fpga的嵌入式实时操作系统时间性能测试方法,所述时间性能测试方法基于时间性能测试系统来实施,所述时间性能测试系统分为fpga模块和被测端模块;

所述fpga模块包括:工作指令信号生成模块、第一时间记录模块、响应信号接收模块、第四时间记录模块、第一时间间隔运算模块;

所述被测端模块包括:工作任务执行模块响应信号生成模块;

所述时间性能测试方法包括如下步骤:

步骤1:所述工作指令信号生成模块向目标机提供工作指令信号,第一时间记录模块记录下发出工作指令信号时的第一时间,作为时间测量起始点;

步骤2:所述目标机接收到工作指令信号,工作任务执行模块根据工作指令信号执行对应工作任务,工作任务完成后,响应信号生成模块生成响应信号,并输出;

步骤3:响应信号接收模块接收所述响应信号;

步骤4:所述第四时间记录模块采用fpga模块自身的时间基准进行计数,记录下所述响应信号的接收时间,即第四时间,作为时间测量终止点;

步骤5:第一时间间隔运算模块对第一时间和第四时间之间的时间间隔进行运算,获得第一时间间隔;存储模块对测量的多组时间间隔数据进行存储并转发至上位机;

步骤6:上位机对收到的时间间隔数据进行统计分析,获得时间性能测试结果。

其中,所述时间性能测试方法适用于嵌入式实时操作系统的任务切换时间、信号量延迟时间、任务抢占时间,中断响应时间性能指标的测试。

其中,所述步骤1中,所述工作指令信号包括:任务切换信号、任务抢占信号、中断信号。

其中,所述fpga模块还包括:第二时间间隔运算模块;

所述被测端模块还包括:第二时间记录模块、第三时间记录模块;

所述步骤2中包括:所述目标机接收到工作指令信号,工作任务执行模块根据工作指令信号执行对应工作任务,同时进行工作任务相关的时间测量,第二时间记录模块记录下开始执行工作任务时的第二时间,第三时间记录模块记录下执行工作任务完成时的第三时间,响应信号生成模块生成携带有所述第二时间和第三时间的响应信号,并输出;

所述步骤4中包括:第二时间间隔运算模块对第二时间和第三时间之间的时间间隔进行运算,获得第二时间间隔;存储模块对测量的多组时间间隔数据进行存储并转发至上位机。

其中,所述步骤1包括如下步骤:

步骤101:上位机配置工作指令信号的配置参数;

步骤102:工作指令信号生成模块接收上位机的工作指令信号的配置参数;

步骤103:工作指令信号生成模块根据配置参数输出相应的工作指令信号,并发送至目标机。

其中,所述步骤2中:

所述第二时间记录模块输出的第二时间以起始电平信号的形式输出,所述第三时间记录模块输出的第三时间以终止电平信号的形式输出。

其中,所述步骤2中,

所述起始电平信号和终止电平信号分别由第二时间记录模块和第三时间记录模块根据目标的是任务执行情况适时输出。

其中,所述工作指令信号还包括计时激励信号;

所述步骤2中,所述起始电平信号由第二时间记录模块受所述计时激励信号激励产生,所述终止电平信号由第三时间记录模块根据目标的是任务执行情况适时响应输出。

其中,所述步骤4中,

第二时间间隔运算模块对第二时间和第三时间之间的时间间隔进行运算,获得第二时间间隔的过程中,

第二时间和第三时间分别为目标机适时输出的起始电平信号和终止电平信号,作为时间测量的起始点和终止点。

其中,所述步骤4中,

第二时间间隔运算模块对第二时间和第三时间之间的时间间隔进行运算,获得第二时间间隔的过程中,

第二时间和第三时间分别为激励信号激励产生的起始电平信号和目标机适时响应输出的终止电平信号,作为时间测量的起始点和终止点。

实施例1

本实施例具体描述本发明所提出的应用fpga的嵌入式实时操作系统时间性能指标测试方法。所述检测方法应用于嵌入式实时操作系统中断响应时间性能测试。

如图1所示,所述时间测试方法包括如下步骤:

步骤1:fpga向目标机提供激励信号,此处输入的激励信号为目标机的外部中断源。步骤1包含以下步骤:

步骤101、在上位机设置中断触发信号的的频率f、信号持续时间t、触发次数n,确定目标机的中断输入源参数;

步骤102、将激励输入源配置参数发送至fpga

步骤103、fpga根据配置参数输出中断信号给目标机。

步骤2:在目标机上运行时间性能测试程序,输出测量时间的起始信号电平和终止信号电平;

此处,时间性能指标测量时所需的起始电平信号由fpga激励产生;终止电平信号由测试程序响应输出。中断处理服务程序对中断信号进行处理,并通过引脚向fpga发送反馈信号,为使测试过程更精确,中断服务程序不做任何其他工作仅收到中断后,反馈信号给fpga。

步骤3:fpga接收目标机的输出的时间测量起始信号电平和终止信号电平。fpga自身给目标机的激励信号作为时间测量起始点,目标机测试程序响应输出的终止电平信号作为时间测量的终止点。

步骤4:fpga采用自身的时间基准进行计数,对起始信号电平和终止信号电平的时间间隔进行测量;

当fpga向目标机发送出中断信号后,作为计时开始信号,开始计时,接收到目标机的反馈信号作为终止信号,停止计时,得到时间即为这次中断请求的响应时间。

步骤5:fpga对测量的多组时间间隔数据进行存储并转发至上位机。

fpga多次测量中断响应时间,上位机计算得出统计结果。

步骤6:上位机对收到的时间间隔数据进行统计分析,表1为试验结果:

表1中断响应时间

实施例2

本示例具体描述本发明所提出的应用fpga的嵌入式实时操作系统时间性能指标测试方法。所述检测方法应用于嵌入式实时操作系统任务切换时间性能测试。

所述时间性能测试方法包括如下步骤:

步骤1:任务切换时间测试测量参数配置,设置测量次数;

步骤2:在目标机上运行时间性能测试程序,输出测量时间的起始信号电平和终止信号电平;

任务切换时间性能测量时需输出的起始电平信号和终止电平信号均由测试程序适时输出。如图3所示:

(1)创建连个相同优先级的任务1和任务2,为了避免系统其他任务的影响,给这两个任务赋予系统的最高优先级;

(2)进入循环后任务1立即放弃运行,切换至任务2;

(3)任务2被激活后,不做任何工作,切换至任务1;

(4)重复3、4步。

在任务切换函数进入和退出时,向fpga输出起始电平信号和终止电平信号;

步骤3:fpga接收目标机的输出的时间测量起始信号电平和终止信号电平;

步骤4:fpga采用自身的时间基准进行计数,对起始信号电平和终止信号电平的时间间隔进行测量;

步骤5:fpga对测量的固定组数的时间间隔数据进行存储并转发至上位机;

步骤6:上位机对收到的时间间隔数据进行统计分析,表2为试验结果:

表2任务切换时间

实施例3

本实施例提供一种应用fpga的嵌入式实时操作系统时间性能指标测试方法,所述检测方法应用于嵌入式实时操作系统时间性能测试。

所述时间性能测试方法包括如下步骤:

步骤1:fpga向目标机提供激励信号;

步骤2:目标机响应激励并输出响应信号,输出测量时间的起始信号电平和终止信号电平;

步骤3:fpga接收目标机的输出的时间测量起始信号电平和终止信号电平;

步骤4:fpga采用自身的时间基准进行计数,对起始信号电平和终止信号电平的时间间隔进行测量;

步骤5:fpga对测量的多组时间间隔数据进行存储并转发至上位机;

步骤6:上位机对收到的时间间隔数据进行统计分析;

其中,所述步骤1包括如下步骤:

步骤1.1:上位机配置fpga的激励参数和测量参数配置;

步骤1.2:fpga接收上位机的激励配置参数和测量参数配置;

步骤1.3:fpga根据配置参数输出相应的激励信号。

其中,所述步骤2包括两种情况:

(1):时间性能指标测量时需输出的起始电平信号和终止电平信号由目标机适时输出;

(2):时间性能指标测量时所需的起始电平信号由fpga激励产生,终止电平信号由目标机适时响应输出。

其中,所述步骤3包括两种情况:

(1):fpga接收由目标机适时输出的起始电平信号和终止电平信号作为时间测量的起始点和终止点;

(2):fpga自身给目标机的激励信号作为时间测量起始点,目标机响应输出的终止电平信号作为时间测量的终止点。

综上,本发明对嵌入式实时操作系统时间性能测量,将外部激励与计时功能与由fpga实现,上位机实现数据统计分析,相比基准测试法,减少了测试过程的系统调用和信号延迟时间,提高了测试精度,相比硬件法提高了测试的灵活性。

以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明技术原理的前提下,还可以做出若干改进和变形,这些改进和变形也应视为本发明的保护范围。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1