自动倍增存储位的内容的存储单元和具有其的数据网络的制作方法

文档序号:12484890阅读:195来源:国知局

本发明涉及一种存储单元以及一种具有至少两个这种存储单元、一个发送方和至少一个接收方的数据网络。



背景技术:

如微控制器或者通常为集成电路(IC)那样的计算单元可包括所谓的多核(Multicore)处理器。在此,多个处理器核可被集成在唯一的芯片(管芯(Die))上。处理器核大多包括算术逻辑单元(ALU),所述算术逻辑单元(ALU)表示用于实施任务、程序、计算指令等等的真正的电子计算器并且此外还表示局部存储器,大多只有相应的处理器核可以访问所述局部存储器。计算单元也可以包括全局存储器,所有的处理器核都可以访问所述全局存储器。

在用于嵌入式系统的单核或者多核处理器中,在两个软件实施过程之间的通信总是可以追溯到对已知的存储位的读和写。这不仅适用于通过全局变量的通信,在那里在其上存放有变量的存储器地址必须是已知的,而且适用于通过消息通道的通信,所述通过消息通道的通信在最底层上又以通过这些位的直接的(或者间接的)寻址来读和写已知的存储位为基础。在后者、即通过通信通道进行消息交换的情况下,软件层承担对消息的分发。为此,该软件层例如依据存储表格来存储哪个消息应该被写到哪个存储器地址上或应该联合地(im Verbund)被发送给哪个其它的处理器。例如,软件过程将消息存储在局部缓冲区中并且将该缓冲区包括诸如目标地址那样的所有需要的信息在内交给操作系统中的功能或者直接交给主管例如网卡的硬件驱动器中的功能,所述目标地址可以或者是存储器地址或者是网络地址。操作系统或者硬件驱动器取(nehmen)该缓冲区并且将它或者写到目标存储器地址中或者写到硬件缓冲区中,所述硬件缓冲区接着将所述数据寄送到网络中。这在数目多的接收方的情况下是相对花费多的。



技术实现要素:

按照本发明,建议了一种具有独立专利权利要求的特征的存储单元以及具有至少两个这种存储单元、一个发送方和至少一个接收方的数据网络。有利的构建方案是从属权利要求以及随后的描述的主题。

在采用按照本发明的存储单元的情况下不必要的是:所述至少一个接收方或者其它进行接收的存储单元的(多个)存储器或者网络地址在发送方处是已知的。因而,优选地,要发送的数据(Datum)不需要包含至少一个接收方的地址和/或其它进行接收的存储单元的地址。消息分发自动地通过作为硬件装置的存储单元发生,并且这不是只寄送给一个接收方,而是优选地寄送给多个接收方,发送方不一定必须知道所述多个接收方的存在。该发送方只需要将消息写到该发送方已知的存储位(存储单元的存储位)上。紧接着,该存储单元承担将消息自动转发给数目可配置的其它的存储单元。该存储单元优选地被构造为集成电路的部分。

该存储单元可以不仅在同一计算单元(例如众核或多核处理器(Many- bzw. Multicore-Prozessor))之内也在不同的计算单元(例如网络)之间分发数据。

如果发送方和接收方是同一计算单元的部分(例如处理器核),那么因此软件层可以被脱离并且计算单元的操作系统可以被卸载,由此节约计算时间。

在按照本发明的解决方案中,数据不是由传统意义上的发送方寄送给多个接收方,而是优选地只被寄送给如下存储单元:所述存储单元接着自给自足地进行其它的分发。然而在这种情况下也不涉及高速缓存(Cache)解决方案,因为与高速缓存相反地涉及源的真正的、独立的副本(Kopie),所述源的真正的、独立的副本可以任意地被改变和被处理。

换句话说,本发明建议了一种主动的第一存储单元,所述主动的第一存储单元在写上第一存储位时自动地将数据转发给其它的第二存储单元的多个预先给定的第一存储位或将数据复制到所述其它的第二存储单元的多个预先给定的第一存储位中。尤其是,进行接收的第二存储单元中的一个或者多个可以是如第一或者另一计算单元那样的同样的计算单元的部分。尤其是,在第一种情况下,发送方和接收方是同样的计算单元的不同的核或是在同样的计算单元的不同的核上运行的软件过程,在第二种情况下,发送方和接收方在不同的计算单元上。

有利地,所述第二存储单元被设立为向第一存储单元登记,以接收数据。可替换地或者附加地,有利地,所述至少一个接收方被设立为向第一存储单元登记,以接收数据。因此,例如可能的是:对此感兴趣的接收方或它们的所属的存储单元(类似“发布订阅(Publish-Subscribe)”机制)向主管确定的数据的存储单元登记,以便同样被送交有数据。在这种情况下,不必涉及具有第一(最初的)存储位的同样的(主机(Master))存储单元,而是该注册可以在每个其它的(从机(Slave))存储单元上进行,所述每个其它的(从机)存储单元都参与了数据的转发。经此,在例如网络中或者在总线上的通信被减少并且发送方被卸载,因为该发送方不必编辑(bearbeiten)所有的注册询问。

为了接收被给予的业务(所谓的服务(Service)、软件过程)的数据,软件层可以以传统的方式提供“发布-订阅”机制。在这种情况下,该业务提供(发布)数据而对该数据感兴趣的客户端或者直接向该业务注册(订阅)或者向软件层注册(订阅),以便在提供时接收这些数据。

然而,可替换于此地,也可以设置静态配置,其中相应的目标存储单元的地址固定地被寄存在相应的输出存储单元中和/或其中相应的接收方固定地与相应的存储单元相联系。这使得动态注册不必要并且尤其是在机动车中是非常有利的,在所述机动车中,通常在带端上的所参与的计算单元是已知的并且不再改变。另一优点是:现在,不再存在对主管其它的感兴趣者的消息转发或注册的软件层的需求。通过本发明,由于详细说明多个地址可能用硬件实现组播。因为发送方的处理器在发送数据时被卸载,所以通过多个存储单元的级联可以更快速地并且更有效地在发送方与多个接收方之间交换消息。

除此之外,通过相对应的经过多个存储单元的路由(Routing)还可以实现容错的消息送交,因为在这种情况下不再只存在一条从发送方到接收方的路线,而是针对中间站停止运转的情况存在数目可配置的替换路线。

在机动车中,本发明显示出特别的优点,因为在那里常常多个具有计算单元的控制设备必须进行通信。机动车中的控制设备承担多个不同的功能性。例如,发动机控制设备可以承担对内燃机和/或电动机的控制或者制动控制设备可以承担对制动的控制。驾驶辅助控制设备可以实施不同的驾驶辅助功能,如雷达、摄像机、停车辅助、防抱死系统(ABS)、驱动防滑调节(ASR)、电子稳定性控制(Electronic Stability Control(ESC))、自适应巡航控制(Adaptive Cruise Control(ACC))等等。此外,控制设备还可以被设置用于底盘(Chassis)系统,所述底盘系统例如可以承担对安全气囊(Airbag)的控制。

本发明的其它的优点和构建方案从说明书和随附的附图中得到。

附图说明

本发明依据附图中的实施例示意性地被示出并且在下文参考附图被描述。

图1示出了按照本发明的具有两个存储单元、一个发送方和多个接收方的数据网络的优选实施形式。

具体实施方式

在图1中,按照本发明的数据网络的优选实施形式示意性地被示出并且用100标明。数据网络100具有第一计算单元110(例如机动车控制设备的众核系统)、第二计算单元120(例如另一机动车控制设备的众核系统)和第三计算单元130(同样例如又一机动车控制设备的众核系统)。元件110和/或120和/或130也可以是同样的计算单元的组成部分(例如单个众核系统中的核)或者也可以是同样的存储器的组成部分。在那里,本发明也能够有利地被采用,以减少交叉核通信(Cross-Core-Kommunikation),因为交叉核只可以被写一次但是可以多次在本地被读取。

尤其是,可以起到发送方的作用和/或起到接收方的作用的软件过程运行在每个计算单元上。示例性的软件过程用111、112和113示出,所述示例性的软件过程在众核系统上被实施。在此,软件过程111起到数据D的发送方的作用,而软件过程112、113起到数据D的接收方的作用。示例性的发送方是读出转速并且将该转速提供给其它过程的过程。该值例如由所有的过程读取,所述过程必须做出与转速有关的判定(例如计算喷射量或者喷射时间点)。

按照本发明的存储单元的优选实施形式用200示出并且是计算单元110的部分。存储单元200具有第一存储位201和两个第二存储位202和203。第一存储位201用于容纳数据,第二存储位202和203包含按照本发明的存储单元的其它优选实施形式300、400的地址,来自第一存储位201的数据应该被复制给所述地址或被复制到所述地址中。该存储单元200被设立为:每当第一存储位201被写上时或第一存储位201一被写上,就将第一存储位201的内容(这里是数据D)自动地复制到其它的或第二存储单元300、400的借助于所述两个第二存储位202和203中的地址所限定的第一存储位301、401中。所述第一存储位301和401可以与第一存储位201无关地被写上并且被读出。尤其是,改变存储位301或者401的内容对存储位201的内容没有影响。

接收方112和113被设立为从第一存储位201读取数据D并且处理来自第一存储位201的数据D。所述读取对应于常见的对存储器地址中的数据的读取。在该图中,虽然在控制设备110中只示出了两个接收方,然而可以涉及任意多个接收方并且(根据发送方和根据要发送的数据)也可以涉及可变的发送方和接收方。

此外,在图1中还示出了:存储单元200通过网络连接140也将数据D传输给第二控制设备120中的第二存储单元300,并且在那里将数据D复制到第一存储位301中。存储单元300同样被设立为:每当第一存储位301被写上时,就将第一存储位301的内容自动地复制到还有其它的存储单元(未示出)的借助于第二存储位302和303中的地址所限定的第一存储位中。所述还有其它的存储单元的第一存储位也可以与第一存储位301无关地被读出并且被写上;同样,第一存储位301也可以与第一存储位201无关地被读出并且被写上。

在控制设备120中,软件过程122和123被示出为接收方,所述接收方从第一存储位301读出数据并且处理来自第一存储位301的数据。

此外还示出了:存储单元200通过网络连接140也将数据D传输给第三控制设备130中的第二存储单元400并且在那里将数据D复制到第一存储位401中。存储单元400同样被设立为:每当第一存储位401被写上时,就将第一存储位401的内容自动地复制到还有其它的存储单元(未示出)的借助于第二存储位402和403中的地址所限定的第一存储位中。所述还有其它的存储单元的第一存储位也可以与第一存储位401无关地被读出并且被写上;同样,第一存储位401也可以与第一存储位201无关地被读出并且被写上。

在控制设备130中,软件过程132和133被示出为接收方,所述接收方从第一存储位401读出数据并且处理来自第一存储位401的数据。

例如,车辆速度作为ABS/ESP控制设备(例如110)的数据通过车轮转速被确定并且通过总线/网络被传输到发动机控制设备(例如120)或者被传输到舒适性控制设备(例如130)。接着,与之相关的功能(例如132)(诸如门锁装置)在那里可以在超过确定的速度时被实现。

通过该实施形式减少了例如可以被实现为CAN总线或者Flexray总线的网络140中的通信,因为数据D必须只有还在所参与的存储单元200、300、400之间被传输一次并且所述分别进行接收的存储单元(这里为300或400)进行在计算单元(这里为120或130)之内的数据分发。同时,发送方被卸载,因为该发送方不必须编辑所有的注册询问。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1