开关电源mos管的soa测试方法、系统、装置及可读存储介质
技术领域
1.本发明涉及mos管安全测试技术领域,更具体的说是涉及一种开关电源mos管的soa测试方法、系统、装置及可读存储介质。
背景技术:
2.mos管作为新型半导体器件的代表,作为重要的开关元件广泛应用于服务器的电源系统中。为了保证mos管能够安全工作,对mos管进行soa测试尤为重要。soa测试,是为了验证mos管是否在安全工作区(safe operating area,soa)内而进行的功能性测试。而在服务器的研发周期中,测试项繁多,耗费较长时间,在服务器研发测试全面转向自动化的背景下,soa测试作为重要的测试项,实现自动化测试是非常必要的。
3.当前,mos管的soa测试方法为手动测试。具体流程为:人工操作示波器,直流电源,电子负载进行对mos管进行满载上电、上电前短路、上电后短路三种场景下的测试,分别抓取vds与iin的波形,并测量mos管开启关闭转换过程中的电压与电流值。最后,将获取的测量值与mos管的soa曲线比对,验证其是否在安全工作区内工作。在验证通过后,向测试报告手动填写测试结果,综合开关电源的其他测试项目出具完整测试报告。
4.现有测试方法虽然能够完成测试目的,但是由于开关电源mos管的soa测试具有一定的特殊性,多出现在efuse器件的测试中,测试频次较少,但重要性较高。由于部分测试人员对于测试手法及测试标准熟悉程度不足,测试中不能注意到全部的关键测试节点,测试结果可能会出现错误,对研发过程产生不良影响。
5.另外,手动测试的测试效率较低,测试结果需要人工判断并填写进测试报告中,与开关电源测试的自动化趋势相违背,且不利于测试数据的“云上分析”。
技术实现要素:
6.针对以上问题,本发明的目的在于提供一种开关电源mos管的soa测试方法、系统、装置及可读存储介质,实现了mos管的soa自动化测试,规范了测试流程,提供了测试结果的辅助分析工具,能够自动计算测试数据,降低了测试结果出现错误的可能性。
7.本发明为实现上述目的,通过以下技术方案实现:一种开关电源mos管的soa测试方法,包括如下步骤:
8.s1:构建基于python的soa测试平台;
9.s2:启动基于python的soa测试平台,加载板卡信息后,选择需要测试的供电线路,并创建独立的测试线程;
10.s3:测试线程创建后,通过调用内部定义函数完成测试资源的调用,并执行测试场景;
11.s4:在执行测试场景过程中,若收到用户中断,优先进行处理;
12.s5:当前测试场景结束后,生成测试数据和推荐的数据标定,并根据推荐的数据标定生成测试数据的数据标定;
13.s6:判断当前所有的测试场景是否均已测试完成;若是,转到步骤s7;若否,选定执行任一未测试的测试场景,并转到步骤s3;
14.s7:对所有测试场景的测试数据进行分析计算,并生成测试结果。
15.进一步,步骤s1包括:
16.使用qthread多线程方法构建平台架构,并分离ui界面与测试程序;
17.采用图形化编程的pyqt库,并利用qss语言编辑操作逻辑,构建操作界面;
18.通过python win32process库调用windows系统api进行测试任务线程的即时暂停与恢复。
19.进一步,步骤s2包括:
20.启动基于python的soa测试平台;
21.加载板卡信息,读取板卡的vds信号和input current信号;
22.选择需要测试的供电线路,并创建独立的测试线程。
23.进一步,测试场景包括:turn on with 100%load、open short和short open。
24.进一步,步骤s3包括:启动预设评估算法分析当前测试场景是否符合soa测试要求,若是,直接转到步骤s4;若否,启动并执行预设的自动校准程序,校准完成后转到步骤s4。
25.进一步,步骤s4包括:
26.在执行测试场景过程中,若测试工程师对测试过程有异议,手动发起用户中断;所述soa测试平台收到用户中断后调用windows api立即响应,并挂起测试线程,直至取消用户中断后恢复测试线程。
27.进一步,测试数据包括mos管在开关过程中的最大电压、最大电流和开关时间。
28.进一步,步骤s7包括:
29.启动预设算法计算测试数据的数据标定,生成数据标定结果;
30.使用python matplotlib库绘制双对数曲线坐标轴,生成参考坐标图;
31.将数据标定结果绘制在参考坐标图上;
32.将参考坐标图与预设的mosfet datasheet中的soa曲线比对,若测试结果在所述soa曲线下方,则测试结果为pass,否则测试结果为fail。
33.相应的,本发明还公开了一种开关电源mos管的soa测试系统,包括:
34.平台构建单元,用于构建基于python的soa测试平台;
35.测试线程创建单元,用于启动基于python的soa测试平台,加载板卡信息后,选择需要测试的供电线路,并创建独立的测试线程;
36.测试场景执行单元,用于通过调用内部定义函数完成测试资源的调用,并执行测试场景;
37.数据标定单元,用于生成测试数据和推荐的数据标定,并根据推荐的数据标定生成测试数据的数据标定;
38.计算单元,用于对所有测试场景的测试数据进行分析计算,并生成测试结果。
39.进一步,平台构建单元具体用于:
40.使用qthread多线程方法构建平台架构,并分离ui界面与测试程序;
41.采用图形化编程的pyqt库,并利用qss语言编辑操作逻辑,构建操作界面;通过
python win32process库调用windows系统api进行测试任务线程的即时暂停与恢复。
42.进一步,测试线程创建单元具体用于:
43.启动基于python的soa测试平台;
44.加载板卡信息,读取板卡的vds信号和input current信号;
45.选择需要测试的供电线路,并创建独立的测试线程。
46.进一步,计算单元具体用于:
47.启动预设算法计算测试数据的数据标定,生成数据标定结果;
48.使用python matplotlib库绘制双对数曲线坐标轴,生成参考坐标图;
49.将数据标定结果绘制在参考坐标图上;
50.将参考坐标图与预设的mosfet datasheet中的soa曲线比对,若测试结果在所述soa曲线下方,则测试结果为pass,否则测试结果为fail。
51.相应的,本发明公开了一种开关电源mos管的soa测试装置,包括:
52.存储器,用于存储开关电源mos管的soa测试程序;
53.处理器,用于执行所述开关电源mos管的soa测试程序时实现如上文任一项所述开关电源mos管的soa测试方法的步骤。
54.相应的,本发明公开了一种可读存储介质,所述可读存储介质上存储有开关电源mos管的soa测试程序,所述开关电源mos管的soa测试程序被处理器执行时实现如上文任一项所述开关电源mos管的soa测试方法的步骤。
55.对比现有技术,本发明有益效果在于:
56.1、本发明结合现有基于python的自动化测试平台,实现对开关电源mos管的soa的自动化测试,并对现有的基于python的自动化测试平台进行了重构,实现合理化的用户中断实现方式,优化了测试操作界面,使测试过程具备更高的自由度。
57.2.针对测试过程中常见的问题,如输入信号错误、数据标定错误等,本发明对其进行了正确的设置,保证了设置的准确性与灵活性,从而规范了测试流程。同时,本发明也具有对测试结果的辅助分析工具,自动计算测试数据,降低了测试结果出现错误的可能性。
58.3、本发明针对所有测试场景的测试数据,使用合理的测试数据分析方案,使soa测试变得更加标准化。
59.4、本发明可以推广到其他的自动化测试平台中,使得自动化测试应用范围更加广泛,与测试人员的交互性更好,测试效率更高。
60.由此可见,本发明与现有技术相比,具有突出的实质性特点和显著的进步,其实施的有益效果也是显而易见的。
附图说明
61.为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
62.附图1是本发明的方法流程图;
63.附图2是本发明的系统结构图。
64.图中,1为平台构建单元;2为测试线程创建单元;3为测试场景执行单元;4为数据标定单元;5为计算单元。
具体实施方式
65.本发明的核心是提供一种开关电源mos管的soa测试方法,现有技术中,mos管的soa测试方法为手动测试,由于开关电源mos管的soa测试具有一定的特殊性,多出现在efuse器件的测试中,测试频次较少,但重要性较高。由于部分测试人员对于测试手法及测试标准熟悉程度不足,测试中不能注意到全部的关键测试节点,测试结果可能会出现错误,对研发过程产生不良影响。另外,手动测试的测试效率较低,测试结果需要人工判断并填写进测试报告中,与开关电源测试的自动化趋势相违背,且不利于测试数据的“云上分析”。
66.而本发明提供的开关电源mos管的soa测试方法,首先,构建基于python的soa测试平台。然后,启动基于python的soa测试平台,并创建独立的测试线程;测试线程创建后,通过调用内部定义函数完成测试资源的调用,并执行测试场景。在执行测试场景过程中,若收到用户中断,优先进行处理;当前测试场景结束后,生成测试数据和推荐的数据标定,并根据推荐的数据标定生成测试数据的数据标定。当所有的测试场景均已测试完成后,对所有测试场景的测试数据进行分析计算,并生成测试结果。由此可见,本发明实现了mos管的soa自动化测试,规范了测试流程,提供了测试结果的辅助分析工具,能够自动计算测试数据,降低了测试结果出现错误的可能性。
67.为了使本技术领域的人员更好地理解本发明方案,下面结合附图和具体实施方式对本发明作进一步的详细说明。显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
68.实施例一:
69.如图1所示,本实施例提供了一种开关电源mos管的soa测试方法,包括如下步骤:
70.s1:构建基于python的soa测试平台。
71.具体为:使用qthread多线程方法构建平台架构,并分离ui界面与测试程序;采用图形化编程的pyqt库,并利用qss语言编辑操作逻辑,构建操作界面;通过python win32process库调用windows系统api进行测试任务线程的即时暂停与恢复。
72.具体构建过程可在现有的soa自动化测试平台进行修改,舍弃局限性较大的tkinter库,采用图形化编程的pyqt库,配合qss语言,使操作逻辑更加直观,操作界面更加友好。首先使用qthread多线程方法重构系统,分离ui界面与测试程序,保证了操作界面的流畅性;其次,通过python win32process库调用windows系统api,即可实现测试任务线程的即时暂停与恢复。这给予了测试工程师极大的自由度,使得测试工程师可以在任何时刻介入自动化测试过程,并做出更改。
73.s2:启动基于python的soa测试平台,加载板卡信息后,选择需要测试的供电线路,并创建独立的测试线程。
74.首先,启动基于python的soa测试平台。然后,加载板卡信息,本发明明确soa测试中输入信号为“vds”、“input current”,而非“output current”。最后,选择需要测试的power rail,确认信息后发布测试任务,创建独立的测试线程。
75.s3:测试线程创建后,通过调用内部定义函数完成测试资源的调用,并执行测试场景。
76.本发明明确了soa测试的测试场景包括三个测试场景,即“turn on with 100%load”,“open short”,“short open”,并据此自动调用测试资源进行测试。
77.s4:在执行测试场景过程中,若收到用户中断,优先进行处理。
78.在测试过程中,如若测试工程师对测试过程有异议,可发起用户中断,基于python的soa测试平台将调用windows api立即响应,挂起测试线程,待测试工程师处置妥当后,即可恢复测试线程。
79.s5:当前测试场景结束后,生成测试数据和推荐的数据标定,并根据推荐的数据标定生成测试数据的数据标定。
80.具体按照soa测试规范对测试数据进行了默认标定,即mos管开关过程中的最大电压、最大电流、开关时间,同时也保留了测试工程师修改的权利。
81.s6:判断当前所有的测试场景是否均已测试完成;若是,转到步骤s7;若否,转到步骤s6.1。
82.s6.1:选定执行任一未测试的测试场景,并转到步骤s3。
83.s7:对所有测试场景的测试数据进行分析计算,并生成测试结果。
84.首先,启动预设算法计算三个测试场景测试数据的数据标定,生成数据标定结果。然后,使用python matplotlib库绘制双对数曲线坐标轴,生成参考坐标图,并将数据标定结果绘制在参考坐标图上。最后,将参考坐标图与预设的mosfet datasheet中的soa曲线比对,若测试结果在所述soa曲线下方,则测试结果为pass,否则测试结果为fail。
85.本实施例提供了一种开关电源mos管的soa测试方法,对现有的基于python的自动化测试平台进行了重构,实现合理化的用户中断实现方式,优化了测试操作界面,针对测试过程中常见的问题,如输入信号错误、数据标定错误等,本发明对其进行了正确的设置,保证了设置的准确性与灵活性,从而规范了测试流程。同时,本发明也具有对测试结果的辅助分析工具,自动计算测试数据,降低了测试结果出现错误的可能性。
86.实施例二:
87.基于实施例一,如图2所示,本发明还公开了一种开关电源mos管的soa测试系统,包括:平台构建单元1、测试线程创建单元2、测试场景执行单元3、数据标定单元4和计算单元5。
88.平台构建单元1,用于构建基于python的soa测试平台。平台构建单元1具体用于:
89.使用qthread多线程方法构建平台架构,并分离ui界面与测试程序;采用图形化编程的pyqt库,并利用qss语言编辑操作逻辑,构建操作界面;通过python win32process库调用windows系统api进行测试任务线程的即时暂停与恢复。
90.测试线程创建单元2,用于启动基于python的soa测试平台,加载板卡信息后,选择需要测试的供电线路,并创建独立的测试线程。测试线程创建单元2具体用于:
91.启动基于python的soa测试平台;加载板卡信息,读取板卡的vds信号和input current信号;选择需要测试的供电线路,并创建独立的测试线程。
92.测试场景执行单元3,用于通过调用内部定义函数完成测试资源的调用,并执行测试场景。本单元仅用于执行三个测试场景,即“turn on with 100%load”,“open short”,
“
short open”,并据此自动调用测试资源进行测试。
93.数据标定单元4,用于生成测试数据和推荐的数据标定,并根据推荐的数据标定生成测试数据的数据标定。本单元按照soa测试规范对测试数据进行了默认标定,即mos管开关过程中的最大电压、最大电流、开关时间,同时也保留了测试工程师修改的权利。
94.计算单元5,用于对所有测试场景的测试数据进行分析计算,并生成测试结果。计算单元5具体用于:
95.启动预设算法计算测试数据的数据标定,生成数据标定结果;使用python matplotlib库绘制双对数曲线坐标轴,生成参考坐标图,并将数据标定结果绘制在参考坐标图上。将参考坐标图与预设的mosfet datasheet中的soa曲线比对,若测试结果在所述soa曲线下方,则测试结果为pass,否则测试结果为fail。
96.本实施例提供了一种开关电源mos管的soa测试系统,结合现有基于python的自动化测试平台,实现对开关电源mos管的soa的自动化测试,并对现有的基于python的自动化测试平台进行了重构。本实施例针对所有测试场景的测试数据,使用合理的测试数据分析方案,使soa测试变得更加标准化。
97.实施例三:
98.本实施例公开了一种开关电源mos管的soa测试装置,包括处理器和存储器;其中,所述处理器执行所述存储器中保存的开关电源mos管的soa测试程序时实现以下步骤:
99.步骤1:运行基于python的soa测试平台,加载板卡信息后,选择需要测试的power rail,确认信息后发布测试任务,系统将创建独立的测试线程。
100.步骤2:测试线程创建后,基于python的soa测试平台调用内部定义函数自动调用测试资源,执行测试常场景。在此过程中,基于python的soa测试平台会自动分析测试场景是否符合soa测试要求,并自动校准探棒,减小测试误差。
101.步骤3:在测试过程中,如若测试工程师对测试过程有异议,可发起用户中断,基于python的soa测试平台将调用windows api立即响应,挂起测试线程,待测试工程师处置妥当后,即可恢复测试线程。
102.步骤4:待当前测试场景结束后,基于python的soa测试平台将给出推荐的数据标定,测试工程师可进行确认修改。完成数据标定后,将执行下一个测试场景,返回步骤2,若所有场景均已测试完成,则继续执行步骤5;
103.步骤5:对三种测试场景下的测试数据进行分析计算,在soa曲线图内标出测试结果,并与mosfet datasheet中的soa曲线比对,若测试结果在soa曲线下方,则测试结果“pass”,反之则“fail”。
104.进一步的,本实施例中的开关电源mos管的soa测试装置,还可以包括:
105.输入接口,用于获取外界导入的开关电源mos管的soa测试程序,并将获取到的开关电源mos管的soa测试程序保存至所述存储器中,还可以用于获取外界终端设备传输的各种指令和参数,并传输至处理器中,以便处理器利用上述各种指令和参数展开相应的处理。本实施例中,所述输入接口具体可以包括但不限于usb接口、串行接口、语音输入接口、指纹输入接口、硬盘读取接口等。
106.输出接口,用于将处理器产生的各种数据输出至与其相连的终端设备,以便于与输出接口相连的其他终端设备能够获取到处理器产生的各种数据。本实施例中,所述输出
接口具体可以包括但不限于usb接口、串行接口等。
107.通讯单元,用于在开关电源mos管的soa测试装置和外部服务器之间建立远程通讯连接,以便于开关电源mos管的soa测试装置能够将镜像文件挂载到外部服务器中。本实施例中,通讯单元具体可以包括但不限于基于无线通讯技术或有线通讯技术的远程通讯单元。
108.键盘,用于获取用户通过实时敲击键帽而输入的各种参数数据或指令。
109.显示器,用于运行服务器供电线路短路定位过程的相关信息进行实时显示。
110.鼠标,可以用于协助用户输入数据并简化用户的操作。
111.本实施例提供了一种开关电源mos管的soa测试装置,实现了mos管的soa自动化测试,规范了测试流程,提供了测试结果的辅助分析工具,能够自动计算测试数据,降低了测试结果出现错误的可能性。
112.实施例四:
113.本实施例还公开了一种可读存储介质,这里所说的可读存储介质包括随机存储器(ram)、内存、只读存储器(rom)、电可编程rom、电可擦除可编程rom、寄存器、硬盘、可移动硬盘、cd
‑
rom或技术领域内所公知的任意其他形式的存储介质。可读存储介质中存储有开关电源mos管的soa测试程序,所述开关电源mos管的soa测试程序被处理器执行时实现以下步骤:
114.步骤1:运行基于python的soa测试平台,加载板卡信息后,选择需要测试的power rail,确认信息后发布测试任务,系统将创建独立的测试线程。
115.步骤2:测试线程创建后,基于python的soa测试平台调用内部定义函数自动调用测试资源,执行测试常场景。在此过程中,基于python的soa测试平台会自动分析测试场景是否符合soa测试要求,并自动校准探棒,减小测试误差。
116.步骤3:在测试过程中,如若测试工程师对测试过程有异议,可发起用户中断,基于python的soa测试平台将调用windows api立即响应,挂起测试线程,待测试工程师处置妥当后,即可恢复测试线程。
117.步骤4:待当前测试场景结束后,基于python的soa测试平台将给出推荐的数据标定,测试工程师可进行确认修改。完成数据标定后,将执行下一个测试场景,返回步骤2,若所有场景均已测试完成,则继续执行步骤5;
118.步骤5:对三种测试场景下的测试数据进行分析计算,在soa曲线图内标出测试结果,并与mosfet datasheet中的soa曲线比对,若测试结果在soa曲线下方,则测试结果“pass”,反之则“fail”。
119.本实施例提供了一种可读存储介质,在现有的自动化测试平台基础上,实现合理化的用户中断实现方式,优化了测试操作界面,使测试过程具备更高的自由度。解决了mosfet soa不能接入自动化测试系统这一痛点问题,并使用合理的测试数据分析方案,使soa测试变得更加标准化。
120.另外,本发明还可以推广到其他的自动化测试平台中,使得自动化测试应用范围更加广泛,与测试人员的交互性更好,测试效率更高。
121.本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其它实施例的不同之处,各个实施例之间相同或相似部分互相参见即可。对于实施例公开的方
法而言,由于其与实施例公开的系统相对应,所以描述的比较简单,相关之处参见方法部分说明即可。
122.专业人员还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
123.在本发明所提供的几个实施例中,应该理解到,所揭露的系统、系统和方法,可以通过其它的方式实现。例如,以上所描述的系统实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,系统或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
124.所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
125.另外,在本发明各个实施例中的各功能模块可以集成在一个处理单元中,也可以是各个模块单独物理存在,也可以两个或两个以上模块集成在一个单元中。
126.同理,在本发明各个实施例中的各处理单元可以集成在一个功能模块中,也可以是各个处理单元物理存在,也可以两个或两个以上处理单元集成在一个功能模块中。
127.结合本文中所公开的实施例描述的方法或算法的步骤可以直接用硬件、处理器执行的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器(ram)、内存、只读存储器(rom)、电可编程rom、电可擦除可编程rom、寄存器、硬盘、可移动磁盘、cd
‑
rom、或技术领域内所公知的任意其它形式的存储介质中。
128.最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个
……”
限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
129.以上对本发明所提供的rbd虚拟机的批量升级方法、系统、装置及可读存储介质进行了详细介绍。本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想。应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以对本发明进行若干改进和修饰,这些改进和修饰也落入本发明权利要求的保护范围内。
转载请注明原文地址:https://doc.8miu.com/index.php/read-1722415.html