去耦连接转让专利

申请号 : CN200780030756.9

文献号 : CN101507183B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : T·A·P·G·弗古森

申请人 : 皇家飞利浦电子股份有限公司

摘要 :

这里提供了可以在通过去耦连接传输单个消息所需的时帧内生成可靠应答以满足CEC协议的实时要求的方法和节点。具体地说,提供了一种通信系统中的方法,所述通信系统包括第一设备、第二设备、第一节点和第二节点,第一和第二节点经去耦连接而连接,所述方法包括:经第一和第二节点将多个数据分组从第一设备发送到第二设备;在接收来自第一设备的数据分组时,从第一节点向第一设备提供用于所述数据分组的应答;其中提供给第一设备的应答对应于从第二设备提供给第一节点的、关于在所述数据分组之前的数据分组的应答。

权利要求 :

1.一种操作第一节点的方法,所述第一节点经耦合连接而至少连接到第一设备,第一节点适合于经去耦连接而连接到第二节点,所述方法在第一节点中包括:经所述去耦连接从第二节点接收数据结构,所述数据结构指示多个地址中的任何地址是否具有与之相关联的、经耦合连接而连接到第二节点的第二组设备中的设备;

从第一设备接收用于第二设备的消息;

检查所述数据结构以确定所述第二设备是否为与地址相关联的设备;

如果所述第二设备不是与地址相关联的设备,则将否定应答提供给第一设备。

2.如权利要求1所述的方法,还包括:如果第二设备是与地址相关联的设备,则将所述消息经去耦连接传输到第二节点的步骤。

3.如权利要求1或2所述的方法,还包括:如果第二设备是与地址相关联的设备,则将肯定应答传输到第一设备的步骤。

4.如权利要求1或2所述的方法,还包括以下步骤:在第一节点处扫描多个地址,以确定是否经耦合连接而连接到第一节点的第一组设备中的任何设备与所述扫描的多个地址中的任何地址相关联;以及将所述扫描步骤的结果存储为第一数据结构。

5.如权利要求4所述的方法,还包括以下步骤:将第一数据结构的拷贝经所述去耦连接提供给第二节点。

6.如权利要求4所述的方法,其中所述扫描和存储步骤被周期性地重复。

7.如权利要求4所述的方法,其中在接收到由所述第一组设备中的任何设备广播的、指示所述设备与之相关联的地址的信息时,所述方法还包括:更新所存储的第一数据结构以指示所述信息。

8.如权利要求4所述的方法,其中所述扫描步骤包括:对于所述多个地址中的每个地址,将具有对应于所述多个地址中的所述每个地址的源和目的地地址的轮询消息发送到第一组设备。

9.如权利要求8所述的方法,其中如果接收到对于包括所述多个地址中的一个地址的轮询消息的应答的话,则确定第一组设备中的设备与所述地址相关联。

10.一种经耦合连接而至少连接到第一设备的节点,所述节点适合于经去耦连接而连接到第二节点,所述节点包括:用于经所述去耦连接从第二节点接收数据结构的装置,所述数据结构指示多个地址中的任何地址是否具有与之相关联的、经耦合连接而连接到第二节点的第二组设备中的设备;

用于从第一设备接收用于第二设备的消息的装置;

用于检查所述数据结构以确定所述第二设备是否为与地址相关联的设备的装置;

用于在所述第二设备不是与地址相关联的设备时将否定应答提供给第一设备的装置。

11.一种在通信系统中的方法,所述通信系统包括第一设备、第二设备、第一节点和第二节点,所述第一和第二节点经去耦连接而连接,所述方法包括:经第一和第二节点将多个数据分组从第一设备发送到第二设备;

在从第一设备接收到数据分组时,将对所述数据分组的应答从第一节点提供给第一设备;

其中提供给第一设备的所述应答对应于从第二设备提供给第一节点的、关于在所述数据分组之前的数据分组的应答。

12.如权利要求11所述的方法,还包括:

在从第一设备接收到所述多个数据分组中的第一数据分组时,将对所述第一数据分组的应答从第一节点提供给第一设备,对所述第一数据分组的应答由第一节点生成。

13.如权利要求11或12所述的方法,其中所述应答可以包括肯定应答或否定应答。

14.如权利要求13所述的方法,其中在从第一节点接收到否定应答时,第一设备将所述多个数据分组重发到第二设备。

15.如权利要求13所述的方法,其中在从第二设备接收到关于所述多个数据分组中的最后数据分组的否定应答时,第二节点将所述多个数据分组重发到第二设备。

16.一种节点,包括:

用于从第一设备接收多个数据分组的装置;

用于经去耦连接将所述多个数据分组发送到第二节点的装置,所述第二节点还将所述多个数据分组传输到第二设备;

用于经第二节点从第二设备接收对于所述多个数据分组中的每个数据分组的应答的装置;

用于响应于从第一设备接收到数据分组而向第一设备提供应答的装置;

其中提供给第一设备的应答对应于从第二设备提供的、关于在所述数据分组之前的数据分组的应答。

说明书 :

去耦连接

技术领域

[0001] 本发明涉及一种在多个设备之间的其他方式的耦合连接中的去耦连接,并且特别地涉及用于解析设备地址并用于应答通过所述去耦连接发送的消息的方法和节点。

背景技术

[0002] 高清晰度多媒体接口(HDMI)是一种无压缩、全数字的音频/视频接口。HDMI提供在任何兼容数字AV源(诸如机顶盒、DVD播放器或A/V接收器)与兼容数字音频和/或视频监视器(比如数字电视机)之间的接口。
[0003] 正在进行HDMI标准的进一步研发(特别是用于提供无线HDMI连接以及光学HDMI连接的HDMI标准)。在传统的系统中,多个设备通过物理HDMI导线相互连接,并且写入和回读操作通过所述连接进行而没有延迟。然而,当使用无线或光学连接时,物理导线实际上变成“去耦合”,这意味着在传输侧的写入操作与作为写入操作结果的回读操作之间存在延迟。
[0004] 对于通过HDMI连接而进行的音频和/或视频数据的传输,这不是问题,这是因为该传输是单向的并且不需要从目的地到来源地的快速反馈。在某些情况下,可以根本不需2
要反馈。对于IC数据的传输,它也不是问题,这是因为虽然需要在每单个字节上的应答,
2
但是可以通过仅仅报告接收者对传输的最后一个字节的应答来容忍某些延迟。此外,IC总线具有用于经所谓的时钟伸展进行流控制的装置。
[0005] 然而,对于消费者电子控制(CEC)数据的传输,由去耦连接引起的延迟是个问题。CEC是HDMI系统中的一种可选协议,其允许HDMI设备将控制功能传递到系统中的所有或其他设备。这些控制功能可以由用于系统中的设备之一的远程控制发起,并且所述控制功能可以包括单触式播放、系统待机、单触式记录、计时器编程、OSD和设备菜单控制功能。
[0006] 虽然CEC数据以相对较低的比特率来传输,但是该协议可以使用单字节消息,并且在最后一位被传输之后实际上立刻就要求来自接收器的反馈。此外,CEC协议不具有任何流量控制,并且具有在用于新数据和重试数据的连续消息之间的不同定时间隔增加了复杂性。
[0007] 如果CEC数据通过去耦合连接转发,则必需等待返回的应答,这意味着不能满足ack(肯定应答)/nack(否定应答)消息的实时要求。如果所述整个消息在发射器处被捕获,并经所述去耦连接转发到接收器并在该接收器上重现,则将影响在发射器和接收器之间的消息交互并且将改变整个系统的实时行为。
[0008] 当前,单字节CEC消息用于逻辑地址解析协议。所述地址解析协议依赖于接收适当的应答,并且活动设备需要用于该设备的唯一地址。

发明内容

[0009] 本发明的目的是提供可以在通过去耦连接传输单个消息所需的时帧内生成可靠应答从而满足CEC协议的实时要求的方法和节点。
[0010] 根据本发明的第一方面,提供一种在第一节点中构建数据结构的方法,所述第一节点适合于经去耦连接而连接到第二节点,第一组设备经耦合连接而连接到第一节点,所述在第一节点中的方法包括:在第一节点处扫描多个地址以确定第一组设备中的任何设备是否与所述地址中的任何地址相关联;以及将所述扫描步骤的结果存储为第一数据结构。
[0011] 根据本发明的第二方面,提供一种操作第一节点的方法,所述第一节点经耦合连接而至少连接到第一设备,第一节点适合于经去耦连接而连接到第二节点,所述在第一节点中的方法包括:经所述去耦连接从第二节点接收数据结构,所述数据结构指示多个地址中的任何地址是否具有与之相关联的设备;从第一设备接收用于第二设备的消息;检查所述数据结构以确定所述第二设备是否为与地址相关联的设备;如果所述第二设备不是与地址相关联的设备,则将否定应答提供给第一设备。
[0012] 根据本发明的第三方面,提供一种适合于经去耦连接而连接到其它节点的节点,所述节点包括用于上述两种方法之一中的步骤的装置。
[0013] 当在两个或更多个连接设备之间存在去耦连接时,本发明的这些方面允许在定时要求严格的网络中的地址解析消息正确地工作。因此,所述去耦连接以透明的方式(例如与铜线相同的方式)起作用。该方法减少了将重复地址分配给设备的机会。
[0014] 根据本发明的第四方面,提供一种在通信系统中的方法,所述通信系统包第一设备、第二设备、第一节点和第二节点,第一和第二节点经去耦连接而连接,所述方法包括:经第一和第二节点将多个数据分组从第一设备发送到第二设备;在从第一设备接收到数据分组时,将用于所述数据分组的应答从第一节点提供给第一设备;其中提供给第一设备的所述应答对应于从第二设备提供给第一节点的、关于在所述数据分组之前的数据分组的应答。
[0015] 根据本发明的第五方面,提供一种节点,其包括:用于从第一设备接收多个数据分组的装置;用于将所述多个数据分组经去耦连接发送到第二节点的装置,所述第二节点进一步将所述多个数据分组传输到第二设备;用于经第二节点从第二设备接收对于所述多个数据分组中的每个数据分组的应答的装置;用于响应于从第一设备接收数据分组而向第一设备提供应答的装置;其中所述提供给第一设备的应答对应于从第二设备接收的、关于在所述数据分组之前的数据分组的应答。
[0016] 当在两个或多个连接设备之间存在去耦连接时,本发明的所述方面允许在定时要求严格的网络中的消息应答正确地工作。因此,所述去耦连接以透明的方式(例如与铜线相同的方式)起作用。作为使用该方法的结果,应该观察到在设备之间的消息排序和消息次序方面没有差异。
[0017] 通过并参照下面描述的实施例,本发明的这些和其他方面将被阐明并变得显然。

附图说明

[0018] 现在将仅仅通过示例并参照下面的附图来描述本发明,在附图中:
[0019] 图1是根据本发明的系统的框图;
[0020] 图2是示出根据本发明第一方面的方法中的步骤的流程图;
[0021] 图3是示出根据本发明第二方面的方法中的步骤的流程图;
[0022] 图4是示出根据本发明第三方面的方法的时序图;
[0023] 图5是示出根据本发明第三方面的方法的另一个方面的时序图。

具体实施方式

[0024] 尽管下面将参照在至少部分根据HDMI规范连接的视听系统中使用的CEC协议来描述本发明,但是应当理解,本发明适用于任何类型的系统,其中在该系统中,通过去耦连接来发送数据,并且其中在发送侧的写入操作与作为所述写入操作结果的回读操作之间的延迟将影响系统的成功运行。
[0025] 下面,应当理解,去耦连接是导致发送侧的写入操作与作为所述写入操作结果的回读操作之间的延迟的一种连接,该延迟与由在耦合连接上的相同操作所引起的延迟相比是显著的,并且这会影响使用去耦连接的数据传输协议的操作或效率。在下面所描述的示范性实施例中,耦合连接是有线连接,而去耦连接可以是无线连接或光学连接。虽然连接可以是“去耦的”,但是应当理解,该连接仍然可能是两个节点之间的物理连接,例如使用光纤的情况。本领域的技术人员还应当理解,可以根据本发明使用其他类型的去耦连接。
[0026] 图1示出了根据本发明的视听系统2。在系统2中,第一组设备4经耦合连接8而连接到第一节点6。第一组设备4可以包括一个或多个设备,并且所述一个设备或多个设备可以包括例如机顶盒、DVD播放器、A/V接收器、兼容数字音频和/或视频监视器(例如数字电视机)或任何其他类型的兼容数字AV源中的一个或多个。
[0027] 此外,提供了经耦合连接14而连接到第二组设备12的第二节点10。第二组设备12可以包括一个或多个设备,并且可以再次包括例如机顶盒、DVD播放器、A/V接收器、兼容数字音频和/或视频监视器(例如数字电视机)或任何其他类型的兼容数字AV源中的一个或多个。
[0028] 在CEC配置中,只允许有单个登记的显示设备,如数字电视机。如果在所述配置中存在多个显示设备,则只有执行地址分配的第一显示设备将被分配地址。其他显示设备将不能被分配有效的逻辑地址。类似的限制适用于其他类型的视听设备(比如DVD播放器),尽管在这些情况中,可能存在用于特定类型的设备的超过一个的可用地址。
[0029] 第一节点6和第二节点10经去耦连接16而相互连接。如上所述,该去耦连接可以是无线连接或光学连接。
[0030] 第一和第二组设备4、12的每一组中的设备的类型和数量将取决于特定的系统以及该系统的用户的要求。在许多情况下,视听系统2中的第一组设备4可以包括用于系统2的视听源,而第二组设备12可以包括视频显示器和/或音频输出(如扬声器)。在这种情况下,去耦连接允许显示器和扬声器远离AV源(比如在墙上)定位,而没有大量的物理电线或导线从所述源延伸到所述显示器和/或扬声器。
[0031] 应当注意到,虽然节点6、10被图示为是与所述组4、12中的一个或者多个设备相分离的部件,但是设备和节点可以整体地构成。此外,虽然图1中仅仅示出了两个节点,但是应当理解,系统可以包括多于两个的节点,并且所述节点中的每一个节点经去耦连接与其他节点中的每一个节点进行通信。
[0032] 优选地,使用耦合连接将第一和第二组设备4、12中的设备连接到各自的数据总线或开关(未示出),并且这些数据总线可以经各自的耦合连接8、14而连接到各自的节点6、10。所述数据总线或开关中的每一个可以具有多个物理输入端口(比如HDMI端口),而所述节点可以具有单个物理输入端口,以用于连接到数据总线。作为选择,所述节点可以与所述数据总线整体地构成,这意味着节点6、10中的每一个可以具有多个物理输入端口,以用于连接到第一和第二组设备4、12中相应的设备。因此,每个设备直接连接到其相应的节点6、10。如上所述。这些连接是耦合连接。
[0033] 使用HDMI连接到系统的设备可以被分配有多个可能地址之一。根据CEC协议,存在16个可能的逻辑地址,而某些逻辑地址通常被分配给特定类型的设备。例如,通常将地址0分配给显示器,而将地址4分配给DVD播放器。第一和第二节点6、10中的每一个分别具有用于所述节点或总线中的每个输入端口的相应的物理地址。第一和第二节点6、10中的每一个具有各自相关联的逻辑地址。如上所述,每个设备可以具有逻辑地址,其要么被预先确定并分配给设备,要么在设备被激活时由设备确定。
[0034] 在任何时候,第一和第二组设备4、12中的每个设备可以是活动的或不活动的。取决于如何使用系统2,这些设备可以由用户激活或失活。例如,如果用户想要观看电视广播,则视觉显示器和机顶盒将被激活。可以通过操作电源按钮或通过断开所述设备的电源连接来关闭其他设备。作为选择,其他设备可以保持活动(包括处于待机模式),但是显示设备可以被操作以从机顶盒选择数据用于显示。这种操作和功能在本领域是众所周知的,并且在这里将不会进行进一步描述。
[0035] 根据本发明的一个方面,第一和第二节点中的每个节点生成各自的列表或数据结构(比如表格),其指示连接于此的任何设备是否是活动的,即所述设备是否连接到节点并且在CEC总线上可用。如下面描述的这些数据结构和表格的生成和使用使得关于CEC协议中的逻辑地址解析的实时要求的问题被克服了。图2示出了根据本发明在第一节点6和第二节点10中构建表格的方法。
[0036] 在图2的步骤101中,第一节点6和第二节点10被激活,即向第一和第二节点6、10供电。
[0037] 在步骤103a中,第一节点6轮询或扫描它的输入端口(所述输入端口优选地是CEC端口),并且特别地轮询或扫描每一个可能的逻辑地址,以确定是否有任何活动的设备附接到节点6。作为选择,第一节点6可以轮询其相应的数据总线,以获得连接到数据总线的活动设备。这种扫描或轮询可以包括选择可能的逻辑地址之一和发送消息(比如单字节消息),该消息具有对应于所选择的逻辑地址的源地址和目的地地址。如果接收到对所述消息的应答,则该逻辑地址在使用中。对于每一个可能的逻辑地址,重复该处理流程。
[0038] 该轮询步骤的结果被存储在第一节点6的表格中(该表格被指定为表格A)。这个表格A可以包括用于由第一节点6轮询的每个逻辑地址的条目,其具有第一组设备4中的哪个活动设备(如果有的话)与所述逻辑地址相关联的指示。作为选择,如果逻辑地址不具有关联的活动设备,则表格A可以不包括用于所述地址的条目。在本发明的另一个实施例中,除了包括相关逻辑地址之外,该表格还可以包括与逻辑地址相关联的任何活动设备的物理地址。
[0039] 在步骤103b中,通过与第一节点6在步骤103a中相同的方式,第二节点10轮询或扫描其输入端口(其优选地也为CEC端口),并特别地轮询或扫描每个可能的逻辑地址,以确定是否有任何活动设备附接到节点10,或者作为选择轮询其相应的数据总线,以获得连接到数据总线的活动设备。
[0040] 所述轮询步骤的结果被存储在第二节点10的数据结构(例如表格)中,其中该表格被指定为表格B。该表格B可以包括用于由第二节点10轮询的每个地址的条目,其具有第二组设备12中的哪个活动设备(如果有的话)与该地址相关联的指示。作为选择,如果地址不具有关联的活动设备,则表格B可以不包括用于所述地址的条目。
[0041] 在步骤105a和105b中,分别地,第一节点6将表格A的内容传输到第二节点10,而第二节点10将表格B的内容传输到第一节点6。这两个传输是通过去耦连接16进行的。
[0042] 在接收到表格A和B的内容后,除了它们的原始表格A和B之外,第一节点6和第二节点10分别将所收到的表格存储为表格B’和表A’(步骤107a和107b)。作为选择,由于节点6、10轮询相同的地址列表,在每一个节点中,相应存储的表格和接收到的表格可以合并成单个数据结构或表格。
[0043] 在本发明的优选实施例中,在成功接收来自其他节点的表格之后,第一和/或第二节点6、10使得能够进行在第一组4中的设备与第二组12中的设备之间的数据链路操作(步骤109a和109b)。也就是说,在这些节点接收到来自其他节点的所述表格拷贝之前,所述设备之间的连接是不能进行的,即在节点之间不传输CEC消息并且所述节点不生成应答消息(无论是肯定的还是否定的)。当设备被成功地分配了逻辑地址时,该设备送出所谓的地址报告。这些地址报告可以由终止去耦链接的CEC开关有利地使用以用于构建例如路由表。优选地,在链路尚未激活时由节点接收的地址报告在所述链路的另一侧上的另一个节点处被再次生成,并且反之亦然。该步骤可以包括使能所述设备之间的完整连接(即在HDMI连接情况下的视听数据和CEC数据)或仅仅使能所述设备之间的特定部分的连接(即CEC数据)。所述操作可以通过所述节点6、10中的一个或多个将应答传输到另一个节点6、10来指示已经成功接收了相应表格来实现。在本发明的可替代实施例中,不包括所述设备之间的CEC链路的数据链路或部分数据链路可以在这些表格被另一个节点成功接收之前被激活。
[0044] 在步骤111中,节点6、10如HDMI规范中所述的那样在设备之间传输数据,比如视听和其他数据。
[0045] 由于在第一节点6与第二节点10之间的去耦连接16是活动的同时,可以激活和/或失活第一和第二组设备4、12中的任意设备,所以必需确保相应的表格A和B是当前的和最新的。
[0046] 由于CEC协议没有使用任何撤销登记操作,节点6、10中每一个必须周期性地轮询逻辑地址以更新它们各自的表格,从而确保当设备被激活或失活时将设备加入到它们的表格中或将其从表格中删除。在优选实施例中,该周期性轮询尽可能经常地进行,这是因为可以在任何时候激活或失活设备。在图2中,该过程被显示为在步骤111之后回到步骤103a和103b的循环处理,其中重复所述轮询步骤。经更新的表格被再次发送到另一节点,因此每个节点都具有另一个节点中的表格的最新拷贝。
[0047] 当设备被激活时,它们优选地为它们自己分别逻辑地址,并且根据CEC协议的要求向网络发送指示其逻辑和物理地址的报告。因此,该信息可以被与所述设备相连接的节点所接收,并且可以用于更新该节点中的表格。
[0048] 通过生成或构建这些用于指示使用中的地址的数据结构,可以克服与设备连接到不同节点并被分配相同逻辑地址相关联的问题。特别地,当节点将其数据结构的拷贝发送到另一个节点时,两个设备是否已经被分配相同的地址将立刻显而易见。随后,在除了CEC协议以外的协议中,一个或多个所述节点然后可以采取行动来指示相关的一个或者多个设备为它们自己重新分配逻辑地址。在CEC协议中,该机制不可用,并且唯一的解决方案是失活或关闭所述冲突设备之一。因此,当使用采用CEC协议的系统时,最好是:在任何设备被激活并且连接到节点之前激活节点,和/或将所有相同类型的设备(例如,DVD播放器)连接到相同的节点。
[0049] 如上所述,所述表格和其它节点中它们各自的拷贝的使用使得克服了关于CEC协议中的逻辑地址解析的实时要求的问题。特别地,如图3所示,地址解析消息(通常为单字节的消息)由第一组设备4中的第一设备生成,以用于传输到第二设备20(步骤151)。
[0050] 在这个阶段,不知道第二设备20是否是第二组设备12中的设备之一(即经耦合连接14而连接到第二节点10的设备之一),并且如果第二设备20是的话,又不知道设备20是活动的还是不活动的。如果第二设备20不是第二组设备中的设备之一,则第二设备
20可能先前已经连接到第二节点10并且现在已经断开了物理连接。在图1中,这个不确定的连接表示为虚线箭头22。
[0051] 在步骤153中,经耦合连接8将地址解析消息从第一设备8传输到第一节点6。
[0052] 在步骤155中,第一节点6确定第二设备20是否是连接到第二节点的活动设备。通过检查存储在第一节点6中的表格B’来执行这个确定,其中表格B’是由第二节点10生成的表格的拷贝。如果第二设备20是当前与逻辑地址相关联的设备,则该设备将在表格B’中列出并具有相应地址。如果第二设备20不是当前与地址相关联的设备之一,则它不会在表格B’中列出。
[0053] 如果第二设备不是表格B’中列出的设备之一,则第一节点6向第一设备18返回否定应答消息(或者已知为nack消息),并且不会将地址解析消息转发到第二节点10(步骤157)。根据诸如CEC协议之类的某些协议,否定应答消息可以是缺少肯定应答消息。也就是说,如果传输源没有收到肯定应答消息,则该传输源可以确定所述传输不成功。
[0054] 在下面的描述和权利要求中,每当描述提供否定应答的操作时,它都应当被认为涵盖发送否定应答消息或未能发送肯定应答消息。
[0055] 如果第二设备20在表格B’中列出了,则第一节点6向第一设备18返回肯定应答消息(或者已知为ack消息),并且经所述去耦连接16将所述地址解析消息转发到第二节点10(步骤159)。
[0056] 如果第二组设备12中的设备要将地址解析消息传输到可能连接到第一节点6的设备,则使用相应的方法,在该方法中第二节点10检查表格A’(其为由第一节点6生成的表格的拷贝)。
[0057] 当目的地是不活动设备或没有连接到其它节点的设备的更长消息(即多个字节的消息)到达第一或第二节点6、10时,所述拷贝表也可以用于返回nack消息。
[0058] 如这里所述,虽然生成所述表格及其拷贝是优选的,但是应当理解,如图3所示的地址解析消息传输方法可以使用由其他方法生成的表格来实现。
[0059] 此外,虽然图3示出将地址解析消息从第一设备18传输到第二设备20的方法,但是应当理解,因为CEC连接是双向的,所以可以使用相应的方法以用于将地址解析消息从第二设备20传输到第一设备18。
[0060] 如上所述,如果在去耦连接上转发CEC数据,则必需等待返回的应答,这意味着在传统的系统中,不能满足ack/nack消息的实时要求。如果从第一设备18发送到第二设备20的整个消息在第一节点6处被捕获,并经去耦连接16被转发到第二节点10,并且在第二节点10处重新产生,则将影响第一和第二设备18、20之间的消息交互,并且因此可改变整个系统的实时行为。
[0061] 因此,根据本发明的第三方面,当在如图1所示的系统中,第一设备18要把包括例如标头字节和N个数据字节的多字节消息传输到第二节点20时,第一节点6将由第一节点6生成的、对于所述消息中的第一字节的应答返回到第一设备18,并且随后使用反馈循环,在该循环中,第一节点6将来源于第二设备20的对于第一、第二、第三等字节的应答返回作为对由第一设备6发送的第二、第三、第四等字节的应答。图4中示出了说明该方法的信令图。
[0062] 虽然CEC协议传输包括多个字节数据的消息,但是应当理解,所述方法适用于任何用于传输多个数据分组消息的系统。
[0063] 特别地,第一设备18生成包括N个数据字节的多字节消息的标头字节(字节0)并将其发送到第一节点6(步骤201)。为了满足CEC协议的实时要求(即在每个字节传输之后基本上立刻要求应答),第一节点6将应答消息返回到第一设备20,以指示成功接收该标头字节(步骤203)。在一些实施例中,可以使用上面参照图2和图3描述的数据结构来生成这个应答。随后第一节点6经去耦连接16将该标头字节转发到第二节点10(步骤205)。在该标头字节被接收之后,其被转发到第二设备20(步骤207),第二设备207视情况生成并返回应答或否定应答消息“Ack/Nack-0”(步骤209)。用于标头字节的“Ack/Nack-0”消息经去耦连接16而返回到第一节点6(步骤211)。
[0064] 在步骤203中第一设备18接收来自第一节点6的对于标头字节的应答消息之后,第一设备18将所述多字节消息中的第一数据字节“数据字节-1”发送到第一节点6(步骤213)。为了满足CEC协议的定时要求,第一节点6将“Ack/Nack-0”消息作为“数据字节-1”的应答而发送到第一设备18(步骤215)。
[0065] 虽然图4示出了在第一节点6从第二节点10接收“Ack/Nack-0”消息之前,第一设备18将“数据字节-1”发送到第一节点6,但是应当理解,必须在完成“数据字节-1”消息的接收之前接收“Ack/Nack-0”消息。还应当理解,第一字节6可以在由第一设备18完成“数据字节-1”的传输之前接收“Ack/Nack-0”消息,所以第一节点6必须存储“Ack/Nack-0”消息直到需要它。这种消息定时中的变化可能取决于系统2中使用的去耦连接16的类型。
[0066] 在步骤217中,第一节点6将“数据字节-1”发送到第二节点10,并且在步骤219中,第二节点10将其转发到第二设备20。随后,用于“数据字节-1”的应答消息,即“Ack/Nack-1”将被第一节点6用作对由第一设备18发送的“数据字节-2”的应答消息。
[0067] 所述处理流程持续进行,其中由第一设备18发送的第n个数据字节由第一节点6使用由第二设备20生成的、对第n-1个数据字节的应答消息来应答,直到消息中所有N个数据字节都已经从第一设备18发送到第二设备20为止。如果用于第N个数据字节的应答消息“Ack/Nack-N”是肯定的,即它被成功接收了,则第一节点6不要求“Ack-N”并且丢弃“Ack-N”。
[0068] 如果第二设备20接收到带有错误的任意字节并且将“Nack-n”消息返回到第一设备18,则CEC协议允许中断(aborted)并重新开始整个消息的传输,这意味着由第一设备18重新传输标头字节,并继之以N个数据字节。因此,如果“Nack”消息返回到第一设备18,则图4所示的处理将返回到步骤201并重复该处理。
[0069] 然而,如果在第二设备20处,在消息的最后一个数据字节(“数据字节-N”)中存在错误,则反馈循环是不适合的,这是因为第一设备18已经接收到来自第一节点6的对于该数据字节的应答,该应答具有对该消息的倒数第二字节(“Ack/Nack-N-1”)的应答的形式。这在图5中进行了说明。
[0070] 如图所示,第一设备18将消息的最后一个数据字节(“数据字节-N”)传输到第一节点6(步骤251),并且使用对于前一个数据字节的应答消息(“Ack/Nack-N-1”)来确认它(步骤253)。第一节点6将消息的最后一个字节传输到第二节点10(步骤255),并且随后该字节被传输到第二设备20(步骤257)。
[0071] 因为第二设备20接收到具有一个或多个错误的这个最后一个数据字节,第二设备20向第二字节10返回否定应答“Nack-N”(步骤259)。
[0072] 在接收到这个“Nack-N”消息时,第二节点10必须重试将完整的N字节消息发送到第二设备20(步骤261)。因此,第二节点10(并且因此第一节点6(用于将消息从第二设备20发送到第一设备时))包括用于存储N字节消息中的每个字节的缓冲区。
[0073] 由于CEC协议中的定时规范,这个由第二节点10将消息重传到第二设备20的操作可以在新的多字节消息从第一设备18发送之前开始。
[0074] 第二节点10可以向第一节点6指示重试在进行中(步骤263),从而如果第一组设备4中的第一设备18或其他设备传输来自新消息的数据字节“数据字节-1”(步骤265)或新消息(步骤267)的话,则第一节点6可以将Nack消息发送到源设备(步骤269)或可以使用本领域中公知的其他手段来临时阻挡新数据。
[0075] 一旦第二设备20已经成功地向第二节点10应答了每一个重传的数据字节时(步骤271),第二节点10通知第一节点6所述重试已经完成,并且进一步的数据传输可以开始(步骤273)。
[0076] 如果第二设备20没有成功地向第二节点10应答每一个重传的数据字节,则可以以有限次数(例如5)重复进行重试。如果所述传输仍然没有成功,则第二节点10可以丢弃所述消息并通知第一节点可以继续进行进一步的传输。
[0077] 当第一设备18或其他设备重发新消息的第一字节时(步骤275),第一字节18可以用Ack消息来响应(步骤277),并且所述处理可以如图4中所示来进行。
[0078] 应当理解,如4所示的方法不适用于单字节消息。然而,在CEC协议中,地址解析机制要求一个单字节消息,而且因此使用图2和图3所示的方法可以满足所述系统的定时要求。
[0079] 虽然在附图和前面的描述中已经详细阐明并描述了本发明,但是这种说明和描述被认为是说明性的或示范性的而非限制性的;本发明不限于所公开的实施例。
[0080] 通过研究附图、公开和所附权利要求,本领域的技术人员在实践本发明时可以理解并实现对所公开的实施例的其他变形。在权利要求中,词语“包括”不排除其他元件或步骤,并且不定冠词“一”或者“一个”不排除多个。单个处理器或其他单元可以实现权利要求中所叙述的多个项目的功能。在相互不同的从属权利要求中叙述某些措施这个简单的事实并不表示这些措施的组合不能被有利地使用。计算机程序可以在适当的介质上存储/分发,该适当介质诸如连同其他硬件一起提供的或作为其他硬件的一部分的光学存储介质或固态介质,而且计算机程序可以以其他形式分发,诸如经互联网或其他有线或无线电信系统。权利要求中的任何附图标记不应该被解释为限制其范围。