基于SMI 总线的以太网交换机管理功能设计与实现
2016-12-05陈峰铭胡志恒
陈峰铭,胡志恒
(成都信息工程大学 四川 成都610225)
基于SMI 总线的以太网交换机管理功能设计与实现
陈峰铭,胡志恒
(成都信息工程大学 四川 成都610225)
针对早期以广播为核心进行传输的以太网存在的缺陷,网络交换机设备须提供配置和管理功能来满足用户的变化这一需求,研究了一种基于SMI总线控制的智能以太网交换机网管系统,通过对这一交换机软硬件的设计,实现了单SMI总线控制功能和实现、MDC/MDIO读和写操作、交换机功能配置和管理。测试结果表明用户可以自行进行电源控制,避免了用户与物业之间因为对交换机的配置管理而引起的不必要的纠纷。
SMI总线;以太网交换机;配置;管理
近年来网络发展十分迅速,人们对网络应用中的高宽带和安全性有着急切的需求,以太网交换机应运而生,它的功能越来越多,用途越来越广[1]。以太网交换机工作在OSI网络参考模型的数据链路层,它具有多个端口,每个端口都独立工作,无冲突的进行数据传输,是一种完成以太网数据帧转发的网络设备[2-3]。目前交换机的管理是指通过串口或者并口把交换机和主机相连,采用全双工的方式进行工作,用户可以自己对以太网交换机进行配置和管理。例如:网管型交换机就具有端口监控、划分VLAN等多种功能;工业以太网交换机需要适应各种复杂的工业环境,提供Web、SNMP、TELNET等多种管理手段以实现IGMP、ACL、Qos等多协议的管理,应用于工厂自动化、煤矿自动化、电力自动化等多个领域。
通过MCU(微控制器单元)对交换机的SMI总线进行控制是实现一个自动馈电的控制功能,这使得管理方式更加灵活简单,实用性强。选用LPC936芯片来设计SMI接口也使得产品成本更加低廉,应用领域更加广泛,市场竞争力增强。
1 LPC936和88E6097芯片介绍
LPC936是飞利浦公司推出的一款单片封装的微控制器。包含4KB/8KB/16KB字节的可擦除的Flash程序存储器,256字节RAM数据存储器,2个16位定时/计数器和一个23位的系统定时器。它工作在2.4~3.6 V的电压范围内。具有帧错误检测、自动地址检测、间隔检测等功能。它集成了许多系统级的功能,很大程度上减少了元器件的数目和电路板的面积,从而降低系统成本。广泛应用于工业控制、加密系统、协议转换等领域[4-5]。
Marvell系列88E6097F芯片则是可以实现高级功能8端口FE和3端口GE管理型交换机的交换芯片[6-7]。
2 以太网交换机的硬件设计
本交换机采用了LPC936作为主控MCU,并采用2个I/O端口连接交换芯片88E6097的SMI(MDC/MDIO)总线,LPC936的端口I/O仿真SMI总线时序实现对交换芯片的配置管理功能。
主控MCU和交换芯片88E6097直接通过SMI相连,连接好以后再通过隔离变压器和8端口RJ45接口接入传输媒体,48转3.3 V DC-DC电源模块提供电源,由PHY给出灯的显示[8]。
通过灯的显示可以观察每个端口是否连接,数据收发是否正常等情况。编写好相应的软件程序,就可以实现SMI接口的读写时序。其组成的电路框图如图1所示。
图1 电路框图
LPC936拥有512字节的片内EEPROM,数据EEPROM 由SFR控制,用户可以通过SFR和中断对其进行读、写和填充。交换芯片通过I2C总线连接片内EEPROM,保存配置数据[9-10]。在每次开机或复位期间,读取片内EEPROM的内容来对交换芯片寄存器进行初始化配置,重置芯片。
当交换机接收到数据,首先读取的是源MAC地址,将其保存到MAC地址表中,再读取目的MAC地址,然后在地址表中找到相应的端口与其匹配,如果找到了对应的端口,则把数据包复制在这端口上,如果找不到对应的端口,就把数据包广播到其他所有的端口上,如果目的机器对源机器作出回应,以太网交换机就知道目的MAC地址与哪一个端口对应,在下一次传送数据包时,无需再次广播到其他端口。
3 SMI的接口软件设计
整个以太网交换机系统的软件的用到了keil和Smartpro,用keil编写程序,再使用Smartpro通过minipro,将程序烧入单片机中。交换芯片寄存器的内容可以通过PC机端keil来配置,从而达到供电的端口可以连接,不供电的端口不能连接。单片机的软件流程如图2所示。
图2 单片机的软件流程
从主函数开始,首先定义相关的参数,调用配置的管脚以及看门狗定时器的配置,重置芯片,输入高电平进入大循环,端口0至7的物理层功能使能,调用SMI接口管理程序(其中,根据SMI的读写时序,已经将SMI写入了88E6097),直到最后输入为低电平则退出循环,端口0至7的物理层功能停用,然后经过一定时间的延迟,最后控制LED灯的显示。整个单片机的软件流程结束,功能实现。
3.1SMI总线控制功能和实现
SMI称为串行管理接口,广泛应用于交换模块和网络设备中,它使用的是由IEEE(电气电子工程师协会)制定的IEEE802.3u协议。其协议的22号款规定,由元数据控制器(MDC)和管理数据输入输出(MDIO)两路信号组成。设备管理接口通过MDC和MDIO信号对内部寄存器进行访问,MCU中的控制收发器从具有管理功能的收发器中收集相关的状态信息,包括:自动控制、链接状态、断电、速度能力等。
MDC是管理数据的时钟输入,是一个非周期的信号,信号的最小周期为400 ns,它的直流运行的最大的频率可以达到8.3 MHz[11]。
MDIO管理数据输入输出,是一根双向数据线,它传递的双向信号是和MDC同步运行的,且在MDC上升沿后0至300 ns内有效[12]。它传递的是MAC层的控制信息和PHY层的状态信息。
MDIO管脚需要一个上拉电阻在闲置和周转时间把MDIO拉高。当MDIO恢复成没有数据传输的空闲状态时,MDIO处于高阻态。它的访问时间是2个时钟。
3.2MDC/MDIO读和写操作
所有相关的系列管理寄存器和一些可选的寄存器在设备的核心转换中实施。典型MDC/MDIO读操作如图3所示。
图3 典型MDC/MDIO读操作
典型MDC/MDIO写操作如图4所示。
图4 典型MDC/MDIO写操作
数据锁定MDIO的前沿,典型MDC/MDIO读写操作流程表如表1所示。
典型MDC/MDIO读写操作流程为:
表1 典型MDC/MDIO读写操作流程表
Preamble:没有数据传输的空闲状态时,先发32个1,这里一直处于高阻态。
Start:然后数据开始时先发一个0,然后恢复到1。
Op code:接下来是2bit,这里执行的是写操作01。(如果是读则是10)。
Phy Add:再出现一个5位PHY地址,PHY地址和这5 个bit进行匹配,成功则执行下面的操作,失败则结束操作。
Reg Add:选择5位寄存器地址[13]。
Turn:从一个时钟的时间转到另一个方向,在转向阶段,这部分的时序比较特殊,在写操作时,此阶段是完整的2个时钟周期,MAC始终驱动MDIO,在MDC下降沿时MDIO发生变化。在读操作时,此阶段并不是完整的2个时钟周期,而是一个半时钟周期,MAC驱动MDIO在MDC的下降沿变化,然后MDIO总线进入转向阶段,PHY在进入转向阶段的半个周期后,也就是在转向阶段的第一个MDC上升沿时把MDIO拉低,并持续一个周期,转向阶段结束[14]。
Data:帧的寄存器的数据域,MDIO串行读出/写入16位的寄存器数据[15]。读操作时,数据是PHY层送到MAC层的数据,写操作时,数据是MAC层送到PHY层的数据.
Idle:表示MDIO恢复空闲状态时,处于高阻态。一般使用上拉电阻使其处于高电平。软件流程图如图5所示。
图5 SMI的软件流程图
4 结 论
整个解决方案是使用LPC936芯片通过SMI总线去配置管理88E6097交换机的一个开发过程。测试结果表明该解决方案已经实现了控制功能,方便用户管理交换机,运行稳定可靠,达到了设计的要求。
[1]张敏.社区宽带网楼道交换机的设计与实现[D].成都:电子科技大学,2002.
[2]孙磊.嵌入式以太网技术的研究[D].合肥:合肥工业大学,2004.
[3]韦乐平.城域电信级以太网的特征与新发展[J].电信科学,2007(2):1-5.
[4]蒋青泉.交换技术[M].北京:高等教育出版社,2003.
[5]安淑梅,武志刚编著.网络设备与管理[M].北京:北京希望电子出版社,2006.
[6]周慈航,周立功,朱旻.PHILIPS51LPC系列单片机原理及应用设计[M].北京:北京航空航天大学出版社,2002.
[7]周立功.增强型80C51单片机速成与实战[M].北京:北京航空航天大学出版社,2003.
[8]郑文波.控制网络技术[M].北京:清华大学出版社,2001.
[9]张培仁.基于C语言编程的MCS-51系列单片机原理与应用[M].北京:清华大学出版社,2003.
[10]周立功.ARM嵌入式系统基础教程[M].北京:北京航空航天大学出版社,2005.
[11]谭浩强.C程序设计[M].2版,北京:清华大学出版社,1999.
[12]马忠梅,马岩,张凯.单片机的C语言应用程序设计[M].北京:北京航空航天大学出版社,1996.
[13]赵伟,周侗,刘明哲.一种实时以太网模型及其性能测试实现[J].仪器仪表学报,2006,27(6):72-74.
[14]赵锋.电信级以太网技术及测试[J].电信网技术,2008(6): 50-56.
[15]赵隽琪.运营商以太网测试[D].电信网技术,2008(10):65-70.
Ethernet switch management function design based on SMI bus
CHEN Feng-ming,HU Zhi-heng
(Chengdu University of Information Technology,Chengdu 610225,China)
According to the early radio as the core to the flaws of the transmission of Ethernet,the network switch equipment shall provide configuration and management functions to meet the demand of the user's change,a kind of intelligent Ethernet switch network management system based on SMI bus control is researched,through the design of hardware and software for this switch,achieve the function of single SMI bus control and implementation,the MDC/MDIO read and write operations,switch configuration and management.Test results show that the user can control the power to avoid unnecessary disputes between the user and the property because of the configuration management of the switch.
SMI bus;ethernet switch;configuration;management
TN915.07
A
1674-6236(2016)22-0023-03
2015-12-04稿件编号:201512040
陈峰铭(1988—),男,湖北恩施人,硕士研究生。研究方向:无线通信技术及应用。