首页 / 专利库 / 电脑零配件 / 计算机系统 / 软件 / 系统软件 / 一种基于SRIO的C6678分布式系统时间同步方法及系统

一种基于SRIO的C6678分布式系统时间同步方法及系统

阅读:731发布:2020-05-08

专利汇可以提供一种基于SRIO的C6678分布式系统时间同步方法及系统专利检索,专利查询,专利分析的服务。并且本 发明 提供了一种基于SRIO的C6678分布式系统时间同步方法及系统,属于信息处理技术领域。本发明通过控制SRIO对各C6678处理器进行时间同步,该同步方法包括首先由任意C6678处理器发起时间同步 请求 ,并对系统进行SRIO枚举,识别出多级SRIO交换网络下的所有C6678处理器,并为其分配广播ID;之后,由发起时间同步请求的C6678处理器向包括自己在内的所有C6678处理器进行广播中断,以及向各C6678处理器发送其计算的到达每一级SRIO交换网络的时间差,最后由各C6678处理器根据接收到广播中断的时间及时间差统一系统时间,所述系统包括用于实现上述功能的模 块 。本发明基于SRIO广播中断,传输速度快,不会对现有系统 软件 程序时序等方面产生影响,并且系统时间同步精确度更高。,下面是一种基于SRIO的C6678分布式系统时间同步方法及系统专利的具体信息内容。

1.一种基于SRIO的C6678分布式系统时间同步方法,用于将多个C6678处理器的时间进行同步,其特征在于,通过SRIO对各C6678处理器进行时间同步,通过SRIO对各C6678处理器进行时间同步包括:
步骤一、任意C6678处理器发起时间同步请求
步骤二、发起时间同步请求的C6678处理器对系统进行SRIO枚举,识别出多级SRIO交换网络下的所有C6678处理器,并为其分配广播ID;
步骤三、发起时间同步请求的C6678处理器向包括自己在内的所有C6678处理器进行广播中断,由各C6678处理器记录接收到所述中断的时间;
步骤四、发起时间同步请求的C6678处理器计算其到达每一级SRIO交换网络的时间差,并发送给各C6678处理器;
步骤五、由各C6678处理器根据步骤三记载的时间及步骤四接收的时间差统一系统时间。
2.如权利要求1所述的基于SRIO的C6678分布式系统时间同步方法,其特征在于,所述步骤二中,对系统进行SRIO枚举包括按照宽度优先搜索原则确定发起时间同步请求的C6678处理器到各级SRIO交换机的最短路径。
3.如权利要求1所述的基于SRIO的C6678分布式系统时间同步方法,其特征在于,所述步骤五中,统一系统时间包括:
由步骤三记载的时间减去步骤四接收的时间差作为当前基准时间0,从而得到共同的系统时间。
4.一种基于SRIO的C6678分布式系统时间同步系统,其特征在于,任一C6678处理器包括:
枚举模,用于对系统进行SRIO枚举,识别出多级SRIO交换网络下的所有C6678处理器,并为其分配广播ID;
误差处理模块,用于计算发起时间同步请求的C6678处理器到达每一级SRIO交换网络的时间差;
发送模块,用于向所有C6678处理器发送广播中断,以及用于将所述误差处理模块计算的时间差发送给各C6678处理器;
接收模块,用于接收所述广播中断,以及接收所述时间差;
同步模块,用于根据接收到所述广播中断的时间及所述时间差统一系统时间。
5.如权利要求4所述的基于SRIO的C6678分布式系统时间同步系统,其特征在于,所述枚举模块包括搜索单元,所述搜索单元根据宽度优先搜索原则确定发起时间同步请求的C6678处理器到各级SRIO交换机的最短路径。

说明书全文

一种基于SRIO的C6678分布式系统时间同步方法及系统

技术领域

[0001] 本发明涉及信息处理技术领域,具体涉及一种基于SRIO的C6678分布式系统时间同步方法及系统。

背景技术

[0002] RapidIO是一种主要应用于高性能嵌入式系统的互连通信技术,采用交换互连的方式进行数据传输,即不是采用传统的单一点对点的连接方式,增加了交换机制,增强了系统的灵活性。Serial RapidIO(SRIO)可以采用1X、4X等模式,传输速率可达几十吉比特。RapidIO技术对于路由、交换和容错纠错上有较完备的考虑,因此现在正在应用到越来越多的高性能可靠数据传输系统中。
[0003] 美国德州仪器(Texas Instruments,简称TI)公司的TMS320C6678(简称为C6678)是目前国内嵌入式高性能计算领域使用较广泛的多核数字信号处理器(DSP)芯片。TI提供多种C6678加载方式,可通过JTAG(调试用测试接口)、Ethernet(以太网,简称ETH)、PCIe(PCI Express总线)、SRIO(高速串行总线)、SPI(串行外设接口)、I2C(两线式串行总线)等接口来加载软件。TI公司在C6678中集成了RBL(ROM Boot Loader,内置加载核),可以根据外部的输入选择进入相应的加载模式,接收并执行应用软件代码
[0004] 在分布式实时系统中,每个结点处理器都拥有自己独立的硬件时钟,C6678中有两个计数寄存器TSCH和TSCL,与CPU同频,共同表示一个64bit数,CPU运行一个cycle,寄存器加1,来记录DSP运行或事件发生的时间。然而采用ETH、PCIe、JTAG等加载方式的分布式系统普遍存在各DSP加载时间先后不一致的现象,这会导致各DSP的时间无法同步,给数据观测和调试带来了困难。例如:两片DSP同时响应某个中断,由于加载时间不一致,导致记录的DSP时间不一致,中断看上去不是同时响应的。因此需要让这些分布的相互独立的处理器拥有一个全局公认的系统时间。

发明内容

[0005] 针对上述问题,本发明提供一种基于SRIO的C6678分布式系统时间同步方法,使得各片C6678在加载时间不一致导致的各自分系统时间无法同步的情况下,拥有一个全局公认的系统时间。
[0006] 本发明首先提供了一种基于SRIO的C6678分布式系统时间同步方法,通过SRIO对各C6678处理器进行时间同步,主要包括以下步骤:
[0007] 步骤一、任意C6678处理器发起时间同步请求
[0008] 步骤二、发起时间同步请求的C6678处理器对系统进行SRIO枚举,识别出多级SRIO交换网络下的所有C6678处理器,并为其分配广播ID;
[0009] 步骤三、发起时间同步请求的C6678处理器向包括自己在内的所有C6678处理器进行广播中断,由各C6678处理器记录接收到所述中断的时间;
[0010] 步骤四、发起时间同步请求的C6678处理器计算其到达每一级SRIO交换网络的时间差,并发送给各C6678处理器;
[0011] 步骤五、由各C6678处理器根据步骤三记载的时间及步骤四接收的时间差统一系统时间。
[0012] 优选的是,所述步骤二中,对系统进行SRIO枚举包括按照宽度优先搜索原则确定发起时间同步请求的C6678处理器到各级SRIO交换机的最短路径。
[0013] 优选的是,所述步骤五中,统一系统时间包括:
[0014] 由步骤三记载的时间减去步骤四接收的时间差作为当前基准时间0,从而得到共同的系统时间。
[0015] 本发明另一方面提供了一种基于SRIO的C6678分布式系统时间同步系统,所述任一C6678处理器包括:
[0016] 枚举模,用于对系统进行SRIO枚举,识别出多级SRIO交换网络下的所有C6678处理器,并为其分配广播ID;
[0017] 误差处理模块,用于计算发起时间同步请求的C6678处理器到达每一级SRIO交换网络的时间差;
[0018] 发送模块,用于向所有C6678处理器发送广播中断,以及用于将所述误差处理模块计算的时间差发送给各C6678处理器;
[0019] 接收模块,用于接收所述广播中断,以及接收所述时间差;
[0020] 同步模块,用于根据接收到所述广播中断的时间及所述时间差统一系统时间。
[0021] 优选的是,所述枚举模块包括搜索单元,所述搜索单元根据宽度优先搜索原则确定发起时间同步请求的C6678处理器到各级SRIO交换机的最短路径。
[0022] 本发明的优点:
[0023] (1)轻量级,系统开销小,基于SRIO广播中断,传输速度快,不会对现有系统软件程序时序等方面产生影响。
[0024] (2)适用于多级SRIO交换复杂网络下的多DSP分布式系统。
[0025] (3)系统级别时间同步,方便软件开发人员进行系统级别的软件程序时序观测和调试。
[0026] 本发明可适用于使用TMS320C6678DSP的嵌入式信息处理系统中,如航空、航天、船舶、通信、软件无线电、人工智能等领域。附图说明
[0027] 图1为按照本发明基于SRIO的C6678分布式系统时间同步方法的一优选实施例流程图
[0028] 图2为按照本发明基于SRIO的C6678分布式系统时间同步系统的一优选实施例的系统架构示意图。

具体实施方式

[0029] 为使本发明实施的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行更加详细的描述。在附图中,自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。所描述的实施例是本发明一部分实施例,而不是全部的实施例。下面通过参考附图描述的实施例是示例性的,旨在用于解释本发明,而不能理解为对本发明的限制。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。下面结合附图对本发明的实施例进行详细说明。
[0030] SRIO互联体系结构共分为三层,分别为逻辑层、传输层和物理层。逻辑层规范处于最高层,定义了全部操作协议和包格式,为端点器件发起和完成事务提供必要的信息;传输层规范处于协议层次的中间层,该层定义了SRIO的地址空间、寻址机制和用于包交换的路由信息;物理层规范处于最底层,内容包括器件级接口的细节,如包传输机制、流量控制、电气参数以及低级错误管理。基于上述原因,本发明通过SRIO广播中断对系统时间进行同步,传输速度快,不会对现有系统软件程序时序等方面产生影响。
[0031] 需要说明的是,本发明所述C6678处理器为使用较广泛的多核数字信号处理器(DSP)芯片中的一种,本领域技术人员可以理解,以下采用“DSP”的描述等同于描述“C6678处理器”。本发明对系统进行时间同步,通常情况下,“系统”可以包含多个板卡,每个板卡具有SRIO交换机,并通过该SRIO交换机连接有多个DSP芯片。
[0032] 图1给出了本发明基于SRIO的多片C6678加载系统时间同步方法,具体工作过程如下:
[0033] 步骤1、基于SRIO交换网络系统上电运行,各DSP做初始化工作。
[0034] 步骤2、系统中任意终端DSP发起同步请求。
[0035] 步骤3、发起同步DSP对系统进行SRIO枚举,为所有终端DSP端口分配同一广播ID。
[0036] 步骤4、发起同步DSP向所有终端DSP发送SRIO中断。
[0037] 步骤5、各DSP记录自己接收中断的系统时间tISR。
[0038] 步骤6、发起时间同步请求的DSP(交换层级为0)根据其他DSP所处的交换层级n,测算出交换层级0到层级n的中断延迟tn(t0=0)。
[0039] 步骤7、各DSP记录tISR-tn,将其当做基准时间0,得到共同的系统时间。
[0040] 本实施例中,所述步骤3中SRIO枚举方法,由系统中任意DSP发起,采用维护数据包的方法,访问各级交换机。枚举过程中系统架构可以看做无权图,采用宽度优先搜索原则确定发起设备到各级交换机的最短路径,并为途经交换机的连接端口(出口)及其挂接终端设备的端口分配广播ID。
[0041] 图2为此方法适用的多级SRIO交换系统结构图,如图所示,整个系统内部有多个SRIO交换机互联,每个交换机上均可挂接终端设备DSP。本实施例中,所述DSP控制通过加载以下模块来控制SRIO传输,这些模块包括:
[0042] 枚举模块,用于对系统进行SRIO枚举,识别出多级SRIO交换网络下的所有C6678处理器,并为其分配广播ID;
[0043] 误差处理模块,用于计算发起时间同步请求的C6678处理器到达每一级SRIO交换网络的时间差;
[0044] 发送模块,用于向所有C6678处理器发送广播中断,以及用于将所述误差处理模块计算的时间差发送给各C6678处理器;
[0045] 接收模块,用于接收所述广播中断,以及接收所述时间差;
[0046] 同步模块,用于根据接收到所述广播中断的时间及所述时间差统一系统时间。
[0047] 本实施例所述方法适用于复杂SRIO交换网络系统架构,原则上不限制SRIO交换机的个数与互联方式,特别适用于多板卡阵列,基于SRIO广播中断,传输速度快,不会对现有系统软件程序时序等方面产生影响。另一方面,本发明中,中断延迟时间tn,根据各交换机配置有略微差异,一般各级交换中断延迟相差在微秒数量级,而tISR则直观反映了加载时间差异的数量级,一般在秒级。两者结合使得本发明系统时间同步精确度更高。
[0048] 最后需要指出的是:以上实施例仅用以说明本发明的技术方案,而非对其限制。尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。
高效检索全球专利

专利汇是专利免费检索,专利查询,专利分析-国家发明专利查询检索分析平台,是提供专利分析,专利查询,专利检索等数据服务功能的知识产权数据服务商。

我们的产品包含105个国家的1.26亿组数据,免费查、免费专利分析。

申请试用

分析报告

专利汇分析报告产品可以对行业情报数据进行梳理分析,涉及维度包括行业专利基本状况分析、地域分析、技术分析、发明人分析、申请人分析、专利权人分析、失效分析、核心专利分析、法律分析、研发重点分析、企业专利处境分析、技术处境分析、专利寿命分析、企业定位分析、引证分析等超过60个分析角度,系统通过AI智能系统对图表进行解读,只需1分钟,一键生成行业专利分析报告。

申请试用

QQ群二维码
意见反馈