CN108141293A - 用于使控制器和传感器同步的设备和方法 - Google Patents
用于使控制器和传感器同步的设备和方法 Download PDFInfo
- Publication number
- CN108141293A CN108141293A CN201680061482.9A CN201680061482A CN108141293A CN 108141293 A CN108141293 A CN 108141293A CN 201680061482 A CN201680061482 A CN 201680061482A CN 108141293 A CN108141293 A CN 108141293A
- Authority
- CN
- China
- Prior art keywords
- sensor
- message
- time
- timing
- host controller
- 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.)
- Pending
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04J—MULTIPLEX COMMUNICATION
- H04J3/00—Time-division multiplex systems
- H04J3/02—Details
- H04J3/06—Synchronising arrangements
- H04J3/0635—Clock or time synchronisation in a network
- H04J3/0685—Clock or time synchronisation in a node; Intranode synchronisation
-
- 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04Q—SELECTING
- H04Q9/00—Arrangements in telecontrol or telemetry systems for selectively calling a substation from a main station, in which substation desired apparatus is selected for applying a control signal thereto or for obtaining measured values therefrom
- H04Q9/04—Arrangements for synchronous operation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04Q—SELECTING
- H04Q2209/00—Arrangements in telecontrol or telemetry systems
- H04Q2209/30—Arrangements in telecontrol or telemetry systems using a wired architecture
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04Q—SELECTING
- H04Q2209/00—Arrangements in telecontrol or telemetry systems
- H04Q2209/80—Arrangements in the sub-station, i.e. sensing device
- H04Q2209/84—Measuring functions
- H04Q2209/845—Measuring functions where the measuring is synchronized between sensing devices
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Theoretical Computer Science (AREA)
- Signal Processing (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Arrangements For Transmission Of Measured Signals (AREA)
- Information Transfer Systems (AREA)
- Electric Clocks (AREA)
Abstract
本发明公开用于以主机控制器发射传感器定时校正消息的方法和设备。所述方法和设备确定发射到经由接口与所述主机控制器耦合的传感器的同步消息,其中所述消息指示用于使所述主机控制器和所述传感器的定时同步的同步周期的开始。另外,确定延迟时间消息,其指示所述同步周期的所述开始与所述同步消息的实际发射时间之间的时间延迟。在信息消息中将所述同步消息与所述延迟时间消息一起发射到所述传感器,其中信息消息经配置以允许所述传感器通过考虑所述延迟时间来校正传感器定时器的定时。
Description
相关申请的交叉引用
本申请要求以下各案的优先权和权益:2015年10月23日在美国专利和商标局申请的标题为“使控制器和传感器同步的系统中的同步选取的校正(CORRECTION OF SYNC TICKIN A SYSTEM SYNCHRONIZING CONTROLLER AND SENSORS)”的第62/245,914号临时申请案;2015年10月23日在美国专利和商标局申请的标题为“使控制器和传感器同步的系统中实现对传感器时钟定时范围的可接受控制(ACHIEVING ACCEPTABLE CONTROL FOR THE RANGEOF SENSOR CLOCK TIMING IN A SYSTEM SYNCHRONIZING CONTROLLER AND SENSORS)”的第62/245,917号临时申请案;2015年10月23日在美国专利和商标局申请的标题为“使控制器和传感器同步的系统中的时戳开销的减少(REDUCTION OF TIME STAMP OVERHEAD IN ASYSTEM SYNCHRONIZING CONTROLLER AND SENSORS)”的第62/245,922号临时申请案;2015年10月23日在美国专利和商标局申请的标题为“用于异步事件的时戳(TIMESTAMP FORASYNCHRONOUS EVENT)”的第62/245,924号临时申请案;2016年8月30日在美国专利和商标局申请的标题为“通过使传感器同步而减少能量消耗的系统和方法(SYSTEM AND METHODSOF REDUCING ENERGY CONSUMPTION BY SYNCHRONIZING SENSORS)”的第15/251,757号非临时申请案;以及2016年10月20日在美国专利和商标局申请的标题为“用于使控制器和传感器同步的设备和方法(APPARATUS AND METHODS FOR SNYCHRONIZING A CONTROLLER ANDSENSORS)”的第15/299,382号非临时申请案,以上各案的全部内容以引用的方式并入本文。
技术领域
本文公开的主题涉及电子装置,且更具体地说,涉及用于使控制器和传感器同步的方法、设备和系统。
背景技术
现代的移动装置含有许多传感器。通常,提供数据处理单元、控制器、主机装置或主装置(下文简单地称为控制器或主机控制器)以接收并处理由传感器或从属单元(下文称为“传感器”)收集的数据。为了节约电力,当没有数据从传感器传送到控制器时使控制器有规律地处于睡眠状态。
通常利用将数据从传感器传送到控制器的两个方法。在称为异步方法的第一方法中,具有待传送的可用数据的传感器通过发出信号(例如,通过用于某些已知系统的专用DRI引脚的数据就绪中断(DRI)信号)而通知控制器,所述信号唤醒控制器,并且接着当控制器就绪时传感器传送数据。在称为同步方法的第二方法中,控制器在预定时间间隔自发地从睡眠状态醒来,轮询传感器,且从传感器接收传感器处存在的任何数据。同步方法在包括多个传感器的装置中更高效节能,因为从超过一个传感器的数据传送可以合并成单个轮询和传送会话。
在其中多个传感器或其它装置提供周期性取样数据的系统中,进一步有利的是能够指示传感器在基本上同步时间收集数据,以及控制器在同一清醒时间窗口或系统清醒周期内从若干传感器读取数据。理想的情况下,假定传感器仅递送最新的结果,在与传感器的取样频率一致的的频率下轮询传感器足以获得通过传感器收集的所有数据。然而,因为控制器和传感器通常不共享定时信号,且可能因此导致定时信号的未对准,所以即使是在传感器的取样频率下轮询传感器时,一些传感器数据样本也可能会丢失,而一些传感器数据样本可能被读取两次。所述现象因一些传感器具有不良的时钟或定时器精度(例如,跨温度范围且在装置之间的±15%偏差)这一事实而加剧。
发明内容
根据一方面,公开了以主机控制器实施的用于发射传感器定时校正消息的方法。所述方法包含确定同步消息,所述同步消息经配置以发射到传感器且指示用于使主机控制器和传感器的定时同步的同步周期的开始。还确定延迟时间消息,其中所述延迟时间消息经配置以指示同步周期的开始与同步消息的实际发射时间之间的时间延迟。所述方法进一步包含在信息消息中将所述同步消息与所述延迟时间消息一起发射到传感器,其中所述信息消息经配置以允许传感器校正传感器定时器的定时。
在另一方面中,公开了具有输送媒体接口的主机控制器装置,所述输送媒体接口经配置以经由至少一个输送媒体以通信方式耦合到至少一个传感器装置。所述主机控制器进一步包含至少一个处理电路,所述至少一个处理电路以通信方式耦合到所述输送媒体接口且经配置以确定同步消息,所述同步消息经配置以发射到传感器且指示用于使主机控制器和传感器的定时同步的同步周期的开始。所述至少一个处理电路进一步经配置以确定延迟时间消息,所述延迟时间消息经配置以指示同步周期的开始与同步消息的实际发射时间之间的时间延迟,且在信息消息中将同步消息与延迟时间消息一起发射到传感器,其中所述信息消息经配置以允许传感器校正传感器定时器的定时。
根据又一方面,公开了处理器可读存储媒体,其中所述媒体具有一或多个指令,所述一或多个指令当由至少一个处理电路执行时致使所述至少一个处理电路确定同步消息,所述同步消息经配置以在输送媒体上从主机控制器发射到传感器且指示用于使主机控制器和传感器的定时同步的同步周期的开始。所述指令进一步致使所述至少一个处理电路确定延迟时间消息,所述延迟时间消息经配置以指示同步周期的开始与同步消息的实际发射时间之间的时间延迟,且在信息消息中将同步消息与延迟时间消息一起发射到传感器,其中所述信息消息经配置以允许传感器校正传感器定时器的定时。
附图说明
图1是说明其中可实施本发明公开的方法和设备的示范性移动装置的框图。
图2是说明其中可实施本发明公开的方法和设备的示范性硬件环境的框图。
图3是说明用于使主机控制器和传感器定时器同步的示范性方法的流程图。
图4说明接口上的活动的示范性系统定时图。
图5说明示出接口上的同步程序的实例的时间线图。
图6说明示出通过考虑抖动和同步消息接发定时而设定轮询定时的时间线图。
图7说明用于发射传感器定时校正消息的示范性方法的流程图。
图8图示说明用于确定如图6中所图示的读取时间窗口的示范性方法800的流程图。
图9说明根据本公开的示范性主机控制器或主装置。
图10说明根据本公开的示范性从属或传感器装置。
图11是说明用于主机控制器的硬件实施方案的简化实例的图。
具体实施方式
在针对具体实施例的以下描述和相关附图中公开所公开的方法和设备的方面。可在不脱离本公开范围的情况下设计替代性实施例。另外,可以不详细描述或可以省略众所周知的元件,以免混淆本公开的相关细节。
此外,词“示范性”在本文中用以意味着“充当实例、例子或说明”。在本文中被描述为“示范性”的任何实施例未必被理解为比其它实施例优选或有利。同样,术语“实施例”并不要求所有实施例均包含所论述特征、优势或操作模式。
本文中所使用的术语仅出于描述特定实施例的目的,且并不意图限制本发明的实施例。如本文所使用,单数形式“一”和“所述”希望还包括复数形式,除非上下文另外清楚地指示。应进一步理解,术语“包括(comprises、comprising)”及/或“包含(includes、including)”当在本文中使用时指定所陈述的特征、整数、步骤、操作、元件及/或组件的存在,但并不排除一或多个其它特征、整数、步骤、操作、元件、组件及/或其群组的存在或添加。
此外,在将由例如计算装置(例如,服务器或装置)的元件执行的动作序列方面描述许多实施例。将认识到,本文所描述的各种动作可通过特定电路(例如,专用集成电路)、通过由一或多个处理器正执行的程序指令或通过两者的组合而执行。另外,可认为本文中所描述的这些动作序列完全体现于任何形式的计算机可读存储媒体内,所述计算机可读存储媒体中存储有一组对应的计算机指令,所述计算机指令在被执行时将使得相关联的处理器执行本文中所描述的功能性。因此,本发明的各种方面可以数个不同形式来体现,预期所有形式属于所主张的标的物的范围内。另外,对于本文中所描述的实施例中的每一个来说,任何此类实施例的对应形式可在本文中被描述为(例如)“经配置以执行所描述的动作的逻辑”。
图1是说明可在其中实践本发明的实施例的示范性移动装置的框图。所述系统可为装置(例如,装置100),其可包含一或多个处理器101、存储器105、I/O控制器125和网络接口110。装置100还可包含耦合到一或多个总线或信号线的若干装置传感器,所述总线或信号线进一步耦合到处理器101。应了解,装置100还可包含显示器120、用户接口(例如,键盘、触摸屏或相似装置)、电力装置121(例如,电池),以及通常与电子装置相关联的其它组件。在一些实施例中,装置100可为移动或非移动装置。本文中可互换地使用“处理器”和“数据处理单元”。
所述装置(例如,装置100)可包含传感器,例如,环境光传感器(ALS)135、加速度计140、陀螺仪145、磁力计150、温度传感器151、气压传感器155、红-绿-蓝(RGB)传感器152、紫外线(UV)传感器153、UV-A传感器、UV-B传感器、指南针、近程传感器167、近场通信(NFC)169和/或全球定位传感器(GPS)160。在一些实施例中,多个相机集成或接入到装置。举例来说,移动装置可具有至少一前部和后部安装的相机。在一些实施例中,其它传感器也可具有多个安装或版本。
存储器105可耦合到处理器101以存储指令供处理器101执行。在一些实施例中,存储器105为非瞬时的。存储器105还可存储一或多个模型或模块以实施下文描述的实施例。存储器105还可存储来自集成的或外部的传感器的数据。
网络接口110还可以耦合到若干无线子系统115(例如,蓝牙166、WiFi 111、蜂窝式161或其它网络)以经由无线链路将数据流发射到无线网络/从无线网络接收数据流,或可为用于直接连接到网络(例如,因特网、以太网或其它有线或无线系统)的有线接口。移动装置可包含连接到一或多个天线(未图示)的一或多个局域网收发器。局域网收发器包括适当的装置、硬件和/或软件,以用于与无线AP通信和/或检测至无线AP/来自无线AP的信号,和/或与网络内的其它无线装置直接通信。在一个方面中,局域网收发器可包括适于与一或多个无线接入点通信的WiFi(802.11x)通信系统。
装置100还可包含可连接到一或多个天线的一或多个广域网收发器。广域网收发器包括用于与网络内的其它无线装置通信和/或检测至/来自所述其它无线装置的信号的合适装置、硬件和/或软件。在一个方面中,广域网收发器可包括适合与无线基站的CDMA网络通信的CDMA通信系统;然而在其它方面,无线通信系统可包括另一类型的蜂窝电话网络或毫微微小区,例如,TDMA、LTE、高级LTE、WCDMA、UMTS、4G、5G或GSM。另外,可使用任何其它类型的无线连网技术,例如,WiMax(802.16)、超宽带、ZigBee、无线USB等等。
另外,装置100可为移动装置、无线装置、手机、个人数字助理、移动计算机、可穿戴式装置(例如,头戴式显示器、虚拟现实眼镜等)、机器人导航系统、平板计算机、个人计算机、膝上型计算机,或具有处理和/或通信能力的任何类型的装置。如本文所使用,移动装置可为可配置以获取从一或多个无线通信装置或网络发射的无线信号且向一或多个无线通信装置或网络发射无线信号的任何便携式或可移动装置或机器。因此,举例来说但非限制,装置100可包含无线电装置、蜂窝式电话装置、计算装置、个人通信系统装置、或其它相似的配备可移动无线通信的装置、器具或机器。以上的任何可操作组合也被视为“移动装置”。
此外,移动装置100可使用RF信号(例如,2.4GHz、3.6GHz和4.9/5.0GHz频带)以及用于RF信号的调制和信息包交换(例如,IEEE 802.11x)的标准化协议与多个无线接入点(AP)、NodeB、eNodeB、基站等无线地通信。
应了解,如下文将描述的实例可以通过由装置100的处理器101和/或装置100的其它电路执行例如存储于存储器105或其它元件中的指令等指令来实施。具体来说,装置100的电路,包含但不限于处理器101,可在程序、例程或指令执行的控制下操作以执行根据本发明的实施例的方法或过程。举例来说,此程序可以固件或软件实施(例如,存储于存储器105中和/或其它位置)且可由例如处理器101等处理器和/或装置的其它电路实施。此外,应了解,术语处理器、微处理器、电路、控制器等可指能够执行逻辑、命令、指令、软件、固件、功能性等的任何类型的逻辑或电路。
此外,应了解,本文描述的一些或所有功能、引擎或模块可由装置本身执行,且/或本文描述的一些或所有功能、引擎或模块可由通过I/O控制器125或网络接口110(无线方式或有线方式)连接到装置的另一系统执行。因此,所述功能中的一些和/或全部可由另一系统执行,且结果或中间计算可传送回到装置100。在一些实施例中,这些其它装置可包含经配置以实时或近实时地处理信息的服务器。在一些实施例中,另一装置经配置以例如基于装置的已知配置预先确定结果。此外,图1中说明的元件中的一个或多个可从装置100省略。举例来说,可以在一些实施例中省略传感器130-165中的一个或多个。
图2是说明其中可实践本公开的方面的示范性硬件环境200的框图。可提供主机控制器205(或主装置)以接收并处理从传感器210(或将取样数据提供到主机或主装置的任何其它装置)传送的数据样本以及其它功能。在一实例中,主机控制器205可由装置100的处理器101实施或实施于所述处理器内,但不限于此情况且可与处理器101分开实施。传感器210可以是任何类型的传感器,例如上文描述的那些,或收集且发送取样数据的任何装置。本发明所公开的实施例不受传感器数目的限制,且更多传感器(未图示)可以存在。在一些实施例中,主机控制器205可被提供来自时钟207的时钟或定时器信号。在其它实施例中,内部时钟产生器可以随控制器205嵌入。传感器210包含内部定时器产生器215,其产生定时器信号以用于对传感器210的样本收集和发射进行定时。数据连接、总线或接口217链接处理器101与传感器210且尤其允许主机控制器205与传感器210之间的数据传送的定时。在图2中示出的实例中,数据连接可为IC间总线(I2C总线)或I3C总线,其包含串行数据(SDA)线220和串行时钟(SCL)线230。SDA线220和SCL线230两者可以用上拉电阻器(未图示)上拉。I2C或I3C总线的操作是此项技术中已知的,且此处为了简洁而将不详细地描述。
数据连接也可为通用异步接收器/发射器(UART)连接、串行外围接口(SPI)总线、系统管理总线(SMBus)、串行低功率芯片间媒体总线(SLIMbusTM)、SoundWire总线、无线接口。在一些实施例中,传感器210可具有数据就绪中断(DRI)引脚,其可经由DRI线240连接到控制器205。在其中存在多于一个传感器的实施例中,来自多个传感器的DRI线可以在连接到处理器101之前经多路复用。在一些其它实施例中,除DRI引脚之外或替代于DRI引脚,传感器210可以具有专用时钟校正引脚,其可经由时钟校正线250连接到处理器101。
计算装置100可包括包含或耦合到传感器定时器215的传感器210以及包含或耦合到时钟或定时器207的主机控制器205以:第一次校正传感器定时器215,从传感器210传送数据,以及第二次校正传感器定时器215,其中可以选择传感器定时器215的两次校正之间的时间间隔以使得传感器定时器215在所述时间间隔上与主机控制器定时器207充分对准。
通常利用将数据从传感器210传送到主机控制器205的两个方法。在又称为异步方法的第一方法中,具有待传送的可用数据的传感器210可以通过经由专用的数据就绪中断(DRI)引脚发出DRI信号来通知主机控制器205,这将处理器从睡眠状态唤醒,并在处理器准备好数据传送时传送数据。在又称为同步方法的第二方法中,主机控制器205可以预定时间间隔自发地从睡眠状态醒来,并且可以轮询传感器210以接收数据。同步方法在包括多个传感器的装置中更高效节能,因为从超过一个传感器的数据传送可以合并成单个轮询和传送会话。
理想的情况下,假定传感器仅递送最新的结果,在与传感器的取样频率一致的的频率下轮询传感器足以获得通过传感器收集的所有数据。然而,因为主机控制器205和传感器210并不通常共享时钟或定时信号且可能导致相应定时器的定时未对准,所以即使在传感器的取样频率下轮询传感器210时一些传感器数据样本也可能丢失且一些传感器数据样本可能被读取两次。所述现象可因一些传感器可能具有极不良的定时器精度(即,跨温度范围且在装置之间的±15%偏差)这一事实而加剧。
参考图3,示出了说明用于使传感器定时同步的示范性方法300的流程图。在操作310处,可以第一次校正传感器定时器。校正传感器定时器可包括将定时器校正因数应用于取样事件所基于的内部定时器,以使得内部传感器定时器与由主机控制器时钟或定时器207使用的时钟信号充分对准。内部传感器定时器215与轮询事件所基于的处理器时钟充分对准,此时可保证在充分长时间周期中以与传感器的指定取样频率一致的频率轮询传感器将导致接收所有传感器数据样本,而无数据样本丢失且无数据样本被读取两次。应注意,当两个定时器信号理想地对准时,其实际频率之间的比率等于其指定频率之间的比率。在操作320,主机控制器205可轮询传感器210,且传感器数据样本可从传感器210传送到主机控制器205。操作320可以由多次轮询和多次数据样本传送组成。在操作330,可以在操作310中第一次校正传感器时钟相同的方式第二次校正传感器时钟。可选择传感器定时器215的两次校正之间的时间间隔以使得定时器信号在所述间隔上如上文定义那样保持充分对准,而不管所述间隔上积累的定时器信号的不精确性。如果选择的间隔太短,那么在校正传感器定时器215时会比所需情形更经常地浪费能量。另一方面,如果选择的间隔太长,那么定时器信号可能变得未对准且可能出现上述数据样本丢失或重复。
两次传感器定时器校正之间的时间间隔可以被称为相位时间或时间相位间隔(T_Ph)。确切地说,时间相位间隔(T_Ph)可以是由主机或主控制器205提供的时间周期,其指示由从属装置或传感器210使用用于调整其内部定时器和取样事件序列的开始的预定持续时间。“T”代表“时间”或“周期”且“Ph”代表“相位”,涉及取样事件的序列在同一时间周期内发生且在同一时刻开始的事实。在特定方面,T_Ph可以依据取样事件序列中在T_Ph周期中的样本或取样事件的预定数目来定义或者可表示为所述预定数目。举例来说,T_Ph可以在每一T_Ph周期中发生的20个取样事件方面来定义。
通过重复执行操作310至330,内部传感器定时器215可以保持与主机控制器时钟充分对准。在一些实施例中,T_Ph可以是存在的传感器的取样周期的公倍数。举例来说,在存在分别具有200Hz、100Hz和10Hz的取样频率(对应于5ms、10ms和100ms的取样周期)的三个传感器的实施例中,可以选择100ms为T_Ph。应了解,使用即存在的多个传感器的取样周期的公倍数的T_Ph使多个传感器基本上同时同步能使传感器时钟彼此对准,并且因此使用同步方法允许处理器通过最少的唤醒窗口获得所有样本。在上述实例中,如果具有200Hz、100Hz和10Hz的取样频率的三个传感器的传感器时钟彼此不对准,处理器会必须每秒唤醒总共310次以在最差情况情境中获得所有样本,其中处理器在每个唤醒窗口中从单个传感器接收单个样本(对于200Hz的传感器每秒200次,对于100Hz的传感器每秒100次,且对于10Hz的传感器每秒10次)。另一方面,如果如上文所描述三个传感器的传感器时钟对准,那么处理器仅需要每秒唤醒200次以获得所有样本:每次处理器唤醒时轮询200Hz的传感器;每又一次处理器唤醒时轮询100Hz的传感器;以及每20次处理器唤醒时轮询10Hz的传感器。减少必需的唤醒窗口的数目是合乎需要的,因为这样能节省功率并延长电池寿命。在一些实施例中,T_Ph可为大约1秒。在通过传感器210提供时钟相关的反馈信息的实施例中,还可以在运行时调整T_Ph。
已经构想出用于校正传感器定时器215的若干非限制性方法。在一些实施例中,传感器210可接收与处理器时钟或定时器相关的信息,导出定时器或时钟校正因数,且应用定时器校正因数。在一些实施例中,传感器210可将与其内部定时器或时钟相关的信息发送到主机控制器205,接收在主机控制器205处导出的定时器校正因数,且应用定时器校正因数。
对于其中在主机控制器205与传感器210之间交换定时器相关信息的实施例,已经构想出用于交换时钟或定时器相关信息的若干非限制性方法。在一些实施例中,可使用DRI线240传送时钟或定时器信息。在一些实施例中,可使用专用时钟或定时器校正线250传送时钟或定时器信息。在又一些其它实施例中,可使用处理器101与传感器210之间的常规数据连接传送时钟或定时器信息,所述常规数据连接例如上文描述的I2C或I3C总线。
在第一组实施例中,传感器210可接收与处理器定时器或时钟207相关的信息,导出定时器校正因数,且当校正传感器定时器215时应用定时器校正因数。
在一个实施例中,当校正传感器定时器215时,主机控制器205可将由预定数目的脉冲组成的脉冲突发发射到传感器210。所述脉冲突发可从主机控制器定时器导出,且其频率可取决于主机控制器定时器的频率。所述突发仅需要持续相对短的时间周期。此处,可以先验地以所述突发的预期频率配置传感器210。一旦传感器210接收到所述突发,传感器就可以将接收到的所述突发的频率与预期频率进行比较,导出定时器校正因数,并且因此应用定时器校正因数以校正内部传感器定时器215。
在另一实施例中,当校正传感器定时器215时,主机控制器205可将两个脉冲发射到传感器210,其中所述脉冲通过由处理器定时器测得的预定时间间隔分隔。选择所述时间间隔以使得其可以可靠地用以导出定时器校正因数以校正传感器定时器215。此时间间隔可被称为频率时间间隔(T_Fq)。在一些实施例中,T_Fq可以在几毫秒的范围内。在一些实施例中,T_Fq选择为与存在的最短传感器取样周期一致。在一些其它实施例中,T_Fq可以选择为与T_Ph一样长。举例来说,T_Fq可以是1秒。此处,可以先验地以预定T_Fq配置传感器210。一旦传感器210接收到所述两个脉冲,所述传感器就可以将接收到的两个脉冲界定的由传感器定时器测量的时间间隔的持续时间与也由传感器定时器测量的预定T_Fq进行比较,导出定时器校正因数,并且因此应用定时器校正因数以校正内部传感器定时器。
在又一实施例中,当校正传感器定时器时,主机控制器205可在主机控制器205与传感器210之间的数据连接上将定时器校正消息发射到传感器210,以使得在定时器校正消息的发射期间产生的两个可识别的有效边缘通过由处理器定时器测得的预定T_Fq分隔。如上文所描述,主机控制器205与传感器210之间的数据连接可为I2C总线或I3C总线。其还可以是UART总线连接、SPI总线、或适用于在控制器与传感器之间传送数据的任何其它类型的连接。预定T_Fq可以与上文所述相同。此处,可以先验地以预定T_Fq配置传感器210。一旦传感器210接收到定时器校正消息,所述传感器就可以将与定时器校正消息一起包含的两个可识别的有效边缘界定的由传感器定时器215测得的时间间隔的持续时间与也由传感器定时器测得的预定T_Fq进行比较,导出定时器校正因数,并且因此应用定时器校正因数以校正内部传感器定时器。
举例来说,在其中主机控制器205与传感器210之间的数据连接是I2C或I3C总线的实施例中,可发射两个时钟校正消息。这两个定时器校正消息可以分别被称为MS1和MS2。T_Fq可由在用于MS1的开始条件中在SDA线220上的下降沿以及在用于MS2的开始条件中在SDA线220上的下降沿界定,或可替代地由在用于MS1的停止条件中在SDA线220上的上升沿以及在用于MS2的开始条件中在SDA线220上的下降沿界定。在其中将T_Fq选择为与T_Ph一样长的实施例中,可能需要仅一个定时器校正消息,例如MS1,且处理器101可例如在每一T_Ph的开始发射MS1消息。因此,等于T_Ph的时间周期T_Fq可以通过(例如,在一个实施例中)针对两个连续MS1消息的开始条件中在SDA线220上的下降边缘界定。当然,本发明不受本文所提供的实例限制。此外,出于校正传感器定时器215的目的而使用I2C或I3C总线也允许补充错误校正程序、故障检测和中止命令等。举例来说,传感器210可发射时戳或包含时间偏差信息的消息,且主机控制器205可相应地校正后续数据流。通过使用此程序,可以放松对T_Ph的精度要求。也已预期采用I2C或I3C总线的双向通信能力用于定时器校正目的的其它方式。
在第二组实施例中,传感器210可将与其内部定时器相关的信息发送到主机控制器205,接收在主机控制器205处导出的定时器校正因数,且当校正传感器定时器215时应用定时器校正因数。
在一个实施例中,当校正传感器定时器215时,传感器210可将由如由传感器定时器测得的预定T_Fq或输出数据速率(ODR)周期分隔的两个脉冲发射到主机控制器205。预定T_Fq可与上文所描述相同。此处,可以预定T_Fq先验地配置主机控制器205。一旦主机控制器205接收到所述两个脉冲,所述主机控制器就可以将如由处理器定时器测得的由所接收两个脉冲界定的时间间隔的持续时间与也如由处理器定时器测得的预定T_Fq进行比较,相应地导出定时器校正因数,且经由主机控制器205与传感器210之间的例如I2C或I3C总线等接口217将定时器校正因数发射到传感器210。接着,传感器210可以接收定时器校正因数并应用所述定时器校正因数。
在第三组实施例中,不使用定时器校正因数。在这些实施例中,处理器定时器或从处理器定时器导出的信号可提供到传感器210,且传感器210可使取样事件直接基于所述处理器定时器或从处理器定时器导出的信号。处理器定时器或从处理器定时器导出的信号可使用专用线路DRI线240来发射,或可在处理器101与传感器210之间的数据连接上传送的消息内发射。
在一个实施例中,主机控制器205可基于处理器定时器产生取样定时器信号,且将取样定时器发射到传感器210。取样定时器的频率可与传感器210的取样频率相同。传感器210可经配置以忽略其内部传感器定时器,且仅当其在由主机控制器205发射的取样定时器信号中遇到脉冲时收集样本。
在其中存在多个传感器的一个实施例中,可选择由处理器101产生的取样定时器信号的频率,使得取样定时器信号的频率为存在的传感器的取样频率的公倍数。举例来说,对于其中存在分别具有200Hz、100Hz和10Hz的取样频率的三个传感器的实施例,处理器101可基于处理器定时器产生具有200Hz的频率的取样定时器信号并将所述取样定时器信号发射到所有三个传感器。接着,具有200Hz的取样频率的传感器可经配置以在其在取样定时器信号中遇到的每个脉冲处收集样本;具有100Hz的取样频率的传感器可经配置以在其在取样定时器信号中遇到的每隔一个脉冲处收集样本;以及具有10Hz的取样频率的传感器可经配置以在其在取样定时器信号中遇到的每第20个脉冲处收集样本。
应了解,因为取样定时器是基于主机控制器定时器,所以传感器210的取样事件和主机控制器205的轮询事件可始终对准。还应了解,在一些实施例中,取样定时器信号同时也可以充当轮询信号。在另一实施例中,处理器定时器可直接提供到传感器210,且传感器210可使取样事件基于处理器定时器而不是其内部传感器定时器。
通过使用本文中所描述的用于使传感器定时器同步的示范性方法,控制器可以对传感器协调定时器校正并以高效节能的同步模式分批地从多个传感器接收所有传感器数据样本,在轮询传感器时不会以高于必要的频率浪费能量。
已预期用于通过将包括一或多个消息的定时器校正消息的单个集合从处理器发射到传感器而确定重新同步传感器的频率的方法。应了解,使传感器重新同步的频率是T_Ph的乘法逆元素或倒数。
根据本公开的进一步方面,公开了利用特定硬件事件(或在另一实例中硬件和软件)用于时间受控同步事件的方法和设备。特定硬件事件可取决于使用的输送系统或接口,例如在例如I2C、I3C、SPI等不同总线接口以及控制器/主装置与传感器/从属装置之间的无线接口之间事件将不同。然而,可以命令和数据的特定集合识别事件。在一个实例中,这些命令是在例如用于原本正常数据交换(例如,从传感器读取数据)的同一I2C或I3C事务内发送;因此,所需的能量是可忽略的。时间同步事件特定来说可由主机控制器以T_Ph间隔发送。在一方面中,可在已知将在输送系统或接口上发生的硬件(HW)事件当中选择时间同步事件。在关于例如I2C或I3C等总线的特定方面中,存在已知将在接口上发生的可用作时间同步事件的若干开始(START)条件,但HW事件不限于此。在一方面中,无论输送系统或接口如何,HW事件均可由对主机控制器和传感器两者先验已知的相互可识别的消息组成。因此,当相互可识别的HW事件在输送系统或接口上发生时传感器(和主机控制器)可识别T_Ph间隔开始。
如上文所论述,在一些系统中不同传感器或其它装置将在不同时间取样其数据。这可甚至在设定共同取样频率时发生,因为不同传感器装置中的定时器或振荡器通常未准确到足以不会最终漂移分开。在某些系统(例如,根据MIPI I3CSM规范的I2C总线或I3C总线系统)中提出的同步时间控制机制或HW事件提供用于控制器形成同步脉冲或消息的方式,称为同步选取(SYNC Tick,ST)。因此,即使存在传感器定时器或振荡器中的变化,取样也将在时间上极靠近在一起执行,从而允许其对取样机制的准备和激活。此外,HW由主机控制器/主装置和传感器/从属装置相互协定,且是将由从属装置/传感器对照其时基(即,其内部定时器/计数器)加时戳的事件。在其它实例中,HW事件可以是线上的通信的开始,其对于例如I2C、I3C或系统管理总线(SMBus)可被选择为多个发射开始中的将是由传感器/从属装置将记录/加时戳的时刻的一个发射开始。对于其它接口,HW事件可为某种其它机制。作为SPI中的实例,HW事件可以是CS线变为低以用于发射。作为另一实例,假定关于HW事件的定时的极快速接口,所述时刻甚至可以是ST消息自身,如SPI的情况那样,其中消息仅花费一微秒,且因此将足够用于同步1秒长的T_Ph。
在另一方面中,应注意ST大体上是经配置以证实且实际识别接口上存在的许多相似HW事件中的哪一个是为了T_Ph的正确开始的进一步计算应当使用的一个的消息。HW事件可以是任何数目的已知事件。作为HW事件的实例,ST自身可构成SPI输送中的协定事件,其中ST消息总共仅花费1微秒的时间,这对于同步事件将是充分短的。HW事件的其它实例可为输送媒体上的脉冲的边缘。一些HW事件可具有补充特性,例如作为经界定脉冲集合的最后边缘。在无线系统中,无线接口上的通信的开始可构成HW事件。在无线接口的另一实例中,可传送HW事件,且HW事件可通过使用特定于各种已知无线协议的特殊或专用通信或通信信道来进行。另外,DT也是消息。通过这三个元素,即HW事件、ST识别消息以及DT证实和校正消息,可实现本发明所公开的同步程序。且因为可在T_Ph的正确开始之后的某个时间发送消息(例如,HW事件、ST和DT),所以所述方法涵盖整个系统的所有不确定性。出于本公开的目的,应注意HW事件和识别HW事件的ST消息的组合可共同称为“同步消息”。在各方面中HW事件可以包含到ST消息中,其中ST消息的开始边缘或时间构成HW事件。
图4说明接口上的活动的示范性系统定时图400,其中所述图示出了系统中从非同步或随机取样定时到T_Ph时间周期上的取样的经同步定时状态的转变。应注意所述接口不限于特定输送系统,且在其它实例中可包含有线总线或无线接口。在图4的实例中假设三个传感器,但本领域的技术人员将了解这仅是示范性的,且系统中更少或更多传感器是可能的且本文公开的概念适用于一或多个传感器。在图4中的顶部三个时间线402、404和406说明例如I2C、I3C、SPI等接口的接口上可见的活动,且包含由主机控制器发送到在接口上提供数据样本的各种传感器或其它装置的命令以及来自各种传感器或其它装置的数据样本。时间线402、404和406还说明从非同步状态402到经同步状态406的时间或状态的改变。底部三个时间线408、410和412说明个别传感器(或提供数据的其它装置)内的数据可用性。如同时间线402、404、406,时间线408、410和412也说明从非同步状态408到经同步状态412的时间或状态的改变。应注意时间线402的时间线对应于在同步过程已经实现之前的时间且时间线406对应于在同步过程实现之后的时间。
如时间线402中可见,来自通过接口连接的不同传感器的传感器数据(即,第一传感器的数据414、第二传感器的数据416以及第三传感器的数据418)未经同步,因为数据是在接口上在各种且看起来随机的时间发送,其中传感器以其自身相应的ODR和不相关定时器运行。在此非同步状态的某些方面,,主机控制器将针对每一传感器的DRI事件醒来,这浪费大量的系统能量。类似地,时间线408示出了各种传感器处的传感器数据414、416、418的非同步状态。
时间线404说明主机控制器可发射信息信号或消息420作为时间同步事件,所述信息信号或消息是在每一T_Ph周期的开始处发送到与接口耦合的各种传感器。根据一方面,信息消息420中的每一个可由例如同步边缘、同步脉冲或同步消息(即,同步选取或“ST”消息)等HW事件以及延迟时间(DT)消息组成,这将在下文将更详细地论述。出于本公开的目的,本文所使用的术语“信息消息”意味着组合的ST+DT消息,且还应理解“信息消息”420在本文中可被称作ST+DT消息。消息420的ST边缘或消息虽然在图4中未图示为与来自DT信息的信息消息420分开,但将在消息420的开始处发生且可以不同于DT消息,或可替代地经配置以使得信息消息420的上升沿提供ST消息接发,其余部分由DT信息组成。信息消息420可由传感器使用以校正其定时;即,出于与主机控制器同步的目的校正其定时器。
理想地,信息消息420之间的时间周期应当是时间相位周期T_Ph。然而由于早先提到的硬件和软件开销,新T_Ph周期的预期开始与信息消息420的发射之间可存在延迟,其在本文称为延迟时间,或图4中在参考422所说明的“DT”。为了补偿由T_Ph周期的不可预测且可变的开始(和ST边缘或消息的发出)可能引起的潜在不精确性,主机控制器可测量DT周期,且此测得时间周期由主机控制器传送作为信息消息420的DT部分。此外在一方面中,信息消息420的DT部分是在信息消息420的ST边缘或消息部分的发射之后发射。根据I3C接口的实例,信息消息420可在带内发射,因此仅需要两条线(例如,SDA和SCL)。此外,DT消息或命令可经配置以提供在输送系统或媒体(例如,I2C或I3C总线)上开始条件相对于完美同步定时已经延迟的时间单位的数目。DT消息可使用一个数据字节,其中所述数据字节的最高有效位(MSB)是指示时间延迟计数器的上溢是否已发生的旗标。举例来说,值1b'0将指示无上溢。所述数据字节的较低7位可经配置以含有有效的定时器值。MSB中的值1b'1将指示上溢已发生且数据字节的较低7位并不含有有效的值,且传感器或从属装置应当中止当前同步程序。
此处应注意,在一个实例中DT是由主机控制器参考主机控制器的内部时钟或定时器而测得。在一个实例中,主机控制器可利用预定时间(例如,“水印”)或其运行定时器上的一致时间,其对应于用于开始T_Ph的完美时间(被称为“开始T_Ph时间”)。主机控制器可随后将命令发送到接口控制器以用于将ST消息发送到传感器或从属装置(例如,稍后将论述的图9中示出的输送媒体介接电路910)。此接口控制器将随后调度发射,且最终当接口可用时开始发射。接口控制器对照主机控制器时基(例如,此定时可以基于主机控制器用于确定水印或一致时间的同一运行定时器或所述定时器的衍生物而确定)记录当发射开始时的实时时刻(被称为“真实T_Ph时间”)。无论如何,所述两个时间信息(即,“开始T_Ph时间”和“真实T_Ph时间”)是相关的且基于同一时基,即主机控制器的时基。主机控制器随后计算“开始T_Ph时间”与“真实T_Ph时间”之间的差,并且接着以如先前与从属装置/传感器商定的时间单位来表达所述差,格式化DT消息,且跨越同一接口将其发送到从属装置/传感器。因此,从属装置/传感器可从其接收实时HW事件的时间(即,在“真实T_Ph时间”)减除传送DT,并且因此针对从属装置/传感器时基(即,传感器的定时器/计数器)当T_Ph应当实际上已开始时到达开始T_Ph时间。此外,指示延迟时间周期的信息可指示延迟周期近似为与时间相位周期T_Ph的1/n一样长,其中n是二的幂(例如,1、2、4、8...)。基于同步消息的定时以及指示延迟时间周期的信息,传感器/从属装置可确定新T_Ph周期的预期开始。
基于包含延迟时间信息的信息消息420的定时,接收到此信息的传感器可确定下一或新的T_Ph周期的预期开始,其由时间线410中的脉冲或时戳424指示,例如示出信息消息420的处理已发生。通过下一T_Ph周期的所确定的开始,传感器可随后在T_Ph周期内以特定预定重复或系统清醒间隔发射数据,如时间线412中可见。当传感器的定时器经同步时,可在经同步传感器中的每一个的每一时戳或取样频率下发射传感器数据,如时间线412中可见。因此,传感器数据经同步(大体上参见图4中的426)且此数据将在接口上经同步(作为实例参见时间线406中的428)且将能够由主机控制器更高效地读取,因为数据集合是在实现传感器轮询的同一系统清醒间隔内被读取。还要注意根据一方面,系统清醒周期是可调整的。
图4说明提供传感器的取样周期的频率和相位的调整的经同步系统。主机控制器或主装置以T_Ph的重复周期发送同步信息(即,信息消息420或同步事件)。如之前论述,时间相位周期T_Ph可以是相对大的时间间隔,例如1秒,且确切地可被耦合到主机控制器的传感器的取样周期的最小公倍数除尽。然而在实际情况中,未必总是可能具有不同从属装置/传感器与其不同ODR之间的合适对应,以使得最小公倍数将具有有用价值。在这些情况下,同步过程可以调整ODR中的一些,或在最差情况中使更多但更小群组中的传感器同步。
还要注意对于图4中的经同步时间线实例,在主机控制器发射相位和频率信息(T_Ph)之后,传感器将在相互同步的时刻使其数据就绪,如时间线412中所图示。这减少了主机控制器清醒周期的数目且最小化读取所需传感器数据所需要的消耗能量。
还应注意,主机控制器(例如,205)可经配置以在例如I2C或I3C接口等接口217上发射各种命令和对应数据。在特定方面,主机控制器将发射输出数据速率(ODR)命令和数据到特定传感器或装置,其设定或建立传感器的运行输出数据速率。ODR值指示在给定时间周期中由传感器取得的样本的数目,且对在接口上取样和发射数据的每一特定传感器或装置也是特定的。另外,主机控制器还发出传送时间相位周期T_Ph的命令和数据。在一方面中,可以所选ODR的取样周期的数目来表达T_Ph。主机控制器可发出的另一命令和数据是分辨比率(RR),其表示延迟时间(DT)的分辨比率。RR可以T_Ph时间的选定2的幂的划分数目来表达,如稍后将更详细论述。
如之前提到,可跨越许多不同类型的接口发送ST和DT且本文公开的方法不限于任一种类型的接口。在另一方面中,所述方法可在若干或多个接口以及多个接口协议上使用,其中可对照主机控制器的内部时基使若干传感器同步。这是可能的,因为HW事件(即,ST和/或一起或配对的ST和DT)由于延迟时间的测量和发射而不需要以关于T_Ph的正确开始的确切或精确定时发送。
如上文所论述,T_Ph间隔的开始可对应于当大多数传感器将同时收集数据时的时间,且若干传感器的取样时刻应当在一个T_Ph周期期间重合至少一次。这些一致取样时刻允许在同一事务期间发生从所有传感器的数据传送,如例如时间线412中也可见,且取样时刻在图4中的垂直虚线处可见(参见例如图4中的线430)。并且,在一方面中大体上选择T_Ph值以使得传感器的定时器保持相对于T_Ph持续时间的0.1%准确性,其大体上为约一(1)秒。
图5说明时间线图500,其示出在例如I2C或I3C总线等接口上的同步程序的实例。确切地说,图5说明在控制器(例如,主机控制器205)与传感器(例如,210)之间的接口上的通信的时间线,其中调整传感器的定时以提供协调多个传感器且保证传感器读取并不重复数据或丢失所需数据的效率。作为此传感器定时调整的部分,图5的实例利用信息消息(例如,消息420),其包含ST消息随后是延迟时间DT消息或包含ST消息与延迟时间DT消息配对,以用于传感器定时器到主机控制器的同步。
时间线502示出了接口上的从传感器(例如,210)发出的通信的由主机控制器(例如,205)的读取事件。时间线502示出了在I2C或I3C的情况下包含开始504事件以及随后来自传感器的数据和控制信息506的通信。信息的第一部分505可包含同步选取(ST)和延迟时间(DT),通信信息的其余部分包含交换轮询数据和控制信息的典型通信。根据一方面,如果ST是I2C或I3C通信的部分,那么传感器内部地记录ST何时发生,且如果所述信息接着是指示将其用作同步脉冲或事件的命令则使用所述信息。在另一方面中,同步事件是可以先验确定的控制器与传感器之间的相互可识别的硬件事件。在一方面中,硬件事件可以是对I2C或I3C接口已知的各种开始条件中的一个,例如由SDA线的下降沿界定的开始条件,但事件当然不限于此。T_Ph周期内的后续通信506可包含轮询或其它命令/消息。
确切地说,包含轮询消息的消息506引出来自传感器的响应,其中传感器可将传感器样本数据发射回到主机控制器。传感器还可基于其自身的相应传感器定时器而发射指示发射时间的时戳。所述时戳可呈任何合适的形式,例如作为连同传感器样本数据的I2C或I3C总线响应消息的部分,在使用比I2C或I3C快的协议(例如,SPI)的情况下作为专用消息,或在处理器与传感器之间的单独连接上。
下一时间线508说明当在传感器自身上记录传感器时戳510时的定时,其在时间上对应于开始消息接发504。时间线508中的这些时戳510表示非同步操作。在一方面中,传感器可最终将这些时戳连同任何对应传感器数据一起发射回到主机控制器。这些时戳510可以许多形式配置,例如I2C或I3C通信的部分(即,在SDA和SCL线上)、在单独的线上,或甚至在通信系统比I2C快的情况下(例如作为一个实例的SPI)的完整消息。
时间线512示出了用于使主机控制器和传感器同步的ST和DT消息514(例如,如早先论述的信息消息420)。ST消息由DT消息证实,所述DT消息给出可由传感器用于定时校正的时间延迟。此处应注意,针对在主机控制器中产生的延迟的校正不同于传感器时钟速率校正,传感器时钟速率校正是在传感器内基于ST脉冲之间的时间而确定。在另一方面中,应注意消息514中的ST消息和DT消息可通过在用于每一消息的界定字节字段中设定不同值而区别于彼此。
如上文所描述,主机控制器可确定或测量延迟时间(DT)520,其为从T_Ph周期(序列周期)的预期开始的时间,如时间线516上在同步中的T_Ph开始的时戳脉冲518处指示。在T_Ph周期期间的额外传感器时戳522与主机控制器同步。由DT消息传送的时间校正考虑了T_Ph的开始与在接口上发出ST消息时之间的时间。如先前所描述的,此延迟可发生是因为主机控制器中存在硬件和软件开销。通常从主机控制器的数字逻辑的时延提前已知硬件开销。另一方面,软件开销时延可能较不稳定且可能起因于操作系统或控制软件中的竞争优先级。举例来说,软件可在ST即将发送的时间期间处置优先级中断。这会造成ST的发送被延迟。此外,这些延迟可在循环之间改变。因此,与ST一起发送测得的DT 520提供了传感器适于T_Ph周期的开始和ST的发送的延迟的能力。因此,DT消息有效地限定每一ST时戳。根据其它方面,应注意ST消息优选地在开始条件(以及对于直接消息为从属地址)之后尽可能快地发送,从而提供足够时间用于发送和接收DT消息。另外,DT消息应当在下一最短轮询时间窗口之前到达,如稍后将更详细论述。根据再另一方面,DT消息可含有开始条件与所需的T_Ph开始之间的时间延迟,或者用于当前同步窗口的中止命令。
在操作中,每一传感器可经配置以在当检测到HW事件的时刻记录其内部定时器的值。在一实例中,开始条件的SDA下降沿可以是在使用I2C或I3C总线的实例中将在接口上检测的HW事件。在此情况下,最后开始的记录可存储于寄存器或用于存储值的相似装置中。当传感器辨识出其从属地址或广播命令以及ST消息时,每一传感器或从属装置经配置以随后使用所存储开始时间作为用于新T_Ph周期的开始时间的参考。随后,在辨识出作为信息消息(例如,420或514)的部分的后续DT消息后,每一传感器或从属装置可即刻相对于其内部定时器校正T_Ph开始时间和T_Ph持续时间(如果需要),或中止当前同步程序,从而保存内部定时器的运行参数。当T_Ph间隔期满时(例如,在一个实例中在近似1.0秒之后),主机控制器或主装置通过接着以上文所描述的方式发送下一ST消息随后是DT消息而重复同步事件。
在配置或设置系统以实施图5的同步定时期间,主装置或主机控制器(例如,205)可将各种命令发出到传感器(例如,传感器/从属装置210),具体来说例如I2C和I3C系统,但其功能性不一定限于I2C和I3C系统。如之前所论述,主机控制器针对每一传感器发出输出数据速率(ODR)命令。在一方面中,ODR命令可将运行ODR传送到传感器。在另一方面中,ODR命令代码可为传感器特定数据的单个字节(0xXX)连同另一字节。
在配置期间的另一参数是设定T_Ph时间周期(即,同步事件重复周期或同步周期)的持续时间的命令,其也可被称作TPH命令。此命令设定T_Ph的重复速率。在一方面中,ST消息可在界定字节字段内包含此TPH命令代码,接着是关于特定时间设定或值的特定数据字节。
在经配置期间可使用的又一命令是时间单位(TU)命令,其对每一或所有传感器可为特定的。此命令设定传送到传感器或从属装置的时间单位的值。在一方面中,ST消息可在界定字节字段内包含此TPH命令代码,接着是关于特定时间设定或值的特定数据字节。
另外,在系统的配置期间的另一命令是由主机控制器发送到传感器的分辨比率(RR)命令。分辨比率命令提供针对计算用于DT命令的T_Ph时间的分辨率步长所应用的划分因数。用于发射延迟时间的T_Ph的相对划分的使用避免了主机控制器或传感器知道彼此的真实定时器或时钟值的需要。
T_Ph分辨率步长的计算是通过将对应T_Ph时间周期乘以RR而确定。如先前所描述的RR是以T_Ph时间的选定2的逆幂的划分的数目来表达。作为一实例,RR值可表达为2-x,其中x可为从11到14的整数值(因此,RR值范围是从2-11到2-14)。在RR命令或消息的结构方面,RR消息中的两个最低有效位(LSB)可用以向传感器指示哪一T_Ph划分因数用于从作为2的逆幂的整数值11到值14计算时间分辨率步长(例如, )。因此,如果T_Ph周期假设为1秒(即,1000ms)且RR值设定于例如2-11,那么分辨率步长时间将为1000ms x 2-11或488μs。由于划分因数表达为二的整数幂,因此应注意相乘运算是简单右移与划分值的正整数指数相同数目的位置。在一方面中,DT消息可以一个字节构造以使得7位可用于传送延迟步长且最高有效位(MSB)将指示中止(但消息不一定限于一个字节的数据)。因此,绝对最大延迟时间将为对应于127个分辨率步长的时间周期。基于作为T_Ph周期的划分因数确定的分辨率步长以及其中应当发射ST+DT消息的最大延迟时间(DT)的分辨率步长的预定数目,可以计算最大延迟时间。举例来说,如果从以上实例中分辨率步长时间是488μs,那么最大DT校正范围将为488μs x 127或62.01ms。下表1说明给定不同T_Ph周期和从11到14的RR值时各种数目的最大ST+DT延迟时间(或DT校正范围)的实例。
表1
应注意在特定系统中,即使无法发送ST+DT消息或系统在错误状态中传感器也具有数据可用是很重要的。这是因为传感器数据对于不直接在主机控制器的控制下的其它装置或过程可能是必要的。由于本发明方法提供ST和DT配对在一起且如此由传感器装置确认,因此如果在DT校正范围内无法给出ST命令,那么所述命令的提供将必须晚得多。在此情况下,ST消息必须以中止同步次序跟随有DT。随后,校正ST将随后通过其配对DT被证实。
此处应注意,RR提供表达延迟时间的紧凑方式,适合于主机控制器/主装置和传感器/从属装置的定时器所基于的任何真实时间单位。通过以整个T_Ph的二的幂数目的划分指定DT,隐式地设定结果的分辨率。与使用RR来表达DT的效率相比,在T_Ph为200ms的情况下以毫秒表达DT或者针对1秒或更长的T_Ph以微秒表达DT将不是很有用或高效的。
影响本文公开的同步的操作的其它因数包含以下考虑:ST+DT消息的开始事件必须至少在经同步定时器的预期漂移之后到达总线上以赶上最慢的可能传感器或从属装置。此外,由于因硬件、固件和软件滞后带来的主机控制器不确定性,其中此不确定性在本文称为“抖动”,ST+DT消息的开始事件的SDA下降沿可能甚至更晚到来。然而,ST+DT消息的开始事件条件无法比读取正确数据可接受的定时更晚到来;即,读取需要在新数据开始填充传感器处的输出寄存器或FIFO缓冲器之前发生。因此,也预期用于确保考虑且减轻经同步定时器和主机控制器抖动的漂移的方法和设备。
在一方面中,术语“抖动”可意味着主机控制器在理想或预期时间发出ST消息的统计不确定性的总和(例如,如果不确定性是±1ms,那么对于整个间隔总不确定性是1ms+1ms=2ms以覆盖所有可能的变化)。另外,存在传感器上的定时器定时的范围,其可能是由于抖动包含量化误差。此定时范围可表达为在主机控制器的定时器中测得的T_Ph周期的百分比。对于整个系统的给定抖动,可确定最大T_Ph。
图6说明时间线图600,示出了通过考虑抖动和同步消息接发定时而设定轮询定时。确切地说,图6说明抖动对传感器同步和轮询的影响,以及用于确保从系统中的传感器的恰当轮询或数据读取的最大读取窗口的确定。第一时间线602说明示出了在输出数据速率(ODR)周期或轮询周期603的开始的三个可能的T_Ph周期标记604、606、608。标记604表示理想定时点,而标记606和608分别表示快和慢限制(例如,在标记606处的T_Ph周期的-0.1%以及在标记608处的T_Ph周期的+0.1%,仅作为一个实例)。应注意,理想、快和慢标记仅是为了这些定时将发生的可视化的说明目的而示出。接下来的三个时间线610、612和614表示传感器上的理想、快和慢定时器或时钟,其中从理想的快或慢偏差表示传感器的可接受性范围。传感器时戳在时间上断开(即,快时戳618、理想时戳616和慢时戳620)的时间量是通过传感器的定时器或时钟产生而确定。此定时可受到温度、供应电压以及传感器操作的其它元素影响。
时间线622说明主机控制器可通过考虑理想、快或慢传感器定时的不同情形而轮询传感器的时间。如由脉冲624所示的开始轮询的最小延迟必须晚到足以确保即使慢传感器定时也已完成数据取样,如在时间上恰在如时间点626处可见的慢传感器定时的时戳620之后发生的脉冲定时624所说明。然而,此定时将仅在主机控制器可在所述确切时间保证轮询的情况下为可能的。然而如之前所提到,由于硬件、固件和软件中的延迟,主机控制器自身在何时其可用于实际实现轮询中具有变化。此变化图示为主机抖动最大值628,其中此最大抖动表示最长的可能延迟时间,其结束被图示为用于ST+DT脉冲的最大延迟定时630。主机抖动最大值628时间周期可为先验已知的或基于由主机控制器执行的测量或计算。
在主机抖动最大值628时间已经过之后,主机控制器将通过发送ST+DT信息消息630而执行再同步,具有对于发射ST+DT信息消息630所需要的伴随时间周期。为了在下一传感器输出数据周期上捕获恰当的传感器数据样本,主机控制器必须在最快传感器已经更新(参见指示其数据恰在时间点632之前就绪的快速传感器时戳618)之前轮询传感器,且在标记634处示出为在快速传感器使其数据就绪之前的传感器读取窗口的最大时间(即,最大读取窗口636)。最大读取窗口的时间将需要为非负的以确保时间窗口是现存的。针对给定主机抖动最大值628以及对快和慢传感器时间的给定要求,为了保证最大读取窗口定时是非负值,将发送ST+DT信息消息630的速率设定为足够低以使得最大读取窗口为非负。因此,最大读取窗口636的确定包含主动地设定或调整ST+DT信息消息630。此外将了解,图6的方法允许可在同步周期(即,T_Ph)期间取样传感器数据的ODR周期(例如,周期603)的数目的确定的计算。举例来说,可确定允许在最快可能传感器取样定时将改变将在下一ODR(即,时戳618和定时标记632)读取的数据之前的传感器数据取样的ODR周期的数目。从在同步周期(T_Ph)(或在初始同步之后发生的情况下的再同步)期间ODR周期的数目(或轮询定时或轮询循环的数目)的此确定可以由主机控制器设定或确定。
还要注意如图6中表示的最快到最慢传感器定时(即,606到608)的范围不一定表示特定数目的传感器,而是其说明特定传感器的定时的可能变化的可能范围(或替代地这可以是若干传感器共同的可能定时器变化的范围),且物理系统中的传感器的数目可以是一或多个,其中所述范围涵盖所述一或多个传感器的最快和最慢可能定时。
根据另一方面,主机控制器可监视传感器定时器从指示当数据变成可用于主机控制器时的时刻的所发射时戳(例如,616、618、620或图6未图示的其它时间)的逐渐漂移。从此监视,可以动态调整最小和/或最大延迟时间的确定(即,最慢与最快传感器定时之间的变化范围)。
图7说明用于发射传感器定时校正消息的示范性方法700的流程图。举例来说,方法700可以例如主机控制器205或处理器101等主装置或主机控制器来实施。如在框702处所示,方法700包含确定同步消息(例如,ST消息),所述同步消息经配置以发射到传感器(例如,传感器210)且指示用于使主机控制器和传感器的定时同步的同步周期(例如,T_Ph周期)的开始。在框704处,所述方法进一步包含确定延迟时间消息(即,DT),所述延迟时间消息经配置以指示同步周期的开始与同步消息的实际发射时间之间的时间延迟。应注意框704的过程可以通过主机控制器测量从同步周期的开始到同步消息的实际发射的时间来实现。
方法700进一步包含在信息消息中将同步消息连同延迟时间消息或与延迟时间消息配对而发射到传感器,其中所述信息消息经配置以允许传感器校正传感器定时器的定时,如框706中所示。在一方面中,DT消息将延迟时间传送到传感器,这又允许传感器考虑此延迟而校正其内部定时器(例如,定时器215),因此准确地维持与主机控制器的同步。
如之前指示,同步信号或消息(例如,HW事件和同步选取(ST))用以指示新同步或时间相位周期(例如,T_Ph)的开始,且可被配置为具有命令和数据的开始条件,或可简单地为I2C或I3C总线消息的开始条件的上升沿或下降沿。在另一实例中,所述信号可以是SPI总线上的消息。另外,在特定同步周期(T_Ph)期间在包含ST+DT的信息消息之后可以将一或多个轮询消息或命令(例如,505或506)发射到传感器,如图5的实例中可见。另外,这些轮询消息可以特定速率或循环(ODR)发送,所述特定速率或循环也可由主机控制器设定。
图8图示说明用于确定如图6中所图示的读取时间窗口的示范性方法800的流程图。首先注意方法800可以与结合图7描述的方法结合或并行地实施。如图8中可见,在框802处,做出当数据变成在至少一个传感器处可用时的主机控制器的最大可能抖动以及传感器定时范围的确定。在一方面中,框802的过程可以由主机控制器(例如,处理器101或主机控制器205)确定,且可以是从如图6中可见的最早时戳618和最晚时戳620确定主机抖动最大值628和定时范围。
方法800还包含框804的所述,包含基于所确定的最大可能抖动和传感器定时范围而设定发射信息消息(即,ST+DT消息)所需的时间,以确保用于在传感器定时范围内的最快传感器定时之前从所述至少一个传感器读取数据的时间窗口(即,“读取窗口”)的分配将指示下一轮询循环(即,下一ODR循环)中的传感器数据的改变。在框804中的过程也可以由例如主机控制器205或处理器101等主机控制器实施。此外,框804的过程包含图6中示出的最大读取窗口636的确定和分配以确保在下一ODR周期(参见例如图6中的634)中的下一最早或最快可能传感器数据之前的当前ODR周期或轮询循环期间从传感器读取数据。在又一方面中,方法800可包含基于所确定的最大读取窗口和传感器定时范围内的最快传感器定时中的至少一个而确定和设定同步周期中的轮询循环(即ODR循环)的数目。
图9说明示范性主机控制器或主装置902,其可包含与发射器/接收器电路906耦合的处理或逻辑电路904,所述发射器/接收器电路用于在与至少从属或传感器装置通信地耦合的总线接口或电路上发射和接收信号、命令和数据。发射器/接收器电路906可包含定时器电路或时钟908,至少用于确定经由总线接口耦合到主机控制器902的从属或传感器装置的同步的定时。虽然未图示,但主机控制器902可采用其它计时或定时装置用于内部计时,作为一实例例如用于处理电路904的计时。此外,发射器/接收器电路906还包含输送媒体介接电路910,其经配置以介接发射器/接收器电路与可为I2C或I3C总线的物理接口或甚至例如无线接口。此外,所述输送媒体在总线的实例中可采用例如SDA线和SCL线等至少两个线,但可以包含另外的线,如较早相对于图2中的接口217所论述。
主机控制器902也可包含与至少处理电路904耦合的存储器或存储媒体912,且包含用于致使电路904实施或引导发射器/接收器电路906实施本文公开的各种方法的代码或指令,所述各种方法例如结合图3-8公开的那些方法。在另一方面中,主机控制器902可包含专用同步电路或逻辑914,其执行如图3-8中所公开的实行传感器定时器校正的功能中的一些或全部。
图10说明示范性传感器或从属装置1002,其可包含与发射器/接收器电路1006耦合的处理或逻辑电路1004,所述发射器/接收器电路用于在至少与主机控制器或主装置还有总线上的其它装置通信地耦合的总线接口或电路上发射和接收信号和数据。发射器/接收器电路1006可包含定时器电路或时钟1008,至少用于经由总线接口在主机控制器(例如,控制器902)的引导下确定从属或传感器装置1002的同步中的定时。虽然未图示,但传感器1002可采用其它计时或定时装置用于传感器的内部计时,作为一实例例如用于处理电路1004的计时。此外,发射器/接收器电路1006还包含输送媒体介接电路1010,其经配置以介接发射器/接收器电路与可为I2C或I3C总线的物理接口或甚至无线接口(仅举几例)。此外,输送媒体介接电路910在总线的实例中可采用例如SDA线和SCL线等至少两个线,但可以包含另外的线,如较早相对于图2中的接口217所论述。
传感器1002也可包含与至少处理电路1004耦合的存储器或存储媒体1012,且包含用于致使电路1004实施或引导发射器/接收器电路1006实施本文公开的各种方法的代码或指令,所述各种方法例如结合图3-8公开的那些方法,具体来说应用ST+DT消息用于定时器电路1008的校正,以及例如用于计算最大DT定时的RR命令。在另一方面中,传感器1002可包含专用同步电路或逻辑1014,其执行如图3-8中公开的实行传感器定时器校正的功能中的一些或全部。
应了解,先前描述的本发明的方面可以与如先前描述的计算装置100的处理器101、主机控制器205、传感器210、主机控制器或主装置902以及从属或传感器装置1002的指令(例如,应用程序)执行结合而实施。具体来说,装置的电路,包含但不限于处理器,可在应用程序、程序、例程或指令执行的控制下操作以执行根据本发明的实施例的方法或过程(例如,由图3-8图示的过程)。举例来说,此程序可以固件或软件实施(例如,存储于存储器和/或其它位置中)且可由处理器和/或装置的其它电路实施。此外,应了解,术语处理器、微处理器、电路、控制器等是指能够执行逻辑、命令、指令、软件、固件、功能性等的任何类型的逻辑或电路。
图11是说明采用处理电路1102的主机控制器1100的硬件实施方案的简化实例的图。由主机控制器1100执行的操作的实例包含上文相对于图3、7和8的流程图以及图4-6中的时间线描述的操作。处理电路1102通常具有处理器1104,其可包含微处理器、微控制器、数字信号处理器、定序器和状态机中的一或多个。处理电路1102可以大体上由总线1106表示的总线架构来实施。取决于处理电路1102的特定应用和总体设计约束,总线1106可包含任何数目的互连总线和桥接器。总线1106以通信方式耦合包含由处理器1104表示的一或多个处理器和/或硬件模块的各种电路,以及可配置以支持可根据各种传输协议或无线接口(如由任选的天线1112所示)操作的各种连接器或线1110上的通信的接口模块或电路1108和计算机可读存储媒体1114。总线1106还可链接此项技术中众所周知的例如定时源、外围设备、电压调节器和电力管理电路等各种其它电路,并因此本文不详细地描述。还应注意,接口1110可以是可根据一或多个输送格式操作以及以通信方式耦合到一或多个从属/传感器装置或其它主机控制器的一或多个接口。
处理器1104负责一般处理,包含存储于计算机可读存储媒体1114上的软件/指令的执行。所述软件/指令在由处理器1104执行时致使处理电路1102执行之前针对任何特定设备描述的各种功能。计算机或处理器可读存储媒体1114还可用于存储当执行软件时由处理器1104操纵的数据,包含从在连接器或线1110或天线1112上发射的符号解码的数据。处理电路1102进一步包含模块/电路1108中的至少一个,其可以是驻留/存储于计算机可读存储媒体1114中的在处理器1104中运行的软件模块、耦合到处理器1104的一或多个硬件模块或其某一组合。模块/电路1108可包含微控制器指令、状态机配置参数或其某一组合。
在一个配置中,处理器可读媒体1114包含用于确定同步消息的指令,所述同步消息经配置以发射到传感器且指示用于使主机控制器和传感器的定时同步的同步周期的开始。这些指令经配置以致使处理器1104执行各种功能,包含例如在图7的框702中图示的过程。处理器可读媒体1114还包含用于确定延迟时间消息的指令,所述延迟时间消息经配置以指示同步周期的开始与同步消息的实际发射时间之间的时间延迟。这些指令经配置以致使处理器1104执行各种功能,包含例如在图7的框704中图示的过程。另外,处理器可读媒体1114还包含用于在信息消息中将同步消息与延迟时间消息一起发射到传感器的指令,其中所述信息消息经配置以允许传感器校正传感器定时器的定时。这些指令经配置以致使处理器1104执行各种功能,包含例如在图7的框706中图示的过程。进一步应注意,处理器可读媒体1114可包含用以致使处理器1104执行图8中的框802和804以及图6的时间线的功能的指令(未图示)。
本文中所描述的方法可结合例如无线广域网(WWAN)、无线局域网(WLAN)、无线个人局域网(WPAN)等各种无线通信网络实施。术语“网络”和“系统”常常可互换地使用。WWAN可为码分多址(CDMA)网络、时分多址(TDMA)网络、频分多址(FDMA)网络、正交频分多址(OFDMA)网络、单载波频分多址(SC-FDMA)网络等。CDMA网络可实施一或多个无线电接入技术(RAT),例如cdma2000、宽带CDMA(W-CDMA)等。Cdma2000包含IS-95、IS-2000和IS-856标准。TDMA网络可实施全球移动通信系统(GSM)、数字行进移动电话系统(D-AMPS)或某一其它RAT。GSM和W-CDMA在来自被命名为“第三代合作伙伴计划”(3GPP)的组织的文献中加以描述。Cdma2000在来自被命名为“第三代合作伙伴计划2”(3GPP2)的组织的文献中加以描述。3GPP和3GPP2文献是公开可用的。WLAN可为IEEE 802.11x网络,并且WPAN可为蓝牙网络、IEEE802.15x或某一其它类型的网络。所述技术还可结合WWAN、WLAN及/或WPAN的任何组合来实施。
本文中呈现的实例方法、设备或制品可以整体或部分地实施以在移动通信装置中使用或结合移动通信装置使用。如本文中所使用,“移动装置”、“移动通信装置”、“手持式装置”、“平板计算机”等或此类术语的多种形式可互换使用,并且可指能够根据一或多个通信协议通过经由合适的通信网络无线传输或接收信息而通信并且可不时地具有改变的定位或位置的任何种类专用计算平台或装置。作为说明,专用移动通信装置可包含(例如)蜂窝式电话、卫星电话、智能电话、热图或无线电图产生工具或装置、观测信号参数产生工具或装置、个人数字助理(PDA)、膝上型计算机、个人娱乐系统、电子书阅读器、平板个人计算机(PC)、个人音频或视频装置、个人导航单元或其类似者。然而,应了解,这些仅仅是与可以用来促进或支持本文中所描述的一或多个过程或操作的移动装置相关的说明性实例。
取决于具体应用,本文中所描述的方法可以不同方式且以不同配置实施。举例来说,此等方法可连同软件一起以硬件、固件和/或其组合实施。在(例如)硬件实施方案中,处理单元可实施于一或多个专用集成电路(ASIC)、数字信号处理器(DSP)、数字信号处理装置(DSPD)、可编程逻辑装置(PLD)、现场可编程门阵列(FPGA)、处理器、控制器、微控制器、微处理器、电子装置、经设计以执行本文所描述的功能的其它装置单元,和/或其组合内。
本文中所描述的存储器或存储媒体可包括一级、二级及/或三级存储媒体。一级存储媒体可包含存储器,例如,随机存取存储器及/或只读存储器。二级存储媒体可以包含大容量存储装置,例如磁性或固态硬盘驱动器。三级存储媒体可包含可装卸式存储媒体,例如磁盘或光盘、磁带、固态存储装置等。在某些实施方案中,存储媒体或其部分可以操作方式收纳或可以其它方式配置以耦合到计算平台的其它组件,例如处理器。
在至少一些实施方案中,本文中所描述的存储媒体的一或多个部分可存储信号,所述信号表示通过存储媒体的具体状态表达的数据及/或信息。举例来说,表示数据及/或信息的电子信号可“存储”在存储媒体(例如,存储器)的一部分中,方法是通过影响或改变存储媒体的此类部分的状态以将数据及/或信息表示成二进制信息(例如,一及零)。因而,在具体实施方案中,用以存储表示数据及/或信息的信号的存储媒体的所述部分的状态的此改变构成存储媒体到不同状态或内容的变换。
在之前详细描述中,已阐述众多特定细节以提供对所主张主题的透彻理解。然而,所属领域的技术人员将理解,可在没有这些特定细节的情况下实践所要求的标的物。在其它情况下,未详细描述所属领域的一般技术人员将已知的方法和设备以免混淆所要求的主题。
在对存储在特定设备或专用计算装置或平台的存储器内的二进制数字电子信号的运算的算法或符号表示方面,已呈现先前详细描述的一些部分。在此具体说明书的上下文中,术语“特定设备”或其类似者包含通用计算机(一旦其经编程以依据来自程序软件的指令执行具体功能)。算法描述或符号表示是信号处理或有关技术的技术人员用来向所属领域的其它技术人员传达其工作的实质内容的技术的实例。在此算法一般被视为产生期望结果的操作或类似信号处理的自一致序列。在此上下文中,操作或处理涉及对物理量的物理操控。虽然未必,但通常此类量可采用能够作为表示信息的电子信号而存储、传送、组合、比较或以其它方式操作的电或磁信号的形式。已证实主要出于常见使用的原因而时常方便的是将这些信号称为位元、数据、值、元件、符号、字符、术语、编号、数字、信息或类似者。然而,应理解,所有这此等或类似术语应与适当物理量相关联且仅为方便的标记。
除非另外确切地说明,否则如从以下论述显而易见,应了解,贯穿本说明书,利用例如“处理”、“计算(computing)”、“计算(calculating)”、“识别”、“确定”、“建立”、“获得”及/或其类似者的术语的论述是指例如专用计算机或类似专用电子计算装置的特定设备的动作或过程。因此,在本说明书的情形下,专用计算机或类似专用电子计算装置能够操控或变换信号,该信号通常表示为在专用计算机或类似专用电子计算装置的存储器、寄存器或其它信息存储装置、发射装置或显示装置内的物理电子或磁性量。在此具体专利申请案的上下文中,术语“特定设备”可包含通用计算机(一旦其经编程以依据来自程序软件的指令执行具体功能)。
贯穿本说明书对“一个实例”、“实例”、“某些实例”或“示范性实施方案”的提及意味关于特征和/或实例描述的特定特征、结构或特性可包含在所主张的主题的至少一个特征和/或实例中。因此,短语“在一个实例中”、“实例”、“在某些实例中”或“在一些实施方案中”或其它相似短语在贯穿本说明书的各处的出现未必皆指同一特征、实例和/或限制。此外,所述特定特征、结构或特性可在一或多个实例和/或特征中组合。
虽然已说明且描述目前视为实例特征的内容,但所属领域的技术人员应理解,在不脱离所主张的标的物主题的情况下可进行各种其它修改且可用等效物取代。另外,在不脱离本文所描述的中心概念的情况下,可进行许多修改以使特定情形适合于所主张的主题所主张的标的物的教示。因此,希望所要求的标的物不限于所揭示的特定实例,而是此所要求的标的物还可包含属于所附权利要求书和其等效物的范围内的所有方面。
应理解,在所揭示的过程中的步骤的具体次序或阶层仅是示范性方法的实例。应理解,基于设计偏好,过程中的步骤的特定次序或阶层可以重新布置,同时保持在本公开的范围内。所附方法权利要求以样本次序呈现各种步骤的元件,且并不有意限于所呈现的特定次序或阶层。
所属领域的技术人员将理解,可使用多种不同技术及技艺中的任一种来表示信息及信号。举例来说,可通过电压、电流、电磁波、磁场或磁粒子、光场或光粒子或其任何组合来表示在整个上文描述中可能参考的数据、指令、命令、信息、信号、位、符号和码片。
另外,技术人员将进一步了解,结合本文所揭示的实施例而描述的各种说明性逻辑块、模块、电路和算法步骤可实施为电子硬件、计算机软件或两者的组合。为清晰地说明硬件与软件的这种可互换性,上文已大体就其功能性来描述了各种说明性组件、块、模块、电路和步骤。此类功能性是实施为硬件还是软件取决于具体应用和施加于整个系统的设计约束。所属领域的技术人员可针对每一特定应用以不同方式来实施所描述的功能性,但这样的实施决策不应被解释为会引起脱离本发明的范围。
可使用通用处理器、数字信号处理器(DSP)、专用集成电路(ASIC)、现场可编程门阵列(FPGA)或经设计以执行本文所描述的功能的其它可编程逻辑装置、离散门或晶体管逻辑、离散硬件组件或其任何组合来实施或执行结合本文中所揭示的实施例而描述的各种说明性逻辑块、模块和电路。通用处理器可以是微处理器,但在替代方案中,处理器可以是任何的常规处理器、控制器、微控制器或状态机。处理器也可实施为计算装置的组合,例如DSP和微处理器的组合、多个微处理器、与DSP核心结合的一或多个微处理器,或任何其它此类配置。
结合本文中所揭示的实施例描述的方法或算法的步骤可直接体现于硬件、由处理器执行的软件模块或两者的组合中。软件模块可驻留在RAM存储器、快闪存储器、ROM存储器、EPROM存储器、EEPROM存储器、寄存器、硬盘、可移动的磁盘、CD-ROM,或此项技术中已知的任何其它形式的存储媒体中。示范性存储媒体耦合到处理器,使得处理器可以从存储媒体读取信息以及将信息写入到存储媒体。在替代例中,存储媒体可与处理器成一体式。处理器和存储媒体可以驻留在ASIC中。ASIC可驻留于用户终端中。在替代例中,处理器及存储媒体可作为离散组件驻留于用户终端中。
提供对所公开的实施例的先前描述以使得所属领域的技术人员能够制作或使用本发明。所属领域的技术人员将容易明白对这些实施例的各种修改,且在不脱离本发明的精神或范围的情况下,本文所界定的一般原理可应用于其它实施例。因此,本发明并不既定限于本文中所展示的实施例,而应被赋予与本文中所揭示的原理和新颖特征相一致的最广泛范围。
Claims (20)
1.一种以主机控制器实施的用于发射传感器定时校正消息的方法,包括:
确定同步消息,所述同步消息经配置以发射到传感器且指示用于使所述主机控制器和所述传感器的定时同步的同步周期的开始;
确定延迟时间消息,所述延迟时间消息经配置以指示所述同步周期的所述开始与所述同步消息的实际发射时间之间的时间延迟;以及
在信息消息中将所述同步消息与所述延迟时间消息一起发射到所述传感器,其中所述信息消息经配置以允许所述传感器校正传感器定时器的定时。
2.根据权利要求1所述的方法,其中所述信息消息经配置以允许所述传感器基于所述同步消息和所述延迟时间消息的定时而确定下一同步周期相位时间周期的预期开始以用于校正所述传感器中的定时。
3.根据权利要求1所述的方法,进一步包括:
将分辨比率命令传送到所述传感器,其中所述分辨比率命令包含可用于计算用于所述延迟时间消息的分辨率步长时间的所述同步周期的划分因数。
4.根据权利要求3所述的方法,进一步包括基于所述分辨率步长时间以及用于最大延迟时间的分辨率步长的预定数目而在传感器处计算用于所述延迟时间消息的最大延迟时间。
5.根据权利要求3所述的方法,其中所述分辨比率命令被配置为两位消息,所述两位消息传送作为二的逆幂应用的多个整数值以确定所述分辨率步长。
6.根据权利要求1所述的方法,其中所述同步周期包括时间相位周期(T_Ph),所述时间相位周期可依据所述时间相位周期上发生的取样事件的预定数目来表示。
7.根据权利要求6所述的方法,其中接口包括I2C总线、I3C总线、SPI总线、SMBus、SLIMbus、UART总线、SoundWire总线或无线接口中的一或多个。
8.根据权利要求1所述的方法,进一步包括:
确定当数据变成在至少一个传感器处可用时的主机控制器的最大可能抖动和传感器定时范围;以及
基于所述所确定的最大可能抖动和所述传感器定时范围而设定发射所述信息消息所需的时间以确保用于在所述传感器定时范围内的最快传感器定时之前从所述至少一个传感器读取数据的时间窗口的分配将指示下一轮询循环中的传感器数据的改变。
9.根据权利要求7所述的方法,进一步包括基于用于从所述至少一个传感器读取数据的所述所确定的最大时间窗口以及所述传感器定时范围内的所述最快传感器定时中的至少一个而确定和设定所述同步周期中的轮询循环的数目。
10.一种主机控制器装置,包括:
输送媒体接口,其经配置以经由至少一个输送媒体以通信方式耦合到至少一个传感器装置;
至少一个处理电路,其以通信方式耦合到所述输送媒体接口且经配置以:
确定同步消息,所述同步消息经配置以发射到传感器且指示用于使所述主机控制器和所述传感器的定时同步的同步周期的开始;
确定延迟时间消息,所述延迟时间消息经配置以指示所述同步周期的所述开始与所述同步消息的实际发射时间之间的时间延迟;以及
在信息消息中将所述同步消息与所述延迟时间消息一起发射到所述传感器,其中所述信息消息经配置以允许所述传感器校正传感器定时器的定时。
11.根据权利要求10所述的主机控制器装置,其中所述信息消息经配置以允许所述传感器基于所述同步消息和所述延迟时间消息的定时而确定下一同步周期相位时间周期的预期开始以用于校正所述传感器中的定时。
12.根据权利要求10所述的主机控制器装置,其中所述至少一个处理电路进一步经配置以:
将分辨比率命令传送到所述传感器,其中所述分辨比率命令包含可用于计算用于所述延迟时间消息的分辨率步长时间的所述同步周期的划分因数。
13.根据权利要求12所述的主机控制器装置,其中所述分辨比率命令被配置为两位消息,所述两位消息传送作为二的逆幂应用的多个整数值以确定所述分辨率步长。
14.根据权利要求10所述的主机控制器,其中所述输送媒体包括I2C总线、I3C总线、SPI总线、SMBus、SLIMbus、UART、SoundWire总线或无线接口中的一或多个。
15.根据权利要求10所述的主机控制器装置,其中所述至少一个处理电路进一步经配置以:
确定当数据变成在至少一个传感器处可用时的主机控制器的最大可能抖动和传感器定时范围;以及
基于所述所确定的最大可能抖动和所述传感器定时范围而设定发射所述信息消息所需的时间以确保用于在所述传感器定时范围内的最快传感器定时之前从所述至少一个传感器读取数据的时间窗口的分配将指示下一轮询循环中的传感器数据的改变。
16.一种具有一或多个指令的处理器可读存储媒体,所述一或多个指令在由至少一个处理电路执行时致使所述至少一个处理电路进行以下操作:
确定同步消息,所述同步消息经配置以在输送媒体上从主机控制器发射到传感器且指示用于使所述主机控制器和所述传感器的定时同步的同步周期的开始;
确定延迟时间消息,所述延迟时间消息经配置以指示所述同步周期的所述开始与所述同步消息的实际发射时间之间的时间延迟;以及
在信息消息中将所述同步消息与所述延迟时间消息一起发射到所述传感器,其中所述信息消息经配置以允许所述传感器校正传感器定时器的定时。
17.根据权利要求16所述的处理器可读存储媒体,其中所述信息消息经配置以允许所述传感器基于所述同步消息和所述延迟时间消息的定时而确定下一同步周期相位时间周期的预期开始以用于校正所述传感器中的定时。
18.根据权利要求16所述的处理器可读存储媒体,所述一或多个指令进一步致使所述至少一个处理电路进行以下操作:
将分辨比率命令传送到所述传感器,其中所述分辨比率命令包含可用于计算用于所述延迟时间消息的分辨率步长时间的所述同步周期的划分因数。
19.根据权利要求16所述的处理器可读存储媒体,其中所述输送媒体包括I2C总线、I3C总线、SPI总线、SMBus、SLIMbus、UART总线、SoundWire总线或无线接口中的一或多个。
20.根据权利要求16所述的处理器可读存储媒体,所述一或多个指令进一步致使所述至少一个处理电路进行以下操作:
确定当数据变成在至少一个传感器处可用时的主机控制器的最大可能抖动和传感器定时范围;以及
基于所述所确定的最大可能抖动和所述传感器定时范围而设定发射所述信息消息所需的时间以确保用于在所述传感器定时范围内的最快传感器定时之前从所述至少一个传感器读取数据的时间窗口的分配将指示下一轮询循环中的传感器数据的改变。
Applications Claiming Priority (13)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201562245924P | 2015-10-23 | 2015-10-23 | |
US201562245917P | 2015-10-23 | 2015-10-23 | |
US201562245922P | 2015-10-23 | 2015-10-23 | |
US201562245914P | 2015-10-23 | 2015-10-23 | |
US62/245,922 | 2015-10-23 | ||
US62/245,917 | 2015-10-23 | ||
US62/245,914 | 2015-10-23 | ||
US62/245,924 | 2015-10-23 | ||
US15/251,757 | 2016-08-30 | ||
US15/251,757 US20160370845A1 (en) | 2013-11-12 | 2016-08-30 | System and methods of reducing energy consumption by synchronizing sensors |
US15/299,382 | 2016-10-20 | ||
US15/299,382 US20170041897A1 (en) | 2013-11-12 | 2016-10-20 | Apparatus and methods for synchronizing a controller and sensors |
PCT/US2016/058284 WO2017070588A1 (en) | 2015-10-23 | 2016-10-21 | Apparatus and methods for synchronizing a controller and sensors |
Publications (1)
Publication Number | Publication Date |
---|---|
CN108141293A true CN108141293A (zh) | 2018-06-08 |
Family
ID=58558165
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201680061482.9A Pending CN108141293A (zh) | 2015-10-23 | 2016-10-21 | 用于使控制器和传感器同步的设备和方法 |
Country Status (7)
Country | Link |
---|---|
EP (1) | EP3365994A1 (zh) |
JP (1) | JP2018534688A (zh) |
KR (1) | KR20180071268A (zh) |
CN (1) | CN108141293A (zh) |
BR (1) | BR112018008278A2 (zh) |
CA (1) | CA3000011A1 (zh) |
WO (1) | WO2017070588A1 (zh) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108923876A (zh) * | 2018-06-27 | 2018-11-30 | 北京艾瑞思机器人技术有限公司 | 时间同步方法、装置及系统 |
CN111077941A (zh) * | 2019-11-06 | 2020-04-28 | 深圳震有科技股份有限公司 | 一种时钟同步设置方法、设备及存储介质 |
CN111309094A (zh) * | 2020-02-06 | 2020-06-19 | 上海图趣信息科技有限公司 | 一种传感器设备采集数据的同步板卡及方法 |
CN111585682A (zh) * | 2020-05-09 | 2020-08-25 | 森思泰克河北科技有限公司 | 传感器时间同步方法、装置及终端设备 |
TWI767234B (zh) * | 2020-05-21 | 2022-06-11 | 大陸商北京集創北方科技股份有限公司 | 串行周邊介面的傳輸速率提升方法、資料傳輸電路及資訊處理裝置 |
CN116348930A (zh) * | 2020-10-16 | 2023-06-27 | 株式会社岛津制作所 | 数据测量系统及执行测量数据的数据处理的方法 |
Families Citing this family (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10707984B2 (en) * | 2017-07-14 | 2020-07-07 | Qualcomm Incorporated | Techniques for synchronizing slave devices |
EP3573342B1 (en) * | 2018-05-25 | 2021-03-31 | Harman Becker Automotive Systems GmbH | Multi-rate digital sensor synchronization |
US11134460B2 (en) | 2019-06-18 | 2021-09-28 | Commscope Technologies Llc | Synchronizing a cloud radio access network to a network time protocol reference clock |
JP7487551B2 (ja) | 2020-05-18 | 2024-05-21 | 富士電機株式会社 | 同期制御システム |
CN111711558B (zh) * | 2020-05-28 | 2023-06-09 | 腾讯科技(深圳)有限公司 | 一种消息控制方法及装置 |
DE102020207995A1 (de) | 2020-06-29 | 2021-12-30 | Robert Bosch Gesellschaft mit beschränkter Haftung | Verfahren und System zur Synchronisation zwischen einer Datenausgaberate eines Sensors und einem Synchronisationssignal |
CN113821469A (zh) * | 2021-09-23 | 2021-12-21 | 深圳市元征科技股份有限公司 | 多处理器的同步方法、装置、终端设备及存储介质 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1212399A (zh) * | 1997-08-04 | 1999-03-31 | 松下电器产业株式会社 | 多传输线路间的延迟时间的调整装置及调整方法 |
US20140240542A1 (en) * | 2013-02-26 | 2014-08-28 | Canon Kabushiki Kaisha | Image capturing apparatus and method for controlling the same |
US20150134864A1 (en) * | 2012-06-03 | 2015-05-14 | Chronologic Pty Ltd | Synchronisation of a system of distributed computers |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE102012207138A1 (de) * | 2012-04-27 | 2013-10-31 | Robert Bosch Gmbh | Sensorzeit-Synchronisation |
US9436214B2 (en) * | 2013-11-12 | 2016-09-06 | Qualcomm Incorporated | System and methods of reducing energy consumption by synchronizing sensors |
-
2016
- 2016-10-21 CA CA3000011A patent/CA3000011A1/en not_active Abandoned
- 2016-10-21 BR BR112018008278A patent/BR112018008278A2/pt not_active Application Discontinuation
- 2016-10-21 KR KR1020187011318A patent/KR20180071268A/ko unknown
- 2016-10-21 WO PCT/US2016/058284 patent/WO2017070588A1/en active Application Filing
- 2016-10-21 CN CN201680061482.9A patent/CN108141293A/zh active Pending
- 2016-10-21 JP JP2018519967A patent/JP2018534688A/ja active Pending
- 2016-10-21 EP EP16788923.7A patent/EP3365994A1/en not_active Withdrawn
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1212399A (zh) * | 1997-08-04 | 1999-03-31 | 松下电器产业株式会社 | 多传输线路间的延迟时间的调整装置及调整方法 |
US20150134864A1 (en) * | 2012-06-03 | 2015-05-14 | Chronologic Pty Ltd | Synchronisation of a system of distributed computers |
US20140240542A1 (en) * | 2013-02-26 | 2014-08-28 | Canon Kabushiki Kaisha | Image capturing apparatus and method for controlling the same |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108923876A (zh) * | 2018-06-27 | 2018-11-30 | 北京艾瑞思机器人技术有限公司 | 时间同步方法、装置及系统 |
CN111077941A (zh) * | 2019-11-06 | 2020-04-28 | 深圳震有科技股份有限公司 | 一种时钟同步设置方法、设备及存储介质 |
CN111077941B (zh) * | 2019-11-06 | 2024-04-02 | 深圳震有科技股份有限公司 | 一种时钟同步设置方法、设备及存储介质 |
CN111309094A (zh) * | 2020-02-06 | 2020-06-19 | 上海图趣信息科技有限公司 | 一种传感器设备采集数据的同步板卡及方法 |
CN111585682A (zh) * | 2020-05-09 | 2020-08-25 | 森思泰克河北科技有限公司 | 传感器时间同步方法、装置及终端设备 |
TWI767234B (zh) * | 2020-05-21 | 2022-06-11 | 大陸商北京集創北方科技股份有限公司 | 串行周邊介面的傳輸速率提升方法、資料傳輸電路及資訊處理裝置 |
CN116348930A (zh) * | 2020-10-16 | 2023-06-27 | 株式会社岛津制作所 | 数据测量系统及执行测量数据的数据处理的方法 |
Also Published As
Publication number | Publication date |
---|---|
EP3365994A1 (en) | 2018-08-29 |
KR20180071268A (ko) | 2018-06-27 |
WO2017070588A1 (en) | 2017-04-27 |
JP2018534688A (ja) | 2018-11-22 |
CA3000011A1 (en) | 2017-04-27 |
BR112018008278A2 (pt) | 2018-10-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108141293A (zh) | 用于使控制器和传感器同步的设备和方法 | |
CN108351670A (zh) | 用于使控制器和传感器同步的设备和方法 | |
US10707984B2 (en) | Techniques for synchronizing slave devices | |
CN105706017B (zh) | 通过使传感器同步来减少能耗的系统和方法 | |
US20170041897A1 (en) | Apparatus and methods for synchronizing a controller and sensors | |
US20170041688A1 (en) | Apparatus and methods for timestamping in a system synchronizing controller and sensors | |
US10863469B2 (en) | System and method for accurate timestamping of virtual reality controller data | |
US10117204B2 (en) | Wireless synchronized apparatus and system | |
EP3270769A1 (en) | Wearable devices with two stage of use | |
CN114553351B (zh) | 时间同步方法及控制装置、设备、存储介质 | |
JP2006309407A (ja) | 無線データ伝送機能を有するセンサ装置、このセンサ装置の動作方法、このセンサ装置により構成されたセンサシステム | |
US20210289336A1 (en) | Systems and methods for smart devices | |
CN103235500A (zh) | 基于北斗的卫星授时方法及计时装置 | |
CN111870249A (zh) | 一种基于微惯性传感器的人体姿态追踪系统及其使用方法 | |
CN110141207A (zh) | 心率检测调试方法、装置、存储介质和计算机程序产品 | |
US20190014549A1 (en) | Topology for a Wireless Modular Network | |
CN110945574B (zh) | 数据接收装置、发送装置、传送系统和包的数据结构 | |
Chen et al. | Human motion tracking with wireless wearable sensor network: experience and lessons. | |
CN217693330U (zh) | 一种活动监控系统 | |
TW200812329A (en) | Time-synchronous system to support multiple network equipments |
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 | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20180608 |
|
WD01 | Invention patent application deemed withdrawn after publication |