基于FPGA的通用网络下载器硬件设计
网络下载器作为航天计算机地面检测系统的重要组成部分,发挥着重要的作用。文中主要介绍了网络下栽器的总体设计思路,给出了硬件模块的设计原理图。并在 PCB设计中,对于LVDS接口、高速总线以及叠层的设计中给出了应用参考,保证了系统硬件的可靠性,且在实际应用中取得了稳定的性能表现。
随着航天技术的发展,地面检测设备作为大系统的重要组成部分,发挥着重要作用。通用下载器作为测试指令和测试数据上传下发的重要通道,其可靠性和稳定性备受关注,本文介绍了通用下载器的总体设计思路,给出了原理图和PCB的设计参考,同时在实际测试中验证了该设计的可靠性和稳定性。
1 系统概述
该设备主要完成的功能是将70 Mbit的数据包通过网口分包发送给接收设备,并发送控制数据给接收设备,从而接收来自接收设备的状态数据。
图1 系统原理框图
整个设备主要由ARM芯片和FPGA芯片组成,ARM芯片采用三星2440,FPGA选用Xilinx的Xilinx Spartan6系列FPGA,型号为XC6SLX45F484,将FPGA挂在ARM的RAM接口下,其接口带宽可达133 M/5x4 Byte=106 MByte,通过100 Mbit·s-1以太网网卡与PC上位机通信,通过LVDS接口来完成与下位机的数据和控制信息交互。
FPGA 通过一个FIFO接收ARM发送的数据,写使能信号(fifo_wren)由ARM发送的片选信号(nce)和写使能(nwe)控制,当地址信号为 0,nce和nwe同时有效时,FIFO被写入数据(16位宽)。FIFO读使能由FIFO空信号(fifo_empt_w)控制,当FIFO有数据写入时,FIFO空信号(fifo_empt_w)由低变高,触发读使能,数据被读出,并经LVDS后进入下位机。
FPGA通过另一个FIFO接收下位机发送的数据,写使能信号(lvds_en_in)由下位机控制,使能信号为高后,下位机提供写时钟(lv_clk_in_ wire),数据(8位宽)被写入FIFO。FIFO读使能(fifo_rden)由ARM发送的片选信号(nce)和写使能信号(noe)控制,当 FIFO有数据写入时,FIFO空信号(fifo_r_empt_w)由低变高,ARM检测到此信号后使能nce和noe,并给出读时钟,FIFO数据被读出。
ARM通过100 MBIT网口接收上位机发送的TCP/IP数据包,ARM将其解包使数据内容通过ARM的RAM口发送给FPGA,而FPGA将数据包通过LVDS接口发送给接收设备。
图2 FPGA模块框图
下载器通过LVDS口接收来自接收设备发送的状态数据包并缓存至FIFO中,接收完一帧后给ARM发送中断信号,ARM接收到中断信号通过RAM接口读取FPGA FIFO中的状态数据包并打包成TCP/IP数据包并通过100 Mbit网口发送给上位机。
2 原理图设计
2.1 电源设计
系统采用5 V直流供电,FPGA需要1.2 V的核心电压,2.5 V的VCCAUX电压,3.3 V的bank电压,RAM板与LVDS接口芯片sn551vds31/32均使用3.3 V电压供电,同时保证各个电压等级互不影响,采用5 V直接产生1.2 V,2.5 V和3.3 V电压的方式,其中FPGA的1.2 V核心电压采用开关电源LM2852,保证供电电压的精度,提高了电源效率,2.5 V和3.3 V电流预估较大,为满足系统长时间工作的散热,使用TI的电源模块pth04070。
图3 电源组成图
2.2 网络接口设计
网络接口使用DM9000芯片以及网络接口芯片HR911103A组成,DM9000是一个全集成、功能强、性价比高的快速以太网MAC层控制器。其带有一个通用处理器接口、EEPROM接口、10/100 PHY和16 kB的SRAM(其中13 kB用来接收FIFO,3 kB用来发送FIFO)。电源模块采用单一电源,可分别兼容3.3 V和5 V的IO接口电平。设计采用3.3 V电源供电,保证了系统的稳定性,100 m网口双向通信带宽为50 Mbit·s-1(6 MByte /s)。DM9000和2440连接了16条数据线,1条地址线,唯一地址线用于判断数据线传输的是地址或是数据,所以这16条数据线为数据和地址复用,如图4所示。
图4 DM9000与2440连接图
2.3 LVDS接口设计
LVDS:Low Voltage DifferenTIal Signaling,低电压差分信号。LVDS传输支持速率一般在155 Mbit·s-1以上。LVDS是一种低摆幅的差分信号技术,其使得信号能在差分PCB线对或平衡电缆上以几百Mbit·s-1的速率传输,其低压幅和低电流驱动输出实现了低噪声和低功耗。 IEEE在两个标准中对LVDS信号进行了定义。ANSI/TIA/EIA-644中,推荐最大速率为655 Mbit·s-1。设计采用了LVDS接口发送芯片sn551vds 31和接收芯片sn55lvds32,其中发送部分采用50 Ω的串联匹配,电阻精度选择为1%,保证终端匹配电阻的精度。
图5 LVDS发送部分原理图
图6 LVDS接收部分原理图
3 PCB设计
系统P
- 基于ARM+FPGA的大屏幕显示器控制系统设计(06-30)
- 基于ARM和μC/OS-II的车载定位终端的设计(06-24)
- 解读物联网时代下的ARM mbed 操作系统(05-03)
- 用ARM和FPGA搭建神经网络处理器通信方案(07-19)
- ARM新一代Cortex-A73架构解析 千元机也能有高端SoC(05-06)
- 阿里巴巴将大量采用ARM处理器 Intel怎么办?(11-14)