中断时间的测试系统及方法技术方案

技术编号:28941542 阅读:18 留言:0更新日期:2021-06-18 21:46
本发明专利技术是关于一种中断时间的测试系统及方法,系统包括:上位机、可配置输入源、至少一个被测试电源模块和可配置负载;至少一个被测试电源模块并联连接在可配置测试源和负载之间;上位机,连接至可配置输入源、至少一个被测试电源模块和可配置负载,上位机根据被测试电源模块的数量、所有可能的输入源工况和负载工况组合成测试用例库,根据测试用例库中目标测试用例对应的目标输入源工况和负载工况控制可配置输入源和可配置负载进行工作,并控制至少一个被测试电源模块执行中断时间测试算法,以得到每个目标测试用例的中断时间。通过该技术方案,可以方便快速、高效、准确的测试出真实的中断时间,从而计算出真实的中断占用率,准确评估代码质量。

【技术实现步骤摘要】
中断时间的测试系统及方法
本专利技术涉及中断时间确定
,尤其涉及一种中断时间的测试系统及方法。
技术介绍
目前电源模块普遍采用数字控制,数字控制的核心一般都是采用DSP(数字信号处理器)芯片,对于一些实时性要求较高的功能,比如控制环路计算、过压过流保护、动态处理策略、采样滤波等,往往使用ISR(中断服务程序)来执行,DSP优先执行ISR,在一个中断周期中执行完ISR后才会执行主程序,所以中断时间(即ISR执行时间)对于模块控制来说是一个非常重要的指标,中断时间过长就会导致中断占用率(ISR执行时间在中断周期中所占的比例)过高,从而可能导致主程序没有足够的时间来执行,极端情况,比如中断溢出(中断时间超过中断周期)会导致下一个中断都无法及时执行,导致模块不能正常工作,因此,在电源模块的开发过程中准确的测试出中断时间非常重要。现在测试中断时间主要有两种方法:方法一:人工在ISR中找出执行时间最长的分支,人工数出程序执行需要多少个系统时钟周期,这种方法需要人在复杂的代码中找出最长分支,而且要一条一条的数出来,而各指令的执行周期又可能不同,所以工作量很大,效率低,而且准确度也较差。方法二:人工ISR中找出执行时间最长的分支,更改代码保证每个判断条件都执行最长分支,在进入ISR时将某个测试输出管脚电平置高,在退出ISR时将其置低,然后在单板上电使用示波器测量高电平的时间,这种方法相比方法一少了人工数代码,但仍然要人工寻找最长分支,而且需要在每个判断条件中更改代码,工作量仍然较大,效率也低,对于不是代码编写者来说很难确定最长分支,也很容易出错,另外因为人为更改了很多判断条件,测试工况与实际工况可能存在较大差异,造成测试结果与真实情况偏差较大。
技术实现思路
为克服相关技术中存在的问题,本专利技术提供一种中断时间的测试系统及方法,可以方便快速、高效、准确的测试出真实的中断时间,从而计算出真实的中断占用率,准确评估代码质量。根据本专利技术实施例的第一方面,提供一种中断时间的测试系统,所述系统包括:上位机、可配置输入源、可配置负载和至少一个被测试电源模块;所述至少一个被测试电源模块并联连接在所述可配置输入源和所述可配置负载之间;所述上位机,连接至所述可配置输入源、所述至少一个被测试电源模块和所述可配置负载,所述上位机根据被测试电源模块的数量、所有可能的输入源工况和负载工况组合成测试用例库,根据所述测试用例库中目标测试用例对应的目标输入源工况、目标负载工况和目标测试用例的编号按顺序控制所述可配置输入源和可配置负载进行工作,并下发测试命令和目标测试用例的编号至所述至少一个被测试电源模块,以控制所述至少一个被测试电源模块对于每个目标测试用例执行K次中断时间测试算法,以测试得到每个目标测试用例的中断时间。在一个实施例中,优选地,所述目标测试用例的确定方式包括:接收用户输入的测试用例选择命令,根据所述测试用例选择命令,将被选中的测试用例确定为所述目标测试用例。在一个实施例中,优选地,所述中断时间测试算法包括:接收所述测试命令和所述目标测试用例的编号,允许执行中断时间测试算法;在进入中断服务程序时读取定时器计数T1;在即将退出中断服务程序时读取定时器计数T2;获取响应中断到读取T1之间的时间T3以及读取T2到退出中断之间的时间T4;计算本次中断时间,其中,所述本次中断时间采用以下公式进行计算:T=(T2-T1)+T3+T4。在一个实施例中,优选地,所述至少一个被测试电源模块还用于:将本次中断时间T与该目标测试用例的中断时间Txyz进行比较,将两者中的最大值确定为该目标测试用例的新的中断时间Txyz新.;当所有目标测试用例中的每个测试用例均执行完K次中断时间测试算法后,比较所有目标测试用例的中断时间Txyz新.,从中选取最大中断时间确定为最长中断时间;所述被测试电源模块将所有目标测试用例对应的中断时间组成一个数组,将所述数组和所述最长中断时间和对应的目标测试用例编号发送至上位机。在一个实施例中,优选地,所述至少一个被测试电源模块还用于:将本次中断时间T与最终中断时间Tmax进行比较,将两者中的最大值确定为该目标测试用例的新的最终中断时间Tmax新;当所有目标测试用例中的每个测试用例均执行完K次中断时间测试算法后,将最终中断时间Tmax新发送至上位机。根据本专利技术实施例的第二方面,提供一种中断时间的测试方法,用于如第一方面实施例中任一项所述的中断时间的测试系统,所述方法包括:根据被测试电源模块的数量、所有可能的输入源工况和负载工况组合成测试用例库;根据所述测试用例库中目标测试用例对应的目标输入源工况、目标负载工况和目标测试用例的编号按顺序控制所述可配置输入源和可配置负载进行工作,并下发测试命令和目标测试用例的编号至所述至少一个被测试电源模块,以控制所述至少一个被测试电源模块对于每个目标测试用例执行K次中断时间测试算法,以测试得到每个目标测试用例的中断时间。在一个实施例中,优选地,所述目标测试用例的确定方式包括:接收用户输入的测试用例选择命令,根据所述测试用例选择命令,将被选中的测试用例确定为所述目标测试用例。在一个实施例中,优选地,所述中断时间测试算法包括:接收所述测试命令和所述目标测试用例的编号,允许执行中断时间测试算法;在进入中断服务程序时读取定时器计数T1;在即将退出中断服务程序时读取定时器计数T2;获取响应中断到读取T1之间的时间T3以及读取T2到退出中断之间的时间T4;计算本次中断时间,其中,所述本次中断时间采用以下公式进行计算:T=(T2-T1)+T3+T4。在一个实施例中,优选地,还包括:将本次中断时间T与该目标测试用例的中断时间Txyz进行比较,将两者中的最大值确定为该目标测试用例的新的中断时间Txyz.新;当所有目标测试用例中的每个测试用例均执行完K次中断时间测试算法后,比较所有目标测试用例的中断时间Txyz新,从中选取最大中断时间确定为最长中断时间;所述被测试电源模块将所有目标测试用例对应的中断时间组成一个数组,将所述数组和所述最长中断时间和对应的目标测试用例编号发送至上位机。在一个实施例中,优选地,还包括:将本次中断时间T与最终中断时间Tmax进行比较,将两者中的最大值确定为该目标测试用例的新的最终中断时间Tmax新;当所有目标测试用例中的每个测试用例均执行完K次中断时间测试算法后,将最终中断时间Tmax新发送至上位机。本专利技术的实施例提供的技术方案可以包括以下有益效果:本专利技术实施例中,通过上位机、可配置输入源、可配置负载和被测模块组成测试系统,使用按被测试电源模块数量、输入工况和负载工况三个参数设计组合测试用例库,并使用中断时间测试算法自动测试出模块的中断时间,与现有技术相比,非常快速高效且准确,可极大提本文档来自技高网
...

【技术保护点】
1.一种中断时间的测试系统,其特征在于,所述系统包括:/n上位机、可配置输入源、可配置负载和至少一个被测试电源模块;/n所述至少一个被测试电源模块并联连接在所述可配置输入源和所述可配置负载之间;/n所述上位机,连接至所述可配置输入源、所述至少一个被测试电源模块和所述可配置负载,所述上位机根据被测试电源模块的数量、所有可能的输入源工况和负载工况组合成测试用例库,根据所述测试用例库中目标测试用例对应的目标输入源工况、目标负载工况和目标测试用例的编号按顺序控制所述可配置输入源和可配置负载进行工作,并下发测试命令和目标测试用例的编号至所述至少一个被测试电源模块,以控制所述至少一个被测试电源模块对于每个目标测试用例执行K次中断时间测试算法,以测试得到每个目标测试用例的中断时间。/n

【技术特征摘要】
1.一种中断时间的测试系统,其特征在于,所述系统包括:
上位机、可配置输入源、可配置负载和至少一个被测试电源模块;
所述至少一个被测试电源模块并联连接在所述可配置输入源和所述可配置负载之间;
所述上位机,连接至所述可配置输入源、所述至少一个被测试电源模块和所述可配置负载,所述上位机根据被测试电源模块的数量、所有可能的输入源工况和负载工况组合成测试用例库,根据所述测试用例库中目标测试用例对应的目标输入源工况、目标负载工况和目标测试用例的编号按顺序控制所述可配置输入源和可配置负载进行工作,并下发测试命令和目标测试用例的编号至所述至少一个被测试电源模块,以控制所述至少一个被测试电源模块对于每个目标测试用例执行K次中断时间测试算法,以测试得到每个目标测试用例的中断时间。


2.根据权利要求1所述的系统,其特征在于,所述目标测试用例的确定方式包括:
接收用户输入的测试用例选择命令,根据所述测试用例选择命令,将被选中的测试用例确定为所述目标测试用例。


3.根据权利要求1所述的系统,其特征在于,所述中断时间测试算法包括:
接收所述测试命令和所述目标测试用例的编号,允许执行中断时间测试算法;
在进入中断服务程序时读取定时器计数T1;
在即将退出中断服务程序时读取定时器计数T2;
获取响应中断到读取T1之间的时间T3以及读取T2到退出中断之间的时间T4;
计算本次中断时间,其中,所述本次中断时间采用以下公式进行计算:
T=(T2-T1)+T3+T4。


4.根据权利要求1所述的系统,其特征在于,所述至少一个被测试电源模块还用于:
将本次中断时间T与该目标测试用例的中断时间Txyz进行比较,将两者中的最大值确定为该目标测试用例的新的中断时间Txyz新;
当所有目标测试用例中的每个测试用例均执行完K次中断时间测试算法后,比较所有目标测试用例的中断时间Txyz新,从中选取最大中断时间确定为最长中断时间;
所述被测试电源模块将所有目标测试用例对应的中断时间组成一个数组,将所述数组和所述最长中断时间和对应的目标测试用例编号发送至上位机。


5.根据权利要求3所述的系统,其特征在于,所述至少一个被测试电源模块还用于:
将本次中断时间T与最终中断时间Tmax进行比较,将两者中的最大值确定为该目标测试用例的新的最终中断时间Tmax新;
当所...

【专利技术属性】
技术研发人员:罗忠玉柏建国邓礼宽
申请(专利权)人:深圳市优优绿能电气有限公司
类型:发明
国别省市:广东;44

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

1