- 优秀的产品都要进行严苛的产品测试才能够经得起市场的检验
- 由ArmSoM团队研发的产测软件用于在量产的过程中快速地甄别产品功能和器件的好坏,即重点 FCT(Functional Test)测试,进而提高生产效率和检测的准确性。
- ArmSoM团队的专业产测软件用来保证量产的每一部产品的质量以及稳定性
- ArmSoM产测软件预览:
2. 环境介绍
- 硬件环境: Banana Pi BPI-W3 ArmSoM-W3 RK3588开发板
- 软件版本: OS:ArmSoM-W3 Debian11
3. Banana Pi BPI-W3 ArmSom产测软件介绍
- QT开发的ARM平台产测图形化软件,一键开启傻瓜式测试
- ArmSoM产测软件是基于Linux和Android平台:Ubantu和Debian,Android系统都适用
- ArmSoM产测软件是直接安装在RK3588开发板上,接上屏幕即可打开产测软件进行测试。
- ArmSoM产测软件是由本公司开发,现已应用于商业量产产测。
4. 技术要点:
- 线程池实现的多线程技术,全部接口功能并行同时测试,极大的提高了产测效率
- qt + opencv实现的Camera,Hdmiin实时显示视频画面。
- 接口功能测试代码编写,准确率高,精准定位接口功能的好坏
- 可支持多款开发板进行产测。用户可手动选择需要测试的开发板
- 支持多平台,支持各种架构的开发板测试,不局限于ARM开发板
- 可扩展性高,量身定制需要测试的功能接口,支持扩展全功能接口测试
5. 目前支持的测试项接口
- 测试项目包括自动测试项和手动测试项
- 自动测试项目无需人工干预测试结束后会直接上报测试结果并显示通过与否
- 人工测试项目需要人为判断测试项是否正确完成,并给出判断(通过或不通过)。
- 目前支持:WIFI 测试、蓝牙测试、USB 测试、LED灯测试、放音测试、录音测试、Camera 测试,Hdmi-in测试,40PIN测试,网口测试,M2接口测试,RTC测试等等
- 可扩展性高,量身定制需要测试的功能接口,支持扩展全功能接口测试。
1. 简介
- 专栏总目录
- Banana Pi BPI-W3 ArmSoM团队在产品量产之前都会对产品做几次专业化的功能测试以及性能压力测试,以此来保证产品的质量以及稳定性
- 优秀的产品都要进行多次全方位的功能测试以及性能压力测试才能够经得起市场的检验
2. 环境介绍
- 硬件环境: Banana Pi BPI-W3 ArmSoM-W3 RK3588开发板
- 软件版本: OS:ArmSoM-W3 Debian11
3. ArmSoM-W3 DDR带宽测试方案
- rk-msch-probe-for-user是官方提供的用于统计和监控系统DDR的负载和带宽使用情况的工具,可以实时显示当前DDR的负载和带宽信息。
- 使用rk-msch-probe-for-use工具统计和监控系统DDR的负载和带宽使用情况
4. DDR带宽测试
- 测试原理:运行RK官方的DDR带宽测试工具,统计和监控系统DDR的负载和带宽使用情况
- 测试时间:2023年10月11日
- 测试工具:RK3588 - ArmSoM-W3开发板,电源,屏幕,HDMI线,鼠标,串口
4.1 测试步骤:
- rk-msch-probe-for-user工具需要在定频的模式下才能使用 设置DDR定频在最高频率2112MHz
- //切换到用户空间 root@linaro-alip:/# echo userspace > sys/class/devfreq/dmc/governor //获取系统支持的频点信息 root@linaro-alip:/# cat sys/class/devfreq/dmc/available_frequencies 528000000 1068000000 1560000000 2112000000 //设置DDR定频在最高频率2112MHz root@linaro-alip:/# echo 2112000000 > sys/class/devfreq/dmc/userspace/set_freq
- 修改rk-msch-probe-for-use工具权限为777
- chmod 777 ./data/rk-msch-probe-for-user-64bit
- 开始运行
- ./data/rk-msch-probe-for-user-64bit -c rk3588
- root@linaro-alip:/# ./data/rk-msch-probe-for-user-64bit -c rk3588 V1.44_20230928 2kijec4hi====================================================================================================== ddr freq: 2112Mhz cpu vicap gpu vop isp others total master bw(MB/s) 0.64 0.00 0.00 1019.79 0.00 24.79 1045.22 bw prorated(%) 0.06 0.00 0.00 97.57 0.00 2.37 100.00 utilization(%) 0.00 0.00 0.00 3.02 0.00 0.07 3.09 ----------------------------------------------ALL-------------------------CH0-------------------------CH1-------------------------CH2-------------------------CH3-------- recorded LOAD: max 1045.22MB/s(3.09%), min 1045.22MB/s(3.09%), avg 1045.22MB/s(3.09%) LOAD: 1045.22MB/s(3.09%), 261.50MB/s(3.10%), 261.24MB/s(3.09%), 261.18MB/s(3.09%), 261.31MB/s(3.09%) RD: 1045.16MB/s(3.09%), 261.46MB/s(3.09%), 261.23MB/s(3.09%), 261.17MB/s(3.09%), 261.30MB/s(3.09%) WR: 0.07MB/s(0.00%), 0.04MB/s(0.00%), 0.01MB/s(0.00%), 0.01MB/s(0.00%), 0.01MB/s(0.00%) -+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+- =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
- 设备上运行需要监控ddr信息的应用,实时监控ddr的带宽使用情况。
4.2 测试统计的结果说明
由上图的测试结果得出: 在监控时间的1000ms中:所有channel的平均带宽为1045.22MB/s,负载为3.09%。
> ALL: 所有channel总的带宽统计信息
> CHx: DDR channel x的带宽统计信息
> LOAD: 对于所有DDR bank,此channel的带宽及负载
> RD: 对于所有DDR bank,DDR read 数据的带宽及占比
> WR: 对于所有DDR bank,DDR write 数据的带宽及占比
4.DDR压力测试
- 测试原理:运行RK官方的DDR压力测试脚本,同时对DDR进行三项压力测试,看开发板运行情况,是否能扛起24小时的连续DDR压力测试。
- 测试时间:2023年8月31日 9:55 -- 9月1日 10:02
- 测试工具:RK3588 - ArmSoM-W3开发板,电源,屏幕,HDMI线,鼠标,串口
- 测试步骤:
- 准备5块ArmSoM-W3开发板,全部烧写ArmSoM-W3-Debian版本的固件。
- 开发板均接入串口,保存压力测试时串口打印的log。查看开发板在DDR压力测试期间是否异常。
- 运行RK官方的DDR压力测试脚本,同时对DDR进行三项压力测试
- 测试结果:进行了24小时的DDR压力测试,5块开发板均运行正常。
5. DDR压力测试流程
- 串口输入命令进入rockchip-test测试目录:
- root@linaro-alip:/# cd /rockchip-test
- 运行rockchip-test测试脚本:选择 1:ddr stress test 继续选择5:stressapptest + memtester + ddr auto scaling
- root@linaro-alip:/rockchip-test# ./rockchip_test.sh
DDR压力测试开始:
2. Banana Pi BPI-W3 ArmSoM-W3软硬件重启测试方案
- 软件方式重启系统3000次测试
- 硬件电源拔插重启3000次测试
3. 软件重启3000次测试
- 测试原理:对目标板进行3000次软件方式重启系统测试,看开发板运行情况,是否能扛起3000次的连续重启。
- 测试时间:2023年5月7日 9:55 -- 5月8日 13:50
- 测试工具:Banana Pi BPI-W3 RK3588 - ArmSoM-W3开发板,电源,屏幕,HDMI线,鼠标
- 测试步骤:
- 准备5块ArmSoM-W3开发板,全部烧写ArmSoM-W3-Box版本的固件。
- 开发板均接入串口,保存开关机时串口打印的log。查看开发板实际开关机多少次。查看开发板重启期间是否异常。
- 使用专业化测试软件reboot test应用程序 设置重启次数:3000次。然后点击start开始测试。
- 测试结果:进行了3000次软件方式重启,5块开发板均运行正常。
4. 硬件重启3000次测试
- 测试原理:对目标板进行3000次电源拔插测试,看开发板运行情况,是否能扛起3000次的连续硬件重启。
- 测试时间:2023年5月8日 17:52 -- 5月10日9:02
- 测试工具:串口,电脑,RK3588 - ArmSoM-W3开发板,两个定时器(设定时间自动断电源,开电源)
- 测试软件: MobaXterm软件记录测试时段的log打印,并将log数据保存好。
- 测试步骤:
- 准备5块ArmSoM-W3开发板,接好定时器电源,串口连接电脑。
- 打开MobaXterm软件记录测试时段的log打印
- 设定开发板的启动时间25秒和关机时间10秒。
- 根据log打印查看RK3588 - ArmSoM-W3开发板实际开关机多少次,查看开发板拔插电源期间是否异常。
- 测试结果:进行了3000次硬件断电源方式重启,开关机次数相差一两次在误差范围内,硬件重启测试未发现异常。
编辑Banana Pi BPI-W3
2. 环境介绍
- 硬件环境: Banana Pi BPI-W3 ArmSoM-W3 RK3588开发板
- 软件版本: OS:ArmSoM-W3 Debian11
- 温度: -20℃低温环境
3. ArmSoM-W3低温环境测试方案
- 在-20℃低温环境中进行2000次软件系统重启测试
- 在-20℃低温环境中进行2000次电源拔插硬件重启测试
- 在-20℃低温环境中高强度运行24小时
Banana Pi BPI-W3
4. -20℃低温软件重启测试
- 测试原理:ArmSoM-W3开发板放在-20℃低温环境中进行2000次软件系统重启测试,观察开发板是否能够正常启动。
- 测试时间:2023年5月7日 9:55 -- 5月8日 13:50
- 测试工具:6个串口,6块ArmSoM-W3开发板,电源,电脑,HDMI线及显示屏
- 测试步骤:
- 准备5块ArmSoM-W3开发板,均连接串口以及电源,全部放入温箱
- 打开MobaXterm软件记录测试时段的log打印
- 温箱降温到-20℃保值4小时,看是否能正常开机;关机15分钟之后再次上电开机,循环1000次。看开发板是否能正常启动。
- 根据log打印查看RK3588 - ArmSoM-W3开发板实际开关机多少次,查看开发板拔插电源期间是否异常。
- 测试结果:进行了2000次软件方式重启,5块开发板均运行正常。
5. -20℃低温电源拔插硬件重启测试
- 测试原理:ArmSoM-W3开发板放在-20℃低温环境中进行2000次电源拔插硬件重启测试,观察开发板启动是否异常。
- 测试时间:2023年5月8日 17:52 -- 5月10日9:02
- 测试工具:串口,6块ArmSoM-W3开发板,定时器(自动断电源,开电源)
- 测试软件: MobaXterm软件记录测试时段的log打印,并将log数据保存好。
- 测试步骤:
- 准备5块ArmSoM-W3开发板,接好定时器电源,串口连接电脑。全部放入温箱
- 打开MobaXterm软件记录测试时段的log打印
- 定时器设定开发板的启动时间25秒和关机时间10秒。
- 温箱降温到-20℃保值4小时,看是否能正常开机;关机15分钟之后再次上电开机,循环1000次。看开发板是否能正常启动。
- 根据log打印查看RK3588 - ArmSoM-W3开发板实际开关机多少次,查看开发板拔插电源期间是否异常。
- 测试结果:进行了2000次硬件断电源方式重启,开关机次数相差一两次在误差范围内,硬件重启测试未发现异常。
6. -20℃低温高强度运行24小时
- 测试原理:ArmSoM-W3开发板放在-20℃低温环境中高强度运行24小时,观察开发板的运行情况是否异常。
- 测试时间:2023年5月7日 9:55 -- 5月8日 13:50
- 测试工具:6个串口,6块ArmSoM-W3开发板,电源,电脑,HDMI线及显示屏
- 测试步骤:
- 准备5块ArmSoM-W3开发板,均连接串口以及电源,全部放入温箱
- 开发板均接入串口,保存开关机时串口打印的log。
- 温箱降温到-20℃保值4小时,启动高性能软件运行,查看开发板运行期间是否异常。
- 根据log打印查看RK3588 - ArmSoM-W3开发板运行期间是否异常
- 测试结果: 在-20℃低温高强度运行了24小时,5块开发板均运行正常。
2. ArmSoM-W3高温测试方案
- 在70℃高温环境中进行2000次软件系统重启测试
- 在70℃高温环境中进行2000次电源拔插硬件重启测试
- 在70℃高温环境中高强度运行24小时
3. 70℃高温软件重启测试
- 测试原理:ArmSoM-W3开发板放在70℃高温环境中进行2000次软件系统重启测试,观察开发板是否能够正常启动。
- 测试时间:2023年5月9日 9:55 -- 5月10日 13:50
- 测试工具:6个串口,6块开发板(一块绿色核心板,五块蓝色核心板),电源,电脑,HDMI线及显示屏
- 测试步骤:
- 准备5块ArmSoM-W3开发板,均连接串口以及电源,全部放入温箱
- 打开MobaXterm软件记录测试时段的log打印
- 温箱升温到70℃保值4小时,看是否能正常开机;关机15分钟之后再次上电开机,循环2000次。看开发板是否能正常启动。
- 根据log打印查看RK3588 - ArmSoM-W3开发板实际开关机多少次,查看开发板拔插电源期间是否异常。
- 测试结果:进行了1000次软件方式重启,5块开发板均运行正常。
4. 70℃高温电源拔插硬件重启测试
- 测试原理:ArmSoM-W3开发板放在70℃高温环境中进行2000次电源拔插硬件重启测试,观察开发板启动是否异常。
- 测试时间:2023年5月10日 17:52 -- 5月12日9:02
- 测试工具:串口,6块开发板(一块绿色核心板,五块蓝色核心板),定时器(自动断电源,开电源)
- 测试软件: MobaXterm软件记录测试时段的log打印,并将log数据保存好。
- 测试步骤:
- 准备5块ArmSoM-W3开发板,接好定时器电源,串口连接电脑。全部放入温箱
- 打开MobaXterm软件记录测试时段的log打印
- 定时器设定开发板的启动时间25秒和关机时间10秒。
- 温箱升温到70℃保值4小时,看是否能正常开机;关机15分钟之后再次上电开机,循环2000次。看开发板是否能正常启动。
- 根据log打印查看RK3588 - ArmSoM-W3开发板实际开关机多少次,查看开发板拔插电源期间是否异常。
- 测试结果:进行了1000次硬件断电源方式重启,开关机次数相差一两次在误差范围内,硬件重启测试未发现异常。
5. 70℃高温运行测试
- 测试原理:ArmSoM-W3开发板放在70℃高温环境中高强度运行24小时,观察开发板的运行情况是否异常。
- 测试时间:2023年5月13日 9:55 -- 5月14日 13:50
- 测试工具:6个串口,6块开发板(一块绿色核心板,五块蓝色核心板),电源,电脑,HDMI线及显示屏
- 测试步骤:
- 准备5块ArmSoM-W3开发板,均连接串口以及电源,全部放入温箱
- 开发板均接入串口,保存开关机时串口打印的log。
- 温箱升温到70℃保值4小时,启动高性能软件运行,查看开发板运行期间是否异常。
- 根据log打印查看RK3588 - ArmSoM-W3开发板运行期间是否异常
- 测试结果: 在70℃高温高强度运行了24小时,5块开发板均运行正常。