CN113254284B - 芯片测试方法、装置、设备、存储介质以及程序产品 - Google Patents
芯片测试方法、装置、设备、存储介质以及程序产品 Download PDFInfo
- Publication number
- CN113254284B CN113254284B CN202110558763.8A CN202110558763A CN113254284B CN 113254284 B CN113254284 B CN 113254284B CN 202110558763 A CN202110558763 A CN 202110558763A CN 113254284 B CN113254284 B CN 113254284B
- Authority
- CN
- China
- Prior art keywords
- chip
- communication function
- design model
- pin
- pins
- 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
Links
- 238000012360 testing method Methods 0.000 title claims abstract description 152
- 238000004891 communication Methods 0.000 claims abstract description 167
- 238000013461 design Methods 0.000 claims abstract description 134
- 238000000034 method Methods 0.000 claims abstract description 26
- 238000011990 functional testing Methods 0.000 claims abstract description 25
- 230000006870 function Effects 0.000 claims description 179
- 238000010998 test method Methods 0.000 description 12
- 238000011161 development Methods 0.000 description 11
- 108010037490 Peptidyl-Prolyl Cis-Trans Isomerase NIMA-Interacting 4 Proteins 0.000 description 10
- 102100031653 Peptidyl-prolyl cis-trans isomerase NIMA-interacting 4 Human genes 0.000 description 10
- 230000005540 biological transmission Effects 0.000 description 10
- 238000004590 computer program Methods 0.000 description 10
- 238000010586 diagram Methods 0.000 description 10
- 101150087393 PIN3 gene Proteins 0.000 description 9
- 101100406797 Arabidopsis thaliana PAD4 gene Proteins 0.000 description 8
- 101150094373 Padi4 gene Proteins 0.000 description 8
- 102100035731 Protein-arginine deiminase type-4 Human genes 0.000 description 8
- 101100123053 Arabidopsis thaliana GSH1 gene Proteins 0.000 description 6
- 101100298888 Arabidopsis thaliana PAD2 gene Proteins 0.000 description 6
- 108010059419 NIMA-Interacting Peptidylprolyl Isomerase Proteins 0.000 description 6
- 101150092599 Padi2 gene Proteins 0.000 description 6
- 102100026114 Peptidyl-prolyl cis-trans isomerase NIMA-interacting 1 Human genes 0.000 description 6
- 102100035735 Protein-arginine deiminase type-2 Human genes 0.000 description 6
- 238000012545 processing Methods 0.000 description 6
- 101100272964 Arabidopsis thaliana CYP71B15 gene Proteins 0.000 description 5
- 101150030164 PADI3 gene Proteins 0.000 description 5
- 102100035734 Protein-arginine deiminase type-3 Human genes 0.000 description 5
- 238000012986 modification Methods 0.000 description 4
- 230000004048 modification Effects 0.000 description 4
- 101000590281 Homo sapiens 26S proteasome non-ATPase regulatory subunit 14 Proteins 0.000 description 3
- 101001114059 Homo sapiens Protein-arginine deiminase type-1 Proteins 0.000 description 3
- 102100023222 Protein-arginine deiminase type-1 Human genes 0.000 description 3
- 108010033711 Telomeric Repeat Binding Protein 1 Proteins 0.000 description 3
- 102100036497 Telomeric repeat-binding factor 1 Human genes 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 3
- 230000002093 peripheral effect Effects 0.000 description 3
- 230000008569 process Effects 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 238000004519 manufacturing process Methods 0.000 description 2
- 230000013011 mating Effects 0.000 description 2
- 238000003491 array Methods 0.000 description 1
- 238000013473 artificial intelligence Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 238000010801 machine learning Methods 0.000 description 1
- 239000013307 optical fiber Substances 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 230000001953 sensory effect Effects 0.000 description 1
- 230000008054 signal transmission Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 238000012795 verification Methods 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
- 239000002699 waste material Substances 0.000 description 1
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
- 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/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)
- Tests Of Electronic Circuits (AREA)
Abstract
本公开提供了一种芯片测试方法、装置、设备、存储介质以及程序产品,涉及计算机技术领域,具体涉及系统级芯片技术领域,尤其涉及芯片测试方法、装置、设备、存储介质以及程序产品。该方法的一具体实施方式包括:获取芯片的设计模型;生成针对该芯片的管脚的随机化配置,其中,随机化配置用于指示该芯片的各管脚分别与该芯片的各通信功能模块的各引脚之间的连接关系;按照随机化配置对设计模型中的数据选择器进行对应配置,得到配置后的设计模型;利用配置后的设计模型,对各通信功能模块进行功能测试。该实施方式可以实现对芯片的各通信功能模块在各种配置下的随机化功能测试。
Description
技术领域
本公开涉及计算机技术领域,具体涉及系统级芯片技术领域,尤其涉及芯片测试方法、装置、设备、存储介质以及程序产品。
背景技术
随着芯片规模的不断增加,一些系统级芯片(SOC,System On Chip)达到了数百万或上千万门,与此同时,芯片的管脚PAD数目也在不断增加,芯片测试工作越来越重要。目前,在芯片的开发和设计阶段,芯片测试所占的时间越来越长,而且通常需要专业的测试人员才能对芯片进行有效测试(或验证)。
在芯片开发时,为了更高效地利用芯片的管脚,会出现管脚复用的一些情况。即同一组管脚可以通过数据选择器IO MUX被配置成与芯片中不同的通信功能模块的引脚PIN连接,以实现不同的功能。因此在芯片的设计阶段,就需要对存在管脚复用的芯片的管脚的各种不同配置进行功能测试,以保证各种配置下都能实现对应功能。
目前的测试方法主要包括利用定向测试用例或Toggle In/Toggle Out的方法来实现。具体地,对于芯片的一些典型配置,可以通过编写这种配置对应的功能测试用例来进行测试。对于芯片的各种非典型配置,可以先将IO MUX随机配置,然后利用Toggle In/Toggle Out的方式测试随机化的每种配置下的连通性。
实际应用中,定向测试用例这种验证方法缺乏随机性,只能覆盖有限个典型配置的应用场景。Toggle In/Toggle Out这种测试方法只能测试在每种配置下芯片的管脚与对应通信功能模块的引脚之间对应连接的连通性,而通常无法完成对应的功能性测试。
发明内容
本公开实施例提出了一种芯片测试方法、装置、设备、存储介质以及程序产品。
第一方面,本公开实施例提出了一种芯片测试方法,包括:获取芯片的设计模型;生成针对该芯片的管脚的随机化配置,其中,随机化配置用于指示该芯片的各管脚分别与该芯片的各通信功能模块的各引脚之间的连接关系;按照随机化配置对设计模型中的数据选择器进行对应配置,得到配置后的设计模型;利用配置后的设计模型,对各通信功能模块进行功能测试。
第二方面,本公开实施例提出了一种芯片测试装置,包括:获取单元,被配置成获取芯片的设计模型;生成单元,被配置成生成针对该芯片的管脚的随机化配置,其中,随机化配置用于指示该芯片的各管脚分别与该芯片的各通信功能模块的各引脚之间的连接关系;配置单元,被配置成按照随机化配置对设计模型中的数据选择器进行对应配置,得到配置后的设计模型;测试单元,被配置成利用配置后的设计模型,对各通信功能模块进行功能测试利用配置后的设计模型,对各通信功能模块进行功能测试。
第三方面,本公开实施例提出了一种芯片,其中,芯片根据其对应的设计模型生产得到,设计模型利用如第一方面中任一实现方式描述的方法进行功能测试。
第四方面,本公开实施例提出了一种电子设备,包括:至少一个处理器;以及与至少一个处理器通信连接的存储器;其中,存储器存储有可被至少一个处理器执行的指令,指令被至少一个处理器执行,以使至少一个处理器能够执行如第一方面中任一实现方式描述的方法。
第五方面,本公开实施例提出了一种存储有计算机指令的非瞬时计算机可读存储介质,计算机指令用于使计算机执行如第一方面中任一实现方式描述的方法。
第六方面,本公开实施例提出了一种计算机程序产品,包括计算机程序,计算机程序在被处理器执行时实现如第一方面中任一实现方式描述的方法。
本公开实施例提供的芯片测试方法、装置、设备、存储介质以及程序产品,主要通过随机化生成芯片的管脚与各通信功能模块的各引脚之间的连接配置,并按照生成的随机化配置连接管脚与对应的引脚,再对芯片经过随机化配置后的设计模型中的各通信功能模块进行功能性测试,从而可以实现对芯片的各通信功能模块在各种配置下的随机化功能测试。
应当理解,本部分所描述的内容并非旨在标识本公开的实施例的关键或重要特征,也不用于限制本公开的范围。本公开的其它特征将通过以下的说明书而变得容易理解。
附图说明
通过阅读参照以下附图所作的对非限制性实施例所作的详细描述,本公开的其它特征、目的和优点将会变得更明显。附图用于更好地理解本方案,不构成对本公开的限定。其中:
图1是本公开可以应用于其中的示例性系统架构图;
图2是本公开的芯片测试方法的一个实施例的流程图;
图3是本公开的芯片测试方法的一个实施例中针对芯片的管脚的随机化配置的示意图;
图4是本公开的芯片测试方法的又一个实施例的流程图;
图5是本公开的芯片测试方法的一个实施例中测试用设计模型和芯片的设计模型的连接配置的示意图;
图6是本公开的芯片测试装置的一个实施例的结构示意图;
图7是用来实现本公开实施例的芯片测试方法的电子设备的框图。
具体实施方式
以下结合附图对本公开的示范性实施例做出说明,其中包括本公开实施例的各种细节以助于理解,应当将它们认为仅仅是示范性的。因此,本领域普通技术人员应当认识到,可以对这里描述的实施例做出各种改变和修改,而不会背离本公开的范围和精神。同样,为了清楚和简明,以下的描述中省略了对公知功能和结构的描述。
需要说明的是,在不冲突的情况下,本公开中的实施例及实施例中的特征可以相互组合。下面将参考附图并结合实施例来详细说明本公开。
图1示出了可以应用本公开的芯片测试方法或芯片测试装置的实施例的示例性系统架构100。
如图1所示,系统架构100可以包括芯片的设计模型101和电子设备102。其中,芯片的设计模型101可以在电子设备102上进行开发、调整或测试等各种操作。
芯片的设计模型101通常可以由芯片的开发和设计人员根据芯片的开发需求,利用现有的各种芯片开发平台进行编程开发得到。一般地,芯片的设计模型101可以用于逻辑实现芯片的开发需求。
芯片的设计模型101包括一定数目的管脚1011。其中,管脚1011的数目可以根据芯片实际的开发需求设置。管脚1011可以用作I/O通信,以接收或发送信号。
芯片的设计模型101还可以包括各种通信功能模块1012。通信功能模块1012的类别和数目都可以根据芯片实际的开发需求设置。作为示例,通信功能模块1012包括但不限于:UART(Universal Asynchronous Receiver Transmitter,通用异步收发器)模块、I2C(Inter-Integrated Circuit)模块、SPI(Serial Peripheral Interface,串行外设接口)模块等等。
每个通信功能模块1012可以包括一定数目的引脚10121。其中,引脚10121的数目可以根据通信功能模块的属性进行设置。引脚10121可以用作I/O通信,以接收或发送信号。
一般地,每个通信功能模块1012的引脚10121可以与管脚1011连接,以使信号从芯片内部的通信功能模块1012输出至芯片的外部,后者使信号从芯片的外部输入至芯片内部的通信功能模块1012。
需要说明的是,根据芯片的具体开发需求,芯片的设计模型还可以包括其他各种模块,以实现芯片的不同功能。例如,电源模块、外围电路、微处理器等等。
电子设备102可以是硬件,也可以是软件。当电子设备102为硬件时,可以是各种电子设备。例如笔记本、平板电脑等等。当电子设备102为软件时,可以安装在上述电子设备中。其可以实现成多个软件或软件模块,也可以实现成单个软件或软件模块。在此不做具体限定。
需要说明的是,本公开实施例所提供的芯片测试方法一般由电子设备102执行,相应地,芯片测试装置一般设置于电子设备102中。
应该理解,图1中芯片的设计模型和电子设备的数目仅仅是示意性的。根据实现需要,可以具有任意数目的芯片的设计模型和电子设备的数目。
继续参考图2,其示出了本公开的芯片测试方法的一个实施例的流程200。该芯片测试方法包括以下步骤:
步骤201,获取芯片的设计模型。
在本实施例中,芯片可以是待生产的各种系统级芯片。芯片的设计模型可以作为芯片的逻辑表示,具体可以由相关技术人员预先根据待生产的芯片的设计文档等通过编程构建该芯片的设计模型,以利用设计模型来描述芯片的结构设计和功能设计等各方面内容。
一般地,先构建芯片的设计模型,然后利用设计模型进行各种测试,并在设计模型通过各种测试之后,再根据芯片的设计模型生产物理上的芯片,可以避免直接利用实体的芯片进行测试而需要反复调整芯片设计过程中造成的资源浪费等问题,而且对实体的芯片的调整比较复杂。
在本实施例中,芯片测试方法的执行主体(如图1所示的电子设备102等)可以从本地或其它存储设备获取芯片的设计模型。
需要说明的是,芯片的设计模型可以预先在上述执行主体上进行构建,也可以预先在其他电子设备上进行构建。
步骤202,生成针对芯片的管脚的随机化配置。
在本实施例中,芯片的管脚可以指从芯片内部电路引出的与芯片的外围电路的接线。一般地,在实际生产芯片时,会对芯片的管脚进行封装形成芯片的引脚,对于用户来说,通常可以看到芯片的引脚,而无法看到对应封装在芯片内部的管脚。
芯片的管脚的随机化配置可以用于指示芯片的各个管脚分别与芯片的各个通信功能模块的各个引脚之间的连接关系。其中,根据实现需要,芯片内部可以包括各种类型的通信功能模块,如UART、SPI、I2C等等。一般地,每个通信功能模块包括一定数目的引脚,引脚的数目通常与通信功能模块自身的属性相匹配。不同的通信功能模块对应的引脚的数目可以相同,也可以不同。另外,芯片可以包括多个相同的通信功能模块,例如包括多个UART模块等。
需要说明的是,芯片的管脚、各个通信功能模块包括的引脚的数目通常都是比较多的,而且功能不同。例如,UART模块通常具有三个引脚:一个发送引脚(用于发送信号)、一个接收引脚(用于接收信号)和一个接地引脚。其中,发送引脚和接收引脚都属于输入输出I/O功能引脚,而接地引脚一般并不发送或接收信号。
因此,根据实际的应用需求,芯片上待测试的管脚可以是芯片的全部管脚,也可以是芯片的部分管脚。同样地,通信功能模块对应的待测试的引脚也可以是通信功能模块的全部引脚,也可以是通信功能模块的部分引脚。
可选地,本申请中的芯片的管脚可以指芯片的I/O功能管脚,通信功能模块的引脚可以指通信功能模块的I/O功能引脚。由此,可以实现对芯片的通信功能模块的I/O功能的测试。
芯片的管脚与通信功能模块的引脚的对应连接可以指信号可以从芯片的管脚和通信功能模块的引脚之间进行传输。例如,信号可以从通信功能模块的引脚发送至芯片的管脚,信号也可以从芯片的管脚发送至通信功能模块的引脚。
管脚的随机化配置可以利用现有的各种随机算法生成。例如,可以预先记录芯片的各个通信功能模块分别包括的各个引脚的标识,然后对于每个管脚随机生成对应的标识,并将对应的标识指示的引脚作为该管脚对应连接的引脚。
步骤203,按照随机化配置对设计模型中的数据选择器进行对应配置,得到配置后的设计模型。
在本实施例中,芯片的数据选择器(IO MUX)可以指用于构建芯片的管脚与通信功能模块的引脚之间的连接的部件。因此,数据选择器可以按照步骤202生成的管脚和引脚之间的对应连接关系,将管脚分别与其对应的引脚进行连接。
具体地,数据选择器可以通过配置相关的寄存器来构建芯片的管脚与通信功能模块的引脚之间的连接。因此,可以通过设计模型中的控制数据选择器对相关寄存器内容的修改来实现管脚与其对应的引脚之间的连接。
步骤204,利用配置后的设计模型,对各通信功能模块进行功能测试。
在本实施例中,在通过步骤203的配置之后,各个通信功能模块的引脚与芯片上对应的管脚连接,然后就可以利用各种测试方法对每个通信功能模块进行功能测试,以测试该通信功能模块能否正常通信(如信号收发是否正常等),以及能否完成该通信功能模块所实现的功能(如能否完成该通信功能模块设计实现的协议等)。
具体的测试方法可以根据实际的应用场景灵活设置,例如可以利用现有的芯片测试平台或应用实现对每个通信功能模块的功能测试。
若一通信功能模块的测试结果指示无法正常通信或无法完成对应功能,则可以在芯片的设计模型中及时调整该通信功能模块的相关设计,以解决通信或功能问题。
若通信功能模块的测试结果指示可以正常通信,且可以完成对应的功能,则可以将当前的设计模型作为新的设计模型,重新执行上述步骤202-204,以实现对芯片的管脚与通信功能模块的引脚之间的各种连接配置下的设计模型的测试,从而可以保证测试的全面性。
在本实施例的一些可选的实现方式中,针对芯片的管脚的随机化配置可以使得每个管脚仅与一个通信功能模块的一个引脚对应连接,从而可以避免一个管脚与多个通信功能模块的引脚连接,或一个管脚与一个通信功能模块的多个引脚连接而造成的信号传输混乱等情况,进而保证测试结果的有效性。
在本实施例的一些可选的实现方式中,针对芯片的管脚的随机化配置还可以使得每个管脚的功能属性与对应连接的引脚的功能属性匹配。其中,功能属性可以用于指示输入和/或输出。
一般地,每个管家或引脚可以仅作为输入引脚来接收信号,也可以仅作为输出引脚来发送信号,还可以既能作为输入引脚又能作为输出引脚(如一种随机化配置下作为输入引脚,另一种随机化配置下作为输出引脚等)。
管脚的功能属性与引脚的功能属性匹配可以指一个为输入属性,另一个为输出属性。例如,管脚可以作为输入管脚,那么对应匹配连接的引脚通常就是作为输出引脚。对应地,管脚在作为输出管脚时,那么对应匹配连接的引脚通常就作为输入引脚。
通过匹配每个管脚的功能属性与对应连接的引脚的功能属性,可以避免出现信号无法正常传输的情况,进一步保证测试结果的有效性。
为了使得每个管脚仅与一个通信功能模块的一个引脚对应连接,和/或每个管脚的功能属性与对应连接的引脚的功能属性匹配,可以预先对随机化算法设置对应的约束条件。
作为示例,可以为芯片的每个管脚设置两个属性,第一个属性的属性值用于指示该管脚所连接的通信功能模块的引脚,第二属性的属性值用于指示该管脚的功能属性。这种情况下,每次随机化可以为每个管脚生成两个随机值分别作为第一属性的属性值和第二属性的属性值,同时保证各个管脚的第一属性的属性值不同,且第二属性的属性值与其第一属性的属性值所指示的引脚的第二属性的属性值匹配。
继续参考图3,图3是本公开的芯片测试方法的一个实施例中针对芯片的管脚的随机化配置的示意图300。如标号301所示,芯片的待配置管脚包括PAD0-PAD4共五个管脚,其中PAD0、PAD2和PAD3作为输入管脚,PA1和PAD4作为输出管脚。
芯片包括通信功能模块A和通信功能模块B。其中,如标号302所示,通信功能模块A包括PIN0和PIN1共两个待配置引脚,且PIN0作为输出引脚,PIN1作为输出引脚。如标号303所示,通信功能模块B包括PIN2-PIN4共三个待配置引脚,且PIN2作为输出引脚、PIN3作为输入引脚、PIN4作为输出引脚。
在图3所示生成的随机化配置结果中,芯片的PAD0与功能模块B的PIN2对应连接、芯片的PAD1与功能模块B的PIN3对应连接、芯片的PAD2与功能模块B的PIN0对应连接、芯片的PAD3与功能模块B的PIN4对应连接,以及芯片的PAD4与功能模块B的PIN1对应连接。
在本实施例的一些可选的实现方式中,对于每个通信功能模块,可以获取该通信功能模块对应的功能测试用例,然后控制设计模型执行获取的功能测试用例来完成该通信功能模块的功能测试。
其中,功能测试用例可以指用于测试功能的测试用例。功能测试用例可以由技术人员预先根据芯片的通信功能模块进行编写。需要说明的是,每次随机化配置都可以使用功能测试用例对通信功能模块进行功能测试。
可选地,功能测试用例可以是现有的针对该通信功能模块的功能测试用例,从而省去重新编写功能测试用例所需花费的成本,实现功能测试用例的复用,有助于提升测试效率。
本公开实施例提供的芯片测试方法,可以通过针对芯片的管脚的随机化配置将芯片的各管脚随机映射到芯片的各通信功能模块的各引脚上,从而可以覆盖数据选择器的各种配置场景,避免人工针对每种配置场景定向编写对应的测试用例而导致的漏测或成本过高等问题。另外,这种方式可以在测试各通信功能模块的连接性的同时,完成对各通信功能模块的功能性测试,避免完全脱离实际的应用场景地连接性测试等情况,有助于提升测试结果的准确性和稳定性。
进一步参考图4,其示出了根据本公开的芯片测试方法的又一个实施例的流程400。该芯片测试方法包括以下步骤:
步骤401,获取芯片的设计模型。
步骤402,生成针对芯片的管脚的随机化配置。
步骤403,按照随机化配置对设计模型中的数据选择器进行对应配置,得到配置后的设计模型。
步骤404,对于各通信功能模块中的通信功能模块,获取该通信功能模块的测试用设计模型,以及利用测试用设计模型和配置后的设计模型对该通信功能模块进行功能测试。
在本实施例中,通信功能模块的测试用设计模型可以用于辅助完成对该通信功能模块的测试。一般地,通信功能模块的测试用设计模型可以是本芯片针对该通信功能模块的设计对应标准设计模型。通信功能模块的测试用设计模型可以由技术人员利用各种芯片开发平台等通过编程进行构建。
在获取到通信功能模块的测试用设计模型之后,就可以采用现有的各种测试方法,利用测试用设计模型与芯片的设计模型之间的通信来测试该通信功能模块的功能实现。
在本实施例的一些可选的实现方式中,通信功能模块的测试用设计模型包括与该通信功能模块的各引脚分别一一对应的引脚。
此时,可以先将通信功能模块的测试用设计模型的各引脚分别与该通信功能模块的引脚所对应连接的管脚对应连接,形成测试用设计模型和配置后的设计模型之间的连接关系,然后再利用测试用设计模型、配置后的设计模型和形成的连接关系,对该通信功能模块进行功能测试。
由于测试用设计模型的各引脚与设计模型中该通信功能模块的各引脚一一对应,且针对芯片的管脚生成的随机化配置使得该通信功能模块的各引脚具有对应的管脚,因此,测试用设计模型的各引脚也对应有芯片的管脚。
在测试用设计模型的各引脚、设计模型中该通信功能模块的各引脚和芯片的管脚之间形成连接关系之后,就可以利用这个连接关系对该通信功能模块进行连接性测试和功能性测试。这样一来,就不需要测试人员人工花费较多的时间搭建测试环境等以对芯片设计模型进行测试,可以利用测试用设计模型便捷地完成对芯片的设计模型的测试,从而有助于提升测试效率。
可选地,在实现时,可以利用传输门控制测试用设计模型的各引脚与芯片的管脚之间的对应关系。例如,可以在测试用设计模型的各引脚分别与芯片的各管脚之间构建连接,且每条连接都利用一个对应的传输门来控制该条连接的连通性。例如,传输门信号未0时,对应的连接呈导通状态,传输门信号未1时,对应的连接呈高阻状态,从而可以便捷地实现控制测试用设计模型的各引脚与芯片的管脚之间的各种连接配置,进一步提升测试效率。
本实施例中未具体说明的内容可以参考图2对应实施例中的相关说明,在此不再赘述。
继续参见图5,图5是本公开的芯片测试方法的一个实施例中测试用设计模型和芯片的设计模型的连接配置的示意图500。如标号501所示,芯片的待配置管脚包括PAD0-PAD4共五个管脚,其中PAD0、PAD2和PAD3作为输入管脚,PA1和PAD4作为输出管脚。
如图中标号502所示,芯片包括通信功能模块A。其中,通信功能模块A包括PIN0和PIN1共两个待配置引脚,且PIN0作为输出引脚,PIN1作为输出引脚。
如图中标号503所示,针对通信功能模块A预先构建有其对应的测试用通信功能模块A。测试用通信功能模块A包括PIN3和PIN4共两个待配置引脚,且PIN3输入引脚,PIN4作为输出引脚。
如图中标号504所示,测试用通信功能模块A的输入引脚PIN3通过传输门T0-T4分别与芯片的管脚PAD0-PAD4连接。测试用通信功能模块A的输出引脚PIN4通过传输门T5-T9分别与芯片的管脚PAD0-PAD4连接。
如图5所示,针对芯片的管脚PAD0-PAD4的随机化配置使得通信功能模块A的输出引脚PIN0与输入管脚PAD2连接,因此,输入管脚PAD2与测试用通信功能模块A的输入引脚PIN3之间的传输门T2接收到的信号为0以使输入管脚PAD2与测试用通信功能模块A的输入引脚PIN3之间的连接为导通状态,同时,PAD0、PAD1、PAD3和PAD4分别与PIN3之间的传输门接收到的信号为1以使管脚PAD0、PAD1、PAD3和PAD4分别与测试用通信功能模块A的输入引脚PIN3之间的连接为高阻状态。
对应地,针对芯片的管脚PAD0-PAD4的随机化配置使得通信功能模块A的输入引脚PIN1与输出管脚PAD4连接,因此,输出管脚PAD4与测试用通信功能模块A的输出管脚PIN4之间的传输门T9接收到的信号为0以使输出管脚PAD4与测试用通信功能模块A的输出管脚PIN4之间连接为导通状态,同时,PAD0-PAD3分别与PIN4之间的传输门接收到的信号为1以使管脚PAD0-PAD3分别与测试用通信功能模块A的输出管脚PIN4之间连接为高阻状态。
需要说明的是,为了图示清楚性,图5示出的仅仅是一个通信功能模块A对应的测试用通信功能模块的引脚与芯片的管脚之间的连接配置的示意图。芯片还可以包括任意数目的通信功能模块以及对应的测试用通信功能模块,都可以采用同样的方式进行连接配置。
从图4中可以看出,与图2对应的实施例相比,本实施例中的芯片测试方法实现了利用芯片的通信功能模块对应的测试用设计模型对芯片的通信功能模块进行连接性测试和功能性测试,以提升芯片测试的便捷性,无需测试人员人工花费较多的时间搭建测试环境等,从而有助于提升测试效率。
进一步参考图6,作为对上述各图所示方法的实现,本公开提供了一种芯片测试装置的一个实施例,该装置实施例与图2所示的方法实施例相对应,该装置具体可以应用于各种电子设备中。
如图6所示,本实施例的芯片测试装置600可以包括:获取单元601、生成单元602、配置单元603和测试单元604。其中,获取单元601被配置成获取芯片的设计模型;生成单元602被配置成生成针对芯片的管脚的随机化配置,其中,随机化配置用于指示芯片的各管脚分别与芯片的各通信功能模块的各引脚之间的连接关系;配置单元603被配置成按照随机化配置对设计模型中的数据选择器进行对应配置,得到配置后的设计模型;测试单元604被配置成利用配置后的设计模型,对各通信功能模块进行功能测试。
在本实施例中,测试装置600中:获取单元601、生成单元602、配置单元603和测试单元604的具体处理及其所带来的技术效果可分别参考图2对应实施例中的步骤201-204的相关说明,在此不再赘述。
在本实施例的一些可选的实现方式中,随机化配置使得每个管脚仅与一个通信功能模块的一个引脚对应连接。
在本实施例的一些可选的实现方式中,随机化配置使得每个管脚的功能属性与对应连接的引脚的功能属性匹配,其中,功能属性用于指示输入和/或输出。
在本实施例的一些可选的实现方式中,上述测试单元604进一步被配置成:对于各通信功能模块中的通信功能模块,获取该通信功能模块对应的功能测试用例,以及控制设计模型执行获取的功能测试用例以对该通信功能模块进行功能测试。
在本实施例的一些可选的实现方式中,上述测试单元604进一步被配置成:对于各通信功能模块中的通信功能模块,获取该通信功能模块的测试用设计模型,以及利用测试用设计模型和配置后的设计模型对该通信功能模块进行功能测试。
在本实施例的一些可选的实现方式中,测试用设计模型包括与该通信功能模块的各引脚分别一一对应的引脚;以及上述测试单元604进一步被配置成:将测试用设计模型的各引脚分别与对应的通信功能模块的引脚所对应连接的管脚对应连接,形成测试用设计模型和配置后的设计模型之间的连接关系;利用测试用设计模型、配置后的设计模型和连接关系,对该通信功能模块进行功能测试。
根据本公开的实施例,本公开还提供了一种芯片,该芯片可以根据该芯片的设计模型生成得到。其中,该芯片的设计模型可以利用上文描述的芯片测试方法进行功能测试。一般地,在芯片的设计模型通过功能测试之后,再根据该设计模型进行芯片生产。
根据本公开的实施例,本公开还提供了一种电子设备、一种可读存储介质和一种计算机程序产品。
图7示出了可以用来实施本公开的实施例的示例电子设备700的示意性框图。电子设备旨在表示各种形式的数字计算机,诸如,膝上型计算机、台式计算机、工作台、个人数字助理、服务器、刀片式服务器、大型计算机、和其它适合的计算机。电子设备还可以表示各种形式的移动装置,诸如,个人数字处理、蜂窝电话、智能电话、可穿戴设备和其它类似的计算装置。本文所示的部件、它们的连接和关系、以及它们的功能仅仅作为示例,并且不意在限制本文中描述的和/或者要求的本公开的实现。
如图7所示,设备700包括计算单元701,其可以根据存储在只读存储器(ROM)702中的计算机程序或者从存储单元708加载到随机访问存储器(RAM)703中的计算机程序,来执行各种适当的动作和处理。在RAM 703中,还可存储设备700操作所需的各种程序和数据。计算单元701、ROM 702以及RAM 703通过总线704彼此相连。输入/输出(I/O)接口705也连接至总线704。
设备700中的多个部件连接至I/O接口705,包括:输入单元706,例如键盘、鼠标等;输出单元707,例如各种类型的显示器、扬声器等;存储单元708,例如磁盘、光盘等;以及通信单元709,例如网卡、调制解调器、无线通信收发机等。通信单元709允许设备700通过诸如因特网的计算机网络和/或各种电信网络与其他设备交换信息/数据。
计算单元701可以是各种具有处理和计算能力的通用和/或专用处理组件。计算单元701的一些示例包括但不限于中央处理单元(CPU)、图形处理单元(GPU)、各种专用的人工智能(AI)计算芯片、各种运行机器学习模型算法的计算单元、数字信号处理器(DSP)、以及任何适当的处理器、控制器、微控制器等。计算单元701执行上文所描述的各个方法和处理,例如芯片测试方法。例如,在一些实施例中,芯片测试方法可被实现为计算机软件程序,其被有形地包含于机器可读介质,例如存储单元708。在一些实施例中,计算机程序的部分或者全部可以经由ROM 702和/或通信单元709而被载入和/或安装到设备700上。当计算机程序加载到RAM 703并由计算单元701执行时,可以执行上文描述的芯片测试方法的一个或多个步骤。备选地,在其他实施例中,计算单元701可以通过其他任何适当的方式(例如,借助于固件)而被配置为执行芯片测试方法。
本文中以上描述的系统和技术的各种实施方式可以在数字电子电路系统、集成电路系统、场可编程门阵列(FPGA)、专用集成电路(ASIC)、专用标准产品(ASSP)、芯片上系统的系统(SOC)、负载可编程逻辑设备(CPLD)、计算机硬件、固件、软件、和/或它们的组合中实现。这些各种实施方式可以包括:实施在一个或者多个计算机程序中,该一个或者多个计算机程序可在包括至少一个可编程处理器的可编程系统上执行和/或解释,该可编程处理器可以是专用或者通用可编程处理器,可以从存储系统、至少一个输入装置、和至少一个输出装置接收数据和指令,并且将数据和指令传输至该存储系统、该至少一个输入装置、和该至少一个输出装置。
用于实施本公开的方法的程序代码可以采用一个或多个编程语言的任何组合来编写。这些程序代码可以提供给通用计算机、专用计算机或其他可编程数据处理装置的处理器或控制器,使得程序代码当由处理器或控制器执行时使流程图和/或框图中所规定的功能/操作被实施。程序代码可以完全在机器上执行、部分地在机器上执行,作为独立软件包部分地在机器上执行且部分地在远程机器上执行或完全在远程机器或服务器上执行。
在本公开的上下文中,机器可读介质可以是有形的介质,其可以包含或存储以供指令执行系统、装置或设备使用或与指令执行系统、装置或设备结合地使用的程序。机器可读介质可以是机器可读信号介质或机器可读储存介质。机器可读介质可以包括但不限于电子的、磁性的、光学的、电磁的、红外的、或半导体系统、装置或设备,或者上述内容的任何合适组合。机器可读存储介质的更具体示例会包括基于一个或多个线的电气连接、便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦除可编程只读存储器(EPROM或快闪存储器)、光纤、便捷式紧凑盘只读存储器(CD-ROM)、光学储存设备、磁储存设备、或上述内容的任何合适组合。
为了提供与用户的交互,可以在计算机上实施此处描述的系统和技术,该计算机具有:用于向用户显示信息的显示装置(例如,CRT(阴极射线管)或者LCD(液晶显示器)监视器);以及键盘和指向装置(例如,鼠标或者轨迹球),用户可以通过该键盘和该指向装置来将输入提供给计算机。其它种类的装置还可以用于提供与用户的交互;例如,提供给用户的反馈可以是任何形式的传感反馈(例如,视觉反馈、听觉反馈、或者触觉反馈);并且可以用任何形式(包括声输入、语音输入或者、触觉输入)来接收来自用户的输入。
可以将此处描述的系统和技术实施在包括后台部件的计算系统(例如,作为数据服务器)、或者包括中间件部件的计算系统(例如,应用服务器)、或者包括前端部件的计算系统(例如,具有图形用户界面或者网络浏览器的用户计算机,用户可以通过该图形用户界面或者该网络浏览器来与此处描述的系统和技术的实施方式交互)、或者包括这种后台部件、中间件部件、或者前端部件的任何组合的计算系统中。可以通过任何形式或者介质的数字数据通信(例如,通信网络)来将系统的部件相互连接。通信网络的示例包括:局域网(LAN)、广域网(WAN)和互联网。
计算机系统可以包括客户端和服务器。客户端和服务器一般远离彼此并且通常通过通信网络进行交互。通过在相应的计算机上运行并且彼此具有客户端-服务器关系的计算机程序来产生客户端和服务器的关系。服务器可以是云服务器,也可以是分布式系统的服务器,或者是结合了区块链的服务器。
应该理解,可以使用上面所示的各种形式的流程,重新排序、增加或删除步骤。例如,本公开中记载的各步骤可以并行地执行也可以顺序地执行也可以不同的次序执行,只要能够实现本公开提供的技术方案所期望的结果,本文在此不进行限制。
上述具体实施方式,并不构成对本公开保护范围的限制。本领域技术人员应该明白的是,根据设计要求和其他因素,可以进行各种修改、组合、子组合和替代。任何在本公开的精神和原则之内所作的修改、等同替换和改进等,均应包含在本公开保护范围之内。
Claims (11)
1.一种芯片测试方法,包括:
获取芯片的设计模型;
生成针对所述芯片的管脚的随机化配置,其中,所述随机化配置用于指示所述芯片的各管脚分别与所述芯片的各通信功能模块的各引脚之间的连接关系;
按照所述随机化配置对所述设计模型中的数据选择器进行对应配置,得到配置后的设计模型;
利用所述配置后的设计模型,对所述各通信功能模块进行功能测试;
其中,所述利用所述配置后的设计模型,对所述各通信功能模块进行功能测试,包括:
对于所述各通信功能模块中的通信功能模块,获取该通信功能模块的测试用设计模型,其中,所述测试用设计模型包括与该通信功能模块的各引脚分别一一对应的引脚;
将所述测试用设计模型的各引脚分别与对应的通信功能模块的引脚所对应连接的管脚对应连接,形成所述测试用设计模型和所述配置后的设计模型之间的连接关系;
利用所述测试用设计模型、所述配置后的设计模型和所述连接关系,对该通信功能模块进行功能测试。
2.根据权利要求1所述的方法,其中,所述随机化配置使得每个管脚仅与一个通信功能模块的一个引脚对应连接。
3.根据权利要求2所述的方法,其中,所述随机化配置使得每个管脚的功能属性与对应连接的引脚的功能属性匹配,其中,功能属性用于指示输入和/或输出。
4.根据权利要求1所述的方法,其中,所述利用所述配置后的设计模型,对所述各通信功能模块进行功能测试,包括:
对于所述各通信功能模块中的通信功能模块,获取该通信功能模块对应的功能测试用例,以及控制所述设计模型执行获取的功能测试用例以对该通信功能模块进行功能测试。
5.一种芯片测试的装置,包括:
获取单元,被配置成获取芯片的设计模型;
生成单元,被配置成生成针对所述芯片的管脚的随机化配置,其中,所述随机化配置用于指示所述芯片的各管脚分别与所述芯片的各通信功能模块的各引脚之间的连接关系;
配置单元,被配置成按照所述随机化配置对所述设计模型中的数据选择器进行对应配置,得到配置后的设计模型;
测试单元,被配置成利用所述配置后的设计模型,对所述各通信功能模块进行功能测试;
其中,所述测试测试单元进一步被配置成:对于所述各通信功能模块中的通信功能模块,获取该通信功能模块的测试用设计模型,其中,所述测试用设计模型包括与该通信功能模块的各引脚分别一一对应的引脚;
将所述测试用设计模型的各引脚分别与对应的通信功能模块的引脚所对应连接的管脚对应连接,形成所述测试用设计模型和所述配置后的设计模型之间的连接关系;
利用所述测试用设计模型、所述配置后的设计模型和所述连接关系,对该通信功能模块进行功能测试。
6.根据权利要求5所述的装置,其中,所述随机化配置使得每个管脚仅与一个通信功能模块的一个引脚对应连接。
7.根据权利要求6所述的装置,其中,所述随机化配置使得每个管脚的功能属性与对应连接的引脚的功能属性匹配,其中,功能属性用于指示输入和/或输出。
8.根据权利要求5所述的装置,其中,所述测试单元进一步被配置成:
对于所述各通信功能模块中的通信功能模块,获取该通信功能模块对应的功能测试用例,以及控制所述设计模型执行获取的功能测试用例以对该通信功能模块进行功能测试。
9.一种芯片,其中,所述芯片根据其对应的设计模型生产得到,所述设计模型利用权利要求1-4中任一项所述的方法进行功能测试。
10.一种电子设备,包括:
至少一个处理器;以及
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行权利要求1-4中任一项所述的方法。
11.一种存储有计算机指令的非瞬时计算机可读存储介质,其中,所述计算机指令用于使所述计算机执行根据权利要求1-4中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110558763.8A CN113254284B (zh) | 2021-05-21 | 2021-05-21 | 芯片测试方法、装置、设备、存储介质以及程序产品 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110558763.8A CN113254284B (zh) | 2021-05-21 | 2021-05-21 | 芯片测试方法、装置、设备、存储介质以及程序产品 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113254284A CN113254284A (zh) | 2021-08-13 |
CN113254284B true CN113254284B (zh) | 2023-06-23 |
Family
ID=77183673
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110558763.8A Active CN113254284B (zh) | 2021-05-21 | 2021-05-21 | 芯片测试方法、装置、设备、存储介质以及程序产品 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113254284B (zh) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113533943B (zh) * | 2021-09-16 | 2021-12-07 | 深圳市爱普特微电子有限公司 | 用于芯片的输入参数测试电路及方法 |
CN114741243B (zh) * | 2022-04-06 | 2025-06-13 | 深圳数马电子技术有限公司 | 引脚配置方法、控制装置和存储介质 |
CN115473831B (zh) * | 2022-11-14 | 2023-01-10 | 中诚华隆计算机技术有限公司 | 一种物联网芯片的可靠性校验方法及系统 |
CN116050321B (zh) * | 2023-03-24 | 2023-06-27 | 南京芯驰半导体科技有限公司 | 数据处理方法、装置、电子设备及存储介质 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111766509A (zh) * | 2020-09-02 | 2020-10-13 | 深圳芯邦科技股份有限公司 | 一种芯片测试方法及相关设备 |
CN111856258A (zh) * | 2020-07-24 | 2020-10-30 | 北京百度网讯科技有限公司 | 用于芯片的测试的方法、设备、存储介质和相应的芯片 |
CN112270152A (zh) * | 2020-10-29 | 2021-01-26 | 厦门紫光展锐科技有限公司 | 芯片io引脚验证系统和方法 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10067183B2 (en) * | 2016-06-21 | 2018-09-04 | International Business Machines Corporation | Portion isolation architecture for chip isolation test |
-
2021
- 2021-05-21 CN CN202110558763.8A patent/CN113254284B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111856258A (zh) * | 2020-07-24 | 2020-10-30 | 北京百度网讯科技有限公司 | 用于芯片的测试的方法、设备、存储介质和相应的芯片 |
CN111766509A (zh) * | 2020-09-02 | 2020-10-13 | 深圳芯邦科技股份有限公司 | 一种芯片测试方法及相关设备 |
CN112270152A (zh) * | 2020-10-29 | 2021-01-26 | 厦门紫光展锐科技有限公司 | 芯片io引脚验证系统和方法 |
Non-Patent Citations (1)
Title |
---|
FPGA可编程资源测试技术研究;张金凤;唐金慧;马成英;;电子元器件与信息技术(第07期);第63-66页 * |
Also Published As
Publication number | Publication date |
---|---|
CN113254284A (zh) | 2021-08-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN113254284B (zh) | 芯片测试方法、装置、设备、存储介质以及程序产品 | |
US20130268708A1 (en) | Motherboard test device and connection module thereof | |
CN111090556B (zh) | 一种片上系统及usb物理层测试方法 | |
CN113128691B (zh) | 量子门标定方法及装置、电子设备和介质 | |
US9002694B2 (en) | Verification of design derived from power intent | |
CN114389969B (zh) | 客户端的测试方法、装置、电子设备和存储介质 | |
CN113014339B (zh) | PCIe外插卡接收通道的质量测试方法、装置及设备 | |
CN110968004B (zh) | 一种基于FPGA原型验证开发板的Cable测试系统 | |
CN110022178B (zh) | 一种WiFi模块的检测电路及检测方法 | |
CN115481594B (zh) | 计分板实现方法、计分板、电子设备及存储介质 | |
CN111693294A (zh) | 车辆检测方法、装置、终端设备及存储介质 | |
CN117034841B (zh) | 一种用于数模混合仿真验证的方法、计算设备及介质 | |
CN109491909A (zh) | 一种cpld刷新验证方法、装置、终端及存储介质 | |
CN117076227A (zh) | 硬盘背板监控功能的模拟测试系统、方法、装置及介质 | |
CN114299534B (zh) | 电路原理图的检测方法、装置、终端设备以及存储介质 | |
CN109726476B (zh) | 基于uvm验证平台的验证方法和装置 | |
CN116306400B (zh) | 一种集成电路验证方法、系统、装置、设备及介质 | |
CN117436405B (zh) | 一种仿真验证方法、装置及电子设备 | |
CN115983192B (zh) | 验证系统及配置验证系统的外设子卡资源的方法 | |
CN114218026B (zh) | 计分板生成方法、装置、电子设备及存储介质 | |
EP4372553A1 (en) | Enhancing processing speed of a remote controlled radio frequency test or measurement device | |
CN115459842A (zh) | 光纤连接检测方法、装置、计算机设备、存储介质和产品 | |
CN117061564A (zh) | 车辆信号传输状态的验证方法、装置、设备及介质 | |
CN110888046A (zh) | 系统级芯片及其测试方法、存储介质、终端 | |
CN119761280A (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 |