CN101136918A - 将通信***中的端口从活动状态过渡到待机状态的方法和*** - Google Patents
将通信***中的端口从活动状态过渡到待机状态的方法和*** Download PDFInfo
- Publication number
- CN101136918A CN101136918A CNA2007101042730A CN200710104273A CN101136918A CN 101136918 A CN101136918 A CN 101136918A CN A2007101042730 A CNA2007101042730 A CN A2007101042730A CN 200710104273 A CN200710104273 A CN 200710104273A CN 101136918 A CN101136918 A CN 101136918A
- Authority
- CN
- China
- Prior art keywords
- state
- port
- transition
- standby
- active state
- 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.)
- Granted
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/02—Details
- H04L12/12—Arrangements for remote connection or disconnection of substations or of equipment thereof
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F15/00—Digital computers in general; Data processing equipment in general
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/40—Bus networks
- H04L12/40052—High-speed IEEE 1394 serial bus
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D30/00—Reducing energy consumption in communication networks
- Y02D30/50—Reducing energy consumption in communication networks in wire-line communication networks, e.g. low power modes or reduced link rate
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Small-Scale Networks (AREA)
- Communication Control (AREA)
- Information Transfer Systems (AREA)
Abstract
一种将通信***中的端口从活动状态过渡到待机状态的方法,包括传输将端口过渡到待机状态的信号,以及,在传输将端口过渡到待机状态的信号时,将端口从活动状态过渡到待机状态,而不进入暂停状态。端口可以是物理层接口端口,通信***可以是符合IEEE 1394标准的通信***。
Description
技术领域
本发明一般涉及数据通信,具体来说,涉及使用串行通信总线的两个或更多设备之间的数据通信。
背景技术
目前,有各种已知的协议用于在通过通用总线或备选通信链路连接在一起的两个或更多电子设备之间进行通信。这些协议中最著名的并且最广泛使用的有:USB(通用串行总线)、SATA(串行先进技术附属)、HDMI(高清晰度多媒体接口)、光纤信道,以及IEEE 1394。
IEEE1394,采用FireWire(Apple Computer,Inc.的注册商标)和i.LINIC(Sony Corporation的注册商标)为商标,已经广泛地用于各种消费类、计算机,以及工业电子产品中。它特别适用于诸如数据存储、音频和视频、网络、总线提供能源的***设备之类的应用中,因为其以高数据传输速率支持异步和同步数据,对等配置和主从配置两者,菊花链和辐射状配置,以及其有保证的服务质量(QoS)、低延迟,以及低处理开销。
可以将网络构想为分成多层,包括,除了其他层,还有物理层(PHY)和链路层。PHY是指网络硬件、物理电缆和/或无线连接。PHY是最基本的网络层,只提供传输链路层的经过编码的输出的装置。PHY负责用户设备中的数字数据的表示形式和通过通信信道传输的对应信号之间的转换,是其中详细描述了信令规范和联网规则的层。链路层是PHY下面的下一层。链路层在网络中的相邻节点之间传输数据,并一般性地格式化和/或操纵跨PHY传输的数据,以便与应用连接。
IEEE 1394标准最初由电气与电子工程师学会(IEEE)在IEEE 1394-1995中制定的,标题为IEEE Standard for a HighPerformance Serial Bus,已经修改了两次,在1EEE1394a-2000中,标题为IEEE Standard for a High Performance SerialBus-Amendment I,以及在IEEE1394b-2002中标题为IEEEStandard for a High Performance Serial Bus-Amendment2,这里引用了这些文件作为参考。
IEEE1394a引入了暂停状态(在IEEE1394a-20003.9.5.2中定义)以及用于进行电源管理的对应的恢复状态。IEEE1394b添加了待机状态(在IEEE1394b-20023.10.7.3.1中定义)以及在Beta模式下操作的设备的对应的恢复状态。暂停和待机状态两者不用于普通串行总线仲裁,而能够检测物理电缆断开连接或恢复信号,因此,降低了能源消耗,同时可以对物理连接进行连续的监视。
IEEE1394b中待机状态与禁用或暂停状态相比具有某些优点,主要因为作为端口进入或离开待机状态的结果不生成总线重置。这是有益的,因为总线重置将导致整个总线执行总线初始化过程。从PHY的观点来看,对于没有循环的仅Beta总线,总线初始化一般大约要花200微秒(μm);如果总线上有一个循环(或多个循环),或者如果总线是混合型总线(即,包含至少一个边界节点的操作总线),那么,总线初始化过程可能要花费长得多的时间时间。从事务级别来看,总线重置可能要中断总线上的通信,并清除PHY中的挂起的请求。无庸置疑,频繁的总线重置将显著降低总线性能,如此,也会降低***总的性能,因此,这是不合需要的。
令人遗憾的是,利用当前IEEE1394b规范,PHY端口并不总是如预期的那样过渡到待机状态。相反,PHY端口将过渡到暂停状态而其对等端口过渡到待机状态。这不能使两个端口被一个恢复操作同时唤醒,从而待机状态的连接返回到活动状态,因此,这是不合需要的。此外,当PHY端口进入暂停状态或从其暂停状态恢复时,将发生总线重置。
相应地,需要增强到IEEE1394b协议或其他通信协议的待机状态的过渡,以便防止不希望的过渡到暂停状态而不是待机状态。
发明内容
根据如前所述的需求及其他目标,本发明在其说明性实施例中,提供了用于将通信***内的端口从活动状态过渡到待机状态的技术,而不进入到暂停状态或其他非希望的状态。如此,本发明的实施例避免了在从活动状态过渡到省电状态时产生总线重置。在本发明的说明性实施例中,端口可以是PHY端口,而通信***可以是符合IEEE1394的通信***。
根据本发明的一个方面,将通信***中的端口从活动状态过渡到待机状态的方法包括,传输将端口过渡到待机状态的信号,以及,在传输将端口过渡到待机状态的信号时,将端口从活动状态过渡到待机状态,而不进入暂停状态。端口可以是物理层接口端口,通信***可以是符合IEEE1394的通信***。
根据本发明的另一个方面,用于通信***的设备包括至少第一端口,存储器和至少一个连接到存储器和第一端口的处理器。处理器被配置为使第一端口传输将至少第二端口从活动状态过渡到待机状态的信号,以及,在传输将第二端口从活动状态过渡到待机状态的信号时,将第一端口从活动状态过渡到待机状态,而不进入暂停状态。
根据本发明的另一个方面的数据通信***,包括至少一个端口,用于向至少一个另外的端口传输数据,和/或,从另一个端口接收数据。数据通信***进一步包括至少一个连接到端口的控制器,控制器用于将端口过渡到待机状态,而不进入暂停状态。
根据下面的对说明性的实施例的详细描述,本发明的这些特点以及其他特点,优点将变得显而易见,描述应与附图结合起来阅读。
附图说明
图1是显示了其中实现了本发明的技术的示范性两设备通信***的方框图。
图2是显示了根据常规IEEE-1394b通信协议实现的端口连接管理器状态机的至少一部分的示范性状态过渡图。
图3是描述了根据常规IEEE-1394b通信标准的涉及将端口从活动状态过渡到待机状态的模拟信号的示范性时间图。
图4是显示了根据本发明的实施例的IEEE1394b端口连接管理器状态机的至少一部分的示范性状态过渡图。
图5是描述了根据本发明的实施例的涉及将IEEE1394b节点从活动状态过渡到待机状态的模拟信号的示范性时间图。
图6是显示了根据本发明的另一个实施例的IEEE1394b端口连接管理器状态机的至少一部分的示范性状态过渡图。
图7是显示了根据本发明的实施例的IEEE1394b端口连接管理器状态机的至少一部分的示范性状态过渡图。
图8是显示了根据本发明的另一个实施例的IEEE1394b端口连接管理器状态机的至少一部分的示范性状态过渡图。
具体实施方式
这里将通过将通信***端口和对等端口(以共同的通信总线连接在一起)从活动状态过渡到待机状态的示范性方法和设备,对本发明进行描述。本发明的说明性实施例说明了将一个端口以及其对等端口从活动状态过渡到待机状态,而不进入暂停状态,从而避免了产生总线重置,不管使用的总线速度和/或操作模式如何。
尽管这里是结合物理层接口端口描述本发明的,但是,可以理解,本发明的技术可以类似地适用于支持待机或备选省电状态的其他端口,可以进行修改,也可以不进行修改,这对于本领域技术人员是显而易见的。尽管这里是结合符合IEEE1394的标准描述本发明的,但是,可以理解,本发明的技术可以类似地适用于支持待机或备选省电状态的其他通信标准和/或非标准的协议,可以进行修改,也可以不进行修改,这对于本领域技术人员是显而易见的。虽然某些术语可以与IEEE1394b标准一起使用,但是,相同的和/或备选功能语言也可以类似地适用于其中可以应用本发明的技术的其他通信协议。同样,这里所使用的变量、函数、常数、信号、状态等等的某些名称是IEEE1394b标准所说明的那些名称。对那些本领域技术人员显而易见的是,在不会显著地改变本发明的功能的情况下,可以改变特定名称、内部结构,以及实施的装置。
一般而言,除非特别指明,假设规范内定义的变量充当布尔变量。当变量是TRUE时,已经满足变量的条件。类似地,当变量是FALSE时,没有满足变量的一个或多个条件。这里所使用的符号“!”代表对应于此的变量的逻辑补,而符号“&&”和“||”分别代表逻辑AND和逻辑OR运算符。
图1是显示了其中实现了本发明的技术的示范性两设备数据通信***100的方框图。通信可以作为视频编辑***、多媒体广播***、网络***等等来实现。通信***100包括通过通信链路106互连的第一设备102和第二设备104。尽管为便于说明只显示了两个设备,但是,可以理解,本发明不仅限于任何特定数量的互连的设备。通信链路106可以包括无线通信链路,例如,蜂窝式、射频(RF)、红外线(IR)、微波、卫星等等,还可以包括专用通信线路,例如,电话、电缆、光纤等等。通信链路106可以携带若干个信道,通过这些信道,在第一和第二设备102、104之间可以传输数据。信道可以具有用来确定在该特定媒体上每秒可以传输多少样本关联的某一数据速率。如本领域技术人员员所理解的,通过使用多路复用器来将较低速率的信道聚合到一个较高速率的信道。同样,也可以通过使用例如,多路分解器,从较高速率的信道中提取较低速率的信道。
第一和第二设备102、104可以包括,例如,若干个消费类电子设备中的任何一种,包括但不仅限于,数码相机、数字录像摄像机、个人数字助理(PDA)、活动图像专家组层-3音频(MP3)设备、蜂窝电话等等,计算机***设备,包括但不仅限于个人计算机、打印机、帧接收器、外部硬盘驱动器、扫描仪、网络集线器等等。在第一设备102内有链路层108,该链路层从第一设备102内的电路接收数据,并向第一设备102内的PHY端口110传输数据。PHY端口110将数据编码为适当的通信协议,以便通过通信链路106进行传输。第二设备104内的对等PHY端口112接收由第一设备102中的PHY端口110传输的数据。然后,对等PHY端口112对接收到的数据进行解码,并将这样的经过解码的数据提供到第二设备104内的链路层114,以便根据经过解码的数据控制第二设备104。
对于这里所显示的说明性实施例,假设设备102和104使用IEEE1394b通信协议彼此进行通信,虽然本发明不仅限于此通信协议或任何标准或非标准的通信协议。尽管可以参考从第一设备102到第二设备104的数据的传输,但是,数据也可以类似地从第二设备104传输到第一设备102,从而两个设备之间的数据传输是双向的。
由于这里所描述的本发明的说明性实施例旨在增强串行通信协议(即,IEEE1394b标准)的待机特点,与本发明的主要相关性是分别将第一和第二设备102和104中的PHY端口110和112从活动状态(其中,端口能够检测所有串行总线信号状态,并参与普通总线活动(例如,重置、树识别、自我识别,以及普通仲裁阶段)直接过渡到待机状态。待机是可以用来描述给定端口的低电耗操作模式的术语。根据IEEE1394b标准,待机是只有Beta模式操作的特点。如果节点只有一个活动端口,那么,可以将此端口上的连接置于待机状态。尽管连接处于“待机”状态,但是,节点不参与普通总线活动,同一个总线上的其他节点不识别置于“待机”状态的节点的状态的任何变化。如前面所说明的,与连接的暂停操作模式不同,总线重置不作为节点进入“待机”或从“待机”恢复节点的过程的一部分而发生。
第二设备104中的PHY端口112可以被视为相对于第一设备102中的PHY端口110的对等PHY。这里可以使用术语“侄子”来定义具有一个处于“待机”状态的端口,而所有其他端口(如果有的话)都被禁用、断开连接或暂停的叶节点。根节点、具有一个以上的活动端口的节点,或具有另一个已经处于待机状态的端口的节点都不能成为“侄子”。连接到“侄子”节点的活动节点可以被称为“叔叔”节点。当一个节点检测到包含其节点标识(ID)和端口地址的待机命令数据包时,该节点成为“侄子”。虽然“侄子”节点不参与普通总线活动,其“侄子”节点是一个成员的活动总线,一般不会识别一个节点成为“侄子”时的该节点的状态变化(例如,不发生总线重置)。如果在“侄子”节点具有一个处于“待机”状态的端口时发生了总线重置,那么,对等“叔叔”节点代表“侄子”节点代理自我-ID数据包(例如,在自我识别阶段或响应PHY ping数据包,由电缆PHY传输的PHY数据包)。
图2是显示了根据常规IEEE-1394b通信协议实现的端口连接管理器状态机的至少一部分的示范性状态过渡图200。箭头代表状态之间的过渡;每一个箭头上方的文本表示该过渡发生必需的并且充分的条件。垂直线和附带的标记代表状态,以及在进入到该状态调用的函数。IEEE1394b规范中包括的端口连接管理器状态机定义了13个状态,包括,断开连接(P0)、恢复(P1)、活动(P2)、暂停始发端(P3)、暂停目标(P4)、已暂停(P5)、禁用(P6)、待机始发端(P7)、待机目标(P8)、待机(P9)、恢复(P10)、未测试(P11),以及循环禁用(P12)。然而,图200只描述了优选情况下本发明的说明性实施例所适用的过渡,即,活动、待机始发端、待机目标、待机、暂停始发端、暂停目标和暂停状态(例如,P2∶P7、P2∶P8、P2∶P3、P2∶P4)中的一个或多个之间的那些过渡。
根据图2所显示的标准IEEE1394b协议,当且仅当,其中,变量“rx_ok”、“do_standby”和“signaled”或其功能等效变量都是TRUE,端口将从“活动”状态(P2)过渡到“待机始发端”状态(P7)(例如,P2∶P7过渡)。同样,根据图2所显示的标准IEEE1394b协议,当且仅当,其中,变量“rx_ok”是FALSE或变量“suspend_request”和“signaled”两者都是TRUE,端口从“活动”状态(P2)过渡到“暂停始发端”状态(P3)(例如,P2∶P3过渡)。
下面的附录1显示了可以由PHY端口110使用的以C编程语言编写的示范性源代码。此说明性示例是来自IEEE1394b标准的″start_tx__packet()″函数。为了启动进入待机状态的过程,PHY端口将调用此函数,然后,该函数将发送“STANDBY”信号(这里,在标记为“STANDBY”的代码行中),等待规定的时间段(等待时间),然后,将“signaled”变量设置为TRUE(这里,在标记为“SIGNALED”的代码行中)。此等待时间的长度将随着连接速度及其他设置而变化;如果总线是混合型总线,意思是指总线包括旧式(IEEE1394和/或IEEE1394a)和IEEE1394b节点,则是最长的(例如,大致320纳秒(ns))。表1具有用于实现此等待时间的每一行示范性代码,用在混合型总线的情况下,该特定行负责的等待时间的部分(以纳秒表示)进行标记。这些等待时间(例如,80ns、20ns、40ns、20ns,以及160ns)的总和是320ns,这是混合型总线的近似的超时时段。
在接收到“STANDBY”信号时,其对等端口112,根据如图2所示的状态图,将从“活动”状态(P2)过渡到“待机目标”状态(P8),如此执行“standby_target_actions()”函数,该函数又将调用″active_connect_detect(RECEIVE_OK_HANSHAKE)″函数。对于PHY的端口,后一函数将把″bport_sync_ok″(相当于Beta端口的″rx_ok″,如函数″receive_monitor()″所表示的)设置为FALSE。如果这在如前所述的超时时段内发生,在“signaled”是TRUE之前,“rx_ok”将是FALSE。相应地,PHY端口110将从“活动”状态(P2)过渡到“暂停始发端”状态(P3),因为“rx_ok”是FALSE,而不是过渡到“待机始发端”状态(P7),因为“signaled”不成为TRUE,直到“rx_ok”不再是TRUE之后。
图3是描述了根据常规IEEE-1394b通信协议的涉及将PHY节点从“活动”状态过渡到“待机”状态的模拟信号的示范性时间图300。从图中显而易见地看出,根据常规IEEE1394b协议,PHY端口110(参见图1)过渡到“暂停始发端”状态(P3),而不是过渡到想要的“待机始发端”状态(P7)。在时间t0,变量“rx_ok”是TRUE,变量“signaled”是FALSE,变量“do_standby”是FALSE,变量“force_disconnect”是FALSE,“port_state”是表示端口处于“活动”状态的P2。在时间t1,“do_standby”是TRUE,表示请求端口过渡到“待机始发端”状态(P7)。在等待时间(例如,320ns)之后,由于“signaled”仍是FALSE,“do_standby”成为FALSE,“rx_ok”成为FALSE,而“port_是P3,表示端口已经过渡到“暂停始发端”状态而不是想要的“待机始发端”状态。在时间t3,“signaled”成为TRUE,但此时端口已经过渡到“暂停始发端”状态。如此,在这些情况下,端口将不会过渡到想要的“待机始发端”状态。相反,端口将过渡到“暂停始发端”状态,而最终过渡到“暂停状态”,从而在进入并离开“暂停状态”时不希望地产生总线重置。
本发明的一个方面避免了当请求待机状态时将PHY端口110过渡到“暂停始发端”状态,从而有利地校正了常规IEEE1394b协议中的固有缺陷。为了校正此问题,根据本发明的另一个方面,当“do_standby”是TRUE时,修改从活动状态(P2)到“暂停始发端”状态(P3)的过渡,以忽视“rx_ok”的丢失。换句话说,在“rx_ok”是FALSE的情况下,不应该触发过渡,除非“do_standby”也是FALSE。在一个实施例中,P2∶P3过渡不同于IEEE1394b规范中的过渡,即:
(!rx_ok||(suspend_request && signaled)) &&
!(Beta_mode && loop_to_detect &&!bport_sync_ok) &&!force_disconnect
变为
((!ao_standby && !rx_ok)||(suspend_request && sigaled)) &&
!(Beta_mode && loop_to_detect &&!bport_sync_ok) &&
!force_disconnect).
本发明的另一个方面改变了从“活动”状态(P2)到“待机始发端”状态(P7)的过渡,以便它不再要求“rx_ok”为TRUE。此修改允许端口一旦声明了“signaled”并且在声明“rx_ok”之前从P2过渡到P7。在一个实施例中,P2∶P3过渡不同于IEEE1394b规范中的过渡,即:
rx_ok && do_standby && slgnaled &&!f orce_disconnect
变为
do_standby && signaled &&!force_disconnect.
本发明的实施例可以彼此独立地实现上述任何一个方面。然而,优选实施例同时包括这两个方面。
参考图4,显示了根据同时包括上文所提及的两个方面的本发明的实施例的IEEE1394b端口连接管理器状态机的至少一部分的示范性状态过渡图400。如在图2所描述的状态过渡图200中那样,说明性状态过渡图400描述了活动状态(P2)和“暂停始发端”(P3)、“暂停目标”(P4)、“暂停”(P5)、“待机始发端”(P7)、“待机目标”(P8)以及待机(P9)状态中的一个或多个之间的过渡。从图中显而易见地看出,与图2中所描述的状态过渡图200相比,某些状态转换已经修改。
图5是描述了根据本发明的实施例的涉及将PHY节点从“活动”状态过渡到“待机”状态的模拟信号的示范性时间图500。从图中显而易见地看出,时间图500模拟了PHY端口110如何(参见图1)过渡想要的“待机始发端”状态而不是“暂停始发端”状态。在时间t0,变量“rx_ok”是TRUE,变量“signaled”是FALSE,变量“do_standby”是FALSE,变量“force_disconnect”是FALSE,“port_state”是表示端口处于活动状态的P2。在时间t1,“do_standby”是TRUE,表示请求端口过渡“待机始发端”状态(P7)。在时间t2,“rx_ok”成为FALSE;然而,由于实施了本发明的一个方面,这不再会导致过渡到“暂停始发端”状态。在时间t3,“signaled”成为TRUE,“port_state”成为P7,表示端口已经过渡到“待机始发端”状态。一旦“signaled”成为TRUE,此过渡就会发生,尽管“rx_ok”是FALSE,因为实施了本发明的一个方面。如此,本发明的此实施例纠正了原始IEEE1394b协议中的固有的问题。
应该注意,本发明不仅限于上文所描述的开始和结束过渡。例如,可以对于已经根据IEEE1394 Trade Association的TechnicalBulletin TB2002001(标题为1394b Clarifications and Errata,以下简称为“勘误表4.25”)修改的状态机,实现本发明的一个或多个方面。勘误表4.25建议修改P2∶P3过渡以忽视“rx_ok”的“反”,以便确保设备将从活动状态(P2)过渡到“禁用”状态(P6),而不是过渡到“暂停始发端”状态(P3)。
图6显示了示范性状态过渡图600,显示了其中根据勘误表4.25修改了P2∶P3过渡的IEEE1394b端口连接管理器状态机的至少一部分。如在图2所描述的状态过渡图200中那样,说明性状态过渡图600描述了活动状态(P2)和“暂停始发端”(P3)、“暂停目标”(P4)、“暂停”(P5)、“待机始发端”(P7)、“待机目标”(P8)以及待机(P9)状态中的一个或多个之间的过渡。具体来说,从图中显而易见地看出,根据本发明的一个方面,P2∶P3过渡已经从
(!rx_ok||(suspend_request && signaled)) &&
!(Beta_mode && loop_to_detect &&!bport_sync_ok) &&
!force_disconnect
修改为
((!rx_ok &&!suspend_requcst &&!disable_request)||
(suspend_request && signaled)) &&
!(Beta_mode && loop_to_detect &&!bport_sync_ok) &&
!force_disconnect,
图7描述了示范性状态过渡图700,显示了其中根据勘误表4.25并根据本发明的至少一个方面修改了P2∶P3过渡的IEEE1394b端口连接管理器状态机的至少一部分。如在图2所描述的状态过渡图200中那样,说明性状态过渡图700描述了活动状态(P2)和“暂停始发端”(P3)、“暂停目标”(P4)、“暂停”(P5)、“待机始发端”(P7)、“待机目标”(P8)以及待机(P9)状态中的一个或多个之间的过渡。具体来说,从图中显而易见地看出,根据本发明的一个方面,P2∶P3过渡已经从
(!rx_ok||(suspend_request && signaled)) &&
!(Beta_mode && loop_to_detect &&!bport_sync_ok) &&
!force_disconnect
修改为
((!rx_ok &&!suspend_request &&!disable_request &&!do_standby)
||
(suspend_request && signaled)) &&
!(Beta_mode && loop_to_decect &&!bport_sync_ok) &&
!force_disconnect,
图8显示了示范性状态过渡图800,显示了其中根据勘误表4.25并根据本发明的至少一个方面修改了P2∶P3过渡并且其中根据本发明的另一个方面修改了P2∶P7过渡的IEEE1394b端口连接管理器状态机的至少一部分。如在图2所描述的状态过渡图200中那样,说明性状态过渡图800描述了活动状态(P2)和“暂停始发端”(P3)、“暂停目标”(P4)、“暂停”(P5)、“待机始发端”(P7)、“待机目标”(P8)以及待机(P9)状态中的一个或多个之间的过渡。具体来说,从图中显而易见地看出,根据本发明的一个方面,P2∶P3过渡已经从
(!rx_ok!|(suspend_roquest && signaled)) &&
!(Beta_mode && loop_Lo_detect &&!bport_sync_ok) &&
!force_disconnect
修改为
((!rx_ok &&!suspend_request &&!disable_request &&!do_scandby)
||
{suspend_request && signaled)) &&
!(Beta_mode && loop_to_detect &&!bport_sync_ok) &&
!force_disconnect,
而P2∶P7过渡已经从
rx_ok && do_standby && signaled &&!force_disconnect
修改为
do_standby && signaled &&!force_disconnect,
只作为示例,通过把端口连接管理器状态机的相关部分从如图2所示的状态过渡图200中所描述的状态修改为如图6所示的状态过渡图600中所描述的状态,对标准IEEE1394b端口实现勘误表4.25,然后,通过把端口连接管理器状态机的相关部分从如图6所示的状态过渡图600中所描述的状态修改为如图8所示的状态过渡图800中所描述的状态,实现本发明的一个或多个方面。作为另一个示例,通过把端口连接管理器状态机的相关部分从如图6所示的状态过渡图600中所描述的状态修改为如图7所示的状态过渡图700中所描述的状态,可以对已经根据勘误表4.25修改过的IEEE1394b端口来实现本发明的一个方面,然后,通过把端口连接管理器状态机的相关部分从如图7所示的状态过渡图700中所描述的状态修改为如图8所示的状态过渡图800中所描述的状态,实现本发明的另一个方面。还可以通过把端口连接管理器状态机的相关部分从如图2所示的状态过渡图200中所描述的状态修改为如图6所示的状态过渡图600中所描述的状态,对标准IEEE1394b端口实现勘误表4.25和本发明的一个方面(或多个方面),然后,通过把端口连接管理器状态机的相关部分从如图6所示的状态过渡图600中所描述的状态修改为如图8所示的状态过渡图800中所描述的状态,实现本发明的另一个方面。
对于标准IEEE1394b端口的优选实施例将是把其端口连接管理器状态机从如图2所示的状态过渡图200中所描述的状态修改为如图8所示的状态过渡图中所描述的状态,以便勘误表4.25和本发明的说明性实施例中所阐述的有益的修改。
再次参考图1,可以在一个或多个设备102和104中实现本发明的实施例的方法。例如,设备102可以包括处理器,连接到处理器的存储器(例如,通过总线或其他连接装置),以及用于与处理器连接的输入/输出(I/O)电路。处理器可以被配置为执行本发明的方法的至少一部分。
可以理解,这里所使用的术语“处理器”可以包括任何处理设备,如,包括中央处理单元(CPU)和/或其他的处理电路(例如,网络处理器、数字信号处理器(DSP)、微处理器等等)。另外,可以理解,术语“处理器”可以是指一个以上的处理设备,与一个处理设备关联的各种元件可以由其他处理设备进行共享。这里所使用的术语“存储器”可以包括存储器及与处理器或CPU关联的其他计算机可读取的介质,例如,随机存取存储器(RAM)、只读存储器(ROM)、固定存储介质(例如,硬盘驱动器),可移动存储介质(例如,磁盘),快闪存储器等等。此外,这里所使用的术语“I/O电路”可以包括,例如,一个或多个输入设备(例如,键盘、鼠标等等),用于向处理器输入数据,和/或一个或多个输出设备(例如,打印机,监视器等等),用于呈现与处理器关联的结果。
相应地,如这里所描述的用于执行本发明的方法的应用,或其软件组件,包括指令或代码,可以存储在一种或多种关联的存储介质中(例如,ROM、固定或可移动存储器),当准备被利用时,全部加载或部分地加载(例如,加载到RAM中)并由处理器执行。在任何情况下,可以理解,如图1所示的组件的至少一部分可以以硬件、软件的各种形式,或其组合来实现(例如,具有关联的存储器的一个或多个DSP,专用集成电路、功能电路、具有关联的存储器的一个或多个可操作地编程的通用数字计算机等等)。给定了这里所提供的本发明的原理,那些本领域技术人员将能够设想本发明的组件的其他实现方式。
本发明的技术的至少一部分可以以集成电路来实现。在形成集成电路时,在半导体片的表面上通常以重复的模式制造多个相同的小片。每一个芯片都包括这里所描述的器件,并可以包括其他结构或电路。从晶片切割单个小片,然后,作为集成电路封装。那些相关技术领域的人将知道如何切割晶片和封装小片,以生产集成电路。如此制造的集成电路被视为本发明的一部分。
虽然这里是参考附图描述本发明的说明性实施例的,可以理解,本发明不仅限于那些准确的实施例,在不偏离所附的权利要求的范围的情况下,那些相关技术领域的人可以作出各种其他更改和修改。
附录1
vold start_tx_packet(speedCode pkt_specd,pktType pkt,boolean send_cycle_start](
int signal_port NPORT,i;
int deletable_symbol_time;
if DS_stuck)(
max_beta_timer=0;
cs_stcck=TRUE;
)
cur_speed=pkt_specd;
cur_format=pkt;
legacy_phase_cxpectcd=FALSE;
non_null_packet=FALSE;
data_null_packet=FALSE;
if(send_cycle_start) (
if(link=g_Link)
pH_DATA_indication(odd_iscch_phasc?PH_ISOCH_ODD:PH_ISOCH_EVEN,0,0,0};
for(i=0;i<NPORT;i++)
if(′Bcta_mode[i])pcrtTarb(i,DATA_PREFIX);
send_control(odd_isoch_phase?CYCLE_START_ODD:CYCLE_START_EVEN,NPORT);
so_cycle=TRUE;
)
for(i=0. i<NPORT;i=++)(
if(active(i])(
if(disable_requcst[i| && phy_response)
portTarb(signal_port=i,DTSABLE_NOTIFY);
else if(suspend_rcqcest:l:&& Fhy_response)
portTarb(signal_port=i,SUSPEND):
else if(do_standby[i]&&′phy_response)
portTarb(signal_port-i,STANDBY);//STANDBY
)
}
if((signal_port!=NPCRT)&&(cur_specd>min_opcrat ing_spccd)|
cur_speed=min_operating_speed;
for(i=C,i<NPORT;i++}(
if{!active(i))
speed_OK[l]=FALSE;
clse if(:ldisable_rcqcest[l]i | suspend_request[i] || do_standby[i])||phy_responsc)(
speed_OK[i]=(cur_speed<=port_speed(i])&&(Bcta_modc[i)||pkt==LEGACY);
if((pkc==LEGACY)&&(link==Legacy Link)&&(cur_speed==S100))
portTarb(l,DATA_PREFTX);
clse if(spced_OK(i)|
portTspccd(i,cur_speed,pkt);
}else portTarb(i,pkt=-LEGACY?DATA_PREFIX:DATA_NULL);
}
}
wait_symbol_time(cur_speed);//80ns
for(i=O;i<NPORT;i++)
if(!(disable_reqcest[l]||suspend_request(i)||do_standby[i])||Phy_response)
if(Bcta_mode(i))portTarb(i,speed_OK[i]||pkt==LEGACY?DATA_PREFTx:DATA_NULL);
deletable_symbol_timc=MIN_OELETABLE_SYMBOL_TIME;
if((cur_spced<S800)&&(Legacy_symbol_count(cur_opeed)+2>MIN_DELETABLE_SYMBOL_TIME))
deletab_c_symbol_timc=Legocy_symbol_count(cur_spccd)+2;
if(pkt==LEGACY)|
wait_Lcgdcy_time(SPEED_S:GNAL_LENGTH-Legacy_symbol_ccunt(cur_spccd));//20ns
for(i=0;i<NPORT;i++)
if(′(disablc_rcqucsL(i)||suspend_request(i)||do_standby(i))||phy_response)
portTarb(i,speed_cK(i)||pk:==LEGACY?DATA_PREFrx:DATA_NULL);
wait_Legacy_time(DATA_PREFIX_HOLD);//40ns
if Icur_speed-=S100)
wait_Legacy_cimc(2+Legacy_symbcl_count(S100)-(SPEED_SIGKAL_LENGTH+DATA_PREFIX_HOCD));//20ns
) elsc wait_symbol_time(cur_speed);
wait_Legacy_time(deletable_symbol_time);//160ns
if(signal_port!-NPORT)(
for(i=0;i<NPORT;i++)
if{(disable_requcst(i)||suspcnd_request(i)||do_standby(i))&&!phy_responsc)
portTarb(i,ICLE);
}
signaled-(signal_port!-NPORT);//SIGNALED
if (signal_port NPORT){
for(i=0;i<NPORT;i++)
if{(disablc_rcqucst(i)||suspcnd_request(i)||do_standby(i])&&phy_responsc)
whilc(active[i])
)
)
Claims (10)
1.一种将通信***中的端口从活动状态过渡到待机状态的方法,所述方法包括下列步骤:
传输将端口过渡到待机状态的信号;以及
在传输所述将端口过渡到待机状态的信号时,将端口从活动状态过渡到待机状态,而不进入暂停状态。
2.根据权利要求1所述的方法,进一步包括下列步骤:
当传输所述将端口过渡到待机状态的信号时,激活指示器;以及
确保当指示器处于活动状态时不进入暂停状态。
3.根据权利要求1所述的方法,进一步包括当第二指示器处于活动状态时,在去激活第一指示器时进入待机状态的步骤。
4.根据权利要求1所述的方法,进一步包括在激活第一指示器时立即进入待机状态,不管第二指示器的状态如何。
5.根据权利要求1所述的方法,其中,通信***是符合IEEE1394的通信***,所述方法进一步包括下列步骤:确保当第一变量“rx_ok”是FALSE时不进入暂停状态,除非第二变量“do_stanbdy”也是FALSE。
6.根据权利要求5所述的方法,其中,确保步骤包括下列步骤:修改端口连接状态机中的控制从活动状态过渡到暂停状态的逻辑表达式。
7.根据权利要求5所述的方法,其中,确保步骤包括下列步骤:通过用端口连接状态机中的条件″(!do_standby‖!rx_ok)″替换条件″!rx_ok″,修改端口连接状态机中的控制从活动状态过渡到暂停状态的逻辑表达式,其中,″!″代表逻辑补,而″‖″代表逻辑OR函数。
8.根据权利要求6所述的方法,其中,修改步骤包括:作为端口连接状态机中的控制从活动状态过渡到暂停状态的逻辑表达式中的条件,删除变量“rx_ok”的赋值。
9.一种用于通信***中的设备,所述设备包括:
至少第一端口;
存储器;以及
至少一个耦接到所述存储器和所述至少第一端口的处理器,所述至少一个处理器被配置为:使所述至少第一端口传输将至少第二端口从活动状态过渡到待机状态的信号;以及在传输将至少第二端口从活动状态过渡到待机状态的信号时,将所述至少第一端口从活动状态过渡到待机状态,而不进入暂停状态。
10.一种数据通信***,包括:
至少一个端口,用于将数据传输到至少一个另外的端口和从所述至少一个另外的端口接收数据两者中的至少一个;以及
至少一个耦接到端口的控制器,所述控制器用于将至少一个端口过渡到待机状态,而不进入暂停状态。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US11/468,439 | 2006-08-30 | ||
US11/468,439 US7681051B2 (en) | 2006-08-30 | 2006-08-30 | Transitioning of a port in a communications system from an active state to a standby state |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101136918A true CN101136918A (zh) | 2008-03-05 |
CN101136918B CN101136918B (zh) | 2012-07-04 |
Family
ID=38863137
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2007101042730A Expired - Fee Related CN101136918B (zh) | 2006-08-30 | 2007-05-23 | 将通信***中的端口从活动状态过渡到待机状态的方法和*** |
Country Status (6)
Country | Link |
---|---|
US (1) | US7681051B2 (zh) |
EP (1) | EP1895710B1 (zh) |
JP (1) | JP5242100B2 (zh) |
KR (1) | KR101355326B1 (zh) |
CN (1) | CN101136918B (zh) |
TW (1) | TWI408559B (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103634173A (zh) * | 2012-08-22 | 2014-03-12 | 索尼公司 | 电子设备激活控制设备、***、方法和程序 |
CN102204390B (zh) * | 2008-11-24 | 2014-03-12 | 思科技术公司 | 用于与旧式设备的lpi兼容性的过渡phy解决方案 |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20080140913A1 (en) * | 2006-12-07 | 2008-06-12 | Huan-Hui Chiang | Storage Device With 1394 Interface |
KR100804831B1 (ko) * | 2006-12-28 | 2008-02-20 | 삼성전자주식회사 | 무선 usb 호스트 및 무선 usb 디바이스간에 세션을생성하고 관리하는 방법, 무선 usb 호스트 및 무선usb 디바이스 |
JP4829806B2 (ja) * | 2007-01-30 | 2011-12-07 | キヤノン株式会社 | データ処理装置及びコンピュータプログラム |
JP4376931B2 (ja) * | 2007-10-31 | 2009-12-02 | 株式会社東芝 | 表示装置及び表示方法 |
WO2013076881A1 (ja) | 2011-11-25 | 2013-05-30 | パナソニック株式会社 | ベースバンド映像データの送信装置および受信装置ならびに送受信システム |
DE102014216444A1 (de) * | 2014-08-19 | 2016-02-25 | Volkswagen Aktiengesellschaft | Switch-Einheit, Ethernet-Netzwerk und Verfahren zur Aktivierung von Komponenten in einem Ethernet-Netzwerk |
Family Cites Families (19)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3601205B2 (ja) * | 1996-08-26 | 2004-12-15 | ソニー株式会社 | 電子機器及びその動作モード制御方法 |
US6021506A (en) * | 1998-07-31 | 2000-02-01 | Intel Corporation | Method and apparatus for stopping a bus clock while there are no activities on a bus |
JP3293779B2 (ja) * | 1998-08-25 | 2002-06-17 | キヤノン株式会社 | 信号処理装置およびその制御方法 |
US6742130B1 (en) * | 1998-11-09 | 2004-05-25 | Seiko Epson Corporation | Interface apparatus, control method therefor, and information recording medium |
JP2001016222A (ja) * | 1999-06-30 | 2001-01-19 | Toshiba Corp | ネットワークシステム、電子機器及び電源制御方法 |
US6523073B1 (en) * | 1999-08-23 | 2003-02-18 | Palm Computing, Inc. | Handheld computer system and method to detect and identify a peripheral device |
JP3544932B2 (ja) * | 2000-10-05 | 2004-07-21 | Necエレクトロニクス株式会社 | 電子装置及びその電力制御方法 |
JP3884322B2 (ja) * | 2001-05-16 | 2007-02-21 | 株式会社リコー | ネットワークインターフェース |
JP2003044184A (ja) * | 2001-08-01 | 2003-02-14 | Canon Inc | データ処理装置及び電力制御方法 |
US7103788B1 (en) * | 2001-10-31 | 2006-09-05 | Microsoft Corporation | Selective suspension of bus devices |
TW561332B (en) | 2002-02-01 | 2003-11-11 | Via Tech Inc | Method for determining power-saving mode |
US6912596B2 (en) | 2002-08-02 | 2005-06-28 | Texas Instruments Incorporated | Automatic resume from suspend for IEEE-1394 PHY |
US8576820B2 (en) | 2003-07-03 | 2013-11-05 | Broadcom Corporation | Standby mode for use in a device having a multiple channel physical layer |
US20050097378A1 (en) * | 2003-07-29 | 2005-05-05 | Hwang Andrew S. | Method and system for power management in a gigabit Ethernet chip |
US7240189B2 (en) | 2003-09-24 | 2007-07-03 | Texas Instruments Incorporated | Fast resume to normal operation of a computer in a power saving mode |
US20050182978A1 (en) * | 2004-02-17 | 2005-08-18 | Anderson Jason M. | Always ready computing device |
US7299372B2 (en) * | 2004-08-05 | 2007-11-20 | International Business Machines Corporation | Hierarchical management for multiprocessor system with real-time attributes |
KR100656522B1 (ko) * | 2005-01-19 | 2006-12-11 | 삼성전자주식회사 | 범용 입출력 포트를 이용한 이기종 모듈간 서비스 제어시스템 및 그 방법 |
EP1785809A1 (en) * | 2005-11-14 | 2007-05-16 | Texas Instruments Inc. | Standby mode for power management |
-
2006
- 2006-08-30 US US11/468,439 patent/US7681051B2/en active Active
-
2007
- 2007-04-17 TW TW096113490A patent/TWI408559B/zh active
- 2007-05-15 EP EP07251984.6A patent/EP1895710B1/en not_active Expired - Fee Related
- 2007-05-23 CN CN2007101042730A patent/CN101136918B/zh not_active Expired - Fee Related
- 2007-08-30 JP JP2007223350A patent/JP5242100B2/ja active Active
- 2007-08-30 KR KR1020070087901A patent/KR101355326B1/ko not_active IP Right Cessation
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102204390B (zh) * | 2008-11-24 | 2014-03-12 | 思科技术公司 | 用于与旧式设备的lpi兼容性的过渡phy解决方案 |
CN103634173A (zh) * | 2012-08-22 | 2014-03-12 | 索尼公司 | 电子设备激活控制设备、***、方法和程序 |
Also Published As
Publication number | Publication date |
---|---|
US20080065916A1 (en) | 2008-03-13 |
EP1895710A3 (en) | 2011-03-02 |
JP5242100B2 (ja) | 2013-07-24 |
JP2008061248A (ja) | 2008-03-13 |
TWI408559B (zh) | 2013-09-11 |
CN101136918B (zh) | 2012-07-04 |
KR101355326B1 (ko) | 2014-02-04 |
EP1895710A2 (en) | 2008-03-05 |
KR20080020574A (ko) | 2008-03-05 |
US7681051B2 (en) | 2010-03-16 |
TW200811662A (en) | 2008-03-01 |
EP1895710B1 (en) | 2015-03-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101136918B (zh) | 将通信***中的端口从活动状态过渡到待机状态的方法和*** | |
WO2023044681A1 (zh) | 一种共享信道占用时间的方法及其装置 | |
US8462813B2 (en) | Method and system for asymmetric operation in a network node in an energy efficient network | |
US20070153822A1 (en) | Media Access Control Device for High Efficiency Ethernet Backplane | |
CN105027104B (zh) | 用于多分支数字总线的方法和装置 | |
US7672326B1 (en) | Serial media independent interface with double data rate | |
WO2017092394A1 (zh) | 数据传输方法及装置 | |
JPH11187053A (ja) | 信号伝送装置 | |
TW200939659A (en) | Transmission system and transmission device | |
US6920520B2 (en) | Methods and circuits for stacking bus architecture | |
Paskins | The IEEE 1394 bus | |
US6028837A (en) | Ether ring architecture for local area networks | |
US6256324B1 (en) | Chip address allocation through a serial data ring on a stackable repeater | |
WO2012175051A1 (zh) | 多子架通信设备、多子架通信设备的通信方法及装置 | |
US8149862B1 (en) | Multi-protocol communication circuit | |
EP1249974B1 (en) | Method and communication node for topology correction | |
CN104410764B (zh) | 一种多线对自适应汇聚的shdsl传输模块及实现方法 | |
WO2024098869A9 (zh) | 一种通信方法及装置 | |
JP4377033B2 (ja) | データ転送制御方法及びその装置 | |
WO2023185237A1 (zh) | 报文传输的方法及装置 | |
EP0992914B1 (en) | Data transfer device between computer nodes | |
CN117714248A (zh) | 一种频偏消除实现方法、设备以及*** | |
CN115499100A (zh) | 串行解串器的数据传输速率配置协商方法、***、终端及介质 | |
JP2003218874A (ja) | 電子機器間通信速度情報作成方法、電子機器間通信速度情報取得方法および記録媒体 | |
US6721895B1 (en) | Data communications system and data communications method |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20120704 Termination date: 20150523 |
|
EXPY | Termination of patent right or utility model |