首页> 中国专利> 信号同步系统、节点同步系统、信号同步方法以及节点同步方法

信号同步系统、节点同步系统、信号同步方法以及节点同步方法

摘要

本发明的信号同步系统中,主模块进行计数,在计数值达到预先设定的基准值时,生成第1基准信号,从模块进行计数,在计数值达到基准值时,生成第2基准信号,对进行同步修正处理的间隔进行计数,在计数值达到进行同步修正处理的修正处理间隔值之后,接收第1基准信号并重启,进行计数,在表示进行同步修正处理的间隔的计数值达到修正处理间隔值之后,获得用于生成第2基准信号的计数值以及接收到第1基准信号并重启后的计数值,将抵消用于生成第2基准信号的计数值与接收到第1基准信号并重启后的计数值之间的差分的值作为基准值暂时性地设定于用于生成第2基准信号的计数。

著录项

  • 公开/公告号CN104838615A

    专利类型发明专利

  • 公开/公告日2015-08-12

    原文格式PDF

  • 申请/专利权人 富士电机株式会社;

    申请/专利号CN201280077569.7

  • 发明设计人 光井崇;

    申请日2012-12-13

  • 分类号H04L7/00(20060101);

  • 代理机构31100 上海专利商标事务所有限公司;

  • 代理人张鑫

  • 地址 日本神奈川县

  • 入库时间 2023-12-18 10:21:38

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2017-08-18

    授权

    授权

  • 2015-09-09

    实质审查的生效 IPC(主分类):H04L7/00 申请日:20121213

    实质审查的生效

  • 2015-08-12

    公开

    公开

说明书

技术领域

本发明涉及用于使规定的信号同步的信号同步系统、节点同步系统、信 号同步方法以及节点同步方法。

背景技术

以往,在利用处理器等来执行规定的程序这样的情况下,出于应对大规 模处理或加快处理速度、分散负荷等目的,已知有利用多个处理器来执行处 理的多处理器系统。在这样的多处理器系统中,为了在多个处理器之间实现 计数器(定时器)的同步,使主处理器对从处理器的计数器产生中断信号 等,从处理器根据该中断信号来实现计数器的同步。

另外,在现有的工厂控制用传输系统等产业用网络中,构成系统的各设 备需要在保证实时性的基础上来相互进行大容量的数据交换。因此,在例如 根据搭载于各设备的应用程序的访问请求的发生,事件性地相互访问的情况 下,网络负荷取决于应用程序,从而有可能无法保证实时性。

因此,以往存在如下技术:对各设备设置虚拟的共享存储器(共用存储 器),在更新定时(timing)向网络上的所有节点(站)发送本节点数据。在 使用上述技术的情况下,接收到的各节点通过更新其数据,并供应用程序来 访问,从而实现保证了实时性的数据交换方式。另外,以往,提出有用于在 进行上述数据交换时,实现网络上的有效广播通信(BROADCAST  COMMUNICATION)的方法(例如,参照专利文献1)。

在专利文献1中,同时使用利用各节点的内置定时器的时分复用访问方 式、以及基于来自主控节点的同步化帧的从属节点的内置定时器修正。另 外,在专利文献1所示的方法中,构成为利用总线或串行电缆来将传输路径 相连接的网络。

现有技术文献

专利文献

专利文献1:日本专利特开2005-159754号公报

发明内容

发明所要解决的技术问题

然而,在上述的主处理器与从处理器等之间进行的计数器同步修正处理 中,优选主处理器直接(从硬件上)使从处理器的计数器复位。但是,由于 该计数器是作为在内部进行的多个程序处理的执行标准的计数器,因此若可 随意地由外部进行改写,则其它处理可能会产生问题。另外,在计数器内置 于从处理器的CPU(Central Processing Unit:中央处理器)等中的情况下,无 法从主处理器直接对从处理器的计数器进行复位。因此,以往,一旦从主处 理器向从处理器发送中断信号,则从处理器接收该信号,并利用规定的软件 来间接地(从软件上)执行计数器的复位处理。

上述情况下,从处理器在从主处理器接收到中断信号之后,直到执行与 该信号相对应的本计数器的复位处理为止的期间,由于系统开销(overhead) 等而产生延迟时间。因此,以往,即使进行了复位处理,主处理器与从处理 器之间也仍然存在计数器同步误差。

另外,对于网络间具有主从关系的节点间的计数器的同步,考虑例如通 过接收同步化帧来清零定时器等方法。然而,与上述相同,若在接收到同步 化帧之后经由固件来使定时器清零,则会由于该系统开销等延迟时间而在计 数器中产生误差。

因此,对于作为现有方法的利用同步化帧的节点间的同步方法,在利用 微机的固件来进行主控节点与各从属节点之间的同步时间的测定修正的情况 下,会由于微机的处理时间而产生误差。

因此,为了抑制因计数器的改写而带来的对其它处理的影响,考虑以下 方法:从硬件上对从主处理器发送至从处理器的中断信号进行计数,基于与 从处理器内的计数器之间的差分,来调整从处理器的计数器的计数目标(基 准值),从而实现主处理器与从处理器之间的同步。

由于主处理器的计数器与从处理器的计数器各自的电气特性不同,因此 难以推定主处理器与从处理器之间计数器有多少偏差。因此,若在每个中断 信号时进行调整上述从处理器的计数器的基准值的同步修正处理,则能确保 主处理器与从处理器之间的同步。然而,若频繁地进行同步修正处理,则其 处理负荷增大,有可能对本来要执行的其它处理产生影响。

本发明鉴于上述内容而得以完成,其目的在于提供一种信号同步系统、 节点同步系统、信号同步方法以及节点同步方法,能够抑制处理负荷并高精 度地使规定的信号同步。

解决技术问题所采用的技术方案

为了解决上述问题,本发明的信号同步系统包含根据第1基准信号进行 动作的主模块、以及根据第2基准信号进行动作的从模块,并使该第2基准 信号与该第1基准信号同步,其特征在于,主模块包括:第1基准信号生成 部,该第1基准信号生成部通过进行计数,在计数值达到预先设定的基准值 时,生成第1基准信号,从模块包括:第2基准信号生成部,该第2基准信 号生成部通过进行计数,在计数值达到基准值时,生成第2基准信号;间隔 计数部,该间隔计数部对进行同步修正处理的间隔进行计数;系统开销计数 部,该系统开销计数部在间隔计数部中计数值达到进行同步修正处理的修正 处理间隔值之后,接收第1基准信号,从而重新启动,并进行计数;计数值 获取部,该计数值获取部在间隔计数部中计数值达到修正处理间隔值之后, 根据第1基准信号的接收来获取第2基准信号生成部的计数值及系统开销计 数部的计数值;以及同步修正部,该同步修正部将抵消第2基准信号生成部 的计数值与系统开销计数部的计数值之间的差分的值作为基准值暂时性地设 定于第2基准信号生成部。

此外,本发明也包含将本发明的构成要素、表现或构成要素的任意组合 应用于方法、装置、系统、计算机程序、记录介质、数据结构等而得到的技 术方案。

发明效果

根据本发明,能够在抑制处理负荷的同时高精度地使规定的信号同步。

附图说明

图1是表示实施方式1的信号同步系统的大致结构的一个示例的图。

图2是表示处理器模块的硬件结构的一个示例的图。

图3是用于说明实施方式1中的同步修正处理例的时序图(之一)。

图4是用于说明实施方式1中的同步修正处理例的时序图(之二)。

图5是用于说明实施方式1中的同步修正处理例的时序图(之三)。

图6是表示信号同步方法的大致顺序的示例的图。

图7是表示实施方式2中的节点同步系统的大致结构的一个示例的图。

图8是用于说明实施方式2中的同步修正处理例的时序图(之一)。

图9是用于说明实施方式2中的同步修正处理例的时序图(之二)。

图10是用于说明实施方式2中的同步修正处理例的时序图(之三)。

图11是用于说明实施方式2中的传输延迟时间的通知步骤的一个示例的 图。

图12是表示包含有实施方式2中的使用了主控节点及从属节点的节点同 步系统的网络传输系统的大致结构的一个示例的图。

图13是表示节点同步方法的大致顺序的示例的图。

具体实施方式

下面,参照附图对本发明的优选实施方式进行详细说明。所涉及的实施 方式中所示出的尺寸、材料、其它具体数值等仅仅是为易于理解本发明而举 出的示例,除明确表示的情况之外,均不局限于本发明所示出的示例。此 外,在本说明书及附图中,关于具有实质相同的功能、结构的要素,通过标 注同一标号来省略重复说明,另外,对与本发明无直接关系的要素省略图 示。

(关于本实施方式)

本实施方式中,例如在多个处理器模块、至少分别包含一个处理器模块 的多个节点、装置、基板这样的具有主从关系的模块之间进行计数器(定时 器)同步的情况下,对于来自主模块侧的中断信号(计数器复位信号)求出 从模块侧的系统开销值。另外,在本实施方式中,基于求出的系统开销值与 从模块侧的计数器来进行同步修正处理。

然而,若频繁地执行该同步修正处理,则处理负荷会增大,因此在本实 施方式中,对进行同步修正处理的间隔进行计数,按规定的修正处理间隔值 来定期地(间歇性地)执行同步修正处理。

另外,在本实施方式中,在将具有主从关系的装置设为主控节点及从属 节点的情况下,将通信路径上的延迟时间(传输延迟时间)也考虑在内来进 行同步修正处理。

下面,利用附图对本实施方式中的信号同步系统以及节点同步系统的优 选实施方式进行说明。

(实施方式1:信号同步系统)

图1是表示实施方式1的信号同步系统的大致结构的一个示例的图。图 1所示的信号同步系统10中,作为一个示例,示出了用于在作为模块的多个 处理器模块(图1的示例中为处理器模块11a~11c)之间,进行计数器同步 的多处理器的一个示例。

图1所示的信号同步系统10具有:多个处理器模块11a~11c(以下根据 需要称为“处理器模块11”)、传输总线12、I/O(输入输出)模块13(图 中以13a~13d来示出)、外部设备14(图1中以14a~14d来示出)以及编 译装置15。此处,在图1的示例中,为了说明方便,将处理器模块11a设为 主处理器模块,将处理器模块11b、11c设为从处理器模块,对各个处理器模 块的主要结构进行说明。其中,从处理器模块的数量等并不局限于图1中那 样的两个。

此外,本实施方式中,并不局限于上述结构,单个处理器模块均具有相 同结构,以使得其既可以成为主处理器模块11a,又可以成为从处理器11b、 11c。另外,各处理器模块11通过传输总线12相连接。此外,在实施方式1 中,设为不会因为传输总线12而产生延迟时间。

此处,主处理器模块11a具有第1基准信号生成部21、第1运算部22、 以及存储部23。此外,在图1的示例中,第1基准信号生成部21内置于后述 的CPU,但并不局限于此,例如第1基准信号生成部21与CPU也可以分开 构成。另外,上述的“内置”例如表示仅CPU内的各功能部(第1基准信号 生成部21、第1运算部22)能对第1基准信号生成部21进行访问。

另外,从处理器模块11b、11c具有第2基准信号生成部31、第2运算部 32、间隔计数部33、系统开销计数部34、计数值获取部35、同步判断部 36、同步修正部37、以及存储部38。此外,在图1的示例中,第2基准信号 生成部31内置于CPU,但并不局限于此,例如第2基准信号生成部31与 CPU也可以分开构成。

第1基准信号生成部21通过进行计数,使计数值达到预先设定的基准 值,从而生成第1基准信号。此外,第1基准信号生成部21起到硬件性的计 数器(以下根据需要也称作“定时器”)的功能。基于基准值周期性地对上 述计数值进行计数。图1中,以虚线来表示上述硬件性的计数器。

第1运算部22根据由第1基准信号生成部21生成的第1基准信号,执 行(运算)存储在存储部23中的规定的应用程序等。另外,第1基准信号作 为中断信号(计数器复位信号)经由传输总线12提供(发送)至从处理器模 块11b、11c。

存储部23存储在第1运算部22进行运算的规定的应用程序(Sequence  Program:顺序程序)。此外,第1运算部22进行运算的规定的应用程序是 对例如与主处理器模块11a相连的I/O模块13a发出指示,并利用I/O模块 13a对外部设备14a进行控制的处理。因此,存储部23中主要存储有用于对 与本处理器模块11a相连的I/O模块13a、外部设备14a执行规定处理的程 序。

也就是说,主处理器模块11a在每个规定周期生成第1基准信号,第1 运算部22通过根据第1基准信号执行(运算)应用程序(顺序程序),来对 规定的设备进行控制,周期性地执行该应用程序(顺序程序)。

接着,对从处理器模块11b、11c进行说明,但由于从处理器模块11b、 11c的结构相同,因此在以下说明中,利用从处理器模块11b进行说明,省略 从处理器模块11c的说明。

第2基准信号生成部31进行计数,并设定与上述第1基准信号生成部21 中所设置的基准值相同的基准值,并通过使计数值达到基准值,从而生成第2 基准信号。此外,第2基准信号生成部31起到硬件性的计数器的功能。基于 基准值周期性地对上述计数值进行计数。另外,第1基准信号生成部21与第 2基准信号生成部31各自的计数器是自运行计数器(free-running counter), 自行进行推进。

第2运算部32根据由第2基准信号生成部31生成的第2基准信号,执 行(运算)存储在存储部38中的规定的应用程序等。

此外,第2基准信号生成部31是仅能从例如CPU内的第2运算部32进 行访问的计数器,且内置于CPU内(CPU内置计数器)。也就是说,第2基 准信号生成部31是无法从主处理器模块11a等外部进行硬件式复位的计数 器。

另外,第2运算部32将来自主处理器模块11a的第1基准信号(同步基 准信号)作为中断信号来进行接收,启动后述的同步修正处理。

间隔计数部33进行计数,预先设定有与进行同步处理的修正处理间隔相 当的修正处理间隔值,在计数值达到修正处理间隔值的情况下,生成表示该 情况的修正处理开始信号。

此外,修正处理间隔值通过以下的计算来设定。例如,将为了满足该信 号同步系统所要求的加工精度而所容许的主处理器模块11a与从处理器模块 11b之间的同步误差设为10μs。该情况下,本实施方式中,对到同步误差为 1~5μs为止的最短时间进行计算。此处,将同步误差设为1μs以上是由于若 比1μs还要短,则同步修正处理的频率变高,处理负荷增大,而将同步误差 设为5μs以下则是考虑到相对于10μs的裕量。

此时,将主处理器模块11a与从处理器模块11b中使用的振荡器的频率 设为50MHz,振荡精度设为50ppm。该条件下,同步误差变为1μs的最短时 间是一个时钟的时间×同步允许误差偏离的振荡次数,即,20ns× ((1μs/20ns)×(1/50ppm))=20ms。同样,同步误差变为5μs的最短 时间为100ms。因此,修正时间间隔值设为将20ms~100ms转换成计数值后 得到的值即可。通过将修正处理间隔值设定在上述范围内,并间歇性地执行 同步修正处理,从而能在抑制处理负荷的同时,实现更高的加工精度、提高 生产质量。

系统开销计数部34进行计数,并在接收到修正处理开始信号后,即,在 间隔计数部33的计数值达到修正处理间隔值之后,测量出以上述第1基准信 号的接收为起点、直到执行同步修正处理为止的系统开销值。具体而言,系 统开销计数部34起到接收到第1基准信号后重新启动的硬件性的计数器(定 时器)的功能。

由于系统开销计数部34是由硬件构成的计数器,因此直接对第1基准信 号做出反应,而同步修正处理例如在用于读取计数值的准备完成之前需要花 费时间。用于读取该计数值的准备完成之前所需的时间即为系统开销。此 外,系统开销表示从发生某个事件起到实际执行针对该事件的处理(软件) 为止的延迟时间,而本示例中系统开销是从系统开销计数部34重启的起点到 实际进行同步修正处理为止的时间,但并不局限于此。

计数值获取部35在接收到修正处理开始信号后,即,在间隔计数部33 的计数值达到修正处理间隔值之后,根据第1基准信号的接收,获取实际执 行同步修正处理的时刻(开始时刻)的第2基准信号生成部31的计数值以及 系统开销计数部34的计数值。

同步判断部36在由计数值获取部35所获取到的第2基准信号生成部31 的计数值与系统开销计数部34的计数值相同时,判断为第1基准信号与第2 基准信号同步。另外,同步判断部36在由计数值获取部35所获取到的第2 基准信号生成部31的计数值与系统开销计数部34的计数值不同时,判断为 上述第1基准信号与第2基准信号不同步。

另外,同步判断部36可以对由计数值获取部35所获取到的第2基准信 号生成部31的计数值与系统开销计数部34的计数值进行时间换算,在两者 的时间相等时,判断为同步,另外,在两者的时间不同时,判断为不同步。 也就是说,在实施方式1中,在各处理器模块11之间,各计数器的每一个时 钟的单位时间可能不相等。因此,在该情况下,将各计数值换算成时间,并 利用换算后的时间来进行同步/不同步的判断。

同步修正部37在同步判断部36判断第1基准信号与第2基准信号同步 的情况下,将基准值设定于第2基准信号生成部31。另外,同步修正部37在 同步判断部36判断为第1基准信号与第2基准信号不同步的情况下,求出与 第2基准信号生成部31的计数值和系统开销计数部34的计数值之间的差分 相抵消的值。具体而言,同步修正部37将由计数值获取部35所获取到的第2 基准信号生成部31的计数值减去系统开销计数部34的计数值来求出同步修 正值。接着,同步修正部37从基准值减去所求出的同步修正值,将相减后得 到的值作为新的基准值设定于第2基准信号生成部31。该新的基准值是指, 相对于同步判断部36判断为同步时使用的定时器基准值(默认的基准值), 同步判断部36在判断为不同步时暂时使用的定时器基准值。

另外,若同步判断部36判断为第1基准信号与第2基准信号不同步,并 将相减后得到的值作为新的基准值来设定于第2基准信号生成部31,且使用 了该相减后得到的值的计数完成,则同步修正部37迅速地将基准值设定于第 2基准信号生成部31。由此,能暂时地使基准值改变同步修正值的量。此 处,举出了执行一次与同步修正值相应的量的修正的示例,但并不局限于 此,也可以分几次来执行。在该情况下,同步修正部37在同步修正处理完成 后,将基准值设定于第2基准信号生成部31。

此外,若同步判断部36判断为第1基准信号与第2基准信号之间同步, 则同步修正部37可以一次一次地对第2基准信号生成部31设定上述默认的 基准值,但也可以在保持同步的情况下,设定一次默认的基准值后,无任何 进一步的动作。

另外,在本实施方式中,由于每隔修正处理间隔执行同步修正处理,因 此第2基准信号生成部31的计数值与系统开销计数部34的计数值不同的可 能性较高,同步判断部36大多情况下判断为第1基准信号与第2基准信号不 同步。因此,可以不利用同步判断部36来执行判断,即,不论第1基准信号 与第2基准信号是否同步,都可以由同步修正部37来求出与第2基准信号生 成部31的计数值和系统开销计数部34的计数值之间的差分相抵消的值,并 将该值作为新的基准值来设定于第2基准信号生成部31。

由此,通过省略同步判断部36的结构,从而无需判断处理,能够减轻与 判断所需的处理量相应的处理负荷。

存储部38存储在第2运算部32进行运算的规定的应用程序(顺序程 序)。此外,第2运算部32进行运算的规定的应用程序是例如向连接至从处 理器模块11b的I/O模块13b、13c发出指示,并利用I/O模块13b、13c对外 部设备14b、14c进行控制的处理。因此,存储部38中主要存储有用于对与 本处理器模块11b相连的I/O模块13b、13c、外部设备14b、14c执行规定处 理的程序。

I/O模块13进行与外部设备14等之间的输入输出处理。例如,I/O模块 13将从所连接的外部设备14等获得的数据等输出(发送)至处理器模块 11,或者将由处理器模块11运算处理出的结果输出至外部设备14等,或对 其进行存储。也就是说,处理器模块11利用应用程序来运算从I/O模块13获 得的输入数据,并将该运算结果作为输出数据提供至I/O模块13,从而对外 部设备14进行控制。

外部设备14例如是各种传感器、电动机、记录装置等。外部设备14基 于来自I/O模块13的控制信号等,来进行数据的检测或驱动、数据的输入输 出等。

此处,基准值可以分别预先设定于处理器模块11a、处理器模块11b、处 理器模块11c,也可以分别由外部连接的编译装置15(设定装置)来进行设 定。

编译装置15可以通过对用户等所使用的PC(Personal Computer:个人电 脑)等增加与处理器模块11进行通信并设定基准值的功能来实现,但并不局 限于此,也可以是专用的设定装置。由此,能够针对每一个用户任意地调整 基准值(处理周期)。

此处,在上述示例中,作为信号同步系统10的一个示例对多处理器进行 了说明,而信号同步信号系统10只要包含第1基准信号生成部21、第2基准 信号生成部31、系统开销计数部34、计数值获取部35、同步判断部36以及 同步修正部37即可。

此外,关于信号同步系统10的应用例,并不局限于多处理器,也可以应 用于例如如下定时器同步系统:将主装置侧设为发送原子钟的日期/时间信息 的数字信号的发送站,而将从装置侧设为电子钟。

(处理器模块11的硬件构成例)

接着,利用附图对处理器模块11的硬件构成例进行说明。图2是表示处 理器模块11的硬件结构的一个示例的图。图2所示的处理器模块11具有输 入部41、输出部42、CPU43、FPGA44、存储器45、以及外部接口46,这些 部件通过共用总线B相连接。

输入部41输入各种操作信号,例如来自用户等的程序的执行。此外,输 入部41可以具有例如供用户等进行操作的键盘、鼠标、触摸面板等定点设 备,在通过语音等来进行输入的情况下,也可以具有语音输入设备。

输出部42具有显示器,对进行本实施方式中的处理的处理器模块11进 行操作所需的各种窗口、数据等进行显示,并显示CPU43所执行的控制程序 的执行过程、结果等。

CPU43基于OS(Operating System:操作系统)等的控制程序、保存在 存储器45中的执行程序,通过对整个处理器模块11的处理进行控制,来实 现本实施方式中的各处理,例如各种运算、与各硬件构成部之间的数据的输 入输出等。另外,CPU43与存储器45进行联动,实质上起到上述第1运算部 22、第2运算部32、计数值获取部35、同步判断部36、同步修正部37的功 能,并内置第1基准信号生成部21、第2基准信号生成部31。此外,执行程 序的过程中所需的各种信息等也可以从存储器45获得,并将执行结果等保存 于存储器45中。

FPGA(Field-Programmable Gate Array:现场可编程门阵列)44是可改 写逻辑电路的集成电路。FPGA44由辅助CPU43的各种逻辑电路构成,本实 施方式中,特别起到间隔计数部33、系统开销计数部34的作用。其中,间隔 计数部33也可以由软件来处理。

存储器45保存有由CPU43读取出的执行程序等。此外,存储器45由 ROM(Read Only Memory:只读存储器)、RAM(Random Access Memory: 随机存取存储器)等构成。另外,存储器45也可以具有硬盘等存储单元,以 作为辅助存储装置。另外,存储器45存储本实施方式中的执行程序、设置于 计算机中的控制程序等,根据需要来进行输入输出。此外,存储器45对应于 上述存储部23、38等。

外部接口46经由传输总线12等与其它处理器模块11之间进行数据、控 制信号的收发。另外,外部接口46也与相连的I/O模块13之间进行数据、控 制信号的收发等。

通过上述硬件结构,能够执行本实施方式中的同步修正处理。另外,通 过安装执行程序,从而能容易地利用通用的个人计算机等来实现本实施方式 中的同步修正处理。

接下来,以下对实施方式1中的同步修正处理例进行说明。

(实施方式1中的同步修正处理例)

图3~图5是用于说明实施方式1中的同步修正处理例的时序图(之 一~之三)。在图3~图5所示的示例中,示出了主处理器模块11a、与从处 理器模块11b之间的计数值的同步例。此外,实施方式1中的基准值(处理 周期)设为1000μs,但并不局限于此,例如也可以利用上述的编译装置15来 适当地改变设定。

图3中,主处理器模块11a的第1基准信号生成部21进行计数。若其计 数值在图3中的(1)时刻达到基准值,则输出第1基准信号。然后,第1运 算部22根据该第1基准信号来执行规定处理。图3中,阴影三角形的区域表 示计数值的变化,随着时间的流逝计数值增加,若达到计数目标(例如基准 值),则重置。

另外,从处理器模块11b的第2基准信号生成部31进行计数。若其计数 值在图3中的(2)时刻达到基准值,则输出第2基准信号。然后,第2运算 部32根据该第2基准信号来执行规定处理。由此,主处理器模块11a及从处 理器模块11b中,分别根据独立的第1基准信号及第2基准信号来执行规定 的处理。

另外,在从处理器模块11b中,间隔计数部33进行计数,在计数值达到 修正处理间隔值的情况下(图3的(3)),生成修正处理开始信号。根据所 述修正处理开始信号来开始同步修正处理的准备。

主处理器模块11a中生成的第1基准信号作为中断信号被发送至从处理 器模块11b。从处理器模块11b接收第1基准信号作为中断,并利用软件来启 动同步修正处理(图3的(4))。与此同时,从处理器模块11b的系统开销 计数部34将由该硬件构成的计数器的计数值清零,并重启(图3的 (5))。接着,在同步修正处理的准备完成的情况下,在图3(6)时刻,计 数值获取部35从第2基准信号生成部31获取计数值(图3的(7)),并从 系统开销计数部34获取计数值(图3的(8))。

同步判断部36将由计数值获取部35提供的计数值换算成时间。此处, 例如根据第2基准信号生成部31的计数值得到300μs,根据系统开销计数部 34的计数值得到300μs。由此,能够测量出从第1基准信号的中断的起点开 始,到同步修正处理中获取到计数值为止的系统开销,并能够获取到该时刻 的第2基准信号生成部31的计数值。在第1基准信号与第2基准信号同步的 情况下,所述计数值应当相等。

同步判断部36将由计数值获取部35获取到的第2基准信号生成部31的 计数值(300μs)与系统开销计数部34的计数值(300μs)进行比较。该情况 下,由于两个值相等,因此同步判断部36判断为第1基准信号与第2基准信 号同步。

由于同步判断部36判断为第1基准信号与第2基准信号同步,因此同步 修正部37如通常一样地将基准值1000μs设定于第2基准信号生成部31(该 时刻下第2基准信号生成部31不重启)。然后,由于在图3的(9)时刻计 数值达到基准值1000μs,因此第2基准信号生成部31重启。

此外,第2基准信号生成部31内置于上述CPU43中,而本实施方式 中,并不局限于此,也可以与CPU43分开设置。

另外,先提及一下,图3所示的同步修正处理中,包含计数值获取部 35、同步判断部36、同步修正部37的程序的处理。

图4示出了从处理器模块11b的计数器相比主处理器模块11a的计数器 延迟3μs的情况。

图4中,从处理器模块11b的间隔计数部33进行计数,在计数值达到修 正处理间隔值的情况下(图4的(1)),生成修正处理开始信号。根据所述 修正处理开始信号来开始同步修正处理的准备。

由于计数值达到基准值,因此主处理器11a的第1基准信号生成部21每 隔1000μs输出第1基准信号。从处理器模块11b在生成修正处理开始信号 后,接收第1基准信号作为中断,并利用软件来启动同步修正处理(图4的 (2))。与此同时,从处理器模块11b的系统开销计数部34将由该硬件构 成的计数器的计数值清零,并重启(图4的(3))。接着,在同步修正处理 的准备完成的情况下,在图4的(4)时刻,计数值获取部35从第2基准信 号生成部31获取计数值(图4的(5)),并从系统开销计数部34获取计数 值(图4的(6))。

同步判断部36将由计数值获取部35提供的计数值换算成时间。此处, 例如根据第2基准信号生成部31的计数值得到297μs,根据系统开销计数部 34的计数值得到300μs。同步判断部36将两个计数值进行比较,由于两个计 数值不同,因此判断为第1基准信号与第2基准信号不同步。

由于同步判断部36判断为不同步,因此同步修正部37将临时的基准值 设定于第2基准信号生成部31,以使得第2基准信号生成部31的计数值与系 统开销计数部34的计数值之间的差分被抵消。具体而言,同步修正部37利 用“基准值(处理周期)-(系统开销计数部34的计数值-第2基准信号生 成部31的计数值)”这一式子求出第2基准信号生成部31的计数值的重启 值(复位值),并将所求出的计数值作为临时的基准值来设定于第2基准信 号生成部31。该示例的情况下,临时的基准值为1000μs-(300μs-297μs) =997μs。然后,由于在图4的(7)时刻计数值达到临时的基准值997μs,因 此第2基准信号生成部31重启。也就是说,系统开销计数部34的计数值- 第2基准信号生成部31的计数值后得到的值为同步修正值。

由此,实施方式1中,对于第2循环,能够在与下一个第3循环的第1 基准信号的输出时刻大致相同的时刻使第2基准信号生成部31重启。因此, 实施方式1能够使第1基准信号与第2基准信号同步。此外,图4的情况 下,第3循环以后基准值被设定为1000μs。

图5示出了从处理器模块11b的计数器相比主处理器模块11a的计数器 提早3μs的情况。

图5中,从处理器模块11b的间隔计数部33进行计数,在计数值达到修 正处理间隔值的情况下(图5的(1)),生成修正处理开始信号。根据所述 修正处理开始信号来开始同步修正处理的准备。

由于计数值达到基准值,因此主处理器模块11a的第1基准信号生成部 21每隔1000μs输出第1基准信号。从处理器模块11b在生成了修正处理开始 信号之后,接收第1基准信号作为中断,并利用软件来启动同步修正处理 (图5的(2))。与此同时,从处理器模块11b的系统开销计数部34将由 该硬件构成的计数器的计数值清零,并重启(图5的(3))。接着,在同步 修正处理的准备完成的情况下,在图5的(4)时刻,计数值获取部35从第2 基准信号生成部31获得计数值(图5的(5)),并从系统开销计数部34获 取计数值(图5的(6))。

同步判断部36将由计数值获取部35提供的计数值换算成时间。此处, 例如根据第2基准信号生成部31的计数值得到303μs,根据系统开销计数部 34的计数值得到300μs。同步判断部36将两个计数值进行比较,由于两个计 数值不同,因此判断为第1基准信号与第2基准信号不同步。

由于同步判断部36判断为不同步,因此同步修正部37对第2基准信号 生成部31设定临时的基准值,以使得第2基准信号生成部31的计数值与系 统开销计数部34的计数值之间的差分被抵消。具体而言,同步修正部37与 图4的说明相同地进行计算,求出临时的基准值,并将该临时的基准值设定 于第2基准信号生成部31。该示例的情况下,临时的基准值为1000μs- (300μs-303μs)=1003μs。然后,由于在图4的(7)时刻计数值达到临时 的基准值1003μs,因此第2基准信号生成部31重启。也就是说,系统开销计 数部34的计数值-第2基准信号生成部31的计数值后得到的值为同步修正 值。

由此,实施方式1中,对于第2循环,能够在与下一个第3循环的第1 基准信号的输出时刻大致相同的时刻使第2基准信号生成部31重启。因此, 本实施方式的信号同步系统能够使第1基准信号与第2基准信号相同步。另 外,图5的第3循环以后,基准值被设定为1000μs。如上所述,实施方式1 中,无论在从处理器模块11b的计数器(定时器)相对于主处理器模块11a 的计数器(定时器)延迟的情况或是提早的情况下,均能恰当地实现计数器 同步。

(信号同步方法的顺序例)

图6是表示信号同步方法的大致顺序(sequence)的示例的图。在图6的 示例中,为了说明方便,对使用了主处理器模块11a及从处理器模块11b的 同步进行说明,但本实施方式并不局限于此,能够使多个从处理器模块与一 个主处理器模块相同步。

在图6的计数器同步处理中,首先,主处理器模块11a的第1基准信号 生成部21生成第1基准信号(S01),从处理器模块11b的第2基准信号生 成部31生成第2基准信号(S02)。此外,该处理以硬件方式周期性地进行 工作。另外,主处理器模块11a也将在S01的处理中获得的第1基准信号发 送至从处理器模块11b。因此,从处理器模块11b始终处于能够接收第1基准 信号的状态。

另外,从处理器模块11b的间隔计数部33对修正处理间隔进行计数,在 计数值达到修正处理间隔值的情况下,生成修正处理开始信号,开始同步修 正处理的准备(S03)。

若在间隔计数部33的计数值达到修正处理间隔值之后,从处理器模块 11b接收到主处理器模块11a所发送的第1基准信号(S04),则利用软件来 启动同步修正处理(S05),并同时使系统开销计数部34重启(S06)。然 后,计数值获取部35获取第2基准信号生成部31与系统开销计数部34的两 个计数值(S07),同步判断部36基于所述两个计数值来进行同步判断 (S08),在判断为不同步的情况下,同步修正部37进行同步修正(S09)。

由此,能够在抑制处理负荷的同时高精度地使规定的信号同步。

(实施方式2:节点同步系统)

第2实施方式的特征在于,将上述实施方式1中的传输总线12所产生的 延迟时间包含在内来执行同步修正处理。图7是表示实施方式2中的节点同 步系统的大致结构的一个示例的图。图7所示的节点同步系统50是在节点 51a~51c等多个节点之间进行计数器同步的一个示例。

节点同步系统50具有:多个节点51a~51c(以下根据需要称为“节点 51”)、通信路径(通信网络)52、I/O(输入输出)模块53(图7中以 53a~53d来示出)、外部设备54(图7中以54a~54d来示出)以及编译装置 55。也就是说,节点同步系统50经由作为通信网络的通信路径52将主控节 点51a、与从属节点51b、51c相连接。

此处,为了说明方便,对将节点51a作为主控节点、将节点51b、51c作 为从属节点,其各个节点所固有的结构进行说明,但并不局限于此,各个节 点可既具有主控节点的结构也具有从属节点的结构,以使得各个节点既能成 为主控节点又能成为从属节点。此外,在实施方式2中,设为通信路径52会 产生传输延迟时间。

此处,先对实施方式2(图7)与实施方式1(图1)的不同点进行说 明。主控节点51a相当于实施方式1中的主处理器模块11a,从属节点51b、 51c相当于实施方式1中的从处理器模块11b、11c。另外,编译装置55与实 施方式1中的编译装置15实质相等,此外,I/O模块53a~53d与实施方式1 中的I/O模块13a~13d实质相等。另外,外部设备54a~54d与实施方式1中 的外部设备14a~14d实质相等。由此,以下说明中,省略与实施方式1相同 的结构的说明。

主控节点51a具有:第1基准信号生成部61(对应于实施方式1的第1 基准信号生成部21)、第1运算部62(对应于实施方式1的第1运算部 22)、存储部63(对应于实施方式1的存储部23)、间隔计数部64(对应于 实施方式1的间隔计数部33)、传输延迟时间通知部65以及同步化帧通知部 66。

主控节点51a与实施方式1中的主处理器模块11a之间的主要不同点在 于,具备实施方式1中设置于从处理器模块11b的间隔计数部33作为间隔计 数部64,并还新添加了传送延迟时间通知部65、同步化帧通知部66。由此, 以下说明中,对实施方式2的主要部分进行说明,省略说明与实施方式1相 同的动作。

以下,对实施方式2的一个示例进行说明。实施方式2中,间隔计数部 64进行计数,并预先设定有与进行同步处理的修正处理间隔相当的修正处理 间隔值,在计数值达到修正处理间隔值的情况下,生成表示该情况的修正处 理开始信号。此外,由于修正处理间隔值与实施方式1实质相等,因此此处 省略对其进行说明。

另外,此处在主控节点51a一侧测定修正处理间隔,但也可以在从属节 点51b一侧测定修正处理间隔。该情况下,若在从属节点51b中计数值达到 修正处理间隔值,则将修正处理开始信号发送至主控节点51a,并开始同步修 正处理。

在接收到修正处理开始信号之后,主控节点51a的传输延迟时间通知部 65为了计算出传输延迟时间而将传输延迟时间请求帧发送至从属节点51b、 51c。该传输延迟时间请求帧与后述的同步化帧的格式实质相同,而与同步化 帧内的规定部分(例如指令部)的数据不同。所述传输延迟时间请求帧与第1 基准信号生成部61所生成的第1基准信号相同步地被发送。

接着,传输延迟时间通知部65接收来自对传输延迟时间请求帧进行了应 答的从属节点的接收完成帧。然后,传输延迟时间通知部65根据应答帧接收 时的时刻与发送传输延迟时间请求帧时的时刻之间的差分,来计算出主控节 点51a与从属节点51b、51c之间的往返传输延迟时间。然后,传输延迟时间 通知部65将包含计算出的往返传输延迟时间在内的传输延迟时间通知帧与下 一个第1基准信号相同步地发送至从属节点51b、51c,从而向从属节点 51b、51c通知由通信路径52所产生的延迟时间。

在通知了往返传输延迟时间之后,主控节点51a基于第1基准信号(与 第1基准信号相同步),将预先准备的同步化帧经由通信路径52发送至从属 节点51b、51c。此外,该处理由同步化帧通知部66来执行。在后面会详细说 明,同步化帧是用于使从属节点51b、51c的第2基准信号生成部71的计数值 与主控节点51a的第1基准信号生成部61的计数值相匹配的同步基准信号。

接着,对从属节点51b、51c进行说明。从属节点51b、51c具有:第2 基准信号生成部71(对应于实施方式1的第2基准信号生成部31)、第2运 算部72(对应于实施方式1的第2运算部32)、系统开销计数部74(对应于 实施方式1的系统开销计数部34)、计数值获取部75(对应于实施方式1的 计数值获取部35)、同步判断部76(对应于实施方式1的同步判断部36)、 同步修正部77(对应于实施方式1的同步修正部37)、存储部78(对应于实 施方式1的存储部38)、接收完成通知部79以及帧接收部80。此外, CPU43内置有第2基准信号生成部71。由于从属节点51b、51c的结构相同, 因此在以下说明中,利用从属节点51b来进行说明,省略从属节点51c的说 明。

与实施方式1的处理器模块11b的主要不同点在于,同步判断部76与实 施方式1的同步判断部36不同,并且添加了接收完成通知部79以及帧接收 部80。其中,由于其它构成要素与实施方式1实质相等,因此此处省略对其 进行说明。以下,对包含通信路径52的传输延迟时间在内的从属节点51b的 同步修正处理进行说明。

接收完成通知部79从主控节点51a接收上述传输延迟时间请求帧,并根 据该传输延迟时间请求帧将接收完成帧发送至主控节点51a。

帧接收部80接收主控节点51a所发送的上述传输延迟时间通知帧,并将 该帧所包含的往返传输延迟时间(值)退避至上述存储器45等。由此,从属 节点51b从主控节点51a获取到主控节点51a与从属节点51b之间的往返传输 延迟时间。

从主控节点51a获得往返传输延迟时间的从属节点51b接收同步化帧, 在第2运算部72产生中断。接收到中断的第2运算部72启动后述的同步修 正处理。此外,在本实施方式中,即使在未获得往返传输延迟时间的情况下 接收到同步化帧,也当然可以将往返传输延迟时间设为零(0)来启动同步修 正处理。另外,若将接收到同步化帧之后、向第2运算部72发送中断的速度 考虑在内,则虽未图示,但优选使用FPGA44等硬件逻辑来作为同步化帧的 接收单元。

另外,系统开销计数部74测量出以上述同步化帧的接收为起点、直到执 行同步修正处理为止的系统开销值。具体而言,系统开销计数部74起到接收 到同步化帧后进行重启的硬件性的计数器(定时器)的功能。

计数值获取部75根据同步化帧的接收获取在实际执行同步修正处理的开 始时刻的第2基准信号生成部71的计数值以及系统开销计数部74的计数 值。

同步判断部76将上述往返传输延迟时间除以2,来求出通信路径52的 单程的传输延迟时间,并进一步求出将该单程的传输延迟时间与上述系统开 销计数部74的计数值经过时间换算后得到的值相加而得到的综合延迟时间。 然后,同步判断部76将所求出的综合延迟时间、与计数值获取部75所获取 到的第2基准信号生成部71的计数值经过时间换算后得到的值进行比较。当 其比较结果为两者相等时,同步判断部76判断第1基准信号与第2基准信号 同步,在两者不相等时,同步判断部76判断第1基准信号与第2基准信号不 同步。此处,所谓同步意味着第1基准信号生成部61的计数值与第2基准信 号生成部71的计数值相等。

此外,同步判断部76当然也可以与实施方式1的同步判断部36相同, 通过将各计数器的计数值换算成时间来进行比较,从而判断同步/不同步。

实施方式2中,若每隔修正处理间隔,由同步判断部76判断为第1基准 信号与第2基准信号同步,则同步修正部77将基准值设定于第2基准信号生 成部71。另外,在判断为第1基准信号与第2基准信号不同步的情况下,求 出将第2基准信号生成部71的计数值与综合延迟时间值之间的差分相抵消的 值。具体而言,同步修正部77将由计数值获取部75所获取到的第2基准信 号生成部71的计数值减去综合延迟时间值来求出同步修正值。接着,同步修 正部77从基准值减去所求出的同步修正值,并将相减后得到的值作为新的基 准值设定于第2基准信号生成部71。该新的基准值是相对于同步判断部76判 断为同步时设定于第2基准信号生成部71的基准值(默认的基准值)而暂时 设定的(临时的基准值),以用于修正第2基准信号生成部71的定时值。

此外,本实施方式当然也可以在将默认的基准值设定于第2基准信号生 成部71,且同步得到保持的情况下,之后不改写默认的基准值。

由此,在本实施方式中,能够将经由通信路径52来通知同步基准信号 (同步化帧)时的传输延迟时间的影响也考虑在内地进行同步修正处理。也 就是说,实施方式2中,能够对含有节点间的传输延迟时间与从属节点51b、 51c的系统开销的计数值进行修正,从而能够实现高精度的节点间的同步。

(实施方式2中的同步修正处理例)

图8~图10是用于说明实施方式2中的同步修正处理例的时序图,是主 控节点51a与从属节点51b之间的计数值的同步例。此外,实施方式2中的基 准值(处理周期)与实施方式1相同,设为1000μs,该基准值能够利用编译 装置55来适当地改变。

图8中,主控节点51a的第1基准信号生成部61进行计数。若该计数值 在图8的(1)时刻达到基准值,则输出第1基准信号。然后,第1运算部62 根据该第1基准信号来执行规定的处理。

另外,从属节点51b的第2基准信号生成部71进行计数。若该计数值在 图8的(2)时刻达到基准值,则输出第2基准信号。然后,第2运算部72 根据该第2基准信号来执行规定的处理。由此,在主控节点51a及从属节点 51b中,分别根据独立的第1基准信号及第2基准信号来执行规定的处理。

另外,主处理器模块51a中,间隔计数部64进行计数,在计数值达到修 正处理间隔值的情况下(图8的(3)),生成修正处理开始信号。根据所述 修正处理开始信号来开始主控节点51a中的同步修正处理。

在同步修正处理开始之后,主控节点51a的传输延迟时间通知部65为了 计算出传输延迟时间而发送传输延迟时间请求帧(图8的(4))。若从属节 点51b的接收完成通知部79从主控节点51a接收到传输延迟时间请求帧,则 根据该传输延迟时间请求帧将接收完成帧发送至主控节点51a(图8的 (5))。

接着,主控节点51a的传输延迟时间通知部65根据接收完成帧,计算出 主控节点51a与从属节点51b之间的往返传输延迟时间,发送含有计算出的 往返传输延迟时间(400μs)在内的传输延迟时间通知帧(图8的(6))。 若从属节点51b的帧接收部80接收到传输延迟时间通知帧,则将该帧所包含 的往返传输延迟时间(值)退避至存储器45等(图8的(7))。

在同步修正处理开始之后,主控节点51a的同步化帧通知部66将同步化 帧作为中断信号发送至从属节点51b(图8的(8))。然后,从属节点51b 经过通信路径52的单程的传输延迟时间(200μs)在图8的(9)的时刻接收 到同步化帧,利用从属节点51b中的软件来启动同步修正处理。另外,伴随 着同步化帧的接收,系统开销计数部74的由硬件构成的计数器被清零并重启 (图8的(10))。

接着,在同步修正处理的准备完成的情况下,在图8的(11)时刻,计 数值获取部75从第2基准信号生成部71获得计数值(图8的(12)),并 从系统开销计数部74获取计数值(图8的(13))。

接着,计数值获取部75参照第2基准信号生成部71的计数值来进行时 间换算,从而得到400μs。接着,同步判断部76从往返传输延迟时间 (400μs)求出单程的传输延迟时间200μs,将所求出的传输延迟时间与系统 开销计数部74的计数值经过时间换算后得到的200μs相加,从而求得综合延 迟时间400μs。然后,同步判断部76将综合延迟时间400μs与计数值获取部 75所获取到的第2基准信号生成部71的计数值经过时间换算后得到的400μs 进行比较,由于两者相等,因此判断为第1基准信号与第2基准信号同步。

由于同步判断部76判断为第1基准信号与第2基准信号同步,因此同步 修正部77按通常那样,将基准值1000μs设定于第2基准信号生成部71(第2 基准信号生成部71在设定时刻不进行重启)。然后,由于在图8的(14)时 刻计数值达到基准值1000μs,因此第2基准信号生成部71重启。

图9示出了从属节点51b的计数器比主控节点51a的计数器延迟3μs的 情况。

图9中,在主控节点51a的间隔计数部64的计数值达到修正处理间隔 值,并开始同步修正处理之后,到从属节点51b的帧接收部80将传输延迟时 间通知帧所包含的往返传输延迟时间(值)退避至存储器45等为止的处理与 图8的处理实质相同,因此此处省略说明。

在同步修正处理开始之后,在图9(1)时刻,主控节点51a的同步化帧 通知部66将同步化帧作为中断信号发送至从属节点51b。然后,从属节点 51b经过通信路径52的单程的传输延迟时间(200μs)在图9的(2)的时刻 接收到同步化帧,利用从属节点51b中的软件来启动同步修正处理。另外, 伴随着同步化帧的接收,系统开销计数部74的计数器被清零并重启(图9的 (3))。

接着,在同步修正处理的准备完成的情况下,在图9的(4)时刻,计数 值获取部75从第2基准信号生成部71获得计数值(图9的(5)),并从系 统开销计数部74获取计数值(图9的(6))。

接着,计数值获取部75参照第2基准信号生成部71的计数值来进行时 间换算,从而得到397μs。接着,同步判断部76从往返传输延迟时间 (400μs)求出单程的传输延迟时间200μs,将所求出的传输延迟时间与系统 开销计数部74的计数值经过时间换算后得到的200μs相加,从而求得综合延 迟时间400μs。然后,同步判断部76将综合延迟时间400μs与计数值获取部 75所获取到的第2基准信号生成部71的计数值经过时间换算后得到的397μs 进行比较,由于两者不等,因此判断为第1基准信号与第2基准信号不同 步。

由于同步判断部76判断第1基准信号与第2基准信号不同步,因此同步 修正部77将临时的基准值设定于第2基准信号生成部71。具体而言,同步修 正部77利用“基准值(处理周期)-(综合延迟时间-第2基准信号生成部 71的计数值)”这一式子求出第2基准信号生成部71的重启值(复位值), 并将所求出的计数值作为临时的基准值来设定于第2基准信号生成部71。该 示例的情况下,临时的基准值为1000μs-(400μs-397μs)=997μs。然后, 由于在图9的(7)时刻计数值达到临时的基准值997μs,因此第2基准信号 生成部71重启。也就是说,综合延迟时间-第2基准信号生成部71的计数 值后得到的值为同步修正值。

图10示出了从属节点51b的计数器比主控节点51a的计数器提前3μs的 情况。

图10中,在主控节点51a的间隔计数部64的计数值达到修正处理间隔 值,并开始同步修正处理之后,到从属节点51b的帧接收部80将传输延迟时 间通知帧所包含的往返传输延迟时间(值)退避至存储器45等为止的处理与 图8、图9的处理实质相同,因此此处省略说明。

在同步修正处理开始之后,在图10(1)时刻,主控节点51a的同步化 帧通知部66将同步化帧作为中断信号发送至从属节点51b。然后,从属节点 51b经过通信路径52的单程的传输延迟时间(200μs)在图10的(2)的时刻 接收到同步化帧,利用从属节点51b中的软件来启动同步修正处理。另外, 伴随着同步化帧的接收,系统开销计数部74的计数器被清零并重启(图10 的(3))。

接着,在同步修正处理的准备完成的情况下,在图10的(4)时刻,计 数值获取部75从第2基准信号生成部71获得计数值(图10的(5)),并 从系统开销计数部74获取计数值(图10的(6))。

接着,计数值获取部75参照第2基准信号生成部71的计数值来进行时 间换算,从而得到403μs。接着,同步判断部76从往返传输延迟时间 (400μs)求出单程的传输延迟时间200μs,并将所求出的单程的传输延迟时 间与系统开销计数部74的计数值经过时间换算后得到的200μs相加,从而得 到综合延迟时间400μs。然后,同步判断部76将综合延迟时间400μs与计数 值获取部75所获取到的第2基准信号生成部71的计数值经过时间换算后得 到的403μs进行比较,由于两者不等,因此判断为第1基准信号与第2基准信 号不同步。

由于同步判断部76判断第1基准信号与第2基准信号不同步,因此同步 修正部77将临时的基准值设定于第2基准信号生成部71。该示例的情况下, 临时的基准值为1000μs-(400μs-403μs)=1003μs。然后,由于在图10的 (7)时刻计数值到达临时的基准值1003μs,因此第2基准信号生成部71重 启。

此外,在图9及图10的示例的情况下,在第3循环,主控侧的计数器与 从属侧的计数器相同步,因此之后,同步修正部77将原先的基准值1000μs 设定于第2基准信号生成部71(第2基准信号生成部71在设定时刻不进行重 启)。然后,第2基准信号生成部71在计数值达到基准值1000μs时重启。也 就是说,实施方式2中,相对于第3循环,能够在与下一个第4循环的主控 侧的计数器的重启大致相同的时刻使从属侧的计数器重启,因此能够使主控 侧的计数器的值与从属侧的计数器的值匹配成大致相等的值。

此外,同步修正处理中,与实施方式1相同,包含计数值获取部75、同 步判断部76、同步修正部77的程序的处理。

另外,以从属节点51b的第2基准信号生成部71内置于CPU43为前提 进行了说明,但并不局限于此。也就是说,第2基准信号生成部71也可以与 CPU43分开实现。但是,由于第2基准信号生成部71内置于CPU43,因此无 法利用在CPU43的外部生成的规定信号来从硬件上使第2基准信号生成部71 复位。换言之,第2基准信号生成部71是存在有程序来控制其动作的计数 器。因此,本实施方式需要利用程序来执行第2基准信号生成部71的复位处 理(重启处理),其系统开销与同步误差有关。由此,本实施方式中,需要 测量系统开销的结构(实施方式1中也相同)。

另外,实施方式2中,同步修正处理是通过同步化帧的接收来进行启动 的中断处理。

另外,在上述说明中,从属节点51b例如从主控节点51a获得并保持往 返传输延迟时间,并在同步修正处理时有效利用所保持的往返传输延迟时 间。此外,还有如下方法:主控节点51a将往返传输延迟时间包含于同步化 帧内并发送至从属节点51b,接收到该同步化帧的从属节点51b使用同步化帧 所包含的往返传输时间。由此,主控节点51a能够根据状况适当地向从属节 点51b通知往返传输延迟时间,因此在从属节点51b中能够适时地使用与状 况相对应的往返传输延迟时间。

另外,关于传输延迟时间通知部65,对将往返传输延迟时间通知给从属 节点51b的情况进行了说明,但并不局限于此。例如,传输延迟时间通知部 65也可以将计算出的往返传输延迟时间除以2来求出单程的传输延迟时间, 并将所求出的单程的传输延迟时间通知给从属节点51b。该情况下,从属节点 51b的同步判断部76直接使用获得到的单程的传输延迟时间,来求出综合延 迟时间即可。

如上述所说明的那样,实施方式2中,能够将通信路径52所产生的信号 传输延迟时间包含在内地使第1基准信号与第2基准信号相同步。

(关于同步修正处理中的传输延迟时间的通知步骤)

接着,对上述同步修正处理中的传输延迟时间的通知步骤进行说明。图 11是用于说明实施方式2中的传输延迟时间的通知步骤的一个示例的图。此 外,在图11的示例中,具有上述主控节点51a、以及从属节点51b、51c,且 各节点51经由通信路径52以能够收发信号的状态相连接。另外,在以下说 明中,示出了主控节点51a获取因各节点51之间的通信路径52而产生的信号 的传输延迟时间的示例。

另外,图11所示的四方形表示帧,各节点51的线上方的四方形表示发 送帧,线下方的四方形表示接收帧。另外,图11所示的帧具有:传输延迟时 间请求帧81(表示为图11中的“REQ*”(*例如表示各从属节点的标识符 (例如为b、c)(以下相同))、接收完成帧82(图11中的“REC *”)、传输延迟时间通知帧83(图11中的“SET*”)、以及对于传输延 迟时间通知帧83的应答帧84(图11中的“ANS*”)。

图11的示例中,主控节点51a根据主控节点同步基准将针对从属节点 51b的传输延迟时间请求帧81b(REQb)广播发送至通信路径52上。此时, 传输延迟时间请求帧81b中包含有表示为针对从属节点51b的传输延迟时间 请求的内容的信息(对象节点信息)。

所广播发送的传输延迟时间请求帧81b经由通信路径52,在规定的传输 延迟时间之后,被各从属节点51b、51c所接收。此外,在图11的示例中, 从属节点51b根据主控节点同步基准在延迟时间D1接收传输延迟时间请求帧 81b,从属节点51c根据主控节点同步基准在延迟时间D2接收传输延迟时间 请求帧81b。

此处,各从属节点51b、51c对传输延迟时间请求帧81b所包含的上述对 象节点信息进行确认。由此,由于传输延迟时间请求帧81b是针对从属节点 51b的请求,因此仅从属节点51b向主控节点51a广播发送接收完成帧82b (RECb)。此时,接收完成帧82b中包含有表示是针对主控节点51a的接收 完成帧的内容的信息(对象节点信息)。

所发送的接收完成帧82b经由通信路径52,被主控节点51a以及从属节 点51c所接收。接着,主控节点51a及从属节点51c对接收完成帧82b所包含 的上述对象节点信息进行确认。如上所述,接收完成帧82b是针对主控节点 51a的帧。因此,主控节点51a基于从按照主控节点同步基准而发送的传输延 迟时间请求帧81b的发送、到接收到该接收完成帧82b为止的时间信息,来 设定针对从属节点51b的传输延迟时间。此外,此处所设定的传输延迟时间 可以是规定的信号经由通信路径52在主控节点51a与从属节点51b之间往返 的往返传输延迟时间,也可以是单程的传输延迟时间。

另外,主控节点51a生成用于将所设定的传输延迟时间通知给从属节点 51b的传输延迟时间通知帧83b(SETb),并按照主控节点同步基准广播发送 所生成的传输延迟时间通知帧83b。此外,传输延迟时间通知帧83b中包含上 述对象节点信息。

所广播发送的传输延迟时间通知帧83b与上述传输延迟时间请求帧81b 相同,经由通信路径52,在规定的传输延迟时间后,被各从属节点51b、51c 所接收。

此时,从属节点51b根据所接收到的传输延迟时间通知帧83b的对象节 点信息来判断为是针对本节点的信息,从而进行将帧内包含的传输延迟时 间、与上述系统开销时间等包含在内的实施方式2的同步修正处理。另外, 主控节点51b生成针对传输延迟时间通知帧83b的应答帧84b(ANSb),并 对所生成的应答帧84b进行广播发送。此时,应答帧84b中包含有表示是针 对主控节点51a的帧的内容的信息(对象节点信息)以及表示同步修正处理 已完成的内容的信息等。

所发送的应答帧84b与上述接收完成帧82b相同,经由通信路径52,被 主控节点51a以及从属节点51c所接收。接着,主控节点51a及从属节点51c 对应答帧84b所包含的上述对象节点信息进行确认。如上所述,应答帧84b 是针对主控节点51a的帧。因此,主控节点51a能够通过来自从属节点51b的 应答帧84b来把握同步修正处理已完成这一情况。此外,从属节点51c虽然 接收到传输延迟时间请求帧81b(REQb)、接收完成帧82b(RECb)、传输 延迟时间通知帧83b(SETb)、应答帧84b(ANSb),但由于均不是针对本 节点的帧,因此放弃所接收到的帧。

到此为止的内容均是向从属节点51b的传输延迟时间通知步骤。因此主 控节点51a同样地对从属节点51c通知传输延迟时间。

具体而言,图11的示例中,主控节点51a根据主控节点同步基准将针对 从属节点51c的传输延迟时间请求帧81c(REQc)广播发送至通信路径52 上。所广播发送的传输延迟时间请求帧81c如上述那样经由通信路径52,在 规定的传输延迟时间(D1、D2),被各从属节点51b、51c所接收。

由于传输延迟时间请求帧81c是针对从属节点51c的请求,因此仅从属 节点51c向主控节点51a广播发送接收完成帧82c(RECc)。所发送的接收 完成帧82c经由通信路径52,被主控节点51a以及从属节点51c所接收。接 收完成帧82c是针对主控节点51a的帧。因此,主控节点51a基于从按照主控 节点同步基准而发送的传输延迟时间请求帧81c的发送、到接收到该接收完 成帧82c为止的时间信息,来设定针对从属节点51c的传输延迟时间。此外, 此处所设定的传输延迟时间可以是规定的信号经由通信路径52在主控节点 51a与从属节点51c之间往返的往返传输延迟时间,也可以是单程的传输延迟 时间。

另外,主控节点51a生成用于将所设定的传输延迟时间通知给从属节点 51c的传输延迟时间通知帧83c(SETc),并按照主控节点同步基准广播发送 所生成的传输延迟时间通知帧83c。所广播发送的传输延迟时间请求帧83c与 上述传输延迟时间请求帧81c相同,经由通信路径52,在规定的传输延迟时 间(D1、D2),被各从属节点51b、51c所接收。

此时,从属节点51b如上述那样,根据所接收到的传输延迟时间通知帧 83c的对象节点信息来判断为是针对本节点的信息,进行将帧内包含的传输延 迟时间、与上述系统开销时间等包含在内的实施方式2的同步修正处理。另 外,从属节点51c生成针对传输延迟时间通知帧83c的应答帧84c (ANSc),并对所生成的应答帧84c进行广播发送。此时,应答帧84c中包 含有表示是针对主控节点51a的帧的内容的信息(对象节点信息)以及表示 同步修正处理已完成的内容的信息等。

所发送的应答帧84c与上述接收完成帧82c相同,经由通信路径52,被 主控节点51a以及从属节点51c所接收。接着,主控节点51a及从属节点51b 对应答帧84c所包含的上述对象节点信息进行确认。如上所述,应答帧84c是 针对主控节点51a的帧。因此,主控节点51a能够通过来自从属节点51c的应 答帧84c来把握同步修正处理已完成这一情况。此外,从属节点51b虽然接 收到传输延迟时间请求帧81c(REQc)、接收完成帧82c(RECc)、传输延 迟时间通知帧83c(SETc)、应答帧84c(ANSc),但由于均不是针对本节 点的帧,因此放弃所接收到的帧。

实施方式2中,通过对通信路径52的各从属节点51b、51c依次实施上 述处理,从而能通知传输延迟时间。

此外,传输延迟时间的通知步骤并不局限于上述步骤。例如,可以在上 述各节点内部设置发送计数器,并利用该发送计数器控制为在不同的时刻发 送应答帧84,以使得通信路径52上、主控节点51a上不会由于例如广播发送 传输延迟时间请求帧81,且接收到该传输延迟时间请求帧81的从属节点 51b、51c发送应答帧84而产生拥堵。

在上述实施方式2中,在例如具有以太网(注册商标)那样的星型拓扑 的系统中,对于利用时分复用传输方式的公用存储器网络,能够使各节点的 计数器同步,在整个装置中进行与控制的时刻相匹配的同步控制。另外,在 实施方式2中,进行同步的计数器能够利用微机内部的计数器,或者利用基 于FPGA等硬件的计数器来构成。因此,在实施方式2中,通过利用例如 FPGA等硬件来构成例如在进行收发的帧的接收时刻与主控节点51a同步的计 数器、以及测量微机的处理时间的计数器,并利用微机来运算其计数值,从 而能修正处理误差。

此处,在上述示例中,作为节点同步系统50的一个示例,对主控-从属 节点间的节点同步进行了说明,但在本实施方式中,并不局限于此,也能应 用于例如保护继电器等中的采样同步技术。

(网络传输系统:大致结构例)

此处,在上述实施方式2中,存在例如利用IEEE802.3u(1 00BASE-TX)或IEEE802.3ab(1000BASE- T)等那样的HUB(集线器)等中继装置来将各节点间相连的情况。图12 是表示包含利用了实施方式2中的主控节点51a及从属节点51b、51c的节点 同步系统50在内的网络传输系统的大致结构的一个示例的图。图12所示的 网络传输系统90作为一个示例具有:上述多个节点51(图12的示例中为节 点51a~51c)、作为一个或多个中继装置的HUB91(图12的示例中为 HUB91a~91e)。此外,节点、中继装置的数量、种类、连接方法并不局限于 此。

图12的示例中,将图7的主控节点,即节点51a设为节点A(主控 站),将图7的从属节点,即节点51b、节点51c设为节点B、节点C(从属 站)。另外,如图12所示,网络传输系统90的通信路径例如是在主控节点 51a与从属节点51b之间具有中继装置的星型。此外,中继装置作为一个示例 使用HUB,但本实施方式并不局限于此,例如也可以使用路由器、中继器、 光转换器等。

另外,主控节点51a及从属节点51b、51c例如是可编程控制器(控制装 置或也称为PLC(Programmable Logic Controller:可编程逻辑控制器),网 络传输系统90的通信路径是对这些可编程控制器彼此间的数据进行交换的数 据交换总线。连接至该数据交换总线的设备例如除了上述可编程控制器之 外,还有PC、服务器、I/O模块、驱动装置(例如是逆变器、伺服机构等) 等。

图12所示的网络传输系统90连接至与节点51a及节点51c相同的 HUB91a,节点51b经由5级的HUB(中继装置)与节点51a及节点51c相 连。

此处,一般的以太网的HUB中,采用被称为存储转发的接口方式。该情 况下,发送来的帧全部存储在HUB内的接收缓存中,在进行HUB内部处理 (例如异常判断或发送目的地判断等)之后进行发送。

(节点同步方法的顺序例)

图13是表示节点同步方法的大致顺序的一个示例的图。图13的示例 中,为了说明方便,对使用了主控节点51a与从属节点51b的同步进行了说 明,但在本实施方式中并不局限于此,能够使多个从属节点与一个主控节点 同步。

在图13的节点同步处理中,首先,主控节点51a的第1基准信号生成部 61生成第1基准信号(S11),从属节点51b的第2基准信号生成部71生成 第2基准信号(S12)。另外,该处理以硬件方式周期性地进行工作。

另外,主控节点51a的间隔计数部64对修正处理间隔进行计数,在计数 值达到修正处理间隔值的情况下,生成修正处理开始信号,开始同步修正处 理(S13)。

在间隔计数部64的计数值达到修正处理间隔值的情况下,开始主控节点 51a中的同步修正处理(S13),主控节点51a的传输延迟时间通知部65为了 计算出传输延迟时间而发送传输延迟时间请求帧(S14)。此外,传输延迟时 间请求帧是仅改变同步化帧所包含的规定部分的数据后得到的帧,换言之也 能称为同步化帧,此处为了方便,以“传输延迟时间请求帧”来进行说明。

若从属节点51b的接收完成通知部79接收到传输延迟时间请求帧,则生 成接收完成通知,向主控节点51a进行通知(S15)。

主控节点51a的传输延迟时间通知部65在接收到接收完成通知的情况 下,计算出例如往返传输延迟时间(S16),并生成包含了所计算出的往返传 输延迟时间等的传输延迟时间通知帧(S17),然后将所生成的传输延迟时间 通知帧经由通信路径52发送至从属节点51b(S18)。

若从属节点51b的帧接收部80接收到传输延迟时间通知帧,则将该帧所 包含的往返传输延迟时间(值)退避至存储器45等(S19)。然后,主控节 点51a的同步化帧通知部66与第1基准信号同步地将同步化帧作为中断信号 发送至从属节点51b(S20)。从属节点51b在接收到同步化帧的情况下 (S21),启动基于软件的同步修正处理(S22),并使系统开销计数部74重 启(S23)。然后,计数值获取部75获取第2基准信号生成部71与系统开销 计数部74的两个计数值(S24),同步判断部76基于所述两个计数值来进行 同步判断(S25),在判断为不同步的情况下,计算出综合延迟时间 (S26)。综合延迟时间是例如传输延迟时间与系统开销值相加后得到的值, 但并不局限于此。另外,从属节点51b的同步修正部77利用所计算出的综合 延迟时间来进行同步修正(S27)。此外,在图13所示的处理中,从属节点 51b也可以将表示同步修正已完成这一情况的应答帧发送至主控节点51a。另 外,主控节点51a也可通过上述步骤对与通信路径52相连的从属节点51b以 外的从属节点进行节点同步处理。

此处,本实施方式中,生成用于使计算机起到上述节点51所具有的各单 元的作用的程序(节点同步程序),通过将所生成的程序安装于计算机等, 从而实现上述各节点同步处理。

如上所述,根据本实施方式,能够在抑制处理负荷的同时,高精度地使 规定的信号同步。由此,例如能实现各节点51的数据交换周期的稳定化。另 外,根据本实施方式,在具有例如以太网那样的星型拓扑的系统中,对于利 用时分复用传输方式的公用存储器网络,能够使各节点51的定时器同步,实 现传输的高效化、数据交换的高效化、数据交换周期的稳定化等。

此外,本实施方式能够适用于例如钢铁工厂等大规模设备等中利用多个 操作来进行一连串的动作时的同步方法,此外,还能广泛适用于整个千兆以 太网中的各装置间的同步方式。

以上,参照附图对本发明的优选实施方式进行说明,本发明并不局限于 所述实施方式。本领域的技术人员在权利要求的范围所记载的范畴内,能够 想到各种变形例或修正例,其当然也属于本发明的技术范围内。

此外,本说明书的信号同步方法以及节点同步方法的各步骤并不一定要 沿着顺序图所记载的次序来按时间序列进行处理,也可以包含并行处理或利 用子程序的处理。

工业上的实用性

本发明涉及用于使规定的信号同步的信号同步系统、节点同步系统、信 号同步方法以及节点同步方法。

标号说明

10 信号同步系统

11 处理器模块

12 传输总线

13、53I/O (输入输出)模块

14、54 外部设备

15、55 编译装置

21、61 第1基准信号生成部

22、62 第1运算部

23、38、63、78 存储部

31、71 第2基准信号生成部

32、72 第2运算部

34、74 系统开销计数部

35、75 计数值获取部

36、76 同步判断部

37、77 同步修正部

41 输入部

42 输出部

43 CPU

44 FPGA

45 存储器

46 外部接口

50 节点同步系统

51 节点

52 通信路径

65 传输延迟时间通知部

66 同步化帧通知部

79 接收完成通知部

80 帧接收部

81 传输延迟时间请求帧

82 接收完成帧

83 传输延迟时间通知帧

84 应答帧

90 网络传输系统

91 HUB(中继装置)

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号