CN113872727A - 高速通信系统 - Google Patents

高速通信系统 Download PDF

Info

Publication number
CN113872727A
CN113872727A CN202110735482.5A CN202110735482A CN113872727A CN 113872727 A CN113872727 A CN 113872727A CN 202110735482 A CN202110735482 A CN 202110735482A CN 113872727 A CN113872727 A CN 113872727A
Authority
CN
China
Prior art keywords
data
slave device
slave
gap
master
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
Application number
CN202110735482.5A
Other languages
English (en)
Inventor
E·萨切瑟
T·巴赫
T·弗雷塔格
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Melexis Technologies NV
Original Assignee
Melexis Technologies NV
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Melexis Technologies NV filed Critical Melexis Technologies NV
Publication of CN113872727A publication Critical patent/CN113872727A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/40Bus networks
    • H04L12/40169Flexible bus arrangements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • G06F13/36Handling requests for interconnection or transfer for access to common bus or bus system
    • G06F13/362Handling requests for interconnection or transfer for access to common bus or bus system with centralised access control
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/0001Systems modifying transmission characteristics according to link quality, e.g. power backoff
    • H04L1/0006Systems modifying transmission characteristics according to link quality, e.g. power backoff by adapting the transmission format
    • H04L1/0007Systems modifying transmission characteristics according to link quality, e.g. power backoff by adapting the transmission format by modifying the frame length
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/40Bus structure
    • G06F13/4004Coupling between buses
    • G06F13/4027Coupling between buses using bus bridges
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/40Bus structure
    • G06F13/4063Device-to-bus coupling
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/42Bus transfer protocol, e.g. handshake; Synchronisation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/40Bus networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/40Bus networks
    • H04L12/403Bus networks with centralised control, e.g. polling

Abstract

本发明涉及高速通信系统。一种用于在主设备和至少一个从设备之间进行通信的方法包括生成通信帧,生成通信帧包括生成从设备数据帧。该从设备数据帧包括包含一个或多个数据字节的数据分组和在从设备数据帧中不包括信息的具有可变时间长度的至少一个间隙。该间隙可以在所述数据分组的第一个数据字节开始之前的所述从设备数据帧的开始处和/或在所述数据分组的最后一个数据字节结束之后的所述数据分组的末尾处,其中该间隙具有基于本地地存储在所述至少一个从设备中的每个从设备中的参数的时间长度依赖关系。

Description

高速通信系统
技术领域
本发明涉及数据通信领域。更具体地,它涉及主-从通信。
背景技术
现有的网络系统通常通过本地互联网络(LIN)或控制器局域网(CAN)系统、或其他系统提供不同电子元件及其控制器之间的连接,并在它们之间建立通信协议。
例如,在汽车应用中,若干总线系统已经就位。例如,LIN网络将若干从设备连接到主单元。然而,带宽限制大约为20千波特(kbaud),这对许多应用来说是不满意的。尽管如此,LIN总线被看作是具有成本效益的解决方案。其他总线系统(诸如CAN总线、以太网总线、或基于Flexray的网络)都是快速通信接口。然而,网络实现是相对较高成本的。CAN的示例是复杂的,在发生故障或事故的情况下难以维修或互换,而且实现方式是昂贵的。
发明内容
本发明的实施例的目的在于提供允许在一个或多个从设备和一个主设备之间进行通信,从而允许以廉价和灵活的方式、无重叠地传输数据分组的方法和系统。
在第一方面,本发明提供了在主设备与至少一个从设备之间进行通信的方法,包括生成通信帧,包括生成从设备数据帧。该从设备数据帧包括数据分组和具有可变时间长度的至少一个间隙,该数据分组包括一个或多个数据字节,该间隙在所述数据分组的第一个数据字节开始之前的所述从设备数据帧的开始处或在所述数据分组的最后一个数据字节结束之后的所述数据分组的末尾处的所述从设备数据帧中不包括信息。间隙具有基于本地地存储在所述至少一个从设备中的每个从设备中的参数的时间长度依赖关系。信息在开始位与结束位之间传递,而间隙处于数据分组之外。本发明的实施例的优点在于,通过允许每个从设备在通信中引入的可变长度间隙来实现高速通信,从而避免了不同网络成员之间由于振荡器失配而引起的数据碰撞。
在本发明的一些实施例中,生成从设备数据帧包括在所述数据分组的开始处和末尾处分别生成具有可变时间长度的第一间隙和第二间隙。本发明的实施例的优点在于,对于不同的频率偏移,实施方式是灵活的。
在本发明的一些实施例中,被本地地存储在所述至少一个从设备中的每一个从设备中的所述参数中的一个参数是作为每个从设备的唯一标识的从设备ID号。本发明的实施例的优点在于,每个从设备可以使用其自己的ID来提供唯一的间隙时间长度,并同时获得数据帧可以开始被传输给主设备的时刻,而从设备之间没有通信,因此允许使用比CAN协议更简单的协议,例如(修改的)UART协议。
在本发明的一些实施例中,该方法进一步包括生成用于计算至少一个间隙的时基,其中从设备数据帧的定时是基于具有在5%以下的标称目标频率公差的时钟。本发明的实施例的优点在于,一个或多个从设备可以使用廉价和不太精确的RC振荡器时钟,实现低成本的高速通信。
在本发明的一些实施例中,该方法进一步包括生成和发送具有第一数据位的字节的开始(SOB)信息,第一数据位进一步包括数据方向交换信息,该信息允许区分字节是由主设备的数据请求还是包含由从设备发送的数据的字节。
在本发明的一些实施例中,参数是在至少一个校准步骤中被提供的。本发明的实施例的优点在于,可以在任何时候对从设备进行编程,例如,可以在任何时候(例如,在第一次切换传感器时、在制造期间、……)对间隙的持续时间进行编程,参数中的一些参数(例如,固定参数)可以在ROM上被硬编码,参数如标称数据速率、标称RCO频率......
在本发明的一些实施例中,生成包括至少一个间隙的数据帧是在传感器的初始化例程期间执行的。本发明的实施例的优点在于,漂移(例如从设备或其振荡器的长期漂移,例如老化等)可以至少部分地被补偿。
在本发明的一些实施例中,该方法进一步包括获得每个从设备的频率偏移,随后包括具有负频率偏移的从设备的预定总线延迟并且不包括具有正频率偏移的从设备的总线延迟。本发明的实施例的优点在于可以引入避免碰撞的附加裕度。
在进一步的方面中,本发明提供软件程序产品,该软件程序产品在连接到主设备的从设备的处理单元中被执行时,适于执行前一方面的方法。所述软件程序可在系统的每个从设备中被实现。
在进一步的方面中,本发明提供了一种用于在主设备与至少一个从设备之间进行通信的系统。至少一个从设备适于生成包括数据分组和具有可变时间长度的至少一个间隙的从设备数据帧,数据分组包括一个或多个数据字节,所述间隙在所述数据分组的第一个数据字节的开始之前的所述从设备数据帧的开始处或在所述数据分组的最后一个数据字节的结束之后的所述数据分组的末尾处的从设备数据帧中不包括信息。系统适于计算具有基于本地地存储在所述至少一个从设备中的每个从设备中的参数的时间长度依赖关系的间隙。系统进一步包括主设备(12),主设备(12)适于接收从设备数据帧。
在本发明的一些实施例中,主设备包括具有低于0.05%的公差的时钟,而且从设备包括具有比主设备的时钟更低精度的时钟,以用于提供高速和具有成本效益的系统。本发明的实施例的优点在于,该系统是廉价的,因为从设备可以具有廉价的振荡器,同时避免碰撞。
在本发明的一些实施例中,至少一个从设备是传感器,并且主设备是主控制单元。
在本发明的一些实施例中,系统可被调整为运行根据本发明的方面的软件程序。
在所附独立和从属权利要求中阐述了本发明的特定和优选方面。来自从属权利要求的特征可以与独立权利要求的特征以及与其他从属权利要求的特征适当地结合,而不仅仅是如在权利要求中明确阐述的那样。
根据此后所描述的(多个)实施例,本发明的这些方面和其他方面将是显而易见的,并且参考这些实施例阐明了本发明的这些方面和其他方面。
附图说明
图1图示出与主设备的UART采样事件相比,快速和慢速从设备的现有UART位传输。
图2是具有根据本发明的实施例的方法步骤的示意图。
图3图示出根据本发明的实施例的通信帧。
图4A和图4B图示出考虑最坏情况的用于两个从设备示例的通信帧,该示例具有标称的、慢速和快速运行的振荡器。
图5和图6分别图示出根据本发明的实施例的控制系统和被实现为传感器系统的主-从系统。
图7图示出了根据本发明的实施例的从设备。
图8A和图8B图示出在每个从设备中执行的间隙计算的迭代计算方案。
各附图仅是示意性而非限制性的。在附图中,出于说明性目的,要素中的一些要素的尺寸可被放大且未按比例绘制。
权利要求中的任何附图标记不应被解释为限制范围。
在不同的附图中,相同的附图标记指代相同或相似的要素。
具体实施方式
将就具体实施例并且参考特定附图来描述本发明,但是本发明不限于此而仅由权利要求书来限定。尺度和相对尺度不对应于对本发明的实施的实际减少。
此外,说明书中和权利要求中的术语第一、第二等等用于在类似的要素之间进行区分,并且不一定用于在时间上、空间上、以排名或以任何其他方式描述顺序。应理解,如此使用的术语在适当的情况下是可互换的,并且本文中所描述的本发明的实施例能够以与本文中所描述或图示的不同的顺序来进行操作。
要注意,权利要求中使用的术语“包括”不应被解释为限定于其后列出的装置;它并不排除其他要素或步骤。因此,该术语应被解释为指定如所提到的所陈述的特征、整数、步骤或组件的存在,但不排除一个或多个其他特征、整数、步骤或组件、或其群组的存在或添加。因此,术语“包括”涵盖了仅存在该陈述特征的情况以及这些特征和一个或多个其他特征存在的情况。因此,表述“一种包括装置A和B的设备”的范围不应当被解释为局限于仅由组件A和B构成的设备。这意味着对于本发明,设备的仅有的相关组件是A和B。
贯穿本说明书对“一个实施例”或“实施例”的引用意指结合该实施例所描述的特定的特征、结构或特性被包括在本发明的至少一个实施例中。因此,短语“在一个实施例中”或“在实施例中”贯穿本说明书在各个地方的出现并不一定全部指代同一实施例,而是可以指代同一实施例。此外,在一个或多个实施例中,如通过本公开将对本领域普通技术人员显而易见的,特定的特征、结构或特性能以任何合适的方式进行组合。
类似地,应当领会,在本发明的示例性实施例的描述中,出于精简本公开和辅助对各个发明性方面中的一个或多个的理解的目的,本发明的各个特征有时一起被编组在单个实施例、附图或其描述中。然而,该公开方法不应被解释为反映要求保护的发明要求比每一项权利要求中明确记载的特征更多的特征的意图。相反,如所附权利要求所反映,发明性方面存在于比单个前述公开的实施例的全部特征更少的特征中。因此,具体实施方式之后所附的权利要求由此被明确纳入本具体实施方式中,其中每一项权利要求本身代表本发明的单独实施例。
此外,尽管本文中所描述的一些实施例包括其他实施例中所包括的一些特征但不包括其他实施例中所包括的其他特征,但是如本领域技术人员将理解的那样,不同实施例的特征的组合旨在落在本发明的范围内,并且形成不同实施例。例如,在所附的权利要求书中,所要求保护的实施例中的任何实施例均能以任何组合来使用。
在本文中所提供的描述中,阐述了众多具体细节。然而,应当理解,可以在没有这些具体细节的情况下实施本发明的实施例。在其他实例中,公知的方法、结构和技术未被详细示出,以免混淆对本描述的理解。
在本发明的实施例中对“主(master)设备”作出引用的情况下,引用的是主单元,主单元是生成控制被称为“从设备”或“从单元”的一个或多个电子单元的命令的电子单元。通常,主设备是控制器并且具有处理能力,例如它可以是控制单元,通常被称为主控制单元或MCU。在下面的描述中,虽然“电子控制单元”或ECU将经常被提及,但一般来说,任何控制单元(例如处理器)都可以作为主设备。从设备与主设备之间存在信息和命令的交换。例如,从设备可以向接收方主设备传输信息。
在下文中,将对“频率偏移”进行引用,“频率偏移”被定义为从设备的实际频率(Fr)与它的标称频率(Fnom)之间的差,所以偏移被获得为Fr-Fnom。应注意,从设备应该以与主设备相同的频率运行,所以标称频率Fnom和主设备的频率Fmas被选择为相同。因此,偏移也可以根据实际的从频率和主频率来表示,如Fr-Fmas。这就是为什么主设备需要非常准确的振荡器的原因,所以主设备的实际频率实际上与它的标称频率相同。从设备的频率偏移可以是正的(当实际频率高于标称频率时),使得从设备比它应当的要快(比主设备快),从设备的频率偏移或者可以是负的(当实际频率低于其标称频率时),使得从设备比它应该的要慢。最正的频率偏移与最负的频率偏移之间的差定义了公差带,通信必须在该公差带内工作。
本发明涉及节点之间的信息交换和通信。该通信允许以降低的总线碰撞或电磁兼容(EMC)问题将从设备数据帧发送到另一个单元(通常是主单元)。
本发明可应用于需要在被称为节点的电子元件之间进行总线通信的任何系统,其中一个节点可以是充当主设备的控制单元(如ECU),并且至少一个进一步的节点可以是从设备,例如传感器(例如电流传感器或位置传感器)。然而,它也可以应用于其中从设备是任何模块或子系统的存储器或寄存器、或其中从设备是致动器、或照明系统中的光节点等等的系统。在一些实施例中,本发明可应用于主设备发起从一个或多个从设备到主设备的数据传输的系统。例如,主设备可以向致动器发送控制命令以安放在给定的位置,这由致动器解释为触发。在位置被确定之后,致动器可以根据本发明的实施例的向主设备传递回状态信息。在一些实施例中,发送到主设备的数据可以是诊断信息。
节点之间传输的数据(特别是从设备到主设备传输的数据)需要被计时,为此,它们之间要交换若干信号。这些信号作为被组织在数据分组中的位被发送。数据分组被编组在数据帧中,从而形成通信帧。通信帧包括由主设备发送的数据帧和由一个或多个从设备发送的数据帧。数据帧通常由从设备根据来自主设备的请求发送。例如,在主设备与从设备和/或需要发送数据的若干从设备之间存在重叠的帧、或碰撞、或一般的通信不同步的风险。为了减少数据帧碰撞的机会,同步位由主设备发送。通过允许从设备之间的通信,可以减少或避免数据碰撞,但这需要复杂的通信协议。一些解决方案包括在主设备与从设备之间进行仔细的同步,以便避免它们之间的不同步。
通信可以在通用异步接收发射器(UART)系统中执行。图1示出UART中的、主ECU对两个从传感器进行采样的现有通信的示例。因为从设备使其自己的电子组件与主设备分开,因此可能会出现从设备以比主设备的速度高的速度运行,或以更低的速度运行。在图1的特定示例中,通信是以例如一个或多个开始位Sr发起的,接着是8个数据位0...7,然后是一个或多个停止位Sp。这些位发出传输的相应开始和停止的信号并且有助于检测传输中的故障等等。
一组(例如八位位组)的数据位、开始位或(多个)开始位以及停止位和(多个)停止位在字节时间(Tbyte)内通过总线传输。从设备传输这些位中的每个位花费的时间是位时间(Tbit),也被称为位时间。它可以被定义为在系统中的单个点处的位的持续时间,所以不包括附加的时间(延迟、物理层中的处理时间、传输时间等)。进一步地,字节时间可以被定义为第一个开始位中间与最后一个停止位中间之间的时间。它也可以被定义为这些位的上升沿或下降沿之间的时间,或这些位的位时间中的任何其他时刻,例如这些位的位时间的25%或75%。在任何情况下,数据的传输开始于每个从设备的传输开始。从设备是与每个其他从设备不同并且与主设备不同的电子元件,需要以某种方式在彼此之间进行同步,以便避免同时传输位,同时传输位将产生数据碰撞和其他EMC问题。图1示出了在预定的时间(Tbyte)内对字节的采样,其中ECU UART的采样事件是固定的。更详细地,总线上的位流的ECU UART采样事件由ECU提供,ECU是通信系统中的主设备,并且采样事件是高度精确的,例如,它们可以在由精确的时钟(诸如具有例如标称晶体振荡器频率的+/-0.02%公差的介质谐振器或晶体振荡器时钟)导出的时基上运行。
图1中示出的滞后问题可能是碰撞的原因,特别是当若干从设备按顺序向一个主设备发送其数据时。为了解决该问题,每个从设备可以包括精确的时钟。因此,Fnom=Fr=Fmas。然而这并不具有成本效益。通常,连接到总线的从设备以其标称振荡器频率高于(例如高数个数量级)主设备的精度时钟的公差,在低精度振荡器频率下运行。
这导致采样事件的持续时间与来自从传感器的每个位的传输时间(Tbit)略有不同。在最坏的情况下,可能存在在该公差带的低频率上运行的从设备,这意味着相比于在其标称频率上或在该公差带的高频率上运行从而具有快速MUART(“快速从设备”,具有正的频率偏移)的其他从设备,该从设备的MUART运行缓慢(“慢速从设备”,示出负的频率偏移)。图1的顶部和底部分别示出慢速从设备(传感器1)和快速从设备(传感器2)的情况,传感器1是具有253.5纳秒的Tbit和2535.0ns的Tbyte的慢速从设备,并且传感器2是运行快速MUART的、具有240.0ns的Tbit和2400ns的Tbyte的快速从设备。可以容易地看出,UART字节的位正在滑离ECU UART。由于振荡器的频率失配,慢速从设备的位传输落后于ECU UART采样事件而开始,而快速从设备的传输提前于ECU UART采样事件而开始。这可能会在UART帧的第一个UART字节或随后的UART字节中的一个UART字节处导致通信失败,因为失配是累积的。当若干字节被发送时,对于至少一个从设备而言可能会出现EMC问题。对于多于一个从设备而言,由于时钟失配而引起两者均以不同的时钟速度运行,可能存在数据碰撞。
尽管通过校准和同步可以减少时钟失配,但问题仍然存在。例如,RC振荡器可能有非常高的公差(例如+/-15%,甚至高达+/-60%),但该变化可以被减少到+/-5%或更低,例如+/-2.5%或+/-1%(这仍然比昂贵得多的晶体振荡器高)。RC振荡器的减少的公差带(例如+/-2.5%)确保传感器的至少一个数据字节在没有故障的情况下被传输。物理层与异步接口的组合带来的优点在于,每个数据字节与每个开始位采样都是“重新同步的”。然而,由另一传感器传输的另一数据分组可能会在总线上引起数据碰撞,因为传感器彼此不同步,而且不满足给定数据分组传输的时间预算。
本发明旨在通过将数据字节编组在包括至少一个数据字节的数据分组中,并添加不发送信息的时间段来解决该问题,该时间段具有由每个从设备通过存储在其中的参数单独建立的持续时间。该时间或间隙可能发生在传输数据字节之前、发生在传输数据字节之后或既发生在传输数据字节之前又发生在传输数据字节之后,这取决于频率偏移(从设备是慢速还是快速)。因此,将数据分组拆分成以连续的UART字节形式的数据分组以用于以不是在位的级别上、而是在数据分组的级别上进行较高频率偏移的重新同步是有利的。从时隙的计算是基于具有避免数据碰撞的稳定通信(例如,单个UART)的频率偏移。
本发明将在公知的UART通信系统的基础上进行解释,UART通信系统通过特定特征被加强,以使主设备与从设备之间能够进行高速通信。本发明不限于UART。
本发明可以提供使用精确时钟的主设备,而从设备可以使用具有比主设备的时钟低精度的、具有成本效益的RC振荡器。此类架构例如可以是其中不同的传感器将其感测信息传递给电子控制单元ECU的传感器网络。由于在从设备处使用具有成本效益的RC振荡器和增强的UART作为通信的基础,因此整个系统将以低成本实现高速通信。
在下文中,公开了从设备-主设备通信方法、包括适合于执行该方法的从设备的系统和总线协议,该总线协议为具有减少的数据碰撞的稳健且快速的信号传输提供灵活的通信网络。
在第一方面,提供了从一个或多个从设备向主设备传输信号的方法,例如从传感器向控制器传输数据,该控制器基于接收到的数据来生成响应。进一步,该方法可以是从传感器到ECU的数据传输的方法,例如从无刷DC电机的位置或无刷DC电机的电流传感器到控制无刷DC电机的ECU。
图2示出了图示出根据本发明的各实施例的方法的各步骤的示例流程图。该方法包括生成(200)通信帧,该通信帧包括由主设备发送的信号(请求信号,包括例如同步信号)和从从设备传输到主设备的数据信号。该方法包括在主设备的请求下(例如在接收到由主设备生成(206)的并发送给每个从设备(如果只有一个从设备,则发送给该从设备)的请求时)生成(201)从设备数据帧。生成(201)数据帧包括生成(202)数据分组,包括在发送(205)数据分组之后、发送数据分组之前或发送数据分组之后和发送数据分组之前,生成(203)其中没有信息被发送的至少一个间隙。这是在每个从设备中完成的。
更详细地,每个数据帧包括形成数据分组的、被称为字节的一个或多个位集合。给定的从设备在预定的时刻并且以可能与主设备的采样信号不同的时钟信号发送(205)数据分组中的相关信息。信息通常以开始位开始并且以结束位结束。为了确保与在先的或在后的传输没有数据碰撞,数据帧包括缓冲时间、或其中没有信息被发送的间隙。因此,数据分组的传输在接收到由主设备发送的同步信号的预定时间之后开始。该预定的时间包括解决了通信中的主设备与从设备之间数据帧传输的定时失配的同步项、或时间间隙。在本发明的实施例中,间隙可以在数据字节的有意义的数据分组发送之前、或在数据字节的有意义的数据分组发送之后、或既可以在数据字节的有意义的数据分组发送之前又可以在数据字节的有意义的数据分组发送之后发生。这将取决于从设备是快速的还是慢速的,并且在一些实施例中还取决于数据传输的顺序。该间隙是从每个从设备可以提供(204)的参数中获得。
本方法可以容易地应用于任何数字异步接口。通常,这些接口必须应对发射器(TX-例如传感器或从设备)和接收器(RX-例如ECU或主设备)之间的频率失配。在本发明的实施例中,该方法被应用于UART协议中,并且它可以包括本领域中已知的特征。例如,它可以是具有开始(低位)和停止(一个或两个高位)指示的异步协议(UART)。有利的是,接收器(主设备)只需在单个UART帧内应付TX-RX-频率偏移。
在本发明的实施例中,该方法可应用于触发式时分多址(TDMA)帧。图3示出了如在本发明的各实施例中提供的示例性通信帧。时间间隙被包括在数据帧的从设备传输期间,这减少了EMC问题。进一步地,本发明确保从若干(两个或更多个)从设备(传感器、发射器)到主设备(ECU、接收器)的无碰撞数据传输。图3的通信帧包括:
-主设备数据帧,该主设备数据帧由主设备生成和发送。在一些实施例中,主设备数据帧包括“帧的开始”(SOF)字节。在一些实施例中,主设备数据帧包括同步脉冲。
-一个或多个从设备数据帧,该一个或多个从设备数据帧由一个或多个从设备生成并且以取决于从设备ID号的顺序发送,因此例如,具有ID=2的从设备被编程为在具有ID=1的从设备之后发送。
每个从设备数据帧包括具有一个或多个数据字节的数据分组,例如例如具有要被传输到主设备的传感器信息的数据分组。本发明包括在至少一个数据帧中不包含信息的间隙。
在一些实施例中,该间隙可以在所述数据分组的第一个数据字节开始之前,存在于所述从设备数据帧的开始处。在一些实施例中,间隙可以被包括在所述数据分组的最后一个数据字节之后的所述数据分组的末尾处。在一些实施例中,在数据分组的开始处存在间隙并且在数据分组的末尾处存在第二间隙。
一个或多个间隙具有基于本地地存储在所述至少一个从设备中的每个从设备中的参数的持续时间或时间长度的依赖关系。在一些实施例中,为了生成(203)间隙,用于计算持续时间的参数包括从设备ID号,该从设备ID号对每个从设备来说是唯一的。
更详细地,参考图3,图3示出了主设备与2个传感器(从设备)之间的通信。第1个数据字节是由主设备ECU D0...ECU D6生成的。这是帧的开始(SOF)字节。由主设备或从设备生成和发送的每个字节的第1个数据位包括字节的开始(SOB)信息。SOB位进一步包括数据方向交换信息:
-SOB=0:由ECU请求的数据的开始(SOF字节)。
-SOB=1:包含由从设备发送的数据的MUART字节。
接下来的12个字节是由两个从设备(传感器)生成的数据字节。由给定的从设备生成和发送的所有数据字节符合该给定从设备的数据分组。该给定从设备的数据帧包括数据分组和也由该给定从设备生成和发送的两个间隙。
数据字节在通信中携带信息,而间隙不携带任何信息。间隙只用于通信帧中的碰撞避免。
在图3中,第一个从设备(传感器1)传输包括六个数据字节(仅示出了第一个和最后一个传输数据字节)并且包括间隙的一个数据分组,随后是由第二传感器(传感器2)传输其包括另外六个数据字节和间隙的数据分组。在该特定的示例中,每个传感器传输六个数据字节,在实践中该数量也可以更高。从设备不需要传输相同数量的字节;每个从设备可以根据应用传输它所需要的数据字节数量。这可以通过为所有从设备保持相同的时间预算来完成,其中在所要求的数据被给定的从设备传输之后,对于时间预算的其余部分而言没有要被该从设备传输的数据,或者可以通过在所有从设备中运行的算法将该数据考虑在内,以相应地计算出间隙。
对于图3中的给定示例,传感器1的数据分组是数据字节1...6,其中每个数据字节携带SOB位和7个数据位。传感器1的数据帧包括数据分组并且附加地包括间隙GAP1a和GAP1b。GAP1a和GAP1b具有基于本地地存储在从设备(传感器1)中的参数的给定时间长度。这两个间隙的时间长度或持续时间也在从设备(传感器1)中被计算。
在一些实施例中,间隙的位置(在帧的开始处或在帧的结束处或既在帧的开始处又在帧的结束处)可能取决于从设备的频率偏移是正的还是负的,如将参考图4进行解释。然而,在一些实施例中,在传输来自如图所示的第一传输从设备(传感器1)的第一个数据字节之前总是包括间隙(GAP1a)。这允许减少主设备与从设备之间的任何噪声源或弹跳的影响(例如,一个或多个物理层,如将参考图6进行解释)。在一些实施例中,如果在最后一个从设备的数据分组之后存在间隙,则主设备可以遵守最后一个间隙或者不遵守最后一个间隙,在这种情况下,主设备可以在已从最后一个从设备接收到数据之后初始化新的请求,而不需要遵守最后一个间隙。在其他实施例中,例如在温度感测系统中,相比于可检测的温度改变,传输时间是短的,主设备可以在开始新的数据/同步请求之前包括预定的时间段,以便节省能源,并且不管最后一个间隙的存在如何。在替代的实施例中,例如在具有固定帧速率的应用中(具有同步/地址SYNC/ADR位的脉冲重复率),重复率在大多数情况下是基于PWM生成的信号。由于这些信号难以在“即时地(on the fly)”被静止,因此可以在通信的末尾处留下非常大的间隙(如果存在的话),以避免最后一个从数据分组与主设备SYNC/ADR的数据碰撞。
类似地,第二传感器(传感器2)在传感器1的传输结束之后传输其数据分组。传感器2的数据分组包括数据字节1...6。这些数据字节携带SOB位和7个数据位。传感器2的数据帧包括数据分组并且附加地包括间隙GAP2a和GAP2b。GAP2a和GAP2b也是由传感器2基于本地地存储在传感器2中的参数计算出的。
可以理解,一个主设备和若干从设备可以被连接在总线上。任何数量的从设备可以被连接,只是受限于例如可能会增加碰撞概率的从设备振荡器的热效应,并考虑按照每时间单位的原始位的通信效率,其中从设备/字节数量很高。随着从设备数量的增加,它们必须在具有越来越多的间隙(以及根据一些实施例的越来越多的间隙长度)的通信帧中进行响应,因此在实践中,可以根据所需的速度使用最优的从设备数量。在优选的实施例中,至多8个从设备可以连接到主设备,因此可以以高速来完成传输,并在每个从设备的数据分组中包括间隙。可以进一步理解,数据分组可能包括若干字节。在优选的实施例中,它可能是1...6字节。
在一些实施例中,这些间隙由给定从设备的MUART生成并被包括在数据分组中,其中间隙的时间长度由该给定从设备基于本地地存储在该给定从设备中的参数计算出。
也可以使用其他替代方案,诸如具有高实现成本并且是SYNC训练序列或曼彻斯特代码的用于数据恢复的PLL。然而,数据效率被降低。可以使用完全双向的从设备接口,但每个从设备均需要更高的准确性来实现更严格的频率偏移。替代地,每个从设备均可以被触发,这导致数据效率的损失。可以使用远程触发方法,但需要较慢的数据速度,并且可能导致针对上升沿/下降沿的高隐性位宽变化和不同传播延迟。
考虑到基于例如从设备时钟的频率的参数(诸如频率偏移),间隙可以被生成并且被引入到在数据分组中。这些参数可以在校准期间被提供(204)。
图4示出完整的通信帧,该通信帧包括由主设备发送的帧的开始(SOF)指示,接着是由每个从设备发送的数据帧序列,该数据帧序列包括间隙和它们相应的数据分组(可以是传感器的数据分组的“数据分组从设备1和数据分组从设备2”)。示出针对四种情况的仅两个从设备的数据帧(本发明不限于两个从设备):
-图4A示出了在图的右边处的、两个从设备的电阻电容振荡器(RCO)在标称频率下的情况。
-图4A示出具有在正频率偏移下运行的RCO的第一从设备(因此,是“快速从设备”)和具有在标称频率下运行的RCO的第二从设备的最坏情况的场景。
-图4B示出在图的右侧的、具有在负的频率偏移下运行的RCO的第一从设备(因此,是“慢速从设备”)和具有在正的频率偏移下运行的RCO的第二从设备(因此,是“快速从设备”)的最坏情况的场景。
-图4B示出具有在负的频率偏移下运行的RCO的第一从设备和第二从设备(两个从设备都是“慢速从设备”)的最坏情况的场景。
可以设想其他模式的情况。每个从设备的频率可以是不同的。
每个数据帧包括数据分组,数据分组可以由一个或多个UART字节组成。传输时间和时隙可由时分多址(TDMA)确定,并且在本发明的实施例中,所定义的持续时间(或时间长度)的一个或多个间隙被插入每个从设备的每个数据帧中。间隙长度和TDMA时隙基于以下参数中的一个或多个参数,按照RC-振荡器的时钟周期来计算,例如:
-从设备ID
-预期的RC-振荡器频率公差
-RC振荡器频率
-UART波特率(传输速度)
-UART格式(包括开始指示和停止指示的多个位:8N1、8N2...)
-物理层TX/RX延迟
-数据分组中的UART字节的数量
这些参数被存储在存储器(例如每个从设备中的非易失性存储器)中。
例如,至少间隙的开始是基于从设备的ID,从设备的ID确定包括一个或两个间隙的分组开始传输的时刻。因此,清楚的是,确定间隙的每个参数在每个从设备中是不同的。另外,每个从设备的时钟系统在实践中可能彼此不同,特别是当从设备是廉价的振荡器时。
以下要求被设置用于所定义的时隙,间隙在所定义的时隙中被插入每个从设备的数据帧中:
-快速运行的从设备(正的频率偏移)在帧的开始(SOF)指示的最后一个停止位期间不应该访问总线。这将被帧的开始(SOF)字节和第一个数据分组之间的GAP1a覆盖。
-在慢速运行传感器(负的频率偏移)已完成其传输/总线访问之前,快速运行的从设备不应访问总线。这一点被每个传感器数据分组之间的GAP1b和GAP2a(分别为GAP2b和GAP3a、GAP3b和GAP4a,...)覆盖。
-所有慢速运行传感器的总和应在通信帧内完成其传输。这将被(最后一个)GAPNb覆盖。由主设备发送的SOF字节发起的下一个通信帧开始新的周期。
在一些实施例中,唯一的从设备ID与振荡器频率或相关参数(诸如偏移)相结合,这可能对于每个从设备而言均是唯一的。因此,每个从设备可以在适当的持续时间期间,在正确的时刻正确地放置间隙,并在正确的时刻传输数据。间隙是基于本地振荡器时钟节拍的数量和从设备ID号。
向主设备传输从设备数据帧可以按顺序地完成,因此每个从设备以有序序列向主设备通信。在本发明的实施例中,间隙的持续时间或时间长度被定制为针对每个后续的从设备而增加。如前所解释,在本发明的一些实施例中,间隙可以根据从设备ID号计算出,所以序列中从设备ID号中的逐渐增加的号码导致逐渐增加的间隙。在本发明的一些实施例中,间隙的持续时间被定制为随着通信帧中的实际时间而增加(Tgap1<Tgap2<Tgap3<Tgap4<...),其中Tgap1=GAP1a,Tgap2=GAP1b+GAP2a,Tgap3=GAP2b+GAP3a....,因为由主设备发送的数据帧具有作为同步的固定参考点的脉冲下降沿。最后一个或多个从设备具有足够的空间提供无碰撞的传输是有利的。
在一些实施例中,间隙持续时间随着实际时间的增加是在使用定时器计数器和每个从设备(例如,每个从属设备中的处理单元)的计算下完成的。这是由可以至少使用从设备ID的迭代计算提供的。
该过程可以看作是定时误差的累积效应,以主设备的SYNC/ADR的下降沿开始,直到从设备传输的开始。该累积误差随着时间的推移而增加。因此,间隙也必须随着时间的推移而增加(从设备的数量),以补偿定时误差。这正是图8的迭代间隙计算的一部分。
每个传感器的传输的开始时间点可以使用递归算法来计算。该算法可以适于特定的主-从系统。例如,在一些包括物理层的实施例中,可以将来自该层的延迟考虑在内。因此,每个传感器的开始点可以分别参考每个从设备的本地振荡器时钟频率和时钟周期的数量。
在下文中,本发明的第二方面将作为控制系统来呈现。该系统和算法的具体实现方式将被示出。
在本发明的第二方面,提供了主-从控制系统,其中从从设备到主设备的数据传输减少了EMC问题,并且没有遭受数据碰撞或自碰撞。例如,不需要在从设备中添加同步装置,例如不需要锁相环(PLL)。
尽管主设备被假定在稳定的时基上运行(例如高度精确的振荡器,诸如晶体振荡器或介质谐振器),但简单的RC振荡器可以在每个从设备中使用。实际上,任何廉价的振荡器,甚至与晶体振荡器相比频率稳定性较差的振荡器,都可以在每个从设备中使用。另外,可以使用简化的从设备,因为不需要实现完整的接收器。
如前所解释的,通常的趋势是在通信系统中添加要素(例如通过添加从设备之间的通信等等),以改善位传输和时钟的同步,从而旨在解决主采样事件和从设备的Tbits之间的滑动问题,如图5所示。本系统不需要这些要素,尽管传感器是不同步的,并且在数据位传输与采样事件之间可能存在有限的移位,但它仅限于字节传输。根据本发明的实施例,系统的要素考虑到存储在从设备中的参数(例如,考虑到从设备的频率偏移)确保在数据分组之间添加间隙,这些间隙“重置”失配,并且避免数据碰撞。
这些要素包括例如,软件程序,该软件程序在连接到主设备的从设备的处理单元中被执行时,适于执行本发明第一方面的方法。该软件程序可适于从主设备读取从设备的输入,因此,在接收到来自主设备的适当信号之后,从设备可以根据本发明的方法向主设备发送数据。要发送的数据类型可以从从设备的其他要素中收集。在一些实施例中,主设备可以向充当从设备的一组传感器发送命令,从而触发这些传感器向主设备发送所收集的测量数据,例如电流、磁场测量数据等。本发明并不限于这些示例,并且它可以是其他类型的感测数据,或者甚至是其他类型的数据。
在本发明的方面,提供了主设备与从设备之间进行通信的系统。该系统可以包括主设备和一个或多个从设备,例如该系统可以是传感器系统,例如它可以是控制系统的一部分。一个或多个从设备适于通过生成和传输从设备数据帧与主设备进行通信,该从设备数据帧包括具有至少一个数据字节的数据分组和具有可变时间长度的至少一个间隙,该间隙在从设备数据帧的开始处(在所述数据分组的第一个数据字节开始之前)或在所述数据分组的末尾处(在所述数据分组的最后一个数据字节结束之后)的所述从设备数据帧中不包括信息。间隙具有基于本地地存储在所述至少一个从设备中的每个从设备中的参数的时间长度依赖关系。主设备适于接收从设备数据帧。在一些实施例中,从从设备到主设备的数据传输是由主设备向从设备发送(例如,广播给所有从设备)的命令而触发的。
图5示出了根据本发明的各实施例的示例性控制系统(10)。电机控制器(11)结合了例如提供控制信号以向设备供电的电子控制单元ECU(12)。在该特定的示例中,ECU驱动无刷DC(BLDC)电机(16)以及若干从设备(13、14、23)(诸如被连接到ECU(12)的传感器)。例如,从设备(13、23)可以例如是适于感测BLDC电机的相电流的电流传感器(13)。进一步地,扭矩传感器或转子位置传感器(14)也可以被连接到ECU上。ECU(12)和传感器(13、14)在控制系统(10)内形成传感器系统(20)。传感器和ECU经由线束(15)互连并且形成差分异步的多传感器总线。在该总线架构中,ECU满足了主设备(12)的作用,而所有的传感器执行从设备功能。然而,也可以使用任何其他类型的主控制单元和从设备。
如从通常的主/从总线架构可以知晓的,任何通信总是由主设备触发的。该触发器可以例如是本领域中已知的同步脉冲(例如如在公开US2019/0028217A1中所描述的,特别是第[0029]-[0038]段)或任何其他初始化装置。特别是对于TDMA而言,时隙是对由ECU生成的同步字节(例如帧的开始(SOF)字节)导出的触发事件的引用。例如,它可能是由SOF帧定义的下降沿,SOF帧作为由如图3中的ECU请求的信息被发送。触发不是本发明的重点。
图6示出了根据本发明的实施例的传感器系统(20)。它包括作为主设备的ECU(12)和从设备(23)。在一些实施例中,该系统可进一步包括物理层(24),例如,每个从设备有一个物理层且主设备有一个物理层。
物理层本身可以包括信号转换器,信号转换器用于将信号RX_Data(RX_数据)、TX_Data(TX_数据)转换为DL1和DL2。物理层经由数据线DL1和DL2连接到线束(15)。在一些实施例中,DL1和DL2可以携带差分信号,差分信号对线束上的干扰是非常稳健的。干扰可能是例如电磁干扰。物理层具有共同的特性,即主设备与从设备之间的通信中包括延迟。该延迟通常是已知的,并且它可以进一步用于计算为物理层可能导致的最大延迟。物理层可以是收发器(诸如CAN收发器)或RS-485层,本发明不限于此。
更一般地,在双向(半双工)多传感器总线系统中,必须考虑物理层的延迟特性。必须考虑到可用层中使用的特定物理层。例如,CAN总线标准定义了RX延迟、TX延迟和回送延迟,以及从显性状态过渡到隐性状态时可能的上升沿位移,而RS-485要求定义TX-RX周转时间和RX-TX周转时间来切换每一个节点的数据方向。
若干物理层可以经由DL1和DL2连接到线束(15),线束(15)进一步将这些信号再次转换为RX_Data(RX_数据)、TX_Data(TX_数据),并将其提供给该传感器系统(20)中的从设备(23)。然而,物理层的存在是可选的。例如,如果仅有一个传感器连接到ECU,并且如果线束非常小并且仅存在短的互连,则可以避免物理层。此类配置当然是可能的,例如,如果ECU和传感器位于同一印刷电路板(PCB)上。即使在这种情况下,本发明也允许减少由于信号弹跳等等引起的碰撞。
在本发明的一些实施例中,ECU(12)包括例如UART(21)和同步(Synch)脉冲生成单元(22)。UART向物理层(24)提供传输数据信号TX_数据。UART进一步接收来自物理层的接收数据信号RX_数据。同步脉冲生成单元在TX_数据线上生成例如同步脉冲,以便从ECU启动通信。ECU进一步包括高精度振荡器,使得UART和同步脉冲生成单元以高精度工作。此类振荡器的公差可以是例如标称振荡器频率的+/-0.02%。在一些实施例中,该振荡器例如是作为主设备的时钟(25)的晶体振荡器。
图6中仅示出两个传感器(23)。在优选的实施例中,传感器的数量可能在1至8之间,但也可能更高。传感器(从设备)通常具有不同的传感器标识号(ID),以便在没有冲突的情况下以正确的方式与ECU(主设备)建立通信。在仅有一个从设备的情况下,ID可能不会被用来提供间隙。例如,振荡器频率、其偏移等等可用于计算一个或多个间隙的持续时间和位置。间隙仍然可以被提供以减少例如由于信号弹跳(例如由于物理层的存在)而引起的EMC干扰的机会,以克服通信线中的延迟(布线、接收器或发射器的延迟等)。在使用物理层(例如CAN收发器)的特殊情况下,甚至对于单个从设备设置而言,总线访问和总线传输延迟将存在。本发明允许通过添加间隙来处理这些问题,而不是在全双工系统中使用包括分开的RX/TX线的复杂物理层。
图7示出根据本发明的实施例的作为例如传感器的从设备(23)。例如,该传感器可以是任何合适的传感器,诸如前面提到的电流传感器或扭矩传感器。传感器可以感测或测量物理参数,并且可能需要在给定时刻传输这些数据。由此,传感器的感测方面不是重要的,并且因此不在对其进行进一步地算出。
对于数据传输的范围,传感器经由通信接口连接到总线。例如,通信接口可以是经修改的UART(MUART)(30)。
除了其用于接收数据字节并将其传输到总线的自然功能之外,通信接口进一步被布置成用于根据本发明的实施例的在通信中添加具有可变持续时间的间隙。间隙在该帧中可以被定义为在该传感器的传输线TX_数据上没有活动信号时,在给定的从设备的传输序列中的时段。间隙具有定义它的持续时间或时间长度的开始时间点和结束时间点。
在图7的特定实施例中,充当从设备的传感器(23)进一步包括可以是可编程的控制器、处理器、微处理器等等的计算和处理单元(31)。该处理单元适于基于预定的参数来计算或确定将例如由MUART包括在通信中的间隙的开始时间点和结束时间点。在一些实施例中,时间计数器(32)递送时基,该时基被计算和处理单元(31)进一步用于计算间隙。时间计数器(32)可以被包括在处理单元(31)中,尽管本发明不限于此。在一些实施例中,MUART可以被拆分成两个块,一个UART块和一个多功能块。在该情况下,多功能块包括具有来自计数器的信息的间隙。UART从计算间隙的多功能块接收使能位或信号。下一个从设备帧在前一个从设备帧的传输结束或其第二个间隙结束之后开始,并且UART再次接收激活信号。
传感器包括存储器(33),存储器(33)被布置成用于接收和存储用于计算间隙的预定参数。在一些实施例中,存储器可以是非易失性和可(重新)编程的存储器(33),例如,只读存储器(ROM)、电可擦除和可编程存储器(EEPROM,闪存)或一次性可编程存储器(OTP)。
在本发明的一些实施例中,预定参数可以在使用MUART的一个或多个校准步骤期间被接收并被提供给从设备(例如传感器)的非易失性和可编程存储器。在一些实施例中,预定参数可由该传感器的校准接口(34)提供。本发明不限于这些示例。例如,这些参数可以是外部提供的。例如,电阻器编码可以被使用。例如,第一PCB可以包括连接到作为传感器的从设备(23)的100欧姆的电阻器,而PCB 2可以包括例如200欧姆等等的不同的电阻器。传感器可以借助于ADC测量电阻值并导出其ID。使用具有不同电容值的电容器的不同实现方式可以被使用。在本发明的实施例中,从设备可以包括引入ID的输入。例如,IC中的从设备可以包括3个引脚,其中有源电压电平(000、001、011等)可以被施加,其中1与从设备的电源相对应,并且0与接地相对应,因此ID的二进制码可以在外部被设置。
在一些实施例中,传感器被布置为集成电路(IC)。该IC可以进一步具有例如微控制器的架构,在微控制器的架构中,传感器的所有所述组件经由内部总线(36)交换信息、地址和数据。
在一些实施例中,这些参数中至少一些参数在校准步骤(例如在半导体制造商的生产线上)期间被提供。所述参数的另一部分可能在传感器系统供应商的下线编程时被提供。因此,几个校准步骤(例如仅有一个校准步骤)可以是可能的。
在本发明的一些实施例中,所述参数的一部分可能在半导体制造商的制造步骤期间已经被存储在只读存储器(ROM)(图7中未示出)中。
在一些实施例中,从设备包括作为从设备的时钟(35)的廉价振荡器(诸如RC振荡器),该振荡器为系统的所有组件提供时钟。
例如,未经校准的低精度RC振荡器可能具有标称目标频率的+/-60%或+/-30%或+/-15%的公差。通过校准,该变化可以减少到+/-5%或+/-2.5%或+/-1%的公差。然而,具有该校准结果的从设备的RC振荡器的公差仍然明显高于ECU的晶体振荡器的公差(例如+/-0.02%)。
RC振荡器被布置成用于在校准步骤期间被校准。尽管RC振荡器可以是低精度振荡器(例如,具有+/-2.5%或更高的精度公差),但帧中间隙的存在在不需要从设备之间复杂的通信或复杂的同步系统的情况下减少或避免了数据碰撞。
在下表中呈现了适于前述图的各示例的从系统和控制系统的特定算法实现方式,以及如图8A和图8B所示的用于由每个从设备执行的间隙计算的相关的迭代计算方案。在该特定的示例中,该实现方式是在传感器系统上完成的,但该实现方式也可以在任何其他合适的从系统上实现。
确定每个传感器的数据传输的开始的算法(100)包括迭代循环。连续迭代的数量取决于附接到总线的传感器的数量。该算法可以在从设备中(例如在从设备的处理单元中)执行。表1给出了作为该算法一部分的接口参数的具体示例,以便提供对该算法的更好理解。计算(100)的操作流程中的每个步骤都参考了表1中的行号和对应的结果。协议的定义由8N1、8N2…给出,8N1、8N2…定义数据位、奇偶校验位以及其是否存在等,如本领域所公知。
表1:本地地存储在每个从设备(传感器)中的参数的、包括迭代循环的计算示例
Figure BDA0003141478450000211
Figure BDA0003141478450000221
Figure BDA0003141478450000231
Figure BDA0003141478450000241
Figure BDA0003141478450000251
Figure BDA0003141478450000261
算法(100)计算出跨越从参考点(其可能是主设备的通信分组的第一边缘)到传感器开始传输的时间所需的时钟数。具有正频率偏移的快速运行传感器以所计算出的时钟数确定间隙的开始(即GAP1a,GAP2a,...的开始)。另一方面,可以看到,具有负频率偏移的慢速运行传感器根据算法(100)计算出的相同的时钟数来确定间隙的结束(即GAP1a,GAP2a,...的结束)。同样的方法应用于计算在所传输的数据分组末尾插入的间隙的开始和结束(即GAP1b,GAP2b,...的开始和停止)。
该过程以从存储器(例如EEPROM、OTP...)读取接口参数(102)开始。基于接口参数来计算主设备的数据分组的长度(103)。在存在外部物理层(24)的情况下,如果适用的话,可能包括附加的延迟。例如,首先传输的从设备可以在传输数据分组之前包括间隙,以将物理层引入的任何延迟或干扰考虑在内。还建议考虑最坏情况下的总线配置,该总线配置具有没有总线延迟的快速运行传感器,以及具有总线延迟的慢速运行传感器。这可能为避免碰撞引入附加的裕度。
在一些实施例中,例如,可以为具有负频率偏移的从设备引入附加的预定总线延迟,但对于具有正频率偏移的从设备可能不会引入总线延迟。这可以用来对前面提到的物理层延迟(源于例如CAN收发器的总线访问时间和RX/TX总线延迟)进行补偿。在本发明的一些实施方案中,可以考虑传播延迟,并且可以引入附加的预定总线延迟,而不管从设备的偏移如何。
计算出的主设备数据分组时间用于计算由具有正频率偏移(104)的快速运行传感器对该时间段进行采样可能需要的时钟周期的数量。
然后将从设备的ID与时隙进行比较,例如,将从设备的ID与反映分配给从设备的时隙的当前循环周期进行比较,直到存在匹配(105)。如果从设备(例如传感器)被分配到第一时隙,那么SlaveID(从设备ID)与ID=1相匹配(105),则时钟的数量被立即用来指示第一传感器的传输开始(106)。这时对于具有ID=1(108)的传感器而言,过程结束。快速运行传感器的传输开始定义了在分组结束时GAP1a的开始和GAP1b的开始。慢速运行传感器的传输开始定义了在分组结束时GAP1a的结束和GAP1b的结束。
所导出的间隙的开始点和结束点被存储在非易失性和可编程的存储器(33)或内部寄存器中。它们将在传感器传输时被使用。
如果传感器被分配到另一个时隙,所以ID不是1(从设备ID≠1)(105),则迭代循环过程开始。从设备在迭代中经历了以下四个步骤:
-从主设备的下降沿计算(107)从设备传输其完整数据分组所需的时钟数量。
-时间段Tslow(T慢速)被计算(109)。Tslow是慢速运行的从设备传输其完整数据分组将需要的时段。
-时钟数量#clock(#时钟)被计算(110)。参数#clock是快速运行传感器对完整的慢速运行传感器的数据分组时间进行采样将需要的时钟数量,该时钟数量被添加到来自任何先前步骤(例如先前迭代的步骤104、110)的结果。
-内部计数器被递增(111),从而生成下一个时隙,该下一个时隙再次与从设备ID进行比较(105)以获得存在匹配或不存在匹配,从而关闭循环。
时钟数量#clock被存储在存储器(33)或内部寄存器中。它们将在从设备传输时被使用。具体而言,它们可以用来确定每个从设备的传输开始。
如果从设备ID与所分配的时隙相匹配,则计算出的时钟数量就用来指示其传输的开始(106)并连续地结束(108)计算过程。
对于快速运行传感器而言,时钟数量再次导致GAP2a和GAP2b的开始时间点,并且对于慢速运行传感器而言,则导致GAP2a和GAP2b的结束时间点。
传输的开始是在从设备帧内完成的。当传输的开始发生在帧的开始之后,则可以说在数据传输之前生成了间隙。当传输在帧的结束之前完成时,则间隙在数据传输之后被生成。这是在确定Tslow和时钟数量时针对每个从设备而确定的。可以看出,时钟数量是由慢速运行传感器的完整绝对时间相加而获得的,但对快速运行传感器则应用时钟数量。还应注意,由于每次迭代中的时钟数量不断增加,所以具有比前一个从设备更大的从设备ID的从设备将积累更大的#clock(时钟数量)。换句话说,在本示例性算法中,每个后续从设备的一个或多个间隙在尺寸上增加。这有利地提供了在从设备的数量随着潜在累积的去同步化而增加时的较低的数据碰撞的机会。然而,本发明并不限于该示例性算法。
结论是,这对于所有后续计算出的从设备ID和它们的时隙(GAPNa和GAPNb)也是如此。
在图8和表I中已经解释了该算法,该算法假定从设备传输相同数量的字节。然而,如先前所提到的,不同从设备可能传输不同数量的数据字节。在此类情况下,在所请求的数据传输完成之后,在时间预算的其余部分中没有数据传输被执行。替代地,数据分组的长度可以在计算间隙时被考虑在内,并且算法可以被调整。例如,该长度可以在时钟的计算(107)期间针对每个传感器被灵活地计算和存储,因此间隙的计算将字节数量考虑在内。间隙和数据传输开始/结束是基于接收到来自主设备的同步脉冲之后计数的时钟脉冲。
总之,在特定的示例性实现方式中,本发明不限于此,每个从设备根据其ID计算其通信开始。每个数据帧开始时的间隙由给定的从设备在循环期间(时钟的计算(107)、Tslow的计算(109))建立。当数据分组被发送时,给定的从设备完成了发送数据,而下一个从设备尚未开始其数据帧。在给定从设备的传输结束与下一个从设备的数据帧开始之间所花费的时间符合给定从设备的数据帧末尾处的间隙。在一些实施例中,在通信帧的结束时,可以不考虑最后一个从设备数据帧末尾处的间隙并且主设备可以在最后一个从设备接收到最后一个数据位时开始新的周期。
应理解,代替迭代计算方案,可以使用基于查找表的算法。此类表可以基于存储在每个从设备的非易失性存储器中的参数矩阵,并在一个或多个校准步骤期间被提供给从设备,每个从设备的计算和处理单元(31)可以确定要被包括在每个传感器的数据帧中的间隙的时间。
从设备校准可以在有限数量的步骤中执行(204),例如,一个或两个。校准值可用于计算间隙,如图2所示。
用于校准的优选实施例例如可以是在第一校准步骤中向从设备提供(204)参数矩阵。该步骤可以在传感器供应商或半导体供应商的生产线上执行。例如,这可以在传感器作为集成电路(IC)提供的情况下完成。
参数矩阵可以被定义为多个参数,其中若干参数之间的关系被定义。例如,从设备的时钟频率(例如RC振荡器的频率)可以与所述振荡器以相应的频率致动的温度一起存储。替代仅存储一个RC振荡器的频率,将若干RC振荡器频率与温度一起存储。从设备可以被提供有内部温度传感器。例如,它可以被提供在形成从设备的集成电路中。取决于内部温度传感器的读数,可以为该从设备选择合适的RC振荡器频率,例如,在所测得的温度下匹配最接近的振荡器频率。其他参数组合也可以是可能的。
为了提供(204)参数,可以在供应商的制造线上执行校准,例如,可以在系统供应商的制造线上执行(204)第二校准步骤,其中可以为传感器分配数据和地址。例如,传感器可以只接收传感器ID号,传感器ID号也是用于计算或确定如先前所示的间隙的参数的一部分。用于校准的该实施例的优点是该校准步骤的简单性。
在本发明的实施例中,例如在振荡器随温度的漂移是已知的情况下,仅一个校准步骤被执行。然而,可以执行多于一个的校准步骤。
例如,在例如150℃的IC温度下进行校准是可能的。有了已知的振荡器的温度行为,可以计算出例如25℃下的频率。在25℃下计算出的频率可以被写入存储器中。
任选地,可以例如使用第二温度执行进一步的步骤。例如,既计算在150℃下的频率又计算在-40℃下的频率是可能的。在该情况下,没有必要预先知晓漂移行为来计算温度漂移。可以取得两个校准点的值,并可以计算出在25℃下的振荡器频率。计算出的频率也可以被写入芯片的存储器中。
在第三校准步骤中,例如在传感器系统供应商处的例如另一制造线上,ID可以被分配。
要被包括在通信帧的数据帧中的间隙的计算可以由从设备在若干时刻执行。也可以将校准值考虑在内:
-它可以在主设备通过发送SOF字节发起的每次同步之后执行。温度漂移可以被有利地补偿。另外,RC振荡器频率的长期漂移(不包括在公差带中)也可以被补偿。
-该计算可以每次在传感器被通电之后被执行。这是优选的实施例,因为这是该传感器初始化例程的一部分。
-计算可以在从设备第一次被通电时被执行。计算出的间隙时间也被写入存储器(例如非易失性存储器)。
总之,在使用从设备传输的数据帧的间隙下,例如4Mbit/s的快速通信在使用例如具有例如+/-2.5%的公差的20MHz的RC振荡器的情况下,每个从设备例如6字节的数据分组可以被传输到在具有例如+/-0.02%的公差的晶体振荡器上运行的主设备。
还证明间隙取决于每个从设备中的、本地地存储在存储器(例如EEPROM)中的参数。每个从设备可以使用这些参数,以便在使用迭代计算方案的情况下计算出间隙。这些参数已在一个或多个校准步骤中被提供给从设备。

Claims (13)

1.一种用于在主设备(12)与至少一个从设备(13、14、23)之间进行通信的方法,包括生成(200)通信帧,所述生成通信帧包括生成(201)从设备数据帧,其中生成(201)所述从设备数据帧包括:
-生成(202)包括一个或多个数据字节的数据分组,以及
-生成(203)具有可变时间长度的至少一个间隙,所述间隙在所述数据分组的第一个数据字节开始之前的所述从设备数据帧的开始处或在所述数据分组的最后一个数据字节结束之后的所述数据分组的末尾处的所述从设备数据帧中不包括信息,
其中,所述间隙是基于时间长度依赖关系而计算的,所述时间长度依赖关系基于本地地存储在所述至少一个从设备中的每个从设备中的参数。
2.如前述权利要求所述的方法,其特征在于,生成(201)所述从设备数据帧包括:在所述数据分组的开始处和末尾处分别生成具有可变时间长度的第一间隙和第二间隙。
3.如前述权利要求中的任一项所述的方法,其特征在于,被本地地存储在所述至少一个从设备中的每一个从设备中的所述参数中的一个参数是作为每个从设备的唯一标识的从设备ID号。
4.如权利要求1或2所述的方法,进一步包括生成用于计算所述至少一个间隙的时基,其中所述从设备数据帧的定时是基于具有在5%以下的标称目标频率公差的时钟。
5.如权利要求1或2所述的方法,进一步包括生成和发送具有第一数据位的字节的开始(SOB)信息,所述第一数据位进一步包括数据方向交换信息。
6.如权利要求1或2所述的方法,其特征在于,所述参数被提供(204)在至少一个校准步骤中。
7.如权利要求1或2所述的方法,其特征在于,生成(201)所述从设备数据帧是在所述传感器的初始化例程期间执行的。
8.如权利要求1或2所述的方法,进一步包括获得(102)每个从设备的频率偏移,随后包括具有负频率偏移的从设备的预定总线延迟并且不包括具有正频率偏移的从设备的总线延迟。
9.一种软件程序产品,所述软件程序产品当在被连接到主设备的从设备的处理单元中被执行时适于执行权利要求1所述的方法。
10.一种用于在主设备(12)与至少一个从设备(13、14、23)之间进行通信的系统,所述至少一个从设备适于生成从设备数据帧,其中所述从设备数据帧包括
-数据分组,所述数据分组包括一个或多个数据字节,以及
-具有可变时间长度的至少一个间隙,所述间隙在所述数据分组的第一个数据字节的开始之前的所述从设备数据帧的开始处或在所述数据分组的最后一个数据字节的结束之后的所述数据分组的末尾处的所述从设备数据帧中不包括信息,
其中所述间隙具有基于本地地存储在所述至少一个从设备中的每个从设备中的参数的时间长度依赖关系,
所述系统进一步包括主设备(12),所述主设备(12)适于接收所述从设备数据帧。
11.如前述权利要求所述的系统,其特征在于,所述主设备(12)包括具有低于0.05%的公差的时钟(25),并且所述从设备包括具有比所述主设备的所述时钟更低精度的时钟(35),以用于提供高速和具有成本效益的系统。
12.如权利要求10或11所述的系统,其特征在于,所述至少一个从设备(13、14、23)是传感器,并且所述主设备(12)是主设备控制单元。
13.如权利要求10或11所述的系统,其特征在于,所述从设备(13,14,23)适于运行如权利要求9所述的软件程序产品。
CN202110735482.5A 2020-06-30 2021-06-30 高速通信系统 Pending CN113872727A (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
EP20183039.5 2020-06-30
EP20183039.5A EP3934179B1 (en) 2020-06-30 2020-06-30 High speed communication system

Publications (1)

Publication Number Publication Date
CN113872727A true CN113872727A (zh) 2021-12-31

Family

ID=71409114

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110735482.5A Pending CN113872727A (zh) 2020-06-30 2021-06-30 高速通信系统

Country Status (3)

Country Link
US (1) US11507525B2 (zh)
EP (1) EP3934179B1 (zh)
CN (1) CN113872727A (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11943658B2 (en) * 2020-11-03 2024-03-26 Cypress Semiconductor Corporation Multi-protocol communication network

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7486693B2 (en) * 2001-12-14 2009-02-03 General Electric Company Time slot protocol
DE10322950A1 (de) * 2003-05-22 2004-12-16 Deutsche Thomson-Brandt Gmbh Verfahren zur Einstellung konsistenter Werte für einen Parameter in einem Netzwerk verteilter Stationen sowie Netzwerkteilnehmerstation für die Durchführung des Verfahrens
JP6180990B2 (ja) * 2014-04-25 2017-08-16 本田技研工業株式会社 ガス監視システム及びガス監視方法
US10079650B2 (en) 2015-12-04 2018-09-18 Infineon Technologies Ag Robust high speed sensor interface for remote sensors
DE102017130933B3 (de) * 2017-12-21 2019-05-02 Infineon Technologies Ag Flankenbasierte Kommunikation mit einer Vielzahl von Slave-Vorrichtungen unter Verwendung von Timern
US10812251B2 (en) * 2018-12-18 2020-10-20 Simmonds Precision Products, Inc. Distributed time synchronization protocol for an asynchronous communication system

Also Published As

Publication number Publication date
EP3934179A1 (en) 2022-01-05
US11507525B2 (en) 2022-11-22
US20210406210A1 (en) 2021-12-30
EP3934179B1 (en) 2022-10-26

Similar Documents

Publication Publication Date Title
US11804919B2 (en) High speed embedded protocol for distributed control system
KR101956949B1 (ko) 직렬 데이터 전송의 올바른 기능을 체크하기 위한 방법 및 장치
KR101205744B1 (ko) 감소된 수의 접속 라인들을 갖는 직렬-주변기기 인터페이스
CN101960771B (zh) 包括数据总线和多个连接在其上的用户节点的通信系统以及用于运行这样的通信系统的方法
CN106464559B (zh) 用于分布式控制系统的高速嵌入式协议
JP4084196B2 (ja) 多数のttcan−バスのサイクルタイムを同期させる方法と装置及び対応するバスシステム
WO2010098811A2 (en) Fault tolerant network utilizing bi-directional point-to-point communications links between nodes
US9065732B2 (en) Communication configuration and method for debugging, respectively for programming one or more participants of the communication configuration
CN113872727A (zh) 高速通信系统
US11275704B2 (en) Method and system for communicating over a bus
US6326824B1 (en) Timing synchronizing system, devices used in the system, and timing synchronizing method
US8422613B2 (en) Clock-synchronous communication apparatus and communication system
US20070033294A1 (en) Method for temporal synchronization of clocks
Akpinar et al. Improved clock synchronization algorithms for the controller area network (CAN)
US20130262610A1 (en) Communication system and method for configuring programmable hardware
CN112737761B (zh) 用于经由总线确认通信的装置和方法
CN117376049A (zh) 传感器和数字通信方法
JPS6319934A (ja) 多重伝送装置

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