一种自动化芯片测试方法
【技术领域】
[0001]本发明属于芯片的技术领域,特别涉及利用Iinux操作系统、内嵌ARM处理器硬核的FPGA开发相互配合而实现芯片自动测试方法。
【背景技术】
[0002]目前芯片测试设备中基本上都是低速单片机开发的没有操作系统的裸机方式实现,通用性较差,高速通信需要外置专用芯片且通信稳定性差,芯片测试装置与计算机之间存在通信速率低、硬件成本高、开发模式单一等瓶颈,而且PC软件开发受限于厂商提供的API函数,可操作性与移植性较差;芯片测试效率很低,对于高低温等需要若干小时的长时间测试,基于低速单片机裸机架构的测试装置每次只能测试单个芯片,难以进行并行测试,而且需要手工记录数据;芯片测试阶段研发人员存在重复劳动,自动化程度低,研发人员时间被大量占用,面临大量的项目进度的要求,被迫步入重复劳动,这种周而复始的恶性循环,无法提高研发人员的软件、硬件研发水平,逐渐成为整个芯片研发的瓶颈;测试无法做到遍历,测试不完备,可能会存在潜在的风险性,直接会影响芯片的质量;基于单板的芯片测试装置由于其存储空间和外设接口不丰富,导致层次化设计较为简单,模块化与可重用性设计并不完备,模块之间的耦合性太强,无法快速的开发新的测试装置,每次开发会造成人力物力与时间资源的严重浪费。测试装置开发停留在传统的模式,硬件系统维护复杂度高,不利于测试装置的升级和发展。
[0003]专利申请201010622301.X公开了一种基于测试向量的测试系统,实现对数字集成电路的功能测试,功能测试主要测试芯片在一定时序下的逻辑功能,其基本原理是借助于测试向量,对芯片施加激励,观察其响应是否和设想的一致。功能测试可以覆盖极高比例逻辑电路的失效模型。该调试技术支持单步测试系统包括两大部分:运行于PC机的测试向量文件转换软件和数字集成电路芯片测试机组成。数字集成电路芯片测试机由CPU+FPGA的架构组成,CPU负责pattern文件存储、转换,测试过程控制、与主机通信等功能。pattern控制的逻辑电路由一块FPGA实现,FPGA完成波形产生、Pattern RAM的控制和采样控制,同时控制驱动器及比较器以实现对被测对象的测试控制。然而该专利是借助于测试向量,对芯片施加激励,观察其响应是否和设想的一致,不能每次只能测试单个芯片,难以进行并行测试,解决芯片测试效率低的问题,而且测试无法做到遍历,测试不完备。
【发明内容】
[0004]为解决上述问题,本发明的目的在于提供一种自动化芯片测试方法,该方法旨在提供一个能够利用一个内嵌Cortex A9双核ARM处理器的Xilinx最新的7系列FPGA开发,采用软硬件协同的开发模式,最大程度的节省硬件成本和软件设计周期,抛弃上下位机的概念,PC机运行Windows操作系统,测试平台运行Linux操作系统的方法。
[0005]本发明的另一个目的在于提供一种自动化芯片测试方法,该方法能够快速地对芯片进行测试,测试效率高,解决人员重复劳动和效率低下问题;而且增加了系统的可靠性、稳定性和节省了硬件成本。
[0006]为实现上述目的,本发明的技术方案如下。
[0007]一种自动化芯片测试方法,其特征在于该方法包括步骤:
[0008]101、系统上电,完成初始化;
[0009]根据裁剪的BootLoader加载Iinux内核,内核加载完成后由内核调用固件程序对各硬件模块自检,端口驱动加载,包含USB驱动、网口驱动、GP1设置等一系列内核启动动作,根据设定的通信接口建立与PC机的链接,连接成功后整个系统等待PC机发送命令进行处理工作,并向PC机发送初始化完成指令。
[0010]102、进行配置;
[0011]整个单板系统各个模块的初始化完成后,PC机读取芯片ID,根据ID选择测试芯片的种类,根据芯片种类确定需要启动的测试线程,对应的线程读取并解析该芯片的测试设备配置文件即配置温控设备、仪表设备等,然后根据配置文件生成不同的命令帧,对仪表收发端进行配置。
[0012]103、生成测试命令
[0013]读取并解析芯片集成测试用例配置文件中的测试项和测试参数设置,根据不同的测试项和测试参数调用相应的测试用例,将各测试项和测试参数根据不同的类型芯片设置不同的测试命令,测试命令组成命令帧并通过通信接口传送给单板系统。
[0014]104、解析命令及进行设置
[0015]上位机PC控制软件根据配置文件设置不同的温度点并利用定时器定时,达到设定的时间PC控制软件根据配置文件给单板系统发送测试命令,同时负责接收来自单板系统传回的测试数据,单板系统接收到PC机传输的命令帧,调用消息出来进程进行命令解析,分解出测试项和测试参数并保存,根据测试项和测试参数设置仪表设备,关闭芯片测试告警和中断等信息上报;
[0016]105、测试
[0017]测试用例配置任务进程将分解出来的测试用例和测试参数逐次配置到被测芯片进行测试,测试用例配置任务进程获取测试参数配置返回数据,将各测试参数配置返回数据数据上报给PC机,同时上报测试告警信息,清空测试告警信息,完成配置后,消息处理进程返回给PC机配置成功消息帧。
[0018]所述方法中,进一步包括有106步骤,所述106步骤包括:所述103步骤中,PC机接收到命令帧后,清除上一次仪表与设备上的历史信息,开始启动芯片测试任务,PC机控制下发测试开始指令,单板系统消息接收进程接收到消息后,进行命令解析和处理,根据测试项和测试参数逐个进行测试和配置,单板控制系统将各测试项的测试数据上传到PC机进行处理。
[0019]所述方法中,进一步包括有107步骤,所述107步骤包括:PC机接收到单板测控系统发送的测试项和测试数据,生成测试报告,PC机读取芯片各测试项设计参数与测试参数进行比较,按照设计规定误差范围确定复测项,并生成复测项的测试项、测试命令和测试参数等测试指标,生成复测配置表。
[0020]所述方法,可以根据生成的复测配置表重复进行以上103、104、105、106、107步骤,设备测试都会进行上述各步骤操作。
[0021]所述方法中,进一步包括有109步骤,所述109步骤包括:对偏离设计目标的测试数据进行一次复测后,将测试数据追加到107测试报告上并标注,生成最终的测试报告,在PC机数据显示器标注出现设计值与测试值不相符的测试项,从而节省设计人员和测试人员时间,帮助设计人员和测试人员进行问题查找。
[0022]所述103-105步骤中,定时采集所述测试项和测试参数。
[0023]所述的芯片测试方法,为了进一步提高其通讯效率,所述下发的命令帧格式为:帧头+测试命令项+测试参数+校验和+帧尾;所述上报的命令消息格式为:帧头+上报消息类型+告警消息字符串+校验和+帧尾。
[0024]所述测试参数,可以包括复数个测试参数,这些测试参数顺序排列。
[0025]本发明可以实现芯片的自动测试和数据保存,能够快速地对芯片进行测试,测试效率高,在一定程度上节省测试时间,通过本自动化测试平台的开发,可以达到被测DUT芯片的自动配置、仪表的自动配置、测试