|
分布式数据采集系统中的时钟同步[图]
http://www.cww.net.cn 2011年5月24日 08:49 重庆大学
作 者:王骥
假设同步前主时钟的时间为发出时钟Tm1=2 000 s,而从属时钟的接收时间为Ts1=2 001 s。如果主从时钟是同步的,则同步的接收时钟是:Tm1+Delay=2 000+0.5=2 000.5。只需将时钟调整为2 000.5,即Ts′=Tm1+Delay。 简易时钟同步的关键就在此。同步包内可包含主端发出的时刻。从端收到后,即可与测得的Delay相加为自己的该时刻时钟。 这里要说明的是: ① 上式中的Delay 就是主时钟与从属时钟之间的传输延迟时间,从上面的延迟测量阶段得到。 ② 如果收到的同步包信息出错,从单元可以根据自己的时刻,依据临近取整原则推知主端发出的整秒时刻时间,与接收包进行对比。因为时间偏移一般都在μs级,如果误差太大,则舍弃该包。 1.3 同步实现 如图2所示,从端发出延迟统计包,主端反馈后,从端求得Delay。在每个整秒左右时刻收到同步包后,进行时钟修正,即从属时钟与主时钟实现了精确同步[5]。 2 分布式数据采集系统简介 分布式数据采集系统属于局域网构架,单元间通过网络进行数据交互,由集线器和微采集系统组成,每个微采集器成为一个独立“单元”。可以支持一主多从的分布式模型:设置其中一个微采集系统作为主单元,其他的作为从单元。分布数据采集系统结构框图如图3所示。 各个单元的设计完全相同,均由一个系统控制板和多个功能板构成。系统控制板是采集器的核心,它控制着单元内的各个功能卡的配置和单元内的数据传输,同时保持与外部通信。功能板用以实现A/D、FIFO处理等功能,用于数据采集和传送。各个单元中的所有板卡皆采用独立时钟。 此分布式采集系统中各个单元构成一个星形网。系统控制板成为星形网络中的节点,节点间用网线相连。系统符合协议IEEE802.3、CSMA/CD标准,可以与标准的以太网完美兼容。 3 基于FPGA的实现 3.1 分布式系统中各个单元的体系结构 由于FPGA开发灵活,精度上能达到系统要求,开发周期短,且成本低。系统中各个系统控制板采用FPGA技术,即采用微控制器及其对应的外设接口和相应的软件来实现[6]。利用Nios II处理体系,将系统划分为各个功能模块,并考虑到系统所需的资源和生成代码的大小。设计的系统由以下几部分组成:Altera的Cyclone系列芯片,包括嵌入Nios II软核、系统定时器、同步时钟定时器、DM9000A以及Avalon总线等设计。 网络接口芯片DM9000A实现以太网媒体介质访问层(MAC)和物理层(PHY)的功能。系统采用无链接的UDP通信,且采用多个定时器,用于时钟同步和工作周期的制定。
图2 同步过程
图3 分布数据采集系统结构框图 3.2 具体软件设计流程 同步定时器每秒钟产生一次中断。作为同步时钟,另一个定时器将一个同步周期划分为几个等时段,为工作周期。主从单元通过网络互相交换数据,在每一个系统周期内将各自的数据发送到网络中。为了预防发送时刻点的冲突,在配置信息中注明每个周期该单元的发送时刻。 系统有以下几种状态:初始状态、预同步状态、实时工作状态。 ① 初始状态:分布式系统上电后,主从单元进入初始状态对各项参数进行初始化,注册timer中断和网络中断等。初始化后进入预同步状态。 ② 预同步状态:主要是每小时进行一次网络延时的测量,然后从端会将自己与主端的一次传输时延保存起来。 ③ 实时工作状态:预同步完毕后各单元进入实时工作状态。一小时后又再次进入预同步状态。实时工作状态将处理多个线程。
编 辑:高娟 联系电话:010-67110006-853
文章评论【查看评论()】
|
重要新闻 通信技术 企业黄页 会议活动 |