首页 | 新闻 | 新品 | 文库 | 方案 | 视频 | 下载 | 商城 | 开发板 | 数据中心 | 座谈新版 | 培训 | 工具 | 博客 | 论坛 | 百科 | GEC | 活动 | 主题月 | 电子展
返回列表 回复 发帖

基于PCI总线集成电路测试仪接口设计

基于PCI总线集成电路测试仪接口设计

0 引言
如今社会的正常运行已离不开集成电路产品,集成电路技术在社会各行各业,诸如,交通运输、工业生产、农林自动化、电力等等都有着广泛的应用,集成电路技术与社会的发展密切相关。集成电路行业的发展日趋专业化,逐渐形成设计、制造、封装、测试独立并举、相互依持、共同发展的新局面。其中集成电路测试作为芯片设计、芯片制造和芯片封装的有力补充,推动了集成电路产业的迅速发展。集成电路测试的能力和水平的提高是保证集成电路性能、质量的关键手段之一。
目前广泛用于集成电路封装测试的设备是由计算机软件控制,通过接口总线与硬件设备通信,能够代替测试人员的大部分劳动,也称为自动化测试系统(ATE)。其工作原理是:在计算机中使用测试软件编写待测芯片的测试程序,编写测试程序的过程就是利用程序语言实现对测试系统硬件资源的调度,将测试图形应用于被测集成电路的管脚;使用测试软件执行测试程序,这个过程需要计算机与测试系统进行通信,调用测试系统硬件电路的驱动函数,将控制命令经计算机的I/O接口发送至测试硬件相应的端口;测试仪硬件接口经过译码电路译码之后驱动硬件动作实现既定的测试功能;测试的数据结果通过计算机的I/O接口返回;计算机对结果数据进行分析处理、按一定的标准进行判别,将测试结果进行显示、控制分选机对被测器件进行分选。

1 PCI总线及其接口的实现
自动化集成电路测试系统(ATE)的结构图如图1所示。


本设计的接口总线选用的是PCI总线。PCI(Peripheral Component Interconnect)是一种由NI公司于1997年发布的基于计算机测量和自动化平台的一种全新的开放性、模块化仪器总线规范。PCI总线采用32位突发方式传输的局部总线,工作频率可达33 MHz,支持32 b/64 b的数据传输,并支持多总线主控和线性突发(Burst)模式传送,在理论上数据传输速率可以达到132 Mb/s。
目前国内外PCI总线接口实现方案主要有:采用专用的PCI接口芯片。采用专用芯片只需考虑用它来实现自己要求的功能,而不用考虑PCI芯片的内部结构,这样就缩短了设计时间,但灵活性较差,会造成一定的资源浪费。利用IP核来实现PCI接口,利用基于PCI协议的IP核来实现PCI接口,这种设计开发速度较快,灵活性较好,但是IP核价格昂贵。采用FPGA实现PCI总线协议。采用CPLD/FPGA等可编程逻辑器件实现PCI接口,最大的优点在于灵活的可编程性,可以节约系统的逻辑资源,系统设计紧凑,方便系统更新,缺点是开发难度大,周期长,系统检验困难,且不具备通用性。本文设计了一种采用PCI专用接口芯片PCI9030实现PCI总线接口,并利用可编程逻辑器件FPGA完成复杂的时序逻辑控制和地址译码。该设计的特点是简化了硬件电路的复杂性,缩短了开发周期,通用性较好。其硬件连接框图如图2所示。



2 PCI总线的信号定义
PCI总线的信号主要包括PCI总线信号、E2PROM接口信号和局部总线信号。主要信号的电路连接图如图3所示。



2.1 PCI总线信号
PCI总线信号包括CLK(时钟信号)、(复位信号)、(帧周期信号)、C/BE[3..0](总线命令/字节使能信号)、(主设备准备好信号)、(目标设备准备好信号)、AD[31..00](地址/数据信号)、PAR(奇偶校验信号)、(停止信号)、IDSEL(初始化设备选信号)、(设备选择信号)、(数据奇偶校验错误报告信号)、(系统错误报告信号)、(中断信号)等。这些信号由PCI9030芯片上的各管脚直接与PC机的PCI插槽对应的端口相连。其中MODE信号是多路复用信号,这里使用多路复用功能,需要上拉10kΩ的电阻至3.3 V电源,边界扫描功能不使用,引脚TRST应该接地。

2.2 E2PROM的控制信号
PCI总线接口芯片的配置信息需要通过E2PROM存储并在没备复位时加载。PCI9030的信号线EECS,EESK,EEDI和EEDO是专门用于E2PROM的连接,本没计选用的E2PROM是NM93CS66L,该芯片拥有一个4 KB容量的低电平串行存储器,在对芯片PCI9030执行复佗操作时加载存储信息,从而使PCI接口卡实现即插即用的功能。PCI9030与NM93CS66L的电路连接如图4所示。



2.3 PCI局部总线信号
PCI局部总线信号是指接口芯片对PCI总线信号进行转换后可以被外设设备使用的信号。通常,所需要设计的功能电路都会需要一定的逻辑控制,所以PCI9030提供的局部总线接口信号通常会引入FPGACPLD中实现时序逻辑的控制以简化电路。比较重要的信号有:LINTi1和LINTi2(本地中断信号)、(本地总线等待信号)、(地址选通信号)、[3..0](字节使能信号)、LD[31..00](本地数据总线信号)LA[23.,0](本地地址总线信号)、LCLK(本地总线时钟信号)、(读/写控制信号)、(读选通信号)、(写选通信号)、(传输准备好信号)等。其中,[3..0j信号根据设置的数据总线宽度的不同而表示了不同的含义:
(1)设置本地数据总线的宽度是32位时,[3..0]用来指示数据的有效位::使能字节0,LD[31..24]有效;:使能字节1,LD[23..16]有效;:使能字节2,LD[15..08]有效;:使能字节3,LD[07..00]有效;
(2)设置本地数据总线的宽度是16位时,分别表示(高字节有效)、(低字节有效)、LA1(地址位1)信号::,LD[07..00]有效;:LA1;:没有使用;:,LD[15..08]有效;
(3)设置本地数据总线的宽度是8位时,表示LA1(地址位1)和LA0(地址位0)信号::LA0;:LA1;:没有使用;:没有使用。

3 驱动程序的设计
PCI驱动程序是实现PCI板卡与PC机应用软件间的接口控制与数据传递的专用软件,它可提供PCI板卡与PC机各类消息数据的读、写支持,以及对PCI板卡内部程序的调度。在Windows XP操作系统上可以使用PLX公司提供的软件工具开发包SDK来完成PCI9030驱动程序的设计。SDK包含了用于开发PCI驱动的软件工具和函数库,主要有PLXMON软件工具、API函数库以及用于和操作系统兼容的设驱动程序。PLXMON是一个Wind ows图形窗口的调试软件。利用该工具可以对PCI设备进行配置和更改,也可以将本地软件下载到ROM或RAM中,用户还可以通过它设置E2PROM来实现对PLX公司的PCI芯片的配置和调试。API函数库是以DLL(动态连接库)的形式提供的,被包装在PlxApi.dll中。利用软件开发工具VC 6.0设计PCI驱动程序时,需要将SDK中的PlxApi.dll、PlxApi.lib和PlxApi.h三个文件拷贝到所建VC工程的目录下。在头文件(.h)中添加语句include“PlxApi.h”包含API函数的头文件,在调用API函数之前添加语句LoadLibrary(“PlxApi.lib”)加载API函数库,之后就可以调用API函数设计需要的PCI驱动程序。通过PCI接口卡完成一次电参数测试过程的程序主要代码如下:


4 结语
利用PCI专用接口芯片与FPGA结合可以实现PCI接口电路的简化设计,缩短开发周期;通过PLX公司的SDK软件开发包可以很轻松地完成PCI芯片的配置和调试,在Windows XP操作系统中利用VC6.0软件开发工具加载SDK中的API函数库可以实现用于集成电路测试的PCI驱动程序的设计。通过该接口电路实现了利用PC软件控制硬件电路完成IC测试的功能。
the king of nerds
返回列表