通信系统节点的存储单元、数据存储方法及通信系统节点的制作方法

文档序号:7637944阅读:268来源:国知局
专利名称:通信系统节点的存储单元、数据存储方法及通信系统节点的制作方法
技术领域
本发明涉及用于通信系统节点的数据存储单元、数据存储的方法 以及通信系统节点。更具体地,本发明涉及将缓冲数据和控制数据存 储在位于系统级或主机控制器级的通信控制器外部的单元中,其中在 节点上运行时间触发的协议。
背景技术
近年来,汽车工业见证了其产品中所采用的电子系统的数量的显
著增长。已经针对各种电子控制单元(ECU)的操作开发了不同的通 信系统。通信系统通常包括多个互相通信的单元或节点。通常经由总 线来完成通信,总线通过同一组线逻辑地连接数个节点。每个节点包 括主机控制器、通信控制器以及生成数据的物理设备。通信控制器传 输由主机控制器接收的数据,并将所接收的数据提供给主机控制器。
已知在本领域中有不同的总线系统。LIN-Bus (本地互联网络) 是在当前的汽车网络体系结构中使用的总线系统。该总线系统被设计 用于汽车中的机电一体化应用,是一种较小且相当慢的网络系统。所 集成的构件是智能传感器设备或致动器。建立一个专用的节点作为 LIN主节点,所有其它附加的节点是LIN从节点。该拓扑是固定的并 且以后不能被改变。
更快的网络是一种最初在二十世纪80年代开发的用于连接电子 控制单元的多播共享串行总线标准,即控制器局域网(CAN)。 CAN 被特定设计为在有噪声的环境中是健壮的,并且是一种使得任何设备 能够与任何其它设备或网络通信和工作而不在总线上产生极大压力的 网络。例如,在汽车应用中,CAN用于空调控制单元、座椅致动器、 集中式门禁系统或加速防滑控制。除了 CAN网络之外,许多交通工
具针对较小的子网使用附加的LIN总线。
但是,结合多个传感器、致动器以及电子控制单元的先进控制系 统的引入开始对现有通信协议当前所未专注于的通信技术产生需求。 对于对可靠性和可生存性有严格要求的机械和水力制动以及转向系统 的线更换而言,分布式容错计算机系统是强制性的。此外,安全相关 的应用需要实时的数据管理。在所有情况下,必须在预定义的时间量 内传输高优先级消息。由于对增长的功能和车载诊断的需求也增长了, 带宽和系统扩展的灵活性也是关键的特性。先进的控制系统已经开始
对现有的CAN通信总线产生极限需求。
已经提出了 FlexRay系统,以满足对具有确定的和容差的通信以 及达到10Mbit/s的高数据速率的总线系统的需求。关于网络配置的变 化是高度灵活的。与当前的事件触发的通信协议(例如CAN)相反, FlexRay将时间触发的系统与事件触发的系统相结合。FlexRay系统的 核心是FlexRay通信协议。该协议通过将可扩展的静态的消息传输与 动态的消息传输相结合,包括了常见的同步和异步协议的优点,提供 了灵活性和确定性。该协议支持利用全局时间基准的容错时钟同步、 无冲突总线访问、利用标识符的面向消息的寻址、利用对单信道或双 信道的支持的可扩展系统容错。
FlexRay控制器针对其每个信道包括发送机和接收机单元,其中 还可以将每个发送机和接收机单元分离为两个独立的单元,即定时单 元和用于与主机和协议状态机连接的控制器主机接口 (CHI)。将提取 的数据或用于传输的数据存储在缓冲器中。FlexRay体系结构级别包 括主机级别、控制器主机接口级别、协议引擎级别、信道接口级别和 具有可能的信道A和B的拓扑级别。通过控制器主机接口传输的数据 包括状态数据、控制数据(例如外部时钟同步)、消息数据或与网络或 节点配置相关的配置数据。
EP 1355456公开了 FlexRay协议。提供了一种具有至少一个耦合 到通信线路的节点以及用于通信的装置的网络系统,它们能够基于所 述通信产生通信周期。
通信周期是FlexRay中的介质接入方案的基本要素。这是通过定
时等级来定义的。如图1所示,定时等级包括四个定时等级级别。最 高的级别即通信周期级别定义了通信周期。通信周期包含静态区段、 动态区段、符号窗口和网络空闲时间(NIT)。下一个较低的级别即仲
裁网格级别包含形成FlexRay介质仲裁的骨架的仲裁网格。在静态区 段中仲裁网格包括被称为静态时隙的连续时间间隔,在动态区段中仲 裁网格包括被称为迷你时隙的连续时间间隔。
WO 2005/002145公开了一种用于管理网络中的网络节点的通信 控制器和主机处理器所访问的存储器的装置及方法。优选地,该装置 及方法应用于FlexRay总线系统。为每个数据消息分配标识符,并在 网络节点的存储器中提供与相关的标识符的数量对应的若干个缓冲 器。将控制数据存储在已经被分配给标识符的缓冲器中的至少一些缓 冲器中。
WO 2004/105328描述了一种用于通信协议和方法的消息存储器, 可应用于CAN或FlexRay系统。使用虚拟存储器表示和被划分为特定 数量的区段的物理存储器作为消息存储器,该存储器允许根据消息对 象的数量及其数据容量针对应用中的特定用途的优化。
现代通信系统(例如FlexRay)被特别设计以获得容错和灵活性。 现有解决方案的缺点是通过通信控制器中的专用逻辑来处理配置数据 和缓冲器数据,从而必须通过通信控制器访问从端口来处理对该数据 的任何访问。这种控制器中的专用逻辑限制了网络的配置空间并且定 义了缓冲器的最大量,从而给通信系统的灵活性设置了上限。

发明内容
本发明的一个目的是提供一种用于通信系统节点的数据存储单 元, 一种用于数据存储的方法、以及一种提高基于时间触发的协议的 通信系统的灵活性的通信系统节点。
本发明的另一目的是提供一种用于通信系统节点的数据存储单 元、 一种用于数据存储的方法、以及一种用于降低基于时间触发的协 议的通信系统的制造成本的通信系统节点。
根据本发明的一个方面,为了达到上述目的,提供了一种通信系 统节点,包括主机控制器、主机控制器级别的至少一个通用存储器单 元、以及通信控制器,其中,通信基于时间触发的协议,在主机控制 器级别上在通信控制器外部设有至少一个用于与配置和缓冲相关的数 据的存储单元,并且该通信控制器并不具有用于与配置和缓冲相关的 数据的存储单元。
通过将与FlexRay数据缓冲相关的数据(包括格式、行为、以及周 期/时隙耦合)置于通信控制器(CC)外部,由于将与数据缓冲相关的 限制(例如缓冲器大小和缓冲器数量)从CC内部的级别转移为CC外部 的系统级别,因此其变得更加灵活、更可扩展和更可重新配置。
存储单元包括以下被链接的数据结构
-用于将通信控制器时隙与其对应的缓冲器相关联的时隙控制列 表,被链接到
-用于将缓冲器与其缓冲器条目相关联的缓冲器控制列表,被链
接到
-用于将缓冲器条目与其帧或消息数据相关联的缓冲器描述符列 表,被链接到
-用于保持帧或消息以及状态数据的帧缓冲器。
时隙控制列表向通信系统节点提供了通信控制器时隙的相关性和 用途的定义,并保持到其缓冲器的逻辑链接。
缓冲器控制列表提供了行为的定义、保持缓冲器的状态、并保持 到缓存器的缓冲器条目的逻辑链接。
缓冲器描述符列表提供了缓冲器条目的特征的定义,并保持到帧 缓冲器的逻辑链接。
帧缓冲器提供了保持帧或消息以及状态数据的存储区域。
经由将适当的偏移与基地址相加的计算单元将所述时隙控制列表 与所述缓冲器控制列表相链接。经由第二 "将适当的偏移与基地址相 加"的地址计算单元将所述缓冲器控制列表与所述缓冲器描述符列表 相链接。经由规则的地址(regular address)将所述缓冲器描述符列表 与所述帧缓冲器相链接。
在优选的实施例中,存储单元是位于系统或主机控制器级别的所
述通用存储器单元内部并位于通信控制器外部的通用逻辑。
通信控制器包括用于数据获取、解释、执行和状态更新的专用逻 辑,并具有与时隙控制列表相链接的用于对时隙控制列表中的条目进
行寻址的时隙控制列表寻址单元、对缓冲器控制列表中的条目进行寻 址的缓冲器控制列表寻址单元(其中缓冲器控制列表寻址单元与时隙 控制列表和缓冲器控制列表之间的所述地址计算单元相链接)、以及对 所述缓冲器描述符列表中的条目进行寻址的缓冲器描述符列表寻址单 元(其中缓冲器描述符列表寻址单元与缓冲器控制列表和缓冲器描述 符列表之间的所述地址计算相链接)。
在优选的实施例中,将通信控制器实现为FlexRay数据链路控制 器,并且所述时间触发的协议是FlexRay协议。
因此,在通信系统中提供了存储单元,其中该系统具有零个或多 个活跃时隙以及至少一个适用于发送(Tx)或接收(Rx)的逻辑缓冲 器,该存储单元包括一组被链接的数据结构
-用于将通信控制器时隙与其相应的缓冲器关联的时隙控制列 表,被链接到
-用于将缓冲器条目与缓冲器相关联的缓冲器控制列表,被链接

-用于将缓冲器条目与其帧或消息数据相关联的缓冲器描述符列 表,被链接到
-用于保持帧或消息以及状态数据的帧缓冲器。
缓冲器用于保持数据并且基本上可具有3个状态空、满和介于中
间。例如,由于缓冲器具有适当的BCL和BDL数据但并不与帧缓冲器
相链接,因此可以是空的缓冲器。这是有效的配置并且可能应归因于
本发明的灵活性。
因此, 一种用于时间触发的通信协议的通信系统中的数据存储的
方法,包括以下步骤
-通过通信控制器对时隙控制列表的条目进行寻址;
-将时隙控制列表条目与缓冲器控制列表条目相链接,以将时隙
与缓冲器相关联,并通过所述通信控制器对所述缓冲器控制列表条目
进行寻址;
-将缓冲器控制列表条目与缓冲器描述符列表条目相链接,以将 缓冲器与缓冲器条目相关联,并通过所述通信控制器对所述缓冲器描
述符列表条目进行寻址;
-将所述缓冲器描述符列表的条目与帧缓冲器相链接,并通过所 述通信控制器对该帧缓冲器进行寻址;
注意,这些步骤中的每个步骤是有条件的,也就是说,只有在SCL 条目适用于读取时(也即被先前的SCL条目标识为适用于读取时),才 读取该SCL条目。如果SCL条目不需要操作,则不读取BCL,等等。由 于可以有意地避免元件被读取并由此影响通信控制器的行为,这也增 加了本发明的灵活性。
本发明的优点是数据链路控制器/通信控制器外部的缓冲将定义 其配置空间(例如所支持的行为、缓冲器的最大数量)的问题从DLC/CC 转移为系统级别。通过这种方式,由系统级别的可用存储器的量(而 非DLC/CC本身内部的存储器量)而造成了限制。
通过系统级别的通用存储器中的数据来替换DLC/CC实施方式中 的专用逻辑,降低了系统的成本。这是更灵活、更可重新配置和更可 扩展的。
根据以下对附图中所示出的本发明的优选实施例的更具体的描 述,本发明的前述和其它的目的、特征及优点将变得显而易见。


现在将通过示例的方式参照附图来描述本发明,其中
图1是FlexRay通信周期的示意性图示; 图2示出了当前最先进的通信系统节点的示意性图示; 图3示出了根据本发明的通信系统节点的示意性图示; 图4示出了根据本发明的通信控制器以及数据存储单元的示意性 图示;
图5示出了使用根据本发明的存储单元的FlexRay环境中的典型
数据流。
具体实施例方式
通信系统通常包括许多交换消息的节点。这些节点中的每个节点 包括主机控制器、通信控制器以及生产数据的物理单元。主机运行应 用软件、估计接收的数据以及生成将要被发送至通信控制器的数据。 通信控制器与通信控制器可以在其中发送和接收消息的所谓的物理层 的一个或两个信道相连,并具有用于与主机通信的控制器主机接口
(CHI)。
本发明涉及时间触发的网络协议(例如FlexRay),其中在预定义 的时隙内发起任何网络活动。该系统在特定控制算法的帮助下对电子 控制单元的本地时间进行调整。这确保了集群中的个体节点的所有本 地时钟与全局时钟同步运行。为了允许确定的行为,FlexRay的传输 方案由周期组成。将每个通信周期细分为具有可配置的长度的静态区 段和动态区段。在静态区段中为每个网络节点分配特定的时间窗口或 时隙。在相应时隙的固定的时间点传输节点的消息。所分配的时隙的 所定义的发送时间保证了数据的确定的传输。在网络配置期间定义了 每个静态区段和动态区段的长度。帧包括在一个信道上的一个时隙中 传输的以指定方式打包的给定的数据集合。注意,FlexRay明确地定 义了如何处理时隙中的多个帧的发送(其被默认为不是差错)。消息包 括在帧中传递的所有应用数据。可以将数个消息一起打包以组成一个 帧。
在本发明的优选的FlexRay实施例中,每个帧分成三个区段头 部、载荷和尾部。例如,头部包括标识帧的帧ID。载荷具有帧所传输 的数据。尾部用于检测差错。
在控制器与主机之间传送不同类型的数据,例如状态数据、控制 数据、消息数据或配置数据。
将状态数据存储在均在存储器中存在的帧缓冲器和缓冲器控制 列表中。将控制数据存储在(均在存储器中的)SCL、 BCL、 BDL以 及帧缓冲器中,其中SCL、 BCL、 BDL以及帧缓冲器可以由CC通过 CC内部的有限的控制数据集合(基地址和列表长度)来访问。将消
息数据存储在帧缓冲器中或者用于作为并不导致对保持数据的帧缓冲
器的访问的数据结构建立的结果而产生的发送。将访问SCL、 BCL和 BDL所需要的配置数据(基地址和列表长度)存储在CC内部,将其 余的配置数据存储在数据结构内部。因此存储器区域保存了包括消息 区域的大多数数据,也艮卩SCL、 BCL、 BDL禾BFB。
消息区域包含存储器区域,将要被发送/接收的帧与每个帧的状态 信息一起存储在存储器区域中。在每个通信控制器的配置数据中确定 对该存储器区域中的数据的访问。根据SCL、 BCL、 BDL和FB来定 义该存储器中的数据的布局,但是不必具有SCL、 BCL、 BDL和FB 的全部,例如仅仅具有SCL是有效的配置并且导致遵从FlexRay的 CC行为。
图1示出了 FlexRay通信周期的示意性图示。通信周期是FlexRay 中的媒体接入方案的基本要素。它是通过包括四个定时等级级别的定 时等级来定义的。最高级别即通信周期级别定义了通信周期。通信周 期级别包括静态区段、动态区段、符号窗口和网络空闲时间(NIT)。 在静态区段中使用静态时分多址方案以对传输进行仲裁。在动态区段 中使用基于动态的迷你时隙的方案以对传输进行仲裁。下一个较低的 级别即仲裁网格级别包含形成FlexRay介质仲裁的骨架的仲裁网格。 在静态区段中,仲裁网格包括被称为静态时隙的连续时间间隔,在动 态区段中,仲裁网格包括被称为迷你时隙的连续时间间隔。
图2示出了当前最先进的通信总线系统节点。该系统包括主机控 制器IO、通信控制器12 (这里是FlexRay控制器)、主机控制器级别 的通用存储器单元16以及用于连接这些部件的互连线路。
应当注意的是,任何主机控制器都需要用于(临时地)保持其己 从CC读取的或者想要写入CC的数据的存储器单元。该存储器的存 在并不是由于CC的存在,而是用于使得主机控制器能够工作。
主机控制器10被实现为主控制器并且控制通信控制器12、对去 往通信控制器12的发送数据和控制和来自通信控制器12的接收数据 和控制进行交换、以及对去往存储器单元16的发送数据和来自存储器 单元16的接收数据进行交换。通信控制器12具有用于配置数据、缓冲器数据、配置控制和缓 冲器控制的专用逻辑14。因此通信控制器12在其中保持了所有与控
制和缓冲相关的数据(包括格式和行为),以使得必须经由DLC/CC 访问端口 (例如AMBA2AHB从端口)来处理任何对该数据的访问。
图3示出了根据本发明的通信系统节点。在该优选实施例中,将 配置数据和缓冲器数据存储在主存储器16内部的通用逻辑18中,也 即以系统级别存储配置数据和缓冲器数据。
由于已经存在用于使得主机控制器工作的该存储器,本发明允许 该存储器(重)用于CC数据。这节约了芯片区域和CPU执行周期。 由于在通用存储器中的访问与通过从端口的访问相比要有效得多,因 此节约了周期。
通信控制器12(这里仍是FlexRay控制器)提供了用于数据访问、 解释、执行和更新的专用逻辑14。数据链路控制器(DLC)或通信控 制器12 (CC)通过其本身的(一个或多个)主端口对通用存储器16/18 中的数据结构进行获取、解释、执行和更新。由主机IO (CPU)将该 数据结构初始地放入存储器16中。由通信控制器12通过数据结构更 新将该数据结构中的与通信控制器相关的状态数据放入存储器16中。
为了向主机控制器通知数据结构执行和更新,通信控制器可以支 持针对主机控制器的中断(事件)。典型地,根据CC中保持的反映存 储器中的数据结构的状态更新的状态数据来产生这些事件。
通过将与数据缓冲相关的数据(包括格式和行为)置于FlexRay 数据链路控制器12外部(例如在片上或片外的存储器中),由于将与 数据缓冲相关的限制(例如所支持的行为、缓冲器大小和缓冲器的数 量28)从DLC/CC级别转移为系统级别,其变得更灵活、更可扩展和 可重新配置。由于对通用存储器中的数据的访问一般与通过专用从端 口对CC中的数据的访问相比要有效得多(更少的时钟周期),对该数 据的主机控制器访问也更为高效。
通过这种方式,由在系统级别可用的存储器的数量(而非DLC/CC 12本身内部的存储器数量)而产生限制。这允许有效和高效的软件/ 硬件划分。也由在系统级别可用的存储器所提供的访问(而非DLC/CC
本身提供的访问)而产生访问限制。这也允许有效和高效的软件/硬件 划分。
该原理使用存储器16/18中的数据,用于对还指定了所需要的数 据缓冲行为的数据结构进行定义,而不为此使用专用逻辑14。作为结 果,与FlexRay协议规范版本2.0当前所需要的数据缓冲行为相比, 可以支持更多种数据缓冲行为。在FlexRay上下文中的一个示例是用 于发送、共享单个缓冲器的多个发送或接收时隙、以及不需要上锁/ 解锁机制的缓冲器访问和更新的能力的排队缓冲。
由于将DLC/CC12内部的专用逻辑14替换为DLC/CC外部的(也 即系统级别的)通用逻辑18,而系统级别的通用逻辑18比DLC/CC12 内部的专用逻辑14便宜,因此可以减少DLC/CC12实现的硅成本。
本发明的实质优点如下-
通过将DLC/CC实现方式内部的专用逻辑14替换为系统级别的 通用存储器18中的数据而降低了成本。当DLC/CC12不使用该通用 逻辑18时,其它功能可以共享该通用逻辑18。
更灵活数据缓冲的配置空间现在将被限制为在系统级别可用的 存储器16的量,而非DLC/CC12内部的逻辑14的量。
更可扩展由于通过存储器16中的数据来定义数据缓冲行为, 从而不需要修改DLC/CC12本身就允许更多种类。
提高的重新配置能力由于通过存储器中的数据而非专用逻辑14 来掌握DLC/CC12的数据缓冲行为,因此现在通过软件可以容易地对 该行为进行调整。
优选地,将存储单元放入系统级别的通用存储器中。然而,它还 可包括系统级别或主机控制器级别的一个或多个分离的存储器。
图4示出了用于系统级别的缓冲的通信控制器12和逻辑16的详 细图示。通过存储器中的一组被链接的数据结构定义了根据本发明的 数据存储方法
-存储器中的控制DLC/CC12的发送和接收行为的数据结构; -存储器中的保持实际发送和接收数据的数据结构; -存储器中的保持发送和接收状态信息的数据结构; -系统的读访问与DLC/CC12的写访问的明确的分离,以及系统 的写访问与DLC/CC12的读访问的明确的分离; 存储单元18使用以下数据结构
-SCL。时隙控制列表22:用于定义FlexRay时隙的行为以及将 FlexRay时隙与其缓冲器28相链接;
-BCL。缓冲器控制列表24:用于定义缓冲器的行为以及将缓冲 器与其缓冲器条目相链接;
-BDL。缓冲器描述符列表26:用于定义缓冲器条目的行为以及 将缓冲器条目与其数据区域(以及/或者FlexRay帧)相链接;
-FB。帧缓冲器28:用于定义帧(消息)和状态数据的行为以及 保持帧(消息)和状态数据。
更精确地,数据结构是用于表征通信控制器时隙以及将通信控制 器时隙与其对应的缓冲器28相关联的时隙控制列表22;该时隙控制 列表22与缓冲器控制列表24相链接,以表征缓冲器28以及将该缓冲 器28与其缓冲器条目相关联;该缓冲器控制列表24与缓冲器描述符 列表26相链接,以表征缓冲器条目以及将该缓冲器条目与其帧和消息 数据相关联;该缓冲器描述符列表26与帧缓冲器28相链接,以表征 和保持帧或消息以及状态数据。
这些数据结构的用途及其关系如下
SCL22是条目的连续列表,针对对于节点而言所关注的每个时隙 或时隙范围具有一个条目。如果节点想要使用时隙以接收或发送数据 (Rx,Tx),则该时隙对于节点而言是所关注的。SCL22定义了 FlexRay 时隙相对于FlexRay节点的相关性和用途。将SCL22与BCL24相链 接以将缓冲器与时隙相关联。
注意,对于2信道的DLC/CC,存在2个SCL,每个信道一个SCL。 在两个信道之间仅共享一个BCL、 BDL和一组FB。该"只有2个" 和"只有1个"是概念上的,这是因为其物理实施方式可以是不同的, 例如,保持作为单个连续的数据块的两个概念上的SCL的单个物理存 储器,以及保持单个BCL的两个相邻因此连续的物理存储器。因此本 发明是基于逻辑的数据结构建立的,逻辑的数据结构的物理表现是无 约束的,只要其反映了其逻辑的对应物即可。
BCL24也是条目的连续列表,针对SCL22所涉及的每个缓冲器 28具有一个条目。缓冲器是BCL24、 BDL26和FB28的组合的抽象; BCL24提供了缓冲器定义,BDL26提供了条目定义,FB28提供了缓 冲器数据;将BCL24中的单个项目与BDL26中的一个或多个项目相 链接。
缓冲器通常是能够以所定义的方式通过一个或多个条目来管理 数据的结构。注意,即使缓冲器具有多个BDL条目,由于BDL条目 的存在并不意味着该缓冲器具有条目,因此仍然可能认为该缓冲器是 空的(也即没有条目)。如果缓冲器具有均可被访问并且内容正确的 BDL条目和相关的FB,则该缓冲器具有条目。对访问和内容的明确 的处理是本发明所提供的灵活性的一部分。
BCL24定义了行为并保持缓冲器的状态(例如条目的数量、将要 读取和写入的下一个条目),并与BDL26相链接,以将缓冲器条目与 缓冲器28相关联。
注意,BCL是针对每个缓冲器具有1个条目的列表。如果存在数 量为4的缓冲器,则BCL具有4个条目。如果将建立第5个缓冲器, 则这可以通过在该4个条目的列表的末尾添加第5个条目来完成。
BDL26提供了条目的列表,针对BCL24中的作为缓冲器28的一 部分的每个条目具有一个条目。缓冲器条目提供了对与帧相关的数据 的实际位置的访问。将该区域称为"帧缓冲器28"。 BDL26中的单个 条目定义了缓冲器条目的特性(例如其数据大小),并与FB28相链接 以将缓冲器条目与其帧数据相关联。
注意,BDL是针对每个缓冲器具有一个或多个条目的列表。如果 存在4个缓冲器,每个缓冲器具有3个条目,则BDL具有4乘以3 即12个条目。
FB28是保持与帧(消息)相关的数据的存储器区域。由于在 BDL26中通过地址来表示该存储器区域,因此该存储器区域可以是在 系统的地址范围(对于32比特寻址是4GB)内的任何地方。FB28不 仅保持用于发送/接收的载荷数据,还保持状态数据。
通过将列表中的与SCL22的相对位置相关的偏移量与SCL基地 址12a相加来访问SCL22。
经由"将SCL条目中的BCL偏移量与BCL基地址12b相加的" 地址计算单元30来将SCL22与BCL24相链接。BCL24本身还经由第 二 "将BCL中的偏移量与BDL基地址12c相加的"地址计算单元30 与BDL26相链接。每个BDL条目与帧缓冲器28相链接。
通信控制器12保持单元12a中的第一 SCL条目的地址、单元12b 中的第一 BCL条目的地址、以及单元12c中的第一 BDL条目的地址。 将其与时隙控制列表22、 SCL22与BCL24之间的第一地址计算单元 30、以及BCL24与BDL26之间的第二地址计算单元30相链接。
数据流如下数据链路控制器12通过SCL寻址单元12a对时隙 控制列表22进行寻址。时隙控制列表22将相应的时隙与通过 DLC/CC12所寻址的缓冲器控制列表24相连。BCL24定义了行为并 保持缓冲器的状态(例如条目的数量),并与BDL26相链接以将缓冲 器条目与缓冲器相关联。通过DLC/CC12来对BDL26进行寻址。 BDL26定义了缓冲器条目的特性(例如其数据大小),并与FB28相链 接以将缓冲器条目与其帧数据相关联。
术语"地址计算"通常表示通过将偏移量与基地址相加来产生地 址。对于SCL,这是通过针对DLC/CC需要在其中进行发送/接收的每 个时隙而递增的SCL条目计数器来完成的,而该计数器用作将与SCL 基地址相加的偏移量,以获得将要处理的实际SCL条目的地址。对于 BCL,该偏移量是在SCL条目中;对于BDL,该偏移量是在BCL条 目中。
图5示出了使用根据本发明的存储单元18的FlexRay环境中的示 例数据流。在图4的顶部描述的通信周期32使用七个时隙,其中在该 特定周期中,静态区段包括三个时隙,动态区段包括四个时隙。 DLC/CC12用于在时隙1中接收,在时隙3中发送。时隙2未使用。 动态时隙用于四个时隙。DLC/CC12用于在时隙4和5中接收,在时 隙6中发送,时隙7未被该节点100使用。在时隙5中未接收到数据。
该场景覆盖了存储器中的数据结构的初始化、控制器主机接口
(CHI)的建立、由数据结构和协议引擎PE—起定义的操作。
此夕卜,该场景覆盖了 CHI所使用的AHB总线以及CPU(主机10) 所使用的AHB总线上的数据业务。通过四个概念上的线程来表示 CHI,以例证该数据结构支持并行操作和并发处理。所述线程为
-Set-up:针对下一个Tx、 Rx或空闲时隙进行建立(SCL22; BCL24);
-PE2Mem:从PE接收Rx数据并将其存储在存储器中; -Mem2PE:从存储器读取数据并将其传输至PE; -Wrap-up:通过对存储器(FB28)中的状态进行更新来完成Tx 或Rx。
(例如)如标记为"I"的图所示,FlexRay的"周期开始"事件 用于触发对SCL的读取,然后读取BCL,然后读取BDL,然后访问 FB。然后在时隙1中接收帧。(例如)在接收之后,使用FlexRay的 "下一个时隙"事件之后的状态"设置状态"来对存储器中的数据结 构进行更新。"Rx"意味着SCL请求接收。"设置状态"意味着将帧和 缓冲器状态数据存储在数据结构(FB和BCL)中。FB意味着对帧缓 冲器细节进行交换,以允许将帧写入帧缓冲器。
该图的部分II是期望接收但未接收到帧的示例(FlexRay的动态 区段)。除了丢失帧之外与上述情况相同。
尽管传递了用于读取而非写入的FB细节并且以另一种方式移动 帧数据(存储器至PE而非PE至存储器),部分III中的发送与接收类
、在周期的末端FlexRay开始了仍从第一时隙开始的下一个周期。 这被描绘为"绕回"的箭头。
本发明涉及对Rx/Tx进行调度/管理的三维机制,其中第一维是时 间(FlexRay时隙),第二维是缓冲,第三维是数据存储。该方法是基 于动态性/灵活性。该方法是面向发送(Tx)和接收(Rx)的。
本发明可应用于任何时间触发的协议,例如FlexRay。应当注意 的是,上述场景描述了诸多可能的并存的方法之一,并将被理解为示 例。附图不应被解释为限定本发明的应用。特别地,使用FlexRay环
境来说明了本发明。应当注意的是,任何时间触发的协议均可使用本 发明。
虽然已经结合本发明的特定实施例描述了本发明,显然,对于本 领域中的技术人员而言,诸多替换、修改和变化将是显而易见的。因 此,这里提出的本发明的优选实施例旨在示例而非限定。在不背离所 附的权利要求所限定的本发明的精神的情况下,可以进行各种改变。
附图标记列表
100通信系统节点 10主机控制器/CPU
12通信控制器
12a时隙控制列表寻址单元 12b缓冲器控制列表寻址单元 12c缓冲器描述符列表寻址单元
14专用逻辑
16存储器
18通用逻辑
20专用逻辑
22时隙控制列表
24缓冲器控制列表
26缓冲器描述符列表
28帧缓冲器
30 地址计算单元
32通信周期
权利要求
1、一种通信系统节点(100),具有主机控制器(10)、主机控制器级别的通用存储器单元(16),以及通信控制器(12),其中通信基于时间触发的协议,其特征在于,在主机控制器级别上,在通信控制器(12)的外部设有用于与配置和缓冲相关的数据的至少一个存储单元(18),并且通信控制器(12)不具有用于与配置和缓冲相关的数据的存储单元。
2、 根据权利要求1所述的系统,其特征在于,所述存储单元(18) 包括以下被链接的数据结构-用于将通信控制器时隙与它们相应的缓冲器(28)相关联的时 隙控制列表(22),被链接到-用于将缓冲器(28)与它的缓冲器条目相关联的缓冲器控制列 表(24),被链接到-用于将缓冲器条目与它的帧或消息数据相关联的缓冲器描述符 列表(26),被链接到-用于保持帧或消息以及状态数据的帧缓冲器(28)。
3、 根据权利要求1或2所述的系统,其特征在于,所述时隙控 制列表(22)向通信系统节点(100)提供了通信控制器时隙的相关性 和用途的定义,并保持到它的缓冲器的逻辑链接。
4、 根据权利要求1-3中的至少一项所述的系统,其特征在于, 所述缓冲器控制列表(24)提供了行为的定义,保持缓冲器(28)的 状态,并保持到缓冲器的缓冲器条目的逻辑链接。
5、 根据权利要求1-4中的至少一项所述的系统,其特征在于, 所述缓冲器描述符列表(26)提供了缓冲器条目的特性的定义,并保 持到帧缓冲器的逻辑链接。
6、 根据权利要求1-5中的至少一项所述的系统,其特征在于, 所述帧缓冲器(28)提供了保持帧或消息以及状态数据的存储区域。
7、 根据权利要求1-6中的至少一项所述的系统,其特征在于,在所述时隙控制列表(22)与所述缓冲器控制列表(24)之间设有第 一地址计算单元(30)。
8、 根据权利要求l-7中的至少一项所述的系统,其特征在于, 在所述缓冲器控制列表(24)与所述缓冲器描述符列表(26)之间设 有第二地址计算单元(30)。
9、 根据权利要求1-8中的至少一项所述的系统,其特征在于, 在所述缓冲器描述符列表(26)与所述帧缓冲器(28)之间设有第三 地址计算单元(30)。
10、 根据权利要求l-9中的至少一项所述的系统,其特征在于, 存储单元(18)是通用逻辑。
11、 根据权利要求1-10中的至少一项所述的系统,其特征在于, 所述存储单元(18)位于系统或主机控制器级别的所述通用存储器单 元(16)内部。
12、 根据权利要求1-11中的至少一项所述的系统,其特征在于, 所述通信控制器(12)包括用于数据获取、解释、执行及状态更新的 专用逻辑(20)。
13、 根据权利要求1-12中的至少一项所述的系统,其特征在于, 所述通信控制器(12)具有与时隙控制列表(22)相链接的时隙控制 列表寻址单元(12a),用于对时隙控制列表(22)中的条目进行寻址。
14、 根据权利要求1-13中的至少一项所述的系统,其特征在于, 所述通信控制器(12)具有缓冲器控制列表寻址单元(12b),用于对 缓冲器控制列表(24)中的条目进行寻址,其中缓冲器控制列表寻址 单元(12b)与时隙控制列表(22)和缓冲器控制列表(24)之间的所 述第一地址计算单元(30)相链接。
15、 根据权利要求1-14中的至少一项所述的系统,其特征在于, 所述通信控制器(12)具有缓冲器描述符列表寻址单元(12c),用于 对所述缓冲器描述符列表(26)中的条目进行寻址,其中,所述缓冲 器描述符列表寻址单元(12c)与缓冲器控制列表(24)和缓冲器描述 符列表(26)之间的所述第二地址计算(30)相链接。
16、 根据权利要求1-15中的至少一项所述的系统,其特征在于, 所述通信控制器(12)具有帧缓冲器寻址单元,用于对帧缓冲器进行寻址,其中,所述帧缓冲器寻址单元与缓冲器描述符列表(26)和帧 缓冲器(30)之间的所述第三地址计算相链接。
17、 根据权利要求1-16中的至少一项所述的系统,其特征在于, 将所述通信控制器(12)实现为FlexRay数据链路控制器。
18、 根据权利要求1-17中的至少一项所述的系统,其特征在于, 所述时间触发的协议是FlexRay协议。
19、 一种通信系统中的存储单元(18),其中,该系统具有零个 或多个活跃时隙以及至少一个逻辑缓冲器,该存储单元(18)包括一 组被链接的数据结构-用于将通信控制器时隙与它们相应的缓冲器(28)相关联的时 隙控制列表(22),被链接到-用于将缓冲器条目与缓冲器(28)相关联的缓冲器控制列表 (24),被链接到-用于将缓冲器条目与它的帧或消息数据相关联的缓冲器描述符 列表(26),被链接到-用于保持帧或消息以及状态数据的帧缓冲器(28)。
20、 根据权利要求19所述的存储单元(18),其特征在于,所 述组具有权利要求3-11中的至少一个权利要求所述的特征。
21、 一种用于时间触发的通信协议的通信系统中的与控制和缓冲相关的数据的数据存储方法,包括以下步骤-通过通信控制器(12)对时隙控制列表(22)的条目进行寻址;-将时隙控制列表条目与缓冲器控制列表条目相链接,以将时隙 与缓冲器相关联,并通过所述通信控制器(12)对缓冲器控制列表(24) 的所述条目进行寻址;-将缓冲器控制列表条目与缓冲器描述符列表条目相链接,以将 缓冲器与缓冲器条目相关联,并通过所述通信控制器(12)对缓冲器 描述符列表(26)的所述条目进行寻址;-将所述缓冲器描述符列表(26)的条目与帧缓冲器(28)相链 接,并通过所述通信控制器(12)对所述帧缓冲器(28)进行寻址。
22、 根据权利要求21所述的方法,其特征在于,对所述时隙控 制列表(22)进行访问的步骤包括将与它在相应的列表中的相对位 置相关联的偏移量与时隙控制列表基地址(12a)相加。
23、 根据权利要求21所述的方法,其特征在于,将所述时隙控 制列表(22)与缓冲器控制列表(24)相链接的步骤包括在第一地 址计算单元(30)中,将与它在相应的列表中的相对位置相关联的偏 移量与缓冲器控制列表基地址(12b)相加。
24、 根据权利要求21所述的方法,其特征在于,将所述缓冲器 控制列表(24)与所述缓冲器描述符列表相链接的步骤包括在第二 地址计算单元(30)中,将与它在相应的列表中的相对位置相关联的 偏移量与缓冲器描述符列表基地址(12c)相加。
25、 根据权利要求21所述的方法,其特征在于,将所述缓冲器 描述符列表(26)与所述帧缓冲器相链接的步骤包括在第三地址计 算单元(30)中将逻辑地址调整为与系统相关的地址。
全文摘要
本发明涉及一种用于通信系统节点的数据存储单元、一种用于数据存储的方法,以及一种通信系统节点。更具体地,本发明涉及将缓冲数据和控制数据存储在位于通信控制器外部的系统级别或主机控制器级别的单元中,其中在该节点上运行时间触发的协议。通过将与控制和缓冲相关的数据(包括格式和行为)置于通信控制器外部,由于将与数据缓冲相关的限制(例如缓冲器大小和缓冲器数量)从通信控制器级别转移到系统级别,因而变得更加灵活、更可扩展和更可重新配置。
文档编号H04L12/56GK101194477SQ200680020359
公开日2008年6月4日 申请日期2006年6月6日 优先权日2005年6月9日
发明者帕特里克·威勒姆·休伯特·休特斯, 弗朗西斯库斯·玛丽亚·维尔蒙特, 汤姆·沃斯 申请人:Nxp股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1