一种基于FPGA的芯片测试方法及装置
文献发布时间:2024-04-18 19:58:26
技术领域
本发明涉及芯片引脚测试技术领域,特别涉及一种基于FPGA的芯片测试方法及装置。
背景技术
车用控制类芯片由于其应用遍布车上各个系统的广泛性,为了缩短研发周期、降低成本,同时又要确保其可靠性,通常在设计之初,会使用同一个pin角复用不同的功能,尤其是针对数字引脚,如同一个pin可能具有UART、SPI、can、LIN、FLEXRAY、I2C、RS232、RS485、RS422、GPIO、并口总线等多种功能的复用。
目前,符合车规要求的芯片需要更高的可靠性,但现阶段基于车规芯片数字类型引脚测试中,板卡的测试基本只能验证数字引脚的单一功能,不能覆盖芯片引脚所有的功能,存在验证不全面,验证成本高昂等问题。
发明内容
为了解决现有技术中车规芯片数字类型引脚测试中产生的功能验证单一、全面验证成本高昂的技术问题,本发明提供了一种基于FPGA的芯片测试方法及装置。
本发明的技术方案如下:
一种基于FPGA的芯片测试方法,包括以下步骤:
通过所述上位机模块根据被测芯片模块编辑测试功能生成测试命令,并选择及下发测试命令至FPGA测试平台;
所述FPGA测试平台接收上位机模块下发的测试命令后,生成符合测试命令的通信代码,并通过通信代码配置到被测芯片模块的pin上,建立与被测芯片模块的通信关系;
所述被测芯片模块根据测试命令产生相关测试通信数据,并通过pin反馈相关测试通信数据至FPGA测试平台上;
所述FPGA测试平台对被测芯片模块所反馈的测试通信数据进行判断,并将判断结果反馈到上位机模块上进行显示和/或警告;
重复上述步骤,直至对所述被测芯片模块上的pin完成测试。
进一步地,所述被测芯片模块上的pin根据上位机模块下发的测试命令切换通信功能。
进一步地,当所述FPGA测试平台对被测芯片模块所反馈的测试通信数据进行判断时,包括:
检测到被测芯片模块返回正确通信数据,所述FPGA测试平台将结果上传到上位机模块上,所述上位机模块显示测试结果正确;
检测到被测芯片模块返回错误通信数据,所述FPGA测试平台将结果反馈至上位机模块上,所述上位机模块显示测试结果错误并发出警告信号。
本发明还提供了一种基于FPGA的芯片测试装置,实现上述任一项所述的基于FPGA的芯片测试方法,包括被测芯片模块、FPGA测试平台、上位机模块,所述被测芯片模块通过多个pin接口与FPGA测试平台相互接通,所述FPGA测试平台与上位机模块通过以太网通信接口相连。
进一步地,还包括电源模块,所述被测芯片模块、FPGA测试平台、上位机模块均与电源模块连接,所述电源模块为被测芯片模块、FPGA测试平台及上位机模块提供电源。
进一步地,所述被测芯片模块上包括但不限于UART、SPI、CAN、LIN、FLEXRAY、I2C、RS232、RS485、RS422、GPIO、并口总线功能的一种或多种pin通信接口。
进一步地,所述被测芯片模块上的pin可进行转换为CAN或I2C通信功能。
进一步地,所述被测芯片模块还通过SPI通信接口与FPGA测试平台相连,实现自身pin功能的切换。
进一步地,所述FPGA测试平台上还设置有多种通信接口与被测芯片模块上的多个pin接口相连。
进一步地,所述上位机模块运行在工控机或单机电脑上。
本发明的有益效果至少包括:通过FPGA的编辑功能实现与被测芯片的每个pin的灵活配置,进而实现被测芯片上的多种通信信号的模拟,更适用于不同引脚布局的芯片驱动的可重构逻辑编辑;通过本发明提供的测试方法,可以较为轻松的覆盖数字类型引脚的所有功能测试,实现自动验证,降低验证成本。
附图说明
图1为本发明提供的实施例1的上位机模块控制逻辑框图示意图。
图2为本发明提供的实施例1的FPGA测试平台控制逻辑框图示意图。
图3为本发明提供的实施例1的被测芯片模块运行逻辑框图示意图。
图4为本发明提供的实施例2的基于FPGA的芯片测试装置的结构组成框图示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
实施例1
结合图1-3所示,本实施例提供了一种基于FPGA的芯片测试方法,包括以下步骤:
通过所述上位机模块根据被测芯片模块编辑测试功能生成测试命令,并选择及下发测试命令至FPGA测试平台;
所述FPGA测试平台接收上位机模块下发的测试命令后,生成符合测试命令的通信代码,并通过通信代码配置到被测芯片模块的pin上,建立与被测芯片模块的通信关系;
所述被测芯片模块根据测试命令产生相关测试通信数据,并通过pin反馈相关测试通信数据至FPGA测试平台上;
所述FPGA测试平台对被测芯片模块所反馈的测试通信数据进行判断,并将判断结果反馈到上位机模块上进行显示和/或警告;
重复上述步骤,直至对所述被测芯片模块上的pin完成测试。
进一步地,所述被测芯片模块上的pin根据上位机模块下发的测试命令切换通信功能。
进一步地,当所述FPGA测试平台对被测芯片模块所反馈的测试通信数据进行判断时,包括:
检测到被测芯片模块返回正确通信数据,所述FPGA测试平台将结果上传到上位机模块上,所述上位机模块显示测试结果正确;
检测到被测芯片模块返回错误通信数据,所述FPGA测试平台将结果反馈至上位机模块上,所述上位机模块显示测试结果错误并发出警告信号。
本实施例的实施:
被测芯片上的同一个pin同时具有CAN和I2C总线的功能,被测芯片通过自身软件提供的控制代码对功能进行转换。
当上位机模块发出测试CAN通信测试命令时,通过以太网将命令传送到FPGA测试平台上,FPGA产生一段can通信的基础代码,并将代码发送到与被测芯片相连接的pin上,与被测芯片建立起can通信关系,被测芯片将反馈给FPGA相关的通信数据,FPGA对反馈的数据进行判断,检测被测芯片是否返回了正确的can通信数据;
若判断出被测芯片正确返回can通信数据,FPGA将被测芯片返回结果通过以太网上次到上位机模块上,上位机模块显示测试结果正确;若判断出被测芯片错误返回can通信数据,FPGA将被测芯片返回结果反馈到上位机模块上,上位机模块显示测试结果错误并发出警告信号。
当上位机模块发出测试I2C通信测试命令时,通过以太网将命令传送到FPGA测试平台上,FPGA产生一段I2C通信的基础代码,并将代码发送到与被测芯片相连接的pin上,与被测芯片建立起I2C通信关系,被测芯片将反馈给FPGA相关的通信数据,FPGA对反馈的数据进行判断,检测被测芯片是否返回了正确的I2C通信数据;
若判断出被测芯片正确返回I2C通信数据,FPGA将被测芯片返回结果通过以太网上传到上位机模块上,上位机模块显示测试结果正确;若判断出被测芯片错误返回I2C通信数据,FPGA将被测芯片返回结果反馈到上位机模块上,上位机模块显示测试结果错误并发出警告信号。
上位机模块的测试顺序以及测试内容可以进行自定义编程操作,实现灵活配置,且具有丰富的操作界面以及操作权限。如图1所示,上位机模块上电启动后,根据被测芯片编辑测试功能,选择测试功能1,向FPGA测试平台下发测试命令1,然后接收反馈到FPGA测试平台上的测试结果1,FPGA测试平台对测试结果1进行判断,测试结果1判断正常,上位机模块显示结果正常,测试结果1判断错误,上位机模块显示结果错误,并警告及记录故障;接着上位机模块选择测试功能2,3,……,N,重复上述操作,直至对所有数字功能进行测试完毕。
FPGA测试平台内部集成有多种通信接口的模块,可以根据测试需求灵活调用,无需反复的编程操作,只需与被测芯片匹配相关的pin角功能即可实现,还可以根据需求灵活发增减测试接口。如图2所示,FPGA上电启动后,接收上位机模块的控制命令,生成符合控制命令通信代码,配置pin的功能状态,然后将上位机模块传送过来的测试命令1发送到被测芯片模块上,被测芯片通过pin接口将相关测试数据反馈到FPGA测试平台上,FPGA测试平台接收被测芯片模块反馈的测试结果1,然后进一步对测试结果1进行判断,重复上述操作,直至对所有数字功能进行测试完毕。
被测芯片模块上具有多种数字类型的引脚,并且可以独立的进行编程设计及控制,具体根据FPGA测试平台下发的测试命令执行自身pin角功能的切换,并产生相关的通信数据。如图3所示,被测芯片模块上电启动后,接收FPGA的控制命令,生成符合控制命令通信代码,根据上位机命令下发的测试命令1产生测试数据,并将所产生的测试结果反馈到FPGA上,以供FPGA进行判断,重复以上操作,直至对所有数字功能进行测试完毕。
实施例2
根据图4所示,本实施例提供了一种基于FPGA的芯片测试装置,实现上述任一项所述的基于FPGA的芯片测试方法,包括被测芯片模块、FPGA测试平台、上位机模块,所述被测芯片模块通过多个pin接口与FPGA测试平台相互接通,所述FPGA测试平台与上位机模块通过以太网通信接口相连。上位机模块可以将测试数据进行大规模存储,形成数据库,用于数据分析,同时可以对测试序列进行编辑,同一种功能可以多次测试,用以验证测试结果,当测试程序编辑好厚,可以进一步地实现一键式自动化测试,自动输出测试结果,大大的提升了测试效率,降低测试成本。
上位机模块上包括运行逻辑程序、芯片测试结果监控单元与显示以及警告窗口,实现上位机编辑测试命令、显示测试结果。
本实施例提供的芯片测试装置可以作为单片功能性能测试,也可以用于批量测试、筛选。
进一步地,还包括电源模块,所述被测芯片模块、FPGA测试平台、上位机模块均与电源模块连接,所述电源模块为被测芯片模块、FPGA测试平台及上位机模块提供电源。
电源模块选择符合AEC-Q100的车规要求的电子元器件或芯片组成的电源系统,为被测芯片模块、FPGA测试平台、上位机模块提供电源,电源类型包括DC直流供电以及AC交流供电,用以满足整个装置的工作条件。
FPGA测试平台是测试装置的主要控制单元,接收上位机下发的测试序列命令,将测试命令转换成实际的运行逻辑,下放到被测芯片上,并采集被测芯片的反馈状态,根据反馈判断被测芯片的测试结果的正确性,进一步地,将判断结果反馈到上位机模块上。FPGA上具有数字接口驱动程序与运行逻辑程序,实现FPGA接受上位机测试命令及下发控制命令至被测芯片模块。
进一步地,所述被测芯片模块上包括但不限于UART、SPI、CAN、LIN、FLEXRAY、I2C、RS232、RS485、RS422、GPIO、并口总线功能的一种或多种pin通信接口。被测芯片通过自身软件提供的控制代码对功能进行转换。
进一步地,所述被测芯片模块上的pin可进行转换为CAN或I2C通信功能。
进一步地,所述被测芯片模块还通过SPI通信接口与FPGA测试平台相连,实现自身pin功能的切换。
进一步地,所述FPGA测试平台上还设置有多种通信接口与被测芯片模块上的多个pin接口相连。
进一步地,所述上位机模块运行在工控机或单机电脑上。上位机模块通过以太网通信技术,下发测试命令到FPGA测试平台,并接受来自于FPGA产生的测试结果,通过界面显示出测试的结果,当出现测试故障时,能进一步地显示出警告信息以及错误内容,上位机编辑测试序列,以满足多样品测试需求的自动化测试功能。
通过FPGA的编辑功能实现与被测芯片的每个pin的灵活配置,进而实现被测芯片上的多种通信信号的模拟,更适用于不同引脚布局的芯片驱动的可重构逻辑编辑;通过本发明提供的测试方法,可以较为轻松的覆盖数字类型引脚的所有功能测试,实现自动验证,降低验证成本。同时不仅可以用于单芯片的验证,还可以在量产测试、批量验证中具有很好的应用前景,实现较低的验证成本。
本发明通过FPGA实现对测试pin功能的修改,FPGA设计为UART、SPI、CAN、LIN、FLEXRAY、I2C、RS232、RS485、RS422、GPIO的通用模块,测试被测芯片pin过程中,仅需进行调用即可,赋值于被测引脚,无需再重复编辑,并且可以升级和扩展数字类型功能,不再需要额外功能负载或测试电路,即可覆盖被测芯片所有的复用功能。
以上所述仅为本发明的实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。
- 一种存储芯片的测试方法以及测试装置
- 一种FPGA芯片测试平台和FPGA芯片测试方法
- 基于FPGA的便携式芯片测试方法及装置