基于FPGA的LVDS转千兆以太网适配器的设计及应用
发布时间:2019-10-13 02:45
【摘要】:星载光谱仪的数据接口为LVDS接口,为快速地将其转换为地面民用设备,设计了LVDS转千兆以太网适配器。适配器采用FPGA为主控芯片,接收光谱仪发送的串行的图像数据,并将其封装为以太网帧格式,然后通过网口芯片传输给上位机;同时适配器接收上位机发送的命令数据,并转发给光谱仪。实验结果表明,适配器在传输速率为43 Mbit/s时,连续运行48 h,误码率为0,在实验室条件和自然条件下均能稳定传输数据,可作为光谱仪的转换接口。
【图文】:
ControlProtocol)时,若传输过程中丢失数据包,该协议要求重发丢失的数据包,这时需要在适配器中开辟很大的缓冲区,也会导致传输时间不可控,且TCP协议的开销很大,也会降低有效的数据传输速率[2]。当采用用户数据报协议UDP(UserDatagramProtocol)时,虽然有可能丢失数据包[3],但适配器的应用场合是点对点传输,电缆连接和电磁环境固定不变,误码可控,即使图像数据出现数据错误的现象,数据包也有校验功能,将对应的数据包舍弃,并不影响测量结果,因此本设计采用UDP协议。1.2整体设计系统整体如图1所示。图1系统整体结构图适配器接收成像电路发送的串行LVDS数据,经数据缓冲、UDP/IP协议封装后送入介质访问控制MAC(MediaAccessControl)芯片,此时MAC芯片会将IP数据包按MAC帧格式送入物理层PHY(PHYsicallayer)芯片,经以太网口输出到上位机。同时上位机发送曝光时间、工作模式等控制命令,该命令由MAC芯片接收后送入现场可编程门阵列FPGA(Field-Program-mableGateArray),FPGA将其解码并通过通用异步收发传输器UART(UniversalAsynchronousReceiver/Transmitter)模块转为异步串行数据经RS-422总线发送给成像电路。除此之外,成像电路将CCD的工作温度等状态信息也通过RS-422总线发送给适配器,适配器将其转换为UDP数据包发送给上位机。2硬件电路设计2.1方案设计方案设计中有3种方案可供选择,如表1所示。表1方案描述方案方案描述优缺点FPGA+CPU+PHY采用FPGA+CPU+PHY架构,CPU是内置以太网口的单片机、ARM或DSP等。FPGA实现LVDS接口的串并转换功能,CPU通过移植嵌入式操作系统实现以太网数据传输功能[4]。优点:开发量校缺点:在嵌入式操作系统下,机时受软件调度的影响,不能保证以太网
将串行的LVDS图像数据转换为16bit的并行数据,然后存入数据缓冲模块。LVDS即低电压差分信号,,是美国国家半导体公司在1994年提出的一种信号传输模式。LVDS是一种电平标准,这种技术的核心是采用极低的电压摆幅高速差动传输数据,可以实现点对点或一点对多点的连接。LVDS技术用于简单的线路驱动器和接收器物理层器件[10]。光谱仪的LVDS总线是一种同步串行总线,由3个信号,6根线(3组差分线对)构成。类似串行外设接口SPI(SerialPeripheralInterface)总线,但是是单向传输[11]。该模块接收数据的时序图如图2所示。图2数据接收时序图图像数据接收模块在Frame信号为低电平时,每个CLK的上升沿读取一位数据。由于每个图像的像元为16bit,因此每读满16bit数据便存入数据缓冲模块。考虑到LVDS信号的传输速率为43MHz,而适配器系统时钟为50MHz,所以设计了一个数据缓冲模块来负责信号跨时钟域的传输。数据缓冲模块由两个双端口RAM组成,写端口位宽为16bit,读端口位宽为32bit,采用乒乓缓存策略,当一个RAM写满之后才发送读使能信号,此时新接收的数据存入另一个RAM。由于读操作的速率和位宽都大于写操作,所以并不会出现RAM还没读完就有新数据写入的情况,这样就避免了对一块存储区域的同时读写,从而避免异步时序中冲突等问题。3.2UDP/IP模块UDP/IP模块是适配器的核心部分,考虑到该模块既要完成与其他模块以及MAC芯片通讯的硬件接口功能,又要完成初始化MAC芯片、地址解析协议ARP(AddressResolutionProtocol)协商、协议包的封装与解析等逻辑功能,并且这些逻辑功能又依赖于上述的硬件接口功能,因此引入了级层的概念,即上级的功能通过调用下级来实现,使其逻辑更清晰、代码更简洁。该模块分为3个级层,分别?
【作者单位】: 中国科学院安徽光学精密机械研究所;中国科学技术大学;
【基金】:国家自然科学基金项目(41275037) 安徽省自然科学基金项目(1408085MKL49)
【分类号】:TH744.1;TP393.11
本文编号:2548423
【图文】:
ControlProtocol)时,若传输过程中丢失数据包,该协议要求重发丢失的数据包,这时需要在适配器中开辟很大的缓冲区,也会导致传输时间不可控,且TCP协议的开销很大,也会降低有效的数据传输速率[2]。当采用用户数据报协议UDP(UserDatagramProtocol)时,虽然有可能丢失数据包[3],但适配器的应用场合是点对点传输,电缆连接和电磁环境固定不变,误码可控,即使图像数据出现数据错误的现象,数据包也有校验功能,将对应的数据包舍弃,并不影响测量结果,因此本设计采用UDP协议。1.2整体设计系统整体如图1所示。图1系统整体结构图适配器接收成像电路发送的串行LVDS数据,经数据缓冲、UDP/IP协议封装后送入介质访问控制MAC(MediaAccessControl)芯片,此时MAC芯片会将IP数据包按MAC帧格式送入物理层PHY(PHYsicallayer)芯片,经以太网口输出到上位机。同时上位机发送曝光时间、工作模式等控制命令,该命令由MAC芯片接收后送入现场可编程门阵列FPGA(Field-Program-mableGateArray),FPGA将其解码并通过通用异步收发传输器UART(UniversalAsynchronousReceiver/Transmitter)模块转为异步串行数据经RS-422总线发送给成像电路。除此之外,成像电路将CCD的工作温度等状态信息也通过RS-422总线发送给适配器,适配器将其转换为UDP数据包发送给上位机。2硬件电路设计2.1方案设计方案设计中有3种方案可供选择,如表1所示。表1方案描述方案方案描述优缺点FPGA+CPU+PHY采用FPGA+CPU+PHY架构,CPU是内置以太网口的单片机、ARM或DSP等。FPGA实现LVDS接口的串并转换功能,CPU通过移植嵌入式操作系统实现以太网数据传输功能[4]。优点:开发量校缺点:在嵌入式操作系统下,机时受软件调度的影响,不能保证以太网
将串行的LVDS图像数据转换为16bit的并行数据,然后存入数据缓冲模块。LVDS即低电压差分信号,,是美国国家半导体公司在1994年提出的一种信号传输模式。LVDS是一种电平标准,这种技术的核心是采用极低的电压摆幅高速差动传输数据,可以实现点对点或一点对多点的连接。LVDS技术用于简单的线路驱动器和接收器物理层器件[10]。光谱仪的LVDS总线是一种同步串行总线,由3个信号,6根线(3组差分线对)构成。类似串行外设接口SPI(SerialPeripheralInterface)总线,但是是单向传输[11]。该模块接收数据的时序图如图2所示。图2数据接收时序图图像数据接收模块在Frame信号为低电平时,每个CLK的上升沿读取一位数据。由于每个图像的像元为16bit,因此每读满16bit数据便存入数据缓冲模块。考虑到LVDS信号的传输速率为43MHz,而适配器系统时钟为50MHz,所以设计了一个数据缓冲模块来负责信号跨时钟域的传输。数据缓冲模块由两个双端口RAM组成,写端口位宽为16bit,读端口位宽为32bit,采用乒乓缓存策略,当一个RAM写满之后才发送读使能信号,此时新接收的数据存入另一个RAM。由于读操作的速率和位宽都大于写操作,所以并不会出现RAM还没读完就有新数据写入的情况,这样就避免了对一块存储区域的同时读写,从而避免异步时序中冲突等问题。3.2UDP/IP模块UDP/IP模块是适配器的核心部分,考虑到该模块既要完成与其他模块以及MAC芯片通讯的硬件接口功能,又要完成初始化MAC芯片、地址解析协议ARP(AddressResolutionProtocol)协商、协议包的封装与解析等逻辑功能,并且这些逻辑功能又依赖于上述的硬件接口功能,因此引入了级层的概念,即上级的功能通过调用下级来实现,使其逻辑更清晰、代码更简洁。该模块分为3个级层,分别?
【作者单位】: 中国科学院安徽光学精密机械研究所;中国科学技术大学;
【基金】:国家自然科学基金项目(41275037) 安徽省自然科学基金项目(1408085MKL49)
【分类号】:TH744.1;TP393.11
【相似文献】
相关博士学位论文 前1条
1 刘懿;基于千兆以太网的紫外成像光谱关键技术研究[D];中国科学院研究生院(上海技术物理研究所);2014年
相关硕士学位论文 前2条
1 瞿鑫;基于FPGA的嵌入式千兆以太网相机传输系统的设计[D];电子科技大学;2014年
2 吴建兵;基于GPRS的便携式灌区数据传输仪的研制[D];西北农林科技大学;2006年
本文编号:2548423
本文链接:https://www.wllwen.com/guanlilunwen/ydhl/2548423.html