首页> 中国专利> 在高速串行接口通信系统中使用选择性字节同步的省电模式的系统和方法

在高速串行接口通信系统中使用选择性字节同步的省电模式的系统和方法

摘要

本发明提供一种用于使收发器电路(500)的功耗最小化的系统和方法,所述电路使用至少在两个设备之间的数字高速串行通信链路。逗号码匹配通常用作建立字节同步且用于确定和防止数据传输错误的方法。然而,当在可以以每秒几千兆位的速率进行传输数据的高速串行通信链路中进行逗号码匹配时,可消耗大量功率。因此,本文所描述的系统和方法保持逗号码匹配在关闭状态下,且当在串行通信链路中发生重大操作变化时,将逗号码匹配从关闭状态转变到开启状态。

著录项

  • 公开/公告号CN103262462A

    专利类型发明专利

  • 公开/公告日2013-08-21

    原文格式PDF

  • 申请/专利权人 意法爱立信有限公司;

    申请/专利号CN201180061213.X

  • 发明设计人 安德烈·拉杜莱斯库;

    申请日2011-10-19

  • 分类号H04L7/04(20060101);H04B1/16(20060101);H04W52/02(20060101);

  • 代理机构11291 北京同达信恒知识产权代理有限公司;

  • 代理人黄志华

  • 地址 瑞士普朗莱乌特尚德菲耶路39号

  • 入库时间 2024-02-19 20:25:55

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2016-09-14

    授权

    授权

  • 2016-08-17

    专利申请权的转移 IPC(主分类):H04L7/04 登记生效日:20160728 变更前: 变更后: 申请日:20111019

    专利申请权、专利权的转移

  • 2016-08-17

    著录事项变更 IPC(主分类):H04L7/04 变更前: 变更后: 申请日:20111019

    著录事项变更

  • 2013-11-13

    实质审查的生效 IPC(主分类):H04L7/04 申请日:20111019

    实质审查的生效

  • 2013-08-21

    公开

    公开

说明书

技术领域

本发明总体涉及数字电路,更具体地说,涉及用于在高速串行接口电路省 电的系统和方法。

背景技术

电子设备(如移动电话、个人计算机、个人数字助理和许多其它的电子设 备)使用处理器、存储器、输入/输出(I/O)和其它数字设备来为终端用户提供 其设计的功能。使用互连装置(有时也称“总线”或“接口”)将这些各种数字 设备彼此连接起来,该互连装置在各种设备间传送数据、信号和指令。

随着互补金属氧化物半导体(CMOS)技术的发展,出现了从并行接口转向 高速串行接口的趋势。其原因有两方面。第一,多管脚芯片上的物理封装空间 较小。随着时间的进行,集成电路设备或“芯片”趋向于缩小和/或提供更多功 能(因此更多接口)。因此,必须用更少的管脚传送同样量或更大量的数据。第 二,随着数据量的增加,封装尺寸不变和/或减小,这意味着功耗也必须减少(除 非由不同材料制成,功耗和散热是由用来制作芯片的材料所限制的现象,假定 散热方法已经被合理地最大化)。因此,串行接口的使用已增长,其更快速且消 耗更少电量。

在串行接口的协议栈(协议栈是描述信息如何经由物理互连装置在设备之 间传输的)中,具有许多层,包括物理层或“PHY”层。这样的PHY层和相关 协议的示例分别是M-PHY和统一协议(UniPro),两者都在移动行业处理器接 口(MIPI)联盟中被标准化。在串行PHY技术中,通常优选被编码(例如,8b/10b 编码)的PHY。当今高速串行接口大多数(包括MIPI/M-PHY、PCI Express、 SuperSpeed USB、HyperTransport、RapidlO、InfiniBand和Serial ATA)使用被 编码的PHY层。使用被编码的PHY层,是由于其提供较稳健的通信,提供足 够的状态变化从而实现时钟恢复,并且可用于在数据在互连装置上传输期间检 测数据的字节边界(有时被称为字节同步)。

例如,字节同步可以通过发送器(Tx)将逗号码插入在任何有效的比特流 中来实现,其中逗号码是独特的位模式。逗号码具有几个特有的特征。第一特 征在于,其为在正常传输中不会与位符号的任何其它组合相冲突的独特位模式。 第二特征是,如果逗号码的所有位全部反转,仍保持该模式的独特性。随后, 接收器(Rx)可以在经由互连装置接收的数据中搜索这样的逗号码,并且当找 到逗号码时,Rx建立字节同步,该字节同步可用于利用正常PHY符号进行的进 一步通信,该正常PHY符号在比特流中不是独特的。搜索和找到逗号码的过程 通常被称为“逗号码匹配”。

然而,在互连装置中使用逗号码匹配技术进行字节同步存在一些问题。问 题之一是,不断搜索逗号码使用大量电功率。在下文中将对该问题和其它问题 进行更具体的描述。因此,期望提供最小限度地使用逗号码进行字节同步的方 法、模式和系统,以用在例如UniPro系统中的M-PHY链路中。

发明内容

因此,本发明的总体方面提供可以避免或减少上述类型问题的收发器。

根据本发明的第一方面,提供一种用于使电路的功耗最小化的方法,所述 电路使用数字高速串行通信链路,且所述数字高速串行通信链路在两个设备之 间,所述方法包括:将逗号码匹配保持在关闭状态下一段时间;以及当所述串 行通信链路中发生操作变化时,将逗号码匹配从关闭状态转变到开启状态。

根据本发明的第一方面,所述操作变化包括以下中的至少一种:(a)使用所 述串行通信链路进行的通信的链路启动,(b)重新配置所述串行通信链路,以 及(c)从所述串行通信链路中的错误进行错误恢复;而且其中,所述操作变化 是链路启动,且包括所述两个设备中至少一个设备的开机启动和/或所述两个设 备中至少一个设备的重启情况。

此外,根据第一方面,所述操作变化是重新配置且包括在功率和/或通信速 度方面重新配置所述串行通信链路。根据第一方面的方法还包括在所述两个设 备之间的串行通信链路中进行字节同步,其中,进行字节同步包括发送第一物 理层符号标记0和随后的第二物理层符号标记1,所述第一物理层符号标记0是 逗号码符号,所述第二物理层符号标记1能够是非逗号K-码符号、逗号K-码符 号和数据码符号中的至少一种。

根据第一方面,该方法还包括:在接收到来自所述串行通信链路的字节同 步模式后,将逗号码匹配从开启状态转变为关闭状态,使得重新获得位同步和/ 或字节同步;以及确定已发生突发错误从而导致所述串行通信链路的操作改变, 其中,所述突发错误包括一定数量的PHY符号传输错误;以及在接收到来自所 述串行通信链路的字节同步模式后,将逗号码匹配从开启状态转变到关闭状态, 使得重新获得位同步和/或字节同步。根据第一方面,所述PHY符号传输错误包 括下列中的至少一种:接收到损坏的PHY符号;接收到正确的异常PHY符号 (exception PHY symbol),但其没有映射到有效的UniPro符号;在期待数据PHY 符号时,在接收到一异常PHY符号后立即接收到另一正确的异常PHY符号; 以及在Phy适配器层符号中的ESCape符号(ESC_PA)后,接收到有效数据PHY 符号的错误值。

根据第一方面,该方法还包括确定所述操作变化包括:由于位同步和/或字 节同步丢失,在计时器的一时间段内未接收到确认流控制(AFC)帧和/或否定 确认控制(NAC)帧。根据第一方面,本方法还包括在接收到来自串行通信链 路的字节同步模式后,将逗号码匹配从开启状态转变为关闭状态,重新获得串 行通信链路中的位同步和/或字节同步。

根据本发明的第二方面,提供一种用于在两个设备之间通过串行通信链 路进行通信的数字高速串行通信收发器(500),包括:错误管理器(426),所 述错误管理器配置成在接收到的数据帧和控制帧中捕获错误指示,并发出否定 确认控制NAC帧请求;NAC成帧器(428),所述NAC成帧器配置成响应于 NAC请求发送NAC帧,以及响应于所接收到的NAC帧启动字节同步控制信号 的传输;至少一个接收器(404),其中,所述至少一个接收器(404)包括字节 同步子块(406),所述字节同步子块配置成对从其它设备接收到的信号进行逗 号码匹配;以及字节同步控制子块(502),所述字节同步控制子块配置成在一 段时间内将所述字节同步子块(406)在关闭状态和开启状态之间转变,其中, 所述字节同步子块(406)还配置成在所述串行通信链路发生操作变化时执行逗 号码匹配。

根据本发明的第二方面,所述操作变化包括以下中的至少一种:(a)使 用所述串行通信链路进行的通信的链路启动,(b)重新配置所述串行通信链路, 以及(c)从所述串行通信链路中的错误进行错误恢复。根据本发明的第二方面, 所述操作变化是链路启动,且包括所述两个设备中至少一个设备的开机启动和/ 或所述两个设备中至少一个设备的重启情况。

根据第二方面,所述操作变化是重新配置,且包括在功率和/或通信速度 方面重新配置所述串行通信链路,其中,在所述串行通信链路中的字节同步发 生在所述两个设备之间。字节同步包括发送第一物理层符号标记0和随后的第 二物理层符号标记1,所述第一物理层符号标记0是逗号码符号,所述第二物理 层符号标记1能够是非逗号K-码符号、逗号K-码符号和数据码符号中的至少一 种。

根据第二方面,所述字节同步控制子块(502)被配置成:在接收到来自 所述串行通信链路的字节同步模式后,将所述字节同步子块(406)从开启状态 转变到关闭状态,使得重新获得位同步和/或字节同步;其中,电路(422、426、 428)被配置成确定突发错误已发生从而导致所述串行通信链路的操作变化,其 中,所述突发错误包括一定数量的PHY符号传输错误;以及,其中,字节同步 子块(406)还被配置成在接收到来自所述串行通信链路的字节同步模式后,将 逗号码匹配从开启状态转变到关闭状态,使得重新获得位同步和/或字节同步。

根据本发明的第二方面,所述PHY符号传输错误包括下列中的至少一种: 接收到损坏的PHY符号;接收到正确的异常PHY符号,但其没有映射到有效 的UniPro符号;在期待数据PHY符号时,在接收到一异常PHY符号后立即接 收到另一正确的异常PHY符号;以及在Phy适配器层符号中的ESCape符号 (ESC_PA)后,接收到有效数据PHY符号的错误值。

此外,根据本发明的第二方面,收发器包括电路(422、426、428),该电 路还被配置成确定操作变化包括由于位同步和/或字节同步丢失而在计时器的一 时间段内未接收到确认流控制(AFC)帧和/或否定确认控制(NAC)帧,其中, 字节同步子块(406)还被配置在接收到来自串行通信链路的字节同步模式后, 将逗号码匹配从开启状态转变到关闭状态。此外,根据第二实施方式,收发器 (500)重新获得串行通信链路中的位同步/字节同步。

根据本发明的第三方面,提供一种用于使电路中功耗最小化的计算机可读 指令媒介,所述电路在两个设备之间使用数字高速串行通信链路,所述计算机 可读指令媒介包括:第一组指令,所述第一组指令适用于将逗号码匹配保持在 关闭状态下一段时间;以及第二组指令,所述第二组指令适用于当所述串行通 信链路中发生操作变化时,将逗号码匹配从关闭状态转变到开启状态,其中所 述计算机可读的媒介是永久性的。

附图说明

结合附图的以下实施方式的描述,本发明的上述和其它目的和特征将变得 清楚和更易于理解,其中,除非另有规定,在各个附图中的相同附图标记指示 相同的部件,其中:

图1是示出通过互连装置进行通信的两个设备的高级框图,所述两个设备 可以使用根据这些示例性实施方式的链路启动协议来在它们之间建立通信链 路;

图2示出根据示例性实施方式的与互连装置相关联的堆栈协议和物理层;

图3示出示例性UniPro系统中的错误信令和错误恢复;

图4示出与UniPro设备相关联的示例性L1.5/L2架构;

图5示出根据示例性实施方式的与UniPro设备相关联的示例性L1.5/L2架 构;

图6是示出根据第一示例性实施方式的使高速数字串行通信链路中功耗最 小化的方法的流程图;以及

图7是示出根据第二示例性实施方式的使高速数字串行通信链路中功耗最 小化的方法的流程图。

具体实施方式

下文参照附图更全面地描述本发明,附图中示出了本发明的实施方式。然 而,本发明可以以许多不同形式实现,而不应解释为限制于本文所描述的实施 方式。相反,提供这些实施方式以使本公开彻底和完整,并且充分地向本领域 技术人员传达本发明的范围。在附图中,为了清楚起见,层和区域的尺寸和相 对尺寸可以被放大。全部附图中,相同的附图标记指示相同的元件。相反,本 发明的范围由所附权利要求限定。

本文描述的示例性实施方式涉及与互连装置或接口相关联的字节同步技 术。如上所述,传统的逗号编码字节同步技术具有某些缺点。具体地,逗号码 匹配的一个问题在于,其是高耗电过程,这是由于其以每秒几千兆比特(Gbps) 的速率进行位模式匹配。因此,当不需要时能够将逗号码匹配关闭会是有益的。 根据示例性实施方式,描述了用于在字节同步错误的可能性高时开启逗号码匹 配的方法、设备、系统和软件。例如,可以通过仅在某些通信时间段(诸如, 重启,重新配置,以及当从错误中恢复过来时,尤其当证实或已证实需要逗号 码匹配的可能性比其它通信时间段高时)期间开启逗号码匹配功能来实现这一 点。因此,示例性实施方式提供较低功耗,同时将链路鲁棒性保持在高水平。

为了对示例性实施方式的讨论提供一些背景,首先提供与Unipro协议和可 以使用这些示例性实施方式的系统相关的一些信息。然而,本领域的技术人员 可以理解,本文描述的示例性实施方式包括但不局限于在UniPro标准化的系统 中的使用。例如,已知在许多高速接口(即,数据传送速率以Gbps级别的系统) 中,没有独立时钟,该时钟嵌入在数据信号中,接收器必须接收该信号并尝试 追踪接收到的信号以正确获得信号中的数据。然而,发送信号的标称频率是已 知的,接收器可以使用公知的时钟恢复技术来使接收频率与发送频率匹配,该 匹配可以在相位和/或频率上有一定偏差。一种这样的方法基于密切监控不同电 压等级之间的转变。“转变监控”技术使用边缘检测器,在一些情况下,可以包 括过采样以确定转变并找到数据的正确位置。虽然这样的系统确实消耗大量电 力,但其能够在相对短的时间内找到时钟并将接收器锁定到数据信号。因此, 能够或可以使用示例性实施方式的当前实现或未来实现的其它示例包括使用这 样的过采样技术进行数据采集的实现。此外,能够或者可以使用示例性实施方 式的其他类型的市售接口系统包括低延时接口(LLI)(其也是MIPI标准)和超 高速芯片间接口(SSIC)(其是可以与M-PHY使用的USB-3协议)。

如图1总体所示,例如,UniPro互连装置(或总线或接口)10可以用于连 接复合设备或系统16(如,移动电话)内的多组(例如,多对或多重(高达128)) 装置(如芯片12和芯片14)。设备或芯片12和设备或芯片14可以包括通过互 连装置传输数据的各种类型芯片,如基带芯片、应用处理器、图形芯片、闪存 芯片等。使用UniPro开关(图1未示出),例如通过互连装置10或链路10从芯 片12传送至芯片14的数据包随后可以被路由至复合设备16内的其它目标芯片 或目标模块。在本示例性实施方式中,芯片12和芯片14可均包括UniPro+M-PHY 接口18和UniPro+M-PHY接口20(接口18和接口20也被称为“UniPort-M” 接口18、20),且可以使用双向双单工链路(即,在两个方向上具有一个或多个 单向PHY通道的链路)来实现互连装置10。UniPort-M接口18和UniPort-M 接口20允许每个方向上至多有四个通道,且单个方向上的各个通道具有相同的 电力性能和速度性能;然而,链路的两个方向上还可具有不同的性能。在该上 下文中,“通道”可以被视为在一个传输方向上工作的点对点的串行链路。

除了其它方面,关于在建立和配置链路10上所允许的灵活性,UniPort-M 接口18和UniPort-M接口20不同于现有的互连接口。例如,与要求链路的两个 方向完全对称(即链路的两个方向具有相同数量的通道)的其他类型的接口(诸 如PCI Express、RapidIO和HyperTransport)相反,Uniport-M接口18和Uniport-M 接口20支持不对称的链路。UniPort-M18接口和UniPort-M接口20还可允许 仅其部分通道被连接,且对通道如何连接没有限制,这是因为通道在链路启动 期间被重新编号,这将在下文描述。在该上下文中,术语“连接”在涉及通道 时表示物理连接。例如,假设芯片12为提供具有四个通道的UniPort-M接口18 的芯片,但芯片12用在系统16中,在系统16中,芯片12附接到具有更为有 限的连接性(例如,仅具有两个接收通道)的芯片14。因此,可用于芯片12的 两个通道特意地未进行物理连接。通道还可因芯片之间的物理错误(例如,在 电路板或柔性箔中的电路“断开”)而意外地未连接。UniPort-M接口18和 UniPort-M接口20还支持不对称地配置的链路(例如,链路的两个方向可以被 设置成不同的电力模式),这点与要求链路的两个方向处于相同的电力模式的其 它接口(诸如PCI Express、RapidIO和HyperTransport)相反。

在图2中,示出了UniPro协议栈200和PHY层202。PHY层202是确保 高速地(范围为千兆比特/秒/通道)传输数据位的混合信号模拟设计。PHY层的 示例包括在MIPI联盟中标准化的M-PHY和D-PHY。UniPro协议是因支持高数 据速率而通常在数字逻辑中实现(但是部分也可以在软件中实现)的协议的示 例。UniPro协议功能包括数据分包、检测和校正PHY传输错误、流控制、数据 优先化以及配置。

UniPro协议的链路级错误处理方案基于错误检测和数据帧重传,并且由两 个安全网组成。第一安全网快速并处理典型错误。第二安全网较慢且处理“极 端情况”(即,通常较少见的那些情况,由于发生故障时可能需要存在因素组合)。 第一UniPro协议安全网将循环冗余校验(CRC)错误检测码添加到每个发送帧 中。接收器重新计算CRC并对照在帧尾接收的CRC进行校验。当接收帧正确 时,接收器将其提交至接收缓存器并向发送器确认该帧(对于数据帧),或处理 该帧(对于控制帧)。如果接收器检测到错误,其使用否定确认控制(NAC)帧 将错误报告回发送器。

在UniPro特定的系统中,所有发送的数据帧被分配序列号,该序列号也在 数据帧中被发送且由接收器在进行确认时使用。UniPro序列号通常具有5位, 但位数可以根据需要调整。复位值为0,且用于第一数据帧的发送。序列号随着 发送/接收的每个帧而递增,在31后绕回(当五位用于序列号时)。在UniPro中, 在不收到确认的情况下,最多可以发送16个帧。帧确认是使用确认流控制(AFC) 控制帧来执行的。当对帧进行确认时,AFC帧中的序列号对该序列号所识别的 帧以前的(包括由该序列号所识别的帧)所有未被确认的数据帧进行确认。

发送器将发送的所有数据帧保存在重传缓存器中,直至被确认为止。当收 到NAC控制帧(报告错误)时,从最早的未被确认的帧开始,重传缓存器中的 所有数据帧被重新发送。

第二UniPro安全网用于一个或多个AFC帧或NAC帧丢失的情况。在这样 的情况下,包括在AFC帧中的确认和/或链路级流控制信用丢失,或NAC帧中 包含的错误指示丢失。为了防止这种通常稀少的错误,每个流量类别使用两个 计时器:一个用于数据,被称为重播计时器,一个用于信用,称为信用计时器。 当重播计时器期满时,该流量类别中的所有未被确认的帧被重新发送。当信用 计时器期满时,用于该流量类别的具有CReq位组的AFC帧被发送。在两种情 况下(即,“AFC”帧丢失或“NAC”帧丢失),UniPro1.10.00要求链路重新同 步化(重新同步化之后,发送具有RReq位的NAC帧),还要求传入链路被重新 同步化。

除了CRC错误外,作为第一安全网的一部分,接收器还检测许多其它错误, 例如:接收缓存器溢出(例如,由于TCx字段中的位传输错误);传入数据帧长 度大于最大帧尺寸DL_MTU(例如,由于传输错误将EOF控制符转变为有效数 据符);数据帧中的序列号错误;AFC帧后不是两个数据符;NAC帧后不是一 个数据符;EOF/EOF_PAD后不是一个数据符;当没有开始数据帧时接收到COF、 EOF或EOF_PAD控制符;当同一流量类别的数据帧已经在进行并且该数据帧 当前没有被抢占(在被AFC和/或NAC抢占期间,SOF的接收可能表明重新发 送的开始,因此不被认为是错误)时接收到SOF符;当流量类别1(TC1)数据 帧已经进行(TCO不能抢占TC1)时接收到流量类别0(TCO)的SOF符;在 同一流量类别的数据帧期间,当该数据帧没有被抢占时,接收到COF符;在接 收到不同流量类别(TC)数据帧后接收到COF符;当数据帧被抢占并且抢占帧 已经结束时接收到EOF、EOF_PAD或数据符(对于被抢占帧,接着应该是COF 符而不是EOF符);对于定义的字段,接收到具有无效值的控制符,例如未定义 的CTRL_ID或TC;和从PHY适配器接收到错误指示。

PHY适配器在以下情况下指示错误:接收到坏PHY符;接收到纠正的异常 PHY符号,但其没有映射到有效的UniPro符号;在期待数据PHY符号时,在 异常PHY符号后立即接收到另一纠正的异常PHY符号;以及在ESC_PA后, 接收到有效的数据PHY符号的错误值。

当检测到上述任一错误时,发送NAC控制帧,此外,NAC控制帧的前面 可以是一对AFC控制帧以防止不必要的重新发送。

图3示出示例性的UniPro系统中的错误信令。图3示出示意性的消息序列 图以说明上述的UniPro错误处理机制的第一安全网和第二安全网。出于简化原 因,假设单一的流量类别。首先讨论第一安全网的实施。其中,在正确地接收 到数据帧#1和数据帧#2后,节点B(例如,装置14)通过将AFC帧发送到节 点A(例如,装置12)来报告其正确性,其中,AFC帧载有上一个正确地接收 到的帧(在该例中为数据帧#2)的序列号。当节点A接收到AFC#2帧时,其从 重传缓存器移除数据帧#2以前的且包括数据帧#2的所有数据帧。节点A继续发 送数据帧#3和数据帧#4;然而,在该示例中,由于数据帧#4的传输中发生错误, 只有数据帧#3被正确地接收。在节点B处检测到该错误,节点B首先向节点A 发送AFC帧#3以确认数据帧#3的正确接收,随后发送报告错误的NAC帧。在 接收到NAC帧时,节点A从最早的未被确认的帧(在该例中,为数据帧#4)开 始重新传送所有未被确认的帧。因此,如上所述,在数据帧的接收中发生错误 并且当确定错误时发送NAC帧时,实施第一安全网。当成功接收到NAC帧时, 出错的数据帧被重新发送。

现在将讨论第二完全网。在接收到来自节点B的第一NAC帧后,节点A 重新发送数据帧#4,并在其之后发送数据帧#5。数据帧#4被正确地接收,但是 节点B在数据帧#5中检测到错误。随后,与之前的情况一样,发送AFC帧#4 报告正确接收数据帧#4,且随后发送NAC帧以报告错误。然而,在该情况下, NAC帧遇到传输错误。通过在接收到的NAC的CRC中检测到错误,节点A意 识到发生了错误。随后,节点A通过发送其自己的NAC帧(A)来报告从接收 器接收的NAC帧中出现错误。然而,节点A没有立即意识到其应重新发送数据 帧#5。最终,节点A的重播计时器期满(如图3的时计所示),节点A重新发 送数据帧#5。因此,说明了上文关于UniPro接口系统讨论的第二安全网的实施。

如上所述,这两个安全网在UniPro高速串行接口通信系统中提供重要功能 (或“协议行动”)。第一安全网处理数据丢失和/或损坏的“典型”错误;这些 错误通常被称为“轻级”错误情况。根据示例性的实施方式,第一安全网的实 施或使用通常不需要使用逗号码匹配。可替选地,第二安全网处理非典型的、 与结果较相关类型的错误(被称为“重级”错误情况)。“重级”错误情况可包 括位同步丢失和/或字节同步丢失。因此,当第二错误情况发生时,根据示例性 实施方式的系统和方法可以使用逗号码匹配来最大可能程度地从同步丢失中恢 复过来。

结合上下文,现将描述根据示例性实施方式的与这样的数据流相关联的字 节同步。图4示出示例性简化UniPro L1.5/L2收发器架构(收发器)400。收发 器400包括UniPro L1.5架构(L1.5子组件)409和UniPro L2架构(L2子组件) 418。收发器400支持1-通道PHY发送器402(由从发送器块402发出的单一箭 头指示)和由两个M-RX接收器(PHY接收器)404a、404b组成的2-通道PHY 接收器。所示的PHY接收器404a和PHY接收器404b均包括字节同步子块406, 该字节同步子块扫描逗号码,以实现字节同步。在发送编码符号期间,该字节 同步子块总是开启的。

如果多个通道存在于收发器400中,则Rx多通道子块408处理符号剥离 (stripping),该Rx多通道子块位于L1.5子组件409中。L1.5子组件409还包 括用于将UniPro符号映射到PHY符号的L1.5符号编码器410和L1.5符号解码 器412、用来处理PHY配置的L1.5配置块(配置子块)414和处理电力分配的 电力/速度管理器416。

根据示例性实施方式,L2子组件418包括用以将传入符号分配至其相应解 帧器的L2符号调度器420。所述相应解帧器之一是NAC解帧器422,其解码 NAC帧。其它解帧器(用于AFC帧和数据帧,未示出)包括在流量类别0(TC0) 和流量类别1(TC1)子块(TC子块)425中,该TC子块负责流量类别(TC) 的具体动作。本领域技术人员可以理解,图4和图5的TC块包括一个或多个数 据缓存器。Tx缓存器用于存储被远程Rx确认之前的数据。一旦帧被确认,其 相应数据被从Tx缓存器中移除。在重新发送的情况下,从Tx缓存器中取回数 据。Rx缓存器用于流控制。Tx缓存器通过“信用”追踪远程Rx的缓存器空间, 其中每个信用对应于32字节的数据。当Tx缓存器发送数据时,Rx信用被“消 耗”,(即,递减)。如果Tx缓存器用完信用,其无法再发送数据;当远程Rx腾 空空间,其向Tx缓存器发送新的信用,随后新的信用能够使Tx缓存器发送更 多数据。因此,TC块负责数据缓存、数据和AFC帧打包/解包(包括计算CRC)、 帧确认、和重新发送、信用管理和使用/传递数据至L3。在正确接收到NAC帧 的情况下,NAC解帧器422触发重播管理器424,否则,在未正确地接收到NAC 帧的情况下,NAC解帧器422通知错误管理器426。错误管理器426还捕获任 何可由TC子块425触发的错误指示,或可由L1.5子组件409触发的错误,为 了清晰和简洁的双重目的未被示出。L1.5子组件409还包括NAC成帧器428和 L2判优器430。

如果已检测到错误并将该错误报告给错误管理器426,错误管理器426通过 NAC成帧器428触发NAC帧发送。L2判优器430在NAC成帧器428发出的 NAC帧发送请求和TC子块425发出的各种帧发送请求之间进行判优。

如上所述,惯用的逗号编码字节同步技术具有一定缺点,特别是包括以若 干Gbps速率进行位模式匹配,其中此位模式匹配使用大量电力。图4所示的字 节同步块406a和字节同步块406b在PHY接收器404a和PHY接收器404b中进 行逗号码匹配。根据示例性的实施方式,由字节同步块406a和字节同步块406b 进行的功耗优化可以通过在特定时间进行逗号码匹配来实现,所述特定时间例 如为,仅当串行通信链路的操作有重大转变(即操作转变)时。例如,操作的 重大转变可以包括:在链路启动期间(即,在开机启动期间,或重启情况期间) 链路的操作、重新配置(即,当对链路的速度和/或功耗方面重新配置时)和错 误恢复(即,在生成NAC帧的时间与检测到重新发送的时间之间)。

此外,由字节同步块404a和字节同步块404b进行的功耗优化还可以通过在 一定时间段期间进行逗号码匹配来实现。定义两种错误情况来帮助理解有关何 时进行逗号码匹配或不进行逗号码匹配的情况。

第一错误情况定义为:第一安全网错误发生,但不包括突发错误。根据第 一示例性实施方式,突发错误可以定义为:在PHY符号传输中出现一定数量的 错误(例如,已有5个PHY符号未被正确地接收到)。根据另一个示例性实施 方式,突发错误可以定义为:在PHY符号传输中出现一定数量的顺序错误。根 据另一个示例性实施方式,突发错误可以定义为:在第一符号错误后,接收到 的PHY符号中有一定数量的错误(不管在第一PHY符号错误后是否正确地接 收到PHY符号)。因此,除非错误是由突发错误引起的,否则在第一错误情况 期间,逗号码匹配保持在“关闭”状态。在错误是由突发错误引起的情况下, 将逗号码匹配开启。第二错误情况定义为:第二安全网错误发生。在这种情况 下,没有例外,且逗号码匹配开启,直到导致第二错误情况(即,第二安全网) 的状况停止存在或已经被校正。

如上所述,PHY符号传输错误的突发可能导致字节同步丢失。从字节同步 丢失中进行恢复需要逗号码匹配。因此,当突发错误发生时,根据示例性实施 方式的系统和方法将自动开启逗号码匹配。虽然这确实增大功率的整体平均使 用,但是比起逗号码匹配一直开启时所消耗的功率,其仍是小得多的。因此, 对逗号码匹配的恰当使用将功耗管理至更能被接受和更经济的水平,并降低平 均功耗,从而延长电池供电设备的使用时间,并能够减少实际成本。

根据另一示例性实施方式,如果M-RX404a和M-RX404b使用过采样架构 恢复时钟,则逗号码匹配还可以在过采样阶段期间被开启,这可以是独立的条 件(即,仅在过采样发生时执行逗号码匹配),或者,其可以与上述其它条件中 的一些、任一或全部条件组合(例如,当过采样发生且当正传送数据时开启逗 号码匹配,或当过采样发生且过去大段时间中发生错误时开启逗号码匹配)。

现转向图5。图5示出根据示例性实施方式的与UniPro设备相关联的由 L1.5/L2架构组成的示例性收发器500。图5所示的元件具有与上面图4中实现 前面描述的相同或相似功能的元件相同的附图标记。

如上所述,根据本发明的示例性实施方式,有三种典型情况可有利地使用 逗号码匹配。其中之一是当同步丢失发生并且需要发送NAC帧时(如图3所示, 当来自节点B的NAC帧没有被正确地接收时,节点A在“超时”时间段期间 发送NAC帧)。如图5所示,收发器500具有增加的字节同步控制子块502,其 控制PHY接收器404a、404b中的字节同步子块406a和字节同步子块406b。根 据示例性的实施方式,当错误管理器426请求NAC帧和/或L2择优器430允许 发送NAC帧,并发送NAC帧时,可以针对所有活动的Rx通道启动字节同步子 块406。从那时起,期待重新发送(由于错误管理器426意识到该错误,并发出 发送NAC帧的请求)。

因此,利用在所有通道上发送的字节同步序列启动重新发送(在 UniPro/M-PHY中)。在示例性实施方式中,该序列由两个转义PHY符号组成: 标记0(K.28.5),其也具有逗号性质并被物理接收器使用来实现字节同步;随 后是标记1(K.28.3),其是正常PHY转义符号。根据示例性的实施方式,标记 0符号可以是逗号码符号,标记1符号可以是非逗号K码符号、逗号K码符号 和数据码符号中的至少一种。根据示例性的实施方式,在发送标记0符号和标 记1符号前,字节同步子块406a和字节同步子块406b开启(通过字节同步控 制子块502)以使逗号码匹配可以发生。如上所述,当错误管理器426请求NAC 帧并且L2判优器430准许,并向字节同步控制子块502发送适当信号,随后该 适当信号启动字节同步子块406a和字节同步子块406b时,启动字节同步子块 406a和字节同步子块406b。根据其它示例性实施方式,当再次在所有通道都观 察到字节同步时,字节同步子块406a和字节同步子块406b被再次关闭。

用字节同步子块406a和字节同步子块406b进行逗号码匹配的另外两个重要 时间包括链路启动和链路配置。在两种情况下,通过功率/速度管理器416重新 配置PHY接收器404。因此,功率/速度管理器416也发送适当信号开启逗号码 匹配。在重新配置活动的Rx通道时,功率/速度管理器416还通知字节-同步控 制子块502,其针对所有活动通道开启字节同步子块406。在链路配置生效后, 链路经过“准备”和可能地“位同步”阶段,其后,链路发送字节同步序列。 根据示例性实施方式,字节同步子块406在接收器在所有M-RX404a和M-RX 404b上接收到标记0时关闭。

因此,示例性实施方式通过使用用于字节同步的逗号码匹配来优化收发器 500的功耗,所述逗号码匹配是通过仅在需要时开启字节同步子块406来实现的。 这样的时间包括:当链路的操作转变时、在数据传输中检测到错误时和期间也 需要字节同步的初始化或重新初始化链路时(例如,在链路启动期间、重新配 置期间、和/或当从实际错误中恢复时)。尽管使用示例性实施方式有时可导致收 发器500在少见的传输错误情况期间错过重新获得字节同步,但本领域技术人 员可以理解,在那些情况下,由于一些数据已经被破坏且通常需要被重新发送, 重新获得当前的字节同步用处不大。因此,根据示例性实施方式,设备可以在 大多数时间选择保持字节同步关闭,进而节省电力,并且仅仅在需要时开启。 根据示例性的实施方式,由于字节同步在需要时开启(例如,在上面讨论的那 些时段),链路仍然稳健。根据示例性的实施方式,如果检测到字节同步错误, 这导致NAC帧被触发,从而也开启字节同步。因此字节同步总能恢复。

根据一个示例性的实施方式,一种用于在互连装置上进行字节同步的方法 可包括如下步骤:在至少一个预先确定的接收阶段期间开启字节同步功能并在 所述至少一个预先确定的接收阶段之后关闭所述字节同步功能。例如,所述预 先确定的接收阶段可以是链路启动、重新配置和错误恢复中的一种、两种或全 部。根据示例性的实施方式,字节同步包括逗号码匹配。

图6是示出根据第一示例性实施方式的在高速数字串行通信链路上使功耗 最小化的方法的流程图。图6所示的方法600从步骤602开始,其中,开启用 于串行通信链路的逗号码匹配,以获得字节同步(步骤S604)。根据示例性实施 方式,在步骤606中,逗号码匹配被禁用(“关闭”状态)。根据示例性实施方 式,由于不再发生消耗大量电功率的逗号码匹配,因此使用高速数字串行通信 链路的设备的功耗降低。在步骤608中,监控串行通信链路,并在判断步骤610 中,确定串行通信链路是否发生上文详细讨论的操作变化。如果串行通信链路 没发生明显操作变化(自判断步骤610的“否”路径),方法600退回步骤608, 且继续监控串行通信链路,然而,如果串行通信链路发生操作变化(自判断步 骤610的“是”路径),方法600则前进至步骤612。在步骤612,方法600将 逗号码匹配从“关闭状态”转变至“开启状态”。当发生逗号码匹配时,方法600 前进至判断步骤614,且判断串行通信链路的操作变化是否已经中止:如果串行 通信链路的操作变化继续(判断步骤614的“否”路径),则在步骤616,逗号 码匹配保持在“开启状态”,并且根据判断步骤614持续监控串行通信链路。然 而,如果串行通信链路的操作变化已经中止(判断步骤614的“是”路径),则 方法600前进至步骤606,其中,将逗号码匹配关闭,且平均功耗再次降低。

图7是示出根据第二示例性实施方式的在高速数字串行通信链路上使功耗 最小化的方法的流程图。图7所示的方法700从步骤702开始,其中,禁用用 于串行通信链路的逗号码匹配(即,“关闭状态”;如上所述,为了满足设备在 初始时获得字节同步,在初始时必须开启逗号码匹配,然而,为了清晰和简明 的双重目的,图7中省略这两个步骤)。根据示例性实施方式,由于现在禁用消 耗大量电功率的逗号码匹配,使用高速数字串行通信链路的设备的功耗降低。 在步骤704,监控串行通信链路。在监控步骤704,仔细记录数据错误。进行监 控是为了判断第一错误情况还是第二错误情况存在。

在判断步骤706,方法700确定串行通信链路是否发生重大操作变化。如果 串行通信链路发生重大操作变化,方法700前进至步骤708(自判断步骤706的 “是”路径),并且确定重大变化的原因。在判断步骤708,确定串行通信链路 的重大操作变化是否是由于突发错误导致。如果重大变化是由于突发错误导致, 则在步骤712(自判断步骤708的“是”路径)中,方法700将逗号码匹配从“关 闭状态”转变至“开启状态”。在判断步骤714,方法700继续监控串行通信链 路的重大操作变化,如果变化中止(自判断步骤714的“是”路径),方法700 转变至步骤702,并禁用逗号码匹配。否则,如果重大操作变化继续存在(自判 断步骤714的“否”路径),则在步骤716,方法700保持逗号码匹配,并继续 监控串行通信链路(判断步骤714)。

然而,如果重大变化不是由于突发错误导致(自判断步骤708的“否”路 径),方法700前进至判断步骤710,并确定该错误是否由于上文详细讨论的第 一安全网情况导致。如果重大变化是由于第一安全网情况导致(判断步骤710 中的“是”路径),方法700转变至步骤704,并且继续监控串行通信链路。判 断步骤710的“是”路径对应于不包括突发错误的其中第一错误情况发生的情 形。不包括突发错误的第一错误情况被认为是允许的。然而,如果串行通信链 路的操作的重大变化不是由于第一安全情况导致(判断步骤710的“否”路径), 方法700转变至步骤712,并且将逗号码匹配开启(“开启”状态)。根据其它示 例性实施方式,逗号码匹配可以在串行链路发生的不是突发错误和不是第一安 全网情况的重大操作变化时开启,即,重大变化与第二安全网情况(如上所述 的“第二UniPro安全网”)或另一情况(如电源模式转变或链路初始化)有关。 然后,如上所述,重复步骤714和步骤716,以确定错误情况的中止时间,从而 允许将逗号码匹配关闭。虽然在逗号码匹配阶段,使用高速串行通信链路的设 备的功耗增加,但这样的增加尤其与特定情况相结合,以使进行逗号码匹配的 电功率最小化。根据本发明的示例性实施方式,平均功耗降低。

根据示例性实施方式,方法600和方法700可以在专用的处理器上(图4 或图5中未示出)或通过图5所示的各种功能块(如,NAC解帧器422、错误 管理器426和/或NAC成帧器428)来实施。本领域技术人员可以理解,这样的 功能可以设计在各种类型的电路中,包括但不局限于现场可编程门阵列结构 (FPGA)、特殊应用集成电路(ASIC)、基于微处理器的系统以及其它类型。所 述各种类型物理电路实施对本发明的理解没有实质性的帮助,因此为了简洁和 清楚的双重目而省略。然而,本领域的技术人员已知的本文所述的系统和方法 可以如上所述进行实施,且还可以包括可编程设备。

这样的可编程设备和/或上述电路的其它类型可以包括处理单元、系统存储 器和连接包括从系统存储器到处理单元的各种系统组件的系统总线。系统总线 可以是几种类型的总线结构中的任一种,包括使用各种总线结构中任一种的存 储器总线或存储控制器、外围设备总线和本地总线。此外,各种类型的计算机 可读媒介可以用于存储可编程指令。计算机可读媒介可以是可以由处理单元访 问的任何可用媒介。以示例而非限制方式,计算机可读媒介可以包括计算机存 储媒介和通信媒介。计算机存储媒介包括以任何方法或技术实施的用于存储信 息(例如,计算机可读指令、数据结构、程序模块或其它数据)的易失的和非 易失的以及可移动的和非可移动的媒介。计算机存储媒介包括但不局限于RAM、 ROM、EEPROM、闪存或其它存储技术、CDROM、数字多功能光盘(DVD) 或其它光盘存储、盒式磁带、磁带、磁盘存储或其它磁存储设备或任何其它可 用于存储所需信息并可由处理单元访问的媒介。通信媒介可以实施计算机可读 指令、数据结构、程序模块或调制数据信号(如,载波或其它传输机制)中的 其它数据,且可以包括任何适当的信息传递媒介。

系统存储器可以包括计算机易失性和/或非易失性存储器形式的存储媒介, 例如,只读存储器(ROM)和/或随机存取存储器(RAM)。基本输入/输出系统 (BIOS)可以存储在存储器中,该BIOS包括可以协助在连接于处理器或在处 理器之间的元件之间传递信息的基本事务(例如在启动时)。存储器还可以包括 由处理单元立即访问和/或正在操作的数据和/或程序模块。以非限定性的示例方 式,存储器还可以包括操作系统、应用程序、其它程序模块和程序数据。

处理器还可以包括其它可移动/非可移动和易失/非易失的计算机存储媒介。 例如,处理器可以访问从非可移动的,非易失磁媒介读取的或写入非可移动的、 非易失磁媒介的硬盘驱动;从可移动的、非易失的磁盘读取的或写入可移动的、 非易失的磁盘的磁盘驱动和/或从可移动的、非易失光盘读取的或写入可移动的、 非易失光盘的光盘驱动(如,CD-ROM或其它光学媒介)。可被用于示例性操作 环境的其它可移动/非可移动,易失/非易失的计算机存储媒介包括但不局限于磁 带盒、闪存卡、数字多功能磁盘、数字视频磁带、固态RAM、固态ROM等。 可以通过非可移动存储接口(如接口)将硬盘驱动连接至系统总线以及可以通 过可移动存储接口(如接口)将磁盘驱动或光盘驱动连接至系统总线。

根据错误的类型、其发生时间和串行通信链路内情况启动和关闭逗号码匹 配可以节省功率。通过串行通信链路减少功耗来降低成本和散热,因此增加了 组件故障间的平均时间,从而增加了组件的操作效率和寿命。

本发明也可以以计算机可读媒介上的计算机可读码形式实现。计算机可读 媒介包括计算机可读记录媒介和计算机可读传输媒介。计算机可读记录媒介是 任何数据存储设备,该数据存储设备可以存储其后可以被计算机系统读取的数 据。计算机可读记录媒介的示例包括只读存储器(ROM)、随机存取存储器 (RAM)、CD-ROM和通用光学数据存储设备、磁带、闪存和软盘。计算机可 读记录媒介还可以分布在连接到计算机系统的网络上,以使计算机可读码以分 布式的方式存储和执行。计算机可读传输媒介可以发送载波或信号(例如,互 联网中的有线或无线数据传输)。此外,当在适当的电子硬件实施时,本领域技 术人员可以很容易理解实现或支持运用所附权利要求中的特定元件的功能程 序、代码和代码段。

上述示例性实施方式旨在示出所有方面,而非限制本发明。因此,本发明 可以具有本领域技术人员可以从本文所描述中推导出的详细实施的各种变型。 应该理解,除非明确说明,本申请的说明书中使用的元件、动作或指令不应解 释为对本发明是关键或必不可少的。此外,本文所用的冠词“一”旨在包括一 个或多个项目。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号