CN112395231B - 一种多处理器间的数据延迟时间计算方法及装置 - Google Patents
一种多处理器间的数据延迟时间计算方法及装置 Download PDFInfo
- Publication number
- CN112395231B CN112395231B CN201910750290.4A CN201910750290A CN112395231B CN 112395231 B CN112395231 B CN 112395231B CN 201910750290 A CN201910750290 A CN 201910750290A CN 112395231 B CN112395231 B CN 112395231B
- Authority
- CN
- China
- Prior art keywords
- processor
- time
- time point
- relative
- calculating
- 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
- 238000000034 method Methods 0.000 title claims abstract description 32
- 230000005540 biological transmission Effects 0.000 claims abstract description 70
- 238000004364 calculation method Methods 0.000 claims description 17
- 238000004590 computer program Methods 0.000 claims description 6
- 238000004458 analytical method Methods 0.000 claims description 4
- 238000012546 transfer Methods 0.000 claims description 4
- 238000005259 measurement Methods 0.000 description 8
- 238000010586 diagram Methods 0.000 description 6
- 238000012545 processing Methods 0.000 description 4
- 238000004891 communication Methods 0.000 description 3
- 238000012360 testing method Methods 0.000 description 2
- XYDVHKCVOMGRSY-UHFFFAOYSA-N 4-(4-benzylphenyl)-1,3-thiazol-2-amine Chemical compound S1C(N)=NC(C=2C=CC(CC=3C=CC=CC=3)=CC=2)=C1 XYDVHKCVOMGRSY-UHFFFAOYSA-N 0.000 description 1
- 101000928034 Homo sapiens Proteasomal ubiquitin receptor ADRM1 Proteins 0.000 description 1
- 102100036915 Proteasomal ubiquitin receptor ADRM1 Human genes 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/38—Information transfer, e.g. on bus
- G06F13/42—Bus transfer protocol, e.g. handshake; Synchronisation
- G06F13/4204—Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus
- G06F13/4234—Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus being a memory bus
- G06F13/4243—Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus being a memory bus with synchronous protocol
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/14—Handling requests for interconnection or transfer
- G06F13/16—Handling requests for interconnection or transfer for access to memory bus
- G06F13/1605—Handling requests for interconnection or transfer for access to memory bus based on arbitration
- G06F13/161—Handling requests for interconnection or transfer for access to memory bus based on arbitration with latency improvement
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/14—Handling requests for interconnection or transfer
- G06F13/20—Handling requests for interconnection or transfer for access to input/output bus
- G06F13/24—Handling requests for interconnection or transfer for access to input/output bus using interrupt
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Synchronisation In Digital Transmission Systems (AREA)
Abstract
本发明实施例公开了一种多处理器间的数据延迟时间计算方法及装置,方法包括:第一处理器若接收到定时中断信号,则记录当前的第一基准时间点;若接收到第二处理器发送的传输数据,则记录当前的接收时间点,并解析传输数据得到第二处理器的相对发送时间;根据第一基准时间点、接收时间点和相对发送时间计算得到两个处理器之间的数据延迟时间。通过给各处理器发送中断信号实现不同处理器之间基准时间的同步,并通过第一处理器接收传输数据的接收时间点和第二处理器发送传输数据的相对发送时间计算两个处理器之间的数据延迟时间,既不依赖高成本硬件和复杂软件,也不依赖网络,且实现简单,成本较低,方便测量任意处理器之间的数据延迟时间。
Description
技术领域
本发明涉及通信技术领域,具体涉及一种多处理器间的数据延迟时间计算方法及装置。
背景技术
在数据通信行业中,通常单板上会存在多个处理器,且处理器之间通过高速总线互联并传递数据或消息。对于一些对数据传输延迟敏感的应用,会非常关注从一个处理器到另一个处理器的数据延迟。
通常在进行跨处理器的数据延迟测量时,会通过硬件的时钟同步或软件的时间同步来将多个处理器的时间进行同步,然后对传输的数据或消息的时延进行测量。现有技术中的时间同步方案包括硬件的时钟同步和软件的时钟同步,其中硬件的时钟同步使用GPS(Global Positioning System,全球定位***)或北斗卫星等时钟***的进行时间同步,软件的时钟同步通过NTP(Network Time Protocol,网络时间协议),1588等协议实现时间同步。
然而,通过GPS或北斗卫星进行时间同步的成本过高且软硬件相对复杂,通过软件的时钟同步协议进行时间同步时需要外置时间同步服务器,***构成相对复杂;同时如果外部服务器故障、卫星信号不满足要求或者网络故障,会导致时间同步失败,还需要本地时钟继续保持维持时间同步,会导致软硬件成本的增加。
发明内容
由于现有方法存在上述问题,本发明实施例提出一种多处理器间的数据延迟时间计算方法及装置。
第一方面,本发明实施例提出一种多处理器间的数据延迟时间计算方法,包括:
第一处理器若接收到定时中断信号,则记录当前的第一基准时间点;
若接收到第二处理器发送的传输数据,则记录当前的接收时间点,并解析所述传输数据得到所述第二处理器的相对发送时间;
根据所述第一基准时间点、所述接收时间点和所述相对发送时间计算得到所述第一处理器和所述第二处理器的数据延迟时间;
其中,所述定时中断信号为可编程逻辑器件根据预设时间间隔发送给各处理器的中断信号。
可选地,所述根据所述第一基准时间点、所述接收时间点和所述相对发送时间计算得到所述第一处理器和所述第二处理器的数据延迟时间,具体包括:
计算所述第一基准时间点和所述接收时间点的差值,得到所述第一处理器接收到所述传输数据的相对接收时间;
计算所述相对接收时间和所述相对发送时间的差值,得到所述第一处理器和所述第二处理器的数据延迟时间。
可选地,所述预设时间间隔大于所述第一处理器和所述第二处理器之间的最大数据传输时间。
可选地,所述相对发送时间为所述第二处理器根据第二基准时间点和发送时间点进行差值计算得到;
其中,所述第二基准时间点为所述第二处理器接收到所述定时中断信号时记录的时间点;
所述发送时间点为所述第二处理器发送所述传输数据时记录的时间点。
可选地,所述计算所述相对接收时间和所述相对发送时间的差值,得到所述第一处理器和所述第二处理器的数据延迟时间,具体包括:
计算所述数据延迟时间DelayTime:
DelayTime=(T_period+T_receive–T_sent)%T_period
其中,T_period为所述预设时间间隔,T_receive为所述相对接收时间,T_sent为所述相对发送时间,%为取模运算符号。
第二方面,本发明实施例还提出一种多处理器间的数据延迟时间计算装置,包括:
基准记录模块,用于若接收到定时中断信号,则记录当前的第一基准时间点;
时间解析模块,用于若接收到第二处理器发送的传输数据,则记录当前的接收时间点,并解析所述传输数据得到所述第二处理器的相对发送时间;
延迟计算模块,用于根据所述第一基准时间点、所述接收时间点和所述相对发送时间计算得到所述第一处理器和所述第二处理器的数据延迟时间;
其中,所述定时中断信号为可编程逻辑器件根据预设时间间隔发送给各处理器的中断信号。
可选地,所述延迟计算模块具体用于:
计算所述第一基准时间点和所述接收时间点的差值,得到所述第一处理器接收到所述传输数据的相对接收时间;
计算所述相对接收时间和所述相对发送时间的差值,得到所述第一处理器和所述第二处理器的数据延迟时间。
可选地,所述预设时间间隔大于所述第一处理器和所述第二处理器之间的最大数据传输时间。
可选地,所述相对发送时间为所述第二处理器根据第二基准时间点和发送时间点进行差值计算得到;
其中,所述第二基准时间点为所述第二处理器接收到所述定时中断信号时记录的时间点;
所述发送时间点为所述第二处理器发送所述传输数据时记录的时间点。
可选地,所述延迟计算模块具体用于:
计算所述数据延迟时间DelayTime:
DelayTime=(T_period+T_receive–T_sent)%T_period
其中,T_period为所述预设时间间隔,T_receive为所述相对接收时间,T_sent为所述相对发送时间,%为取模运算符号。
第三方面,本发明实施例还提出一种电子设备,包括:
至少一个处理器;以及
与所述处理器通信连接的至少一个存储器,其中:
所述存储器存储有可被所述处理器执行的程序指令,所述处理器调用所述程序指令能够执行上述方法。
第四方面,本发明实施例还提出一种非暂态计算机可读存储介质,所述非暂态计算机可读存储介质存储计算机程序,所述计算机程序使所述计算机执行上述方法。
由上述技术方案可知,本发明实施例通过可编程逻辑器件给各处理器发送中断信号实现不同处理器之间基准时间的同步,并通过第一处理器接收传输数据的接收时间点和第二处理器发送传输数据的相对发送时间计算得到两个处理器之间的数据延迟时间,既不依赖高成本硬件和复杂软件,也不需要依赖网络,且实现简单,成本较低,方便测量任意处理器之间的数据延迟时间。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些图获得其他的附图。
图1为本发明一实施例提供的一种多处理器间的数据延迟时间计算方法的流程示意图;
图2为本发明一实施例提供的一种多处理器单板的结构示意图;
图3为本发明一实施例提供的一般情况下的数据传输示意图;
图4为本发明一实施例提供的数据传输跨定时中断情况下的数据传输示意图;
图5为本发明一实施例提供的一种多处理器间的数据延迟时间计算装置的结构示意图;
图6为本发明一实施例提供的电子设备的逻辑框图。
具体实施方式
下面结合附图,对本发明的具体实施方式作进一步描述。以下实施例仅用于更加清楚地说明本发明的技术方案,而不能以此来限制本发明的保护范围。
图1示出了本实施例提供的一种多处理器间的数据延迟时间计算方法的流程示意图,包括:
S101、第一处理器若接收到定时中断信号,则记录当前的第一基准时间点。
其中,所述定时中断信号为可编程逻辑器件根据预设时间间隔发送给各处理器的中断信号。
所述预设时间间隔大于第一处理器和第二处理器之间的最大数据传输时间。
所述第一处理器为接收传输数据的处理器,所述第二处理器为发送传输数据的处理器。
所述第一基准时间点为第一处理器接收到定时中断信号的时间点。
S102、若接收到第二处理器发送的传输数据,则记录当前的接收时间点,并解析所述传输数据得到所述第二处理器的相对发送时间。
其中,所述传输数据是为了计算第一处理器和第二处理器之间的延迟时间而在两个处理器之间传输的数据。
所述接收时间点为第一处理器接收到传输数据的时间点。
所述相对发送时间为所述第二处理器根据第二基准时间点和发送时间点进行差值计算得到;
所述第二基准时间点为所述第二处理器接收到所述定时中断信号时记录的时间点;
所述发送时间点为所述第二处理器发送所述传输数据时记录的时间点,表示第一处理器与第二处理器在同一基准时间下发送传输数据的时间。
S103、根据所述第一基准时间点、所述接收时间点和所述相对发送时间计算得到所述第一处理器和所述第二处理器的数据延迟时间。
其中,所述数据延迟时间为数据在两个处理器之间传输的时间。
具体地,通过本地单板***的可编程逻辑器件,根据实际测量周期向各个处理器发送定时中断信号,定时中断信号的预设时间间隔应该大于实际需要测量的最大数据传输时间。例如图2所示,使用HBPOD单板***测试5毫秒内从X86处理器到ARM处理器1的数据传输延迟,以微秒为单位,两个处理器之间数据传输的最大时长为2毫秒,小于5毫秒,因此可以将定时中断信号的预设时间间隔设置为5毫秒,每隔5毫秒向各服务器发送定时中断信号,一来防止本地的***时间出现偏差,二来通过多次测量能够减少处理器间的计算误差。
本实施例通过可编程逻辑器件给各处理器发送中断信号实现不同处理器之间基准时间的同步,并通过第一处理器接收传输数据的接收时间点和第二处理器发送传输数据的相对发送时间计算得到两个处理器之间的数据延迟时间,既不依赖高成本硬件和复杂软件,也不需要依赖网络,且实现简单,成本较低,方便测量任意处理器之间的数据延迟时间。
进一步地,在上述方法实施例的基础上,S103具体包括:
计算所述第一基准时间点和所述接收时间点的差值,得到所述第一处理器接收到所述传输数据的相对接收时间;
计算所述相对接收时间和所述相对发送时间的差值,得到所述第一处理器和所述第二处理器的数据延迟时间。
其中,所述相对接收时间与所述相对发送时间类似,为所述第一处理器根据第一基准时间点和接收时间点进行差值计算得到,表示第一处理器与第二处理器在同一基准时间下接收传输数据的时间。
举例来说,第一处理器的linux***采用A时钟,第一基准时间点为200毫秒,接收时间点为202毫秒;第二处理器的linux***采用B时钟,第二基准时间点为2000毫秒,接收时间点为2004毫秒;而对于第一处理器和第二处理器而言,第一基准时间点和第二基准时间点虽然数值不同,但是同时接收定时中断信号的时间点,即第一基准时间点和第二基准时间点的相对时间不同,但绝对时间相同,因此根据第一基准时间点和第二基准时间点的计算得到的相对接收时间和相对发送时间的基准时间是相同的,其差值即为传输数据在两个处理器之间的传输时间,即本实施例所述的数据延迟时间。
进一步地,所述计算所述相对接收时间和所述相对发送时间的差值,得到所述第一处理器和所述第二处理器的数据延迟时间,具体包括:
计算所述数据延迟时间DelayTime:
DelayTime=(T_period+T_receive–T_sent)%T_period
其中,T_period为所述预设时间间隔,T_receive为所述相对接收时间,T_sent为所述相对发送时间,%为取模运算符号。
通过取模运算,能够防止数据的溢出,例如由于软件故障导致T_receive-T_sent大于T_period,即数据在两个处理器之间的传输时间大于预设时间间隔,而预设时间间隔是小于T_period,出现了数据溢出,因此通过取模运算防止数据的溢出。
举例来说,如图3所示为一般情况下数据传输的流程示意图,数据传输在预设时间间隔内完成,即T_receive大于T_sent,加上T_period没有用,因此需要通过取模防止数据溢出。
而在另一种数据传输跨定时中断情况下,如图4所示,数据传输未在预设时间间隔内完成,即T_receive小于T_sent,加上T_period使得结果不为负数,此时取模运算是没有用的,但是不影响结果。
具体来说,在当前的单板处理***中,所使用的多个处理器,均可以运行嵌入式操作***,以HBPOD单板***为例,如图2所示,该单板的X86***和ARM***都运行嵌入式linux操作***,该操作***可以提供微秒级别的时间戳,也可以提供纳秒级别的时间戳。
以图2中的HBPOD单板***的X86处理器为例,由可编程逻辑器件EPLD每5毫秒给X86处理器和ARM处理器1提供中断,中断产生时,X86处理器和ARM处理器1处理中断时分别通过本处理器的linux操作***获取linux***时钟,并将该时钟转换为微秒级别的计数器,将该计数器保存在全局变量中,作为一个测量时间基准计数器,把这个标记为T_period_base。
当需要获取测量时间戳时,即进行传输数据的收发时,X86处理器和ARM处理器1分别通过本处理器的linux操作***获取linux***时钟,并将该时钟转换为微秒级别的计数器,把这个计数器标记为T_period_current,通过计算当前***时间与定时时间基准计数器的差得到基于定时时间基准计数器的一个差值,把这个差值标记为T_period_offset,T_period_offset=T_period_current–T_period_base。
通过测量时间戳可以在各个处理器上得到了基于本地处理器和操作***的相对于同一时间基准的时间差值,如图2所示的数据传输中,需要测量从X86处理器到ARM处理器1的一条传输数据的数据延迟时间,在X86处理器中将时间戳标记X86_T_period_offset,并将这个时间戳标记放在要传输的传输数据中,在ARM处理器1上收到该传输数据时取出该时间标记,同时在ARM处理器1上获取收到该条数据消息时的时间,标记为ARM1_T_period_offset。
从X86处理器***到ARM1处理器的一条数据消息最大不超过定时周期,即预设时间间隔,这个定时周期我们标记为T_period;通过下面方式得到该条传输数据的数据延迟时间,标记为DelayTime。
DelayTime=(T_period+ARM1_T_period_offset–X86_T_period_offset)%T_period。
其中,ARM1_T_period_offset即为前述的T_receive,X86_T_period_offset即为前述的T_sent,获取的时间DelayTime就是从X86处理器上传递到ARM处理器1上的传输数据的延迟时间。
本实施例可以实现单板处理***的多处理器之间的数据延迟测量,实现简单,旨在对要求测量精度不是特别高(微秒级别)的情况下,尽量减少外部依赖环境,以最小成本搭建单***的多处理器的时间测量方案。不依赖外部的卫星同步信号,不依赖于单板外部的时钟同步,也不依赖于外部的软件的时间同步服务器,在处理单板本地各个处理器实现测试的时间戳同步和获取时,提供了在任意处理器之间的数据延迟测量机制。
图5示出了本实施例提供的一种多处理器间的数据延迟时间计算装置的结构示意图,所述装置包括:基准记录模块501、时间解析模块502和延迟计算模块503,其中:
所述基准记录模块501用于若接收到定时中断信号,则记录当前的第一基准时间点;
所述时间解析模块502用于若接收到第二处理器发送的传输数据,则记录当前的接收时间点,并解析所述传输数据得到所述第二处理器的相对发送时间;
所述延迟计算模块503用于根据所述第一基准时间点、所述接收时间点和所述相对发送时间计算得到所述第一处理器和所述第二处理器的数据延迟时间;
其中,所述定时中断信号为可编程逻辑器件根据预设时间间隔发送给各处理器的中断信号。
具体地,所述基准记录模块501若接收到定时中断信号,则记录当前的第一基准时间点;所述时间解析模块502若接收到第二处理器发送的传输数据,则记录当前的接收时间点,并解析所述传输数据得到所述第二处理器的相对发送时间;所述延迟计算模块503根据所述第一基准时间点、所述接收时间点和所述相对发送时间计算得到所述第一处理器和所述第二处理器的数据延迟时间;
本实施例通过可编程逻辑器件给各处理器发送中断信号实现不同处理器之间基准时间的同步,并通过第一处理器接收传输数据的接收时间点和第二处理器发送传输数据的相对发送时间计算得到两个处理器之间的数据延迟时间,既不依赖高成本硬件和复杂软件,也不需要依赖网络,且实现简单,成本较低,方便测量任意处理器之间的数据延迟时间。
进一步地,在上述装置实施例的基础上,所述延迟计算模块503具体用于:
计算所述第一基准时间点和所述接收时间点的差值,得到所述第一处理器接收到所述传输数据的相对接收时间;
计算所述相对接收时间和所述相对发送时间的差值,得到所述第一处理器和所述第二处理器的数据延迟时间。
进一步地,在上述装置实施例的基础上,所述预设时间间隔大于所述第一处理器和所述第二处理器之间的最大数据传输时间。
进一步地,在上述装置实施例的基础上,所述相对发送时间为所述第二处理器根据第二基准时间点和发送时间点进行差值计算得到;
其中,所述第二基准时间点为所述第二处理器接收到所述定时中断信号时记录的时间点;
所述发送时间点为所述第二处理器发送所述传输数据时记录的时间点。
进一步地,在上述装置实施例的基础上,所述延迟计算模块503具体用于:
计算所述数据延迟时间DelayTime:
DelayTime=(T_period+T_receive–T_sent)%T_period
其中,T_period为所述预设时间间隔,T_receive为所述相对接收时间,T_sent为所述相对发送时间,%为取模运算符号。
本实施例所述的多处理器间的数据延迟时间计算装置可以用于执行上述方法实施例,其原理和技术效果类似,此处不再赘述。
参照图6,所述电子设备,包括:处理器(processor)601、存储器(memory)602和总线603;
其中,
所述处理器601和存储器602通过所述总线603完成相互间的通信;
所述处理器601用于调用所述存储器602中的程序指令,以执行上述各方法实施例所提供的方法。
本实施例公开一种计算机程序产品,所述计算机程序产品包括存储在非暂态计算机可读存储介质上的计算机程序,所述计算机程序包括程序指令,当所述程序指令被计算机执行时,计算机能够执行上述各方法实施例所提供的方法。
本实施例提供一种非暂态计算机可读存储介质,所述非暂态计算机可读存储介质存储计算机指令,所述计算机指令使所述计算机执行上述各方法实施例所提供的方法。
以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分所述的方法。
应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。
Claims (10)
1.一种多处理器间的数据延迟时间计算方法,其特征在于,包括:
第一处理器若接收到定时中断信号,则记录当前的第一基准时间点;
若接收到第二处理器发送的传输数据,则记录当前的接收时间点,并解析所述传输数据得到所述第二处理器的相对发送时间;
根据所述第一基准时间点、所述接收时间点和所述相对发送时间计算得到所述第一处理器和所述第二处理器的数据延迟时间;
其中,所述定时中断信号为可编程逻辑器件根据预设时间间隔发送给各处理器的中断信号;
所述相对发送时间为所述第二处理器根据第二基准时间点和发送时间点进行差值计算得到;
其中,所述第二基准时间点为所述第二处理器接收到所述定时中断信号时记录的时间点;
所述发送时间点为所述第二处理器发送所述传输数据时记录的时间点。
2.根据权利要求1所述的多处理器间的数据延迟时间计算方法,其特征在于,所述根据所述第一基准时间点、所述接收时间点和所述相对发送时间计算得到所述第一处理器和所述第二处理器的数据延迟时间,具体包括:
计算所述第一基准时间点和所述接收时间点的差值,得到所述第一处理器接收到所述传输数据的相对接收时间;
计算所述相对接收时间和所述相对发送时间的差值,得到所述第一处理器和所述第二处理器的数据延迟时间。
3.根据权利要求1所述的多处理器间的数据延迟时间计算方法,其特征在于,所述预设时间间隔大于所述第一处理器和所述第二处理器之间的最大数据传输时间。
4.根据权利要求2所述的多处理器间的数据延迟时间计算方法,其特征在于,所述计算所述相对接收时间和所述相对发送时间的差值,得到所述第一处理器和所述第二处理器的数据延迟时间,具体包括:
计算所述数据延迟时间DelayTime:
DelayTime=(T_period+T_receive–T_sent)%T_period
其中,T_period为所述预设时间间隔,T_receive为所述相对接收时间,T_sent为所述相对发送时间,%为取模运算符号。
5.一种多处理器间的数据延迟时间计算装置,其特征在于,包括:
基准记录模块,用于若接收到定时中断信号,则记录当前的第一基准时间点;
时间解析模块,用于若接收到第二处理器发送的传输数据,则记录当前的接收时间点,并解析所述传输数据得到所述第二处理器的相对发送时间;
延迟计算模块,用于根据所述第一基准时间点、所述接收时间点和所述相对发送时间计算得到第一处理器和所述第二处理器的数据延迟时间;
其中,所述定时中断信号为可编程逻辑器件根据预设时间间隔发送给各处理器的中断信号;
所述相对发送时间为所述第二处理器根据第二基准时间点和发送时间点进行差值计算得到;
其中,所述第二基准时间点为所述第二处理器接收到所述定时中断信号时记录的时间点;
所述发送时间点为所述第二处理器发送所述传输数据时记录的时间点。
6.根据权利要求5所述的多处理器间的数据延迟时间计算装置,其特征在于,所述延迟计算模块具体用于:
计算所述第一基准时间点和所述接收时间点的差值,得到所述第一处理器接收到所述传输数据的相对接收时间;
计算所述相对接收时间和所述相对发送时间的差值,得到所述第一处理器和所述第二处理器的数据延迟时间。
7.根据权利要求5所述的多处理器间的数据延迟时间计算装置,其特征在于,所述预设时间间隔大于所述第一处理器和所述第二处理器之间的最大数据传输时间。
8.根据权利要求6所述的多处理器间的数据延迟时间计算装置,其特征在于,所述延迟计算模块具体用于:
计算所述数据延迟时间DelayTime:
DelayTime=(T_period+T_receive–T_sent)%T_period
其中,T_period为所述预设时间间隔,T_receive为所述相对接收时间,T_sent为所述相对发送时间,%为取模运算符号。
9.一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现如权利要求1至4任一所述的多处理器间的数据延迟时间计算方法。
10.一种非暂态计算机可读存储介质,其上存储有计算机程序,其特征在于,该计算机程序被处理器执行时实现如权利要求1至4任一所述的多处理器间的数据延迟时间计算方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910750290.4A CN112395231B (zh) | 2019-08-14 | 2019-08-14 | 一种多处理器间的数据延迟时间计算方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910750290.4A CN112395231B (zh) | 2019-08-14 | 2019-08-14 | 一种多处理器间的数据延迟时间计算方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112395231A CN112395231A (zh) | 2021-02-23 |
CN112395231B true CN112395231B (zh) | 2023-09-29 |
Family
ID=74601417
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910750290.4A Active CN112395231B (zh) | 2019-08-14 | 2019-08-14 | 一种多处理器间的数据延迟时间计算方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112395231B (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113050752B (zh) * | 2021-03-29 | 2023-02-21 | 中车青岛四方车辆研究所有限公司 | 用于两个中央处理器时间同步的方法和存储介质 |
CN114172609A (zh) * | 2021-12-06 | 2022-03-11 | 深圳益邦阳光有限公司 | 一种数据传输方法、装置、设备及介质 |
CN116722962B (zh) * | 2022-09-05 | 2024-07-12 | 荣耀终端有限公司 | 中断处理方法、通信装置、通信设备及芯片*** |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6480966B1 (en) * | 1999-12-07 | 2002-11-12 | International Business Machines Corporation | Performance monitor synchronization in a multiprocessor system |
CN102571317A (zh) * | 2012-01-06 | 2012-07-11 | 江海 | 软件无线电***中基于pci总线的数据同步方法及*** |
CN109933418A (zh) * | 2019-03-25 | 2019-06-25 | 联想(北京)有限公司 | 一种时间戳同步方法、电子设备及异构设备 |
-
2019
- 2019-08-14 CN CN201910750290.4A patent/CN112395231B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6480966B1 (en) * | 1999-12-07 | 2002-11-12 | International Business Machines Corporation | Performance monitor synchronization in a multiprocessor system |
CN102571317A (zh) * | 2012-01-06 | 2012-07-11 | 江海 | 软件无线电***中基于pci总线的数据同步方法及*** |
CN109933418A (zh) * | 2019-03-25 | 2019-06-25 | 联想(北京)有限公司 | 一种时间戳同步方法、电子设备及异构设备 |
Also Published As
Publication number | Publication date |
---|---|
CN112395231A (zh) | 2021-02-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112395231B (zh) | 一种多处理器间的数据延迟时间计算方法及装置 | |
US9519306B2 (en) | Distribution device, distribution system, and distribution method | |
US8738792B2 (en) | Server time protocol messages and methods | |
CN110492965B (zh) | 一种主从***内串行报文对时的方法和装置 | |
CN111585682B (zh) | 传感器时间同步方法、装置及终端设备 | |
CN104641589B (zh) | 校正参数计算装置及时刻同步***、以及校正参数计算方法 | |
CN107947888B (zh) | 一种基于网络通信的任务级同步方法 | |
JP6465787B2 (ja) | データ処理装置、デバイス、データ処理方法及びデータ処理プログラム | |
CN101951300B (zh) | 一种实现以太网精确对时的方法 | |
US9882705B2 (en) | Communication apparatus, communication method, and computer readable medium using propagation delay for time synchronization | |
CN114138054A (zh) | 一种时间戳获取方法、装置、电子设备及存储介质 | |
CN116684028B (zh) | 一种多传感器时间同步方法、装置、设备及存储介质 | |
US11349586B2 (en) | Time stamping method, time stamping apparatus and program | |
CN114500317B (zh) | 综合检测列车时钟同步网络测试方法及装置 | |
Okabe et al. | Avoiding year 2038 problem on 32-bit linux by rewinding time on clock synchronization | |
JP6310758B2 (ja) | 時刻同期装置および方法 | |
CN113204516A (zh) | 处理器时间同步的方法和装置 | |
CN104092509A (zh) | 时间数据处理方法、装置及*** | |
CN104954630B (zh) | 视频时间戳获取方法、视频处理设备及视频*** | |
CN111106890B (zh) | 一种进行时间同步的方法和设备 | |
CN117596219A (zh) | 一种数据传输的方法、装置、设备及存储介质 | |
CN116429097A (zh) | 自动驾驶惯性测量单元同步***、方法、设备及存储介质 | |
CN117997463A (zh) | 时间同步测试方法、电子设备及存储介质 | |
CN117811687A (zh) | 用于多个操作***时间同步的***与方法 | |
CN117879747A (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 |