CN113376514A - Fpga芯片测试方法、装置、系统及存储介质 - Google Patents
Fpga芯片测试方法、装置、系统及存储介质 Download PDFInfo
- Publication number
- CN113376514A CN113376514A CN202110644106.5A CN202110644106A CN113376514A CN 113376514 A CN113376514 A CN 113376514A CN 202110644106 A CN202110644106 A CN 202110644106A CN 113376514 A CN113376514 A CN 113376514A
- Authority
- CN
- China
- Prior art keywords
- test
- iob
- configuration
- data
- fpga chip
- 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
- G01—MEASURING; TESTING
- G01R—MEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
- G01R31/00—Arrangements for testing electric properties; Arrangements for locating electric faults; Arrangements for electrical testing characterised by what is being tested not provided for elsewhere
- G01R31/28—Testing of electronic circuits, e.g. by signal tracer
- G01R31/317—Testing of digital circuits
- G01R31/3181—Functional testing
- G01R31/3185—Reconfiguring for testing, e.g. LSSD, partitioning
- G01R31/318516—Test of programmable logic devices [PLDs]
- G01R31/318519—Test of field programmable gate arrays [FPGA]
Landscapes
- Engineering & Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Tests Of Electronic Circuits (AREA)
Abstract
本申请实施例适用于芯片测试技术领域,提供一种FPGA芯片测试方法、装置、系统及计算机可读存储介质。方法包括:根据测试项目向配置芯片发送配置数据,以使配置芯片将配置数据烧入被测FPGA芯片,配置芯片设置在自动测试设备上;向自动测试设备发送测试激励数据,接收来自自动测试设备的测试响应结果。本申请通过设置在自动测试设备上的配置芯片,根据测试项目将配置数据发送到被测FPGA芯片,克服了现有自动测试设备不具备芯片配置功能的问题,无需制作FPGA芯片测试板,可随时通过测试软件向被测FPGA芯片发送配置信息,无需反复上下电插拔测试板,为FPGA芯片测试节省大量配置时间,提升测试效率。
Description
技术领域
本申请属于芯片测试技术领域,尤其涉及一种FPGA芯片测试方法、装置、系统及计算机可读存储介质。
背景技术
随着FPGA器件在生产生活中的应用逐渐广泛,FPGA器件的工艺技术发展越来越受到国家的重视。而FPGA测试技术作为FPGA芯片研发和生产中必不可少的一环,也需要不断改进以满足快速发展的FPAG芯片的测试要求。
FPGA是一种事先无功能器件,只包含大量重复IOB(输入输出模块),CLB(可配置逻辑块)和布线信道等并不复杂的基本单元。目前主要采用自动测试设备(ATE)测试FPGA。然而,FPGA管脚少则上百,多则上千,每次完成FPGA配置,FPGA就具有一定功能,想要完成对FPGA内部资源的完整测试,需要多次下载配置图形,反复施加激励并回收测试响应,以及通过对测试响应数据的分析来诊断FPGA的故障类型。另外,通过ATE完成测试中配置功能时,需要人工或电脑多次反复的专门编程修改配置数据,以生成测试系统可执行的测试激励形式。
现有的ATE不具备FPGA配置功能,传统的FPGA测试是先由计算机将配置数据下载到测试板的配置存储器芯片中,再将该安装了被测FPGA的测试板安装至ATE,上电之后由该存储器芯片对FPGA进行配置。完成一次测试后,需要将测试板下电后拔出,再使用计算机把下一次测试的配置数据下载到配置存储器芯片上,非常耗时。FPGA的测试时间的花费是FPGA成本的重要组成部分。FPGA配置时间往往决定了FPGA的测试时间。随着FPGA规模增大,FPGA配置次数会呈几何指数增加,对FPGA内部资源的遍历测试,也会极为耗时,虽然理论上可以实现,但难以在生产中进行应用。
发明内容
本申请实施例提供了一种FPGA芯片测试方法、装置、系统及计算机可读存储介质,可以将配置信息随时更新到被测FPGA芯片,无需制作测试板,也无需反复上下电插拔测试板。
第一方面,本申请实施例提供了一种FPGA芯片测试方法,包括:
根据测试项目向配置芯片发送配置数据,以使所述配置芯片将所述配置数据烧入被测FPGA芯片,所述配置芯片设置在自动测试设备上;
向所述自动测试设备发送测试激励数据,以使所述自动测试设备向所述被测FPGA芯片发送所述测试激励数据;
接收来自所述自动测试设备的测试响应结果,所述测试响应结果为所述自动测试设备从所述被测FPGA芯片获得的,且是所述被测FPGA芯片根据所述配置数据实现相应功能产生的。
示例性的,若所述测试项目为IOB功能测试,则相应的配置数据包括第一配置数据和第二配置数据;
所述第一配置数据为响应于第一配置操作获得的数据,所述第一配置操作包括:在所述被测FPGA包含的所有IOB单元中去除时钟输入IOB单元和复位输入IOB单元,将其余IOB单元配置为多个IOB测试对,其中,每个所述IOB测试对包括一个具备寄存器的输入IOB单元和一个具备寄存器的输出IOB单元;以及将一个IOB测试对的输出IOB单元与另一个IOB测试对的输入IOB单元连接,使得所有的IOB测试对连接成移位寄存器链,其中,所述移位寄存器链的首位IOB测试对的输入IOB单元作为所述移位寄存器链的输入端口,所述移位寄存器链的末位IOB测试对的输出IOB单元作为所述移位寄存器链的输出端口;
所述第二配置数据为响应于第二配置操作获得的数据,所述第二配置操作为在所述第一配置数据的基础上,将所述第一配置数据的输入IOB单元配置为输出IOB单元,将所述第一配置数据的输出IOB单元配置为输入IOB单元;
所述第一配置数据用于完成第一次测试,所述第二配置数据用于完成第二次测试。
其中,向所述自动测试设备发送测试激励数据,以使所述自动测试设备向所述被测FPGA芯片发送所述测试激励数据,包括:
获取所述IOB测试对的数量;
根据所述IOB测试对的数量,向所述自动测试设备发送测试激励数据,以使所述自动测试设备向所述移位寄存器链的输入端口发送所述测试激励数据;
其中,所述测试初始信号的位数与所述IOB测试对的数量一致。
进一步的,接收来自所述自动测试设备的测试响应结果,包括:
在所述自动测试设备获取每个所述IOB测试对的移位信号之后,接收来自所述自动测试设备发送的每个所述IOB测试对的移位信号;
其中,所述测试响应结果包括每个所述IOB测试对的移位信号;
所述IOB测试对的移位信号为所述IOB测试对的输入IOB单元对接收到的测试激励数据进行脉冲移位得到的,所述IOB测试对的移位信号保存在所述IOB测试对的输入IOB单元的寄存器中;
其中,首位IOB测试对的输入IOB单元接收的测试激励数据为测试初始信号,其他IOB测试对的输入IOB单元接收的测试激励数据为相连接的IOB测试对的输出IOB单元输出的移位信号。
作为一种可能的实现方式,接收来自所述自动测试设备的测试响应结果之后,还包括:
分析所述测试响应结果,将每个IOB测试对的移位信号与正确移位信号比较;
将移位信号与正确移位信号不一致的所述IOB测试对的输入IOB单元确定为发生故障的IOB单元。
作为一种可能的实现方式,根据测试项目向配置芯片发送配置数据之后,还包括:
读取所述配置芯片的状态寄存器的值;
根据状态寄存器的值,判断所述配置芯片对被测FPGA芯片的配置是否成功;
若是,向所述自动测试设备发送测试激励数据。
作为一种可能的实现方式,根据测试项目向配置芯片发送配置数据之前,还包括:
获取测试项目和相应的配置数据;
根据所述测试项目和所述配置数据,生成测试激励数据。
第二方面,本申请实施例提供了一种FPGA测试装置,包括:
配置模块,用于根据测试项目向配置芯片发送配置数据,以使所述配置芯片将所述配置数据烧入被测FPGA芯片,所述配置芯片设置在自动测试设备上;
激励输出模块,用于向所述自动测试设备发送测试激励数据,以使所述自动测试设备向所述被测FPGA芯片发送所述测试激励数据;
响应回收模块,用于接收来自所述自动测试设备的测试响应结果,所述测试响应结果由所述自动测试设备从所述被测FPGA芯片获得,是所述被测FPGA芯片根据所述配置数据实现相应功能产生的。
第三方面,本申请实施例提供了一种FPGA测试系统,包括终端设备和自动测试设备;
所述终端设备与所述自动测试设备通信连接;
所述终端设备包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如第一方面所述的FPGA芯片测试方法。
第四方面,本申请实施例提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现如上第一方面所述的方法。
第五方面,本申请实施例提供了一种计算机程序产品,当计算机程序产品在终端设备上运行时,使得终端设备执行上述第一方面中任一项所述的方法。
可以理解的是,上述第二方面至第五方面的有益效果可以参见上述第一方面中的相关描述,在此不再赘述。
本申请实施例与现有技术相比存在的有益效果是:通过设置在自动测试设备上的配置芯片,根据测试项目将配置数据发送到被测FPGA芯片,克服了现有自动测试设备不具备芯片配置功能的问题,无需制作FPGA芯片测试板,可随时通过测试软件向被测FPGA芯片发送配置信息,无需反复上下电插拔测试板,为FPGA芯片测试节省大量配置时间,提升测试效率。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本申请一实施例提供的FPGA芯片测试方法的流程示意图;
图2是本申请另一实施例提供的FPGA芯片测试方法的流程示意图;
图3是本申请一实施例提供的一配置图形示意图;
图4是本申请一实施例提供的另一配置图形示意图;
图5是本申请一实施例提供的FPGA测试装置的结构示意图;
图6是本申请一实施例提供的FPGA芯片测试系统的结构示意图。
具体实施方式
以下描述中,为了说明而不是为了限定,提出了诸如特定系统结构、技术之类的具体细节,以便透彻理解本申请实施例。然而,本领域的技术人员应当清楚,在没有这些具体细节的其它实施例中也可以实现本申请。在其它情况中,省略对众所周知的系统、装置、电路以及方法的详细说明,以免不必要的细节妨碍本申请的描述。
在本申请说明书中描述的参考“一个实施例”或“一些实施例”等意味着在本申请的一个或多个实施例中包括结合该实施例描述的特定特征、结构或特点。由此,在本说明书中的不同之处出现的语句“在一个实施例中”、“在一些实施例中”、“在其他一些实施例中”、“在另外一些实施例中”等不是必然都参考相同的实施例,而是意味着“一个或多个但不是所有的实施例”,除非是以其他方式另外特别强调。术语“包括”、“包含”、“具有”及它们的变形都意味着“包括但不限于”,除非是以其他方式另外特别强调。
本申请实施例提供的FPGA芯片测试方法可以应用于一种FPGA芯片测试系统上,该系统包括执行该FPGA芯片测试方法的终端设备以及用于执行芯片测试的自动测试设备,终端设备与自动测试设备通信连接。在其他实施例中,可将终端设备集成到自动测试设备上。
终端设备根据自动测试设备提供的被测FPGA芯片的工作环境参数,工作环境参数包括但不限于电流、电压和温度等。终端设备通过软件模拟被测FPGA芯片的运行环境,把需要验证的部分模块通过下载配置数据至被测FPGA芯片中进行实时运行提高仿效速度,而其余模块则利用软件进行仿真;与此同时,通过终端设备的硬件进行测试软件的加速,软硬件通过PCI总线进行通信。
图1是本实施例提供的FPGA芯片测试方法的流程示意图。如图1所示,FPGA芯片测试方法包括如下步骤:
S11,根据测试项目向配置芯片发送配置数据。
配置芯片设置在自动测试设备上,自动测试设备与终端设备通信连接,连接方式通常是有线连接,配置芯片通过PCI通道从终端设备获取被测FPGA芯片的配置信息,便于随时更新配置信息,再由配置芯片将配置数据烧入被测FPGA芯片。
具体的,当测试系统启动时,首先需要对被测FPGA芯片进行配置,由软件向配置芯片发送配置开始指令,配置芯片接受指令后向被测FPGA芯片产生配置开始的时序,被测FPGA芯片准备接受配置数据。当终端设备查询到配置芯片的状态寄存器的值为ready时,开始发送配置数据;配置数据发送完成后,软件通过读取配置芯片的状态寄存器的值判断配置是否成功,若配置成功,则开始测试。
配置芯片可采用FPGA芯片。
S12,向自动测试设备发送测试激励数据。
配置成功后,终端设备向自动测试设备发送测试激励数据,再由自动测试设备向被测FPGA芯片发送测试激励数据。
具体的,测试激励数据根据测试项目和配置数据来生成。
S13,接收来自自动测试设备的测试响应结果。
被测FPGA芯片根据配置数据经过配置后实现相应功能,接收来自自动测试设备的测试激励数据,根据其具备的功能对测试激励数据进行处理后,返回测试响应结果。自动测试设备从被测FPGA芯片获得测试响应结果,并发送给终端设备。
如果需要进行下一次配置和测试流程,在一定的延时之后,终端设备的软硬件将恢复初始状态并选择新的配置数据和测试激励数据,开始新一轮的配置和测试流程。
本实施例通过为自动测试设备增加配置芯片,配置芯片通过PCI通道从终端设备获取配置数据,配置数据可根据测试需求随时更新并烧入被测FPGA芯片中;因为取消了传统测试方式的测试板,则无需再反复上下电及拔插测试板以进行被测FPGA芯片的配置,节省了大量的配置时间,也减少了人工介入,提升了测试效率。
下面以被测FPGA芯片的IOB功能测试为例,IOB是数据进出的通道,IOB功能测试是FPGA测试的首要任务。如图2所示,包括如下步骤:
S21,获取测试项目和相应的配置数据。
IOB功能测试需要测试其输入输出功能和内部的寄存器资源;输入输出寄存器资源测试可以分为输入寄存器测试和输出寄存器测试进行。因此,若测试项目为IOB功能测试,则需要进行两轮测试,相应的配置数据包括第一配置数据和第二配置数据,第一配置数据用于完成第一次测试,第二配置数据用于完成第二次测试。
S22,根据测试项目向配置芯片发送第一配置数据。
假设被测FPGA芯片包括2N个IOB单元,为了使测试全面覆盖,第一次测试执行第一配置操作后得到第一配置数据如下:
图3是本实施例提供的配置图形示意图。在被测FPGA包含的2N个IOB单元中去除时钟输入IOB单元和复位输入IOB单元,将其余(2N-2)个IOB单元配置得到多个IOB测试对(如图3中虚线框所示),其中,每个IOB测试对包括一个具备寄存器的输入IOB单元和一个具备寄存器的输出IOB单元。本实施例中,寄存器为D类型触发器。然后,将一个IOB测试对的输出IOB单元与另一个IOB测试对的输入IOB单元连接,使得所有的IOB测试对连接成移位寄存器链;其中,移位寄存器链包括首位IOB测试对、末位IOB测试对和多个中间IOB测试对,首位IOB测试对的输入IOB单元作为所述移位寄存器链的输入端口,末位IOB测试对的输出IOB单元作为所述移位寄存器链的输出端口,中间IOB测试对连接于首位IOB测试对和末位IOB测试对之间。按照第一配置数据配置后,获得的配置图形如图3所示,图3中的箭头表示测试激励数据的流向。
配置芯片将第一配置数据烧入被测FPGA芯片,将被测FPGA芯片的内部图形配置为图3所示,每个IOB测试对均具备脉冲移位和寄存功能。
S23,向自动测试设备发送测试激励数据。
获取IOB测试对的数量,本实施例中,(2N-2)个IOB单元配置得到(N-1)个IOB测试对。
测试激励数据包括测试初始信号。终端设备向自动测试设备发送测试初始信号,以使自动测试设备向移位寄存器链的输入端口发送测试初始信号。以二进制信号为例,测试初始信号可设置为“000…0001”,测试初始信号的位数与IOB测试对的数量一致。
首位IOB测试对的输入IOB单元接收测试初始信号“000…0001”,在该输入IOB单元功能正常的情况下,经过一个时钟上升沿将测试初始信号进行脉冲移位获得移位信号“000…0010”,并保存在寄存器中。
首位IOB测试对的输出IOB单元将移位信号“000…0010”输出到相连接的IOB测试对的输入IOB单元,作为所述相连接的IOB测试对的测试激励数据。同理,经过相连接的IOB测试对的脉冲移位,得到移位信号“000…0100”。
以此类推,测试激励数据依次经过所有IOB测试对的脉冲移位,直至末位IOB测试对的输出IOB单元输出移位信号“100…0000”时结束,完成本次测试。
将IOB单元配置为IOB测试对,并连接成移位寄存链,通过脉冲移位将输入的测试初始信号逐级移位后输出,避免了对(N-1)个输入IOB单元的每个测试激励数据进行单独赋值,可以提升测试效率。
S24,接收来自自动测试设备的测试响应结果。
测试响应结果包括每个IOB测试对的移位信号。自动测试设备获取每个IOB测试对的移位信号之后,终端设备接收来自自动测试设备发送的每个IOB测试对的移位信号。
进一步的,获取测试响应结果之后,还包括如下步骤:
S25,分析测试响应结果,将移位信号与正确移位信号不一致的IOB测试对的输入IOB单元确定为发生故障的IOB单元。
如上例,正确移位信号依次是“000…0010”、“000…0100”、“000…1000”、……和“100…0000”,将每个IOB测试对的移位信号与正确移位信号比较;若某一IOB测试对的输入IOB单元发生故障,则由其输出的移位信号则与正确移位信号不一致,进而导致其后的IOB测试对输出的移位信号也与正确移位信号不一致。
由此,可根据移位信号能够很容易判断出故障的IOB单元。
S26,根据测试项目向配置芯片发送第二配置数据。
第二配置数据通过执行第二配置操作得到,第二配置操作在第一配置数据的基础上,将第一配置数据的输入IOB单元配置为输出IOB单元,将第一配置数据的输出IOB单元配置为输入IOB单元,即测试激励数据的流向与第一配置数据相比方向相反,如图4所示。
按照步骤S23~S25所述,输入相应测试激励数据,经过脉冲移位后的移位信号在第二次配置后的输入IOB单元的D类型触发器中寄存,获取输出的移位信号或者从寄存器中读取移位信号,并根据移位信号判断相应的IOB单元是否有故障。
至此完成了对每个IOB单元的输入输出测试,以及每个IOB单元的寄存器资源测试。
本实施例以IOB功能测试为例,其他功能测试也可采用类似的方法。
本实施例还提供一种FPGA测试装置,用于执行上述实施例的FPGA芯片测试方法,所述装置由软件和/或硬件组成,软件模拟被测FPGA芯片的运行环境,把需要验证的部分模块通过配置数据下载至被测FPGA芯片中进行实时运行提高仿效速度,而其余模块则利用软件进行仿真;与此同时,通过硬件进行软件的加速,软硬件通过PCI总线进行通信。图5示出了该装置的结构示意图,为了便于说明,仅示出了与本申请实施例相关的部分。
该装置包括:
配置模块31,用于根据测试项目向配置芯片发送配置数据,以使配置芯片将配置数据烧入被测FPGA芯片,配置芯片设置在自动测试设备上;
激励输出模块32,用于向自动测试设备发送测试激励数据,以使自动测试设备向被测FPGA芯片发送测试激励数据;
响应回收模块33,用于接收来自自动测试设备的测试响应结果,测试响应结果是由自动测试设备从被测FPGA芯片获得的,且是被测FPGA芯片根据配置数据实现相应功能产生的。
需要说明的是,上述模块之间的信息交互、执行过程等内容,由于与本申请方法实施例基于同一构思,其具体功能及带来的技术效果,具体可参见方法实施例部分,此处不再赘述。
图6为本申请一实施例提供的FPGA测试系统的结构示意图。如图6所示,该系统包括终端设备4和自动测试设备5,终端设备4与自动测试设备5通信连接。
终端设备4包括:至少一个处理器40(图6中仅示出一个)、存储器41以及存储在所述存储器41中并可在所述至少一个处理器40上运行的计算机程序42,所述处理器40执行所述计算机程序42时实现上述任意各个方法实施例中的步骤。
所述终端设备可以是桌上型计算机、笔记本、掌上电脑及云端服务器等计算设备,也可以是集成于自动测试设备上具备计算能力的硬件模块。本领域技术人员可以理解,图6仅仅是终端设备的举例,并不构成对终端设备的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件,例如还可以包括输入输出设备、网络接入设备等。
所称处理器40可以是中央处理单元(Central Processing Unit,CPU),该处理器40还可以是其他通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现成可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
所述存储器41在一些实施例中可以是所述终端设备的内部存储单元,例如硬盘或内存;在另一些实施例中也可以是所述终端设备的外部存储设备,例如插接式硬盘、智能存储卡(Smart Media Card,SMC)、安全数字(Secure Digital,SD)卡、闪存卡(Flash Card)等。进一步地,所述存储器41还可以既包括所述终端设备的内部存储单元也包括外部存储设备。所述存储器41用于存储操作系统、应用程序、引导装载程序(BootLoader)、数据以及测试程序等,例如所述计算机程序的程序代码等。所述存储器41还可以用于暂时地存储已经输出或者将要输出的数据,如测试响应结果和被测FPGA的故障信息。
所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,仅以上述各功能单元、模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能单元、模块完成,即将所述装置的内部结构划分成不同的功能单元或模块,以完成以上描述的全部或者部分功能。实施例中的各功能单元、模块可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中,上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。另外,各功能单元、模块的具体名称也只是为了便于相互区分,并不用于限制本申请的保护范围。上述系统中单元、模块的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
本申请实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时可实现上述各个方法实施例中的步骤。
本申请实施例提供了一种计算机程序产品,当计算机程序产品在终端设备上运行时,使得终端设备可实现上述各个方法实施例中的步骤。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请实现上述实施例方法中的全部或部分流程,可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一计算机可读存储介质中,该计算机程序在被处理器执行时,可实现上述各个方法实施例的步骤。其中,所述计算机程序包括计算机程序代码,所述计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。所述计算机可读介质至少可以包括:能够将计算机程序代码携带到拍照装置/终端设备的任何实体或装置、记录介质、计算机存储器、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,RandomAccess Memory)、电载波信号、电信信号以及软件分发介质。例如U盘、移动硬盘、磁碟或者光盘等。在某些司法管辖区,根据立法和专利实践,计算机可读介质不可以是电载波信号和电信信号。
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述或记载的部分,可以参见其它实施例的相关描述。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
在本申请所提供的实施例中,应该理解到,所揭露的装置/终端设备和方法,可以通过其它的方式实现。例如,以上所描述的装置/终端设备实施例仅仅是示意性的,例如,所述模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
以上所述实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的精神和范围,均应包含在本申请的保护范围之内。
Claims (10)
1.一种FPGA芯片测试方法,其特征在于,包括:
根据测试项目向配置芯片发送配置数据,以使所述配置芯片将所述配置数据烧入被测FPGA芯片,所述配置芯片设置在自动测试设备上;
向所述自动测试设备发送测试激励数据,以使所述自动测试设备向所述被测FPGA芯片发送所述测试激励数据;
接收来自所述自动测试设备的测试响应结果,所述测试响应结果为所述自动测试设备从所述被测FPGA芯片获得的,且是所述被测FPGA芯片根据所述配置数据实现相应功能产生的。
2.如权利要求1所述的FPGA芯片测试方法,其特征在于,若所述测试项目为IOB功能测试,则相应的配置数据包括第一配置数据和第二配置数据;
所述第一配置数据为响应于第一配置操作获得的数据,所述第一配置操作包括:在所述被测FPGA包含的所有IOB单元中去除时钟输入IOB单元和复位输入IOB单元,将其余IOB单元配置为多个IOB测试对,其中,每个所述IOB测试对包括一个具备寄存器的输入IOB单元和一个具备寄存器的输出IOB单元;以及将一个IOB测试对的输出IOB单元与另一个IOB测试对的输入IOB单元连接,使得所有的IOB测试对连接成移位寄存器链,其中,所述移位寄存器链的首位IOB测试对的输入IOB单元作为所述移位寄存器链的输入端口,所述移位寄存器链的末位IOB测试对的输出IOB单元作为所述移位寄存器链的输出端口;
所述第二配置数据为响应于第二配置操作获得的数据,所述第二配置操作为在所述第一配置数据的基础上,将所述第一配置数据的输入IOB单元配置为输出IOB单元,将所述第一配置数据的输出IOB单元配置为输入IOB单元。
3.如权利要求2所述的FPGA芯片测试方法,其特征在于,向所述自动测试设备发送测试激励数据,以使所述自动测试设备向所述被测FPGA芯片发送所述测试激励数据,包括:
获取所述IOB测试对的数量;
根据所述IOB测试对的数量,向所述自动测试设备发送测试激励数据,以使所述自动测试设备向所述移位寄存器链的输入端口发送所述测试激励数据;
其中,所述测试激励数据的位数与所述IOB测试对的数量一致。
4.如权利要求3所述的FPGA芯片测试方法,其特征在于,接收来自所述自动测试设备的测试响应结果,包括:
在所述自动测试设备获取每个所述IOB测试对的移位信号之后,接收来自所述自动测试设备发送的每个所述IOB测试对的移位信号;
其中,所述测试响应结果包括每个所述IOB测试对的移位信号;
所述IOB测试对的移位信号为所述IOB测试对的输入IOB单元对接收到的测试激励数据进行脉冲移位得到的,所述IOB测试对的移位信号保存在所述IOB测试对的输入IOB单元的寄存器中;
其中,首位IOB测试对的输入IOB单元接收的测试激励数据为测试初始信号,其他IOB测试对的输入IOB单元接收的测试激励数据为相连接的IOB测试对的输出IOB单元输出的移位信号。
5.如权利要求4所述的FPGA芯片测试方法,其特征在于,接收来自所述自动测试设备的测试响应结果之后,还包括:
分析所述测试响应结果,将每个IOB测试对的移位信号与正确移位信号比较;
将移位信号与正确移位信号不一致的所述IOB测试对的输入IOB单元确定为发生故障的IOB单元。
6.如权利要求1所述的FPGA芯片测试方法,其特征在于,根据测试项目向配置芯片发送配置数据之后,还包括:
读取所述配置芯片的状态寄存器的值;
根据状态寄存器的值,判断所述配置芯片对被测FPGA芯片的配置是否成功;
若是,向所述自动测试设备发送测试激励数据。
7.如权利要求1所述的FPGA芯片测试方法,其特征在于,根据测试项目向配置芯片发送配置数据之前,还包括:
获取测试项目和相应的配置数据;
根据所述测试项目和所述配置数据,生成测试激励数据。
8.一种FPGA测试装置,其特征在于,包括:
配置模块,用于根据测试项目向配置芯片发送配置数据,以使所述配置芯片将所述配置数据烧入被测FPGA芯片,所述配置芯片设置在自动测试设备上;
激励输出模块,用于向所述自动测试设备发送测试激励数据,以使所述自动测试设备向所述被测FPGA芯片发送所述测试激励数据;
响应回收模块,用于接收来自所述自动测试设备的测试响应结果,所述测试响应结果由所述自动测试设备从所述被测FPGA芯片获得,是所述被测FPGA芯片根据所述配置数据实现相应功能产生的。
9.一种FPGA测试系统,其特征在于,包括终端设备和自动测试设备;
所述终端设备与所述自动测试设备通信连接;
所述终端设备包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如权利要求1至7任一项所述的FPGA芯片测试方法。
10.一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至7任一项所述的FPGA芯片测试方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110644106.5A CN113376514B (zh) | 2021-06-09 | 2021-06-09 | Fpga芯片测试方法、装置、系统及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110644106.5A CN113376514B (zh) | 2021-06-09 | 2021-06-09 | Fpga芯片测试方法、装置、系统及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113376514A true CN113376514A (zh) | 2021-09-10 |
CN113376514B CN113376514B (zh) | 2022-04-15 |
Family
ID=77573282
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110644106.5A Active CN113376514B (zh) | 2021-06-09 | 2021-06-09 | Fpga芯片测试方法、装置、系统及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113376514B (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117093432A (zh) * | 2023-10-16 | 2023-11-21 | 成都融见软件科技有限公司 | 一种信号激活状态的判断方法 |
CN117289114A (zh) * | 2023-10-10 | 2023-12-26 | 苏州异格技术有限公司 | 一种逻辑功能测试电路及测试方法 |
CN118069447A (zh) * | 2024-04-12 | 2024-05-24 | 济南智多晶微电子有限公司 | 自动化fpga布线资源测试方法、装置、电子设备及存储介质 |
Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101995546A (zh) * | 2010-11-16 | 2011-03-30 | 复旦大学 | 基于边界扫描的可编程逻辑器件自动测试系统与方法 |
CN102183726A (zh) * | 2011-03-16 | 2011-09-14 | 建荣集成电路科技(珠海)有限公司 | 一种基于fpga的集成电路芯片测试系统与方法 |
CN102332307A (zh) * | 2011-07-28 | 2012-01-25 | 中国空间技术研究院 | Sram型fpga单粒子效应试验系统及方法 |
CN103150436A (zh) * | 2013-03-12 | 2013-06-12 | 广西生态工程职业技术学院 | 基于ChipScope的EDA调试过程辅助分析装置 |
KR20150052563A (ko) * | 2013-11-06 | 2015-05-14 | 삼성전자주식회사 | 검사 장치 및 방법 |
CN105866665A (zh) * | 2016-03-31 | 2016-08-17 | 复旦大学 | 面向高性能SoC FPGA的功能遍历测试方法 |
CN111220900A (zh) * | 2020-03-02 | 2020-06-02 | 南京英锐创电子科技有限公司 | 芯片扫描链测试方法和系统 |
CN111398795A (zh) * | 2020-04-07 | 2020-07-10 | 华北水利水电大学 | 一种fpga内部dsp单元测试设备及使用方法 |
CN112067978A (zh) * | 2020-09-02 | 2020-12-11 | 中科亿海微电子科技(苏州)有限公司 | 一种基于fpga的fpga筛选测试系统及方法 |
CN112241388A (zh) * | 2019-07-17 | 2021-01-19 | 北京振兴计量测试研究所 | 基于flash和继电器的fpga配置测试系统及方法 |
-
2021
- 2021-06-09 CN CN202110644106.5A patent/CN113376514B/zh active Active
Patent Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101995546A (zh) * | 2010-11-16 | 2011-03-30 | 复旦大学 | 基于边界扫描的可编程逻辑器件自动测试系统与方法 |
CN102183726A (zh) * | 2011-03-16 | 2011-09-14 | 建荣集成电路科技(珠海)有限公司 | 一种基于fpga的集成电路芯片测试系统与方法 |
CN102332307A (zh) * | 2011-07-28 | 2012-01-25 | 中国空间技术研究院 | Sram型fpga单粒子效应试验系统及方法 |
CN103150436A (zh) * | 2013-03-12 | 2013-06-12 | 广西生态工程职业技术学院 | 基于ChipScope的EDA调试过程辅助分析装置 |
KR20150052563A (ko) * | 2013-11-06 | 2015-05-14 | 삼성전자주식회사 | 검사 장치 및 방법 |
CN105866665A (zh) * | 2016-03-31 | 2016-08-17 | 复旦大学 | 面向高性能SoC FPGA的功能遍历测试方法 |
CN112241388A (zh) * | 2019-07-17 | 2021-01-19 | 北京振兴计量测试研究所 | 基于flash和继电器的fpga配置测试系统及方法 |
CN111220900A (zh) * | 2020-03-02 | 2020-06-02 | 南京英锐创电子科技有限公司 | 芯片扫描链测试方法和系统 |
CN111398795A (zh) * | 2020-04-07 | 2020-07-10 | 华北水利水电大学 | 一种fpga内部dsp单元测试设备及使用方法 |
CN112067978A (zh) * | 2020-09-02 | 2020-12-11 | 中科亿海微电子科技(苏州)有限公司 | 一种基于fpga的fpga筛选测试系统及方法 |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117289114A (zh) * | 2023-10-10 | 2023-12-26 | 苏州异格技术有限公司 | 一种逻辑功能测试电路及测试方法 |
CN117093432A (zh) * | 2023-10-16 | 2023-11-21 | 成都融见软件科技有限公司 | 一种信号激活状态的判断方法 |
CN117093432B (zh) * | 2023-10-16 | 2024-01-26 | 成都融见软件科技有限公司 | 一种信号激活状态的判断方法 |
CN118069447A (zh) * | 2024-04-12 | 2024-05-24 | 济南智多晶微电子有限公司 | 自动化fpga布线资源测试方法、装置、电子设备及存储介质 |
CN118069447B (zh) * | 2024-04-12 | 2024-07-16 | 济南智多晶微电子有限公司 | 自动化fpga布线资源测试方法、装置、电子设备及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN113376514B (zh) | 2022-04-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN113376514B (zh) | Fpga芯片测试方法、装置、系统及存储介质 | |
CN109582525B (zh) | 测试代码验证方法、验证装置、设备和存储介质 | |
CN112100954A (zh) | 验证芯片的方法、装置和计算机存储介质 | |
CN107783873B (zh) | 一种烧录器自动化测试平台的实现方法 | |
CN111428431B (zh) | 一种支持eda软件的自动化测试并记录的方法及系统 | |
US4922445A (en) | Logic circuit simulation method | |
CN104865518A (zh) | 一种sram型fpga的clb动态老炼配置方法 | |
CN112100957B (zh) | 用于调试逻辑系统设计的方法、仿真器、存储介质 | |
CN107741904A (zh) | 测试机自动配置方法、装置、设备及存储介质 | |
CN109901059A (zh) | 一种复杂可编程逻辑器件重复配置测试方法及电子设备 | |
CN110362469A (zh) | 基于模块化测试用例控制方法、装置、终端与存储介质 | |
CN112948233A (zh) | 一种接口测试方法、装置、终端设备及介质 | |
CN112067978A (zh) | 一种基于fpga的fpga筛选测试系统及方法 | |
CN114996127A (zh) | 固态硬盘固件模块智能化测试方法及系统 | |
CN114328223A (zh) | 一种信息测试方法、装置、设备及存储介质 | |
CN117910398A (zh) | 仿真逻辑系统设计的方法、电子装置和存储介质 | |
CN114091393A (zh) | 一种执行工程变更指令的方法、装置、设备和存储介质 | |
CN114548027A (zh) | 在验证系统中追踪信号的方法、电子设备及存储介质 | |
CN111338964B (zh) | 一种有序批量测试方法、系统、终端及存储介质 | |
CN117149406A (zh) | 资源调度方法、装置、系统、计算机设备及存储介质 | |
CN115827568B (zh) | 获取逻辑系统设计的数据的方法、电子设备和存储介质 | |
CN108802600A (zh) | 一种基于fpga的集成电路验证系统及方法 | |
CN115840696A (zh) | 一种模块级形式验证测试平台、使用方法、设备及介质 | |
Donzellini et al. | Introduction to FPGA and HDL Design | |
CN117034820B (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 | ||
CB02 | Change of applicant information | ||
CB02 | Change of applicant information |
Address after: 518000 1st, 5th and 6th floors of No. 1 workshop, No. 28 Qingfeng Avenue, Baolong Street, Longgang District, Shenzhen City, Guangdong Province Applicant after: Shenzhen mifitech Technology Co.,Ltd. Address before: 518000 1st, 5th and 6th floors of No. 1 workshop, No. 28 Qingfeng Avenue, Baolong Street, Longgang District, Shenzhen City, Guangdong Province Applicant before: Shenzhen Mifeitake Technology Co.,Ltd. |
|
GR01 | Patent grant | ||
GR01 | Patent grant |