基于FPGA的X射线安检设备控制器设计

2008-01-17 10:51:33来源: www.eaw.com.cn

  摘 要:依据X射线安检设备各部分工作原理及控制要求,本文采用FPGA以太网技术设计了基于FPGA的X射线安检设备控制器。本文以Xilinx公司的ISE为开发平台,在ModelSim中仿真了控制器各个模块的功能,得到了符合控制器要求的波形。

 

  引言

  X射线安检设备广泛应用于机场、车站、海关、港口、仓库等地。近年来由于犯罪分子大量使用先进的伪装技术,使传统的安检设备显得力不从心。针对上述情况,本文设计了基于FPGA的X射线安检设备控制器,该控制器通过加载Thin TCP/IP接入以太网,使得多台PC共同对可疑物品的图像数据进行分析,进而提高鉴别精度。

  工作原理及控制要求

  X射线安检设备主要由X射线源、传送装置、控制器、X射线线性阵列探测卡、以太网控制器(CS8900A)、屏蔽辐射所需的机械装置、装有该设备配套软件的PC等组成,X射线安检设备原理如图1所示。

  图1中,当控制器产生X射线触发信号时,X射线源发出圆锥形X射线束,该射线束经准直器后变为扇形平面射线束。射线束穿过传送带上待检测物,X射线部分能量被吸收,最后轰击X射线线性阵列探测卡上的晶体管。被检测物体以某一速度相对于探测卡和X射线源移动时,探测卡逐行采集经过物体的射线,晶体-光电二极管将X射线转换成一个正比于所吸收的X射线流量和能量的电流信号,经放大和积分后,得到一个正比于积分电流乘积分时间的电压,再经A/D转换后送往图像数据处理单元。

  

  

  图1 X射线安检设备原理示意图

  CS8900A工作原理

  CS8900A是一个集成了ISA总线接口的10Base-T以太网控制器。发送数据时,可以采用中断模式和查询方式。如果采用中断模式发送数据帧,在收到主机发来的命令后检测内部空间,若空间足够大,芯片通知主机传送数据,主机接到通知后发送数据包。发送过程中由CS8900A自动为要发送的数据帧添加前导符、定界符、CRC校验码等。若相应的寄存器已被设置,还会引发发送成功中断。如果采用查询方式发送数据,则主机对相应的寄存器进行查询,若可以发送,CS8900A将数据帧加帧头,生成校验码,最后发送至以太网中。

  接收时,CS8900A将自动地从网络中读取数据包,在经过解码、去掉帧头和地址检验等步骤后,将数据帧在片内进行缓存。在CRC校验通过后,CS8900A会根据初始化配置情况,通知主机收到了数据帧。最后选择I/O模式、Memory模式、DMA模式中的一种,将数据传送到主机的存储区中。本设计选用I/O模式对数据进行读取。

  FPGA控制器工作原理

  系统上电后,FPGA控制器初始化X射线源、CS8900A、X射线线性阵列探测卡等。由于FPGA内部逻辑是并发机制,所以以下进程是并发的:接收到检测信号后触发X射线源、X射线线性阵列探测卡,当接收到ADC的EOC端信号后进行图像数据的接收、处理、发送;接收到CS8900A中断信号后进行数据解析,根据解析的数据进行参数设置、控制传送带的运行状态、报警等相应操作。工作流程如图2所示。

  

  

  图2 X射线安检设备控制器工作流程图

  控制要求

  系统需要完成初始化、图像数据采集、控制传送带运行状态、报警等。FPGA控制器通过以太网网卡接收PC发来的参数数据对整个系统控制调节。

  控制器设计

  根据控制要求,控制器主要实现解析IP分组、数据处理、产生控制信号、生成IP分组等任务。解析IP分组实际上是对TCP/IP协议的解析;生成IP分组就是进行数据的封装。本文是基于FPGA芯片设计的控制器,所以,解析IP分组、数据处理、产生控制信号、生成IP分组都是以逻辑电路形式出现在FPGA中。

  FPGA控制器中TCP/IP协议的裁剪方案

  随着互联网应用的迅猛发展,TCP/IP协议已成为嵌入式互联网的主体构架。TCP/IP协议通常被认为是一个四层体系结构,包括链路层、网络层、传输层和应用层。在本设计中,根据控制器的具体要求,对TCP协议进行了适当的裁剪,仅实现了四个协议:ARP(地址解析)、IP(网络协议)、ICMP(控制报文协议)、TCP。

  TCP是一种面向连接的协议,它能提供高可靠性服务。通过使用序列号和确认信息,TCP协议能够向发送方提供到达接收方的数据包的传送信息,从而实现端对端的通信,为了保障图像数据的可靠性,本控制器采用该协议。

  FPGA控制器片内逻辑设计

  本文采用VHDL分模块设计了基于FPGA的安检设备控制器。FPGA片内逻辑设计框图如图3所示。

  

  

  图3 FPGA片内逻辑设计框图

  数据接收模块、数据解析模块

  图3中,数据接收模块实现CS8900A与FPGA内数据解析模块的链接。当控制模块产生确认接收数据信号时,数据接收模块将CS8900A接收缓冲区中的数据读出,然后将其写入数据解析模块。数据解析模块实际上是将上述TCP/IP裁剪协议硬件化,主要用于解析来自数据接收模块的数据,将解析的数据与预存于FPGA内的数据表对照。若解析的结果是指令和外设参数,将其分别写入控制模块和外设参数配置模块,否则将其丢弃。

  控制模块

  控制模块是FPGA控制器的核心模块,主要用于接收检测信号后触发X射线源、探测卡;接收ADC的EOC端信号后对图像数据接收模块产生采集数据信号;接收CS8900A中断信号后对数据接收模块产生接收网卡缓冲区中数据信号;据解析模块所处理的指令,相应地有如下响应:产生外设参数配置信号、产生控制传送带运行状态信号、产生报警信号。

  外设初始化和参数配置模块

  外设初始化模块在系统上电时,对控制器外设发送初始化信号,然后检测控制模块对其是否发送指令,若有指令,则重新初始化外设。外设参数配置模块用于对外设进行参数设置,当控制模块对其产生参数配置信号时,该模块将参数写入初始化模块,

  图像数据接收、处理及发送模块

  图像数据接收模块实现ADC与控制模块、图像数据处理模块链接。当控制模块产生图像数据采集信号时,接收模块给X射线线性阵列探测卡发送启动采集信号,然后将ADC图像数据写入处理模块。处理模块针对内置几何校正、灰度变换、伪彩色等多种清晰度增强算法,利用数字图像处理技术,将图像对比度和清晰度进行增强。发送模块对处理模块处理好的图像数据进行IP封装,然后将其写入CS8900A发送数据缓冲区,启动网卡,将此数据发送到所连接的网络上。

  实验与验证

  由于VHDL是并发程序,所以要把顺序执行的思想转化为并发设计思想。本设计采用Xilinx公司的ISE8.1在Virtex- xc2v6000芯片上实现了控制功能,在Modelsim SE6.1b中进行了仿真。由仿真结果得出,控制信号时序正确,符合控制要求。

  结语

  本文在分析X射线安检设备部分组成器件工作原理及控制要求的基础上,设计了FPGA内部逻辑,给出了控制器的工作流程,验证了控制信号时序的正确性。预计此种控制器可以带来可观的经济效益和市场前景。■

 

关键字:FPGA  模块  设计选用  线性阵列  X射线源  以太网控制器  图像数据采集  CRC

编辑:吕海英 引用地址:http://www.eeworld.com.cn/gykz/xxcl/200801/article_643.html
本网站转载的所有的文章、图片、音频视频文件等资料的版权归版权所有人所有,本站采用的非本站原创文章及图片等内容无法一一联系确认版权者。如果本网所选内容的文章作者及编辑认为其作品不宜公开自由传播,或不应无偿使用,请及时通过电子邮件或电话通知我们,以迅速采取适当措施,避免给双方造成不必要的经济损失。
论坛活动 E手掌握
微信扫一扫加关注
论坛活动 E手掌握
芯片资讯 锐利解读
微信扫一扫加关注
芯片资讯 锐利解读
推荐阅读
全部
FPGA
模块
设计选用
线性阵列
X射线源
以太网控制器
图像数据采集
CRC

小广播

独家专题更多

富士通铁电随机存储器FRAM主题展馆
富士通铁电随机存储器FRAM主题展馆
馆内包含了 纵览FRAM、独立FRAM存储器专区、FRAM内置LSI专区三大部分内容。 
走,跟Molex一起去看《中国电子消费品趋势》!
走,跟Molex一起去看《中国电子消费品趋势》!
 
带你走进LED王国——Microchip LED应用专题
带你走进LED王国——Microchip LED应用专题
 
电子工程世界版权所有 京ICP证060456号 京ICP备10001474号 电信业务审批[2006]字第258号函 京公海网安备110108001534 Copyright © 2005-2016 EEWORLD.com.cn, Inc. All rights reserved