基于BF537的双冗余以太网的设计与实现

发布者:bdwhsc最新更新时间:2010-08-13 来源: 现代电子技术关键字:以太网  BF537  冗余  实时切换 手机看文章 扫描二维码
随时随地手机看文章

  0 引言

  随着信息技术的高速发展,网络通信也显得越发重要,以太网也成为了各种控制系统接口互联的主要媒介。在金融机构、政府部门、军事应用等特殊应用场合对网络系统的稳定性要求非常高,为了提高系统的可靠性和抗毁性,常常采用双冗余的设计方式。双冗余网络的实现是以故障检测为基础,通过软件检查、交换机及网络节点的网卡协同处理共同完成的。冗余网络的构建方式通常是在每个网络节点采用双网卡,中间用两个HUB或交换机相连。这样当某个节点的一块网卡、网线或者HUB出现故障时,系统会马上启用另一块冗余网卡使得系统仍能够正常运行。本文基于BF537提出了两种冗余网络的构建方案和实现方法。

  1 BF537结构特点

  BF537是Blackfin家族的升级产品,其在标准Blackfin内核的基础上拥有更加丰富的接口,并在内部集成了一个以太网MAC控制器。BF537的内部结构如图1所示。

BF537的内部结构

  Blackfin内核包含2个乘/累加器(MAC),2个40位的ALU,4个视频专用8位ALU和1个40位移位器。运算单元处理来自寄存器组的8位、16位或者32位数据。每个MAC每周期可完成一个16位乘16位的乘法运算,并把结果累加到40位的累加器中,提供8位的精度扩展。ALU单元执行标准的算术和逻辑运算,由于2个ALU具备对16位或32位数据操作的能力,因此运算单元具备的灵活性可以满足各种应用中信号处理的要求。每个32位的输入寄存器可以作为2个16位的寄存器,因此每个ALU可以完成非常灵活的单16位算术运算。通过把寄存器当作2个16位的操作数使用,双16位或单32位操作可以在1个周期中完成。更好地利用第二个ALU,四个16位操作可以简单地完成,加速了每个周期的吞吐量。强大的40位移位器功能丰富,可以对数据进行移位、循环移位、归一化、提取和存储等操作。运算单元所使用的数据来自具有16个16位操作数或8个32位操作数的寄存器组。

  同时BF537把存储器视为一个统一的4 GB的地址空间,使用32位地址并采用分级的存储器结构。Level(L1)存储器一般以全速运行,没有或只有很少的延迟。Level 2(L2)/Level 3(L3)分布在片内或片外,对它的访问会耗费多个处理器周期。在L1级,指令存储器只存放指令,2个数据存储器存放数据,一个专用的临时数据存储器存放堆栈和局部变量信息。在L2/L3级可以存放指令和数据。

  2 双冗余以太网构建方案

  从硬件角度看,以太网接口电路主要由MAC控制器和物理层接口(PHY)两大部分构成,本文从是否具备独立的MAC控制器出发提出了两种不同的构建双冗余以太网的方案。

  2.1 基于独立MAC控制器的设计方案

  上文中提到,BF537在内部集成了一个支持IEEE802.3 MAC控制层协议的MAC控制器,只需要在外部外接一个以太网接口芯片,便可以形成一个完整的以太网通道。因此本文选择了SMSC公司的LAN8187,它提供了标准的MII总线接口,可以方便地与BF537相连接,连接方式如图2所示。其中在MII总线上进行数据的收发,MDC和MDIO则用来完成对接口芯片LAN8187寄存器的读写。本文在下面称由BF537的MAC控制器与物理层接口芯片LAN8187构成的以太网通道为主网络通道。

  如果要求双冗余网络通道拥有独立的MAC控制器,则需在BF537外部扩展一个以太网控制器,见图2,选择同样来自于SMSC公司的LAN91C-111,通过BF537的外部总线与之相连。选择LAN91C111的16位总线工作方式,其A0~A15与BF537的地址总线相连,DO~D15与BF537的数据总线相连,并由BF537的AMS信号控制LAN91C111的片选,外部PF管脚来响应来自LAN91C111的中断请求。

  具有独立MAC控制器的双冗余以太网的设计方案如图2所示。

具有独立MAC控制器的双冗余以太网的设计方案

  2.2 基于共用MAC控制器的设计方案

  从应用角度分析,即使系统拥有独立的MAC控制器,在实际应用中也需要要求两个MAC控制器拥有相同的物理地址,因为若MAC地址不同,冗余切换将引起协议层中ARP绑定表的变化,重新映射ARP表中物理地址和IP地址之间的关系将增加冗余切换的时间,影响到网络通信实时性。

  因此本文提出了一套MAC控制器,两个以太网接口芯片的方案。该设计方案通过一片CPLD将BF537的MII总线分别转接到两片LAN8187上,并由BF537来控制转接的时机,如图3所示。这样形成了两个以太网通信通道,大大简化了设计,提高了冗余切换的实时性。

冗余网络构建方案

  3 冗余切换软件设计

  3.1 网络状态监测

  冗余切换的实现首先在于对网络实时在线监测,本文中检测的方法基于LAN8187的寄存器。LAN8187寄存器定义如表1所示。其中,Basic Control Register为基本控制寄存器,通过配置其各位,可以完成芯片软复位、lO/100 MHz选择、全双工/半双工选择、LookBack模式选择、自协商等功能。Basic Status Register为基本状态寄存器,对其查询可以得到自协商结果、网络物理连接状态等网络基本状态。PHY Identifier 1/PHY Identitier 2两个寄存器标识了芯片的Chip ID。

LAN8187寄存器定义

  因此,对网络状态的实时监测实际上就是实时读取Basic Status Register,并对结果做出判断。

  3.2 程序设计

  可以通过操作BF537的寄存器EMAC_STAADD完成其对LAN8187寄存器的读写。

  对LAN8187寄存器读写的函数定义为:

  u16 RdPHYReg(u16 PHYAddr,u16 RegAddr);

  void WrPHYReg(u16 PHYAddr,u16 RegAddr,u32 Data);

  其中PHYAddr为芯片的物理地址,RegAddr为寄存器地址。

  对Basic Status Register的监测采用轮询的机制,即设定一个信号量Link_status,其周期为2ms,因此每隔2 ms,Ether_moniter线程被触发一次。在Ether_moniter中通过调用RdPHYReg()函数,读取Basic Status Register的值,并判断Link位。Ether-moniter线程流程图如图4所示。

Ether-moniter线程流程图

  对于设计方案1来讲,当检测到需要进行网络切换时,需要停用当前网卡初始化备用网络LAN91C111并设定相同的lP地址以及MAC地址。对于方案2,则只需要通知CPLD将通道切换至备用的LAN8187接口。

  4 冗余切换测试

  用Visual C++6.O开发简单的上位机测试程序,每隔1 ms发送一个UDP数据报,并给每个数据报编写不同的序号。在BF537中编写程序不断接收上位机发来的数据报。然后制造网络通信故障,本文构建的冗余网络将会自动切换到备用通道继续接收上位机的数据报。最后通过检测接收到数据报的序号来确定冗余切换所消耗的时间。分别对两种方案所构建的冗余网络的切换进行测试,结果如表2所示。

冗余切换测试

  从实验结果可以看出方案2具有快速切换的优点,丢包率低;方案1平均丢包数远大于方案2,并且切换时间长。

  5 结语

  提出了两种基于BF537构建双冗余以太网的方案,分别论述了其原理、器件选择、连接方法,并做出软件设计。最后经过测试,方案2的切换效果和时间非常理想,最终在实际项目中得到了应用。

关键字:以太网  BF537  冗余  实时切换 引用地址:基于BF537的双冗余以太网的设计与实现

上一篇:TMS320VC5402与TLC320AD50C的接口设计
下一篇:基于闪存TMS320VC5409DSP并行引导装载方法

推荐阅读最新更新时间:2024-05-02 21:07

工业以太网标准和环境要求
工业中的通讯要求与办公环境有着天壤之别。要考虑到通讯中的每一方面,比如网络中的主动和被动元件,终端设备,网络设计和拓扑结构,甚至环境要求等因素。而且在制造和控制自动化行业中还要使用TCP/IP协议。从而能够优化工业通讯。工业以太网的基本思想就是通过开发现存的网络标准,使各装置和整个系统适应现场环境的需求。 所谓主动元件,主要指如OLM,ELM,OSM,ESM等元件,它们连接不同的终端设备,不仅传送数据,还具有更多的智能功能。而被动元件是同轴电缆,双绞线和光纤这样的传输介质,它们只能对数据进行传送,不具有判定,分析的功能。 工业以太网标准和环境要求 工业中的通讯要求与办公环境有着天壤之别。要考虑到通讯中的每一方面,比如网络
[嵌入式]
单对以太网技术逐步进入工厂
当开发新的数据通信协议时,提高数据速率通常是主要关注点。然而,在工业和建筑自动化应用中运行的无数传感器和致动器中,许多传感器和致动器需要的不仅仅是快速的数据速率才能正确工作。这些边缘设备目前使用大量传统的多点协议进行互连,这增加了原始设备制造商(OEM)支持它们的复杂性和成本。 考虑到这一点,IEEE成立了一个特别工作组,研究短距离网络技术如何通过一对以太网(SPE)电缆提供10Mb/s的数据速率,以满足工业4.0、汽车和其他市场的需求。 图1:工业4.0对工业网络提出了新的要求 这最终导致了2019年IEEE 802.3cg标准的发布,该标准现在将SPE的优势发挥到了极致。 为工业SPE设置场景 虽然已经存在
[工业控制]
单对<font color='red'>以太网</font>技术逐步进入工厂
POWERINK冗余网络提升流程工业可靠性
        在流程工业中,高可用性(有效性)至关重要,关键的应用必须确保安全可靠性,需要通过一种方式来阻止由于硬件损坏或者电缆受损时导致的功能性中断,这便是通过中央控制单元的冗余来实现,如果IPC当机,第二个单元需要立即通知故障并且接管失效单元的任务,阻止正在操作的任务延迟,另一个要达到高可用性(有效性)的必要条件是线缆及控制故障定位。         阿尔斯通是EPSG(POWERLINK标准组织)的成员之一,活跃于全球能源和运输领域。公司基于POWERLINK研发了一套冗余系统,具有响应时间短、实时同步性高、高传输速率及易于诊断的特点。         挑战         阿尔斯通之前仅使用”工厂执行协议FI
[嵌入式]
CAN总线与以太网的嵌入式网关电路的设计与实现
本文从以太网与工业现场总线的互联出发,主要介绍了CAN总线与以太网嵌入式网关电路的设计与实现,本文对比了CAN 和以太网相连的嵌入式网关设计的两种方法,并从硬件结构和软件结构两方面进行了阐述。 目前,对于CAN 和以太网相连的嵌入式网关设计主要有两种方法:一种是低档MCU 加接口芯片的设计方法,另一种是高档MCU 加EOS(实时多任务操作系统)再加接口芯片的设计方法。因CAN 只采用了ISO/OSI 参考模型的一、二层,协议相对简单,比较适合用于低成本、速率要求不高的离散控制系统。从合理的成本和有效利用处理能力这两方面考虑,该设计采用低档MCU 加接口芯片的方法,其硬件框图见图。 图1 主控芯片及以太网接口模块 根据要求,
[单片机]
CAN总线与<font color='red'>以太网</font>的嵌入式网关电路的设计与实现
基于S3C44B0X+μcLinux的嵌入式以太网设计与分析
  随着半导体技术的飞速发展,嵌入式产品已经广泛应用于军事、消费电子、网络通信、工业控制等各个领域,网络化是嵌入式系统发展的必然趋势。嵌入式Linux 作为具有开放的源代码、优秀的网络性能、可裁减等诸多优点的操作系统,非常适合用于具有网络功能的嵌入式系统。本文介绍了以S3C44B0X 的ARM处理器和RTL8019AS 以太网控制器为基础的网络接口设计,并阐述了怎样在嵌入式操作系统μcLinux 下实现对网卡的驱动。   S3C44B0X 处理器介绍   ARM是业界著名的芯片设计IP 供应商,其32 位RISC 微处理器占据了全球80%以上的市场份额。ARM7 系列处理器也是目前市场上最成熟、应用最广的处理器。SAMSUNG
[单片机]
基于S3C44B0X+μcLinux的嵌入式<font color='red'>以太网</font>设计与分析
Bourns针对DSL、以太网与PoE应用推出最新G.fast 及LAN 变压器
Bourns-全球知名电子零组件领导制造与供货商日前推出两款全新变压器产品--- G.Fast 变压器 (型号SM51430EL) 以及LAN 10/100/1000 Base-T 变压器 (型号SM51625EL)。其G.Fast 变压器的设计符合IEC 60950-1绝缘功能等级标准,而LAN 变压器符合IEEE802.3 标准。 Bourns精巧的G.Fast变压器型号SM51430EL是一款经优化过的DSL应用解决方案,专门针对小于500公尺的区域回路设计。此新产品以每秒1千兆(Gbps)为目标速度性能,适合与Broadcom G.Fast芯片组BCM6594x与BCM6524x、Microsemi 线路驱动器Le872
[网络通信]
Bourns针对DSL、<font color='red'>以太网</font>与PoE应用推出最新G.fast 及LAN 变压器
万兆车载以太网媒体转换器-实现更加快捷、高效的连接
多千兆车载以太网 媒体转换器 2.5/5/10GBASE-T1多千兆 Media Converter Media Converter 是一种硬件设备,可在汽车以太网连接(100BASE-T1 或 1000BASE-T1)和任何具有带 RJ-45 连接器的标准以太网网络接口卡 (NIC) 的设备之间建立物理层转换。 多千兆车载以太网转换器-MediaConverter MultiGigabit Marvell在使用2.5/5/10GBASE-T1多千兆标准的汽车ecu和与兼容SFP+模块的千兆以太网接口之间建立直接的点对点转换。在转换过程中,设备不存储或修改任何数据包。转换发生在物理层上,并具有高可靠性。 该设备
[嵌入式]
万兆车载<font color='red'>以太网</font>媒体转换器-实现更加快捷、高效的连接
基于TMS320F206DSP的冗余度TT-VGT机器人的运动学求解
    摘要: 提供了采用TMS320F206 DSP芯片进行冗余度TT-VGT机器人运动学计算方案。该方案充分利用DSP并行特性进行机器人位姿逆解计算,在程序设计中采用了多种技巧以实现优化计算,并对四重四面体变几何桁架(TT-VGT)机器人进行了仿真计算。     关键词: DSP 并行计算 TT-VGT机器人 运动学 20世纪90年代以来,数字信号处理器(DSP)在自动控制中得到越来越广泛的应用。这主要是因为它具有以下优点:(1)并行体系结构和专用的硬件乘法器使得DSP运算能力极强;(2)高速特性使得DSP能实现实时处理和实时控制。    
[传感技术]
小广播
热门活动
换一批
更多
最新嵌入式文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

更多精选电路图
换一换 更多 相关热搜器件
更多每日新闻
随便看看
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved