CN112799888A - 芯片及其开发工具的测试系统、测试方法及装置 - Google Patents
芯片及其开发工具的测试系统、测试方法及装置 Download PDFInfo
- Publication number
- CN112799888A CN112799888A CN202011511928.8A CN202011511928A CN112799888A CN 112799888 A CN112799888 A CN 112799888A CN 202011511928 A CN202011511928 A CN 202011511928A CN 112799888 A CN112799888 A CN 112799888A
- Authority
- CN
- China
- Prior art keywords
- test
- flow
- module
- chip
- case
- 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
Images
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/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/2289—Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing by configuration test
-
- 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/26—Functional testing
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)
- Tests Of Electronic Circuits (AREA)
Abstract
本发明公开了一种芯片及其开发工具的测试系统、测试方法及装置。该系统包括:功能配置模块,用于配置待测对象的配置信息,配置信息至少包括:测试用例类型,待测对象为芯片或芯片的开发工具;用例筛选模块,用于根据测试用例类型筛选与待测对象对应的测试用例;流程处理模块,用于生成测试流程信息,测试流程信息至少包括测试流程和测试流程属性,测试流程属性用于表示是否执行测试流程中的任意一个主流程或任意一个子流程;自动化检测模块,用于使用筛选的测试用例按照测试流程对待测对象进行测试,根据测试流程属性对待测对象进行自动化测试。本发明解决了现有技术中对于FPGA芯片及其开发工具的测试效率较低的技术问题。
Description
技术领域
本发明涉及FPGA检测技术领域,具体而言,涉及一种芯片及其开发工具的测试系统、测试方法及装置。
背景技术
FPGA(Field-Programmable Gate Array,现场可编程门阵列)是在PAL、GAL、CPLD等可编程器件基础上进一步发展的产物,其因具有集成度高、逻辑资源丰富以及可重配置等特点而得到广泛应用。
随着FPGA应用越来越广泛,用户对FPGA开发工具的功能要求越来越高,在FPGA开发工具更新(包括软件更新或新增FPGA器件)时,需要保证已有功能的兼容性以及新软件功能和新器件功能的正确,则对FPGA资源进行板级验证来检测软件和器件功能的正确性,目前FPGA开发工具的功能测试依靠人工完成,导致需要耗费大量的人力和时间资源,测试效率较低;如果对FPGA开发工具的功能测试仅做随机检测,可能会出现漏洞,检测结果不可靠。
针对上述解决了现有技术中对于FPGA芯片及其开发工具的测试效率较低的技术问题,目前尚未提出有效的解决方案。
发明内容
本发明实施例提供了一种芯片及其开发工具的测试系统、测试方法及装置,以至少解决现有技术中对于FPGA芯片及其开发工具的测试效率较低的技术问题。
根据本发明实施例的一个方面,提供了一种芯片及其开发工具的测试系统,包括:功能配置模块,用于配置待测对象的配置信息,其中,配置信息至少包括:测试用例类型,待测对象为芯片或芯片的开发工具;用例筛选模块,用于根据测试用例类型筛选与待测对象对应的测试用例;流程处理模块,用于生成测试流程信息,其中,测试流程信息至少包括测试流程和测试流程属性,测试流程包括至少一个主流程和主流程对应的子流程,测试流程属性用于表示是否执行测试流程中的任意一个主流程或任意一个子流程;自动化检测模块,用于使用筛选的测试用例按照测试流程对待测对象进行测试,根据测试流程属性对待测对象进行自动化测试。
进一步地,用例筛选模块包括用例器件映射表和约束器件映射表,其中,用例器件映射表用于记录器件与测试用例的支持关系,约束器件映射表用于记录器件与约束位置的关系;用例筛选模块还用于对待测对象不支持的测试用例进行标记,在测试用例筛选时将标记的测试用例筛除,并对有约束文件且测试流程需要约束文件的测试用例在进行测试用例筛选时,根据约束器件映射表修改约束文件中的约束位置。
进一步地,自动化检测模块还用于对筛选出的多个测试用例执行测试流程,并生成对应的测试结果,其中,当任意一个测试流程的测试结果为测试错误,则禁止执行后续的测试流程。
进一步地,上述系统还包括:检测报告生成模块,检测报告生成模块用于将测试结果转换为预设格式,其中,测试结果包括如下至少一项:测试用例总数量、错误测试用例数量、错误流程以及错误测试用例放置路径。
进一步地,上述功能配置模块还用于进行资源配置、器件配置和错误测试用例处理方式配置,其中,资源配置包括串行资源配置和并行资源配置,器件配置包括串行器件配置和并行器件配置,错误测试用例处理方式配置包括保留错误测试用例和删除错误测试用例。
进一步地,上述自动化检测模块还用于根据资源配置并行或串行的使用筛选的测试用例进入测试流程,并根据器件配置并行或串行的对多个待测对象基于测试流程属性进行自动化测试。
进一步地,上述系统还包括:语音提示模块,语音提示模块用于对如下至少一项信息进行语音提示:配置信息、测试流程和检测结束的结束信息。
进一步地,上述测试流程包括主流程和子流程,主流程和子流程以树形结构记录在映射表中,映射表通过可视化界面展示在上位机的控制界面上,其中,当主流程的测试流程属性为不执行的情况下,输入主流程的子流程的测试流程属性均为不执行。
根据本发明实施例的另一方面,还提供了一种芯片及其开发工具的测试方法,包括:获取待测对象的配置信息和测试流程信息,其中,配置信息至少包括测试用例类型,待测对象为芯片或芯片的开发工具,测试流程信息至少包括测试流程和测试流程属性,测试流程属性用于表示是否执行测试流程;根据测试用例类型筛选与待测对象对应的测试用例;使用筛选的测试用例进入测试流程,根据测试流程属性对待测对象进行自动测试。
根据本发明实施例的另一方面,还提供了一种芯片及其开发工具的测试装置,包括:获取模块,用于获取待测对象的配置信息和测试流程信息,其中,配置信息至少包括测试用例类型,待测对象为芯片或芯片的开发工具,测试流程信息至少包括测试流程和测试流程属性,测试流程属性用于表示是否执行测试流程;筛选模块,用于根据测试用例类型筛选与待测对象对应的测试用例;测试模块,用于使用筛选的测试用例进入测试流程,根据测试流程属性对待测对象进行自动测试。
在本发明实施例中,提出了包含功能配置模块、用例筛选模块、流程处理模块和自动化检测模块的芯片及其开发工具的测试系统,可根据待测对象的配置信息自动筛选出测试用例并按照预设的检测流程自动执行检测,实现了FPGA开发工具的兼容性和软件功能、板级验证等多种功能的自动检测,减少了人力和时间资源来准备测试用例,提高了工作效率,解决了现有技术中对于FPGA芯片及其开发工具的测试效率较低的技术问题。
附图说明
此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
图1是根据本发明实施例的一种芯片及其开发工具的测试系统的示意图;
图2是根据本发明实施例的一种可选的芯片及其开发工具的测试系统的示意图;
图3是根据本发明实施例的一种可选的芯片及其开发工具的测试方法的流程图;
图4是根据本发明实施例的一种可选的芯片及其开发工具的测试方法的流程图;
图5是根据本发明实施例的一种芯片及其开发工具的测试方法的流程图;
图6是根据本发明实施例的一种芯片及其开发工具的测试装置的示意图。
具体实施方式
为了使本技术领域的人员更好地理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分的实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。
需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
实施例1
根据本发明实施例,提供了一种芯片及其开发工具的测试系统的实施例,图1为根据本发明实施例的芯片及其开发工具的测试系统的示意图,如图1所示,该系统包括:功能配置模块11,用于配置待测对象的配置信息,其中,配置信息至少包括:测试用例类型,待测对象为芯片或芯片的开发工具;用例筛选模块12,用于根据测试用例类型筛选与待测对象对应的测试用例;流程处理模块13,用于生成测试流程信息,其中,测试流程信息至少包括测试流程和测试流程属性,测试流程包括至少一个主流程和主流程对应的子流程,测试流程属性用于表示是否执行测试流程中的任意一个主流程或任意一个子流程;自动化检测模块14,用于使用筛选的测试用例按照测试流程对待测对象进行测试,根据测试流程属性对待测对象进行自动化测试。
功能配置模块可配置待测对象的测试用例类型,测试用例类型用于根据不同的检测需求为待测对象配置不同的用例,可以对待测对象同时配置一组或多组测试用例,系统可根据用例类型按照其设定的先后顺序进行检测。上述测试用例类型可以由用户预设,使得在对待测对象进行测试用例类型配置时,只需要在多个预设的测试用例类型中进行选择即可完成配置。例如:测试用例类型可以为软核流程用例、查找表覆盖位置用例等。
需要说明的是,上述待测对象为芯片或芯片的开发工具,上述测试系统既可以用于测试FPGA芯片,也可以用于测试FPGA开发工具。功能配置模块可根据需求进行扩展,除了配置测试用例类型和器件外,还可以根据用户需求配置其他功能,使其可适用于不同的操作系统以对不同的器件或者软件功能进行自动化检测,。
用例筛选模块可以根据测试用例类型和待测对象智能筛选测试用例,以及根据待测对象修改用,例如,在配置信息配置为器件1的情况下,用例筛选模块筛选出与器件1匹配的测试用例。测试用例可以由用户预设并存储于用例筛选模块,在使用时可根据筛选条件自动调用,无需用户针对测试器件准备测试用例,节省了人力和时间资源。
流程处理模块通过设置流程映射表,配置各流程的测试流程属性。每个流程执行或不执行通过测试流程属性决定,不论是主流程还是子流程均具有对应的测试流程属性,使得每个一个流程均具有是否在测试过程中执行的明确状态。具体的,流程映射表包含每个流程的标识以及对应的测试流程属性。
自动化检测模块可根据流程处理模块中流程映射表中记录的每个流程的标识以及对应的测试流程属性,对用例筛选模块筛选出的所有测试用例按照预设顺序执行流程检测,且对每个流程均记录相应的检测结果。
上述功能配置模块、用例筛选模块、流程处理模块可以通过上位机实现,具体的,用户可通过上位机的可视化界面进行待测对象的配置信息的设置,测试用例的修改、测试流程信息的新增和修改等。
本实施例提出了包含功能配置模块、用例筛选模块、流程处理模块和自动化检测模块的芯片及其开发工具的测试系统,可根据待测对象的配置信息自动筛选出测试用例并按照预设的检测流程自动执行检测,实现了FPGA开发工具的兼容性和软件功能、板级验证等多种功能的自动检测,减少了人力和时间资源来准备测试用例,提高了工作效率,解决了现有技术中对于FPGA芯片及其开发工具的测试效率较低的技术问题。
作为一种可选的实施例,用例筛选模块包括用例器件映射表和约束器件映射表,其中,用例器件映射表用于记录器件与测试用例的支持关系,约束器件映射表用于记录器件与约束位置的关系;用例筛选模块还用于对待测对象不支持的测试用例进行标记,在测试用例筛选时将标记的测试用例筛除,并对有约束文件且测试流程需要约束文件的测试用例在进行测试用例筛选时,根据约束器件映射表修改约束文件中的约束位置。
依据用例器件映射表和约束器件映射表,在对器件进行用例筛选时,用例筛选模块一方面对不支持的用例进行标记,在检测到标记信号时将不支持的用例筛除,另一方面根据约束器件映射表修改约束文件中的约束位置以适应当前器件,使得不同器件在测试时可使用相同的测试用例,极大减少测试用例数量,减少人力和时间资源准备用例,提高工作效率。
作为一种可选的实施例,自动化检测模块还用于对筛选出的多个测试用例执行测试流程,并生成对应的测试结果,其中,当任意一个测试流程的测试结果为测试错误,则禁止执行后续的测试流程。
例如,自动化检测模块根据筛选出的测试用例,依次进行软核生成流程、综合流程、布局布线流程,全部流程执行完成后生成测试结果:软核生成流程通过、综合流程通过、布局布线流程通过,如果综合流程的测试结果为测试错误,则禁止执行后续的布局布线流程检测。
作为一种可选的实施例,上述系统还包括:检测报告生成模块,检测报告生成模块用于将测试结果转换为预设格式,其中,测试结果包括如下至少一项:测试用例总数量、错误测试用例数量、错误流程以及错误测试用例放置路径。
预设格式可以为表格或者网页格式的文档,以方便用户查看各类信息。当待测对象检测完成之后,检测报告生成模块将自动化检测模块输出的测试结果整理成表格或者网页格式的文档,并且检测报告生成模块在生成报告之后,可根据预设的错误用例处理方式对错误用例进行处理,例如,对错误用例进行保留或删除处理。
作为一种可选的实施例,上述功能配置模块还用于进行资源配置、器件配置和错误测试用例处理方式配置,其中,资源配置包括串行资源配置和并行资源配置,器件配置包括串行器件配置和并行器件配置,错误测试用例处理方式配置包括保留错误测试用例和删除错误测试用例。
资源配置可以理解为对流程执行顺序的配置,例如,流程处理模块设置有多个流程时,串行资源配置为多个流程根据预设的顺序依次执行检测,并行资源配置为多个流程同时执行检测。
器件配置支持同时配置多个器件,可理解为多个器件的测试优先级设置,例如,待测对象包括器件1和器件2,在器件配置为并行的情况下,器件1对应的测试用例的检测流程和器件2对应的测试用例的检测流程同时进行自动化测试;在器件配置为串行的情况下,则根据预设顺序分别对器件1对应的测试用例的检测流程和器件2对应的测试用例的检测流程进行检测。
错误测试用例处理方式,可根据检测目的方便选择对将错误用例的处理。
作为一种可选的实施例,上述自动化检测模块还用于根据资源配置并行或串行的使用筛选的测试用例进入测试流程,并根据器件配置并行或串行的对多个待测对象基于测试流程属性进行自动化测试。
在功能配置模块完成了对资源、器件、测试用例类型的配置、流程处理模块设定了各流程的测试流程属性后,自动化检测模块自动根据上述配置执行并输出测试结果,实现了芯片及其开发工具的自动化测试,提高了测试效率。
需要说明的是,当流程处理模块的流程映射表包含板测流程时,需要bit下载且生成对比文件,检测生成文件与golden文件是否一致,生成文件根据FPGA开发工具的功能生成,比如通过在线逻辑分析仪生成波形文件。
作为一种可选的实施例,上述系统还包括:语音提示模块,语音提示模块用于对如下至少一项信息进行语音提示:配置信息、测试流程和检测结束的结束信息。
语音提示模块可以向用户反馈流程检测的状态,具体的,在检测开始时,可根据功能配置模块的各项配置信息及流程处理模块的流程映射表中的检测流程,语音提示模块发出语音提示,告知用户各项配置以便确认配置信息和测试流程是否正确;在一个器件检测完成后,语音提示模块进行语音提示结束信息,告知用户当前器件或者开发工具检测完成。如果还有其他待检测器件,在流程配置包含板测(系统连接开发板的情况)时,则在开始检测新器件时,语音提示需要更换芯片,并且流程检测暂时中止,且在预设的间隔时间后再次进行语音提示,直到语音提示模块接收到继续检测信号之后,检测继续执行。
作为一种可选的实施例,上述测试流程包括主流程和子流程,主流程和子流程以树形结构记录在映射表中,映射表通过可视化界面展示在上位机的控制界面上,其中,当主流程的测试流程属性为不执行的情况下,输入主流程的子流程的测试流程属性均为不执行。
各流程的测试流程属性包括每个流程的执行状态,映射表可通过可视化界面进行操作,方便用户添加或删除流程或者修改流程的执行状态;每个流程执行或不执行通过流程执行状态决定,主流程的测试流程属性优先级高于该主流程对应的子流程测试流程属性,例如,当主流程的测试流程属性设置为不执行时,其对应的子流程既使设置为执行,但是根据主流程的测试流程属性,对应的子流程在实际检测中并不会执行。
图2为根据本发明实施例中一种可选的芯片及其开发工具的测试系统的示意图,如图2所示,该系统包括功能配置模块21,流程处理模块22,智能反馈模块23,用例智能筛选修改模块24,自动化检测模块25,检测报告生成模块26。通过各个模块的协作配合,可以自动化检测多种功能(比如,FPGA软核支持了新功能,FPGA开发工具界面增加了新选项)。通过配置原来的软核生成流程,可以自动化检测FPGA开发工具的兼容性,保证开发工具的质量;通过配置设计开发流程,可以自动化检测FPGA软件的功能是否正确;通过配置板测流程可以实现自动化板级验证,可用于芯片筛选等,提高板级验证效率,并且该系统有很好的可扩展性和系统移植性,可根据检测需求进行功能扩展以及移植到不同的操作系统。
根据图2芯片及其开发工具的测试系统,进行芯片或者芯片的开发工具检测时执行的流程如下:
步骤S201,功能配置模块21配置用例类型、器件等。
步骤S202,流程处理模块22设置流程映射表,配置各流程的执行状态。
步骤S203,智能反馈模块23根据功能配置模块21进行语音播报。
步骤S204,用例智能筛选修改模块24根据用例类型和器件智能筛选修改用例。
步骤S205,将筛选并修改完成的用例放置在自动化检测模块25,根据流程映射表中的流程执行状态执行流程检测,对每个流程均记录检测结果。
步骤S206,如果检测多个器件,当一个器件检测完成之后,检测报告生成模块26会生成检测报告,然后智能反馈模块23会语音提示检测完成;如果流程配置不包括板测,则重复步骤S202~步骤S204;如果流程配置包括板测,则会提示更换芯片,检测暂时中止,芯片更换完成之后,向系统发送继续检测信号,检测继续执行,重复步骤S202~步骤S204。
图3为根据图2的芯片及其开发工具的测试系统的可选的芯片的测试方法的流程图,功能配置模块中,资源配置为串行方式,测试用例类型为查找表位置覆盖用例,流程包括综合流程、布局布线流程和板测流程(当测试对象为芯片时,测试流程可以包括板测流程),上述系统连接FPGA开发板或FPGA芯片,待测对象包括器件1和器件2,如图3所示,该方法包括:
步骤S301,配置用例类型为查找表位置覆盖用例。
步骤S302,设置测试流程信息包括综合流程、布局布线流程和板测流程,流程配置资源配置方式为串行方式。
步骤S303,将器件1和器件2的器件配置设置为串行器件配置。
步骤S304,器件遍历检测,对每个器件进行依次访问,用于检测全部器件是否都进行了测试,如果是,则结束本次测试;如果否,则进入步骤S305进行器件检测。
步骤S305,判断当前器件是否为根据串行器件配置的顺序预设的第一个进行检测的器件,如果是,则进入步骤S309开始自动检测流程;如果否,则进入步骤S306语音提示更换芯片,并暂停检测。
步骤S307,检测是否接收到继续检测信号,如果是,则进入步骤S309开始自动检测流程;如果否,则进入步骤S308开始计时,当达到预设的时间时,返回步骤S305再次检测当前器件是否为上述第一个进行检测的器件。
步骤S309,开始检测流程,语音提示检测器件、流程信息和测试用例类型。
步骤S310,根据当前器件筛选并修改测试用例。
步骤S311,对测试用例进行遍历,判断是否完成遍历,如果否,则根据预设的流程信息依次执行检测流程;如果是,则进入步骤S316。
步骤S312,执行检测综合流程,并判断是否通过,如果通过则进入步骤S313继续检测;如果没有通过,则停止检测并返回步骤S311。
步骤S313,执行检测布局布线流程,并判断是否通过,如果通过则进入步骤S314;如果没有通过,则停止检测并返回步骤S311。
步骤S314,bit下载,生成对比文件。
步骤S315,执行检测对比文件流程,并判断是否通过,作为流程检测的最后一个流程,无论该流程是否通过检测,均返回步骤S311。
步骤S316,生成检测报告,处理用例。
步骤S317,语音提示当前的器件完成检测,返回步骤S304,遍历所有器件是否完成检测,如果全部器件均完成了检测,则结束本次测试流程。
图4为根据图2的芯片及其开发工具的测试系统的可选的芯片的开发工具的测试方法的流程图,功能配置模块中,测试用例类型为软核流程用例,流程包括软核生成、综合和布局布线,由于流程不包括板测,上述系统不需要连接FPGA开发板或FPGA芯片,待测对象包括器件1和器件2,器件配置方式为并行方式,如图4所示,该方法包括:
步骤S401,配置用例类型为软核流程用例。
步骤S402,设置测试流程信息包括软核生成流程、综合流程和布局布线流程,流程配置资源配置方式为串行方式。
步骤S403,将器件1和器件2的器件配置设置为并行器件配置,根据并行器件配置,同时进入步骤S404和步骤S405,并行对器件1和器件2按照配置用例类型和测试流程信息进行自动测试,需要说明的是,步骤S406-S413对器件1和器件2同时并行执行。
步骤S406,开始检测流程,智能反馈模块语音提示检测器件、流程信息和测试用例类型。
步骤S407,根据当前器件筛选并修改测试用例。
步骤S408,对测试用例进行遍历,判断是否完成遍历,如果否,则根据预设的流程信息依次执行检测流程;如果是,则进入步骤S412。
步骤S409,执行检测软核生成流程,并判断是否通过,如果通过则进入步骤S410继续检测;如果没有通过,则停止检测并返回步骤S408。
步骤S410,执行检测综合流程,并判断是否通过,如果通过则进入步骤S411;如果没有通过,则停止检测并返回步骤S408。
步骤S411执行检测对比文件布局布线流程,并判断是否通过,作为流程检测的最后一个流程,无论该流程是否通过检测,均返回步骤S408。
步骤S412,生成检测报告,处理用例。
步骤S413,语音提示当前的器件完成检测,结束本次测试流程。
实施例2
根据本发明实施例,提供了一种芯片及其开发工具的测试方法实施例,需要说明的是,在附图的流程图示出的步骤可以在诸如一组计算机可执行指令的计算机系统中执行,并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。
图5是根据本发明实施例的芯片及其开发工具的测试方法的流程图,如图5所示,该方法包括如下步骤:
步骤S501,获取待测对象的配置信息和测试流程信息,其中,配置信息至少包括测试用例类型,待测对象为芯片或芯片的开发工具,测试流程信息至少包括测试流程和测试流程属性,测试流程属性用于表示是否执行测试流程。
测试用例类型用于根据不同的检测需求为待测对象配置不同的用例,可以对待测对象同时配置一组或多组测试用例,系统可根据用例类型按照其设定的先后顺序进行检测。上述测试用例类型可以由用户预设,使得在对待测对象进行测试用例类型配置时,只需要在多个预设的测试用例类型中进行选择即可完成配置。例如:测试用例类型可以为软核流程用例、查找表覆盖位置用例等。
测试流程信息包含流程映射表,流程映射表包含每个流程的标识以及对应的测试流程属性。每个流程执行或不执行通过测试流程属性决定,不论是主流程还是子流程均具有对应的测试流程属性,使得每个一个流程均具有是否在测试过程中执行的明确状态。
步骤S502,根据测试用例类型筛选与待测对象对应的测试用例。
根据测试用例类型和待测对象智能筛选测试用例,以及根据待测对象修改用,例如,在配置信息配置为器件1的情况下,用例筛选模块筛选出与器件1匹配的测试用例。测试用例可以由用户预设并存储于用例筛选模块,在使用时可根据筛选条件自动调用,无需用户针对测试器件准备测试用例,节省了人力和时间资源。
步骤S503,使用筛选的测试用例进入测试流程,根据测试流程属性对待测对象进行自动测试。
具体的,根据流程映射表中记录的每个流程的标识以及对应的测试流程属性,对用例筛选模块筛选出的所有测试用例按照预设顺序执行流程检测,且对每个流程均记录相应的检测结果。
本实施例通过获取待测对象的配置信息和测试流程信息,可根据待测对象的配置信息自动筛选出测试用例并按照预设的检测流程自动执行检测,实现了FPGA开发工具的兼容性和软件功能、板级验证等多种功能的自动检测,减少了人力和时间资源来准备测试用例,提高了工作效率,解决了现有技术中对于FPGA芯片及其开发工具的测试效率较低的技术问题。
实施例3
根据本发明实施例的另一方面,还提供了一种芯片及其开发工具的测试装置,图6是根据本发明实施例的芯片及其开发工具的测试装置的示意图,如图6所示,包括:获取模块61,用于获取待测对象的配置信息和测试流程信息,其中,配置信息至少包括测试用例类型,待测对象为芯片或芯片的开发工具,测试流程信息至少包括测试流程和测试流程属性,测试流程属性用于表示是否执行测试流程;筛选模块62,用于根据测试用例类型筛选与待测对象对应的测试用例;测试模块63,用于使用筛选的测试用例进入测试流程,根据测试流程属性对待测对象进行自动测试。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
在本发明的上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。
在本申请所提供的几个实施例中,应该理解到,所揭露的技术内容,可通过其它的方式实现。其中,以上所描述的装置实施例仅仅是示意性的,例如所述单元的划分,可以为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,单元或模块的间接耦合或通信连接,可以是电性或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可为个人计算机、服务器或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、移动硬盘、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。
Claims (10)
1.一种芯片及其开发工具的测试系统,其特征在于,包括:
功能配置模块,用于配置待测对象的配置信息,其中,所述配置信息至少包括:测试用例类型,所述待测对象为所述芯片或所述芯片的开发工具;
用例筛选模块,用于根据所述测试用例类型筛选与所述待测对象对应的测试用例;
流程处理模块,用于生成测试流程信息,其中,所述测试流程信息至少包括测试流程和测试流程属性,所述测试流程包括至少一个主流程和所述主流程对应的子流程,所述测试流程属性用于表示是否执行所述测试流程中的任意一个主流程或任意一个子流程;
自动化检测模块,用于使用筛选的测试用例按照所述测试流程对所述待测对象进行测试,根据所述测试流程属性对所述待测对象进行自动化测试。
2.根据权利要求1所述的系统,其特征在于,所述用例筛选模块包括用例器件映射表和约束器件映射表,其中,所述用例器件映射表用于记录器件与测试用例的支持关系,所述约束器件映射表用于记录器件与约束位置的关系;
所述用例筛选模块还用于对所述待测对象不支持的测试用例进行标记,在测试用例筛选时将标记的测试用例筛除,并对有约束文件且测试流程需要约束文件的测试用例在进行测试用例筛选时,根据所述约束器件映射表修改约束文件中的约束位置。
3.根据权利要求1所述的系统,其特征在于,所述自动化检测模块还用于对筛选出的多个测试用例执行所述测试流程,并生成对应的测试结果,其中,当任意一个测试流程的测试结果为测试错误,则禁止执行后续的测试流程。
4.根据权利要求3所述的系统,其特征在于,所述系统还包括:
检测报告生成模块,所述检测报告生成模块用于将所述测试结果转换为预设格式,其中,所述测试结果包括如下至少一项:测试用例总数量、错误测试用例数量、错误流程以及错误测试用例放置路径。
5.根据权利要求3所述的系统,其特征在于,所述功能配置模块还用于进行资源配置、器件配置和错误测试用例处理方式配置,其中,所述资源配置包括串行资源配置和并行资源配置,所述器件配置包括串行器件配置和并行器件配置,所述错误测试用例处理方式配置包括保留错误测试用例和删除错误测试用例。
6.根据权利要求5所述的系统,其特征在于,所述自动化检测模块还用于根据所述资源配置并行或串行的使用筛选的测试用例进入所述测试流程,并根据所述器件配置并行或串行的对多个所述待测对象基于所述测试流程属性进行自动化测试。
7.根据权利要求1所述的系统,其特征在于,所述系统还包括:
语音提示模块,所述语音提示模块用于对如下至少一项信息进行语音提示:所述配置信息、所述测试流程和检测结束的结束信息。
8.根据权利要求1所述的系统,其特征在于,所述测试流程包括主流程和子流程,所述主流程和所述子流程以树形结构记录在映射表中,所述映射表通过可视化界面展示在上位机的控制界面上,其中,当所述主流程的测试流程属性为不执行的情况下,输入所述主流程的子流程的测试流程属性均为不执行。
9.一种芯片及其开发工具的测试方法,其特征在于,包括:
获取待测对象的配置信息和测试流程信息,其中,所述配置信息至少包括测试用例类型,所述测试流程信息至少包括测试流程和测试流程属性,所述测试流程属性用于表示是否执行所述测试流程,所述待测对象为所述芯片或所述芯片的开发工具;
根据所述测试用例类型筛选与所述待测对象对应的测试用例;
使用筛选的测试用例进入测试流程,根据所述测试流程属性对所述待测对象进行自动测试。
10.一种芯片及其开发工具的测试装置,其特征在于,包括:
获取模块,用于获取待测对象的配置信息和测试流程信息,其中,所述配置信息至少包括测试用例类型,所述测试流程信息至少包括测试流程和测试流程属性,所述测试流程属性用于表示是否执行所述测试流程,所述待测对象为所述芯片或所述芯片的开发工具;
筛选模块,用于根据所述测试用例类型筛选与所述待测对象对应的测试用例;
测试模块,用于使用筛选的测试用例进入测试流程,根据所述测试流程属性对所述待测对象进行自动测试。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011511928.8A CN112799888B (zh) | 2020-12-18 | 2020-12-18 | 芯片及其开发工具的测试系统、测试方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011511928.8A CN112799888B (zh) | 2020-12-18 | 2020-12-18 | 芯片及其开发工具的测试系统、测试方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112799888A true CN112799888A (zh) | 2021-05-14 |
CN112799888B CN112799888B (zh) | 2022-04-01 |
Family
ID=75807047
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011511928.8A Active CN112799888B (zh) | 2020-12-18 | 2020-12-18 | 芯片及其开发工具的测试系统、测试方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112799888B (zh) |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20140201712A1 (en) * | 2013-01-15 | 2014-07-17 | International Business Machines Corporation | Integration of a software content space with test planning and test case generation |
CN107766185A (zh) * | 2017-09-25 | 2018-03-06 | 广东欧珀移动通信有限公司 | 测试系统和方法 |
CN108804300A (zh) * | 2017-04-27 | 2018-11-13 | 龙芯中科技术有限公司 | 自动化测试方法及系统 |
CN111737134A (zh) * | 2020-06-23 | 2020-10-02 | 湖南国科微电子股份有限公司 | 一种芯片测试方法、装置、电子设备以及存储介质 |
CN112083320A (zh) * | 2020-09-09 | 2020-12-15 | 中国航空工业集团公司雷华电子技术研究所 | Fpga测试方法、测试板、装置、设备和存储介质 |
-
2020
- 2020-12-18 CN CN202011511928.8A patent/CN112799888B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20140201712A1 (en) * | 2013-01-15 | 2014-07-17 | International Business Machines Corporation | Integration of a software content space with test planning and test case generation |
CN108804300A (zh) * | 2017-04-27 | 2018-11-13 | 龙芯中科技术有限公司 | 自动化测试方法及系统 |
CN107766185A (zh) * | 2017-09-25 | 2018-03-06 | 广东欧珀移动通信有限公司 | 测试系统和方法 |
CN111737134A (zh) * | 2020-06-23 | 2020-10-02 | 湖南国科微电子股份有限公司 | 一种芯片测试方法、装置、电子设备以及存储介质 |
CN112083320A (zh) * | 2020-09-09 | 2020-12-15 | 中国航空工业集团公司雷华电子技术研究所 | Fpga测试方法、测试板、装置、设备和存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN112799888B (zh) | 2022-04-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102495789B (zh) | 一种自动化测试方法和设备 | |
CN105094783A (zh) | 安卓应用稳定性测试的方法及装置 | |
CN104679658A (zh) | Web页面的测试方法和系统 | |
CN111078482A (zh) | 通讯导航设备测试系统、方法、设备和可读存储介质 | |
CN101383871A (zh) | 一种网元配置的实现方法及装置 | |
CN112035376B (zh) | 一种生成覆盖率报告的方法、装置、设备及存储介质 | |
CN114003451B (zh) | 一种接口测试方法、装置、系统及介质 | |
CN106598834A (zh) | Ui测试方法及装置 | |
CN109726830A (zh) | 设备巡检方法、装置、电子设备及存储介质 | |
CN110659197B (zh) | 应用程序的测试用例生成方法、装置和软件测试系统 | |
CN106557308A (zh) | 一种软件持续集成方法及装置 | |
CN103913672B (zh) | 一种卫星低频接口自动化测试系统 | |
CN112799888B (zh) | 芯片及其开发工具的测试系统、测试方法及装置 | |
JP2007226780A (ja) | テストデータから欠落データオブジェクトを導出するための方法およびシステム | |
CN109684213A (zh) | 一种测试方法、装置及存储介质 | |
CN105760300A (zh) | 一种stk/utk业务的自动化测试方法及测试系统 | |
CN106776284B (zh) | 一种软件测试方法以及系统 | |
CN115391231B (zh) | 一种接口自动化测试方法 | |
CN115987821A (zh) | 网关路由测试方法及装置 | |
CN100442729C (zh) | 网络协议一致性测试中被测系统的配置方法 | |
CN111061244A (zh) | 一种配电主站监控系统的自动化测试方法 | |
CN113378534A (zh) | 基于表单模型的自动生成特种设备检验报告的方法及系统 | |
CN115437903A (zh) | 接口测试方法、装置、设备、存储介质及程序 | |
CN114401032B (zh) | 面向卫星通信综测仪的测试方法及系统 | |
CN111427731B (zh) | 一种自动化拆分码流及验证码流的测试方法和系统 |
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 |