CN107783873A - 一种烧录器自动化测试平台的实现方法 - Google Patents
一种烧录器自动化测试平台的实现方法 Download PDFInfo
- Publication number
- CN107783873A CN107783873A CN201711181931.6A CN201711181931A CN107783873A CN 107783873 A CN107783873 A CN 107783873A CN 201711181931 A CN201711181931 A CN 201711181931A CN 107783873 A CN107783873 A CN 107783873A
- Authority
- CN
- China
- Prior art keywords
- burning
- chip
- files
- model
- test
- 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
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/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
-
- 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/2268—Logging of test results
-
- 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
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)
- Debugging And Monitoring (AREA)
- Test And Diagnosis Of Digital Computers (AREA)
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文件,执行用户使用烧录器的一些行为和顺序,也可以配置操作的次数,方便测试如多次program的正确性;当前需要烧录测试的型号,可以添加多款型号,根据读取文型号再获取该芯片的xml信息,就可以根据该芯片的一些特性进行烧录。
6.如权利要求5所述的烧录器自动化测试平台的实现方法,其特征在于所述步骤108中,进一步包括有记录执行结果;通过Python语言进行日志记录,在脚本执行的过程中,可以使用文件把所有在命令行窗口的信息随时地记录出来,在测试烧录时序的时候,可以根据日志模块的统计信息迅速查找出执行错误的地方。
7.如权利要求1所述的烧录器自动化测试平台的实现方法,其特征在于自动化的测试之前需要配置烧录模型,根据输入的hex文件参数得到即将烧录芯片的型号,根据型号重构芯片的烧录模型,其主要的流程如下:
201、PC发送连接命令;
202、FPGA接收命令;
203、PC等待FPGA是否回应;
204、加载烧录模型时序文件;
205、等待FPGA回应;
206、判断文件是否发送完毕;
207、完成芯片烧录模型的配置;
208、输出信息。
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 true CN107783873A (zh) | 2018-03-09 |
CN107783873B 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) |
Cited By (9)
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 | 佛山普瑞威尔科技有限公司 | 一种芯片烧录检测方法、系统和计算机可读存储介质 |
CN111596203A (zh) * | 2020-05-29 | 2020-08-28 | 大连卓志创芯科技有限公司 | 一种芯片测试装置、平台及方法 |
CN113282442A (zh) * | 2021-07-22 | 2021-08-20 | 翱捷科技(深圳)有限公司 | 芯片量产自动化校准预设固件高速下载的方法及系统 |
CN113312224A (zh) * | 2021-06-08 | 2021-08-27 | 合肥磐芯电子有限公司 | 一种用于测试otp型mcu及其测试方法 |
CN113377389A (zh) * | 2021-06-30 | 2021-09-10 | 西安诺瓦星云科技股份有限公司 | 数据的处理方法、装置、计算机可读存储介质及处理器 |
CN113590478A (zh) * | 2021-07-17 | 2021-11-02 | 郑州威科姆华大北斗导航科技有限公司 | 一种卫星接收模块的自动化烧录测试装置和方法 |
CN115389912A (zh) * | 2022-08-26 | 2022-11-25 | 无锡众享科技有限公司 | 一种otp mcu芯片检测装置及检测方法 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6049896A (en) * | 1996-12-23 | 2000-04-11 | Micron Electronics, Inc. | Method and system for indicating computer status |
US20130159986A1 (en) * | 2011-12-20 | 2013-06-20 | Wistron Corporation | Manufacturing system and firmware burning method |
CN106502640A (zh) * | 2016-09-19 | 2017-03-15 | 芯海科技(深圳)股份有限公司 | 一种解释自定义脚本并烧录的方法 |
CN107329889A (zh) * | 2017-06-05 | 2017-11-07 | 芯海科技(深圳)股份有限公司 | 一种c编译器自动化测试的方法 |
-
2017
- 2017-11-23 CN CN201711181931.6A patent/CN107783873B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6049896A (en) * | 1996-12-23 | 2000-04-11 | Micron Electronics, Inc. | Method and system for indicating computer status |
US20130159986A1 (en) * | 2011-12-20 | 2013-06-20 | Wistron Corporation | Manufacturing system and firmware burning method |
CN106502640A (zh) * | 2016-09-19 | 2017-03-15 | 芯海科技(深圳)股份有限公司 | 一种解释自定义脚本并烧录的方法 |
CN107329889A (zh) * | 2017-06-05 | 2017-11-07 | 芯海科技(深圳)股份有限公司 | 一种c编译器自动化测试的方法 |
Cited By (13)
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 | 佛山普瑞威尔科技有限公司 | 一种芯片烧录检测方法、系统和计算机可读存储介质 |
CN111596203A (zh) * | 2020-05-29 | 2020-08-28 | 大连卓志创芯科技有限公司 | 一种芯片测试装置、平台及方法 |
CN111596203B (zh) * | 2020-05-29 | 2021-05-07 | 大连卓志创芯科技有限公司 | 一种芯片测试装置、平台及方法 |
CN113312224A (zh) * | 2021-06-08 | 2021-08-27 | 合肥磐芯电子有限公司 | 一种用于测试otp型mcu及其测试方法 |
CN113312224B (zh) * | 2021-06-08 | 2022-09-13 | 合肥磐芯电子有限公司 | 一种用于测试otp型mcu及其测试方法 |
CN113377389A (zh) * | 2021-06-30 | 2021-09-10 | 西安诺瓦星云科技股份有限公司 | 数据的处理方法、装置、计算机可读存储介质及处理器 |
CN113590478A (zh) * | 2021-07-17 | 2021-11-02 | 郑州威科姆华大北斗导航科技有限公司 | 一种卫星接收模块的自动化烧录测试装置和方法 |
CN113590478B (zh) * | 2021-07-17 | 2023-08-29 | 郑州威科姆华大北斗导航科技有限公司 | 一种卫星接收模块的自动化烧录测试装置和方法 |
CN113282442A (zh) * | 2021-07-22 | 2021-08-20 | 翱捷科技(深圳)有限公司 | 芯片量产自动化校准预设固件高速下载的方法及系统 |
CN115389912A (zh) * | 2022-08-26 | 2022-11-25 | 无锡众享科技有限公司 | 一种otp mcu芯片检测装置及检测方法 |
CN115389912B (zh) * | 2022-08-26 | 2023-08-29 | 无锡众享科技有限公司 | 一种otp mcu芯片检测装置及检测方法 |
Also Published As
Publication number | Publication date |
---|---|
CN107783873B (zh) | 2021-08-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107783873A (zh) | 一种烧录器自动化测试平台的实现方法 | |
US8997034B2 (en) | Emulation-based functional qualification | |
US8271950B2 (en) | Test generation from captured user interface status | |
CN102130951B (zh) | 一种服务器及其可编程逻辑器件的远程升级方法 | |
US8281280B2 (en) | Method and apparatus for versatile controllability and observability in prototype system | |
CN105302706B (zh) | 应用程序测试方法和装置 | |
US20090320002A1 (en) | Method and system for testing and analyzing user interfaces | |
CN106503308A (zh) | 一种基于uvm的can控制器ip验证平台 | |
TW201433802A (zh) | 在中央控制器電腦系統上用以支援協定獨立元件測試之圖形使用者介面實施態樣技術 | |
US8904321B1 (en) | System and method for automatically generating coverage constructs and constraint solver distributions | |
CN102549443A (zh) | 可编程协议发生器 | |
CN103186444A (zh) | 一种性能测试方法、测试平台及测试机 | |
Spensky et al. | Conware: Automated modeling of hardware peripherals | |
CN107451026A (zh) | 一种基于sv语言的串口通用验证平台及方法 | |
CN115098400B (zh) | 一种基于sva形式化验证的fpga软件仿真测试环境建立方法 | |
CN112732508A (zh) | 一种基于Zynq的可配置通用IO测试系统及测试方法 | |
CN110515755A (zh) | 接口功能验证方法、装置、设备及计算机可读存储介质 | |
US20200074040A1 (en) | Hierarchical expression coverage clustering for design verification | |
CN107451058A (zh) | 一种软件开发方法和装置 | |
Li et al. | ADAutomation: An activity diagram based automated GUI testing framework for smartphone applications | |
CN114138667A (zh) | 一种soc芯片驱动程序自动化测试系统及测试方法 | |
CN111090039A (zh) | Fpga功能测试方法及装置 | |
WO2012068411A1 (en) | Method and system for testing software on programmable devices | |
CN210016474U (zh) | 配网测试控制设备及系统 | |
US9202004B1 (en) | System, method, and computer program product for ensuring that each simulation in a regression is running a unique configuration |
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 |