CN117076223A - 一种微控制器应用功能性能完整性测试方法及系统 - Google Patents
一种微控制器应用功能性能完整性测试方法及系统 Download PDFInfo
- Publication number
- CN117076223A CN117076223A CN202311344893.7A CN202311344893A CN117076223A CN 117076223 A CN117076223 A CN 117076223A CN 202311344893 A CN202311344893 A CN 202311344893A CN 117076223 A CN117076223 A CN 117076223A
- Authority
- CN
- China
- Prior art keywords
- test
- microcontroller
- tested
- application
- performance
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 238000012360 testing method Methods 0.000 title claims abstract description 241
- 238000000034 method Methods 0.000 title claims abstract description 38
- 238000012795 verification Methods 0.000 claims abstract description 67
- 238000012797 qualification Methods 0.000 claims abstract description 50
- 238000010998 test method Methods 0.000 claims abstract description 37
- 238000004891 communication Methods 0.000 claims description 91
- 230000006870 function Effects 0.000 claims description 61
- 230000002093 peripheral effect Effects 0.000 claims description 17
- 238000006243 chemical reaction Methods 0.000 claims description 16
- 125000004122 cyclic group Chemical group 0.000 claims description 10
- 230000000052 comparative effect Effects 0.000 claims description 5
- 238000004364 calculation method Methods 0.000 claims description 4
- 238000012546 transfer Methods 0.000 claims 1
- 230000008569 process Effects 0.000 abstract description 11
- 238000012545 processing Methods 0.000 abstract description 5
- 238000011161 development Methods 0.000 abstract description 3
- 238000004519 manufacturing process Methods 0.000 abstract description 3
- 238000001514 detection method Methods 0.000 description 8
- 238000011056 performance test Methods 0.000 description 8
- 230000005540 biological transmission Effects 0.000 description 5
- 230000004044 response Effects 0.000 description 5
- 238000005070 sampling Methods 0.000 description 4
- 230000003993 interaction Effects 0.000 description 3
- 238000006467 substitution reaction Methods 0.000 description 3
- 238000010586 diagram Methods 0.000 description 2
- 206010063385 Intellectualisation Diseases 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 238000004590 computer program Methods 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000012905 input function Methods 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000000750 progressive effect Effects 0.000 description 1
- 230000000630 rising effect Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/22—Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
- G06F11/2273—Test methods
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/22—Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
- G06F11/2205—Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing using arrangements specific to the hardware being tested
- G06F11/2236—Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing using arrangements specific to the hardware being tested to test CPU or processors
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/22—Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
- G06F11/2247—Verification or detection of system hardware configuration
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Hardware Design (AREA)
- Quality & Reliability (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Test And Diagnosis Of Digital Computers (AREA)
Abstract
本发明公开的微控制器应用功能性能完整性测试方法及系统,涉及电数字数据处理领域。本发明从应用场景的角度出发,考虑用户的使用情况,基于待测试微控制器的片上资源和应用需求设置测试指标参数、对比式测试方法和合格判断依据,并基于设置的测试指标参数和对比式测试方法搭建测试环境,以便科学、合理地进行微控制器的应用功能性能完整性测试,有效的验证了器件的可用性和兼容性,不仅能够指导用户合理使用元器件,降低电子元器件的应用风险,还可以把发现的问题反馈给芯片研制单位,为提升器件自主可控能力提供有效的支撑,可协助解决微控制器验证过程中无依据和验证平台的难题,进而加快推进中国自主生产可控芯片在工程上的应用。
Description
技术领域
本发明涉及电数字数据处理领域,特别是涉及一种微控制器应用功能性能完整性测试方法及系统。
背景技术
随着电子产品的智能化和系统化,微控制器(Microcontroller Unit,MCU)作为控制和协调整个电子产品动作的核心单元,广泛应用于电机驱动与控制、医疗和手持设备、打印机、定时系统、视频通话等系统中。目前中国自主生产的大部分微控制器,其内核采用ARM32位的Cortex-M3核CPU,具有64K或128K字节的flash存储器,20K字节的SRAM,带有定时器、GPIO端口及丰富外设资源接口(如SPI、I2C、USB、CAN、USART等),具备内、外部中断等功能,不仅能满足对数据处理能力的要求,还能兼顾低功耗和高性能要求,在替代其他微控制器方面,渐渐成为微控制应用市场的主流。
微控制器在应用中功能性能的完好性对执行任务的成败起着至关重要的作用,目前比较常用的应用功能性能测试方法是为了测试微控制器对各接口访问和回传数据的能力判定器件的性能。如何科学、合理地进行微控制器的应用功能性能完整性测试,加快推进中国自主生产可控芯片在工程上的应用,成为本领域亟待解决的技术问题。
发明内容
为解决现有技术存在的上述问题,本发明提供了一种微控制器应用功能性能完整性测试方法及系统。
为实现上述目的,本发明提供了如下方案:
一种微控制器应用功能性能完整性测试方法,包括:获取待测试微控制器的片上资源和应用需求;所述应用需求基于应用场景确定。其中,通过分析待测试微控制器的片上资源确定待测试微控制器的功能性能。通过分析应用场景下的功能性能、用法和应用需求确定测试指标参数及合格判据。
基于所述待测试微控制器的片上资源和应用需求设置测试指标参数、对比式测试方法和合格判断依据,其中,测试指标参数包括待测试微控制器的运算应用功能、常规接口驱动性能、特殊应用功能性能验证。
基于所述测试指标参数和所述对比式测试方法搭建测试环境,包括:上位机、通信控制板和验证板;所述验证板包括待测试微控制器及其外设接口;所述上位机采用串口连接所述通信控制板和所述验证板;所述验证板用于实现待测试微控制器的应用功能和接口驱动;所述通信控制板通过所述上位机发送的指令接收测试结果;所述上位机用于基于所述测试结果和所述合格判断依据获得验证结果。
采用所述测试环境完成待测试微控制器的应用功能性能的测试得到测试结果。
验证所述测试结果是否符合所述合格判断依据得到验证结果;
当所述验证结果为所述测试结果符合所述合格判断依据时,输出所述测试结果。
当所述验证结果为所述测试结果不符合所述合格判断依据时,调整所述应用场景,并返回获取待测试微控制器的片上资源和应用需求的步骤。
进一步,本发明提供了一种微控制器应用功能性能完整性测试系统,应用于上述提供的微控制器应用功能性能完整性测试方法;所述系统包括:数据获取模块、数据设置模块、测试环境搭建模块、功能测试模块和验证模块。
数据获取模块,用于获取待测试微控制器的片上资源和应用需求;所述应用需求基于应用场景确定。
数据设置模块,用于基于所述待测试微控制器的片上资源和应用需求设置测试指标参数、对比式测试方法和合格判断依据。
测试环境搭建模块,用于基于所述测试指标参数和所述对比式测试方法搭建测试环境。
功能测试模块,用于采用所述测试环境完成待测试微控制器的应用功能性能的测试得到测试结果。
验证模块,用于验证所述测试结果是否符合所述合格判断依据得到验证结果;其中,当所述验证结果为所述测试结果符合所述合格判断依据时,输出所述测试结果;当所述验证结果为所述测试结果不符合所述合格判断依据时,调整所述应用场景,并返回获取待测试微控制器的片上资源和应用需求的步骤。
根据本发明提供的具体实施例,本发明公开了以下技术效果:本发明从应用场景的角度出发,考虑用户的使用情况,基于待测试微控制器的片上资源和应用需求设置测试指标参数、对比式测试方法和合格判断依据,并基于设置的测试指标参数和对比式测试方法搭建测试环境,以便科学、合理地进行微控制器的应用功能性能完整性测试,有效的验证了器件的可用性和兼容性,不仅能够指导用户合理使用元器件,降低电子元器件的应用风险,还可以把发现的问题反馈给芯片研制单位,为提升器件自主可控能力提供有效的支撑,可协助解决微控制器验证过程中无依据和验证平台的难题,进而加快推进中国自主生产可控芯片在工程上的应用。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明提供的微控制器应用功能性能完整性测试方法的流程图。
图2为本发明提供的微控制器应用功能性能完整性测试的实施流程图。
图3为本发明提供的微控制器应用功能性能完整性测试环境示意图。
图4为本发明提供的验证板各部分连接示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明的目的是提供一种微控制器应用功能性能完整性测试方法及系统,能够科学、合理地进行微控制器的应用功能性能完整性测试,以加快推进中国自主生产可控芯片在工程上的应用。
为使本发明的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本发明作进一步详细的说明。
如图1所示,本发明提供的微控制器应用功能性能完整性测试方法,包括以下步骤。
步骤100:获取待测试微控制器的片上资源和应用需求。应用需求基于应用场景确定。
在实际应用过程中,在进行步骤100之前还需要进行以下操作:选择待测试微控制器,分析待测试微控制器的通用输入输出接口、模数转换器、定时器、外部中断、IIC/SPI/UART/CAN总线等片上资源以及典型应用场景下的功能和性能应用需求。典型应用场景可以依据待测试微控制器的实际使用场景进行设置。
步骤101:基于待测试微控制器的片上资源和应用需求设置测试指标参数、对比式测试方法和合格判断依据。
在实际应用过程中,该步骤具体的实现过程可以为:依据待测试微控制器的片上资源及应用需求(即典型应用需求),设计相应典型应用场景下的应用功能性能完整性测试指标参数、输入输出测试要求及合格判据。其中,通过分析待测试微控制器的片上资源确定待测试微控制器本身的功能性能。通过分析应用场景下的待测试微控制器的功能性能、用法确定待测试微控制器的功能性能完整性测试指标参数及合格判据。例如,完整性测试指标参数包括待测试微控制器的运算应用功能、常规接口驱动性能、特殊应用功能性能(如中断及看门狗性能、ADC转换性能、CRC循环冗余校验性能等)。
步骤102:基于测试指标参数和对比式测试方法搭建测试环境。
为了实现具有输入输出接口、模数转换器、定时器、外部中断、IIC/SPI/UART/CAN总线的待测试微控制器的验证要求,如图3所示,本发明该步骤中搭建的测试环境可以包括上位机、通信控制板、电源、验证板。其中,验证板包括待测试微控制器及其各种需验证的外设接口,实现待测试微控制器的运算应用功能、接口驱动以及其他应用功能。通信控制板通过上位机编程发送指令进行控制,接收验证结果,给出合格判据进行比对,获得验证结果。
进一步,对测试环境的搭建过程进行详细说明,具体如下。
1)、设计并搭建验证板,使其包括待测试微控制器及其各种需验证的外设接口。验证板上配置NOR Flash存储器,用于验证SPI接口读写能力。配置EEPROM存储器,用于验证IIC接口读写能力。配置CAN总线收发器,用于验证CAN接口读写能力。配置RS232/RS485功能电路,用于验证UART接口读写能力。配置DAC转换功能电路,用于验证SPI接口读写与ADC接口转换能力。配置脉宽调制器PWM输出电路,用于验证定时器定时PWM输出能力。在验证板上,待测试微控制器通过SPI总线与NOR Flash存储器相连。通过I2C总线与EEPROM存储器相连,通过TTL电平的CAN总线与CAN收发器相连。通过SCI串口与RS232/RS485接口电路相连。通过SPI总线与DAC转换模块相连,DAC输出信号送至待测试微控制器的ADC进行数据采集。定时器信号与PWM电路连接,实现PWM频率和占空比的实时调节。其中,验证板各部分间连接如图4所示。
2)、设计并搭建通信控制板,使其包含待测试微控制器对应的接口替代待测试微控制器、CAN收发器、TTL-RS232/485转换器、PWM输入检测模块、LED输入检测模块、数码显示模块、电源及拉偏模块。通信控制板能够通过待测试微控制器控制发送指令进行控制,并能够接收验证结果。在通信控制板上,CAN收发器通过TTL电平CAN总线与接口控制器内部的CAN控制器外设相连,以进行数据交互。TTL-RS232/485转换器通过串行总线与待测试微控制器的SCI串口外设相连,以进行数据交互。外部PWM输入检测模块连接至待测试微控制器的外部捕获接口,通过捕获PWM上升沿和下降沿实现对PWM信号的频率及占空比的检测。LED输入检测模块连接至待测试微控制器的GPIO引脚,以检测LED输入信号的状态。待测试微控制器通过SPI总线经串转并电路与数码管显示模块相连,用于测试状态的实时显示。拉偏模块中电源用于给验证板的外围电路供电及拉偏模块单独给待测试微控制器供电,以满足不同供电电压的测试需求。
3)、测试环境初始化。通过上位机调试助手软件编程进行通讯,采用串口连接通信控制板和验证板,对测试环境进行初始化,上电后通信控制板进行机内自检测。机内自检测的项目包括DMA数据传输测试、看门狗测试、CPU计算操作测试、RAM存取操作测试、CRC数据校验、I2C总线测试、SPI总线测试等,以确保测试环境正确。
步骤103:采用测试环境完成待测试微控制器的应用功能性能的测试得到测试结果。
例如,基于上述搭建的测试环境对三个数组元素分别赋初值为100、0和1,通过逻辑运算、数学运算验证待测试微控制器的运算功能。逻辑运算能力验证采用与、或、非、位与、位或、位异或、取反、左移、右移。数学运算能力验证采用加、减、乘、除实现。
具体的,通过对RAM区域定义3个数组元素,分别是数组元素0,数组元素1和数组元素2。对数组元素0赋初值100,并进行加、减、乘、除、取余运算,运算结果为元素0计算结果为3。元素1和2分别赋初值0和1,并进行与、或、非运算,元素1和2计算结果0。再对数组元素2分别赋初值0xaaaa,并进行位与、位或、位异或、取反、左移、右移,元素2为分别为0x55。
进一步,采用测试环境对接口驱动能力进行测试的过程包括:测试CAN/IIC接口、USB驱动性能、SPI接口驱动性能、快速I/O端口性能、PWM输出性能、UART接口驱动性能。具体的过程如下。
1)、CAN/IIC接口性能测试:通信控制板的接口控制器发送CAN/IIC测试命令,并通过CAN收发器将CAN接口的数据发送至验证板中的待测试微控制器,将数据通过IIC接口写入EEPROM存储器。验证板中的待测试微控制器再将所存储数据回传给通信控制板进行对比,判断读写数据是否一致。
2)、测试USART接口驱动性能:通信控制板发送USART测试命令,并将其USART接口数据经过TTL/RS232-RS485和RS232-RS485/ TTL转换发送至待测试微控制器,待测试微控制器再将接收到的数据回传给通信控制板,对比收发数据是否一致。
3)、SPI接口驱动性能测试:通信控制板发送SPI测试命令,待测试微控制器将数据通过SPI接口写入NOR Flash存储器,之后,待测试微控制器再将所存储数据进行读取发送到通信控制板,与原写入数据进行比较,判断读写数据是否一致。
4)、测试快速I/O端口映射到外部中断输入性能、I/O端口输入与输出性能:待测试微控制器通过快速I/O端口连接典型常用电路,通信控制板发送I/O端口测试命令,发送中断控制信号至验证板的按键中断式快速I/O端口,通过响应时间测试快速I/O端口映射到外部中断输入能力。通过快速I/O端口连接LED指示电路,并将其反馈给通信控制板,测试输入/输出响应时间来验证快速I/O端口输入与输出能力。
5)、测试PWM输出及定时器性能:通信控制板发送PWM测试命令,待测试微控制器通过定时器产生PWM信号,并传输到通信控制板的捕获端口,对其频率和占空比进行测量来验证PWM输出能力。通信控制板发送定时器测试命令,待测试微控制器通过定时器产生精确时间脉冲,控制连接I/O的LED灯亮与熄灭状态,并将LED灯状态反馈给通信控制板的捕获端口,测试定时器能力。
进一步,进行特殊应用功能性能验证的过程为:
1)、NVIC中断性能测试:通过启用待测试微控制器ADC、CAN、DAC、IIC、SPI、定时器、USART与USB的NVIC中断功能,测试NVIC中断能力。测试各外设NVIC中断通信数据是否有丢包,数据收发正常,即中断有效。
2)、看门狗功能测试:看门狗性能通过按钮连接待测试微控制器中断式快速I/O端口输入端,检测按钮状态控制看门狗状态。
3)、测试ADC转换性能:通信控制板发送ADC测试命令,通过接口微控器向DAC产生模拟信号传输至待测试微控制器的ADC接口,待测试微控制器通过SPI总线写数据至DAC模块,将其产生的模拟量反馈给ADC模块,对ADC采集到的数据进行离散化处理与SPI发送的总线数据进行比较。
4)、测试CRC循环冗余校验性能:通信控制板发送CRC测试命令,并向待测试微控制器发送具备CRC循环冗余校验的数据,待测试微控制器收到数据后,计算实际收到数据的CRC32校验,将此校验码反馈给通信控制板,通信控制板与原始校验码进行比对,判断数据传输的正确性。
5)、测试DMA控制器性能:待测试微控制器启动DMA控制器,完成各项测试,通过启用待测试微控制器ADC、DAC、SPI与USART的DMA功能,通过检测外设收发数据是否有丢包。
步骤104:验证测试结果是否符合合格判断依据得到验证结果。其中,当验证结果为测试结果符合合格判断依据时,输出测试结果。当验证结果为测试结果不符合合格判断依据时,调整应用场景,并返回步骤100。
在该步骤中,如果有不符合参数指标(即不符合合格判断依据),可以调整总线通信波特率、PWM输出频率、ADC转换精度等应用条件,以便重新确定合格判据,直到测试结果符合要求,验证结束,通过RS232串行总线将测试结果传输至上位机,上位机对测试结果进行保存,输出测试结果。
基于上述描述,相对于现有技术,本发明提供的微控制器应用功能性能完整性测试方法的优点在于:1、将待测试微控制器对应的接口替代器件作为通讯板的核心,与待测试微控制器互相通信和测试,过对比获得微控制器的核心功能的可替代性,从而验证了两者的兼容性。2、本发明给出了待测试微控制器的应用功能性能完整性测试方法,对于微控制器的接口功能和性能完整性测试具备可移植性。
下面以进行中国自主生产的微控制器XX32F103的功能性能完整性测试为例,对本发明上述提供的微控制器应用功能性能完整性测试方法的实现过程进行说明。如图2所示,该过程如下所示。
步骤1:对XX32F103的片上资源进行分析,该微控制器使用高性能的ARM® Cortex™-M3 32位的RISC内核,工作频率为72MHz,内置高速存储器(128K字节的闪存和20K字节的SRAM),拥有增强型I/O口和可连接到两条APB总线上的诸多外设,其中包含2个12位ADC、3个通用16位定时器和1个PWM定时器,此外,还包含标准和先进的通信接口:2个I2C接口和SPI接口、3个USART接口、1个USB接口和1个CAN 接口,功耗0.6W。
根据典型应用场景,该待测试微控制器的工作电压3.3V,应用时需要验证其ADC、DMA控制器、快速I/O端口通讯能力、中断能力等各种接口能力以及运算能力,指标要求如表1所示。
步骤2:根据XX32F103VB型32位低功耗通用待测试微控制器的15项指标要求,设计应用功能性能完整性测试指标参数、测试方法和合格判据如下。
指标1—测试参数为运算操作,测试方法为逻辑运算能力测试采用与、或、非、位与、位或、位异或、取反、左移、右移。数学运算能力验证采用加、减、乘、除实现。其中,RAM存取操作测试采用对数组256个元素赋初值0xaaaa5555并读取RAM值。合格判据为运算结果正确。
指标2—测试参数为工作电压,测试方法为通过外部精密电源给待测试微控制器供电3.3V,电源拉偏±10%,要求监测外供电电压,合格判据为测试软件通信功能正常,电源电流≤50mA。
指标3—测试参数为快速I/O端口输入与输出性能,测试方法为通信控制板发送I/O端口测试命令,通过快速I/O端口连接LED指示电路,并将其反馈给通信控制板。要求待测试微控制器通过快速I/O端口连接典型常用电路,合格判据为输入/输出相应时间≤5μs。
指标4—测试参数为测试快速I/O端口映射到外部中断输入性能,测试方法为通信控制板发送I/O端口中断控制信号至验证板的按键键中断式快速I/O端口,要求将测试结果反馈给上位机进行显示,合格判据为输入/输出响应时间≤5μs。
指标5—测试参数为定时器性能,测试方法为通信控制板发送定时器测试命令,待测试微控制器通过定时器产生精确时间脉冲,控制连接I/O的LED灯亮与熄灭状态,并将LED灯状态反馈给通信控制板的捕获端口,对其频率和占空比进行测量,并将测试结果反馈给上位机进行显示。要求待测试微控制器通过定时器产生精确时间脉冲控制LED灯,合格判据为:周期误差≤±1%。
指标6—测试参数为PWM输出性能,测试方法为通信控制板发送PWM测试命令,待测试微控制器通过定时器产生PWM信号(频率可调)。传输至通信控制板的捕获端口,对其频率和占空比进行测量,并将测试结果反馈给上位机进行显示。要求待测试微控制器PWM输出至通信控制板的捕获端口,合格判据为PWM占空比误差≤±1%。
指标7—测试参数IIC接口驱动性能,测试方法为设置波特率100kbps,通信控制板发送IIC测试命令,将数据通过IIC接口写入EEPROM存储器。待测试微控制器将所存储数据回传给通信控制板,判断读写数据一致与否,要求待测试微控制器向EEPROM写数据,再读出数据进行比对,合格判据为存储与读取EEPROM数据一致。
指标8—测试参数为USART接口驱动性能,测试方法为设置波特率19200bps,通信控制板发送USART测试命令,通过RS232和RS485收发器与通信控制板进行通信,将其USART接口数据经过TTL/RS232和RS232 / TTL转换发送至待测试微控制器。待测试微控制器将接收到的数据回传给通信控制板。再次重复此过程,UART启用DMA和UART中断读写数据,验证完全USART接口性能,并将测试结果反馈给上位机进行显示。要求待测试微控制器输入/输出串口数据至通信控制板,测试USART接口输入、输出数据,合格判据为与通信控制板RS232通信,收发数据无丢包。
指标9—测试参数为SPI接口驱动性能,测试方法为设置波特率400kbps,通信控制板发送SPI测试命令,待测试微控制器将数据通过SPI接口写入NOR flash存储器。待测试微控制器将所存储数据进行读取,并与原写入数据进行比对,判断读写数据正确与否,并将测试结果反馈给上位机进行显示。要求待测试微控制器向flash写数据,再读出数据进行比对,合格判据为存储与读取Flash数据一致。
指标10—测试参数为CAN接口驱动性能,测试方法为通过CAN接口连接CAN总线收发器,使用耐高温双绞线连接通信控制板CAN总线收发器。设置波特率250kbps,通信控制板发送CAN测试命令,通过CAN收发器将CAN接口的数据发送至待测试微控制器。待测试微控制器将所存储数据回传给通信控制板,判断读写数据一致与否。要求待测试微控制器输入/输出CAN数据至通信控制板(USB接口),合格判据为与通信控制板CAN通信,收发数据一致无丢包。
指标11—测试参数为ADC转换性能,测试方法为通过通信控制板发送ADC测试命令,待测试微控制器通过SPI总线写数据至DAC模块,将其产生的模拟信号传输至待测试微控制器的ADC模块,按照10位转换精度对ADC进行数据采样并进行离散化处理,并将测试结果反馈给上位机进行显示。要求检测待测试微控制器DAC输出电压传输至待测试微控制器ADC采样,合格判据为与SPI发送的总线数据一致即ADC转换精度在10位以上。
指标12—测试参数为DMA控制器性能,通过启用待测试微控制器ADC、DAC、SPI、IIC与USART接口的DMA功能测试DMA控制器性能。要求待测试微控制器启动DMA控制器,完成各项测试,合格判据为外设收发数据无丢包。
指标13—测试参数为看门狗性能,测试方法为按钮连接待测试微控制器中断式快速I/O端口输入端,通信控制板发送看门狗测试命令,并发送控制指令至待测试微控制器中断式快速I/O端口输入端,检测按钮状态控制看门狗状态,并将测试结果反馈给上位机进行显示。要求按钮按下中断式快速I/O端口输入低电平,LED熄灭。反之,LED亮,期间系统不重启,合格判据为LED正常熄灭。
指标14—测试参数为CRC循环冗余校验性能,测试方法为通过启动待测试微控制器CAN、ETH、UART/USART外部通信的CRC循环冗余校验,对数组元素进行CRC校验测试CRC能力,要求待测试微控制器启动CRC循环冗余校验功能,完成各项测试,合格判据为通信无数据丢包,校验码正确即CRC有效。
指标15—测试参数为NVIC中断性能,测试方法为通过启用待测试微控制器ADC、CAN、DAC、ETH、IIC、SPI、定时器、USART与USB的NVIC中断功能,测试NVIC中断能力。要求待测试微控制器启动NVIC中断功能,完成各项测试,合格判据为各外设NVIC中断通信数据无丢包,数据收发正常即中断有效。
步骤3:设计并搭建功能性能完整性测试环境。
步骤3.1:设计并搭建验证板。
验证板主要作用是对待验XX32F103VB待测试微控制器模块应用功能性能完整性进行测。验证板设计了W25Q128 NOR Flash存储器功能电路验证SPI接口读写能力,AT24C02N EEPROM存储器功能电路验证IIC接口读写能力,TJA1051 CAN总线收发器功能电路验证CAN接口读写能力,MAX3232ESE/MAX3483EESA RS232/RS485功能电路验证USART接口读写能力,LTC2630 DAC转换器功能电路验证SPI接口读写能力与ADC接口转换能力,PWM输出电路验证通用定时器定时PWM输出能力。按键输入功能电路验证外部输入中断相应能力,LED指示灯输出功能GPIO输出能力。通过软件编程实现DMA数据传输,独立看门狗定时功能,MCU运算能力,RAM存储,CRC循环冗余校验,通用定时器定时等功能,JTAG接口电路实现待测试微控制器JTAG/SW通讯;通过精密电源单独提供待测试微控制器3.3V进行拉偏。
步骤3.2:设计通信控制板,与验证板类似,采用STM32F103作为控制板的通信控制板,收发器采用TJA1051。通信控制板包括TTL-RS232转换设备、TTL-RS485转换设备、按键输出模块、PWM输入检测模块、LED输入检测模块、数码显示模块、外部电源模块(可调电源和标准电源)。由外部3.3V稳压电源给通信控制板和验证板卡外围电路供电。
步骤3.3:测试环境初始化。
上位机软件通讯采用调试助手进行连接,上位机通过串行总线与通信控制板进行信息交互,实时上传验证板卡测试结果,并通过上位机记录存储数据。使用keil uvision5集成开发环境对处理器XX32F103进行软件开发。通过软件编程测试各种常用外设芯片与XX32F103芯片的各项功能。
步骤4:运算应用能力测试。
逻辑运算采用分别对元素1和2分别赋初值0和1,并进行与、或、非运算。然后,对元素2分别赋初值0xaaaa,进行位与、位或、位异或、取反、左移、右移,测试逻辑运算结果,完成逻辑运算能力验证。测试结果分别为0和0x55,符合逻辑运算要求。
数学运算:对元素1赋值100分别进行加(100)、减(50)、乘(2)、除(4)取余运算,计算结果为3,结果符合要求。
步骤5:接口驱动能力测试。
步骤5.1:CAN接口性能测试。通过CAN接口连接TJA1050 CAN总线收发器,使用耐高温双绞线连接通信控制板TJA1050 CAN总线收发器,与通信控制板CAN通信,发送数据(0x11~0x88),待测试微控制器将存储数据回传至通信控制板,测试CAN接口接收数据,测试结果为发送数据(0x11~0x88),对应的接收收据为(0x11~0x88),收发数据一致无丢包,符合要求。
步骤5.2:IIC接口驱动性能测试。通讯板发送IIC测试命令,CS32F103微控制器生成N组数据(0x00 0x01 0x02 0x03 0x04 0x05 0x06 0x07 0x08 0x09~0xF0 0xF1 0xF20xF3 0xF4 0xF5 0xF6 0xF7 0xF8 0xF9),通过IIC接口连接AT24C02 EEPROM存储器,向EEPROM写入数据,再将数据读出后,与原写入数据进行比较,判断读写数据是否相同,将结果发回通讯板,测试结果存储与读取EEPROM数据一致,符合要求。
步骤5.3:USART接口驱动性能测试.按照指标6的测试方法,通过RS232和RS485收发器与通信控制板进行通信,发送数据(00、11、22、33、44、55、66、77、88、99、AA、BB、CC、DD、EE、FF),与通信控制板RS232/485通信,输出数据为(00、11、22、33、44、55、66、77、88、99、AA、BB、CC、DD、EE、FF),收发数据一致无丢包,符合要求。
步骤5.4:SPI接口驱动性能测试。通过SPI接口连接W25Q128 NOR Flash存储器,通讯板发送SPI测试命令,通过SPI总线与FLASH进行通讯,XX32F103微控制器读取板载FlashID 和制造商器件Manufacture device ID,生成数据(This is SPI test)写入W25Q16Flash存储器,再将数据读出后,将结果发回通讯板,再由通讯板将数据发送到上位机显示测试SPI接口输入、输出数据。测试结果见下表2。
步骤5.5:快速I/O端口映射到外部中断输入性能测试。通信控制板产生中断信号,传输至验证板卡的按键中断式快速I/O端口,测试快速I/O端口映射到外部中断输入的响应时间,结果4.5us。
步骤5.6:快速I/O端口输入与输出性能测试。通过快速I/O端口连接LED、按键,测试快速I/O端口输入与输出能力响应时间,结果为4.8us。
步骤5.7:PWM输出性能测试。待测试微控制器PWM输出至通信控制板的捕获端口,通过定时器输出PWM(频率可调),传输至通信控制板的捕获端口,测试PWM输出占空比。测试数据见下表3。
步骤5.8:待测试微控制器通过定时器产生精确时间脉冲,控制LED灯,通过定时器产生精确时间脉冲,控制连接I/O的LED灯亮与熄灭状态,并传输至通信控制板的捕获接口,测试5个周期,周期误差<±1%。
步骤6:其他应用功能验证。
步骤6.1:NVIC中断性能测试。启用待测试微控制器ADC、CAN、DAC、ETH、IIC、SPI、定时器、USART与USB的NVIC中断功能,测试显示数据收发正常,外设NVIC中断通信数据无丢包。
步骤6.2:看门狗性能测试。按钮连接待测试微控制器中断式快速I/O端口输入端,通过检测按钮状态控制看门狗状态,检测LED正常熄灭,系统未重启。
步骤6.3:测试ADC转换性能。待测试微控制器DAC输出电压,传输至待测试微控制器ADC采样,待测试微控制器通过DAC转换器产生模拟信号(+0.5V~+2.0V),传输至待测试微控制器的ADC接口,进行数据采样,按照10位转换精度进行计算,测试结果如下表4。
步骤6.4:CRC循环冗余校验性能测试。由进口微控制随机产生114数组元素,启动待测试微控制器CAN、ETH、UART/USART外部通信的CRC循环冗余校验功能,然后对114数组元素进行CRC校验,数据收发正常,通信无数据丢包,即CRC有效。测试结果如下表5。
步骤6.5:DMA控制器性能测试。通过启用待测试微控制器ADC、DAC、SPI与USART的DMA功能,测试DMA控制器能力,发送源数据包0x1020304~0x90a0b0c,通过检测外设传输数据一致无丢包。步骤7:结果分析。测试结果符合应用场景要求,待测试微控制器在该应用场景下可用,验证结束。
进一步,本发明提供了一种微控制器应用功能性能完整性测试系统,应用于上述提供的微控制器应用功能性能完整性测试方法。系统包括:数据获取模块、数据设置模块、测试环境搭建模块、功能测试模块和验证模块。
数据获取模块,用于获取待测试微控制器的片上资源和应用需求。应用需求基于应用场景确定。
数据设置模块,用于基于待测试微控制器的片上资源和应用需求设置测试指标参数、对比式测试方法和合格判断依据。
测试环境搭建模块,用于基于测试指标参数和对比式测试方法搭建测试环境。
功能测试模块,用于采用测试环境完成待测试微控制器的应用功能性能的测试得到测试结果。
验证模块,用于验证测试结果是否符合合格判断依据得到验证结果。其中,当验证结果为测试结果符合合格判断依据时,输出测试结果。当验证结果为测试结果不符合合格判断依据时,调整应用场景,并返回获取待测试微控制器的片上资源和应用需求的步骤。
此外,上述的提供的微控制器应用功能性能完整性测试方法以计算机程序的形式通过软件功能单元实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机、服务器或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器、随机存取存储器、磁碟或者光盘等各种可以存储程序代码的介质。
本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的系统而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。
本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处。综上所述,本说明书内容不应理解为对本发明的限制。
Claims (7)
1.一种微控制器应用功能性能完整性测试方法,其特征在于,包括:
获取待测试微控制器的片上资源和应用需求;所述应用需求基于应用场景确定;
基于所述待测试微控制器的片上资源和应用需求设置测试指标参数、对比式测试方法和合格判断依据;
基于所述测试指标参数和所述对比式测试方法搭建测试环境;
采用所述测试环境完成待测试微控制器的应用功能性能的测试得到测试结果;
验证所述测试结果是否符合所述合格判断依据得到验证结果;
当所述验证结果为所述测试结果符合所述合格判断依据时,输出所述测试结果;
当所述验证结果为所述测试结果不符合所述合格判断依据时,调整所述应用场景,并返回获取待测试微控制器的片上资源和应用需求的步骤。
2.根据权利要求1所述的微控制器应用功能性能完整性测试方法,其特征在于,基于所述待测试微控制器的片上资源和应用需求设置测试指标参数、对比式测试方法和合格判断依据,具体包括:
通过分析待测试微控制器的片上资源确定待测试微控制器的功能性能;
通过分析应用场景下的功能性能、用法和应用需求确定测试指标参数及合格判据。
3.根据权利要求2所述的微控制器应用功能性能完整性测试方法,其特征在于,测试指标参数包括待测试微控制器的运算应用功能、常规接口驱动性能、中断及看门狗性能、ADC转换性能以及CRC循环冗余校验性能。
4.根据权利要求1所述的微控制器应用功能性能完整性测试方法,其特征在于,所述测试环境包括:上位机、通信控制板和验证板;所述验证板包括待测试微控制器及对应的外设接口;所述上位机采用串口连接所述通信控制板和所述验证板;所述验证板用于实现待测试微控制器的应用功能和接口驱动;所述通信控制板通过所述上位机发送的指令接收测试结果;所述上位机用于基于所述测试结果和所述合格判断依据获得验证结果。
5.根据权利要求4所述的微控制器应用功能性能完整性测试方法,其特征在于,采用所述测试环境完成待测试微控制器的应用功能性能的测试得到测试结果的过程中,包括:
对测试环境进行初始化,上电后所述通信控制板进行机内自检测试。
6.根据权利要求5所述的微控制器应用功能性能完整性测试方法,其特征在于,机内自检测试的项目包括:DMA数据传输测试、看门狗测试、CPU计算操作测试、RAM存取操作测试、CRC数据校验、I2C总线测试和SPI总线测试。
7.一种微控制器应用功能性能完整性测试系统,其特征在于,应用于如权利要求1-6任意一项所述的微控制器应用功能性能完整性测试方法;所述系统包括:
数据获取模块,用于获取待测试微控制器的片上资源和应用需求;所述应用需求基于应用场景确定;
数据设置模块,用于基于所述待测试微控制器的片上资源和应用需求设置测试指标参数、对比式测试方法和合格判断依据;
测试环境搭建模块,用于基于所述测试指标参数和所述对比式测试方法搭建测试环境;
功能测试模块,用于采用所述测试环境完成待测试微控制器的应用功能性能的测试得到测试结果;
验证模块,用于验证所述测试结果是否符合所述合格判断依据得到验证结果;其中,当所述验证结果为所述测试结果符合所述合格判断依据时,输出所述测试结果;当所述验证结果为所述测试结果不符合所述合格判断依据时,调整所述应用场景,并返回获取待测试微控制器的片上资源和应用需求的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311344893.7A CN117076223B (zh) | 2023-10-18 | 2023-10-18 | 一种微控制器应用功能性能完整性测试方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311344893.7A CN117076223B (zh) | 2023-10-18 | 2023-10-18 | 一种微控制器应用功能性能完整性测试方法及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN117076223A true CN117076223A (zh) | 2023-11-17 |
CN117076223B CN117076223B (zh) | 2024-01-23 |
Family
ID=88706575
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311344893.7A Active CN117076223B (zh) | 2023-10-18 | 2023-10-18 | 一种微控制器应用功能性能完整性测试方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117076223B (zh) |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20040193985A1 (en) * | 2003-03-31 | 2004-09-30 | Veerendra Bhora | Autonomous built-in self-test for integrated circuits |
CN110349618A (zh) * | 2019-06-18 | 2019-10-18 | 珠海博雅科技有限公司 | 一种基于FPGA的flash可靠性测试系统及测试方法 |
CN113032200A (zh) * | 2021-04-27 | 2021-06-25 | 深圳芯邦科技股份有限公司 | 一种微控制单元处理方法及相关设备 |
CN113488101A (zh) * | 2021-09-07 | 2021-10-08 | 北京紫光青藤微系统有限公司 | NOR Flash芯片驱动能力的测试系统和电子设备 |
CN114062904A (zh) * | 2021-12-20 | 2022-02-18 | 海光信息技术股份有限公司 | 一种验证板、测试系统及测试方法 |
CN115858270A (zh) * | 2022-11-30 | 2023-03-28 | 中国电子科技集团公司第十五研究所 | 一种国产元器件功能性能应用验证方法及系统 |
CN116245074A (zh) * | 2022-12-15 | 2023-06-09 | 山东产研鲲云人工智能研究院有限公司 | 芯片验证方法、设备及存储介质 |
-
2023
- 2023-10-18 CN CN202311344893.7A patent/CN117076223B/zh active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20040193985A1 (en) * | 2003-03-31 | 2004-09-30 | Veerendra Bhora | Autonomous built-in self-test for integrated circuits |
CN110349618A (zh) * | 2019-06-18 | 2019-10-18 | 珠海博雅科技有限公司 | 一种基于FPGA的flash可靠性测试系统及测试方法 |
CN113032200A (zh) * | 2021-04-27 | 2021-06-25 | 深圳芯邦科技股份有限公司 | 一种微控制单元处理方法及相关设备 |
CN113488101A (zh) * | 2021-09-07 | 2021-10-08 | 北京紫光青藤微系统有限公司 | NOR Flash芯片驱动能力的测试系统和电子设备 |
CN114062904A (zh) * | 2021-12-20 | 2022-02-18 | 海光信息技术股份有限公司 | 一种验证板、测试系统及测试方法 |
CN115858270A (zh) * | 2022-11-30 | 2023-03-28 | 中国电子科技集团公司第十五研究所 | 一种国产元器件功能性能应用验证方法及系统 |
CN116245074A (zh) * | 2022-12-15 | 2023-06-09 | 山东产研鲲云人工智能研究院有限公司 | 芯片验证方法、设备及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN117076223B (zh) | 2024-01-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102023912B (zh) | 休眠唤醒测试系统及方法 | |
US20020183956A1 (en) | Testing compliance of a device with a bus protocol | |
CN103823698A (zh) | Fpga和dsp目标程序的烧写和启动的方法及设备 | |
CN107907814B (zh) | 一种提高芯片量产测试效率的方法 | |
CN113849433B (zh) | 一种总线控制器的执行方法、装置、总线控制器、计算机设备和存储介质 | |
CN111898328B (zh) | 一种基于FPGA的SoC原型验证系统 | |
CN112765082B (zh) | 多主机仲裁方法、装置和可读存储介质 | |
CN107526614B (zh) | Fpga开发板的通信方法 | |
CN113901754B (zh) | 基于fpga的以太网macip的板级验证结构和方法 | |
CN116301880A (zh) | 微控制单元中的指令响应方法、装置、电子设备及介质 | |
US10733121B2 (en) | Latency optimized I3C virtual GPIO with configurable operating mode and device skip | |
CN117076223B (zh) | 一种微控制器应用功能性能完整性测试方法及系统 | |
CN205247378U (zh) | 一种基于单片机的ps2接口转usb接口转换器 | |
CN112269704A (zh) | 一种基于Python的串口调试方法及调试系统 | |
CN203260028U (zh) | 一种基于FPGA的传感器网络SoC原型验证平台 | |
CN100504723C (zh) | 电源的usb数据采集装置 | |
McGrath et al. | Key sensor technology components: hardware and software overview | |
CN109582571A (zh) | 在线调试方法、装置、调试从机、调试主机和系统 | |
CN106406154B (zh) | 侦错系统及其控制方法 | |
CN112462248A (zh) | 一种测试信号输出系统及其使用方法 | |
CN112098740A (zh) | 一种智能综合测试仪器 | |
TWI773325B (zh) | 積體電路、監測系統及其監測方法 | |
CN102929779A (zh) | 一种Linux驱动程序调试方法 | |
CN117217143A (zh) | 基于硬件仿真加速器和fpga芯片的混合验证方法和装置 | |
CN212364515U (zh) | 一种soc芯片自动化qc装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |