CN107783873B - 一种烧录器自动化测试平台的实现方法 - Google Patents

一种烧录器自动化测试平台的实现方法 Download PDF

Info

Publication number
CN107783873B
CN107783873B CN201711181931.6A CN201711181931A CN107783873B CN 107783873 B CN107783873 B CN 107783873B CN 201711181931 A CN201711181931 A CN 201711181931A CN 107783873 B CN107783873 B CN 107783873B
Authority
CN
China
Prior art keywords
file
chip
model
test
burning
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.)
Active
Application number
CN201711181931.6A
Other languages
English (en)
Other versions
CN107783873A (zh
Inventor
裴远红
龙宣佑
秦晨钟
周乾江
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Chipsea Technologies Shenzhen Co Ltd
Original Assignee
Chipsea Technologies Shenzhen Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Chipsea Technologies Shenzhen Co Ltd filed Critical Chipsea Technologies Shenzhen Co Ltd
Priority to CN201711181931.6A priority Critical patent/CN107783873B/zh
Publication of CN107783873A publication Critical patent/CN107783873A/zh
Application granted granted Critical
Publication of CN107783873B publication Critical patent/CN107783873B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/22Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
    • G06F11/2205Detection 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/22Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
    • G06F11/2268Logging of test results
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/22Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
    • G06F11/2273Test methods

Abstract

本发明公开了一种烧录器自动化测试平台的实现方法,该方法所实现自动化测试的步骤如下:点击批处理脚本开始执行;读取烧录测试的tc文件夹,得出.py文件列表;根据hex文件解析出芯片型号;根据芯片型号读取rbf的文件夹,获取需要下载的rbf;执行LoadRbf.exe,下载rbf文件;执行py文件;根据hex、芯片、操作等参数调用CSWriteAPI.dll,同时读取芯片信息配档及烧录属性配档、烧录时序及固件,开始执行;执行完毕,记录统计测试结果。该方法能够快速准确地对测试数据进行处理,测试安全可靠,测试全面,且测试效率高。

Description

一种烧录器自动化测试平台的实现方法
技术领域
本发明属于烧录器技术领域,特别涉及烧录器的自动测试方法。
背景技术
当前烧录器每增加一款芯片的烧录时序,都要进行繁琐的人工测试,具体描述包括如下:
1)烧录环境的搭建,不断地连线、拆线、换烧录芯片
2)手动点击下载、烧录、读取、校验、校准等,造成测试不全面、效率低下等问题;开发人员不能花更多的时间在解决烧录良率,而是频繁的测试新增的时序,造成开发人员的效率低下。
专利申请201710295633.3公开了一种基于FPGA重构技术的CPU测试系统及方法,该系统包括测试机台模块、FPGA模块、开关电路模块以及待测CPU模块;所述测试机台模块与FPGA模块连接;所述FPGA模块与开关电路模块连接;所述开关电路模块与测试机台模块、待测CPU模块连接;所述待测CPU模块与测试机台模块连接。本发明采用FPGA重构技术,上位机输出FPGA重构指令,通过测试机台将可重构FPGA的有限资源重构出国产CPU的多种特定数据传输接口即JTAG接口和维护串口,从而通过对比多种特定数据传输接口的测试结果,更快、更精确地定位新设计CPU存在的问题,为后续CPU批量生产节约时间。然而,该申请通过测试机台将可重构FPGA的有限资源重构出多种特定数据传输接口即JTAG接口和维护串口,实际上在重构过程中,存在大量的数据运算及处理,上述方便并没有提及如何处理数据的过程,仍然具有数据处理效率低,容易出错,测试不全面的问题。
发明内容
基于此,因此本发明的首要目地是提供一种烧录器自动化测试平台的实现方法,该方法能够快速准确地对测试数据进行处理,测试安全可靠,测试全面,且测试效率高。
本发明的另一个目地在于提供一种烧录器自动化测试平台的实现方法,该方法通过PC机、烧录器、FPGA模型三个部件组成可以对烧录型号进行回归测试、遍历测试,解决了烧录器测试不全面、测试困难、效率低下等问题。
为实现上述目的,本发明的技术方案为:
一种烧录器自动化测试平台的实现方法,其特征在于该方法所实现自动化测试的步骤如下:
101、点击批处理脚本开始执行;
102、读取烧录测试的tc文件夹,得出.py文件列表;
103、根据hex文件解析出芯片型号;
104、根据芯片型号读取rbf的文件夹,获取需要下载的rbf;
105、执行LoadRbf.exe,下载rbf文件;
106、执行py文件,执行用户使用烧录器的一些行为和顺序,比如program、readchip、Verify、compare等,也可以配置操作的次数,方便测试如多次program的正确性;当前需要烧录测试的型号,可以添加多款型号,根据读取文型号再获取该芯片的xml信息,就可以根据该芯片的一些特性进行烧录。
107、根据hex、芯片、操作等参数调用CSWriteAPI.dll,同时读取芯片信息配档及烧录属性配档、烧录时序及固件,开始执行;
108、根据返回值判断执行的结果;记录执行结果;
109、判断烧录器操作是否执行完毕,是则往下执行,否则跳到步骤106;
110、判断步骤102中获取py文件列表是否执行完毕,是则往下执行,否则跳到步骤102;
111、执行完毕,记录统计测试结果。
配置芯片的烧录模型:自动化的测试之前需要配置烧录模型,根据输入的hex文件参数得到即将烧录芯片的型号,根据型号重构芯片的烧录模型,类似于重构在线仿真器ICE(In Circuit Emulator),其主要的流程如下:
201、PC发送连接命令;
202、FPGA接收命令;
203、PC等待FPGA是否回应;
204、加载烧录模型时序文件;
205、等待FPGA回应;
206、判断文件是否发送完毕;
207、完成芯片烧录模型的配置;
208、输出信息。
本发明通过上面的方法,实现芯片烧录器自动化测试平台的实现方法,解决解决烧录器人工测试不全面、测试困难、效率低下等问题,大大提高了烧录器测试人员的效率,可以把更多的精力放在烧录良率上。
附图说明
图1是本发明所实施烧录器自动化测试平台框图。
图2是本发明所实施PC与FPGA的结构框图。
图3是本发明所实施烧录器自动化测试流程图。
图4是本发明所实施配置芯片的烧录模型流程图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
图1所示,为本发明所实现的实现芯片烧录器自动化测试平台的实现方法的硬件框图,在图1中,测试平台是分为调试版和自动化版的,调试版是为了方便测试人员做一些烧录的调试,如多次读取芯片,读取校验值做比较等。自动化版是在测试人员编写完测试用例之后,可以实现一键测试所有的烧录的操作。
如图3所示,自动化版的具体步骤描述如下:
101、点击批处理脚本开始执行;
所执行的文件是在后缀为.bat的批处理文件,主要是为了方便测试人员一键测试,提高工作效率;这个脚本文件主要是调用python.exe运行已经编写好的测试用例,主要是python的源文件,可以带参数,一次批量执行多个测试用例。
102、读取烧录测试的tc文件夹,得出.py文件列表;
tc(TestCase)文件夹主要存放测试用例,统计这个文件夹的测试用例的个数,用来循环遍历执行所有的测试用例。
103、根据hex文件解析出芯片型号;
hex文件夹是用于存放已经编译好的烧录文件,hex文件包含了芯片型号等信息,通过存放的规律读出相应的芯片型号。
104、根据芯片型号读取rbf的文件夹,获取需要下载的rbf;
rbf文件夹存放后缀为.rbf的文件,这些文件主要用来重构芯片的烧录模型,通过在FPGA下载不同的rbf文件,统一芯片模型的烧录接口,就可用于测试烧录不同的芯片。
105、执行LoadRbf.exe,下载rbf文件;
主要目的是配置芯片的烧录模型,这在接下来的配置芯片烧录模型的模块中有详细的描述。
106、执行py文件,执行用户使用烧录器的一些行为和顺序,比如program、readchip、Verify、compare等,也可以配置操作的次数,方便测试如多次program的正确性;当前需要烧录测试的型号,可以添加多款型号,根据读取文型号再获取该芯片的xml信息,就可以根据该芯片的一些特性进行烧录。
107、根据hex、芯片、操作等参数调用CSWriteAPI.dll,同时读取芯片信息配档及烧录属性配档、烧录时序及固件,开始执行;
CSWriteAPI.dll模块主要的作用是提供PC上位机与烧录器下位机硬件通信的API接口,提供了丰富的函数如program(烧录)、read chip(读取)、Verify(校验)、compare(比较)等函数。本平台主要的作用是测试烧录时序的正确性,烧录器时序的开发人员在编写完时序之后,就可以把时序文件放到指定的文件夹,待编写测试用例使用测试平台就可以测试烧录时序的正确性。
108、根据返回值判断执行的结果;
根据CSWriteAPI.dll模块的函数返回值查看每一个烧录操作的结果,
9)记录执行结果;
Python语言具有强大的日志模块,在脚本执行的过程中,可以使用文件把所有在命令行窗口的信息随时地记录出来,在测试烧录时序的时候,可以根据日志模块的统计信息迅速查找出执行错误的地方。
110、判断烧录器操作是否执行完毕,是则往下执行,否则跳到步骤106;
111、判断步骤102中获取py文件列表是否执行完毕,是则往下执行,否则跳到步骤102;
112、执行完毕,记录统计测试结果。
如图2所示是本发明提供的配置芯片的烧录模型框图,根据输入的hex文件参数得到即将烧录芯片的型号,根据型号重构芯片的烧录模型,类似于重构在线仿真器ICE(InCircuit Emulator)。配置烧录模型是为了自动化的测试,本平台可以用于一次性测试不同的芯片型号,为了实现这一目的,需要统一烧录的接口,当接口完全一致之后,烧录就不需要切换线路。Rbf文件主要用来重构芯片的烧录模型,通过在FPGA下载不同的rbf文件,就可用于测试烧录不同的芯片。
本发明提出的烧录模型框图如2所示,使用FPGA作为芯片烧录模型,USB芯片作为通信,从而实现模拟待烧录芯片模型。利用不同的RBF时序文件实现配置不同的芯片的烧录模型。
如图4所示是本发明提供的配置芯片的模型的流程图,实现的具体步骤如下:
201、PC发送连接命令,判断FPGA是否存在;等待FPGA回传连接指令;
202、FPGA接收PC的命令并解析;
203、PC等待FPGA的回应,如果未回应则输出错误;
204、下发芯片烧录模型的时序文件,由于协议数据包大小的限制,时序文件需要分为若干包下发;
205、等待FPGA回应,
若出错,输出相应的错误信息;如果有应答,接下来判断时序文件是否发送完毕,
206、判断时序文件是否已经发送完毕;
207、完成芯片烧录模型的配置;
根据协议判断是否完成,若完成PC则收到FPGA相应的完成指令;
208、打印并记录输出的信息。
主要记录重构芯片的型号、文件名、路径、相关的版本号等。
芯片烧录模型的配置解决了烧录时序开发人员在测试不同型号的芯片时需要手动拔插接口,通过模型就可以固定烧录接口,实现全自动化的测试。大大提高了烧录器时序开发者的效率。
因此,本发明通过上面的方法,实现芯片烧录器自动化测试平台的实现方法,解决解决烧录器人工测试不全面、测试困难、效率低下等问题,大大提高了烧录器测试人员的效率,可以把更多的精力放在烧录良率上。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。

Claims (7)

1.一种烧录器自动化测试平台的实现方法,其特征在于该方法所实现自动化测试的步骤如下:
101、点击批处理脚本开始执行;
102、读取烧录测试的tc文件夹,得出.py文件列表;
103、根据hex文件解析出芯片型号;
104、根据芯片型号读取rbf的文件夹,获取需要下载的rbf;
105、执行LoadRbf.exe,下载rbf文件;
106、执行py文件;
107、根据hex、芯片、操作参数调用CSWriteAPI.dll,同时读取芯片信息配档及烧录属性配档、烧录时序及固件,开始执行;
108、根据返回值判断执行的结果;
109、判断烧录器操作是否执行完毕,是则往下执行,否则跳到步骤106;
110、判断步骤102中获取py文件列表是否执行完毕,是则往下执行,否则跳到步骤102;
111、执行完毕,记录统计测试结果。
2.如权利要求1所述的烧录器自动化测试平台的实现方法,其特征在于所述步骤101中,所执行的文件是在后缀为.bat的批处理文件,这个脚本文件是调用python.exe运行已经编写好的测试用例,测试用例是python的源文件,脚本文件通过传递的参数一次批量执行多个测试用例。
3.如权利要求2所述的烧录器自动化测试平台的实现方法,其特征在于所述步骤102中,tc文件夹存放测试用例,统计这个文件夹的测试用例的个数,用来循环遍历执行所有的测试用例。
4.如权利要求3所述的烧录器自动化测试平台的实现方法,其特征在于所述步骤104中,rbf文件夹存放后缀为.rbf的文件,这些文件用来重构芯片的烧录模型,通过在FPGA下载不同的rbf文件,统一芯片模型的烧录接口,就可用于测试烧录不同的芯片。
5.如权利要求4所述的烧录器自动化测试平台的实现方法,其特征在于所述步骤106中,执行py文件,配置当前需要烧录测试的型号,添加多款型号,根据读取烧录测试的型号再获取该芯片的xml信息,就可以根据该芯片的特性进行烧录。
6.如权利要求5所述的烧录器自动化测试平台的实现方法,其特征在于所述步骤108中,进一步包括有记录执行结果;通过Python语言进行日志记录,在脚本执行的过程中,使用文件把所有在命令行窗口的信息随时地记录出来,在测试烧录时序的时候,根据日志模块的统计信息迅速查找出执行错误的地方。
7.如权利要求1所述的烧录器自动化测试平台的实现方法,其特征在于自动化的测试之前需要配置烧录模型,根据输入的hex文件参数得到即将烧录芯片的型号,根据型号重构芯片的烧录模型,其流程如下:
201、PC发送连接命令;
202、FPGA接收命令;
203、PC等待FPGA的回应,如果未回应则输出错误;
204、下发芯片烧录模型的时序文件,由于协议数据包大小的限制,时序文件需要分为若干包下发;
205、等待FPGA回应,
206、判断时序文件是否已经发送完毕;
207、完成芯片烧录模型的配置;
根据协议判断是否完成,若完成PC则收到FPGA相应的完成指令;
208、输出信息。
CN201711181931.6A 2017-11-23 2017-11-23 一种烧录器自动化测试平台的实现方法 Active CN107783873B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201711181931.6A CN107783873B (zh) 2017-11-23 2017-11-23 一种烧录器自动化测试平台的实现方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201711181931.6A CN107783873B (zh) 2017-11-23 2017-11-23 一种烧录器自动化测试平台的实现方法

Publications (2)

Publication Number Publication Date
CN107783873A CN107783873A (zh) 2018-03-09
CN107783873B true CN107783873B (zh) 2021-08-06

Family

ID=61430134

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201711181931.6A Active CN107783873B (zh) 2017-11-23 2017-11-23 一种烧录器自动化测试平台的实现方法

Country Status (1)

Country Link
CN (1) CN107783873B (zh)

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109062586A (zh) * 2018-08-08 2018-12-21 上海庆科信息技术有限公司 烧录系统及其客户端的烧录管理方法及装置
CN110928556A (zh) * 2018-09-19 2020-03-27 株洲中车时代电气股份有限公司 轨道车辆用程序自动烧录方法及装置、测试方法及系统
CN111273155A (zh) * 2020-02-13 2020-06-12 佛山普瑞威尔科技有限公司 一种芯片烧录检测方法、系统和计算机可读存储介质
CN111596203B (zh) * 2020-05-29 2021-05-07 大连卓志创芯科技有限公司 一种芯片测试装置、平台及方法
CN113312224B (zh) * 2021-06-08 2022-09-13 合肥磐芯电子有限公司 一种用于测试otp型mcu及其测试方法
CN113377389A (zh) * 2021-06-30 2021-09-10 西安诺瓦星云科技股份有限公司 数据的处理方法、装置、计算机可读存储介质及处理器
CN113590478B (zh) * 2021-07-17 2023-08-29 郑州威科姆华大北斗导航科技有限公司 一种卫星接收模块的自动化烧录测试装置和方法
CN113282442B (zh) * 2021-07-22 2021-11-02 翱捷科技(深圳)有限公司 芯片量产自动化校准预设固件高速下载的方法及系统
CN115389912B (zh) * 2022-08-26 2023-08-29 无锡众享科技有限公司 一种otp mcu芯片检测装置及检测方法

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5954827A (en) * 1996-12-23 1999-09-21 Micron Electronics, Inc. Method and system for indicating computer status
TWI528285B (zh) * 2011-12-20 2016-04-01 緯創資通股份有限公司 製造系統及韌體燒錄方法
CN106502640A (zh) * 2016-09-19 2017-03-15 芯海科技(深圳)股份有限公司 一种解释自定义脚本并烧录的方法
CN107329889B (zh) * 2017-06-05 2021-01-19 芯海科技(深圳)股份有限公司 一种c编译器自动化测试的方法

Also Published As

Publication number Publication date
CN107783873A (zh) 2018-03-09

Similar Documents

Publication Publication Date Title
CN107783873B (zh) 一种烧录器自动化测试平台的实现方法
CN105068929A (zh) 测试脚本生成方法和装置、测试方法、测试装置以及测试系统
CN109189479B (zh) 一种用于处理器指令集的并行自动化验证方法
CN103365770A (zh) 移动终端软件测试系统及软件测试方法
CN107329889B (zh) 一种c编译器自动化测试的方法
CN103412817B (zh) 自动化测试脚本脱机调试方法及系统
CN107633867B (zh) 基于ft4222的spi闪存测试系统及方法
US7228262B2 (en) Semiconductor integrated circuit verification system
CN110632499A (zh) 基于测试对象的测试向量生成方法及存储介质
JP2022013885A (ja) 試験測定システム及び被試験デバイス分析方法
CN109101680B (zh) 基于GitLab-CI的FPGA原型自动验证方法及系统
CN114138667A (zh) 一种soc芯片驱动程序自动化测试系统及测试方法
CN104503898A (zh) 一种嵌入式软件调试参数实时查看的方法及系统
Li et al. ADAutomation: An activity diagram based automated GUI testing framework for smartphone applications
CN105740147A (zh) 智能终端自动化接口测试方法
US10592703B1 (en) Method and system for processing verification tests for testing a design under test
CN114019938A (zh) 一种微控制器芯片通信类接口测试系统及其方法
CN116090380B (zh) 数字集成电路验证的自动化方法及装置、存储介质和终端
CN103176903B (zh) MapReduce分布式系统程序的测试方法及设备
CN115684896B (zh) 芯片可测性设计测试方法、测试平台及其生成方法及装置
CN115656791B (zh) 芯片可测性设计的测试方法及测试平台
CN115684894B (zh) 芯片可测性设计的测试方法及测试平台
CN110955605A (zh) 一种cpu验证单步动态执行的方法
CN116069635A (zh) Soc系统的测试方法、装置、计算机设备及存储介质
CN115577673A (zh) 一种面向5g基带芯片系统管脚的高效验证方法

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