一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

双系统的延时时间的确定方法、装置及终端设备与流程

2022-11-19 10:26:13 来源:中国专利 TAG:


1.本发明涉及数据传输技术领域,特别是涉及一种双系统的延时时间的确定方法、装置及终端设备。


背景技术:

2.在终端设备中为了降低设备的功耗,采取双系统模式,其中第一系统负责处理终端设备内部的运行,第二系统负责处理终端设备的外接设备的数据输入。若终端设备与外接设备处于断开状态时,则第二系统处于休眠状态以实现降低功耗,若终端设备与外接设备处于连接状态时,可以通过其中第一系统唤醒第二系统进行工作,无论双系统的工作状态如何,其双系统的数据保持同步的状态。
3.现有的终端设备内,若第一系统将数据传输至第二系统时,为了保持双系统的时间同步,通过第一系统向第二系统传输数据包的发送时间戳和接收时间戳确定延时时间。仅是通过单向传输确定的延时时间,若第一系统由于自身出现延迟,延时时间是建立在延迟的第一系统基础上确定,具有偶然性因素,无法保证真实性。若两侧系统在传输过程中,单向传输协议在传输过程中出现延迟,其第二系统接收数据包的系统会在接收数据包的过程中增加延迟时间,对应两侧系统的延时时间增加,导致延时时间的精确度降低。
4.因此,如何提高双系统的延时时间的精确度是本领域技术人员亟需要解决的。


技术实现要素:

5.本发明的目的是提供一种双系统的延时时间的确定方法、装置及终端设备,有效规避现有的通过单向传输确定的延时时间存在误差的问题,提高延时时间的精确度。
6.为解决上述技术问题,本发明提供一种双系统的延时时间的确定方法,应用于终端设备,包括:
7.获取双系统内的传输数据的时间戳,其中时间戳至少包括一组从第一系统向第二系统传输数据包的第一时间戳和第二时间戳、一组从第二系统向第一系统传输应答数据包的第三时间戳和第四时间戳;
8.根据各组的各时间戳之间的对应关系确定各时间戳差值;
9.当各时间戳差值满足预设条件时,则根据各时间戳差值与预设条件的关系,确定双系统的延时策略以得到延时时间。
10.优选地,从第一系统向第二系统传输数据包的第一时间戳和第二时间戳的建立过程包括以下步骤:
11.获取第一系统的数据包,记录数据包的发送时间为第一时间戳;
12.控制第一系统将数据包发送至第二系统;
13.控制第二系统记录数据包的接收完成时间为第二时间戳;
14.对应地,从第二系统向第一系统传输应答数据包的第三时间戳和第四时间戳的建立过程包括以下步骤:
15.控制第二系统根据数据包生成应答数据包的响应帧,记录响应帧的发送时间为第三时间戳,将响应帧、第二时间戳和第三时间戳发送至第一系统;
16.控制第一系统记录响应帧、第二时间戳和第三时间戳的接收完成时间为第四时间戳。
17.优选地,根据各组的各时间戳之间的对应关系确定各时间戳差值,包括:
18.将第一时间戳与第二时间戳作差得到第一差值;
19.将第三时间戳与第四时间戳作差得到第二差值。
20.优选地,预设条件为第一差值与第二差值不同,根据各时间戳差值与预设条件的关系,确定双系统的延时策略以得到延时时间,包括:
21.判断第一差值与第二差值是否相同;
22.若不同,则确定双系统的延时状态为传输时延;
23.将第一时间戳与第四时间戳作差得到第三差值;
24.将第二时间戳与第三时间戳作差得到第四差值;
25.将第三差值与第四差值作差得到双系统的第一双向延时时间;
26.将第一双向延时时间除以2以确定双系统的第一单向延时时间;
27.将第一单向延时时间作为双系统的延时时间。
28.优选地,时间戳还包括一组从第一系统向第二系统传输数据包的第五时间戳和第六时间戳,预设条件为第一差值与第五差值不同,其中第五时间戳与第一时间戳不同,第五差值由第五时间戳和第六时间戳作差得到,根据各时间戳差值与预设条件的关系,确定双系统的延时策略以得到延时时间,包括:
29.判断第一差值与第五差值是否相同;
30.若不同,则确定双系统的延时状态为发送时延;
31.将第一差值、第二差值与第五差值作平均处理得到双系统的延时时间。
32.优选地,时间戳包括两组从第一系统向第二系统对应传输数据包的第一时间戳和第二时间戳、两组从第二系统向第一系统对应传输应答数据包的第三时间戳和第四时间戳,预设条件为其中一组的第一差值与第二差值不同,且与另一组的第一差值不同,根据各时间戳差值与预设条件的关系,确定双系统的延时策略以得到延时时间,包括:
33.判断其中一组的第一差值与对应的第二差值是否相同;
34.若其中一组的第一差值与对应的第二差值不同,则判断其中一组的第一差值与另外一组的第一差值是否相同;
35.若其中一组的第一差值与另外一组的第一差值不同,则确定双系统的延时状态为传输时延和发送时延;
36.将两组分别对应的第一时间戳与第四时间戳作差得到第三差值;
37.将两组分别对应的第二时间戳与第三时间戳作差得到第四差值;
38.将各组对应的第三差值与第四差值作差得到双系统的第一双向延时时间一确定双系统的第一单向延时时间;
39.将各组的第一单向延时时间平均处理得到双系统的延时时间。
40.优选地,从第一系统向第二系统传输数据包的传输协议与第二系统向第一系统传输应答数据包的传输协议相同,且传输协议为spi通讯协议或i2c通讯协议。
41.优选地,在确定延时时间后,还包括:
42.将延时时间发送至终端设备的内核处;
43.控制input子系统将内核处的延时时间发送至终端设备的显示装置以进行显示。
44.为解决上述技术问题,本发明还提供一种双系统的延时时间的确定装置,包括:
45.获取装置,用于获取双系统内的传输数据的时间戳,其中时间戳至少包括一组从第一系统向第二系统传输数据包的第一时间戳和第二时间戳、一组从第二系统向第一系统传输应答数据包的第三时间戳和第四时间戳;
46.第一确定模块,用于根据各组的各时间戳之间的对应关系确定各时间戳差值;
47.第二确定模块,用于当各时间戳差值满足预设条件时,则根据各时间戳差值与预设条件的关系,确定双系统的延时策略以得到延时时间。
48.为解决上述技术问题,本发明还提供一种终端设备,包括:
49.存储器,用于存储计算机程序;
50.处理器,用于执行计算机程序时实现如上述双系统的延时时间的确定方法的步骤。
51.本发明提供的一种双系统的延时时间的确定方法,应用于终端设备,包括:获取双系统内的传输数据的时间戳,其中时间戳至少包括一组从第一系统向第二系统传输数据包的第一时间戳和第二时间戳、一组从第二系统向第一系统传输应答数据包的第三时间戳和第四时间戳;根据各组的各时间戳之间的对应关系确定各时间戳差值;当各时间戳差值满足预设条件时,则根据各时间戳差值与预设条件的关系,确定双系统的延时策略以得到延时时间。该方法通过获取从第一系统向第二系统传输数据包的时间戳,与从第二系统向第一系统传输应答数据包的时间戳记录,实现双向传输,根据第一时间戳、第二时间戳、第三时间戳和第四时间戳的对应关系确定各时间戳差值,当各所述时间戳差值满足预设条件时,则根据时间戳差值与预设条件的关系确定其延时策略以得到延时时间。有效规避现有的通过单向传输确定的延时时间存在误差的问题,提高延时时间的精确度。
52.另外,本发明还提供了一种双系统的延时时间的确定装置及终端设备,具有如上述双系统的延时时间的确定方法相同的有益效果。
附图说明
53.为了更清楚地说明本发明实施例,下面将对实施例中所需要使用的附图做简单的介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
54.图1为本发明实施例提供的一种双系统的延时时间的确定方法的流程图;
55.图2为本发明实施例提供的双系统内传输数据的两组时间戳的示意图;
56.图3为本发明实施例提供的一种双系统的延时时间的确定装置的结构图;
57.图4为本发明实施例提供的一种终端设备的结构图。
具体实施方式
58.下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部实施例。基于本
发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下,所获得的所有其他实施例,都属于本发明保护范围。
59.本发明的核心是提供一种双系统的延时时间的确定方法、装置及终端设备,有效规避现有的通过单向传输确定的延时时间存在误差的问题,提高延时时间的精确度。
60.为了使本技术领域的人员更好地理解本发明方案,下面结合附图和具体实施方式对本发明作进一步的详细说明。
61.需要说明的是,本发明提供的双系统的延时时间的确定方法,适用于双系统的终端设备,其终端设备可以是可穿戴设备(耳机、智能手环、智能手表、增强现实设备(augmented reality,ar)或虚拟现实(virtual reality,vr)等),也可以是智能手机、笔记本电脑等,在此不做具体限定,可根据实际情况进行设定终端设备的设备类型等。
62.图1为本发明实施例提供的一种双系统的延时时间的确定方法的流程图,如图1所示,应用于终端设备,该方法包括:
63.s11:获取双系统内的传输数据的时间戳,其中时间戳至少包括一组从第一系统向第二系统传输数据包的第一时间戳和第二时间戳、一组从第二系统向第一系统传输应答数据包的第三时间戳和第四时间戳;
64.s12:根据各组的各时间戳之间的对应关系确定各时间戳差值;
65.s13:当各时间戳差值满足预设条件时,则根据各时间戳差值与预设条件的关系,确定双系统的延时策略以得到延时时间。
66.具体地,获取双系统内的传输数据的时间戳,双系统内传输数据,可以为传输数据包、传输报文信息或者传输帧等数据,其双系统包括第一系统和第二系统。相较于现有技术,时间戳包括两个传输方向,一个传输方向为第一系统向第二系统传输数据包的第一时间戳和第二时间戳,另一个传输方向与上述的传输方向相反,具体为第二系统向第一系统传输应答数据包的第三时间戳和第四时间戳,其中应答数据包生成对应的响应帧。
67.关于双系统中哪侧系统发送数据包或者哪侧系统发送响应帧本发明不做具体限定,无论哪侧系统,其最后的时间戳为两个传输方向的时间戳记录。其响应帧为当前组内的接收数据包的系统根据接收完数据包后生成的响应帧,以便于发送数据包的第一系统得知该数据包已经成功发送至第二系统。
68.需要说明的是,为了完整记录整个数据包发送的过程,其第二系统在接收到整个数据包其结束的时刻作为第二时间戳,具体地,从第一系统向第二系统传输数据包的第一时间戳和第二时间戳的建立过程包括以下步骤:
69.获取第一系统的数据包,记录数据包的发送时间为第一时间戳;
70.控制第一系统将数据包发送至第二系统;
71.控制第二系统记录数据包的接收完成时间为第二时间戳;
72.对应地,从第二系统向第一系统传输应答数据包的第三时间戳和第四时间戳的建立过程包括以下步骤:
73.控制第二系统根据数据包生成应答数据包的响应帧,记录响应帧的发送时间为第三时间戳,将响应帧、第二时间戳和第三时间戳发送至第一系统;
74.控制第一系统记录响应帧、第二时间戳和第三时间戳的接收完成时间为第四时间戳。
75.图2为本发明实施例提供的双系统内传输数据的两组时间戳的示意图,如图2所示,终端设备1的双系统为a和b两个系统,从a系统中发送数据包至b系统,在第一时间戳发送数据包,到b系统接收数据包结束的时刻为第二时间戳,b系统根据接收到的数据包生成对应的响应帧,发送至a系统,由于a、b系统仅是知道自己的本地系统中接收发送的时间戳,故在b系统中,将第二时间戳与下一个时间戳(发送响应帧的时刻)连同响应帧发送至a系统,以便a系统得知b系统已经成功接收到数据包的消息。在a系统接收到响应帧结束的时刻作为第四时间戳。
76.在步骤s12中的,根据各组的各时间戳之间的对应关系确定各时间戳差值,也就是说,当前的两组内的四个时间戳,各时间戳可以得到对应的时间戳差值。
77.当各时间戳差值满足与预设条件时,根据各时间戳差值与预设条件的关系,确定双系统的延时策略,具体地,延时策略针对于不同的预设条件设置不同的策略以得到对应的延时时间。时延是指一个报文或分组从一个网络的一端传送到另一端所需要的时间,双系统同理,时延包括发送时延、传输时延、处理时延和排队时延,一般发送时延和传输时延是主要考虑的内容。对于报文长度较大的情况,发送时延是主要矛盾,报文长度较小的情况,传播时延是主要矛盾。
78.发送时延存在的情况可能是负责发送数据包的第一系统在初始化过程中未结束产生的延时,导致在后续第二系统接收数据包结束后的时刻(第二时间戳)同样出现延时。传输时延基于单向传输协议过程中出现的延时,例如a系统到b系统的单向传输存在延时,但是b系统到a系统的单向传输没有发生延时。
79.基于上述的时延不同,其确定的延时时间策略也不同,故需要查看各时间戳差值满足何种预设条件即可。
80.本发明提供的一种双系统的延时时间的确定方法,应用于终端设备,包括:获取双系统内的传输数据的时间戳,其中时间戳至少包括一组从第一系统向第二系统传输数据包的第一时间戳和第二时间戳、一组从第二系统向第一系统传输应答数据包的第三时间戳和第四时间戳;根据各组的各时间戳之间的对应关系确定各时间戳差值;当各时间戳差值满足预设条件时,则根据各时间戳差值与预设条件的关系,确定双系统的延时策略以得到延时时间。该方法通过获取从第一系统向第二系统传输数据包的时间戳,与从第二系统向第一系统传输应答数据包的时间戳记录,实现双向传输,根据第一时间戳、第二时间戳、第三时间戳和第四时间戳的对应关系确定各时间戳差值,当各所述时间戳差值满足预设条件时,则根据时间戳差值与预设条件的关系确定其延时策略以得到延时时间。有效规避现有的通过单向传输确定的延时时间存在误差的问题,提高延时时间的精确度。
81.在上述实施例的基础上,步骤s12中的根据各组的各时间戳之间的对应关系确定各时间戳差值,包括:
82.将第一时间戳与第二时间戳作差得到第一差值;
83.将第三时间戳与第四时间戳作差得到第二差值。
84.为了便于后续的计算,其时间戳差值基于各自单侧系统的本地系统来说,本地系统仅是知道自己的时间戳信息,故在此基础上,站在终端设备的中央处理器(central processing unit,cpu)角度,将第一系统的第一时间戳与第二系统的第二时间戳作差值得到第一差值,将第二系统的第三时间戳与第一系统的第四时间戳作差得到第二差值。
85.本发明实施例提供的将第一时间戳与第二时间戳作差得到第一差值;将第三时间戳与第四时间戳作差得到第二差值。便于后续预设条件的满足情况以及确定的延时时间。
86.在上述实施例的基础上,预设条件为第一差值与第二差值不同,步骤s13中的根据各时间戳差值与预设条件的关系,确定双系统的延时策略以得到延时时间,包括:
87.判断第一差值与第二差值是否相同;
88.若不同,则确定双系统的延时状态为传输时延;
89.将第一时间戳与第四时间戳作差得到第三差值;
90.将第二时间戳与第三时间戳作差得到第四差值;
91.将第三差值与第四差值作差得到双系统的第一双向延时时间;
92.将第一双向延时时间除以2以确定双系统的第一单向延时时间;
93.将第一单向延时时间作为双系统的延时时间。
94.具体地,判断第一差值与第二差值是否相同,若相同,则确定其第一系统与第二系统之间的传输协议出现延时,故双系统的延时状态为传输时延。其延时策略为传输时延的延时时间策略。基于各自系统的本地系统,对于第一系统来说,将第一时间戳t1与第四时间戳t4作差得到第三差值;对于第二系统来说,将第二时间戳t2与第三时间戳t3作差得到第四差值。进而第三差值与第四差值作差得到第一双向延时时间(t4-t1)-(t3-t2)。再次确定单向延时时间,除2即:[(t4-t1)-(t3-t2)]/2得到双系统的延时时间。
[0095]
本发明实施例提供的双向传输的四个时间戳,有效规避现有的通过单向传输确定的延时时间存在误差的问题,提高延时时间的精确度。
[0096]
在上述实施例的基础上,时间戳还包括一组从第一系统向第二系统传输数据包的第五时间戳和第六时间戳,预设条件为第一差值与第五差值不同,其中第五时间戳与第一时间戳不同,第五差值由第五时间戳和第六时间戳作差得到,根据各时间戳差值与预设条件的关系,确定双系统的延时策略以得到延时时间,包括:
[0097]
判断第一差值与第五差值是否相同;
[0098]
若不同,则确定双系统的延时状态为发送时延;
[0099]
将第一差值、第二差值与第五差值作平均处理得到双系统的延时时间。
[0100]
具体地,时间戳包括两组从第一系统向第二系统传输数据包的时间戳,一组从第二系统向第一系统传输应答数据包(响应帧)的时间戳,需要说明的是,从第二系统向第一系统传输的响应帧可以针对从第一系统向第二系统传输数据包的两组中的任一组即可,不做具体限定,只要保证双系统的时间戳内存在两组双向传输的时间戳即可。
[0101]
第五时间戳与第六时间戳,是第一系统发送数据包开始的时刻记为第五时间戳,在第二系统接收到数据包结束后的时刻为第六时间戳。这里的数据包可以和上述实施例中的第一时间戳与第二时间戳之间的数据包的信息相同,也可以不同,在本实施例中仅仅是限定的数据的类型为数据包,与响应帧的报文信息作为区分。
[0102]
判断第一差值与第五差值是否相同,若不同,则说明从第一向第二发送的数据包的两组的发送时间不同,其出现发送时延。根据发送时延确定的延时策略确定延时时间,即将三个差值(第一差值、第二差值与第五差值)均值处理得到延时时间,即[(t2-t1) (t4-t3) (t6-t5)]/3。
[0103]
本发明实施例提供的双向传输的六个时间戳,有效规避现有的通过单向传输确定
的延时时间存在误差的问题,提高延时时间的精确度。
[0104]
在上述实施例的基础上,时间戳包括两组从第一系统向第二系统对应传输数据包的第一时间戳和第二时间戳、两组从第二系统向第一系统对应传输应答数据包的第三时间戳和第四时间戳,预设条件为其中一组的第一差值与第二差值不同,且与另一组的第一差值不同,根据各时间戳差值与预设条件的关系,确定双系统的延时策略以得到延时时间,包括:
[0105]
判断其中一组的第一差值与对应的第二差值是否相同;
[0106]
若其中一组的第一差值与对应的第二差值不同,则判断其中一组的第一差值与另外一组的第一差值是否相同;
[0107]
若其中一组的第一差值与另外一组的第一差值不同,则确定双系统的延时状态为传输时延和发送时延;
[0108]
将两组分别对应的第一时间戳与第四时间戳作差得到第三差值;
[0109]
将两组分别对应的第二时间戳与第三时间戳作差得到第四差值;
[0110]
将各组对应的第三差值与第四差值作差得到双系统的第一双向延时时间一确定双系统的第一单向延时时间;
[0111]
将各组的第一单向延时时间平均处理得到双系统的延时时间。
[0112]
具体地,为了提高延时时间的确定精度,时间戳包括两组从第一系统向第二系统对应传输数据包的第一时间戳和第二时间戳、两组从第二系统向第一系统对应传输应答数据包的第三时间戳和第四时间戳。即一组从第一系统向第二系统传输数据包的第一时间戳和第二时间戳、一组从第二系统向第一系统传输应答数据包的第三时间戳和第四时间戳,一组从第一系统向第二系统传输数据包的第五时间戳和第六时间戳,一组从第二系统传输应答数据包至第一系统的第七时间戳和第八时间戳。
[0113]
判断其中一组的第一差值与对应的第二差值是否相同,若不同,则确定双系统出现传输时延,进一步,判断其中一组的第一差值与另外一组的第一差值是否相同;即第一差值与第五时间戳、第六时间戳形成的第五差值是否相同,若不同,则确定双系统出现发送时延。
[0114]
进一步,本实施例中出现的四组双向传输的确定方法与上述实施例中出现的两组双向传输的确定方法相同,先计算各两组的延时时间,将两组的延时时间作平均处理得到双系统的延时时间。
[0115]
需要说明的是,本实施例仅是针对四组的时间戳计算,还可以存在大于四组的时间戳,即4的倍数,其计算方法相同,均是先计算每两组对应的延时时间,再平均处理得到双系统的延时时间,时间戳越多,其确定的延时时间越精准,当然还需要考虑当前终端设备的计算力,在此不做具体限定。
[0116]
本发明实施例提供的双向传输的八个时间戳,有效规避现有的通过单向传输确定的延时时间存在误差的问题,提高延时时间的精确度。
[0117]
在上述实施例的基础上,双向传输的过程中其用到的传输协议需要匹配相同,即从第一系统向第二系统传输数据包的传输协议与第二系统向第一系统传输应答数据包的传输协议相同,且传输协议为spi通讯协议或i2c通讯协议。
[0118]
具体地,若一组传输数据包为串行外设接口(serialperipheralinterface,spi)
array,pla)中的至少一种硬件形式来实现。处理器22也可以包括主处理器和协处理器,主处理器是用于对在唤醒状态下的数据进行处理的处理器,也称cpu;协处理器是用于对在待机状态下的数据进行处理的低功耗处理器。在一些实施例中,处理器22可以集成有图像处理器(graphics processing unit,gpu),gpu用于负责显示屏所需要显示的内容的渲染和绘制。一些实施例中,处理器22还可以包括人工智能(artificial intelligence,ai)处理器,该ai处理器用于处理有关机器学习的计算操作。
[0137]
存储器21可以包括一个或多个计算机可读存储介质,该计算机可读存储介质可以是非暂态的。存储器21还可包括高速随机存取存储器,以及非易失性存储器,比如一个或多个磁盘存储设备、闪存存储设备。本实施例中,存储器21至少用于存储以下计算机程序211,其中,该计算机程序被处理器22加载并执行之后,能够实现前述任一实施例公开的双系统的延时时间的确定方法的相关步骤。另外,存储器21所存储的资源还可以包括操作系统212和数据213等,存储方式可以是短暂存储或者永久存储。其中,操作系统212可以包括windows、unix、linux等。数据213可以包括但不限于双系统的延时时间的确定方法所涉及到的数据等等。
[0138]
在一些实施例中,终端设备还可包括有显示屏23、输入输出接口24、通信接口25、电源26以及通信总线27。
[0139]
领域技术人员可以理解,图4中示出的结构并不构成对终端设备的限定,可以包括比图示更多或更少的组件。
[0140]
处理器22通过调用存储于存储器21中的指令以实现上述任一实施例所提供的双系统的延时时间的确定方法。
[0141]
对于本发明提供的一种终端设备的介绍请参照上述方法实施例,本发明在此不再赘述,其具有上述双系统的延时时间的确定方法相同的有益效果。
[0142]
以上对本发明所提供的一种双系统的延时时间的确定方法、装置及终端设备进行了详细介绍。说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以对本发明进行若干改进和修饰,这些改进和修饰也落入本发明权利要求的保护范围内。
[0143]
还需要说明的是,在本说明书中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个
……”
限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
再多了解一些

本文用于创业者技术爱好者查询,仅供学习研究,如用于商业用途,请联系技术所有人。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献