CN109933418B - 一种时间戳同步方法、电子设备及异构设备 - Google Patents
一种时间戳同步方法、电子设备及异构设备 Download PDFInfo
- Publication number
- CN109933418B CN109933418B CN201910227902.1A CN201910227902A CN109933418B CN 109933418 B CN109933418 B CN 109933418B CN 201910227902 A CN201910227902 A CN 201910227902A CN 109933418 B CN109933418 B CN 109933418B
- Authority
- CN
- China
- Prior art keywords
- processor
- time
- data
- task data
- task
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Landscapes
- Multi Processors (AREA)
- Hardware Redundancy (AREA)
Abstract
本申请公开了一种时间戳同步方法、电子设备及异构设备,其中,方法包括:第一处理器响应于第二处理器的同步指令,记录所述第一处理器当前的第一时刻,其中,所述第一处理器与所述第二处理器之间通过硬件传输线路传输数据,所述硬件传输线路的传输速率高于阈值;所述第一处理器获得所述第二处理器发送的第二时刻,所述第二时刻为所述第二处理器在触发所述同步指令时记录的时刻;所述第一处理器在接收到所述第二处理器传输的任务数据后,基于所述第一时刻和所述第二时刻以及所述任务数据中的数据时刻,对所述任务数据进行数据处理。
Description
技术领域
本申请涉及异构计算技术领域,尤其涉及一种时间戳同步方法、电子设备及异构设备。
背景技术
在异构设备中,协处理器将数据发送到主处理器中进行数据处理。
但是,由于协处理器与主处理器处于不同的***,因此,两者的时间戳之间存在差异,导致主处理器在进行数据处理时存在不准确甚至无法进行的情况。
发明内容
有鉴于此,本申请提供一种时间戳同步方法、电子设备及异构设备,用以解决现有技术中主协处理器存在数据处理不准确的技术问题。
本申请提供了一种时间戳同步方法,包括:
第一处理器响应于第二处理器的同步指令,记录所述第一处理器当前的第一时刻,其中,所述第一处理器与所述第二处理器之间通过硬件传输线路传输数据,所述硬件传输线路的传输速率高于阈值;
所述第一处理器获得所述第二处理器发送的第二时刻,所述第二时刻为所述第二处理器在触发所述同步指令时记录的时刻;
所述第一处理器在接收到所述第二处理器传输的任务数据后,基于所述第一时刻和所述第二时刻以及所述任务数据中的数据时刻,对所述任务数据进行数据处理。
上述方法,优选地,所述第一处理器基于所述第一时刻和所述第二时刻以及所述任务数据中的数据时刻,对所述任务数据进行数据处理,包括:
所述第一处理器基于所述第一时刻和所述第二时刻,确定所述第一处理器与所述第二处理器针对时间戳的对应关系;
所述第一处理器基于所述时间戳的对应关系以及所述任务数据中的数据时刻,对所述任务数据进行数据处理。
上述方法,优选地,所述第一处理器基于所述时间戳的对应关系以及所述任务数据中的数据时刻,对所述任务数据进行数据处理,包括:
所述第一处理器基于所述时间戳的对应关系,对所述任务数据中所述第二处理器时间戳对应的时刻转换为所述第一处理器时间戳对应的时刻;
所述第一处理器对经过时间戳转换的任务数据进行数据处理。
上述方法,优选地,所述时间戳的对应关系包括:所述第一时刻和所述第二时刻之间的时间偏差。
上述方法,优选地,所述同步指令为处理器输入输出中断指令。
本申请还提供了一种电子设备,包括:
存储器,用于存储应用程序及所述应用程序运行所产生的数据;
处理器,用于响应于其他设备的处理器的同步指令,记录所述电子设备的处理器当前的第一时刻,其中,所述电子设备的处理器与所述其他设备的处理器之间通过硬件传输线路传输数据,所述硬件传输线路的传输速率高于阈值;
其中,所述电子设备的处理器还用于获得所述其他设备的处理器发送的第二时刻,所述第二时刻为所述其他设备的处理器在触发所述同步指令时记录的时刻;并在接收到所述其他设备的处理器传输的任务数据后,基于所述第一时刻和所述第二时刻以及所述任务数据中的数据时刻,对所述任务数据进行数据处理。
本申请还提供了另一种时间戳同步方法,包括:
第二处理器向第一处理器触发同步指令并记录当前的第二时刻,所述第一处理器与所述第二处理器之间通过硬件传输线路传输数据,所述硬件传输线路的传输速率高于阈值,其中,所述第一处理器响应于第二处理器的同步指令,记录所述第一处理器当前的第一时刻;
所述第二处理器向所述第一处理器发送所述第二时刻,使得所述第一处理器在接收到所述第二处理器传输的任务数据后,基于所述第一时刻和所述第二时刻以及所述任务数据中的数据时刻,对所述任务数据进行数据处理。
上述方法,优选地,所述第二处理器传输任务数据,包括:
所述第二处理器对待传输的任务数据标记当前的数据时刻之后,将所述任务数据传输到所述第一处理器,以使得所述第一处理器基于所述第一时刻和所述第二时刻,确定所述第一处理器与所述第二处理器针对时间戳的对应关系,并基于所述时间戳的对应关系以及所述任务数据中的数据时刻,对所述任务数据进行数据处理。
本申请还提供了另一种电子设备,包括:
存储器,用于存储应用程序及所述应用程序运行所产生的数据;
处理器,用于向其他设备的处理器触发同步指令并记录当前的第二时刻,所述其他设备的处理器与所述电子设备的处理器之间通过硬件传输线路传输数据,所述硬件传输线路的传输速率高于阈值,其中,所述其他设备的处理器响应于所述电子设备的处理器的同步指令,记录所述其他设备的处理器当前的第一时刻;
其中,所述电子设备的处理器还用于:向所述其他设备的处理器发送所述第二时刻,使得所述其他设备的处理器在接收到所述电子设备的处理器传输的任务数据后,基于所述第一时刻和所述第二时刻以及所述任务数据中的数据时刻,对所述任务数据进行数据处理。
本申请还提供了一种异构设备,包括第一处理器和第二处理器,其中:
所述第二处理器向所述第一处理器触发同步指令并记录当前的第二时刻;
所述第一处理器响应于所述第二处理器的同步指令,记录所述第一处理器当前的第一时刻,其中,所述第一处理器与所述第二处理器之间通过硬件传输线路传输数据,所述硬件传输线路的传输速率高于阈值;
所述第二处理器向所述第一处理器发送所述第二时刻;
所述第一处理器获得所述第二处理器发送的第二时刻;
所述第一处理器在接收到所述第二处理器传输的任务数据后,基于所述第一时刻和所述第二时刻以及所述任务数据中的数据时刻,对所述任务数据进行数据处理。
从上述技术方案可以看出,本申请公开的一种时间戳同步方法、电子设备及异构设备,在主协处理器之间通过快速传输可忽略传输延迟的同步指令同时记录各自的时刻,由此基于两个处理器在同一时间所记录的两个时刻之间的对应关系及任务数据的数据时刻,对任务数据进行处理。可见,本申请中能够对异构设备中的主协处理器进行时间戳同步,从而实现准确的数据处理。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本申请实施例一提供的一种时间戳同步方法的流程图;
图2为本申请实施例的应用示例图;
图3为本申请实施例一的部分流程图;
图4为本申请实施例二提供的一种电子设备的结构示意图;
图5为本申请实施例三提供的一种时间戳同步方法的流程图;
图6为本申请实施例四提供的一种电子设备的结构示意图;
图7为本申请实施例五提供的一种异构设备的结构示意图;
图8为本申请实施例的另一应用示例图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
参考图1,为本申请实施例一的一种时间戳同步方法的实现流程图,该方法适用于异构设备中的第一处理器,即主处理器。在异构设备中还具有第二处理器,即协处理器。本实施例中的方法主要用于在第一处理器中同步第二处理器的时间戳。
在本实施例中,该方法可以包括以下步骤:
步骤101:响应于第二处理器的同步指令,记录第一处理器当前的第一时刻。
其中,第一处理器与第二处理器之间通过硬件传输线路传输数据,如硬件电路等,且硬件传输线路的传输速率高于阈值,也就是说,第二处理器的同步指令传输到第一处理器的延迟非常小,可忽略不计。
需要说明的是,第二处理器触发同步指令、传输同步指令到第一处理器、第一处理器对同步指令进行响应等等,这些所引起的延迟基于本实施例中的硬件传输线路是非常小的,因此,在本实施例中,第一处理器所记录的当前的第一时刻可以认为与第二处理器触发同步指令时的时刻是同一时刻。
步骤102:获得第二处理器发送的第二时刻。
其中,第二时刻为第二处理器在触发同步指令时记录的时刻,也就是说,第二处理器在触发同步指令的同时记录第二时刻,而第一处理器对第二处理器触发的同步指令进行响应,记录第一时刻,此时,第一时刻和第二时刻可以认为是同一时刻上第一处理器和第二处理器分别记录的时刻。
需要说明的是,本实施例中第二处理器可以为一个或者多个,因此,在第一处理器中所获得的第二时刻可以是一个或者多个,相应的,第一处理器所记录的第一时刻也可以是一个或多个,其中,第一处理器中所记录的第一时刻分别有一个第二时刻与其相对应,如图2中所示,也就是说,第一处理器对于每个发送同步指令的第二处理器,均会记录一个第一时刻,相应与该第二处理器发送的第二时刻相对于。
步骤103:接收到第二处理器传输的任务数据。
其中,第二处理器传输的任务数据可以是在第一处理器获得到第二处理器发送的第二时刻之后,第二处理器需要进行数据处理并发送给第一处理器的任务数据。
步骤104:基于第一时刻和第二时刻以及任务数据中的数据时刻,对任务数据进行处理器。
也就是说,本实施例中基于第一时刻和第二时刻同步第一处理器和第二处理器之间的时间戳,从而对任务数据中的数据时刻能够统一到一个时间戳上进行相应的数据处理,从而不会出现因时间戳不同步而导致的处理错误。
由上述方案可知,本申请实施例一提供的一种时间戳同步方法,在主协处理器之间通过快速传输可忽略传输延迟的同步指令同时记录各自的时刻,由此基于两个处理器在同一时间所记录的两个时刻之间的对应关系及任务数据的数据时刻,对任务数据进行处理。可见,本实施例中能够对异构设备中的主协处理器进行时间戳同步,从而实现准确的数据处理。
在一种实现方式中,第一处理器在基于第一时刻和第二时刻以及任务数据中的数据时刻对任务数据进行数据处理时,具体可以通过以下方式实现,如图3中所示:
步骤301:基于第一时刻和第二时刻,确定第一处理器与第一处理器针对时间戳的对应关系。
例如,在同步指令下,第一处理器记录第一时刻,第二处理器记录第二时刻,第一时刻与第二时刻即为同一世界时钟下不同处理器所遵循的时间戳下的时刻,第一处理器对第一时刻与第二时刻之间的前后相差的刻度关系,确定第一处理器与第二处理器针对各自的时间戳的对应关系,例如,第一时刻晚于第二时刻第一时长,那么第一处理器可以确定第一处理器的时间戳晚于第二处理器的时间戳第一时长的对应关系。
步骤302:基于时间戳的对应关系以及任务数据中的数据时刻,对任务数据进行处理。
其中,本实施例中第一处理器基于时间戳的对应关系以及任务数据中的数据时刻,对任务数据进行处理,在处理过程中,将任务数据中涉及数据时刻所对应的时间戳不统一时,基于第一处理器和第二处理器的时间戳对应关系,对任务数据中的数据时刻进行统一,从而实现无差错的数据处理。
例如,第一处理器在基于时间戳的对应关系以及任务数据中的数据时刻,对任务数据进行数据处理时,具体可以通过以下方式实现:
首先,第一处理器基于时间戳的对应关系,对任务数据中第二处理器时间戳对应的时刻转换为第一处理器时间戳对应的时刻,之后,第一处理器再对经过时间戳转换的任务数据进行数据处理。
也就是说,任务数据是由第二处理器发送到第一处理器,任务数据中的数据时刻是基于第二处理器的时间戳的,而第二处理器的时间戳与第一处理器的时间戳之间是有时间偏差的,且时间偏差是与第一时刻与第二时刻之间的时刻差相对应的,即:第一处理器和第二处理器之间的时间戳对应关系表现为:第一时刻与第二时刻之间的时间偏差。由此,本实施例中,第一处理器在接收到第二处理器发送的任务数据之后,基于第一时刻和第二时刻之间的时刻偏差,确定第一处理器和第二处理器之间针对时间戳的对应关系,如时间戳之间的时间偏差,之后,第一处理器基于该时间戳的对应关系,对任务数据中第二处理器时间戳对应的数据时刻进行时刻转换,转换为第一处理器时间戳对应的数据时刻,如把任务数据中的数据时刻前移或后移前文中时间戳之间的时间偏差,即可完成时刻转换,由此,在第一处理器上所进行的数据处理均为在第一处理器的时间戳上的数据处理,进而避免了时间戳不一致所导致的数据处理误差。
在一种实现方式中,第一处理器所响应的同步指令可以为第二处理器的输入输出中断指令,例如,协处理器在需要进行时间戳同步或主处理器需要协处理器进行时间戳同步时,协处理器操作输入输出IO(input/output)从而产生中断,以生成处理器输入输出中断指令,并在记录协处理器当前时刻的同时将中断指令发送给主处理器,主处理器响应该中断指令并记录当前时刻,从而进行后续的时间戳同步流程。
参考图4,为本申请实施例二提供的一种电子设备的结构示意图,该电子设备可以为异构设备中的主处理设备,主处理设备中可以具有以下结构,用以实现异构设备中的时间戳同步:
存储器401,用于存储应用程序及所述应用程序运行所产生的数据。
处理器402,用于响应于其他设备的处理器的同步指令,记录所述电子设备的处理器当前的第一时刻,其中,所述电子设备的处理器402与所述其他设备的处理器之间通过硬件传输线路403传输数据,所述硬件传输线路403的传输速率高于阈值;
其中,所述电子设备的处理器402还用于获得所述其他设备的处理器发送的第二时刻,所述第二时刻为所述其他设备的处理器在触发所述同步指令时记录的时刻;并在接收到所述其他设备的处理器传输的任务数据后,基于所述第一时刻和所述第二时刻以及所述任务数据中的数据时刻,对所述任务数据进行数据处理。
需要说明的是,处理器402即为前文中异构设备中的主处理器,其他设备的处理器即为前文中异构设备中的协处理器,在具体应用中处理器402的实现方式可以参考前文中相应内容,此处不再陈述。
由上述方案可知,本申请实施例二提供的一种电子设备,在主协处理器之间通过快速传输可忽略传输延迟的同步指令同时记录各自的时刻,由此基于两个处理器在同一时间所记录的两个时刻之间的对应关系及任务数据的数据时刻,对任务数据进行处理。可见,本实施例中能够对异构设备中的主协处理器进行时间戳同步,从而实现准确的数据处理。
参考图5,为本申请实施例三提供的一种时间戳同步方法的流程图,该方法适用于异构设备中的第二处理器,即协处理器。在异构设备中还具有第一处理器,即主处理器。本实施例中的方法主要用于第二处理器中向第一处理器同步自身的时间戳。
在本实施例中,该方法可以包括以下步骤:
步骤501:第二处理器向第一处理器触发同步指令并记录当前的第二时刻。
其中,第一处理器与第二处理器之间通过硬件传输线路传输数据,硬件传输线路的传输速率高于阈值,也就是说,第二处理器的同步指令传输到第一处理器的延迟非常小,可忽略不计。
需要说明的是,在第二处理器向第一处理器触发同步指令之后,第一处理器响应于第二处理器的同步指令,记录第一处理器当前的第一时刻。
步骤502:第二处理器向第一处理器发送第二时刻,使得第一处理器在接收到第二处理器传输的任务数据后,基于第一时刻和第二时刻以及任务数据中的数据时刻,对任务数据进行数据处理。
其中,第二时刻为第二处理器在触发同步指令时记录的时刻,也就是说,第二处理器在向第一处理器触发同步指令的同时记录第二时刻,而第一处理器对第二处理器触发的同步指令进行响应,记录第一时刻,此时,第一时刻和第二时刻可以认为是同一时刻上第一处理器和第二处理器分别记录的时刻。
相应的,第一处理器在接收到第二时刻之后,能够基于第一时刻与第二时刻确定第一处理器与第二处理器之间针对时间戳的对应关系,进而使得第一处理器在接收到第二处理器发送的任务数据之后,能够基于时间戳的对应关系对任务数据进行处理,从而避免由于时间戳不统一而造成的数据处理错误。
由上述方案可知,本申请实施例三提供的一种时间戳同步方法,在主协处理器之间通过快速传输可忽略传输延迟的同步指令同时记录各自的时刻,由此基于两个处理器在同一时间所记录的两个时刻之间的对应关系及任务数据的数据时刻,对任务数据进行处理。可见,本实施例中能够对异构设备中的主协处理器进行时间戳同步,从而实现准确的数据处理。
在一种实现方式中,第二处理器传输任务数据具体可以为:
第二处理器对待传输的任务数据标记当前的数据时刻之后,将任务数据传输到第一处理器,以使得第一处理器基于第一时刻和第二时刻,确定第一处理器与第二处理器针对时间戳的对应关系,并基于时间戳的对应关系以及任务数据中的数据时刻,对任务数据进行数据处理。
也就是说,第二处理器对待传输的任务数据会标记自身的时刻,该时刻是第二处理器时间戳所对应的时刻,由此第一处理器在接收到第二处理器所传输的任务数据之后,基于第一时刻和第二时刻确定时间戳对应关系之后,可以基于时间戳的对应关系将任务数据中的数据时刻进行时刻转换,从第二处理器时间戳所对应的时刻转换为第一处理器时间戳所对应的时刻,再对转换时刻后的任务数据进行数据处理,从而避免数据处理错误。
参考图6,为本申请实施例四提供的一种电子设备的结构示意图,该电子设备可以为异构结构中的协处理设备,协处理设备中可以具有以下结构,用以实现异构设备中的时间戳同步:
存储器601,用于存储应用程序及所述应用程序运行所产生的数据;
处理器602,用于向其他设备的处理器触发同步指令并记录当前的第二时刻,所述其他设备的处理器与所述电子设备的处理器602之间通过硬件传输线路603传输数据,所述硬件传输线路603的传输速率高于阈值,其中,所述其他设备的处理器响应于所述电子设备的处理器602的同步指令,记录所述其他设备的处理器当前的第一时刻;
其中,所述电子设备的处理器602还用于:向所述其他设备的处理器发送所述第二时刻,使得所述其他设备的处理器在接收到所述电子设备的处理器602传输的任务数据后,基于所述第一时刻和所述第二时刻以及所述任务数据中的数据时刻,对所述任务数据进行数据处理。
需要说明的是,处理器602即为前文中异构设备中的协处理器,其他设备的处理器即为前文中异构设备中的主处理器,在具体应用中处理器602的具体实现方式可以参考前文中相应内容,此处不再详述。
参考图7,为本申请实施例五提供的一种异构设备的结构示意图,该异构设备中包括第一处理器701和第二处理器702,第一处理器701可以为主处理器,第二处理器702可以为协处理器,其中:
所述第二处理器702向所述第一处理器701触发同步指令并记录当前的第二时刻;
所述第一处理器701响应于所述第二处理器702的同步指令,记录所述第一处理器701当前的第一时刻,其中,所述第一处理器701与所述第二处理器702之间通过硬件传输线路传输数据,所述硬件传输线路的传输速率高于阈值;
所述第二处理器702向所述第一处理器701发送所述第二时刻;
所述第一处理器701获得所述第二处理器702发送的第二时刻;
所述第一处理器701在接收到所述第二处理器702传输的任务数据后,基于所述第一时刻和所述第二时刻以及所述任务数据中的数据时刻,对所述任务数据进行数据处理。
需要说明的是,第一处理器701和第二处理器702的具体实现方式可以参考前文中相应内容,此处不再赘述。
由上述方案可知,本申请实施例五提供的一种异构设备,在主协处理器之间通过快速传输可忽略传输延迟的同步指令同时记录各自的时刻,由此基于两个处理器在同一时间所记录的两个时刻之间的对应关系及任务数据的数据时刻,对任务数据进行处理。可见,本实施例中能够对异构设备中的主协处理器进行时间戳同步,从而实现准确的数据处理。
以下以具有Movidius协处理器和Qualcomm主处理器的增强现实AR(AugmentedReality)异构设备为例,对以上本实施例中的技术方案进行举例说明:
结合图8中所示的处理流程图,从异构设备启动开始,如下:
首先,Qualcomm主处理器先上电启动,加载操作***,并从存储中读取Movidius协处理器的固件数据;
其次,Qualcomm主处理器引导Movidius协处理器上电启动,并将Movidius协处理器的固件数据通过片间数据总线传输过去,Movidius协处理器启动并加载固件数据;
之后,Movidius协处理器启动后,操作芯片间中断IO以引导Qualcomm产生中断,同时记录下当前Movidius协处理器时间戳并将此时间戳通过串行外设接口SPI(SerialPeripheral Interface)传输给Qualcomm主处理器;
在之后,Qualcomm主处理器产生中断后,记录下当前操作***时间戳,收到SPI传输过来的Movidius主处理器时间戳之后,就得到了两个处理器之间的时间戳之差;
最后,Movidius协处理器每一次传输给Qualcomm主处理器的数据包都要带有时间戳,Qualcomm主处理器根据前述时间戳的关系,将该次Movidius协处理器数据包的时间戳换算成Qualcomm主处理器操作***时间戳,完成时间同步。
需要说明的是,Movidius协处理器和Qualcomm主处理器之间要存在硬件电路级的触发机制。硬件电路级的触发机制满足一定条件,如下:
Movidius协处理器的触发信号从发出到生效时间必须很短,必须低于500ns;
Qualcomm主处理器从触发信号接收到响应时间必须很短,必须低于500ns;
Movidius协处理器发出触发信号从发出到生效时间必须很短,必须低于500ns;
Movidius协处理器的触发信号的发生应使用硬件级中断;
Qualcomm主处理器对触发信号的响应应使用硬件级中断;
由此,Qualcomm主处理器将时间戳同步后Movidius协处理器发来的图像和惯性测量单元IMU(Inertial measurement unit,简称IMU)数据等任务数据传输给处理器ARM以完成后端算法处理。
可见,本实施例中能够解决异构计算中主从处理器数据时间戳同步的问题,并且实时性好,功耗低,在计算性能和***续航方面有优势。
本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。
专业人员还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
结合本文中所公开的实施例描述的方法或算法的步骤可以直接用硬件、处理器执行的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器(RAM)、内存、只读存储器(ROM)、电可编程ROM、电可擦除可编程ROM、寄存器、硬盘、可移动磁盘、CD-ROM、或技术领域内所公知的任意其它形式的存储介质中。
对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本申请。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本申请的精神或范围的情况下,在其它实施例中实现。因此,本申请将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。
Claims (7)
1.一种时间戳同步方法,应用于异构设备,所述时间戳同步方法包括:
第一处理器响应于第二处理器的同步指令,记录所述第一处理器当前的第一时刻,其中,所述第一处理器与所述第二处理器之间通过硬件传输线路传输数据,所述硬件传输线路的传输速率高于阈值以使得第二处理器的同步指令传输到第一处理器的延迟能够被忽略,第一处理器为所述异构设备的主处理器,第二处理器为所述异构设备的从处理器;
所述第一处理器获得所述第二处理器发送的第二时刻,所述第二时刻为所述第二处理器在触发所述同步指令时记录的时刻;
所述第一处理器在接收到所述第二处理器传输的任务数据后,基于所述第一时刻和所述第二时刻以及所述任务数据中的数据时刻,对所述任务数据进行数据处理;
所述第一处理器基于所述第一时刻和所述第二时刻以及所述任务数据中的数据时刻,对所述任务数据进行数据处理,包括:所述第一处理器基于所述第一时刻和所述第二时刻,确定所述第一处理器与所述第二处理器针对时间戳的对应关系;所述第一处理器基于所述时间戳的对应关系以及所述任务数据中的数据时刻,对所述任务数据进行数据处理;其中,确定所述第一处理器与所述第二处理器针对时间戳的对应关系包括:第一处理器对第一时刻与第二时刻之间的前后相差的刻度关系,确定第一处理器与第二处理器针对各自的时间戳的对应关系;
所述第一处理器基于所述时间戳的对应关系以及所述任务数据中的数据时刻,对所述任务数据进行数据处理,包括:所述第一处理器基于所述时间戳的对应关系,对所述任务数据中所述第二处理器时间戳对应的时刻转换为所述第一处理器时间戳对应的时刻;所述第一处理器对经过时间戳转换的任务数据进行数据处理。
2.根据权利要求1所述的方法,所述时间戳的对应关系包括:所述第一时刻和所述第二时刻之间的时间偏差。
3.根据权利要求2所述的方法,所述同步指令为处理器输入输出中断指令。
4.一种电子设备,所述电子设备为异构设备中的主处理设备,所述电子设备包括:
存储器,用于存储应用程序及所述应用程序运行所产生的数据;
处理器,用于响应于其他设备的处理器的同步指令,记录所述电子设备的处理器当前的第一时刻,其中,所述电子设备的处理器与所述其他设备的处理器之间通过硬件传输线路传输数据,所述硬件传输线路的传输速率高于阈值以使得第二处理器的同步指令传输到第一处理器的延迟能够被忽略;
其中,所述电子设备的处理器还用于获得所述其他设备的处理器发送的第二时刻,所述第二时刻为所述其他设备的处理器在触发所述同步指令时记录的时刻;并在接收到所述其他设备的处理器传输的任务数据后,基于所述第一时刻和所述第二时刻以及所述任务数据中的数据时刻,对所述任务数据进行数据处理;
所述电子设备的处理器基于所述第一时刻和所述第二时刻以及所述任务数据中的数据时刻,对所述任务数据进行数据处理,包括:所述电子设备的处理器基于所述第一时刻和所述第二时刻,确定所述电子设备的处理器与所述其他设备的处理器针对时间戳的对应关系;所述电子设备的处理器基于所述时间戳的对应关系以及所述任务数据中的数据时刻,对所述任务数据进行数据处理;其中,确定所述电子设备的处理器与所述其他设备的处理器针对时间戳的对应关系包括:所述电子设备的处理器对第一时刻与第二时刻之间的前后相差的刻度关系,确定所述电子设备处理器与所述其他设备的处理器针对各自的时间戳的对应关系;
所述电子设备的处理器基于所述时间戳的对应关系以及所述任务数据中的数据时刻,对所述任务数据进行数据处理,包括:所述电子设备的处理器基于所述时间戳的对应关系,对所述任务数据中所述其他设备的处理器时间戳对应的时刻转换为所述电子设备的处理器时间戳对应的时刻;所述电子设备的处理器对经过时间戳转换的任务数据进行数据处理。
5.一种时间戳同步方法,应用于异构设备,所述时间戳同步方法包括:
第二处理器向第一处理器触发同步指令并记录当前的第二时刻,所述第一处理器与所述第二处理器之间通过硬件传输线路传输数据,所述硬件传输线路的传输速率高于阈值以使得第二处理器的同步指令传输到第一处理器的延迟能够被忽略,其中,所述第一处理器响应于第二处理器的同步指令,记录所述第一处理器当前的第一时刻,第一处理器为所述异构设备的主处理器,第二处理器为所述异构设备的从处理器;
所述第二处理器向所述第一处理器发送所述第二时刻,使得所述第一处理器在接收到所述第二处理器传输的任务数据后,基于所述第一时刻和所述第二时刻以及所述任务数据中的数据时刻,对所述任务数据进行数据处理;
所述第二处理器传输任务数据,包括:
所述第二处理器对待传输的任务数据标记当前的数据时刻之后,将所述任务数据传输到所述第一处理器,以使得所述第一处理器基于所述第一时刻和所述第二时刻,确定所述第一处理器与所述第二处理器针对时间戳的对应关系,并基于所述时间戳的对应关系以及所述任务数据中的数据时刻,对所述任务数据进行数据处理;其中,确定所述第一处理器与所述第二处理器针对时间戳的对应关系包括:第一处理器对第一时刻与第二时刻之间的前后相差的刻度关系,确定第一处理器与第二处理器针对各自的时间戳的对应关系。
6.一种电子设备,所述电子设备为异构结构中的协处理设备,所述电子设备包括:
存储器,用于存储应用程序及所述应用程序运行所产生的数据;
处理器,用于向其他设备的处理器触发同步指令并记录当前的第二时刻,所述其他设备的处理器与所述电子设备的处理器之间通过硬件传输线路传输数据,所述硬件传输线路的传输速率高于阈值以使得第二处理器的同步指令传输到第一处理器的延迟能够被忽略,其中,所述其他设备的处理器响应于所述电子设备的处理器的同步指令,记录所述其他设备的处理器当前的第一时刻;
其中,所述电子设备的处理器还用于:向所述其他设备的处理器发送所述第二时刻,使得所述其他设备的处理器在接收到所述电子设备的处理器传输的任务数据后,基于所述第一时刻和所述第二时刻以及所述任务数据中的数据时刻,对所述任务数据进行数据处理;
所述电子设备的处理器传输任务数据,包括:
所述电子设备的处理器对待传输的任务数据标记当前的数据时刻之后,将所述任务数据传输到所述其他设备的处理器,以使得所述其他设备的处理器基于所述第一时刻和所述第二时刻,确定所述其他设备的处理器与所述电子设备的处理器针对时间戳的对应关系,并基于所述时间戳的对应关系以及所述任务数据中的数据时刻,对所述任务数据进行数据处理;其中,确定所述电子设备的处理器与所述其他设备的处理器针对时间戳的对应关系包括:所述电子设备的处理器对第一时刻与第二时刻之间的前后相差的刻度关系,确定所述电子设备处理器与所述其他设备的处理器针对各自的时间戳的对应关系。
7.一种异构设备,包括第一处理器和第二处理器,第一处理器为所述异构设备的主处理器,第二处理器为所述异构设备的从处理器,其中:
所述第二处理器向所述第一处理器触发同步指令并记录当前的第二时刻;
所述第一处理器响应于所述第二处理器的同步指令,记录所述第一处理器当前的第一时刻,其中,所述第一处理器与所述第二处理器之间通过硬件传输线路传输数据,所述硬件传输线路的传输速率高于阈值以使得第二处理器的同步指令传输到第一处理器的延迟能够被忽略;
所述第二处理器向所述第一处理器发送所述第二时刻;
所述第一处理器获得所述第二处理器发送的第二时刻;
所述第一处理器在接收到所述第二处理器传输的任务数据后,基于所述第一时刻和所述第二时刻以及所述任务数据中的数据时刻,对所述任务数据进行数据处理;
所述第一处理器基于所述第一时刻和所述第二时刻以及所述任务数据中的数据时刻,对所述任务数据进行数据处理,包括:所述第一处理器基于所述第一时刻和所述第二时刻,确定所述第一处理器与所述第二处理器针对时间戳的对应关系;所述第一处理器基于所述时间戳的对应关系以及所述任务数据中的数据时刻,对所述任务数据进行数据处理;其中,确定所述第一处理器与所述第二处理器针对时间戳的对应关系包括:第一处理器对第一时刻与第二时刻之间的前后相差的刻度关系,确定第一处理器与第二处理器针对各自的时间戳的对应关系;
所述第一处理器基于所述时间戳的对应关系以及所述任务数据中的数据时刻,对所述任务数据进行数据处理,包括:所述第一处理器基于所述时间戳的对应关系,对所述任务数据中所述第二处理器时间戳对应的时刻转换为所述第一处理器时间戳对应的时刻;所述第一处理器对经过时间戳转换的任务数据进行数据处理。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910227902.1A CN109933418B (zh) | 2019-03-25 | 2019-03-25 | 一种时间戳同步方法、电子设备及异构设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910227902.1A CN109933418B (zh) | 2019-03-25 | 2019-03-25 | 一种时间戳同步方法、电子设备及异构设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109933418A CN109933418A (zh) | 2019-06-25 |
CN109933418B true CN109933418B (zh) | 2022-10-25 |
Family
ID=66988299
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910227902.1A Active CN109933418B (zh) | 2019-03-25 | 2019-03-25 | 一种时间戳同步方法、电子设备及异构设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109933418B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112395231B (zh) * | 2019-08-14 | 2023-09-29 | 大唐移动通信设备有限公司 | 一种多处理器间的数据延迟时间计算方法及装置 |
CN113821469A (zh) * | 2021-09-23 | 2021-12-21 | 深圳市元征科技股份有限公司 | 多处理器的同步方法、装置、终端设备及存储介质 |
Family Cites Families (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101197280B1 (ko) * | 2005-07-15 | 2012-11-05 | 삼성전자주식회사 | 타임 스탬프를 이용한 타임 동기 방법 및 장치 |
CN101515831B (zh) * | 2008-02-22 | 2013-08-28 | 杭州华三通信技术有限公司 | 一种时间同步传递方法、***及装置 |
US20110035511A1 (en) * | 2009-08-07 | 2011-02-10 | Cisco Technology, Inc. | Remote Hardware Timestamp-Based Clock Synchronization |
CN102013931B (zh) * | 2009-09-08 | 2015-04-01 | 中兴通讯股份有限公司 | 时间同步方法及***、从属定时设备及主定时设备 |
CN102035613A (zh) * | 2009-09-28 | 2011-04-27 | 华为技术有限公司 | 实现时间同步的方法、装置及网络*** |
US20150185054A1 (en) * | 2013-12-30 | 2015-07-02 | Motorola Mobility Llc | Methods and Systems for Synchronizing Data Received from Multiple Sensors of a Device |
CN104731736A (zh) * | 2015-03-27 | 2015-06-24 | 深圳怡化电脑股份有限公司 | 一种时间同步装置、方法及*** |
CN105700336A (zh) * | 2016-04-07 | 2016-06-22 | 山东和远智能科技股份有限公司 | 基于rs485总线连接的电力仪表校时方法 |
CN108737001B (zh) * | 2017-04-24 | 2020-02-07 | 广东虚拟现实科技有限公司 | 一种数据处理方法及相关设备 |
CN108829627B (zh) * | 2018-05-30 | 2020-11-20 | 青岛小鸟看看科技有限公司 | 虚拟现实设备间的同步控制方法及*** |
-
2019
- 2019-03-25 CN CN201910227902.1A patent/CN109933418B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN109933418A (zh) | 2019-06-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9804944B2 (en) | Data processing system | |
US20110314322A1 (en) | Time synchronization system and server using same | |
US9330049B2 (en) | Method and apparatuses for monitoring system bus | |
CN109933418B (zh) | 一种时间戳同步方法、电子设备及异构设备 | |
CN112154614B (zh) | 传感***、传感设备及其控制方法、可移动平台和存储介质 | |
CN109471588B (zh) | 一种同步方法及设备 | |
CN108923875A (zh) | 时间同步方法和装置 | |
CN114422412A (zh) | 一种设备检测方法、装置和通信设备 | |
CN107003691B (zh) | 用于基于全局时钟对计数器进行同步采样的技术 | |
JPH0863254A (ja) | 伝送装置の時刻補正方法及びそれを利用した伝送装置 | |
CN111813596A (zh) | 芯片重启方法、装置及计算设备 | |
US20050041765A1 (en) | Synchronization of data-processing units | |
CN115933591A (zh) | 一种控制器诊断方法、装置、设备和存储介质 | |
JP4299634B2 (ja) | 情報処理装置及び情報処理装置の時計異常検出プログラム | |
CN114126028B (zh) | 一种差动保护方法、装置、通信单元和存储介质 | |
US11882015B2 (en) | Estimation system, addition apparatus, estimation method, addition method, estimation program and addition program | |
CN104572317A (zh) | 主板及利用主板的基板管理控制器获取时间信息的方法 | |
JP2004199158A (ja) | 中継処理装置、制御方法、プログラム、記録媒体、及び端末制御サーバ | |
CN109634906B (zh) | 一种ic通信***和方法 | |
CN116414766A (zh) | 一种异构***核间时间的同步方法、异构***和移动终端 | |
CN115525935B (zh) | 多安全芯片的并发数据运算方法、装置、设备及存储介质 | |
CN116232524B (zh) | 接收机板间信号的同步方法及相关设备 | |
CN114513385B (zh) | 数据传输方法、装置、电子设备及存储介质 | |
CN112363962B (zh) | 数据通信方法、***、电子设备及计算机存储介质 | |
CN115494950A (zh) | 一种双***头戴显示设备的时间确定方法及相关组件 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |