CN1792068A - 用于通信协议的消息存储器和方法 - Google Patents

用于通信协议的消息存储器和方法 Download PDF

Info

Publication number
CN1792068A
CN1792068A CN200480013695.1A CN200480013695A CN1792068A CN 1792068 A CN1792068 A CN 1792068A CN 200480013695 A CN200480013695 A CN 200480013695A CN 1792068 A CN1792068 A CN 1792068A
Authority
CN
China
Prior art keywords
message
memory
object memories
physical storage
data
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
CN200480013695.1A
Other languages
English (en)
Inventor
P·福尔曼
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.)
Koninklijke Philips NV
Original Assignee
Koninklijke Philips Electronics 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 Koninklijke Philips Electronics NV filed Critical Koninklijke Philips Electronics NV
Publication of CN1792068A publication Critical patent/CN1792068A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/90Buffering arrangements
    • H04L49/9021Plurality of buffers per packet
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/90Buffering arrangements

Abstract

一种消息存储器(1)具有在消息存储器(2)的消息对象存储器与物理存储器(3)的分段之间灵活的关联。所述关联可以通过配置来实现,其中一个或者多个存储器分段形成作为要存储的消息内容的长度的函数的集群。

Description

用于通信协议的消息存储器和方法
本发明涉及用于针对每个传输事件传送具有相关数据字段(datafield)的可识别消息的通信系统。特别是,本发明涉及具有可配置数据字段长度的消息的传送,然而对于特定系统设计而言,所述数据字段长度被限定为特定值。
从正如用于汽车(automotive)工程或一般地用于分布式自动控制工程应用中的消息传输系统中可知通信接口的结构。这类消息传输系统所使用的例如是CAN(控制器局域网)总线。
图1示出根据现有技术的一个通信接口,所述通信接口典型地包括协议控制器、硬件接收过滤器(acceptance filter)、被分成用于接收和发送消息对象的两个区域的消息存储器、CPU(中央处理器)接口,以及位于CPU接口和协议控制器之间用于控制信号和监控信号或状态信号的信号接口(状态和控制线)。所述协议控制器根据为传输协议指定的通信机制来实现消息传输。这意味着协议控制器在遵守媒体接入控制的同时控制在消息结构和编码方面显示出统一格式的消息的发送和接收。媒体接入控制包括OSI 7层模型中的第一(物理)层和第二(数据链路)层的机制。所接收的用于特定应用(即用于CPU上运行的特定软件)的消息数据可以通过CPU接口得到。另外,应用程序可以通过CPU接口转发数据到通信接口,然后所述数据依据通信协议(例如CAN总线)被发送。为了减轻CPU或应用软件的负荷,提供了一种消息存储器。这样可以使用多个消息存储器对象,所述消息存储器对象被提供以用于发送消息数据或者接收和存储消息数据的目的。
在某些通信系统中,消息本身或其内容在接收时可通过一个附加的传输标识(ID)或者根据到达时间(这涉及例如TDMA(时分多址)系统)而被识别和区分。这涉及诸如CAN(参见ISO标准:ISO11898:1993(E)“Road Vehicles,Interchange of digitalinformation-controller area network(CAN) for high speedcommunications”,Nov.1993)、FlexRay(参见“FlexRayRequirements Specification”,Version2.0.2,April 2002,FlexRay,Consortium;www.flexray.com)或TTP/C(参见“TTP/CSpecification”,Version 0.5Edition 0.1.21,July 1999,TTTechComputertechnik AG;http://www.tttech.com)之类的通信系统。在这类通信系统中,通过消息存储器可以在通信接口中提供仅容纳非常特定的消息的消息对象存储器。一个可选的过滤器单元(硬件接收过滤器)处理消息对象中特定消息或者消息组的表示或存储。这类结构可从名为“Full CAN”的实现的CAN系统中获知。同样,一个或多个消息对象存储器可被提供以用于传输设备。
具有其消息对象存储器的所述消息存储器因消息传输系统而周知,所述消息传输系统支持由传输协议的规范定义的许多数据字节,否则可以只允许小范围的一个变化,其中所述变化意味着例如CAN消息包含8个字节的最大值。
对于具有指定数据字段长度的消息传输系统,可以以这种方式组织消息对象存储器,即它们总是允许对具有最大数据字段长度的消息进行存储。利用一个给定的物理存储器,例如一个RAM(随机存取存储器),从而可实现特定的有限数量的消息对象存储器。因此将逻辑结构1∶1复制到物理存储器上。如果物理存储器被分成8字节的(k+1)个字段,那么消息存储器也显示(k+1)个字段。因此,对于如所述的传统消息存储器而言,消息对象存储器的数量是一个固定变量。所以,为了扩展消息对象存储器的数量,有必要扩大物理存储器,即利用更大或附加的物理存储器,从而导致更高的成本。
对于短消息,在消息存储器中没有维持非常高的存储开销的条件下,可以实现消息对象存储器和物理存储器之间的固定关联,尽管具有较短数据字段的消息被存储在具有较大数据容量(即存储某一数据字段的能力)的消息对象存储器中。
对于数据字段的长度L,随着允许较高数值范围(L>8字节)的通信系统的引入,定义的对象大小和对象数量的概念遇到它的限制。例如,FlexRay通信协议支持具有长达多于200字节长度的数据字段的消息。因此在一个传输周期中,静态分段的消息长度是可配置的,即针对特定的应用,它可以被定义在0字节与最大值之间。
根据上述概念,一种实现方案不得不采用规定数目的消息对象存储器,其中每个消息对象存储器支持理论上最大长度的消息内容的存储。然而,对于FlexRay系统,针对特定的应用,实际中只利用诸如32字节的数据字段进行操作,这将意味着芯片的实现保留了大量未使用的存储器,因此,就性价比来说是次最优的。在对成本非常敏感的汽车电子设备的应用领域中,这是不可接受的。另一方面,仅仅支持具有最大32字节的消息的存储的芯片实现不能用于所有应用领域。这导致特定产品的销售降低的结果,因此不应以二者之一作为目标。
因此,本发明的一个目的是规定一种消息存储器,所述消息存储器可以用于仅仅一个对于具有关于可用消息对象存储器的数量和大小的不同特定需求的应用的实现。本发明的另一个目的是规定一种定义用来优化存储器的使用的逻辑表示和物理存储器之间的关联的方法。
根据本发明,上述目的可以由一个配备下述的消息存储器来实现:
-针对消息内容存储的可配置消息对象存储器的数量及其数据容量的一个逻辑的虚拟存储器表示,
-被分成特定数量分段的物理存储器,
其中各个消息对象存储器的长度以及它们与物理存储器的分段之间的关联是可配置的。在此上下文中,可配置意味着定义用于应用的运行时间的参数。
基于其物理结构,所述消息存储器提供了可由协议控制器或CPU使用的有限数量的逻辑的虚拟表示。因此,消息存储器被划分成具有特定数据容量的特定数量的消息对象存储器。所述划分是被灵活组织的,当然所述划分必须在物理上在当前存储器总是可再现的,因此,总是可以在一个应用中根据消息对象的数量和它们的数据容量对特定使用所优化的配置进行选择,即进行配置。
因此,消息对象存储器采用多个存储器分段的集群(cluster)的形式。各个分段的长度尽可能短,例如8字节长。如果一个应用中传送的消息内容的长度o超过8字节,则创建相应数量的p个存储器分段以使得:o字节<p*8字节。
优选地,在应用软件中定义预定的配置。
消息对象存储器和物理存储器之间灵活的关联可以实现存储器容量的最佳利用,因为对于单芯片实现维持了尽可能最少的未使用的存储器。因此,配备有长度可配置的数据字段的通信协议在系统运行时间可以利用在数量和长度方面被优化的消息对象存储器。在此上下文中,优化意味着尽可能有效地利用物理存储器,即存在可能最少的空存储器分段。
逻辑的虚拟存储器表示的配置由寻址单元承担,所述寻址单元将存储器位置的逻辑地址转换成物理接入地址。
因此,可以使用不同的转换算法或策略。如果配置选项的灵活性被限制为下述效果,即消息对象存储器的数量和它们的存储器容量(即数据字段长度)仅可以按比例并以2的幂来设置,那么地址转换可以由简单的移位操作来实现(通过地址比特的可配置数量),正如在下面的实施例示例中所说明的。
此外,更加灵活的地址转换机制,例如指向消息对象存储器的起始地址的指针阵列(array)(具有地址指针的存储器域(field))或者分段寻址的使用,可以实现更加灵活的消息存储器分段,即逻辑的虚拟存储器表示与物理存储器之间的更加复杂的关联。基于电路实现的必需复杂度和随之相关的成本,以及针对配置灵活性的给定需求,地址转换策略的选择必须符合不同的应用。
本发明的目的进一步通过一种对于配备有下述的消息存储器定义逻辑表示与物理存储器之间的关联的方法来实现:
-针对消息内容存储的可配置消息对象存储器的数量及其数据容量的一个逻辑的虚拟存储器表示,
-被分成特定数量分段的物理存储器,
具有以下步骤:
·确定消息内容的字节长度,
·选择作为消息内容的字节长度的函数的每集群的存储器分段的数量,其中一个集群形成一个消息对象存储器。
确定消息内容的长度可以离线或者替代地在线进行。在这种情况下,离线意味着在应用软件的编程过程中,逻辑表示和物理存储器之间的关联对于消息存储器是已知的,并且与消息的数据字段长度相匹配。消息对象存储器的数量和数据容量被认为是先验已知的。在这种情况下,在线意味着通过对通信事件的观测,通信接口中的消息的数据字段长度直到在系统运行时间期间才被建立,并通过对消息存储器定义逻辑表示与物理存储器之间的关联来将其与此匹配。
优选地,为了控制与安全相关的过程,按照本发明的通信系统被用于汽车领域的应用中。
参考附图中示出的实施例的例子将对本发明进行进一步的描述,然而,本发明并不限于所述实施例。
图2示出具有在消息对象存储器和物理存储器之间的灵活关联的消息存储器的示例配置。
图2示出具有在逻辑的虚拟存储器表示2和物理存储器3之间的灵活关联的消息存储器1的示例配置。物理存储器3具有(a+b+2)*8字节的结构。最大数量的消息对象存储器表示第一配置i):
i)发送方向:具有8字节的数据字段的(a+1)个消息对象存储器
接收方向:具有8字节的数据字段的(b+1)个消息对象存储器
如果传输协议利用较大的数据字段进行消息交换,那么可用的消息对象存储器的数量是较小的,因为物理存储器3被分成较大的集群。第二配置ii)示出一个实例:
ii)发送方向:具有32字节的数据字段的(m+1)个消息对象存储器
接收方向:具有32字节的数据字段的(n+1)个消息对象存储器
其中:m<a和n<b。
第三配置iii)示出为另外的实例:
iii)发送方向:具有64字节的数据字段的(x+1)个消息对象存储器
接收方向:具有64字节的数据字段的(y+1)个消息对象存储器
其中:x<m<a和y<n<b。
物理存储器3例如可以是一个外部存储器或一个“片上”存储器。CPU接口CPU_IF和协议控制器PC两者都通过消息存储器1的逻辑的虚拟表示2访问物理存储器3。
根据消息的数据字段的大小,算法选择一个合适的配置。逻辑存储器表示2的配置和转换策略下面通过参考针对3个示例配置i)、ii)和iii)的一个实例来解释。该实例基于物理存储器3的以下特性:
-容量为256字节;
-寻址是面向字节的,而且以升序方式进行;地址区域以二进制计数法给出,并且为000000002...111111112
-物理地址缩写为:phyadr。
逻辑存储器2的配置对于配置实例于是为如下:
i)32*8字节,即具有8字节数据容量的32个消息对象存储器(N0-N31)
ii)8*32字节,即具有32字节数据容量的8个消息对象存储器(N0-N7)
iii)4*64字节,即具有64字节数据容量的4个消息对象存储器(N0-N3)。
一个消息对象存储器的数据容量就是其存储某一长度的数据字段的能力。
转换策略如下:
物理地址phyadr由两部分组成:消息对象MO和数据字节DB:phyadr=MO|DB
其中:
MOadr:消息对象存储器的逻辑地址(000002-111112)
DBadr:在消息对象存储器中逻辑的相关字节地址(0000002-1111112)。
对于MOadr和DBadr,针对所述配置实例,在一个实现中要选择的地址比特数量是由地址空间的最大上限确定的,它可从各种可调整的配置中导出。在给出的配置实例中,需要5比特来表示Moadr以及6比特来表示DBadr。
配置实例中的物理地址phyadr依照相应的移位操作或比特选择由两部分MO和DB构成如下:
i)MO包括5比特(MOadr的5个最低有效位);
DB包括3比特(DBadr的3个最低有效位);
例子:消息对象4,数据字节0:Moadr=001002,DBadr=0000002
                 >>MO=001002,DB=0002;phyadr=00100|0002
ii)MO包括3比特(MOadr的3个最低有效位);
    DB包括5比特(DBadr的5个最低有效位);
例子:消息对象7,数据字节31:Moadr=001112,DBadr=0111112
                 >>MO=1112,DB=111112;phyadr=11111|1112
iii)MO包括2比特(MOadr的2个最低有效位);
DB包括6比特(DBadr的6个最低有效位);
例子:消息对象3,数据字节63:Moadr=001112,DBadr=1111112
                 >>MO=112,DB=1111112;phyadr=11|1111112
优点在于,协议控制器PC或CPU接口CPU_IF对消息存储器的访问总是可以与配置无关地利用相同地址元组(MOadr,DBadr)通过逻辑的虚拟存储器表示2来进行。
所提出的可配置消息存储器1可以用作发送缓冲器和接收缓冲器。它独立于随后的过滤策略,所述过滤策略确定消息到特定消息对象存储器的分配。
与消息对象存储器相关的状态信息和控制信息是可以替换地:
a)被认为是可伸缩的(scalable)消息对象存储器的一部分,或者
b)被单独存储在例如寄存器域中。
替换物a)和b)取决于这一部分消息信息的硬件实现所支持的访问模式。
基本的间隔尺寸(granularity)即消息对象存储器的数据容量的可配置增量以及消息对象存储器的最小尺寸可以根据典型的应用需求、可用的物理存储器结构(可寻址性、块访问)以及从逻辑存储器到物理存储器的地址转换所需要的或者接受的复杂度来选择。

Claims (5)

1.一种消息存储器(1),其配备有:
-针对消息内容存储的可配置消息对象存储器的数量及其数据容量的逻辑的虚拟存储器表示(2),
-被分成特定数量的分段的物理存储器(3),
其特征在于,各个消息对象存储器的数据容量及其与物理存储器(3)的分段的关联是可配置的。
2.如权利要求1所述的消息存储器,其特征在于,消息对象采用多个存储器分段的集群的形式。
3.如权利要求1或2中任何一项所述的消息存储器,其特征在于,在应用软件中定义预定的配置。
4.一种针对消息存储器(1)定义逻辑表示和物理存储器之间的关联的方法,所述消息存储器(1)配备有:
-针对消息内容存储的具有多个数据字段的消息对象存储器的逻辑的虚拟存储器表示(2),
-被分成特定数量的分段的物理存储器(3),
其特征在于下列步骤:
·确定消息内容的字节长度,
·选择作为消息内容的字节长度的函数的每集群的存储器分段的数量,其中一个集群形成一个消息对象存储器。
5.在汽车行业或数据处理的应用中如权利要求1-3中任何一项所述的消息存储器的使用。
CN200480013695.1A 2003-05-21 2004-05-10 用于通信协议的消息存储器和方法 Pending CN1792068A (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
EP03101445 2003-05-21
EP03101445.9 2003-05-21

Publications (1)

Publication Number Publication Date
CN1792068A true CN1792068A (zh) 2006-06-21

Family

ID=33462190

Family Applications (1)

Application Number Title Priority Date Filing Date
CN200480013695.1A Pending CN1792068A (zh) 2003-05-21 2004-05-10 用于通信协议的消息存储器和方法

Country Status (5)

Country Link
US (1) US7849284B2 (zh)
EP (1) EP1629638A1 (zh)
JP (1) JP2007501583A (zh)
CN (1) CN1792068A (zh)
WO (1) WO2004105328A1 (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101965713A (zh) * 2008-03-10 2011-02-02 罗伯特.博世有限公司 对通过通信网络的串行数据总线到达网络的参与者的消息进行过滤的方法和过滤设备

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1792068A (zh) * 2003-05-21 2006-06-21 皇家飞利浦电子股份有限公司 用于通信协议的消息存储器和方法
EP1624620B1 (en) * 2004-08-05 2010-05-05 Robert Bosch Gmbh FlexRay communication controller
DE102004038213A1 (de) * 2004-08-05 2006-03-16 Robert Bosch Gmbh Verfahren und Vorrichtung zum Zugriff auf Daten eines Botschaftsspeichers eines Kommunikationsbausteins
EP1894364B1 (en) 2005-06-09 2020-01-01 Nxp B.V. Communication system node
DE102005048595A1 (de) * 2005-10-06 2007-04-12 Robert Bosch Gmbh Verfahren zur Anbindung eines FlexRay-Teilnehmers mit einem Mikrocontroller an eine FlexRay-Kommunikationsverbindung über eine FlexRay-Kommunikationssteuereinrichtung, und FlexRay-Kommunikationssteuereinrichtung, FlexRay-Teilnehmer und FlexRay-Kommunikationssystem zur Realisierung dieses Verfahrens
DE102005048581B4 (de) 2005-10-06 2022-06-09 Robert Bosch Gmbh Teilnehmerschnittstelle zwischen einem FlexRay-Kommunikationsbaustein und einem FlexRay-Teilnehmer und Verfahren zur Übertragung von Botschaften über eine solche Schnittstelle
US7975120B2 (en) 2006-12-27 2011-07-05 Freescale Semiconductor, Inc. Dynamic allocation of message buffers

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6128713A (en) * 1997-09-24 2000-10-03 Microsoft Corporation Application programming interface enabling application programs to control allocation of physical memory in a virtual memory system
US6247042B1 (en) * 1997-09-24 2001-06-12 Microsoft Corporation Method and system for restoring the state of physical memory as the focus changes among application programs in a computer
US20020046305A1 (en) * 1999-02-17 2002-04-18 Babaian Boris A. Method for effective binary translation between different instruction sets using emulated supervisor flag and multiple page tables
US6715001B1 (en) * 1999-09-15 2004-03-30 Koninklijke Philips Electronics N.V. Can microcontroller that employs reconfigurable message buffers
CN1792068A (zh) * 2003-05-21 2006-06-21 皇家飞利浦电子股份有限公司 用于通信协议的消息存储器和方法
EP1678606A2 (en) * 2003-09-17 2006-07-12 Research In Motion Limited System and method for management of mutating applications
DE102004038212A1 (de) * 2004-08-05 2006-03-16 Robert Bosch Gmbh FlexRay-Kommunikationsbaustein
DE102005004464A1 (de) * 2005-01-31 2006-10-26 Robert Bosch Gmbh Verfahren zur Speicherung von Botschaften in einem Botschaftsspeicher und Botschaftsspeicher

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101965713A (zh) * 2008-03-10 2011-02-02 罗伯特.博世有限公司 对通过通信网络的串行数据总线到达网络的参与者的消息进行过滤的方法和过滤设备

Also Published As

Publication number Publication date
EP1629638A1 (en) 2006-03-01
WO2004105328A1 (en) 2004-12-02
US20060282640A1 (en) 2006-12-14
US7849284B2 (en) 2010-12-07
JP2007501583A (ja) 2007-01-25

Similar Documents

Publication Publication Date Title
CN1097913C (zh) Atm流量调节
CN1859325A (zh) 基于链表的进程间消息传递方法
CN1092889C (zh) 消息路由
CN1993936A (zh) FlexRay通信组件
CN1627728A (zh) 在计算机服务器中共享以太网适配器的方法和装置
CN1792068A (zh) 用于通信协议的消息存储器和方法
CN1879368A (zh) 利用有序的加锁机制来维护诸如分组之类的项目的次序
CN1517895A (zh) 用于向多个信道分配多个来源的系统和方法
CN1832488A (zh) 实现SPI4设备与PCI Express设备互连的系统及方法
CN1813248A (zh) 可重寻址的虚拟dma控制和状况寄存器
CN1051419C (zh) 一种用于具有"快电路"特性的开关排队系统
CN1324499C (zh) 处理不期望的完成分组和具有非成功完成状态的完成分组的方法
CN1502198A (zh) 通过将限定符插入控制块中链接帧数据
CN1674538A (zh) 一种基于局域网的网络存储系统及其读写数据方法
CN1859251A (zh) 一种实现通信单元互连的方法
CN111857817B (zh) 数据读取方法、数据读取装置及数据读取系统
CN1281037C (zh) 具有有效分组管理单元的分组转发系统及其操作方法
CN115309693A (zh) 集成电路、数据处理装置和方法
JP2011509567A5 (zh)
CN110308889B (zh) 调制处理装置及方法
CN1669288A (zh) 通过存储器查找来确定数据关键字与规则的一致性的方法和系统
CN1905516A (zh) 一种分配双向转发检测会话鉴别符的方法
CN1767456A (zh) 一种调度数据的方法及装置
CN1130055C (zh) 信元争用分辨单元、其工作方法和对其应用的中央交换装置
CN1216467C (zh) 正交频分复用通信系统控制层与物理层接口实现方法

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
ASS Succession or assignment of patent right

Owner name: NXP CO., LTD.

Free format text: FORMER OWNER: KONINKLIJKE PHILIPS ELECTRONICS N.V.

Effective date: 20071012

C41 Transfer of patent application or patent right or utility model
TA01 Transfer of patent application right

Effective date of registration: 20071012

Address after: Holland Ian Deho Finn

Applicant after: Koninkl Philips Electronics NV

Address before: Holland Ian Deho Finn

Applicant before: Koninklijke Philips Electronics N.V.

C02 Deemed withdrawal of patent application after publication (patent law 2001)
WD01 Invention patent application deemed withdrawn after publication