您的位置 首页 应用

嵌入式规划经历:ARM-WinCE渠道时钟同步规划

嵌入式设计经验:ARM-WinCE平台时钟同步设计-时钟同步是分布式系统的核心技术之一,为实现基于ARM-WinCE嵌入式系统平台的测试仪器组建分布式测试系统,在介绍IEEE1588精确时钟协议基本原理的基础上,提出了使用具有IEEE1588协议硬件支持功能的DP83640以太网物理层收发器在基于ARM-WinCE的嵌入式系统平台上实现时钟同步的设计方案,给出了硬件设计的接口电路和软件设计框架。经测试该方案可达到不低于1μs的同步精度。

时钟同步是散布式体系的核心技能之一,为完结依据ARM-WinCE嵌入式体系渠道的测验仪器组成散布式测验体系,在介绍IEEE1588准确时钟协议根本原理的根底上,提出了运用具有IEEE1588协议硬件支撑功用的DP83640以太网物理层收发器在依据ARM-WinCE的嵌入式体系渠道上完结时钟同步的规划计划,给出了硬件规划的接口电路和软件规划结构。经测验该计划可到达不低于1μs的同步精度。

跟着核算机技能、网络通讯技能的前进,组成散布式网络化测验体系,进步测验功率、同享信息资源,已成为现代测验体系开展的方向。散布式测验体系经过网络等通讯前言把散布于各测验点、独立完结特定功用的测验设备衔接起来,以到达测验资源同享和协同作业等意图。时钟同步是散布式体系的核心技能之一,其意图是保护一个大局共同的物理或逻辑时钟,使得体系内各个节点中与时刻有关的信息、事情及行为有一个大局共同的解说。IEEE1588准确时钟协议是当时散布式测验体系中时钟同步研讨的热门。选用硬件支撑的IEEE1588协议可以在以太网中不同结点之间完结纳秒级的时钟同步,为工厂自动化、测验和丈量以及通讯等范畴需求高精度时钟同步的运用供给了一种有用的解决计划。本文选用具有IEEE1588准确时钟协议硬件支撑功用DP83640芯片在依据ARM和WinCE的嵌入式体系渠道上完结IEEE1588协议,为依据嵌入式体系的智能测验仪器组成散布式测验体系奠定了根底。

1 IEEE1588协议原理

IEEE1588的全称是“网络丈量和操控体系的精细时钟同步协议标准”,简称准确时钟协议(Precision TIme Protocol,PIP)。IEEE1588协议是通用的提高网络体系守时同步才能的标准,在起草进程中首要参阅以太网来编制,使散布式通讯网络可以具有严厉的守时同步,而且运用于工业自动化体系。根本构思是经过硬件和软件将网络设备(客户机)的内时钟与主控机的主时钟完结同步,供给同步树立时刻小于10μs的运用,与未履行IEEE1588协议的以太网推迟时刻1000μs比较,整个网络的守时同步目标有明显的改进。

IEEE1588时钟协议在进行时钟同步时,主时钟设备依照必定的时刻距离(一般为2 s)周期性地以播送方法发送同步报文(Sync)和同步跟从报文(FollowUp),且在FollowUp报文中记载Sync报文的发送时刻戳t1,而从时钟设备接纳Syne报文记载接纳时刻戳为t2;然后,从时钟设备节点守时发送推迟恳求报文(Delay_Req)(一般4~60 s发送一次),并记载其发送时刻戳t3,主时钟设备接纳判推迟恳求后,记载接纳时刻戳t4,并给相应从节点发送推迟恳求呼应报文(Delay_Resp),该报文信息中包古时刻戳t4.经过得到的4个时刻戳,可以核算出主从时钟之间的偏移量Toffset和网络传输的线路推迟ms_delay,其进程如图1所示。

嵌入式规划经历:ARM-WinCE渠道时钟同步规划

图1 时钟同步进程

Sync报文在主从设备的时差为:

嵌入式规划经历:ARM-WinCE渠道时钟同步规划

Delay_Req报文在主从设备的时差为:

嵌入式规划经历:ARM-WinCE渠道时钟同步规划

Sync报文传送时主从设备的线路推迟为:

嵌入式规划经历:ARM-WinCE渠道时钟同步规划

Delay_Req报文传送时主从设备线路推迟为:

嵌入式规划经历:ARM-WinCE渠道时钟同步规划

Toffest 可以分别用t2-t2m 和t3-t3m表明:

嵌入式规划经历:ARM-WinCE渠道时钟同步规划

由(5)+(6)得:

嵌入式规划经历:ARM-WinCE渠道时钟同步规划

由(5)-(6)得:

嵌入式规划经历:ARM-WinCE渠道时钟同步规划

在线路对称的情况下,有:

嵌入式规划经历:ARM-WinCE渠道时钟同步规划

偏移量:

嵌入式规划经历:ARM-WinCE渠道时钟同步规划

线路推迟:

嵌入式规划经历:ARM-WinCE渠道时钟同步规划

得到了从时钟与主时钟之间的时刻偏移值,就可以选用恰当的调理算法来调理从时钟,终究使得从时钟与主时钟同步。从时钟并不是每个同步周期都需求进行时刻同步,而是依据从时钟与主时钟之间的时刻偏移值等时刻信息来决议是否需求进行时刻同步。当主从时钟之间树立起安稳的同步联系后,从时钟还需周期性地监听来自主时钟发布的Sync报文,一旦呈现主从时钟之间不处于时刻同步的状况,就从头进行上述的时刻同步进程,直到从头到达主从时钟之间的时刻同步。

IEEE1588协议的运转是由时刻戳驱动的,时钟同步精度首要归结为时刻戳的守时精度。IEEE1588运用UDP协议发送网络同步报文,依据UDP协议传输的进程都是在TCP/IP协议模型下进行数据包的逐层封装和传递的。要使时钟取得的报文发送时刻和报文接纳时刻相对准确、安稳,且把发送推迟和接纳推迟不相等这种要素对核算传达推迟发生的影响减小到最低,最好的解决办法便是在TCP/IP协议栈的底层即物理层对同步报文符号时刻戳,符号时刻戳的操作越挨近物理层,核算得到的主从时钟的时刻偏移量和传达线路推迟就越准确。要完结这一意图就有必要参加专门的硬件设备。美国国家半导体公司(NaTIonal Semiconductor)推出的DP83640芯片便是一款集成IEEE1588准确时钟协议硬件支撑功用的以太网收发器。芯片内置高精度IEEE1588时钟,并具有由硬件履行的时刻戳符号功用,可为接纳及发送信息包参加时刻符号。选用DP83640的同步体系,可取得纳秒级的同步精度。

2 硬件规划

因为IEEE1588协议运转于以太网,在依据ARM的嵌入式体系上选用DP83640芯片移植IEEE1588协议的硬件基确是为体系添加以太网接口电路。以太网接口电路首要由媒体拜访操控(Medium Access Control,MAC)器和物理层(Physical Layer,PHY)收发器两部分构成。MAC操控器芯片完结OSI模型数据链路层的功用,供给寻址组织、数据帧的构建、数据过失查看、传送操控、向网络层供给标准的数据接口等功用。PHY芯片完结OSI模型物理层的功用,界说了数据传送与接纳所需求的电与光信号、线路状况、时钟基准、数据编码和电路等,并向数据链路层设备供给标准接口。ARM处理器、MAC芯片与PHY芯片三者之间的联系是MAC芯片向上经过其处理器接口(Processor Interface)与ARM处理器的高档外设总线(APB)衔接,向下经过其媒体独立接口(Media Independent Interface,MII)接口与PHY芯片衔接。终究,PHY芯片与RJ45接口衔接。

本文运用SAMSUNG公司的S3C2440A型ARM处理器,其内部设有集成MAC操控器,而DP83640芯片仅仅PHY收发器,因而二者之间还需求添加MAC芯片。因为现在常用的以太网操控器都集成了MAC操控器和PHY收发器,这儿选用DAVICOM公司的DM9000以太网芯片,其特点是:具有MII接口可以和片外PHY芯片衔接;寄存器操作简略有用;本钱低价。

完结S3C2440A与DM9000衔接,有必要对两者间的数据、地址、操控三大总线进行衔接和转化,其衔接联系如图2所示。

嵌入式规划经历:ARM-WinCE渠道时钟同步规划

图2 以太网接口电路

S3C2440A的数据线D[15:0]与DM9000的地址、数据复用数据线SD[15:0]衔接用来完结S3C2440A与DM9000之间的数据传输。芯片挑选信号AEN与S3C2440A的片选使能信号nGSC4衔接,当拜访0x20000000-0x27FF FFFF这个规模的地址时会激活片选使能信号nGCS4.DM9000默许I/O基地址为300H.CMD引脚用于设置COMMAND形式,与S3C2440A的ADDR2衔接CMD为高电平时,挑选数据端口。CMD为低电平时,选地址端口。数据端口和地址端口的地址码由下式决议:

DM9000地址端口=高位片选地址+300H+0H

DM9000数据端口=高位片选地址+300H+4H

高位片选地址由S3C2440A芯片的nGCS4供给,即为:0x20000000.因而DM9000的地址IO基址为0x20000000,数据IO基址为0x2000 0004.向地址IO写数据时不会激活ADDR2,CMD为低电平,所以向DM9000传送的数据为地址,而向数据IO写数据时会激活ADDR2,CMD为高电平,向DM9000传送的数据为数据。S3C2440的输出使能引脚nOE衔接DM9000的读引脚IOR,写使能引脚nWE衔接DM9000的写引脚IOW.DM9000的中止恳求引脚INT衔接S3C2440的外部中止恳求引脚EINT7,使得S3C2440A可以呼应DM9000的中止。

DM9000与DP83640之间经过标准MII接口衔接,RXD[3:0]为接纳数据线,TXD[3.0]为发送数据线,CRS为载波检测信号,COL为抵触检测信号,RX_DV为数据有用信号,RX_ER为接纳过错信号,RX_CLK为接纳时钟信号,TX_CLK为发送时钟信号,TX_EN为发送使能信号,MDIO是办理数据的输入输出双向接口,MDC为办理数据接口供给时钟信号。需求留意的是DM9000默许运用片内PHY,因而在驱动程序初始化DM9000时,有必要自动置位网络操控寄存器NCR的EXT_PHY位以挑选运用片外PHY即DP83640.

3 软件规划

软件规划分为两个过程:1)是依据DM9000和DP83640进行以太网通讯的驱动程序规划;2)是经过DP83640进行时钟同步的运用程序规划。

本文运用WinCE5.0操作体系,WinCE5.0体系下网络驱动程序的编写有必要契合网络驱动接口标准NDIS(Network Driver Interface Stan dard)。NDIS的层次结构如图3所示,其间最上层的Winsock是供给给运用层的接口。NDIS坐落协议驱动层下面,硬件驱动Miniport Driver之上。协议驱动层经过调用NDIS封装的接口函数,完结与底层硬件驱动的交互。WinCE下网络驱动程序的规划首要是在NDIS构架下,针对实际的硬件编写代码,完结相应的中间层Miniport Driver接口函数。其首要完结的功用有:DM9000与DP83640的初始化;网络数据包的发送;网络数据的接纳和中止。

嵌入式规划经历:ARM-WinCE渠道时钟同步规划

图3 NDIS层次结构

完结了以太网通讯的驱动程序的根底上,用于时钟同步功用的运用程序经过UDP协议发送、接纳时钟同步报文,并进行参加、提取和解析时刻戳等操作,这些操作经过读写DP83640内部的1588根本寄存器组(PTP 1588 BASEREGISTERS)和1588装备寄存器组(PIP 1588CONFIGURATION REGISTERS)完结。

4 定论

IEEE1588协议经过在以太网上发送和接纳同步报文来完结时钟同步,同步的精度取决于记载报文发送和接纳时刻的时刻戳的精度,因而要完结高精度的时钟同步有必要经过硬件支撑在通讯协议的底层参加和提取时刻戳。本文经过在ARM-WinCE嵌入式体系渠道上规划了运用DP836 40芯片作为PHY收发器的以太网接口电路及其驱动程序,完结了IEEE1588协议在ARM-WinCE渠道上的移植,并到达了不低于1 μs的同步精度,为依据ARM-WinCE渠道的测验仪器组成散布式测验体系奠定了根底。

声明:本文内容来自网络转载或用户投稿,文章版权归原作者和原出处所有。文中观点,不代表本站立场。若有侵权请联系本站删除(kf@86ic.com)https://www.86ic.net/yingyong/102446.html

为您推荐

联系我们

联系我们

在线咨询: QQ交谈

邮箱: kf@86ic.com

关注微信
微信扫一扫关注我们

微信扫一扫关注我们

返回顶部