一种集成电路测试仪在线编程的动态配置方法.pdf

上传人:b*** 文档编号:4255121 上传时间:2018-09-12 格式:PDF 页数:14 大小:517.94KB
返回 下载 相关 举报
摘要
申请专利号:

CN201110422947.8

申请日:

2011.12.16

公开号:

CN102565671A

公开日:

2012.07.11

当前法律状态:

终止

有效性:

无权

法律详情:

未缴年费专利权终止IPC(主分类):G01R 31/28申请日:20111216授权公告日:20131211终止日期:20161216|||授权|||实质审查的生效IPC(主分类):G01R 31/28申请日:20111216|||公开

IPC分类号:

G01R31/28; G06F9/445

主分类号:

G01R31/28

申请人:

电子科技大学

发明人:

詹惠琴; 商洪亮; 杨建军; 周建; 王寅; 古军; 罗时雨; 康波

地址:

611731 四川省成都市高新区(西区)西源大道2006号

优先权:

专利代理机构:

成都行之专利代理事务所(普通合伙) 51220

代理人:

温利平

PDF下载: PDF下载
内容摘要

本发明公开了一种集成电路测试仪在线编程动态配置方法,通过在下位机中设置启动闪存选择引脚,用于在测试程序出错的情况下,微处理器直接从NorFlash闪存中取指令执行,等待下载测试程序,用于集成电路的测试;而正常的情况下,通过将NandFlash闪存的数据直接拷贝到外接的SDRAM存储器运行,进行测试任务,如果在测试过程中接收到上位机发送的测试程序,则自动将下载的测试程序存入NandFlash闪存中并覆盖之前的测试程序,然后自动重启并根据新的测试程序进行测试。这样,就不需要进行存储器切换,因此可快速且可根据用

权利要求书

1.一种集成电路测试仪在线编程的动态配置方法,其特征在于,包括以下
步骤:
(1)、在集成电路测试仪的上位机中,上电后用户可以选择是否重新编写测
试程序,如果重新编写测试程序,则上位机将新编写的测试程序进行编译后通
过USB接口向下位机下载,下载成功后,等待下位机通过USB接口返回测试结
果,如果有返回测试结果,则接收测试结果并保存;如果不需要重新编写测试
程序,则直接等待下位机通过USB接口返回测试结果,如果有返回测试结果,
则接收测试结果并保存;
(2)、在集成电路测试仪的下位机中,将微处理器的一外部引脚定义为启动
闪存选择引脚,用户在测试程序出错的情况下,将启动闪存选择引脚电平设置
NorFlash闪存启动对应的电平,否则,设置为NandFlash闪存启动对应的电平;
下位机上电后,微处理器根据启动闪存选择引脚的电平,决定从NorFlash闪
还是从NandFlash闪存启动;
如果从NandFlash闪存中启动则代表测试仪目前的状态为运行模式,微处理
器将NandFlash闪存中前段的启动程序自动拷贝到它内部的SRAM存储器中,
微处理器运行启动程序,把前段的启动程序和后一段的测试程序从NandFlash
闪存中拷贝到外接的SDRAM存储器中,然后从SDRAM存储器中取指令开始
执行,进行测试任务,然后将测试结果通过USB接口返回上位机;在测试过程
中,如果接收到上位机发送的数据,则判断是否为测试程序,如果是,则将该
测试程序存入NandFlash闪存中并覆盖之前的测试程序,然后自动重启并根据新
的测试程序进行测试;
如果从NorFlash闪存启动,则代表测试仪器目前的状态为下载模式,微处理
器直接从NorFlash闪存中读取引导程序和下载程序并执行,初始化USB接口完
成后开始等待测试程序下载,下载成功后微处理器将测试程序直接写入到
NandFlash闪存中,覆盖之前的测试程序,然后用户再重新设置启动闪存选择引
脚的电平,切换回运行模式,并重新启动。
2.根据权利要求1所述的集成电路测试仪在线编程的动态配置方法,其特征
在于,所述的SDRAM存储器分为三个区:A区、B区以及A区、B区之间的区域;
A区为存储在正常运行模式下从NandFlash拷贝过来的启动程序和测试程序;
中间部分的大片内存分区,即A区、B区之间的区域为预留给测试仪使用的分区,
用以满足变量空间的分配以及中断处理过程栈区的分配;剩下的B区用于存放下
载的测试程序;
所述的下载成功后微处理器将测试程序直接写入到NandFlash闪存中,先将
测试程序存放到SDRAM存储器的B区进行缓存,然后在写入到NandFlash闪存
中。
3.根据权利要求2所述的集成电路测试仪在线编程的动态配置方法,其特征
在于,测试程序接收完毕后,即全部存放到SDRAM存储器的B区后进行校验,
如果不正确,则返回信息给上位机,让其重新发送,如果正确,则将其从SDRAM
的B区写入到NandFlash闪存中;
测试程序写入NandFlash闪存后,需要读出写入的测试程序,检验写入是否
正确,如果不正确,则重新写入。

说明书

一种集成电路测试仪在线编程的动态配置方法

技术领域

本发明属于在线编程技术领域,更为具体地讲,涉及一种集成电路测试仪
在线编程的动态配置方法。

背景技术

1、集成电路的测试

美国TI公司宣布研制出世界上第一块IC芯片至今已经将近六十多年了。
随着集成电路技术及其产业的发展,其推动了计算机技术、软件技术、通信技
术、信息技术等高新技术,为国民经济各个产业的发展和现代化建设提供了良
好的基础。如今集成电路产品在社会生活中应用越来越广泛,诸如通信设备、
航空航天、国防设备、工业制造、数码产品甚至各类家用电器和玩具,集成电
路已经成为现代高科技工业的基础。

集成电路测试是保证集成电路性能的关键手段之一,在芯片的设计、制造
和具体应用的每一个环节,都需要对集成芯片进行测试和检验。一方面,目前
芯片的需求量越来越大,另一方面,针对各种各样的应用场合,集成电路的种
类也越来越多。目前各个厂家推出的集成电路型号上千种,而每只集成电路在
出厂前都必须经过严格测试。因此如何快速且有效地测试各类集成电路对目前
集成电路发展具有重要意义。

为了满足日益增长的集成电路数量和种类,集成电路测试仪应具有以下特
点:

(1)、快速的进行集成电路测试。

(2)、用户根据不同集成电路的测试需求,编写测试程序并下载到集成电
路测试仪中。

2、集成电路测试程序的下载

目前,集成电路测试程序的下载主要分为两类:

(1)、非在线编程

这一类方法是将测试程序下载到固定的存储器中,通过专用的烧写器进行
测试程序下载,测试程序下载好后用户一般不能随意更改程序。若用户需要更
新测试程序则必须将程序存储器从集成电路测试仪的电路板上取下来放入烧写
器中,把程序重新固化在程序存储器中。

(2)、在线编程。

在线编程的方法又具体分为两种:第一种方法是通过烧写器配合串口、并
口线或通过专用接口将测试程序下载到程序存储器里,用户下载测试程序时需
要停止目前运行的程序,并且在上位机(一般采用PC机)上进行下载的测试程
序的各种测试参数的配置;第二种方法是通过程序存储器中的引导程序将测试
程序下载到另一片存储器,即运行存储器中,然后从存储新测试程序中的存储
器中启动。用户每次下载测试程序时都必须手动先切换到引导程序的存储器,
下载成功后再手动切换回运行存储器,并需要手动复位。

第(1)种方法不能实现在线编程,测试程序的更新比较麻烦,已经不能满
足目前集成电路测试仪的实际需要。第(2)种方法虽然能实现在线编程,但是
其中的第一类方法每次下载程序时都必须用到专门的下载软件,而且下载程序
时需要停止目前运行的程序,因此不满足集成电路测试在线编程的仪动态配置
这一需求;第二类方法由于用户可能时常更改测试程序,而下载时每次都需要
手动切换选择存储器,这样显然是繁琐的。

发明内容

本发明的目的在于现有技术的不足,提供一种集成电路测试仪在线编程动
态的配置方法,以实现测试程序在线快速高效的编程。

为实现上述发明目的,本发明集成电路测试仪在线编程的动态配置方法,
其特征在于,包括以下步骤:

(1)、在集成电路测试仪的上位机中,上电后用户可以选择是否重新编写测
试程序,如果重新编写测试程序,则上位机将新编写的测试程序进行编译后通
过USB接口向下位机下载,下载成功后,等待下位机通过USB接口返回测试结
果,如果有返回测试结果,则接收测试结果并保存;如果不需要重新编写测试
程序,则直接等待下位机通过USB接口返回测试结果,如果有返回测试结果,
则接收测试结果并保存;

(2)、在集成电路测试仪的下位机中,将微处理器的一外部引脚定义为启动
闪存选择引脚,用户在测试程序出错的情况下,将启动闪存选择引脚电平设置
NorFlash闪存启动对应的电平,否则,设置为NandFlash闪存启动对应的电平;

下位机上电后,微处理器根据启动闪存选择引脚的电平,决定从NorFlash闪
还是从NandFlash闪存启动;

如果从NandFlash闪存中启动则代表测试仪目前的状态为运行模式,微处理
器将NandFlash闪存中前段的启动程序自动拷贝到它内部的SRAM存储器中,
微处理器运行启动程序,把前段的启动程序和后一段的测试程序从NandFlash
闪存中拷贝到外接的SDRAM存储器中,然后从SDRAM存储器中取指令开始
执行,进行测试任务,然后将测试结果通过USB接口返回上位机;在测试过程
中,如果接收到上位机发送的数据,则判断是否为测试程序,如果是,则将该
测试程序存入NandFlash闪存中并覆盖之前的测试程序,然后自动重启并根据新
的测试程序进行测试;

如果从NorFlash闪存启动,则代表测试仪器目前的状态为下载模式,微处理
器直接从NorFlash闪存中读取引导下载程序并执行,初始化USB接口完成后开
始等待测试程序下载,下载成功后微处理器将测试程序直接写入到NandFlash
闪存中,覆盖之前的测试程序,然后用户再重新设置启动闪存选择引脚的电平,
切换回运行模式,并重新启动。

本发明的发明目的是这样实现的:

本发明集成电路测试仪在线编程的动态配置方法,通过在下位机中设置启动
闪存选择引脚,用于在测试程序出错的情况下,微处理器直接从NorFlash闪存中
取指令执行,等待下载测试程序,用于集成电路的测试;而正常的情况下,通
过将NandFlash闪存的数据直接拷贝到外接的SDRAM存储器运行,进行测试任
务,如果在测试过程中接收到上位机发送的测试程序,则自动将下载的测试程
序存入NandFlash闪存中并覆盖之前的测试程序,然后自动重启并根据新的测试
程序进行测试。这样,就不需要进行切换存储器,因此可快速且可根据用户需
求动态配置测试环境。此外,用户可以通过上位机将测试程序下载下位机中,
这样,集成电路测试仪的下位机可以脱离上位机独立运行,实现快速测试及动
态配置。

附图说明

图1是集成电路测试仪的总体结构图;

图2是本发明集成电路测试仪在线编程动态的配置方法的一具体实施方式的
流程图;

图3是集成电路测试仪运行模式下上电启动过程一具体实例原理框图;

图4是集成电路测试仪程序下载过程一具体实例原理框图;

图5是动态配置过程的以具体实施方式流程图;

图6是集成电路测试仪自动配置过程一具体实例原理框图;

图7是看门狗连接示意图。

具体实施方式

下面结合附图对本发明的具体实施方式进行描述,以便本领域的技术人员更
好地理解本发明。需要特别提醒注意的是,在以下的描述中,当已知功能和设
计的详细描述也许会淡化本发明的主要内容时,这些描述在这里将被忽略。

图1是集成电路测试仪的总体结构图

如图1所示,在本实施例中,集成电路测试仪由上位机、以及下位机的ARM
核心板、显示面板、功能子板、测试板、背板、分选机等硬件组成,其中ARM
核心板由NorFlash闪存、NandFlash闪存、SDRAM存储器、ARM微处理器以及
USB接口组成。

由总体结构图1可以看出,显示面板同ARM核心板相连,和功能子板、测试
板等一起插到背板上,各个功能子板都通过背板内的总线相连,USB接口负责
上位机和ARM核心板的通信。

ARM核心板是整个集成电路测试仪的主控部分,在本实施例中,选择了ARM
微处理器S3C2440作为硬件的核心处理器,S3C2440微处理器是基于ARM920T
的处理器,稳定时钟频率高达400MHz。ARM核心板由NorFlash、NandFlash、
SDRAM和ARM组成。其中NandFlash是一种大容量的闪存,程序不能直接在
NandFlash中运行,当程序需要运行时需要将程序先拷贝到SDRAM中。NandFlash
的写入擦除速度很快,并且每个块的最大擦写次数高达一百万次。根据NandFlash
的特点,将NandFlash用来存储测试程序。由于测试系统一上电就需要进入等待
测试状态,所以将微处理器S3C2440设置成上电后从NandFlash启动;NorFlash
由于容量一般较小,并且写入擦除速度也远远低于NandFlash,但是NorFlash的
接口与内存相似,可以直接在NorFlash中运行程序,而且可靠性远远高于
NandFlash,因此在NorFlash中存储不太常用到的引导下载程序。

显示面板主要用来显示测试结果以及完成一些基本控制,显示如所测芯片数
量、合格率、上位机是否在线等;控制包括启动、停止、计数清零和复位。

功能子板主要用于测试系统中的激励施加,如施加电流或施加电压;测试板
用于测试具体器件的硬件电路,如模拟测试板用于测试运算放大器、比较器及
模拟开关。

分选机根据测试结果对待测器件进行自动的分拣和筛选。从上料,到测试,
再到分类,实现整个测试流程的自动化。

图2是本发明集成电路测试仪在线编程动态配置方法的一具体实施方式的流
程图。

如图2所示,在本实施例中,集成电路测试仪分为上位机和下位机两部分,
它们分别独立运行,通过USB接口进行数据交换。

上位机的运行流程为:上电后用户可以选择是否重新编写测试程序,如果重
新编写测试程序,则上位机将新编写的测试程序进行编译后通过USB接口向下
位机下载,下载成功后,等待下位机通过USB接口返回测试结果,如果有返回
测试结果,则接收测试结果并保存;如果不需要重新编写测试程序,则直接等
待下位机通过USB接口返回测试结果,如果有返回测试结果,则接收测试结果
并保存。下位机在测试过程中,用户可以随时更改测试程序并下载,上位机和
下位机独立运行互不影响。

下位机运行流程为:在上电时,ARM处理器通过其外部引脚的电平决定从
哪片Flash启动的。在本实施例中,定义其外部引脚OM[1:0]为启动闪存选择引
脚,OM[1:0]=01表示OM[0]为高电平,OM[1]为低电平,当引脚OM[1:0]=01时从
NorFlash启动,当OM[1:0]=00时从NandFlash启动。

下位机上电后,如果从NandFlash闪存中启动则代表测试仪目前的状态为运
行模式,ARM处理器NandFlash闪存中前段的启动程序自动拷贝到它内部的
SRAM存储器中。ARM处理器运行启动程序,把前段的启动程序和后一段的测
试程序从NandFlash闪存中拷贝到外接的SDRAM存储器中,判断是否有下载测
试程序,如果没有,从SDRAM存储器中取指令开始执行,进行测试任务,然
后将测试结果通过USB接口返回上位机,然后,再判断是否有下载测试程序。
如有下载测试程序,则将该测试程序存入NandFlash闪存中并覆盖之前的测试程
序,然后自动重启并根据新的测试程序进行测试。

在未出错的情况下,集成电路测试仪都是采用NandFlash闪存启动的模式。
在测试过程中,如果接收到上位机发送的数据,则判断是否为测试程序,如果
是,则将该测试程序存入NandFlash闪存中并覆盖之前的测试程序,然后自动重
启并根据新的测试程序进行测试。

如果从NorFlash闪存启动,则代表测试仪器目前的状态为下载模式,ARM
处理器直接从NorFlash闪存中读取引导下载程序并执行,初始化USB接口完成
后开始等待测试程序下载,下载成功后微处理器将测试程序直接写入到
NandFlash闪存中,覆盖之前的测试程序,然后用户再重新设置启动闪存选择引
脚的电平,切换回运行模式,并重新启动。

测试完成后分选机自动分开优劣元器件,同时下位机将测试结果通过USB接
口发送到上位机并实时将结果显示到面板上,之后转入下一次测试。

一、动态配置具体实现步骤

1.1动态配置的三个步骤

集成电路测试仪的动态配置过程实现分为三个步骤,分别为上电启动、程序
下载以及自动复位。分别如图3、4、5所示。

1.2上电启动

图3为集成电路测试仪运行模式下上电后第一步,主要做两个工作:

第一:集成电路测试仪一上电,下位机微处理器,即ARM处理器,把存储
在NandFlash闪存中的启动程序自动拷贝到它内部的SRAM存储器中运行,启动
程序的目的是对下位机硬件进行初始化,例如禁止看门狗、禁止外部中断、初
始化SDRAM等,这些工作都将在ARM处理器的内部SRAM中执行,然后复制启
动程序、测试程序到SDRAM的A区,如图3黑色粗线条。

第二:由图3可知,在本实施例中,SDRAM存储器被划分为三个区,A区为
存储在正常运行模式下从NandFlash拷贝过来的启动程序和测试程序;中间部分
的大片内存分区为预留给测试仪使用的分区,用以满足变量空间的分配以及中
断处理过程栈区的分配等;剩下的B区用于存放下载的测试程序。然后判断是否
接收到测试程序,如有则进进入程序下载。

1.3程序下载

在本实施例中,数字集成电路测试仪采用基于USB1.1传输协议的USB数据传
输。采用USB传输有两个原因:一是因为目前几乎所有的PC机都提供了USB接
口,这样设计使用范围更广;二是因为下位机的ARM处理器内部集成了USB1.1
接口,其传输速度能达到12Mbps,速度能很好的满足需求。

USB的通信模式大致可分为批量传输、中断传输、等时传输以及控制传输四
种模式。在本实施例中,数字集成电路测试仪中使用了其中的两种模式,即控
制传输和中断传输。控制传输主要用于建立上下位机通信;中断模式用于数字
集成电路测试仪数据传输。USB协议规定传输过程中必须进行CRC校验,因此
数据的可靠性非常高。

图4显示了数字集成电路测试仪的测试程序下载的具体流程。其中黑色粗实
线箭头给出了上位机,即PC机传入的数据流向。在内存中开辟的另外一个分区B
区用于缓存来自上位机,即PC机通过USB传入的数据,其大小为从SDRAM存储
器顶部往下的48MB,起始地址为0x31000000,在本实施例中,SDRAM存储器
起始地址0x30000000,总大小为64MB。在对接收到的数据进行判断,如果是测
试程序,则进行校验后,将测试程序写入到NandFlash闪存中。图4中PC机,即
上位机给下位机传输的数据是经过上位机处理后带特殊格式的数据,如表1所
示。

 第0字节
  第4到第7字节
  …
 最后4字节
 帧头
  代码长度(包括校验位)
  真正的代码数据段
 校验位

表1

表1为上下位机组织的数据帧格式。表1中的帧头用于区分数据类型,根据其
数据不同执行不同的操作。下位机在接收到来自USB接口的第一次中断时,首
先从USB缓冲区(FIFO)中读取第一字节,根据帧头信息判断是否为动态配置
代码,如果为动态配置代码,在本实施例中,定义为type=100,则将余下数据
送入SDRAM存储器中B区的第一字节开始后的区域。由表1中可知接下来的第四
到第七的四字节为代码的长度,用以判断数据是否接收完成。最后4个字节为校
验位,其处理流程如图5所示。

如图5所示,首先对上位机发送来的数据进行判断,如果是动态配置代码,
则发送来的是测试程序,对测试程序进行接收,并送入SDRAM的B区缓存;接
收完毕后,即全部存放到SDRAM存储器的B区后进行校验,进行校验,如果不
正确,则返回信息给上位机,让其重新发送,如果正确,则将其从SDRAM的B
区写入到NandFlash闪存中。测试程序写入NandFlash闪存后,需要将读出写入的
测试程序,检验写入是否正确,如果不正确,则重新写入,如果正确,则启动
看门狗,看门狗为一定时器,当达到设置时间后,复位ARM处理器,自动重启,
然后下位机根据新的测试程序进行测试。

在本实施例中,测试程序总共在两个地方进行了校验。第一次是在测试程序
从上位机传输完成后,这次校验的重要性在于判断数据传输过程中的完整性,
如果出错,下位机将向上位机发送数据重传请求;第二次校验发生在将正确测
试程序写入NandFlash闪存中,这一步的校验工作由硬件自动进行,校验位需要
写入约定好的NandFlash中的spare区。再次从NandFlash闪存中读出测试程序时每
读一页(NandFlash闪存储存以页的机制存储)需与校验位进行对比,如果两者
相同,则写入的测试程序正确,否则写程序出错,进而对刚才写入的测试程序
进行重写。这样的双重校验很好的保证了数字集成电路测试仪的稳定性。

1.4系统重启

如图5、6所示,在本实施例中,动态配置的最后一步的系统重启基于看门狗
技术,首先了解一下看门狗的工作原理。

看门狗(watchdog timer)是一个定时器电路,其连接示意图如图7所示。首
先需要对看门狗计数器预置一个初值,ARM处理器正常工作时,看门狗计数器
WDT对输入时钟CLK进行计数,ARM处理器每隔一段时间输出一个信号对WDT
清零,如果超过预置时间不进行清零,WDT将发生溢出并产生复位信号对ARM
处理器复位。看门狗一般用于防止程序发生死循环。外部复位电路用于对ARM
处理器的复位。

在本实施例中,选用的S3C2440内部集成了看门狗电路,如图5、6、7所示,
在配置了看门狗计数器寄存器和看门狗控制器后即可启动看门狗。为了数字集
成电路测试仪的正常运行,在平时测试过程中关闭了看门狗。在进入处理动态
配置过程的第二阶段中,即把下载的测试程序写入到NandFlash闪存以及校验成
功后,此时开启看门狗。经过系统时钟的分频,看门狗的输入时钟设为50MHz,
计数初值设为100000,测试仪进入等待复位状态。经过计算可知2ms后计数器将
发生溢出,此时系统自动复位。复位后运行的新测试程序就更新为用户需要的
测试代码了,从而达到动态配置功能。

动态重新配置成功后,就运行在用户编写的新测试程序环境下了。这时候用
户可以通过发送命令让下位机按照用户自己的指令返回测试数据。测试结果可
以通过查看测试仪上的显示面板,也可以通过命令的形式让下位机把数据传回
上位机显示在PC机的特定软件上。

一、出错维护

系统出错的原因主要有两种:一种是NandFlash闪存的硬件机制导致容易出
现坏块,因此NandFlash闪存中的数据很有可能因为外部因素而发生改变,进而
系统不能正常工作;另一种是在对NandFlash写测试程序的过程中突然被外部因
素中断,导致测试程序只有部分写到NandFlash,由于测试程序的不完整性不能
从NandFlash闪存启动。在系统出错的情况下,本发明提供了一个维护方案:
NorFlash闪存中固化了一段引导下载程序,用以向NandFlash闪存写数据——即
当系统不能从NandFlash闪存中正常启动后,手动调节OM[1:0]的状态使测试仪处
于下载模式,从NorFlash闪存启动,然后通过NorFlash闪存的引导程序再次对
NandFlash闪存进行测试程序的写入,写入后,手动将测试仪置于运行模式。

尽管上面对本发明说明性的具体实施方式进行了描述,以便于本技术领的技
术人员理解本发明,但应该清楚,本发明不限于具体实施方式的范围,对本技
术领域的普通技术人员来讲,只要各种变化在所附的权利要求限定和确定的本
发明的精神和范围内,这些变化是显而易见的,一切利用本发明构思的发明创
造均在保护之列。

一种集成电路测试仪在线编程的动态配置方法.pdf_第1页
第1页 / 共14页
一种集成电路测试仪在线编程的动态配置方法.pdf_第2页
第2页 / 共14页
一种集成电路测试仪在线编程的动态配置方法.pdf_第3页
第3页 / 共14页
点击查看更多>>
资源描述

《一种集成电路测试仪在线编程的动态配置方法.pdf》由会员分享,可在线阅读,更多相关《一种集成电路测试仪在线编程的动态配置方法.pdf(14页珍藏版)》请在专利查询网上搜索。

1、(10)申请公布号 CN 102565671 A (43)申请公布日 2012.07.11 C N 1 0 2 5 6 5 6 7 1 A *CN102565671A* (21)申请号 201110422947.8 (22)申请日 2011.12.16 G01R 31/28(2006.01) G06F 9/445(2006.01) (71)申请人电子科技大学 地址 611731 四川省成都市高新区(西区)西 源大道2006号 (72)发明人詹惠琴 商洪亮 杨建军 周建 王寅 古军 罗时雨 康波 (74)专利代理机构成都行之专利代理事务所 (普通合伙) 51220 代理人温利平 (54) 发明名。

2、称 一种集成电路测试仪在线编程的动态配置方 法 (57) 摘要 本发明公开了一种集成电路测试仪在线编程 动态配置方法,通过在下位机中设置启动闪存选 择引脚,用于在测试程序出错的情况下,微处理器 直接从NorFlash闪存中取指令执行,等待下载测 试程序,用于集成电路的测试;而正常的情况下, 通过将NandFlash闪存的数据直接拷贝到外接的 SDRAM存储器运行,进行测试任务,如果在测试过 程中接收到上位机发送的测试程序,则自动将下 载的测试程序存入NandFlash闪存中并覆盖之前 的测试程序,然后自动重启并根据新的测试程序 进行测试。这样,就不需要进行存储器切换,因此 可快速且可根据用户需。

3、求动态配置测试环境。同 时,集成电路测试仪的下位机可以脱离上位机独 立运行,实现快速测试及动态配置。 (51)Int.Cl. 权利要求书1页 说明书7页 附图5页 (19)中华人民共和国国家知识产权局 (12)发明专利申请 权利要求书 1 页 说明书 7 页 附图 5 页 1/1页 2 1.一种集成电路测试仪在线编程的动态配置方法,其特征在于,包括以下步骤: (1)、在集成电路测试仪的上位机中,上电后用户可以选择是否重新编写测试程序,如 果重新编写测试程序,则上位机将新编写的测试程序进行编译后通过USB接口向下位机下 载,下载成功后,等待下位机通过USB接口返回测试结果,如果有返回测试结果,则。

4、接收测 试结果并保存;如果不需要重新编写测试程序,则直接等待下位机通过USB接口返回测试 结果,如果有返回测试结果,则接收测试结果并保存; (2)、在集成电路测试仪的下位机中,将微处理器的一外部引脚定义为启动闪存选择引 脚,用户在测试程序出错的情况下,将启动闪存选择引脚电平设置NorFlash闪存启动对应 的电平,否则,设置为NandFlash闪存启动对应的电平; 下位机上电后,微处理器根据启动闪存选择引脚的电平,决定从NorFlash闪还是从 NandFlash闪存启动; 如果从NandFlash闪存中启动则代表测试仪目前的状态为运行模式,微处理器将 NandFlash闪存中前段的启动程序自。

5、动拷贝到它内部的SRAM存储器中,微处理器运行启动 程序,把前段的启动程序和后一段的测试程序从NandFlash闪存中拷贝到外接的SDRAM存 储器中,然后从SDRAM存储器中取指令开始执行,进行测试任务,然后将测试结果通过USB 接口返回上位机;在测试过程中,如果接收到上位机发送的数据,则判断是否为测试程序, 如果是,则将该测试程序存入NandFlash闪存中并覆盖之前的测试程序,然后自动重启并 根据新的测试程序进行测试; 如果从NorFlash闪存启动,则代表测试仪器目前的状态为下载模式,微处理器直接从 NorFlash闪存中读取引导程序和下载程序并执行,初始化USB接口完成后开始等待测试。

6、程 序下载,下载成功后微处理器将测试程序直接写入到NandFlash闪存中,覆盖之前的测试 程序,然后用户再重新设置启动闪存选择引脚的电平,切换回运行模式,并重新启动。 2.根据权利要求1所述的集成电路测试仪在线编程的动态配置方法,其特征在于,所 述的SDRAM存储器分为三个区:A区、B区以及A区、B区之间的区域; A区为存储在正常运行模式下从NandFlash拷贝过来的启动程序和测试程序;中间部 分的大片内存分区,即A区、B区之间的区域为预留给测试仪使用的分区,用以满足变量空 间的分配以及中断处理过程栈区的分配;剩下的B区用于存放下载的测试程序; 所述的下载成功后微处理器将测试程序直接写入到。

7、NandFlash闪存中,先将测试程序 存放到SDRAM存储器的B区进行缓存,然后在写入到NandFlash闪存中。 3.根据权利要求2所述的集成电路测试仪在线编程的动态配置方法,其特征在于,测 试程序接收完毕后,即全部存放到SDRAM存储器的B区后进行校验,如果不正确,则返回信 息给上位机,让其重新发送,如果正确,则将其从SDRAM的B区写入到NandFlash闪存中; 测试程序写入NandFlash闪存后,需要读出写入的测试程序,检验写入是否正确,如果 不正确,则重新写入。 权 利 要 求 书CN 102565671 A 1/7页 3 一种集成电路测试仪在线编程的动态配置方法 技术领域 0。

8、001 本发明属于在线编程技术领域,更为具体地讲,涉及一种集成电路测试仪在线编 程的动态配置方法。 背景技术 0002 1、集成电路的测试 0003 美国TI公司宣布研制出世界上第一块IC芯片至今已经将近六十多年了。随着集 成电路技术及其产业的发展,其推动了计算机技术、软件技术、通信技术、信息技术等高新 技术,为国民经济各个产业的发展和现代化建设提供了良好的基础。如今集成电路产品在 社会生活中应用越来越广泛,诸如通信设备、航空航天、国防设备、工业制造、数码产品甚至 各类家用电器和玩具,集成电路已经成为现代高科技工业的基础。 0004 集成电路测试是保证集成电路性能的关键手段之一,在芯片的设计、。

9、制造和具体 应用的每一个环节,都需要对集成芯片进行测试和检验。一方面,目前芯片的需求量越来越 大,另一方面,针对各种各样的应用场合,集成电路的种类也越来越多。目前各个厂家推出 的集成电路型号上千种,而每只集成电路在出厂前都必须经过严格测试。因此如何快速且 有效地测试各类集成电路对目前集成电路发展具有重要意义。 0005 为了满足日益增长的集成电路数量和种类,集成电路测试仪应具有以下特点: 0006 (1)、快速的进行集成电路测试。 0007 (2)、用户根据不同集成电路的测试需求,编写测试程序并下载到集成电路测试仪 中。 0008 2、集成电路测试程序的下载 0009 目前,集成电路测试程序的。

10、下载主要分为两类: 0010 (1)、非在线编程 0011 这一类方法是将测试程序下载到固定的存储器中,通过专用的烧写器进行测试程 序下载,测试程序下载好后用户一般不能随意更改程序。若用户需要更新测试程序则必须 将程序存储器从集成电路测试仪的电路板上取下来放入烧写器中,把程序重新固化在程序 存储器中。 0012 (2)、在线编程。 0013 在线编程的方法又具体分为两种:第一种方法是通过烧写器配合串口、并口线或 通过专用接口将测试程序下载到程序存储器里,用户下载测试程序时需要停止目前运行的 程序,并且在上位机(一般采用PC机)上进行下载的测试程序的各种测试参数的配置;第 二种方法是通过程序存储。

11、器中的引导程序将测试程序下载到另一片存储器,即运行存储器 中,然后从存储新测试程序中的存储器中启动。用户每次下载测试程序时都必须手动先切 换到引导程序的存储器,下载成功后再手动切换回运行存储器,并需要手动复位。 0014 第(1)种方法不能实现在线编程,测试程序的更新比较麻烦,已经不能满足目前 集成电路测试仪的实际需要。第(2)种方法虽然能实现在线编程,但是其中的第一类方法 说 明 书CN 102565671 A 2/7页 4 每次下载程序时都必须用到专门的下载软件,而且下载程序时需要停止目前运行的程序, 因此不满足集成电路测试在线编程的仪动态配置这一需求;第二类方法由于用户可能时常 更改测试。

12、程序,而下载时每次都需要手动切换选择存储器,这样显然是繁琐的。 发明内容 0015 本发明的目的在于现有技术的不足,提供一种集成电路测试仪在线编程动态的配 置方法,以实现测试程序在线快速高效的编程。 0016 为实现上述发明目的,本发明集成电路测试仪在线编程的动态配置方法,其特征 在于,包括以下步骤: 0017 (1)、在集成电路测试仪的上位机中,上电后用户可以选择是否重新编写测试程 序,如果重新编写测试程序,则上位机将新编写的测试程序进行编译后通过USB接口向下 位机下载,下载成功后,等待下位机通过USB接口返回测试结果,如果有返回测试结果,则 接收测试结果并保存;如果不需要重新编写测试程序。

13、,则直接等待下位机通过USB接口返 回测试结果,如果有返回测试结果,则接收测试结果并保存; 0018 (2)、在集成电路测试仪的下位机中,将微处理器的一外部引脚定义为启动闪存选 择引脚,用户在测试程序出错的情况下,将启动闪存选择引脚电平设置NorFlash闪存启动 对应的电平,否则,设置为NandFlash闪存启动对应的电平; 0019 下位机上电后,微处理器根据启动闪存选择引脚的电平,决定从NorFlash闪还是 从NandFlash闪存启动; 0020 如果从NandFlash闪存中启动则代表测试仪目前的状态为运行模式,微处理器将 NandFlash闪存中前段的启动程序自动拷贝到它内部的S。

14、RAM存储器中,微处理器运行启动 程序,把前段的启动程序和后一段的测试程序从NandFlash闪存中拷贝到外接的SDRAM存 储器中,然后从SDRAM存储器中取指令开始执行,进行测试任务,然后将测试结果通过USB 接口返回上位机;在测试过程中,如果接收到上位机发送的数据,则判断是否为测试程序, 如果是,则将该测试程序存入NandFlash闪存中并覆盖之前的测试程序,然后自动重启并 根据新的测试程序进行测试; 0021 如果从NorFlash闪存启动,则代表测试仪器目前的状态为下载模式,微处理器直 接从NorFlash闪存中读取引导下载程序并执行,初始化USB接口完成后开始等待测试程序 下载,下。

15、载成功后微处理器将测试程序直接写入到NandFlash闪存中,覆盖之前的测试程 序,然后用户再重新设置启动闪存选择引脚的电平,切换回运行模式,并重新启动。 0022 本发明的发明目的是这样实现的: 0023 本发明集成电路测试仪在线编程的动态配置方法,通过在下位机中设置启动闪存 选择引脚,用于在测试程序出错的情况下,微处理器直接从NorFlash闪存中取指令执行, 等待下载测试程序,用于集成电路的测试;而正常的情况下,通过将NandFlash闪存的数据 直接拷贝到外接的SDRAM存储器运行,进行测试任务,如果在测试过程中接收到上位机发 送的测试程序,则自动将下载的测试程序存入NandFlash。

16、闪存中并覆盖之前的测试程序, 然后自动重启并根据新的测试程序进行测试。这样,就不需要进行切换存储器,因此可快速 且可根据用户需求动态配置测试环境。此外,用户可以通过上位机将测试程序下载下位机 中,这样,集成电路测试仪的下位机可以脱离上位机独立运行,实现快速测试及动态配置。 说 明 书CN 102565671 A 3/7页 5 附图说明 0024 图1是集成电路测试仪的总体结构图; 0025 图2是本发明集成电路测试仪在线编程动态的配置方法的一具体实施方式的流 程图; 0026 图3是集成电路测试仪运行模式下上电启动过程一具体实例原理框图; 0027 图4是集成电路测试仪程序下载过程一具体实例原。

17、理框图; 0028 图5是动态配置过程的以具体实施方式流程图; 0029 图6是集成电路测试仪自动配置过程一具体实例原理框图; 0030 图7是看门狗连接示意图。 具体实施方式 0031 下面结合附图对本发明的具体实施方式进行描述,以便本领域的技术人员更好地 理解本发明。需要特别提醒注意的是,在以下的描述中,当已知功能和设计的详细描述也许 会淡化本发明的主要内容时,这些描述在这里将被忽略。 0032 图1是集成电路测试仪的总体结构图 0033 如图1所示,在本实施例中,集成电路测试仪由上位机、以及下位机的ARM核心板、 显示面板、功能子板、测试板、背板、分选机等硬件组成,其中ARM核心板由No。

18、rFlash闪存、 NandFlash闪存、SDRAM存储器、ARM微处理器以及USB接口组成。 0034 由总体结构图1可以看出,显示面板同ARM核心板相连,和功能子板、测试板等一 起插到背板上,各个功能子板都通过背板内的总线相连,USB接口负责上位机和ARM核心板 的通信。 0035 ARM核心板是整个集成电路测试仪的主控部分,在本实施例中,选择了ARM微处理 器S3C2440作为硬件的核心处理器,S3C2440微处理器是基于ARM920T的处理器,稳定时钟 频率高达400MHz。ARM核心板由NorFlash、NandFlash、SDRAM和ARM组成。其中NandFlash 是一种大容。

19、量的闪存,程序不能直接在NandFlash中运行,当程序需要运行时需要将程序 先拷贝到SDRAM中。NandFlash的写入擦除速度很快,并且每个块的最大擦写次数高达 一百万次。根据NandFlash的特点,将NandFlash用来存储测试程序。由于测试系统一上 电就需要进入等待测试状态,所以将微处理器S3C2440设置成上电后从NandFlash启动; NorFlash由于容量一般较小,并且写入擦除速度也远远低于NandFlash,但是NorFlash的 接口与内存相似,可以直接在NorFlash中运行程序,而且可靠性远远高于NandFlash,因此 在NorFlash中存储不太常用到的引导。

20、下载程序。 0036 显示面板主要用来显示测试结果以及完成一些基本控制,显示如所测芯片数量、 合格率、上位机是否在线等;控制包括启动、停止、计数清零和复位。 0037 功能子板主要用于测试系统中的激励施加,如施加电流或施加电压;测试板用于 测试具体器件的硬件电路,如模拟测试板用于测试运算放大器、比较器及模拟开关。 0038 分选机根据测试结果对待测器件进行自动的分拣和筛选。从上料,到测试,再到分 类,实现整个测试流程的自动化。 0039 图2是本发明集成电路测试仪在线编程动态配置方法的一具体实施方式的流程 说 明 书CN 102565671 A 4/7页 6 图。 0040 如图2所示,在本实。

21、施例中,集成电路测试仪分为上位机和下位机两部分,它们分 别独立运行,通过USB接口进行数据交换。 0041 上位机的运行流程为:上电后用户可以选择是否重新编写测试程序,如果重新编 写测试程序,则上位机将新编写的测试程序进行编译后通过USB接口向下位机下载,下载 成功后,等待下位机通过USB接口返回测试结果,如果有返回测试结果,则接收测试结果并 保存;如果不需要重新编写测试程序,则直接等待下位机通过USB接口返回测试结果,如果 有返回测试结果,则接收测试结果并保存。下位机在测试过程中,用户可以随时更改测试程 序并下载,上位机和下位机独立运行互不影响。 0042 下位机运行流程为:在上电时,ARM。

22、处理器通过其外部引脚的电平决定从哪片 Flash启动的。在本实施例中,定义其外部引脚OM1:0为启动闪存选择引脚,OM1:0 01表示OM0为高电平,OM1为低电平,当引脚OM1:001时从NorFlash启动,当 OM1:000时从NandFlash启动。 0043 下位机上电后,如果从NandFlash闪存中启动则代表测试仪目前的状态为运行模 式,ARM处理器NandFlash闪存中前段的启动程序自动拷贝到它内部的SRAM存储器中。ARM 处理器运行启动程序,把前段的启动程序和后一段的测试程序从NandFlash闪存中拷贝到 外接的SDRAM存储器中,判断是否有下载测试程序,如果没有,从S。

23、DRAM存储器中取指令开 始执行,进行测试任务,然后将测试结果通过USB接口返回上位机,然后,再判断是否有下 载测试程序。如有下载测试程序,则将该测试程序存入NandFlash闪存中并覆盖之前的测 试程序,然后自动重启并根据新的测试程序进行测试。 0044 在未出错的情况下,集成电路测试仪都是采用NandFlash闪存启动的模式。在测 试过程中,如果接收到上位机发送的数据,则判断是否为测试程序,如果是,则将该测试程 序存入NandFlash闪存中并覆盖之前的测试程序,然后自动重启并根据新的测试程序进行 测试。 0045 如果从NorFlash闪存启动,则代表测试仪器目前的状态为下载模式,ARM。

24、处理器 直接从NorFlash闪存中读取引导下载程序并执行,初始化USB接口完成后开始等待测试程 序下载,下载成功后微处理器将测试程序直接写入到NandFlash闪存中,覆盖之前的测试 程序,然后用户再重新设置启动闪存选择引脚的电平,切换回运行模式,并重新启动。 0046 测试完成后分选机自动分开优劣元器件,同时下位机将测试结果通过USB接口发 送到上位机并实时将结果显示到面板上,之后转入下一次测试。 0047 一、动态配置具体实现步骤 0048 1.1动态配置的三个步骤 0049 集成电路测试仪的动态配置过程实现分为三个步骤,分别为上电启动、程序下载 以及自动复位。分别如图3、4、5所示。 。

25、0050 1.2上电启动 0051 图3为集成电路测试仪运行模式下上电后第一步,主要做两个工作: 0052 第一:集成电路测试仪一上电,下位机微处理器,即ARM处理器,把存储在 NandFlash闪存中的启动程序自动拷贝到它内部的SRAM存储器中运行,启动程序的目的是 对下位机硬件进行初始化,例如禁止看门狗、禁止外部中断、初始化SDRAM等,这些工作都 说 明 书CN 102565671 A 5/7页 7 将在ARM处理器的内部SRAM中执行,然后复制启动程序、测试程序到SDRAM的A区,如图3 黑色粗线条。 0053 第二:由图3可知,在本实施例中,SDRAM存储器被划分为三个区,A区为存储。

26、在正 常运行模式下从NandFlash拷贝过来的启动程序和测试程序;中间部分的大片内存分区为 预留给测试仪使用的分区,用以满足变量空间的分配以及中断处理过程栈区的分配等;剩 下的B区用于存放下载的测试程序。然后判断是否接收到测试程序,如有则进进入程序下 载。 0054 1.3程序下载 0055 在本实施例中,数字集成电路测试仪采用基于USB1.1传输协议的USB数据传输。 采用USB传输有两个原因:一是因为目前几乎所有的PC机都提供了USB接口,这样设计使 用范围更广;二是因为下位机的ARM处理器内部集成了USB1.1接口,其传输速度能达到 12Mbps,速度能很好的满足需求。 0056 US。

27、B的通信模式大致可分为批量传输、中断传输、等时传输以及控制传输四种模 式。在本实施例中,数字集成电路测试仪中使用了其中的两种模式,即控制传输和中断传 输。控制传输主要用于建立上下位机通信;中断模式用于数字集成电路测试仪数据传输。 USB协议规定传输过程中必须进行CRC校验,因此数据的可靠性非常高。 0057 图4显示了数字集成电路测试仪的测试程序下载的具体流程。其中黑色粗实线箭 头给出了上位机,即PC机传入的数据流向。在内存中开辟的另外一个分区B区用于缓存来 自上位机,即PC机通过USB传入的数据,其大小为从SDRAM存储器顶部往下的48MB,起始 地址为0x31000000,在本实施例中,S。

28、DRAM存储器起始地址0x30000000,总大小为64MB。在 对接收到的数据进行判断,如果是测试程序,则进行校验后,将测试程序写入到NandFlash 闪存中。图4中PC机,即上位机给下位机传输的数据是经过上位机处理后带特殊格式的数 据,如表1所示。 0058 第0字节 第4到第7字节 最后4字节 帧头 代码长度(包括校验位) 真正的代码数据段 校验位 0059 表1 0060 表1为上下位机组织的数据帧格式。表1中的帧头用于区分数据类型,根据其数据 不同执行不同的操作。下位机在接收到来自USB接口的第一次中断时,首先从USB缓冲区 (FIFO)中读取第一字节,根据帧头信息判断是否为动态配。

29、置代码,如果为动态配置代码,在 本实施例中,定义为type100,则将余下数据送入SDRAM存储器中B区的第一字节开始后 的区域。由表1中可知接下来的第四到第七的四字节为代码的长度,用以判断数据是否接 收完成。最后4个字节为校验位,其处理流程如图5所示。 0061 如图5所示,首先对上位机发送来的数据进行判断,如果是动态配置代码,则发送 来的是测试程序,对测试程序进行接收,并送入SDRAM的B区缓存;接收完毕后,即全部存放 到SDRAM存储器的B区后进行校验,进行校验,如果不正确,则返回信息给上位机,让其重新 发送,如果正确,则将其从SDRAM的B区写入到NandFlash闪存中。测试程序写入。

30、NandFlash 闪存后,需要将读出写入的测试程序,检验写入是否正确,如果不正确,则重新写入,如果正 说 明 书CN 102565671 A 6/7页 8 确,则启动看门狗,看门狗为一定时器,当达到设置时间后,复位ARM处理器,自动重启,然 后下位机根据新的测试程序进行测试。 0062 在本实施例中,测试程序总共在两个地方进行了校验。第一次是在测试程序从上 位机传输完成后,这次校验的重要性在于判断数据传输过程中的完整性,如果出错,下位机 将向上位机发送数据重传请求;第二次校验发生在将正确测试程序写入NandFlash闪存 中,这一步的校验工作由硬件自动进行,校验位需要写入约定好的NandFl。

31、ash中的spare 区。再次从NandFlash闪存中读出测试程序时每读一页(NandFlash闪存储存以页的机制 存储)需与校验位进行对比,如果两者相同,则写入的测试程序正确,否则写程序出错,进 而对刚才写入的测试程序进行重写。这样的双重校验很好的保证了数字集成电路测试仪的 稳定性。 0063 1.4系统重启 0064 如图5、6所示,在本实施例中,动态配置的最后一步的系统重启基于看门狗技术, 首先了解一下看门狗的工作原理。 0065 看门狗(watchdog timer)是一个定时器电路,其连接示意图如图7所示。首先 需要对看门狗计数器预置一个初值,ARM处理器正常工作时,看门狗计数器W。

32、DT对输入时钟 CLK进行计数,ARM处理器每隔一段时间输出一个信号对WDT清零,如果超过预置时间不进 行清零,WDT将发生溢出并产生复位信号对ARM处理器复位。看门狗一般用于防止程序发 生死循环。外部复位电路用于对ARM处理器的复位。 0066 在本实施例中,选用的S3C2440内部集成了看门狗电路,如图5、6、7所示,在配置 了看门狗计数器寄存器和看门狗控制器后即可启动看门狗。为了数字集成电路测试仪的正 常运行,在平时测试过程中关闭了看门狗。在进入处理动态配置过程的第二阶段中,即把下 载的测试程序写入到NandFlash闪存以及校验成功后,此时开启看门狗。经过系统时钟的 分频,看门狗的输入。

33、时钟设为50MHz,计数初值设为100000,测试仪进入等待复位状态。经 过计算可知2ms后计数器将发生溢出,此时系统自动复位。复位后运行的新测试程序就更 新为用户需要的测试代码了,从而达到动态配置功能。 0067 动态重新配置成功后,就运行在用户编写的新测试程序环境下了。这时候用户可 以通过发送命令让下位机按照用户自己的指令返回测试数据。测试结果可以通过查看测试 仪上的显示面板,也可以通过命令的形式让下位机把数据传回上位机显示在PC机的特定 软件上。 0068 一、出错维护 0069 系统出错的原因主要有两种:一种是NandFlash闪存的硬件机制导致容易出现坏 块,因此NandFlash闪。

34、存中的数据很有可能因为外部因素而发生改变,进而系统不能正常 工作;另一种是在对NandFlash写测试程序的过程中突然被外部因素中断,导致测试程序 只有部分写到NandFlash,由于测试程序的不完整性不能从NandFlash闪存启动。在系统出 错的情况下,本发明提供了一个维护方案:NorFlash闪存中固化了一段引导下载程序,用 以向NandFlash闪存写数据即当系统不能从NandFlash闪存中正常启动后,手动调节 OM1:0的状态使测试仪处于下载模式,从NorFlash闪存启动,然后通过NorFlash闪存的 引导程序再次对NandFlash闪存进行测试程序的写入,写入后,手动将测试仪。

35、置于运行模 式。 说 明 书CN 102565671 A 7/7页 9 0070 尽管上面对本发明说明性的具体实施方式进行了描述,以便于本技术领的技术人 员理解本发明,但应该清楚,本发明不限于具体实施方式的范围,对本技术领域的普通技术 人员来讲,只要各种变化在所附的权利要求限定和确定的本发明的精神和范围内,这些变 化是显而易见的,一切利用本发明构思的发明创造均在保护之列。 说 明 书CN 102565671 A 1/5页 10 图1 说 明 书 附 图CN 102565671 A 10 2/5页 11 图2 说 明 书 附 图CN 102565671 A 11 3/5页 12 图3 图4 说 明 书 附 图CN 102565671 A 12 4/5页 13 图5 说 明 书 附 图CN 102565671 A 13 5/5页 14 图6 图7 说 明 书 附 图CN 102565671 A 14 。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 物理 > 测量;测试


copyright@ 2017-2020 zhuanlichaxun.net网站版权所有
经营许可证编号:粤ICP备2021068784号-1