X-Scan X射频线阵列探测器并行帧捕获卡

2007-03-09 19:03:27来源: 互联网
摘要:介绍了一个基于PCI总线的RS422并行帧捕获卡。该卡用于X-Scan X射线线阵列探测器高速14bit图像数据的获取。简要叙述了X射线线阵列探测器的输出以及基于PCI总线数据获取理论和方法,并介绍了所采用芯片的性能及应用、卡的硬件设计思想和结构以及软件设计。 关键词:RS422接口 PCI总线 X射线 线阵列探测器 帧捕获 1 X-Scan X射线线阵列探测器数据端口和帧捕获卡 X-Scan是芬兰DT公司生产的X射线线阵列探测器,用于安全、工业、医学和食品等领域的无损检测或质量控制中。探测器由探测元件、探测电子学和微控制器组成。探测器数据输出采用RS422端口,为14位数据并行平衡(差分)输出。端口信号十分容易理解:行使能信号LEN和同步信号PCLK(PCLK信号频率为2.2MHz)之间的关系如图1所示。 行使能信号LEN表明自上升沿后,经t2时间探测器发送数据;PCLK信号的上升沿用于计算机接口进行数据读操作。DT公司X-Scan平衡输出定义为一对互为反相的TTL电平信号。 一行数据定义为一帧,其中包含的数据是大量的,并且需要高速传输,所以计算机接口应该基于PCI总线。为此研制了基于PCI总线的帧捕获(Frame Grabbing)卡,以满足X-Scan应用的需要。 2 计算机接口设计 2.1 PCI总线 PCI(Peripheral Component Interconnect)总线是ISA/EISA总线之后的一种现今计算机中广泛采用的局部总线,支持外围设备进行突发通讯,32位总线数据传输速率峰值达132MB/s,远远超过ISA/EISA总线5Mb/s的速度,适合X-Scan与计算机高速数据传输的要求。 与ISA/EISA总线不同,PCI总线协议及接口逻辑十分复杂,从而使得采用中小型规模器件开发接口电路的方法难以实现。鉴于此,许多厂家推出了专用的PCI总线控制芯片,其中AMCC公司生产的S59XX系列芯片因其功能强大、开发方便而被广泛应用。本方案采用AMCC公司的专用芯片S5933来实现PCI协议的执行。 2.2 卡的组成 卡由RS-422接口电平转换、高速数据缓存、PCI总线控制器及控制逻辑等功能模块组成。其结构如图2所示。 2.2.1 电平转换 电平转换的要求是将来自X-Scan RS422输出端口的差分数据和控制信号转换成TTL信号。组成的单元电路采用MAXIM公司的MAX3095 RS422四接收器,其电气特性如图3所示。MAX3095具有10Mbit/s的数据传输速率和90ns的传输延迟,满足X-Scan数据传输的速率要求;还具有200mV的差分接收灵敏度以及15kV的静电保护还具有200mV的差分接收灵敏度以及15kV的静电保护(ESD-Protected)措施,满足X-Scan数据长线传输的要求。 图4 2.2.2 PCI总线控制器S5933 S5933是符合PCI规范2.1版本的32位控制芯片,它提供三种物理接品:PCI总线接口、外接(Add-On)总线接口和外接配置存储器(非易失存储器)接口(见图4),其中,PCI总线接口与PCI总线相连,配置存储器接口与非易失存储器连接(在系统初始化时用来对S5933进行配置),外接(Add-On)总线接口与用户数据设备的连接是卡设计者最需要关注的地方。 S5933中有两个独立的FIFO(8%26;#215;32bit),用于PCI到ADD-ON和ADD-ON到PCI两个方向的数据传输,FIFO的空满状态信号及读写控制信号可供外加接口使用。利用FIFO进行数据传输是S5933数据传输方式中主要的一种(其余还有两种方式:MAILBox方式和PASS_THrμ方式)。FIFO方式控制逻辑简单,易于实现,是本卡采用的方式。本卡中,数据传递只有ADD-ON到PCI单一方向,所应用FIFO的状态信号及控制信号只需VRFULL(满/非满)和WRFIFO(写入)信号。 S5933既可以作为PCI总线的主设备接口,也可作为从设备接口。此卡设计中,S5933采用主控模式,由它发起DMA模式。 2.2.3 高速数据缓存 由于S5933中FIFO深度不足,来自探测器的大量数据直接流入,就会使得FIFO瞬间写满而S5933仍然不能获得PCI总线控制权以及出现溢出和丢失数据。为此,在S5933 Add-On接口与MAX3095之间插入数据缓存。这里采用了IDT公司生产的IDT32V235高速先进先出存储器(FIFO),100MHz存取速率,18位数据输入和18位数据输出,容量为2048%26;#215;18 bit。其结构见图5。 高速流入的数据先在外部FIFO中缓存,内部FIFO非满时再作传送。由于X-Scan是以帧为单位高速传送数据的,而帧与帧之间又有足够的间隙时间,2K容量的外部FIFO足以防止数据的丢失。 IDT72V235可以单片使用,也可以缓联或扩展使用,本卡中IDT72V235是单片使用的。 数据输入端由写时钟(WCLK)和写使能(WEN)控制。当WEN有效且FIFO非满时(满标志FF为高),数据在写时钟WCLK的上升沿被写入。输出端由读时钟(RCLK)和读使能端(REN)控制,当REN有效且FIFO非空时(空标志EF为高),数据在读时钟RCLK的上升沿读入输出寄存器,并在输出使能(OE)为低时输出到端口。读时钟与写时钟可以同步,也可以异步。本卡中时钟异步,读时钟信号S5933 33MHz的BPCLOCK提供;写时钟信号由RS422端口提供,它们决定了数据写入速率为2.2MHz,读出速率为33MHz。 图6 复位(RS为低)时FIFO读取扩展逻辑控制信号FL、RXI和WXI。这些信号定义了FIFO的八种工作模式,本卡中它们接地,FIFO定义在非同步IDT标准模式,时序图见图6。其中,读出延迟tA和写入满到出现满标延迟tWFF都是最大6.5ns。 2.2.4 数据传输控制 数据控制用于S5933与FIFO,以及FIFO与外部设备之间的传输控制。采用Lattice公司的可编程逻辑芯片ispLSI1016作为逻辑控制器,其性能指标为:最高频率110MHz;10ns传输延迟。IspLSI1016编程后,与S5933及IDT72V235之间的逻辑关系如图7所示。 使能信号EN有效,而FIFO IDT72V235中有数据(EF/OR=1)且S5933 FIFO未满(WREFULL=0)时,IDT72V235将数据驱动到输出寄存器上;在下一个BPCLK周期,将IDT72V235输出寄存器中的数据写入S5933 FIFO。 3 编程与程序设计 编程与程序设计包括ispLSI1016芯片的编程、S5933寄存器编程以及驱动程序的开发。IspLSI1016芯片的编程是利用ispDesignEXPERT开发系统及VHDL语言实现的,这里不再多述。 3.1 S5933寄存器编程 PCI总线规范定义了256字节的配置空间,分为预定义头域和设备依赖区域两部分。 头域包括设备制造商标识ID、设备ID、版本ID、分类代码三个寄存器(用于识别设备及其功能)、基地址寄存器BADR(用来确定该设备的存储和I/O空间需求)、中断引脚和中断编号两个寄存器以及延时计数寄存器Min-Gnt和Max-Lat(用来设置DMA)等。 设备依赖区域包括位于PCI总线一侧和扩充总线接口一侧的两组操作寄存器,用于监测S5933的状态并控制其运行。本卡用到的操作寄存器有:MWTC(主控写计数)、MWAR(主控写地址)、MCSR(主控控制/状态)和INTCSR(中断控制/状态)等寄存器。 配置空间数据编程在与S5933连接的一片非易失存储器(nvRAM)中进行,系统加电或复位后,S5933将从nvRAM下载销售商标识符VID和设备标识符DID,如果合法,则下载基地址单元BADR的内容,其值必须是C1H/C0H/C2H/FFH/E8H/10H。如果都正确,便依次读入配置数据,决定I/O或存储器空间的大小。然后将每个区域的起始地址写回到BADR中,区域的起始地址必须是区域大小的倍数。每一个BADR都是物理地址(PCI设备自己不能单独确定存储器或I/O的地址,所有的地址影射都必须由系统来完成,而不是应用程序)。 3.2 驱动程序设计 Windows系统下对设备的访问需要通过设备驱动程序进行,所以需要开发卡的驱动程序。 采用Jungo公司提供的WinDriver设备驱动程序开发工具包来开发设备驱动程序。开发时可以有两种方法可供选择:一是利用WinDriver Winzard;二是利用WinDriver提供的用户态函数库,后者要求程序员熟悉WinDriver的用户态函数以及PCI设备的控制过程,相对的难度较大。但这两种方法产生的驱动程序结构基本上没有什么区别,大体结构如下: 打开WinDriver设备;查找所要访问的PCI设备;枚举该设备的资源(内存、I/O、中断等);锁定该设备的资源,避免其它的程序调用;访问板卡上的资源;解锁资源;关闭WinDriver设备。 本卡采用第一种方法,步骤如下: (1)安装好PCI数据采集卡; (2)利用WinDriver Winzard检测采集卡; (3)测试硬件,生成驱动程序代码; (4)修改代码,加入定制的功能; (5)在用户态执行与调试代码; (6)将性能苛记得部分插入到核心态。 驱动程序流程图如图8所示。生成的驱动程序可获得令人满意的探测数据。 此卡为X-Scan X射线线阵列探测器数据获取而研制。探测器通过RS-422数据接口给捕获卡提供14位数字图像数据,数据是逐帧连续发出的,帧信号有效后,以2.2MHz时钟并行连续输出768个14Bits的数据(一帧数据)。实际应用表明,该卡满足探测器逐帧、连续、高速捕获数据的需要。
编辑: 引用地址:http://www.eeworld.com.cn/designarticles/others/200703/9900.html
本网站转载的所有的文章、图片、音频视频文件等资料的版权归版权所有人所有,本站采用的非本站原创文章及图片等内容无法一一联系确认版权者。如果本网所选内容的文章作者及编辑认为其作品不宜公开自由传播,或不应无偿使用,请及时通过电子邮件或电话通知我们,以迅速采取适当措施,避免给双方造成不必要的经济损失。
论坛活动 E手掌握
微信扫一扫加关注
论坛活动 E手掌握
芯片资讯 锐利解读
微信扫一扫加关注
芯片资讯 锐利解读
推荐阅读
全部

小广播

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 安防电子 医疗电子 工业控制

北京市海淀区知春路23号集成电路设计园量子银座1305 电话:(010)82350740 邮编:100191

电子工程世界版权所有 京ICP证060456号 京ICP备10001474号 电信业务审批[2006]字第258号函 京公海网安备110108001534 Copyright © 2005-2016 EEWORLD.com.cn, Inc. All rights reserved