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

发布者:BlissfulMoon最新更新时间:2014-12-05 来源: eccn关键字:PCI总线  PCI9030  FPGA  SDK  驱动程序 手机看文章 扫描二维码
随时随地手机看文章

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应该接地。[page]

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测试的功能。

关键字:PCI总线  PCI9030  FPGA  SDK  驱动程序 引用地址:基于PCI总线集成电路测试仪接口设计

上一篇:基于FPGA的三坐标测量机电机控制系统
下一篇:基于RS422接口的备份测试系统设计

推荐阅读最新更新时间:2024-03-30 22:50

基于FPGA的嵌入式Linux软硬件设计
  FPGA是通过逻辑组合电路来实现各种功能的器件。由于FPGA内部集成了大量的逻辑资源和可配置的I/O引脚,加上独特的并行处理架构,可以轻松实现同时对多个外部设备的配置和管理,以及内外各种接口数据的传输。现在开发厂商又在FPGA 内部加入了大量的DSP和Block RAM资源,非常适合图像处理、数字信号处理等运算密集的应用,因此在这些领域取得了广泛的应用。但是由于FPGA 程序编写的灵活性和功能的多样性,使得它在一个复杂工程中对各个程序的使用调度、统筹管理上有很大的局限性,这样就必须引入操作系统进行统一的管理。Linux 系统则因为其良好的可裁减、可配置等特点在嵌入式领域应用广泛。 Linux操作系统提供了许多系统级的应用,例如
[嵌入式]
基于FPGA的高速卷积的硬件设计实现
  在数字信号处理领域,离散时间系统的输出响应,可以直接由输入信号与系统单位冲激响应的离散卷积得到。离散卷积在电子通信领域应用广泛,是工程应用的基础。如果直接在时域进行卷积,卷积过程中所必须的大量乘法和加法运算,一定程度地限制了数据处理的实时性,不能满足时效性强的工程应用。本文从实际工程应用出发,使用快速傅里叶变换(FFT)技术,探讨卷积的高速硬件实现方法。    1 卷积算法的原理   设线性时不变系统的冲激响应为h(n),则冲激响应和输入δ(n)之间有关系   假设该系统的输入为x(n),输出为y(n),则根据线性时不变系统的定义,有   根据式(3),线性时不变系统的输出信号可以由输入信号与单位冲激响应的
[嵌入式]
基于<font color='red'>FPGA</font>的高速卷积的硬件设计实现
高清液晶电视LCD屏检测仪的设计
 随着多媒体技术的快速发展与普及,液晶显示屏(LCD)在生活中的使用十分普遍。因为目前高清电视的分辨率大多不为电脑显卡所支持,传统的电脑软件测试方法无法满足个体用户对显示屏质量的测试需求。为解决此问题,本文设计了一款价格低、使用灵活、体积小巧的便携式多分辨率LCD图样发生器,可以为实验室人员和消费者提供逐点检测高清液晶屏的机会。 1 LCD检测项目及样图 1.1 检测项目  (1)坏点检测  坏点主要有亮点、暗点两种。质量上乘的液晶显示器要求在全黑图样下无亮点,在全白图样下各点亮度均匀,暗点数目小于3个而且不能出现相邻坏点。本产品坏点检测图样为纯色背景。  (2)对比度  对比度就是把白色信号在100%和0%的饱和度相减,再除以用
[电源管理]
高清液晶电视LCD屏检测仪的设计
ALTERA FPGA在微处理器系统中的在应用配置
摘要:ALTERA公司SRAM工艺可编程器件应用广泛,专用配置器件比较昂贵。在具有微处理器的系统中,使用微处理器系统的存储器来存储配置数据,并通过微处理器配置FPGA,这种方法几乎不增加成本。微处理器根据不同的程序应用,采用不同的配置数据对FPGA进行配置,使FPGA实现与该应用有关的特定功能。详细介绍了微处理器系统中连接简单的被动串行配置方法和被动并行异步配置方法。 关键词:在应用配置 FPGA配置 被动串行 被动并行异步 可编程逻辑器件(PLD)广泛应用在各种电路设计中。基于查找表技术、SRAM工艺的大规模PLD/FPGA,密度高且触发器多,适用于复杂的时序逻辑,如数字信号处理和各种算法的设计。这类器件使用SRAM单元存
[应用]
FPGA PCIe 视频采集解决方案分析
IP视频监控系统市场的增长一直超过预期,并且这种趋势有望延续到2011年。视频监控的应用领域非常广泛,包括: - 私有财产监控 - 商场/商店、仓库和楼宇监控 - 警方使用的城市监控 -大型活动的监控 (如北京奥运会) 网络视频监控的出现也大大扩展了视频监控的应用范围。高速网络基础设备容易部署,便于实现集中监控和视频信息的归档。 整体而言全球视频监控设备市场的总额接近70亿美元。中国监控设备市场预计将从目前的7.83亿美元增长到2011年的14亿。(消息来源: iSuppli Corp.) 在未来的几年内,2008年北京奥运会、2010年上海世博会和“和平中国”计划有望成为推动这一市场继续增长的重大事件。因此
[嵌入式]
基于FPGA的出租车计费系统设计
摘要:出租车计费系统大多利用单片机进行控制,较易被改装,且故障率较高。针对这一问题,设计了一种基于FPGA的出租车计费系统,可模拟汽车行驶、暂停等待,停止等过程,并可同时显示金额、乘车总路程。设计采用层次化设计方法,用VHDL语言进行编程,开发软件为MAX+plusⅡ。经测试,波形与仿真结果都满足设计要求。 关键词:出租车计费系统;VHDL语言;MAX+PLUSⅡ;FPGA 随着城市化水平的提高和人民生活水平的改善,出租车的服务显得越来越重要。因此出租车计费器也就应运而生了。出租车计费器是一种专用的计量仪器,它安装在出租车上,指示出载客路程数,以及乘客应付费用的总数。 出租车计价系统较多的是利用单片机进行控制,但较易
[嵌入式]
基于<font color='red'>FPGA</font>的出租车计费系统设计
基于单片机和FPGA的远程温度监控系统
温度对工农业生产和国防事业均有不同程度的影响。电力设备的故障有多种多样,但大多数都伴有发热的现象,一次事故损失巨大;纺织、食品、烟草等工业中,温度过高容易使产品变质,电子仪器也容易出故障;温室栽培和工业生产中,若不控制温度,将严重影响产量和质量。还有很多领域的温度可能较高或较低,人无法靠近或现场无需人力来监控。传统的温度测量方式周期长,不能实时监测,而且测量员必须到现场进行测量和启动功率设备来调整温度,工作效率非常低,且不便于管理。为此设计了这套远程测控系统,坐在办公室里就可以对现场进行监控,又方便又节省人力。 1 系统的总体设计 本设计是基于单片机和NiosⅡ软核的温度监控系统,其系统框图如图1所示。本系统采用Dallas单
[单片机]
基于单片机和<font color='red'>FPGA</font>的远程温度监控系统
步进电机驱动程序
#include REG52.H #define uchar unsigned char #define uint unsigned int #define ulong unsigned long #define CLK_WISE 0//顺时针方向转动 #define INVERSE 1//逆时针方向转动 bit direction=CLK_WISE;/***方向标志,取值为CLK_WISE 或INVERSE*/ static uchar speedcount=0;//加速标志,越大转速越快,最大到7,然后回归到0,循环。 //程序中可以依据它来改变占空比 uchar step ={0x01,0x09,0x08,
[单片机]
小广播
添点儿料...
无论热点新闻、行业分析、技术干货……
最新测试测量文章
换一换 更多 相关热搜器件
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved