CN111930613B - 待测芯片的测试用例生成方法、装置、电子设备以及介质 - Google Patents

待测芯片的测试用例生成方法、装置、电子设备以及介质 Download PDF

Info

Publication number
CN111930613B
CN111930613B CN202010675578.2A CN202010675578A CN111930613B CN 111930613 B CN111930613 B CN 111930613B CN 202010675578 A CN202010675578 A CN 202010675578A CN 111930613 B CN111930613 B CN 111930613B
Authority
CN
China
Prior art keywords
test
interconnect
interconnection
interconnection line
weight
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
CN202010675578.2A
Other languages
English (en)
Other versions
CN111930613A (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.)
Shenzhen Pango Microsystems Co Ltd
Original Assignee
Shenzhen Pango Microsystems 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 Shenzhen Pango Microsystems Co Ltd filed Critical Shenzhen Pango Microsystems Co Ltd
Priority to CN202010675578.2A priority Critical patent/CN111930613B/zh
Publication of CN111930613A publication Critical patent/CN111930613A/zh
Application granted granted Critical
Publication of CN111930613B publication Critical patent/CN111930613B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/362Software debugging
    • G06F11/3648Software debugging using additional hardware
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/3668Software testing
    • G06F11/3672Test management
    • G06F11/3684Test management for test design, e.g. generating new test cases
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/30Circuit design
    • G06F30/34Circuit design for reconfigurable circuits, e.g. field programmable gate arrays [FPGA] or programmable logic devices [PLD]

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Quality & Reliability (AREA)
  • Evolutionary Computation (AREA)
  • Geometry (AREA)
  • Tests Of Electronic Circuits (AREA)

Abstract

本申请实施例公开了一种待测芯片的测试用例生成方法、装置、电子设备以及介质,涉及测试技术领域。该方法包括:应用于待测芯片,所述待测芯片包括多个互连线,该方法包括:获取所述多个互连线中每个互连线对应的互连线权重;基于所述多个互连线确定多个测试路径;基于所述每个互连线的互连线权重从所述多个测试路径中确定目标测试路径;基于所述目标测试路径生成测试用例。本申请能够自动生成测试用例,避免了人工规划测试用例而花费的过多时间成本和人力成本,极大程度上提高了测试用例的生成效率,进而也提高了FPGA芯片的测试效率。

Description

待测芯片的测试用例生成方法、装置、电子设备以及介质
技术领域
本申请涉及测试技术领域,更具体地,涉及一种待测芯片的测试用例生成方法、装置、电子设备以及介质。
背景技术
随着集成电路的高速发展,现场可编程逻辑门阵列(Field Programmable GateArray,FPGA)芯片作为一种可编程逻辑器件,在短短二十多年中从电子设计的外围器件逐渐演变为数字系统的核心,伴随着半导体工艺技术的进步,FPGA芯片的设计技术也取得了飞跃式发展及突破。由于FPGA芯片具有高密度、高保密、低功耗、低成本、系统集成、动态可重构等特点,已经在通信、航天、消费电子等领域得到广泛应用。
因此,能够有效地对FPGA芯片进行测试变得有尤为重要,然而,目前针对FPGA芯片的测试方式往往是测试人员手动设置测试用例来对FPGA芯片进行测试,因此存在效率低下的问题。
发明内容
鉴于上述问题,本申请提出了一种待测芯片的测试用例生成方法、装置、电子设备以及介质,以解决上述问题。
第一方面,本申请实施例提供了一种待测芯片的测试用例生成方法,该方法应用于待测芯片,所述待测芯片包括多个互连线,该方法包括:获取所述多个互连线中每个互连线对应的互连线权重;基于所述多个互连线确定多个测试路径;基于所述每个互连线的互连线权重从所述多个测试路径中确定目标测试路径;基于所述目标测试路径生成测试用例。
第二方面,一种待测芯片的测试用例生成装置,应用于待测芯片,所述待测芯片包括多个互连线,所述待测芯片的测试用例生成装置包括:互连线权重获取模块、测试路径生成模块、目标测试路径确定模块以及测试用例生成模块,其中,互连线权重获取模块用于获取所述多个互连线中每个互连线对应的互连线权重;测试路径生成模块用于基于所述多个互连线确定多个测试路径;目标测试路径确定模块用于基于所述每个互连线的互连线权重从所述多个测试路径中确定目标测试路径;测试用例生成模块,用于基于所述目标测试路径生成测试用例。
第三方面,本申请实施例提供了一种电子设备,包括一个或多个处理器、存储器、以及一个或多个程序,其中一个或多个程序被存储在存储器中并被配置为由一个或多个处理器执行,一个或多个程序配置用于执行第一方面的实施例的测试用例生成方法。
第四方面,本申请实施例提供了一种计算机可读取存储介质,计算机可读取存储介质中存储有程序代码,程序代码可被处理器调用执行第一方面的实施例的待测芯片的测试用例生成方法。
本申请实施例提供的待测芯片的测试用例生成方法、装置、电子设备以及介质,通过获取所述多个互连线中每个互连线对应的互连线权重,并基于所述多个互连线确定多个测试路径,再基于所述每个互连线的互连线权重从所述多个测试路径中确定目标测试路径,最后基于所述目标测试路径生成测试用例,从而能够实现对待测芯片的测试用例的自动生成,避免了人工设定测试用例会花费过多的时间成本和人力成本的问题,进而提高对待测芯片的测试效率。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1示出了根据本申请实施例提供的应用环境示意图。
图2示出了根据本申请一个实施例提供的待测芯片的测试用例生成方法的流程示意图。
图3示出了根据本申请实施例提供的测试路径选取示意图。
图4示出了根据本申请另一个实施例提供的待测芯片的测试用例生成方法的流程示意图。
图5示出了根据本申请图4所示的待测芯片的测试用例生成方法中步骤S220的提供一个实施例的方法流程图。
图6示出了根据本申请又一个实施例提供的待测芯片的测试用例生成方法的流程示意图。
图7示出了根据本申请图6所示的待测芯片的测试用例生成方法中步骤S340的提供一个实施例的方法流程图。
图8示出了根据本申请再一个实施例提供的待测芯片的测试用例生成方法的流程示意图。
图9示出了本申请实施例提供的待测芯片的测试用例生成装置的功能模块图。
图10示出了本申请实施例提供的电子设备的结构框图。
图11是本申请实施例的用于保存或者携带实现根据本申请实施例的待测芯片的测试用例生成方法的程序代码的存储介质。
具体实施方式
为了使本技术领域的人员更好地理解本申请方案,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述。
随着集成电路的高速发展,特别是FPGA芯片的飞速发展,FPGA芯片也被越来越广泛地应用于各个领域中。
因此,在FPGA芯片生产过程中需要进行多种测试,以保证其使用的稳定性。在众多测试中,对FPGA芯片的连通性测试尤为重要。连通性测试,具体是指检测芯片互连线连通性的测试。其中,互连线(Arc)的连通性完整有效是FPGA芯片内部资源可测性的基础,若任何互连线中存在的故障都可能导致电路设计的配置失效。
一般而言,连通性测试是通过检测测试用例的位流结果,来验证信号能否正确无误地在互连线间传递。因此连通性测试有效与否的关键是采用准确、合适的测试用例。实际应用中,连通性测试需要用例尽可能地覆盖所有Arc,所以其测试用例又叫做Arc测试用例。进一步地,在FPGA芯片内部资源中,SRB是最多最重要的布线资源。为保证FPGA芯片出货的质量,需要对所有的SRB互连线进行连通性测试。而为完成SRB互连线连通性测试准备的测试用例,就是SRB Routing Arc测试用例。因此,SRB Routing Arc测试用例的重要性也不言而喻。理论上,SRB Routing Arc测试用例要用尽量少的用例个数覆盖所有的SRB RoutingArc(以下可称Arc)。
然而,目前对Arc测试用例设定都是通过人工规划的方式实现,测试人员需要根据Arc种类分别编写用例来覆盖所有Arc,每个用例要尽量覆盖芯片上的所有同类Arc转换关系,并根据走向、跨度、通道下标等的不同来进行分类,不论芯片大小,都至少需要150个Arc测试用例。在测试用例的规划过程中,为尽量覆盖更多同类Arc,每个用例都要根据实际芯片结构详细规划走线路径,十分麻烦,还有测试用例在编写时容易出错,且出错时较难定位,因此测试人员在编写测试用例时会非常繁琐,另外,由于Arc数量较多、很难测全,所以人工规划Arc测试用例往往需要耗费大量的人力成本和时间成本。
可见,目前通过人工规划来得到Arc测试用例的方式存在效率低下、测试成本较高的问题。
因此,针对于上述问题,发明人提出了本申请实施例中的待测芯片的测试用例生成方法、装置、电子设备以及介质,通过对FPGA芯片中的每一条Arc赋予权重,再根据权重选择测试路径,从而可以基于测试路径自动生成测试用例,避免了人工规划测试用例而花费的过多时间成本和人力成本,极大程度上提高了测试用例的生成效率,进而也提高了FPGA芯片的测试效率。
下面对本申请实施例的待测芯片的测试用例生成方法的应用环境进行介绍。
请参阅图1,图1示出了本申请实施例提供的自动化Arc测试用例生成装置(ArcTest case auto Generator,ATG)的模块结构图,如图1所示,该自动化Arc测试用例生成装置可以包括报表路径集合、控制模块、用例生成模块以及工程集合。
其中,控制模块可以分别与报表路径集合、用例生成模块以及工程集合连接以实现数据的传输。其中,用例生成模块还可以与工程集合连接。
其中,报表路径集合中可以存储有待测芯片的报表路径等相关参数,控制模块可以从报表路径集合中读取待测芯片的报表路径,也可以向报表路径集合中写入报表路径。其中,控制模块可以调用用例生成模块生成测试用例、以及生成覆盖率报表等参数。用例生成模块可以将生成的测试用例传输到工程集合中。控制模块还能够读取工程集合中的所有报表,以及对工程集合中的工程。可选地,控制模块还能够用于进行参数设置、覆盖率统计、控制测试用例生成等。需要说明的是,本实施例中的覆盖率可以为Arc覆盖率。
请参阅图2,图2示出了本申请一个实施例提供的待测芯片的测试用例生成方法流程图,其中,该方法可以应用于图1中的自动化Arc测试用例生成装置来实现待测芯片的测试用例生成,具体可以应用于自动化Arc测试用例生成装置中的控制模块,其中待测芯片可以包括多个互连线,具体地,待测芯片可以包括多个SRB,其中,每个SRB包括多个端口,多个端口中的任意两个端口可以形成一条互连线(以下可称Arc),该待测芯片的测试用例生成方法可以包括如下步骤:
S110,获取多个互连线中每个互连线对应的互连线权重。
其中,互连线的互连线权重可以用来表征该互连线的被选来组成测试路径的概率,其中,该测试路径用于构建测试用例。可选地,当互连线的互连线权重越大时,该互连线被选中的概率越低。
在一些实施方式中,自动化Arc测试用例生成装置中的控制模块可以从互连线权重数据库中获取待测芯片的每个互连线对应的互连线权重。
其中,互连线权重数据库可以预先存储多个FPGA芯片、多个互连线、以及多个互连线权重之间的对应关系,具体地,一个FPGA芯片可以对应多个互连线,多个互连线中的每个互连线可以分别对应一个互连线权重。
作为一种示例,多个FPGA芯片、多个互连线、以及多个互连线权重之间的对应关系可以如表1所示:
表1
从表1可知,若待测芯片为芯片A,那么可以根据表1获取芯片A的多个互连线中每个互连线对应的互连线权重,即A1、A2、A3。从而能够通过查表的方式快速、有效地获取待测芯片对应的互连线权重。
其中,互连线权重数据库可以存储在自动化Arc测试用例生成装置本地,具体地可以控制模块可以连接有存储器,互连线权重数据库可以存储在该存储器中。可选地,互连线权重数据库也可以存储在于自动化Arc测试用例生成装置通信连接的云端服务器中,以供自动化Arc测试用例生成装置调用,具体地,控制模块可以连接有通信模块,通过通信模块可以实现云端服务器和控制模块之间的数据传输。
S120,基于多个互连线确定多个测试路径。
在一些实施方式中,位于不同SRB的多个互连线相互组合能够形成不同的测试路径。作为一种示例,如图3所示,待测芯片可以包括两个SRB(SRB1和SRB2),从图3中可以得知,SRB1包括互连线1、互连线2以及互连线3,SRB2中包括互连线4、互连线5以及互连线6。其中,在基于多个互连线确定多个测试路径时,互连线1和互连线4形成一条测试路径,也可是互连线1和互连线6形成一条测试路径,还可以是互连线2和互连线4形成一条测试路径,以此类推,两个SRB中的6个互连线总共可以确定出9条不同的测试路径。
S130,基于每个互连线的互连线权重从多个测试路径中确定目标测试路径。
在一些实施方式中,可以选择待测芯片中每个SRB中互连线权重最小的互连线组成的测试路径作为目标测试路径。
作为一种示例,请再次参阅图3,假设图3中互连线1对应的互连线权重为1、互连线2对应的互连线权重为2、互连线3对应的互连线权重为3、互连线4对应的互连线权重为0、互连线5对应的互连线权重为1、互连线6对应的互连线权重为3。则可以选出SRB1中互连线权重最小的互连线权重为1和SRB2中互连线权重最小的互连线权重为4,然后将互连线1和互连线4连接,以形成目标测试路径,由于当互连线的互连线权重越大时,该互连线被选中的概率越低,即互连线权重和选中概率呈负相关,所以选取出的互连线1和互连线4均为对应的SRB中选中概率最大的互连线,再以选中概率最大的互连线连接形成目标测试路径,从而能够准确有效地从多个测试路径中确定出目标测试路径。
S140,基于目标测试路径生成测试用例。
其中,控制模块在确定目标测试路径以后,可以根据目标测试路径构建用例并生成位流,以自动生成测试用例。
在实际应用中,ATG中对目标测试用例进行路径规划时,可以从输出入手反向查找测试路径。具体地,ATG可以从用于输出的OBUF(out buffer)开始,基于Arc权重进行反向查找,在合适的位置插入信号验证模块和信号产生模块,最后构建网表、生成用例。在此过程中,用例生成模块可以由控制模块根据事先设置好的参数来自行控制测试用例的生成、筛选过程。如果用例生成过程中,测试人员对现有用例生成结果不满意时,可以随时终止生成过程、调整参数后重新运行ATG。
可以理解的是,要基于Arc权重来自动生成目标测试路径,就需要解决实际Arc与Arc权重的相互转换问题。具体可以通过Arc的身份标识(Identity document,Id)和SRB的坐标构成的32位标识符arc_flag来识别芯片上的所有Arc,进而实现Arc与其权重的相互转换。其中,每个用例文件夹下生成一个Arc报表文件,通过arc_flag来记录此用例中的Arc使用结果。反过来,装置则通过读取Arc报表文件来更新总的Arc使用情况。
可见,在本实施例中,通过获取所述多个互连线中每个互连线对应的互连线权重,并基于所述多个互连线确定多个测试路径,再基于所述每个互连线的互连线权重从所述多个测试路径中确定目标测试路径,最后基于所述目标测试路径生成测试用例,从而能够根据Arc权重来选择布线路径、构建用例、生成位流,从而达到自动生成Arc测试用例、尽可能多的覆盖未测试Arc的目的。不仅可以提高Arc测试用例的生成效率,还可以把开发人员从枯燥重复的工作中解放出来,解决人工规划Arc测试用例的过程枯燥重复、效率较低、需要耗费大量的人力成本和时间成本的问题,进而也提高了对FGPA芯片的测试效率。
请参阅图4,图4示出了本申请另一个实施例提供的待测芯片的测试用例生成方法流程图,其中,该方法可以应图1中的自动化Arc测试用例生成装置来实现待测芯片的测试用例生成,该方法可以包括如下步骤:
S210,获取多个互连线中每个互连线的历史使用次数。
在一些实施方式中,控制模块可以从已有的针对待测芯片的测试用例集合中提取出待测芯片的每个互连线的使用次数,从而得到每个互连线的历史使用次数。
可选地,控制模块可以获取指定时间段内的每个互连线的使用次数作为历史使用次数,例如可以获取近一天中每个互连线的使用次数作为历史使用次数。
S220,基于每个互连线的历史使用次数,生成每个互连线对应的互连线权重。
在一些实施方式中,可以通过互连线的历史使用次数计算出该互连线的互连线权重。其中,互连线的历史使用次数可以与该互连线的互连线权重呈正相关。
作为一种示例,例如当互连线的历史使用次数等于初始值时,例如历史使用次数为10次时,此时该互连线的互连线权重也可以为初始值,例如50%。当历史使用次数每增加一次时,互连线的权重可以增加5%,反之,当历史使用次数每减少一次时,互连线的权重可以减小5%。因此,当历史使用次数为0次时,此时的互连线权重为最小,为0。当历史使用次数为20次时,此时的互连线权重为最大,为100%。从而能够通过互连线的历史使用次数准确地计算出该互连线的互连线权重。
在另一些实施方式中,可以预先建立历史使用次数和互连线权重的映射关系表,其中,映射关系表可以通过多个历史使用次数和多个互连线权重建立一一对应的映射关系后获得,然后再根据历史使用次数和该映射关系表找出与历史使用次数对应的互连线权重。作为一种示例,如表2所示:
表2
从表2可知,当历史使用次数为3时,可以从表2中查找到对应的互连线权重为3%。以此类推,通过查表的方式,可以快速地根据历史使用次数查找到对应的互连线权重。
可选地,在一些历史使用次数和互连线权重的映射关系表中,一个互连线权重可以对应多个历史使用次数。作为一种示例如表3所示:
表3
历史使用次数(次) 互连线权重
2~6 5%
8~12 10%
从表3可知,当历史使用次数为3时,可以从表2中查找到对应的互连线权重为5%。以此类推,通过查表的方式,可以更快速地根据历史使用次数查找到对应的互连线权重,从而提高互连线权重生成的准确性。
在一些实施方式中,如图5所示,S220可以包括如下步骤:
S221,获取每个互连线对应的代价系数。
可选地,互连线对应的代价系数与互连线的历史使用次数呈正相关。
在一些实施方式中,可以根据互连线的类型来确定该互连线对应的代价系数。作为一种示例,互连线的类型可以包括连接内部区域的互连线和连接外部区域的互连线,其中,在SRB内部区域走线的互连线可以预先对应第一代价系数,在SRB外部区域走线的互连线可以预先对应第二代价系数,其中,第一代价系数大于第二代价系数。当获取每个互连线对应的代价系数时,可以根据互连线的走线区域确定互连线的类型,再根据互连线的类型确定找到对应的代价系数。
在另一些实施方式中,可以根据互连线的历史使用次数来获取代价系数。作为一种示例,当历史使用次数大于使用次数阈值时,可以确定该互连线的代价系数为第三代价系数。当历史使用次数小于或等于使用次数阈值时,可以确定该互连线的代价系数为第四代价系数,其中,第三代价系数大于第四代价系数。
S222,基于每个互连线对应的代价系数和历史使用次数,生成每个互连线对应的互连线权重。
在一些实施方式中,S222的具体实施方式可以为:通过F=N*f对每个互连线对应互连线权重进行计算。其中,F为互连线权重,N为历史使用次数,f为代价系数,其中,0≤f≤1。
作为一种示例,例如互连线的历史使用次数N为6,代价系数f为0.5时,可以计算得到互连线权重为3。又例如当代价系数为1时,互连线的互连线权重则等于该互连线的历史使用次数。
考虑到仅利用互连线的历史使用次数来生成互连线权重,可能存在生成的互连线权重可靠性较差的问题,在本实施方式中,通过获取每个互连线对应的代价系数,并基于每个互连线对应的代价系数和历史使用次数,生成每个互连线对应的互连线权重,从而引入代价系数来计算互连线权重,使计算互连线权重时参考的因素更全面,保证了互连线权重可靠性。
S230,基于多个互连线确定多个测试路径。
S240,基于每个互连线的互连线权重从多个测试路径中确定目标测试路径。
S250,基于目标测试路径生成测试用例。
其中,S230至S250的具体实施方式可以参考S120至S140,故不在此赘述。
请参阅图6,图6示出了本申请又一个实施例提供的待测芯片的测试用例生成方法流程图,其中,该方法可以应用于待测芯片,该方法可以包括如下步骤:
S310,获取多个互连线中每个互连线对应的互连线权重。
S320,基于多个互连线确定多个测试路径。
其中,S310至S320的具体实施方式可以参考S110至S120,故不在此赘述。
S330,基于每个互连线对应的互连线权重,得到多个测试路径中每个测试路径对应的路径权重。
在一些实施方式中,可以将多个互连线进行不同方式的组合,以得到不同的测试路径,测试路径的路径权重则可以通过构成该测试路径的互连线对应的互连线权重相加后得到。
作为一种示例,请再次参阅图3,例如,在图3中互连线1对应的互连线权重为1,互连线4对应的互连线权重为0,则互连线1和互连线4连接形成的测试路径所对应的路径权重则可以是1加上0,最终得到的路径权重则为1。又例如,互连线3对应的互连线权重为3,互连线6对应的互连线权重为3,则互连线3和互连线6连接形成的测试路径所对应的路径权重则可以是3加上3,最终得到的路径权重则为6。以此类推,互连线1至互连线6可以组合成9种测试路径,因此也可以得到这9个测试路径对应的路径权重。
S340,从多个测试路径中获取路径权重最小的测试路径,作为目标测试路径。
作为一种示例,若图3中的互连线1至互连线6经组合形成的9个测试路径中,互连线1和互连线4形成的测试路径对应的路径权重最小,则可以将该,互连线1和互连线4形成的测试路径作为目标测试路径。
在一些实施方式中,如图7所示,S340的具体实施方式可以包括:
S341,从多个测试路径中获取至少一个存在未使用的互连线的测试路径,作为初始测试路径。
作为一种示例,以图3为例,例如图3中的9中测试路径中,互连线1和互连线4形成的测试路径中,互连线1和互连线4均被使用(测试)过,则互连线1和互连线4形成的测试路径不能作为初始测试路径,即该测试路径不能再作为目标测试路径来构建测试用例。又例如,互连线3和互连线6形成的测试路径中,互连线3被使用过,但互连线6未被使用过,则互连线3和互连线6形成的测试路径可以作为初始测试路径。
S342,从至少一个初始测试路径中获取初始测试路径对应的路径权重最小的初始测试路径,作为目标测试路径。
其中S342中从至少一个初始测试路径中选取目标测试路径的具体实施方式可以参考S340中从多个测试路径中选取目标测试路径,故不在此赘述。
考虑到在实际测试过程中,为了确保已经使用过的测试路径不会重复地被作为目标测试路径,在本实施方式中,通过从多个测试路径中获取至少一个存在未使用的互连线的测试路径,作为初始测试路径,再从至少一个初始测试路径中获取初始测试路径对应的路径权重最小的初始测试路径,作为目标测试路径。可以确保已经测试过的测试路径不会再次被作为目标测试路径并用来构建测试用例,提高了测试用例生成的准确性和效率。
S350,基于目标测试路径生成测试用例。
其中,S350的具体实施方式可以参考S140,故不在此赘述。
请参阅图8,图8示出了本申请再一个实施例提供的待测芯片的测试用例生成方法流程图,其中,该方法可以应用于待测芯片,该方法可以包括如下步骤:
S410,获取多个互连线中每个互连线对应的互连线权重。
S420,基于多个互连线确定多个测试路径。
S430,基于每个互连线的互连线权重从多个测试路径中确定目标测试路径。
其中,S410至S430的具体实施方式可以参考S110至S130,故不在此赘述。
S440,获取目标测试路径对应的串联级数。
其中,当目标测试路径形成时,可以根据目标测试路径的初始端的级数确定出目标测试路径对应的串联级数。
S450,确定串联级数是否超过指定级数。
其中,指定级数可以为待测芯片的串联级数,也可以称为该待测芯片的串联级数上限。其中,串联级数上限是信号正常传递,不会因衰减导致突变导致验证错误的上限。
S460,当串联级数不超过指定级数时,基于目标测试路径生成测试用例。
其中,当串联级数不超过指定级数,可以表明目标测试路径没有超过串联级数上限,信号能够通过在目标测试路径中正常传递,从而确保了目标测试路径构建的测试用例的稳定性。
考虑到若目标测试路径对应的串联级数若超过待测芯片的串联级数上限,会导致信号不能正常地通过目标测试路径进行传递,在本实施例中,通过获取目标测试路径对应的串联级数,确定串联级数是否不超过指定级数,当串联级数不超过指定级数时,基于目标测试路径生成测试用例,从而可以保证在使用测试用例对待测芯片进行测试时,信号能够正常传递,同时也能够提升自动生成测试用例的准确性和效率。
请参阅图9,其示出了本申请一个实施例提供的待测芯片的测试用例生成装置,该待测芯片的测试用例生成装置500可以包括:互连线权重获取模块510、测试路径生成模块520、目标测试路径确定模块530以及测试用例生成模块540。其中:
互连线权重获取模块510,用于获取多个互连线中每个互连线对应的互连线权重。
测试路径生成模块520,用于基于多个互连线确定多个测试路径。
目标测试路径确定模块530,用于基于每个互连线的互连线权重从多个测试路径中确定目标测试路径。
测试用例生成模块540,用于基于目标测试路径生成测试用例。
进一步地,测试路径生成模块520包括:
历史使用次数获取单元,用于获取每个互连线的历史使用次数。
互连线权重生成单元,用于基于每个互连线的历史使用次数,生成每个互连线对应的互连线权重。
进一步地,互连线权重生成单元包括:
代价系数获取子单元,用于获取每个互连线对应的代价系数。
互连线权重生成子单元,用于基于每个互连线对应的代价系数和历史使用次数,生成每个互连线对应的互连线权重。
进一步地,互连线对应的代价系数与互连线的历史使用次数呈正相关。
进一步地,互连线权重生成子单元具体用于通过F=N*f对每个互连线对应互连线权重进行计算,其中,F为互连线权重,N为历史使用次数,f为代价系数,其中,0≤f≤1。
进一步地,目标测试路径确定模块530包括:
路径权重获取单元,用于基于每个互连线对应的互连线权重,得到多个测试路径中每个测试路径对应的路径权重。
目标测试路径确定单元,用于从多个测试路径中获取路径权重最小的测试路径,作为目标测试路径。
进一步地,测试用例生成模块540,包括:
串联级数获取单元,用于获取目标测试路径对应的串联级数。
测试用例生成单元,用于当串联级数不超过指定级数时,基于目标测试路径生成测试用例。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述装置和模块的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的几个实施例中,所显示或讨论的模块相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或模块的间接耦合或通信连接,可以是电性,机械或其它的形式。
另外,在本申请各个实施例中的各功能模块可以集成在一个处理模块中,也可以是各个模块单独物理存在,也可以两个或两个以上模块集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。
请参考图10,其示出了本申请实施例提供的一种电子设备的结构框图。该电子设备600可以是前述实施例中能够运行程序的电子设备600。本申请中的电子设备600可以包括一个或多个如下部件:处理器610、存储器620、以及一个或多个程序,其中一个或多个程序可以被存储在存储器620中并被配置为由一个或多个处理器610执行,一个或多个程序配置用于执行如前述方法实施例所描述的方法。
处理器610可以包括一个或者多个处理核。处理器610利用各种接口和线路连接整个电子设备内的各个部分,通过运行或执行存储在存储器620内的指令、程序、代码集或指令集,以及调用存储在存储器620内的数据,执行电子设备的各种功能和处理数据。可选地,处理器610可以采用数字信号处理(Digital Signal Processing,DSP)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)、可编程逻辑阵列(Programmable LogicArray,PLA)中的至少一种硬件形式来实现。处理器610可集成中央处理器610(CentralProcessing Unit,CPU)、图像处理器610(Graphics Processing Unit,GPU)和调制解调器等中的一种或几种的组合。其中,CPU主要处理操作系统、用户界面和应用程序等;GPU用于负责显示内容的渲染和绘制;调制解调器用于处理无线通信。可以理解的是,上述调制解调器也可以不集成到处理器610中,单独通过一块通信芯片进行实现。
其中,处理器610可以为图1所示的自动化Arc测试用例生成装置中的控制模块。
存储器620可以包括随机存储器(Random Access Memory,RAM),也可以包括只读存储器(Read-Only Memory)。存储器620可用于存储指令、程序、代码、代码集或指令集。存储器620可包括存储程序区和存储数据区,其中,存储程序区可存储用于实现操作系统的指令、用于实现至少一个功能的指令(比如触控功能、声音播放功能、图像播放功能等、拍摄功能)、用于实现下述各个方法实施例的指令等。存储数据区还可以存储终端在使用中所创建的数据(比如电话本、音视频数据、地图数据、行驶记录数据)等。
请参考图11,其示出了本申请实施例提供的一种计算机可读存储介质的结构框图。该计算机可读介质700中存储有程序代码710,程序代码710可被处理器调用执行上述方法实施例中所描述的方法。
计算机可读存储介质700可以是诸如闪存、EEPROM(电可擦除可编程只读存储器)、EPROM、硬盘或者ROM之类的电子存储器。可选地,计算机可读存储介质包括非瞬时性计算机可读介质(non-transitory computer-readable storage medium)。计算机可读存储介质具有执行上述方法中的任何方法步骤的程序代码的存储空间。这些程序代码可以从一个或者多个计算机程序产品中读出或者写入到这一个或者多个计算机程序产品中。程序代码可以例如以适当形式进行压缩。
综上所述,本申请实施例提供的待测芯片的测试用例生成方法、装置、车辆以及存储介质,通过获取所述多个互连线中每个互连线对应的互连线权重,并基于所述多个互连线确定多个测试路径,再基于所述每个互连线的互连线权重从所述多个测试路径中确定目标测试路径,最后基于所述目标测试路径生成测试用例,从而能够根据Arc权重来选择布线路径、构建用例、生成位流,从而达到自动生成Arc测试用例、尽可能多的覆盖未测试Arc的目的。不仅可以提高Arc测试用例的生成效率,还可以把开发人员从枯燥重复的工作中解放出来,解决人工规划Arc测试用例的过程枯燥重复、效率较低、需要耗费大量的人力成本和时间成本的问题,进而也提高了对FGPA芯片的测试效率。
最后应说明的是:以上实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不驱使相应技术方案的本质脱离本申请各实施例技术方案的精神和范围。

Claims (7)

1.一种待测芯片的测试用例生成方法,其特征在于,应用于待测芯片,所述待测芯片包括多个互连线,所述方法包括:
获取所述多个互连线中每个互连线的历史使用次数;
基于所述每个互连线的历史使用次数,生成所述每个互连线对应的互连线权重,其中,所述互连线的历史使用次数与所述互连线的互连线权重呈正相关;
基于所述多个互连线确定多个测试路径;
基于所述每个互连线的互连线权重从所述多个测试路径中确定目标测试路径;
基于所述目标测试路径生成测试用例;
其中,所述基于所述每个互连线的历史使用次数,生成所述每个互连线对应的互连线权重,包括:
获取所述每个互连线对应的代价系数;
基于所述每个互连线对应的代价系数和历史使用次数,生成所述每个互连线对应的互连线权重,其中,所述互连线对应的代价系数与所述互连线的历史使用次数呈正相关。
2.根据权利要求1所述的方法,其特征在于,所述基于所述每个互连线对应的代价系数和历史使用次数,生成所述每个互连线对应的互连线权重,包括:
通过F=N*f对所述每个互连线对应互连线权重进行计算,其中,F为互连线权重,N为历史使用次数,f为代价系数,其中,0≤ f≤1。
3.根据权利要求1所述的方法,其特征在于,所述基于所述每个互连线的互连线权重从所述多个测试路径中确定目标测试路径,包括:
基于所述每个互连线对应的互连线权重,得到所述多个测试路径中每个测试路径对应的路径权重;
从所述多个测试路径中获取路径权重最小的测试路径,作为目标测试路径。
4.根据权利要求1至3任一项所述的方法,其特征在于,所述基于所述目标测试路径生成测试用例,包括:
获取所述目标测试路径对应的串联级数;
当所述串联级数不超过指定级数时,基于所述目标测试路径生成测试用例。
5.一种待测芯片的测试用例生成装置,其特征在于,应用于待测芯片,所述待测芯片包括多个互连线,所述待测芯片的测试用例生成装置包括:
互连线权重获取模块,用于获取所述多个互连线中每个互连线的历史使用次数;用于基于所述每个互连线的历史使用次数,生成所述每个互连线对应的互连线权重,其中,所述互连线的历史使用次数与所述互连线的互连线权重呈正相关;
测试路径生成模块,用于基于所述多个互连线确定多个测试路径;
目标测试路径确定模块,用于基于所述每个互连线的互连线权重从所述多个测试路径中确定目标测试路径;
测试用例生成模块,用于基于所述目标测试路径生成测试用例;
其中,所述互连线权重获取模块包括:代价系数获取子单元和互连线权重生成子单元,其中:
代价系数获取子单元,用于获取所述每个互连线对应的代价系数;
互连线权重生成子单元,用于基于所述每个互连线对应的代价系数和历史使用次数,生成所述每个互连线对应的互连线权重,其中,所述互连线对应的代价系数与所述互连线的历史使用次数呈正相关。
6.一种电子设备,其特征在于,包括:
一个或多个处理器;
存储器;
一个或多个程序,其中所述一个或多个程序被存储在所述存储器中并被配置为由所述一个或多个处理器执行,所述一个或多个程序配置用于执行如权利要求1至4任一项所述的方法。
7.一种计算机可读取存储介质,其特征在于,所述计算机可读取存储介质中存储有程序代码,所述程序代码可被处理器调用执行如权利要求1至4任一项所述的方法。
CN202010675578.2A 2020-07-14 2020-07-14 待测芯片的测试用例生成方法、装置、电子设备以及介质 Active CN111930613B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010675578.2A CN111930613B (zh) 2020-07-14 2020-07-14 待测芯片的测试用例生成方法、装置、电子设备以及介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010675578.2A CN111930613B (zh) 2020-07-14 2020-07-14 待测芯片的测试用例生成方法、装置、电子设备以及介质

Publications (2)

Publication Number Publication Date
CN111930613A CN111930613A (zh) 2020-11-13
CN111930613B true CN111930613B (zh) 2023-11-28

Family

ID=73313022

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010675578.2A Active CN111930613B (zh) 2020-07-14 2020-07-14 待测芯片的测试用例生成方法、装置、电子设备以及介质

Country Status (1)

Country Link
CN (1) CN111930613B (zh)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112565004B (zh) * 2020-11-25 2022-08-09 信而泰(无锡)信息技术有限公司 网络测试流量的分配方法和装置
CN113742221A (zh) * 2021-08-18 2021-12-03 芯华章科技股份有限公司 生成测试用例的方法、电子设备及存储介质
CN114328060B (zh) * 2022-03-14 2022-09-06 江苏清微智能科技有限公司 一种可复用测试用例框架、构建方法及电子设备
CN117707936B (zh) * 2023-11-28 2024-06-11 海通证券股份有限公司 多系统多版本全链路测试方法、装置、设备和存储介质

Citations (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101241523A (zh) * 2008-03-10 2008-08-13 清华大学 全芯片互连线功耗最优的布局阶段缓冲器规划方法
CN101881811A (zh) * 2009-05-08 2010-11-10 复旦大学 一种可编程逻辑器件互连资源的故障测试方法
CN103412253A (zh) * 2013-08-05 2013-11-27 电子科技大学 互联结构模型化方法和互联资源配置向量自动生成方法
CN103902775A (zh) * 2014-03-31 2014-07-02 福州大学 超大规模集成电路多层绕障Steiner最小树构造方法
CN104348479A (zh) * 2013-07-31 2015-02-11 京微雅格(北京)科技有限公司 现场可编程逻辑门阵列芯片布局优化方法
CN104486222A (zh) * 2014-12-12 2015-04-01 哈尔滨工业大学 基于蚁群优化算法的小时延缺陷测试关键路径选择方法
CN105680848A (zh) * 2014-11-19 2016-06-15 京微雅格(北京)科技有限公司 基于区域时钟的优化fpga芯片布局的方法
CN106934454A (zh) * 2017-02-28 2017-07-07 桂林电子科技大学 三维片上网络中基于Petri网的测试规划方法
CN107957957A (zh) * 2017-12-28 2018-04-24 网易(杭州)网络有限公司 测试用例的获取方法和装置
CN108268366A (zh) * 2016-12-30 2018-07-10 腾讯科技(深圳)有限公司 测试用例执行方法及装置
CN109885432A (zh) * 2018-11-28 2019-06-14 深圳忆联信息系统有限公司 NVMe前端测试方法、装置、计算机设备及存储介质
CN109992498A (zh) * 2017-12-29 2019-07-09 北京京东尚科信息技术有限公司 测试用例的生成方法及系统、计算机系统

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8103982B2 (en) * 2005-05-20 2012-01-24 Cadence Design Systems, Inc. System and method for statistical design rule checking
IN2014CH01329A (zh) * 2014-03-13 2015-09-18 Infosys Ltd
DE112016006297T5 (de) * 2016-02-24 2018-10-31 Mitsubishi Electric Corporation Testfall-Erzeugungsvorrichtung und Testfall-Erzeugungsprogramm

Patent Citations (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101241523A (zh) * 2008-03-10 2008-08-13 清华大学 全芯片互连线功耗最优的布局阶段缓冲器规划方法
CN101881811A (zh) * 2009-05-08 2010-11-10 复旦大学 一种可编程逻辑器件互连资源的故障测试方法
CN104348479A (zh) * 2013-07-31 2015-02-11 京微雅格(北京)科技有限公司 现场可编程逻辑门阵列芯片布局优化方法
CN103412253A (zh) * 2013-08-05 2013-11-27 电子科技大学 互联结构模型化方法和互联资源配置向量自动生成方法
CN103902775A (zh) * 2014-03-31 2014-07-02 福州大学 超大规模集成电路多层绕障Steiner最小树构造方法
CN105680848A (zh) * 2014-11-19 2016-06-15 京微雅格(北京)科技有限公司 基于区域时钟的优化fpga芯片布局的方法
CN104486222A (zh) * 2014-12-12 2015-04-01 哈尔滨工业大学 基于蚁群优化算法的小时延缺陷测试关键路径选择方法
CN108268366A (zh) * 2016-12-30 2018-07-10 腾讯科技(深圳)有限公司 测试用例执行方法及装置
CN106934454A (zh) * 2017-02-28 2017-07-07 桂林电子科技大学 三维片上网络中基于Petri网的测试规划方法
CN107957957A (zh) * 2017-12-28 2018-04-24 网易(杭州)网络有限公司 测试用例的获取方法和装置
CN109992498A (zh) * 2017-12-29 2019-07-09 北京京东尚科信息技术有限公司 测试用例的生成方法及系统、计算机系统
CN109885432A (zh) * 2018-11-28 2019-06-14 深圳忆联信息系统有限公司 NVMe前端测试方法、装置、计算机设备及存储介质

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
一种改进的规划器算法在军用软件GUI测试用例自动生成中的应用;李丽;沈湘衡;魏颖;任佳阅;王大勇;;解放军理工大学学报(自然科学版)(第03期);33-39 *
基于BIST的SRAM型FPGA故障测试;杨会平;王晓鹏;宋庆恒;;测控技术(第06期);27-30 *
基于SRAM的FPGA导航布局布线方法实现与应用;陈亮;李艳;李明;于芳;刘忠立;;深圳大学学报(理工版)(第03期);33-39 *

Also Published As

Publication number Publication date
CN111930613A (zh) 2020-11-13

Similar Documents

Publication Publication Date Title
CN111930613B (zh) 待测芯片的测试用例生成方法、装置、电子设备以及介质
CN109669436B (zh) 一种基于电动汽车的功能需求的测试用例生成方法和装置
CN110059068B (zh) 一种分布式存储系统中的数据校验方法及数据校验系统
CN116256621B (zh) 芯粒的测试方法、装置、电子设备及存储介质
CN111176918A (zh) 一种服务器测试方法、系统、设备及计算机可读存储介质
CN110674034A (zh) 一种健康检查方法、装置及电子设备和存储介质
CN115080446B (zh) 一种软件测试用测试实例生成方法及系统
CN115184764A (zh) 一种芯片测试方法、装置、电子设备及存储介质
CN110457743B (zh) 一种基于fpga的芯片检测方法
CN113391970A (zh) 一种面向异构众核处理器的芯片测试方法及装置
CN116562227A (zh) 一种芯片信号连通性验证方法及装置
CN111324536A (zh) 一种压力测试方法、装置、电子设备及存储介质
CN114443141A (zh) 测控指令循环约束故障的确定方法及装置
CN110580214A (zh) 应用程序测试的评估方法、装置、存储介质和终端设备
CN113160875A (zh) 芯片测试系统和测试方法
CN112908397A (zh) Dram存储阵列的修复方法及相关设备
CN109145338B (zh) 一种修复电压降的方法及装置
CN112380127A (zh) 测试用例回归方法、装置、设备和存储介质
CN116256620B (zh) Chiplet集成芯片的检测方法、装置、电子设备及存储介质
CN116306409B (zh) 芯片验证方法、装置、设备及存储介质
CN116893978B (zh) 一种基于ptcrb认证的测试计划生成方法、系统和存储介质
TWI681309B (zh) 電子裝置測試資料庫產生方法
CN115373975A (zh) 一种测试数据集生成方法、装置、设备及存储介质
CN117370092A (zh) 一种随机测试程序、芯片检测方法及装置
CN115757123A (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