首页 / 专利库 / 分销网络和设备 / 电源电压 / 基于FPGA的SOC芯片自动化测试工具和测试方法

基于FPGA的SOC芯片自动化测试工具和测试方法

阅读:1发布:2020-06-08

专利汇可以提供基于FPGA的SOC芯片自动化测试工具和测试方法专利检索,专利查询,专利分析的服务。并且本 发明 提供一种基于FPGA的SOC芯片自动化测试工具,包括相连接的上位机 接口 模 块 、FPGA芯片、高 精度 AD模块和高精度DA模块;所述上位机接口模块用于连接上位机;所述FPGA芯片上设有:JTAG/SWD逻辑模块,用于对接SOC芯片上的JTAG/SWD模块;AD逻辑模块,控制高精度AD模块对接SOC芯片上的DA模块;DA逻辑模块,控制高精度DA模块对接SOC芯片上的AD模块;UART逻辑串口模块,用于对接SOC芯片上的UART串口模块;SPI逻辑模块,用于对接SOC芯片上的SPI模块;I2C逻辑模块,用于对接SOC芯片上的I2C模块; 定时器 逻辑模块,用于验证SOC芯片上的定时器;GPIO逻辑模块,用于对接SOC芯片上的GPIO模块。本发明实现测试过程的全自动化。,下面是基于FPGA的SOC芯片自动化测试工具和测试方法专利的具体信息内容。

1.一种基于FPGA的SOC芯片自动化测试工具,包括相连接的上位机接口、FPGA芯片、高精度AD模块和高精度DA模块;所述上位机接口模块用于连接上位机;其特征在于,所述FPGA芯片上设有:
JTAG/SWD逻辑模块,用于对接SOC芯片上的JTAG/SWD模块;
AD逻辑模块,控制高精度AD模块对接SOC芯片上的DA模块;
DA逻辑模块,控制高精度DA模块对接SOC芯片上的AD模块;
UART逻辑串口模块,用于对接SOC芯片上的UART串口模块;
SPI逻辑模块,用于对接SOC芯片上的SPI模块;
I2C逻辑模块,用于对接SOC芯片上的I2C模块;
定时器逻辑模块,用于验证SOC芯片上的定时器;
GPIO逻辑模块,用于对接SOC芯片上的GPIO模块。
2.一种基于FPGA的SOC芯片自动化测试方法,适用于如权利要求1所述的基于FPGA的SOC芯片自动化测试工具,其特征在于,包括以下步骤:
S1,上位机、测试工具、SOC芯片依次连接;
S2,测试SOC芯片的UART串口模块;上位机向测试工具传输多个不同波特率的Hex文件,测试工具将各Hex文件通过SWD协议下载到SOC芯片中,测试工具会通过串口输出相应波特率的批量数据,SOC芯片接收数据后将接收到的批量数据发送给测试工具,测试工具的UART逻辑串口模块根据接收数据计算出波特率误差,与发送的批量数据相比较计算传输数据误码率,将结果发送给上位机;
S3,对于SOC芯片定时器模块的捕获、比较和PWM三种模式,由测试工具将相应HEX文件通过SWD协议下载到SOC芯片中,测试工具通过串口发送捕获模式命令和配置参数给SOC芯片,使其进入捕获模式;当SOC芯片进入捕获模式时,测试工具会自动产生频率和占空比周期变化的方波信号,SOC芯片将测得的方波信号的频率和占空比通过串口返回给测试工具,测试工具根据产生的频率和占空比和SOC芯片测得的频率和占空比数据作比较,相同则向上位机返回测试成功,不同则发送误差比例;
S4,当测试SOC芯片比较模式时,由测试工具将相应HEX文件通过SWD协议下载到SOC芯片中,测试工具通过串口发送比较模式命令和配置参数给SOC芯片,使其进入比较模式,同时测试工具启动自身的定时器逻辑模块的捕获功能,采集SOC芯片进入比较模式时产生的波形,测试工具根据采集SOC芯片比较模式产生的波形判断SOC芯片定时器模块的比较模式测试是否成功,将测试结果发送给上位机;
S5,当测试SOC芯片PWM模式时,测试工具将相应HEX文件通过SWD协议下载到SOC芯片中,测试工具发送测试PWM模式命令和配置参数,测试工具启用自身的定时器逻辑模块的捕获功能,对捕获的PWM波形,分析PWM的频率、占空比和死区时间测试工具将输入的PWM的频率、占空比和死区电压与捕获的频率、占空比和死区时间对比,将对比结果发送给上位机;
S6,对于SOC芯片电源管理单元多种工作模式测试,测试工具将相应HEX文件通过SWD协议下载到SOC芯片中,测试工具发送进入相应模式命令,SOC芯片进入相应模式后,通过测试工具内部高精度AD模块采集测试电阻电压测出SOC芯片进入相应模式的电流,与上位机输入的SOC芯片电流参数做对比,从而判断SOC芯片是否可以正常进入每种模式,将比对结果发送给上位机;
S7,对于测试SOC芯片I2C模块的主从模式时,测试工具将相应HEX文件通过SWD协议下载到SOC芯片中,测试工具首先测试SOC芯片的I2C主模式,测试工具通过串口发送进入I2C主模式指令给SOC芯片;测试工具同时将自身切换为I2C从模式;测试工具和SOC芯片的I2C主模式进行批量数据交互;测试工具会解析SOC芯片I2C主模式发送的数据并对SOC芯片的I2C速率进行分析与比对,将比对结果发送给上位机;
S8,测试工具测试SOC芯片的I2C从模式,测试工具将相应HEX文件通过SWD协议下载到SOC芯片中,测试工具通过串口发送进入I2C从模式指令给SOC芯片;测试工具将自身切换为I2C主模式;测试工具和SOC芯片的I2C从模式进行批量数据交互;测试工具会解析SOC芯片I2C从模式的数据进行分析与对比,将对比结果发送给上位机;
S9,对于测试SOC芯片SPI模块的主从模式时,测试工具将相应HEX文件通过SWD协议下载到SOC芯片中,测试工具首先测试SOC芯片的SPI主模式,测试工具通过串口发送进入SPI主模式指令给SOC芯片;测试工具切换为SPI从模式;测试工具和SOC芯片的SPI主模式进行批量数据交互;测试工具会解析SOC芯片SPI主模式的数据并对SPI速率进行分析与比对,将比对结果发送给上位机;
S10,测试工具测试SOC芯片的SPI从模式,测试工具将相应HEX文件通过SWD协议下载到SOC芯片中,测试工具通过串口发送进入SPI从模式指令给SOC芯片;测试工具切换为SPI主模式;测试工具和SOC芯片的SPI从模式进行批量数据交互;测试工具会解析SOC芯片SPI从模式的数据进行分析与比对,将比对结果发送给上位机;
S11,对于SOC芯片的多路复用引脚测试;
测试工具将相应HEX文件通过SWD协议下载到SOC芯片中,测试工具通过串口向SOC芯片发送进入I2C引脚多路复用指令,SOC芯片的I2C模块作为主模式,测试工具作为I2C从模式,根据串口命令切换SOC芯片不同的I2C引脚复用,相应的测试工具也会切换相应的I2C引脚复用进行数据收发,测试工具对接收的数据进行比对,比对成功则SOC芯片的I2C模块引脚多路复用测试成功,将测试结果发送给上位机;
测试工具将相应HEX文件通过SWD协议下载到SOC芯片中,测试工具通过串口向SOC芯片发送进入SPI引脚多路复用指令,SOC芯片的SPI模块作为主模式,测试工具作为SPI从模式,根据串口命令切换SOC芯片不同的SPI引脚复用,相应的测试工具也会切换相应的SPI引脚复用进行数据收发,测试工具对接收的数据进行比对,比对成功则SOC芯片的SPI模块引脚多路复用测试成功,将测试结果发送给上位机;
测试工具将相应HEX文件通过SWD协议下载到SOC芯片中,测试工具通过串口向SOC芯片发送进入UART引脚多路复用指令,SOC芯片根据串口复用命令切换不同的串口引脚复用组合,测试工具相应引脚复用切换为SOC芯片对应的引脚,进行数据收发,数据收发成功则SOC芯片的UART串口模块的多路复用引脚测试成功,将测试结果发送给上位机;
S12,对于SOC芯片的AD模块的验证;测试工具将相应HEX文件通过SWD协议下载到SOC芯片中,测试工具通过串口发送进入AD测试指令给SOC芯片;测试工具DA逻辑模块控制高精度DA模块产生指定幅度的电压信号;SOC芯片AD模块将采集的电压值通过串口发送给测试工具,由测试工具判断SOC芯片AD模块采集模拟电压值与测试工具输出的电压值的偏差,将偏差结果发送给上位机;
S13,对于SOC芯片的DA模块的验证;测试工具将相应HEX文件通过SWD协议下载到SOC芯片中,测试工具通过串口发送进入DA测试指令给SOC芯片,包含需要产生的模拟电压值;SOC芯片的DA模块产生固定的模拟电压输出,测试工具AD逻辑模块控制高精度AD模块采集模拟电压;将测试工具采集的模拟电压值与测试工具指定SOC产生的模拟电压值进行比较,将比较的偏差结果发送给上位机。
3.如权利要求2所述的基于FPGA的SOC芯片自动化测试方法,其特征在于,还包括以下步骤:
S14,对于SOC芯片的GPIO模块的测试,测试工具将相应HEX文件通过SWD协议下载到SOC芯片中,测试工具通过串口发送进入GPIO口输出功能测试指令给SOC芯片,测试SOC芯片的GPIO口输出功能时,SOC芯片会根据指令产生相应的高低电平,测试工具会采集SOC芯片GPIO口输出的高低电平;测试工具比对采集的GPIO的输出高低电平与测试工具指定SOC输出的高低电平是否相同,将测试结果发送给上位机;测试工具通过串口发送进入GPIO口输入功能测试指令给SOC芯片,测试工具会产生上升沿、下降沿信号和上升下降沿信号,SOC芯片检测到上升沿、下降沿和上升下降沿信号后触发相应中断,将触发结果通过串口发送给测试工具,测试工具比对采集的GPIO的上升沿、下降沿和上升下降沿与测试工具指定SOC输出的信号是否相同,将测试结果发送给上位机。
4.如权利要求2所述的基于FPGA的SOC芯片自动化测试方法,其特征在于,步骤S7、S8中,数据交互时,测试工具和SOC芯片同时切换为100kbps/400kbps/1Mbps。
5.如权利要求2所述的基于FPGA的SOC芯片自动化测试方法,其特征在于,步骤S9、S10中,数据交互时,测试工具和SOC芯片同时切换为1Mbps/8Mbps/16Mbps。

说明书全文

基于FPGA的SOC芯片自动化测试工具和测试方法

技术领域

[0001] 本发明涉及SOC芯片测试领域,尤其是一种基于FPGA的SOC芯片自动化测试工具和测试方法。

背景技术

[0002] 目前在SOC芯片FPGA原型验证阶段,每修改一次芯片设计,都需要对FPGA原型进行一次验证。由于SOC芯片外设一般较多,大部分外设测试需要使用示波器、逻辑分析仪和信号发生器等仪器辅助,且部分模测试另外需要使用杜邦线连接,测试工作繁琐重复,且不能自动生成测试报告。针对以上问题,急需一个可以一键测试SOC芯片,并将测试结果自动生成测试报告的全自动SOC芯片测试平台。
[0003] 目前在SOC芯片测试领域由于SOC芯片模块功能复杂导致的大量重复工作问题,如下:(1) 测试SOC芯片定时器(Timer)的PWM模式时,对于SOC芯片输出不同频率、占空比和是否带死区的PWM信号时,需要使用示波器或者逻辑分析仪不断抓取不同频率、占空比和是否带死区的PWM波形进行分析,重复工作比较多;
(2) 测试SOC芯片定时器(Timer)的比较(Compare)模式时,对于SOC芯片输出不同频率、占空比的比较信号时,需要使用示波器或者逻辑分析仪不断抓取不同频率、占空比比较波形进行分析,重复工作比较多;
(3) 测试SOC芯片定时器的(Timer)的捕获(Capture)模式时,需要接信号发生器人为去设置不同频率和占空比的方波,去判断SOC芯片捕获模式下捕获的方波频率和占空比是否正确,需要人工去判断;
(4) 对于SOC芯片电源管理单元(PMU)的多种工作模式,需要手工去切换进入不同模式后通过万用表去测试相应模式电流的大小,从而判断每种模式的功耗平;
(5) 对于SOC芯片串口(UART)的测试,常规的测试是使用串口调试助手,需要串口调试助手和SOC芯片设置同样的波特率,测试多种波特率通信较繁琐;
(6) 对于SOC芯片SPI的测试,在测试SPI主模式时,一般外接SPI从设备。而测试SPI从模式时,需要外接SPI主设备,插拔连接线比较繁琐;
(7) 对于SOC芯片I2C的测试,在测试I2C主模式时,一般外接I2C从设备。而测试I2C从模式时,需要外接I2C主设备,插拔连接线比较繁琐;
(8)对于SOC芯片的AD模块、DA模块等,目前还缺乏相关的测试手段。

发明内容

[0004] 本发明的目的在于克服现有技术中存在的不足,提供一种基于FPGA的SOC芯片自动化测试工具和测试方法,避免大量的人工复杂重复性工作,以及实现测试过程的全自动化。本发明采用的技术方案是:本发明实施例提出一种基于FPGA的SOC芯片自动化测试工具,包括相连接的上位机接口模块、FPGA芯片、高精度AD模块和高精度DA模块;所述上位机接口模块用于连接上位机,具体采用USB模块;
所述FPGA芯片上设有:
JTAG/SWD逻辑模块,用于对接SOC芯片上的JTAG/SWD模块;
AD逻辑模块,控制高精度AD模块对接SOC芯片上的DA模块;
DA逻辑模块,控制高精度DA模块对接SOC芯片上的AD模块;
UART逻辑串口模块,用于对接SOC芯片上的UART串口模块;
SPI逻辑模块,用于对接SOC芯片上的SPI模块;
I2C逻辑模块,用于对接SOC芯片上的I2C模块;
定时器逻辑模块,用于验证SOC芯片上的定时器;
GPIO逻辑模块,用于对接SOC芯片上的GPIO模块。
[0005] 本发明实施例还提出一种基于FPGA的SOC芯片自动化测试方法,适用于上述的基于FPGA的SOC芯片自动化测试工具,包括以下步骤:S1,上位机、测试工具、SOC芯片依次连接;
S2,测试SOC芯片的UART串口模块;上位机向测试工具传输多个不同波特率的Hex文件,测试工具将各Hex文件通过SWD协议下载到SOC芯片中,测试工具会通过串口输出相应波特率的批量数据,SOC芯片接收数据后将接收到的批量数据发送给测试工具,测试工具的UART逻辑串口模块根据接收数据计算出波特率误差,与发送的批量数据相比较计算传输数据误码率,将结果发送给上位机;
S3,对于SOC芯片定时器模块的捕获、比较和PWM三种模式,由测试工具将相应HEX文件通过SWD协议下载到SOC芯片中,测试工具通过串口发送捕获模式命令和配置参数给SOC芯片,使其进入捕获模式;当SOC芯片进入捕获模式时,测试工具会自动产生频率和占空比周期变化的方波信号,SOC芯片将测得的方波信号的频率和占空比通过串口返回给测试工具,测试工具根据产生的频率和占空比和SOC芯片测得的频率和占空比数据作比较,相同则向上位机返回测试成功,不同则发送误差比例;
S4,当测试SOC芯片比较模式时,由测试工具将相应HEX文件通过SWD协议下载到SOC芯片中,测试工具通过串口发送比较模式命令和配置参数给SOC芯片,使其进入比较模式,同时测试工具启动自身的定时器逻辑模块的捕获功能,采集SOC芯片进入比较模式时产生的波形,测试工具根据采集SOC芯片比较模式产生的波形判断SOC芯片定时器模块的比较模式测试是否成功,将测试结果发送给上位机;
S5,当测试SOC芯片PWM模式时,测试工具将相应HEX文件通过SWD协议下载到SOC芯片中,测试工具发送测试PWM模式命令和配置参数,测试工具启用自身的定时器逻辑模块的捕获功能,对捕获的PWM波形,分析PWM的频率、占空比和死区时间测试工具将输入的PWM的频率、占空比和死区电压与捕获的频率、占空比和死区时间对比,将对比结果发送给上位机;
S6,对于SOC芯片电源管理单元多种工作模式测试,测试工具将相应HEX文件通过SWD协议下载到SOC芯片中,测试工具发送进入相应模式命令,SOC芯片进入相应模式后,通过测试工具内部高精度AD模块采集测试电阻电压测出SOC芯片进入相应模式的电流,与上位机输入的SOC芯片电流参数做对比,从而判断SOC芯片是否可以正常进入每种模式,将比对结果发送给上位机;
S7,对于测试SOC芯片I2C模块的主从模式时,测试工具将相应HEX文件通过SWD协议下载到SOC芯片中,测试工具首先测试SOC芯片的I2C主模式,测试工具通过串口发送进入I2C主模式指令给SOC芯片;测试工具同时将自身切换为I2C从模式;测试工具和SOC芯片的I2C主模式进行批量数据交互;测试工具会解析SOC芯片I2C主模式发送的数据并对SOC芯片的I2C速率进行分析与比对,将比对结果发送给上位机;
S8,测试工具测试SOC芯片的I2C从模式,测试工具将相应HEX文件通过SWD协议下载到SOC芯片中,测试工具通过串口发送进入I2C从模式指令给SOC芯片;测试工具将自身切换为I2C主模式;测试工具和SOC芯片的I2C从模式进行批量数据交互;测试工具会解析SOC芯片I2C从模式的数据进行分析与对比,将对比结果发送给上位机;
S9,对于测试SOC芯片SPI模块的主从模式时,测试工具将相应HEX文件通过SWD协议下载到SOC芯片中,测试工具首先测试SOC芯片的SPI主模式,测试工具通过串口发送进入SPI主模式指令给SOC芯片;测试工具切换为SPI从模式;测试工具和SOC芯片的SPI主模式进行批量数据交互;测试工具会解析SOC芯片SPI主模式的数据并对SPI速率进行分析与比对,将比对结果发送给上位机;
S10,测试工具测试SOC芯片的SPI从模式,测试工具将相应HEX文件通过SWD协议下载到SOC芯片中,测试工具通过串口发送进入SPI从模式指令给SOC芯片;测试工具切换为SPI主模式;测试工具和SOC芯片的SPI从模式进行批量数据交互;测试工具会解析SOC芯片SPI从模式的数据进行分析与比对,将比对结果发送给上位机;
S11,对于SOC芯片的多路复用引脚测试;
测试工具将相应HEX文件通过SWD协议下载到SOC芯片中,测试工具通过串口向SOC芯片发送进入I2C引脚多路复用指令,SOC芯片的I2C模块作为主模式,测试工具作为I2C从模式,根据串口命令切换SOC芯片不同的I2C引脚复用,相应的测试工具也会切换相应的I2C引脚复用进行数据收发,测试工具对接收的数据进行比对,比对成功则SOC芯片的I2C模块引脚多路复用测试成功,将测试结果发送给上位机;
测试工具将相应HEX文件通过SWD协议下载到SOC芯片中,测试工具通过串口向SOC芯片发送进入SPI引脚多路复用指令,SOC芯片的SPI模块作为主模式,测试工具作为SPI从模式,根据串口命令切换SOC芯片不同的SPI引脚复用,相应的测试工具也会切换相应的SPI引脚复用进行数据收发,测试工具对接收的数据进行比对,比对成功则SOC芯片的SPI模块引脚多路复用测试成功,将测试结果发送给上位机;
测试工具将相应HEX文件通过SWD协议下载到SOC芯片中,测试工具通过串口向SOC芯片发送进入UART引脚多路复用指令,SOC芯片根据串口复用命令切换不同的串口引脚复用组合,测试工具相应引脚复用切换为SOC芯片对应的引脚,进行数据收发,数据收发成功则SOC芯片的UART串口模块的多路复用引脚测试成功,将测试结果发送给上位机;
S12,对于SOC芯片的AD模块的验证;测试工具将相应HEX文件通过SWD协议下载到SOC芯片中,测试工具通过串口发送进入AD测试指令给SOC芯片;测试工具DA逻辑模块控制高精度DA模块产生指定幅度的电压信号;SOC芯片AD模块将采集的电压值通过串口发送给测试工具,由测试工具判断SOC芯片AD模块采集模拟电压值与测试工具输出的电压值的偏差,将偏差结果发送给上位机。
[0006] S13,对于SOC芯片的DA模块的验证;测试工具将相应HEX文件通过SWD协议下载到SOC芯片中,测试工具通过串口发送进入DA测试指令给SOC芯片,包含需要产生的模拟电压值;SOC芯片的DA模块产生固定的模拟电压输出,测试工具AD逻辑模块控制高精度AD模块采集模拟电压;将测试工具采集的模拟电压值与测试工具指定SOC产生的模拟电压值进行比较,将比较的偏差结果发送给上位机;S14,对于SOC芯片的GPIO模块的测试,测试工具将相应HEX文件通过SWD协议下载到SOC芯片中,测试工具通过串口发送进入GPIO口输出功能测试指令给SOC芯片,测试SOC芯片的GPIO口输出功能时,SOC芯片会根据指令产生相应的高低电平,测试工具会采集SOC芯片GPIO口输出的高低电平;测试工具比对采集的GPIO的输出高低电平与测试工具指定SOC输出的高低电平是否相同,将测试结果发送给上位机;测试工具通过串口发送进入GPIO口输入功能测试指令给SOC芯片,测试工具会产生上升沿、下降沿信号和上升下降沿信号,SOC芯片检测到上升沿、下降沿和上升下降沿信号后触发相应中断,将触发结果通过串口发送给测试工具,测试工具比对采集的GPIO的上升沿、下降沿和上升下降沿与测试工具指定SOC输出的信号是否相同,将测试结果发送给上位机。
[0007] 进一步地,步骤S7、S8中,数据交互时,测试工具和SOC芯片同时切换为100kbps/400kbps/1Mbps。
[0008] 进一步地,步骤S9、S10中,数据交互时,测试工具和SOC芯片同时切换为1Mbps/8Mbps/16Mbps。
[0009] 本发明的优点在于:本发明能够实现全自动化测试,避免大量的人工复杂重复性工作以及实现功能模块测试技术的优化。针对SPI、I2C等通信模块,解决了由主从模式切换测试带来的难点,实现自动化测试;针对电源管理单元等工具测试型模块,解决了由多种测试工具(如万用表、示波器等),带来的重复性人工操作的难点,实现自动化测试;针对定时器模块等具有多模式功能软件配置模块,解决了单独配置并硬件检测的复杂操作难点,实现在测试工具上软硬协调的自动化测试。针对UART模块,解决了多种波特率测试,上位机和SOC芯片同时切换的繁琐工作。针对I2C、SPI和UART等模块引脚复用测试,解决了重复连线,实现自动化测试。针对GPIO模块,实现GPIO所有引脚的输入和输出一键测试,解决了使用手工单个测试引脚输入输出操作。附图说明
[0010] 图1为本发明的结构组成示意图。
[0011] 图2为本发明的测试流程图之前半部分。
[0012] 图3为本发明的测试流程图之后半部分。

具体实施方式

[0013] 下面结合具体附图和实施例对本发明作进一步说明。
[0014] 本发明实施例提出一种基于FPGA的SOC芯片自动化测试工具,包括相连接的上位机接口模块、FPGA芯片、高精度AD模块和高精度DA模块;所述上位机接口模块用于连接上位机,具体采用USB模块;所述FPGA芯片上设有:
JTAG/SWD逻辑模块,用于对接SOC芯片上的JTAG/SWD模块;
AD逻辑模块,控制高精度AD模块对接SOC芯片上的DA模块;
DA逻辑模块,控制高精度DA模块对接SOC芯片上的AD模块;
UART逻辑串口模块,用于对接SOC芯片上的UART串口模块;
SPI逻辑模块,用于对接SOC芯片上的SPI模块;
I2C逻辑模块,用于对接SOC芯片上的I2C模块;
定时器逻辑模块(Timer),用于验证SOC芯片上的定时器;
GPIO逻辑模块,用于对接SOC芯片上的GPIO模块。
[0015] 本发明实施例还提出一种基于FPGA的SOC芯片自动化测试方法,适用于上述的基于FPGA的SOC芯片自动化测试工具,包括以下步骤:S1,上位机、测试工具、SOC芯片依次连接;
S2,测试SOC芯片的UART串口模块;上位机向测试工具传输波特率为9600的HEX文件,测试工具将HEX文件通过SWD协议下载到SOC芯片中,HEX文件在SOC芯片运行,测试工具会通过串口输出波特率为9600的批量数据,SOC芯片接收数据后将接收到的批量数据发送给测试工具,测试工具的UART逻辑串口模块根据接收数据计算出波特率误差,与发送的批量数据相比较计算传输数据误码率,将结果发送给上位机;测试串口其他波特率与误差方法与S2相同。
[0016] S3,对于SOC芯片定时器模块的捕获、比较和PWM三种模式,由测试工具将相应HEX文件通过SWD协议下载到SOC芯片中,测试工具通过串口发送捕获模式命令和配置参数给SOC芯片,使其进入捕获模式;当SOC芯片进入捕获模式时,测试工具会自动产生频率和占空比周期变化的方波信号,SOC芯片将测得的方波信号的频率和占空比通过串口返回给测试工具,测试工具根据产生的频率和占空比和SOC芯片测得的频率和占空比数据作比较,相同则向上位机返回测试成功,不同则发送误差比例;S4,当测试SOC芯片比较模式时,由测试工具将相应HEX文件通过SWD协议下载到SOC芯片中,测试工具通过串口发送比较模式命令和配置参数给SOC芯片,使其进入比较模式,同时测试工具启动自身的定时器逻辑模块的捕获功能,采集SOC芯片进入比较模式时产生的波形,测试工具根据采集SOC芯片比较模式产生的波形判断SOC芯片定时器模块的比较模式测试是否成功,将测试结果发送给上位机;
S5,当测试SOC芯片PWM模式时,测试工具将相应HEX文件通过SWD协议下载到SOC芯片中,测试工具发送测试PWM模式命令和配置参数,测试工具启用自身的定时器逻辑模块的捕获功能,对捕获的PWM波形,分析PWM的频率、占空比和死区时间测试工具将输入的PWM的频率、占空比和死区电压与捕获的频率、占空比和死区时间对比,将对比结果发送给上位机;
S6,对于SOC芯片电源管理单元多种工作模式测试,测试工具将相应HEX文件通过SWD协议下载到SOC芯片中,测试工具发送进入相应模式命令,SOC芯片进入相应模式后,通过测试工具内部高精度AD模块采集测试电阻电压测出SOC芯片进入相应模式的电流,与上位机输入的SOC芯片电流参数做对比,从而判断SOC芯片是否可以正常进入每种模式,将比对结果发送给上位机;
S7,对于测试SOC芯片I2C模块的主从模式时,测试工具将相应HEX文件通过SWD协议下载到SOC芯片中,测试工具首先测试SOC芯片的I2C主模式,测试工具通过串口发送进入I2C主模式指令给SOC芯片;测试工具同时将自身切换为I2C从模式;测试工具和SOC芯片的I2C主模式进行批量数据交互(测试工具和SOC芯片同时切换为100kbps/400kbps/1Mbps);测试工具会解析SOC芯片I2C主模式发送的数据并对SOC芯片的I2C速率进行分析与比对,将比对结果发送给上位机;
S8,测试工具测试SOC芯片的I2C从模式,测试工具将相应HEX文件通过SWD协议下载到SOC芯片中,测试工具通过串口发送进入I2C从模式指令给SOC芯片;测试工具将自身切换为I2C主模式;测试工具和SOC芯片的I2C从模式进行批量数据交互(测试工具和SOC芯片同时切换为100kbps/400kbps/1Mbps);测试工具会解析SOC芯片I2C从模式的数据进行分析与对比,将对比结果发送给上位机;
S9,对于测试SOC芯片SPI模块的主从模式时,测试工具将相应HEX文件通过SWD协议下载到SOC芯片中,测试工具首先测试SOC芯片的SPI主模式,测试工具通过串口发送进入SPI主模式指令给SOC芯片;测试工具切换为SPI从模式;测试工具和SOC芯片的SPI主模式进行批量数据交互;测试工具会解析SOC芯片SPI主模式的数据并对SPI速率进行分析与比对,将比对结果发送给上位机;
S10,测试工具测试SOC芯片的SPI从模式,测试工具将相应HEX文件通过SWD协议下载到SOC芯片中,测试工具通过串口发送进入SPI从模式指令给SOC芯片;测试工具切换为SPI主模式;测试工具和SOC芯片的SPI从模式进行批量数据交互;测试工具会解析SOC芯片SPI从模式的数据进行分析与比对,将比对结果发送给上位机;
S11,对于SOC芯片的多路复用引脚测试;
测试工具将相应HEX文件通过SWD协议下载到SOC芯片中,测试工具通过串口向SOC芯片发送进入I2C引脚多路复用指令,SOC芯片的I2C模块作为主模式,测试工具作为I2C从模式,根据串口命令切换SOC芯片不同的I2C引脚复用,相应的测试工具也会切换相应的I2C引脚复用进行数据收发,测试工具对接收的数据进行比对,比对成功则SOC芯片的I2C模块引脚多路复用测试成功,将测试结果发送给上位机;
测试工具将相应HEX文件通过SWD协议下载到SOC芯片中,测试工具通过串口向SOC芯片发送进入SPI引脚多路复用指令,SOC芯片的SPI模块作为主模式,测试工具作为SPI从模式,根据串口命令切换SOC芯片不同的SPI引脚复用,相应的测试工具也会切换相应的SPI引脚复用进行数据收发,测试工具对接收的数据进行比对,比对成功则SOC芯片的SPI模块引脚多路复用测试成功,将测试结果发送给上位机;
测试工具将相应HEX文件通过SWD协议下载到SOC芯片中,测试工具通过串口向SOC芯片发送进入UART引脚多路复用指令,SOC芯片根据串口复用命令切换不同的串口引脚复用组合,测试工具相应引脚复用切换为SOC芯片对应的引脚,进行数据收发,数据收发成功则SOC芯片的UART串口模块的多路复用引脚测试成功,将测试结果发送给上位机;
S12,对于SOC芯片的AD模块的验证;测试工具将相应HEX文件通过SWD协议下载到SOC芯片中,测试工具通过串口发送进入AD测试指令给SOC芯片;测试工具DA逻辑模块控制高精度DA模块产生指定幅度的电压信号;SOC芯片AD模块将采集的电压值通过串口发送给测试工具,由测试工具判断SOC芯片AD模块采集模拟电压值与测试工具输出的电压值的偏差,将偏差结果发送给上位机。
[0017] S13,对于SOC芯片的DA模块的验证;测试工具将相应HEX文件通过SWD协议下载到SOC芯片中,测试工具通过串口发送进入DA测试指令给SOC芯片,包含需要产生的模拟电压值;SOC芯片的DA模块产生固定的模拟电压输出,测试工具AD逻辑模块控制高精度AD模块采集模拟电压;将测试工具采集的模拟电压值与测试工具指定SOC产生的模拟电压值进行比较,将比较的偏差结果发送给上位机。
[0018] S14,对于SOC芯片的GPIO模块的测试,测试工具将相应HEX文件通过SWD协议下载到SOC芯片中,测试工具通过串口发送进入GPIO口输出功能测试指令给SOC芯片,测试SOC芯片的GPIO口输出功能时,SOC芯片会根据指令产生相应的高低电平,测试工具会采集SOC芯片GPIO口输出的高低电平;测试工具比对采集的GPIO的输出高低电平与测试工具指定SOC输出的高低电平是否相同,将测试结果发送给上位机;测试工具通过串口发送进入GPIO口输入功能测试指令给SOC芯片,测试工具会产生上升沿、下降沿信号和上升下降沿信号,SOC芯片检测到上升沿、下降沿和上升下降沿信号后触发相应中断,将触发结果通过串口发送给测试工具,测试工具比对采集的GPIO的上升沿、下降沿和上升下降沿与测试工具指定SOC输出的信号是否相同,将测试结果发送给上位机。
[0019] 综上,本发明能够实现:(1).自动化验证SOC芯片的GPIO模块输入和输出功能,输出验证结果;
(2).自动化验证SOC芯片定时器(Timer)的捕获(Capture)、比较(Compare)和PWM三种模式,输出验证结果,免去使用示波器和信号发生器测试;
(3).全自动化验证SOC芯片电源管理单元(PMU)的各种工作模式的功耗与模式切换是否成功,输出验证结果,免去手工测试;
(4).全自动化验证SOC芯片串口(UART),自动验证批量数据收发、波特率验证和自动计算波特率误差,输出验证结果,免去仪器测量和手工计算;
(5).全自动化验证SOC芯片SPI模块,由测试工具充当SPI从设备和SPI主设备对SOC芯片的SPI模块进行测试,并能够对SOC芯片主模式产生的时钟信号进行自动测量,并自动计算时钟误差,对于SOC芯片设置从模式,由测试工具发出不同速率的数据给SOC芯片SPI模块,测试工具自动判断数据的收发和SOC芯片作为SPI从模式最大的支持速率;
(6).全自动化验证SOC芯片I2C模块,由测试工具充当I2C从设备和I2C主设备对SOC芯片的I2C模块进行测试,并能够对SOC芯片主模式产生的时钟信号进行自动测量,并自动计算时钟误差,对于SOC芯片设置从模式,由测试工具发出不同速率的数据给SOC芯片I2C模块,测试工具自动判断数据的收发和SOC芯片作为I2C从模式最大的支持速率;
(7).对于SOC芯片AD模块的验证,由测试工具产生指定幅度的电压信号,SOC芯片AD模块将采集的电压值通过串口发送给测试工具,由测试工具判断SOC芯片AD模块采集模拟电压值与测试工具输出的电压值的偏差。
[0020] (8).对于SOC芯片DA模块的验证,SOC芯片的DA模块产生固定的模拟电压输出,测试工具AD逻辑模块控制高精度AD模块采集模拟电压;由测试工具判断采集的模拟电压值与测试工具指定SOC产生的模拟电压值的偏差。
[0021] (9).对于SOC芯片模块的引脚复用验证,如SOC芯片I2C/UART/SPI模块复用多组引脚,通过测试工具和SOC芯片的I2C/UART/SPI引脚进行自动切换,实现I2C/UART/SPI模块引脚复用自动化验证。
[0022] 最后所应说明的是,以上具体实施方式仅用以说明本发明的技术方案而非限制,尽管参照实例对本发明进行了详细说明,本领域的普通技术人员应当理解,可以对本发明的技术方案进行修改或者等同替换,而不脱离本发明技术方案的精神和范围,其均应涵盖在本发明的权利要求范围当中。
高效检索全球专利

专利汇是专利免费检索,专利查询,专利分析-国家发明专利查询检索分析平台,是提供专利分析,专利查询,专利检索等数据服务功能的知识产权数据服务商。

我们的产品包含105个国家的1.26亿组数据,免费查、免费专利分析。

申请试用

分析报告

专利汇分析报告产品可以对行业情报数据进行梳理分析,涉及维度包括行业专利基本状况分析、地域分析、技术分析、发明人分析、申请人分析、专利权人分析、失效分析、核心专利分析、法律分析、研发重点分析、企业专利处境分析、技术处境分析、专利寿命分析、企业定位分析、引证分析等超过60个分析角度,系统通过AI智能系统对图表进行解读,只需1分钟,一键生成行业专利分析报告。

申请试用

QQ群二维码
意见反馈