DIY编程器网

 找回密码
 注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

查看: 1438|回复: 0
打印 上一主题 下一主题

[待整理] 基于FPGA的通用网络下载器硬件设计

[复制链接]
跳转到指定楼层
楼主
发表于 2015-4-27 16:20:17 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式
网络下载器作为航天计算机地面检测系统的重要组成部分,发挥着重要的作用。文中主要介绍了网络下栽器的总体设计思路,给出了硬件模块的设计原理图。并在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设计
       
        系统PCB设计需注意叠层设计,ARM和FPGA间高速总线的设计以及LVDS总线的阻抗匹配及信号约束问题。
       
        根据TI的参考手册,通常的叠层结构为LVDS信号层、电源层(分割成LVDS电平电源和TTL电平电源)、地层(分割成LVDS电平地和TTL电平地)和TTL信号层,如图7所示。
       
       
        图7 PCB叠层结构图
       
        但在实际设计中,由于叠层的设计,不可能单独列出较多层,对于TTL和LVDS信号的地层也无需进行分割,因其会破坏地层的完整性,在确保完整地的情况下,可对其他地层TTL和LVDS信号分割。总之,在保证地层完整的情况下,使LVDS信号和TTL信号尽量分离,最好是在不同的层进行布线。在本PCB板的设计中,使用6层叠层结构:TOP-GND1-INNER-POWER-GND2-BOTTOM,其中TOP和BOTTOM层走LVDS信号,INNER和GND2走LVTTL信号,这样既保持了信号的分层,也保持了完整的信号回流路径。
       
        LVDS信号频率可达600 MHz以上,所以差分线要求严格等长,差分对内最好不超过10 mil(0.254mm),若频率低于600 MHz,该约束值可适当放宽,但上限不能超过75 mil.不同LVDS对间的布线最大差值不超过200 mil.文中在Cadence16.3的约束设置中,具体设置如下。
       
       
        图8 PCB叠层设计图
       
       
        图9 PCB布局布线图
       
       
        表1 PCB约束规则表
       
        差分阻抗的不匹配会产生反射,有10%的阻抗不匹配便会产生5%的反射,所以需根据不同的情况进行不同的匹配控制。LVDS信号的差分特性阻抗为100Ω,对于LVDS信号发射端(TX),采用差分对各自串联精度为1%的50Ω电阻进行匹配,这样既保持了信号传输的功率要求,又满足了阻抗控制的要求。
       
       
        图10数据测试图
       
        4实测结果
       
        下载器性能实测时,将LVDS接口接收和发送部分回环连接,可使用网络调试助手发送55 AA组成的1 032 Byte的数据包,测试下载器的功能。结果如图10所示,从图中可看到,下载器稳定的收发数据。
       
        5结束语
       
        设计的网络下载器将FPGA在信号处理中的优势和ARM芯片在网络通信中的优势相结合,在PCB设计中对于LVDS接口的阻抗、高速线时序以及叠层进行了设计,较好地保证了系统硬件的可靠性,并在实际使用中达到了良好的效果。
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友 微信微信
收藏收藏 分享分享 支持支持 反对反对
您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|文字版|手机版|DIY编程器网 ( 桂ICP备14005565号-1 )

GMT+8, 2024-12-29 20:21 , 耗时 0.092062 秒, 21 个查询请求 , Gzip 开启.

各位嘉宾言论仅代表个人观点,非属DIY编程器网立场。

桂公网安备 45031202000115号

DIY编程器群(超员):41210778 DIY编程器

DIY编程器群1(满员):3044634 DIY编程器1

diy编程器群2:551025008 diy编程器群2

QQ:28000622;Email:libyoufer@sina.com

本站由桂林市临桂区技兴电子商务经营部独家赞助。旨在技术交流,请自觉遵守国家法律法规,一旦发现将做封号删号处理。

快速回复 返回顶部 返回列表