基于FPGAMicroBlaze软核实现的以太网设计方法
2017-09-08王晓鹏
王晓鹏
摘要:以太网是目前最流行的分组交换局域网技术,它的控制是分布式的,无中央权力的授权接入可以同时接入多台机器,自己检测载波是否空闲。以太网技术具有简单、方便、价格低、速度高等特点,在军事、工业、教育、娱乐等方面获有着广泛的应用。本设计主控芯片采用Sparntan 3E系列型号为XC3S500E-PQ208 的FPGA,以太网控制器采用DM9000芯片实现,详细阐述工程设计流程和软硬件实现方法。
关键词:FPGA;DM9000;MicroBlaze;嵌入式
中图分类号:TP393.11;TN791 文献标识码:A 文章编号:1007-9416(2017)06-0154-01
1 以太网技术基础
以太网接口中最重要的协议是TCP/IP,包括应用层、传输层、Internet层、网络接口层、物理层。在网络接口层包括逻辑数据控制子层(LLC)和媒体访问子层(MAC),MAC子层在上层协议和以太网之间传输和接收数据,确保以太网上第一个帧的数据遵循介质存取规则。
2 芯片选择
2.1 FPGA芯片介绍
Spartan3E系列的XC3S500E-PQ208,该芯片逻辑门数达50万门,有20块RAM,芯片内含208个I/O引脚,需要3.3V、2.5V、1.8V的I/O端口电压,各个分组独立供电。
2.2 以太网控制器DM9000介绍
DM9000是一个综合、成本低的快速以太网控制器芯片,具有通用的处理器接口,传输速率达100Mbit/S,具有自适应,低功耗、高处理性能,支持3.3~5V电源电压。它向外提供一个MII接口,支持8位、16位、32位的接口来适应不同的处理器对内部存储器的访问,且具备MAC控制器,简化了设计流程、能完成不同系统的软件驱动开发。
3 整體设计方案
3.1 硬件设计
整体硬件设计采用FPGA位主控制器,外接以太网控制芯片DM9000,DM9000自带物理(PHY)层处理接口和媒体接入控制(MAC)层处理接口,DM9000与水晶头(RJ-45)连接,DM9000提供了8位、16位、32 位三种不同的连接方式,本文选择8位的连接方式,DM9000原理图如图1所示。
3.2 DM9000硬件驱动
DM9000控制器提供了通用的CPU接口,利用EDK提供的XPS-EPC与之对接,将XPS-EPC添加到系统中,并连接到PLB总线上,最大宽席设置为4,数据位宽设置为16,除了地址总线外其余端口都需要设置成外部端口。
3.3 DM9000软件驱动
DM9000软件驱动包含端口读写操作、PHY的端口配置、复位与初始化的实现、接收数据包的操作实现、发送数据包的操作实现,数据包发送流程图如图2所示。
4 结语
本文给出一个完整的以太网嵌入式开发系统,重点是外部驱动和软件开发,可以从DM9000驱动开发中掌握一般的开发方法和技巧,并在实际应用中灵活应用,具有一定的参考价值。
参考文献
[1]徐欣.基于FPGA的嵌入式系统设计[M].北京:机械工业出版计,2005:28-34.
[2]王田苗.嵌入式系统设计与实例开发[M].北京:清华大学出版社,2003:16-25.
[3]施勇.基于DM9000的嵌入式以太网接口设计与实现[J].合肥工业大学学报,2001,34(04):19-23.endprint