一种医疗CT数据采集系统解决方案
2.3 源同步模块的具体实现
本文引用地址:https://www.eepw.com.cn/article/256099.htm本CT数据采集系统采用SPARTAN6 FPGA进行数据源同步的发送和接收。本小节具体介绍源同步数据的接收部分,数据的发送部分的实现方式基本相同。在源同步的接收端,将IOB配置成双端模式,通过IOB接收来自发送端的时钟和数据,将接收到的LVDS双端信号经过IBUFGDS模块变为单端信号。由于SPARTAN6的IOB中自带IDELAY数据延迟模块和ISERDES数据串并转换模块,因此将单端的时钟信号输入到IDELAY模块进行时钟的延迟控制和ISERDES串并转换,然后再将该时钟通过BUFIO2输入到BUFPLL进行倍频得到接收端的快时钟和供内部使用的慢时钟。数据的对齐则是通过状态机控制其IOB中的SERDES模块和IDELAY模块,数据的接收是通过BUFPLL得到的快速时钟,数据的处理是通过BUFPLL得到的慢时钟。
3 标准以太网帧的实现
3.1 方案论证
传统的以太网通信通常会有10M,100M,1000M,甚至更高的速率,在CT数据采集卡中,传统的100M以太网无法满足要求,必需采用1000M甚至更高的以太网进行数据的传输。用FPGA实现以太网最简单的方法是使用FPGA的软核或者自带的硬核,比如通常我们所说的NOISII,EDK,嵌入在FPGA里面的ARM等,甚至我们可以采用传统的FPGA + ARM的方式来达到我们所要求的设计目标。为了最大限度的降低成本,本设计采用SPARTAN6 LX45T进行数据的采集,在FPGA中实现以太网,最先考虑的是用软核去实现,软核实现不需要深入了解底层原理及具体的通信协议,相对简单。但软核有个不足,软核的速率达不到我们的要求,据有关资料显示,基于spartan6系列的软核实现以太网,主频不到100M,通信速率远远达不到1000M,因此要在spartan6中实现标准1000M以太网只能采用纯逻辑的方式进行数据桢格式的转换。
3.2 以太网标准及实现手段
传统的OSI七层体系(如图2)[4]:应用层,表示层,会话层,运输层,网络层,数据链路层,物理层;TCP/IP的结构体系分为:应用层,运输层,网络层,数据链路层和物理层,实现完整的以太网通信必须具备完整的4层结构体系。完整的以太网协议簇庞大,用纯逻辑实现整个协议簇将消耗大量的FPGA资源,且工作量大,仿真工作复杂。考虑到CT数据采集的特点,采用点对点的以太网通信并不需要绝对完整TCP/IP协议簇,采用自定制的方式将达到我们的设计要求且实现方便。因此,采用MAC地址固定,IP地址自获取的方式(接收arp广播并提取对方IP,将对方IP最后一位加1,设定为FPGA端的IP地址),不另外编写ICMP等协议,将大大减少项目开发的时间。
西门子plc相关文章:西门子plc视频教程
评论