高层次开发经验分享,PCIE/SATA/GMII/GUI/SFP光模块

2020-02-17 19:45发布

本帖最后由 feihufuture 于 2015-9-13 19:33 编辑



第二板 超高级验证板,与大家分享开发经验,与第一板的架构有诸多不同和升级。。。先来图
1.jpg

支持的接口类型:
USB :     ARM USB Controller
SD :    ARM SDIO Controller, support HCSD
UART :    ARM Uart controller
SATA Host,SATA Slave :     FPGA MGT Port
SFP :     Fiber-Serders,support 1.25G~2.5Gbps
RJ45 :     Connect to 88E1111,support 1000-Base Network
DVI:    Connect to CH7301C,support 24bit color display
SATA2.0 :     Connect to JMH330S,support SSD or other SATA device
40 Pin Extend port : Connect to FPGA for more use



采用的芯片:
FPGA :   XC6SLX45T-484-3C
ARM:   STM32F103-ZET-6144
NET:  1000-BASE 88E1111
DVI:  CH7301C-TF
DDR3:  MT48LC64M
SATA:   JMH330S


先来分享千兆网UDP通信开发经验:

整体系统架构如图所示, 5.jpg
通过FPGA负责UDP协议与
MAC层的控制,大大简化软件所需要的设计,与速度
的提升, ARM则负责APP上层应用。系统启动时,
ARM负责UDP相关参数的初始化操作,包括MAC地址
的设置, PORT端口设置等等。当完成初始化后,
ARM则可以进行数据发送。如图 3所示,只需填写发送缓存和长度,即可完成发送。
用户可以通过软件配置64位MAC地址,源IP和目的IP
地址, 以及UDP的通信端口号, 这里fpga_write为通过
FSMC总线写FPGA内部寄存器的函数。设置完成后ARM即
可通过udp_send_data函数填写FPGA的UDP发送缓存将数据
发送出去。
通过网上下载的各种网络调试助手完成数据接收验证。
将板卡插如PCIe槽,并合上电源开关后,接入网线, 上位
机设置好调试助手的IP地址和端口号即可开始接收用户通
过ARM填入的UDP数据。

3.jpg
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。