升级版码字锁定状态机的制作方法

文档序号:7732843阅读:228来源:国知局
专利名称:升级版码字锁定状态机的制作方法
升级版码字锁定状态机相关申请的交叉引用本申请请求欧鹏等人于2008年4月30日提交的申请号为61/049,177的美国临 时专利申请及于2009年2月12日提交的申请号为12/370,018的美国专利申请的优先权, 两申请的题名均为“升级版码字锁定状态机”,且两申请的内容以引用方式并入本文中。
背景技术
无源光网络((Passive Optical Network,PON))是一种可提供长距离网络接入的 系统。(PON)是一种点对多点的网络,由一个位于交换中心的光线路终端((Optical Line Terminal, OLT))、一个光分配网络((Optical Distribution Network, ODN)),以及位于用 户驻地的多个光网络单元((Optical Network Units,ONUs))组成。在某些(PON)系统,如 吉比特无源光((Gigabit P0N,GP0N))系统中,下行数据以每秒2. 5吉比特(Gigabits per second, Gbps)的速度传播,而上行数据则以每秒1. 25Gbps的速度传播。然而,(PON)系统 的带宽容量有望随着服务需求的增加而增加。为满足日益增长的服务需求,需要对一些新 兴的(PON)系统,如下一代接取网路((Next Generation Access, NGA))系统进行重新配 置,从而以更高的带宽(例如IOGbps)更可靠高效地传输数据帧。完善新兴(PON)系统的错误检测和纠错方案可提高可靠性和效率,这一点对于高 带宽系统尤为重要。此类方案包括前向纠错((Forward Error Correction,FEC))方案。该 方案可提高传输速率,加大OLT与ONU的距离,提高PON构架(如PON树)分支的分流比。

发明内容
在一个实施例中,公开了一种设备,该设备包括耦合到光接收机的(FEC)处理器。 该(FEC)处理器用于将多个接收的块与包含多个奇偶校验块的多个FEC码字块比较,如果 在接收的块中检测到未对齐的块,将剩余的接收的块中至少部分与奇偶校验块比较。在另一个实施例中,公开一种在设备中执行的方法,包括接收多个块所接收的块 的数量等于FEC码字中块的数量,选定接收的块中的一块,确定选定的块是否与FEC码字对 齐,如果选定的块与FEC码字没有对齐,则确定其余块是否与FEC码字一致。在其他实施例中,公开内容包括在FEC码字锁定状态机中使用检验多个块是否出 现在FEC码字末端的状态来获取码字锁定的方法。下面,我们将结合附图和说明详细描述上述以及其他特征,以便更清楚地了解。


为了更全面地了解此公开内容,下列简要说明中结合了附图和详细描述以供参 考,类似参考数字表示类似部分。图1所示为PON实施例的原理图。图2所示为FEC码字的实施例。图3所示为FEC码字锁定状态机方法的实施例。
图4所示为FEC码字锁定状态机方法的另一个实施例。图5所示为FEC码字锁定状态机在各种误码率(BER)下的处理时间表。图6所示为通用计算机系统的实施例原理图。
具体实施例方式首先应该了解的是,虽然下面提供了一个或多个实施例的示例实施方法,但公开 的系统和/或方法也可以使用现已知晓或存在的任何技术来执行。公开内容不应局限于下 面所述的示例实施方法、附图和技术,包括本文所述的典型设计和实施方法,可在所附权利 要求书及其同等条件的全部范围内进行修改。依据(FEC)方案,可以使用FEC帧或码字来传送数据,FEC帧或码字中可包含多个 数据块和奇偶校验块。这些数据块和奇偶校验块可包含多个同步头比特(bits),这些同步 头比特可用于区分数据块和奇偶校验块。使用“状态机”模型,每次接收一定数量的块,这 些块能与FEC码字一致,则能被对准或锁定在诸如缓冲器、成帧器或存储器位置。逐个检测 FEC码字的数据块和奇偶校验块,并检验这些块的序列是否与FEC码字的预期的块序列一 致,如果检验这些块的序列与FEC码字的预期的块序列一致,可将FEC码字锁定。如果检测 出块乱序,则从该序列的第二个块重新开始检测并锁定正确的块序列。已接收的FEC码字 的误比特率(Bit Error Rate, BER)越高,使用状态机模型完成锁定所消耗的时间越长,这 样通信的效率会随着传输速率的提高而降低。本实施例公开一种关于改进码字锁定状态机的系统和方法,这种系统完成码字锁 定所需的时间少于在先的任何系统。这种方法先逐个检测已接收的块,并检验已接收的块 的序列。如果检测到块乱序,码字锁定状态机将检验其余块是否代表FEC码字的奇偶校验 块。如果检验到其余块为奇偶校验块,则在下一个FEC码字的起始处重新执行此方法,之后 按更高的确定性进行锁定。另外,如果其余块不代表奇偶校验块,则可以重新执行该流程, 将序列移动一个块。在移动过的块上重新启动该流程前,检验其余块是否是奇偶校验块,可 减少码字锁定状态机的预期处理时间。图1所示为无源光网络PON 100的一个实施例。PON 100包含一个光线路终 端OLT 110,多个光网络单元ONU 120和一个可以耦合到OLT 110和0NU120的光分配网 络ODN 130。PON 100可以是这样一种通信网络,该通信网不需要任何有源组件(active components)来分发OLT 110和ONU 120之间的数据。相反,PON 100可以在ODN 130中使用 无源光学组件(passive optical components),从而分发OLT 110和ONU 120之间的数据。 PON 100还可以是NGA系统,如十吉比特每秒(IOGbps) GPON(或XGP0N),其中下行带宽可能 约为lOGbps,上行带宽至少约为2. 5Gbps。其他适用的PON 100包括ITU-TG. 983标准定义 的异步传输模式无源光网络(asynchronous transfer mode Ρ0Ν,ΑΡ0Ν)和宽频无源光网络 (broadband PON, ΒΡ0Ν),ITU-T G. 984 标准定义的 GP0N,按 IEEE 802. 3ah 标准定义的以太 网无源光网络(Ethernet Ρ0Ν,ΕΡ0Ν),以及波分复用(Wavelength Division Multiplexed, WDM)无源光网络(WPON),本申请案均以引用方式并入本文中。在一个实施例中,OLT 110可以是配置为与ONU 120及另一网络(未显示)进行 通信的任何设备。特别是,OLT 110可以作为其他网络与ONU 120之间的中介。例如,OLT 110可以将从该另一网络接收到的数据转发至ONU 120,然后再从ONU 120接收数据并转发到其他网络。虽然OLT 110的特定配置会根据PON 100类型的不同而有所变化,但在某个 实施例中,OLT 110可包括发射机和接收机。当其他网络使用的网络协议(如以太网或同 步光网络/同步数字体系(S0NET/SDH))与PON 100使用的PON协议不同时,OLT 110可包 含转换器,该转换器将网络协议转换为PON协议。OLT 110的转换器还可以将PON协议转换 为网络协议。OLT 110通常位于中央位置(如交换中心),但也可以位于其他位置。在一个实施例中,ONU 120可以是配置为与OLT 110以及客户或用户(未显示)进 行通信的任何设备。特别是,ONU可以作为OLT 110与客户之间的中介。例如,ONU 120可 将从OLT 110接收的数据转发给客户,也可将从客户处接收的数据转发给OLT 110。虽然 ONU 120的特定配置会根据PON 110类型的不同而有所差别,但在一个实施例中,ONU 120 可包含光发射机和光接收机,该光发射机用于将光信号发送给OLT 110发射机,该光接收 机用于接收来自OLT 110的光信号接收机。此外,ONU 120还包含转换器以及第二发射机 和/或接收机,该转换器可为客户将光信号转换为电信号(如以太网协议中的信号),发射 机接收机该第二发射机和/或接收机可发送和/或接收到和/或来自客户设备的电信号。 在某些实施例中,ONU 120和光网络终端(ONT)非常类似,因此,本发明中所使用的术语可 互换。ONU通常位于分布的位置(如客户驻地),也可以位于其他位置。在一个实施例中,ODN 130可为一种数据分发系统,该数据分发系统包括光纤光 缆、耦合器、分离器、分配器和/或其他设备。实施例中的光纤光缆、耦合器、分离器、分配器 和/或其他设备可以是无源光学组件。特别的,光纤光缆、耦合器、分离器、分配器和/或 其他设备可以是不需要任何电力即可分发OLT 110和ONU 120之间的数据信号的组件。或 者,ODN 130可以包含一个或多个处理设备,如光放大器。在如图1所示的分支配置中,ODN 130通常会从OLT 110延伸到ONU 120,或者在任何其他点对多点配置中进行配置。在一个实施例中,OLT 110、ONU 120或二者均可以配置为实施FEC方案以控制或 减少传输错误。作为FEC方案的一部分,数据在传输前可以与含有冗余数据的错误修正码 结合。例如,可以将数据和错误修正码封装或成帧到FEC码字中,由另一个PON组件来接收 和解码。在一些实施例中,FEC码字可能包含错误修正码,并可用数据进行传输,无需修改 数据比特。如果接收到错误修正码,至少可以检测和修正已传输的数据中的部分错误(如 误码),无需传输其他数据。除传输数据外,传输错误修正码也会消耗至少一部分信道带宽, 从而导致数据可用的带宽减少。但是,FEC方案可用于错误检测,取代专用的反向信道,降 低错误检测方案的复杂性和/或成本。FEC方案可能包含一个状态机模型,可用于锁定FEC码字,例如,测定代表FEC码字 的多个接收的块是否适当对齐或是否处于正确序列中。要准确获取数据和错误修正码,必 须锁定FEC码字或检验其中块的对齐情况。例如,0LT110、ONU 120或二者均可能包含FEC 处理器,该处理器可能是硬件(如电路)或使用状态机模型的软件。FEC处理器可以耦合 到OLT 110或ONU 120中相应的接收机和/或解帧器,并可以进行模数转换、调制和解调、 线路编码和解码,或所述各项的组合。含有接收的块的FEC码字还可以锁定在存储器位置 或耦合到FEC处理器和接收机的缓冲区。图2所示为FEC码字200的实施例,可以使用OLT 110或ONU 120的FEC处理来 进行锁定。FEC码字200可能包含固定数量的数据包或块(如31个块),其中包括多个数 据块210和多个奇偶校验块220。例如,FEC码字可包含预定数量的数据块210,数据块210的数量约等于27个,以及其余两的奇偶校验快220,奇偶校验块220的数量约等于4。每个 数据块210和每个奇偶校验块220均可包含多个比特,约等于66比特。例如,每个数据块 210可包含固定数量的同步头比特212,比特位数约为2,剩余数量的载荷比特214,比特位 数约为64。同样,每个奇偶校验块220可能包含比特位数为2的同步头比特和比特位数为 64的负荷比特224。数据块210的同步头比特212可能有别于奇偶校验块220的同步头比 特222,因此可以使用同步头比特来区分这两种不同类型的块。在FEC码字200的一个实施例中,数据块210的同步头比特212可以设置为(1,
0)或(0,1)。因此,对于数据块210而言,每个数据块210的同步头比特212的比特值之和 可以等于1。此外,奇偶校验块220的同步头比特222可以按固定序列设置,如(0,0), (1,
1)、(1,1)和(0,0),因此这些比特对的比特值之和可形成一个固定序列,如0,2,2和0。或 者,可以将奇偶校验块220的同步头比特222按另一个固定序列排列,从而形成不同序列的 比特对的比特值之和。典型的,同步头比特222的比特值之和为0或2。因此,可以使用同 步头比特212和同步头比特222的比特值之和来确定相应的块是数据块210还是奇偶校验 块220。还可以使用与4个连续块对应的4对同步头比特222的这些比特值之和来确定这 个4个块是否是FEC码字200的奇偶校验块220。依据状态机模型,检查FEC码字200中相同数量(例如,31个块)的接收的块的对 齐情况。这样,可以获得接收的块序列中的每一个块的同步头比特212或222的比特值之 和。运用同步头比特的比特值之和可以将相应被检测的块与FEC码字200中处于相同位置 或序列的预期块进行比较。如果被检测的块的同步头比特的比特值之和不等于预期块的同 步头比特的比特值之和,则被检测的块类型不属于预期块类型。因此,被检测的块可能没有 适当对齐,整个序列的块可能被多移动或滑动了 一块或一比特。例如,序列的第一块可能被 丢弃,序列中其余每块的位置都提前了一块或一比特,而序列末端则包含额外一个已接收 的块或比特。之后,重新启动流程。此流程不检测之前已检查过的序列块,而是检测移动过 的块的对齐情况。或者,如果被检测的块的同步头比特的比特值之和等于FEC码字200的预期块的 同步头比特的比特值之和,则被检测的块适当对齐,可以检测序列中的下一块,将其与FEC 码字200的下一预期块进行比较。同样的,序列其余块的检测和比较流程可一直持续进行, 直到测定所有块均适当对齐,例如,同步头比特的预期比特值之和无错误或无偏差。在这种 情况下,接收的块可以代表FEC码字,之后会被锁定。或者,对第二序列接收的块重复此流 程,直到第二序列中的所有块都测定为适当对齐。因此,几乎可以同时锁定含有第一序列被 检测的块的第一 FEC码字以及含有第二序列被检测的块的第二 FEC码字。相对于检测和对 齐单个序列而言,检测和对齐两个连续序列块时基本不太可能出现错误,因此检测和比较 第一序列后再检测和比较第二序列可提高锁定FEC码字的可靠性。上述状态机模型在锁定FEC码字之前需要对接收块进行广泛搜索和检查,这会耽 误相当长的时间。例如,FEC码字可能包含31个块,每个块为66比特,则共有2,046比特 的位置需要进行处理。这种情况下,对齐一个块所需的平均块时间约为6纳秒。如果接收 的块的序列没有对齐,则在检测到未对齐的块之前平均要检查块的两个完整序列,因而状 态机模型所消耗的平均时间约为两倍块时间。此外,如果序列中块已对齐但码字未对齐,则 状态机模型所消耗的平均时间约为13倍块时间。如果接收的块中无错误,则状态机模型所消耗的平均时间约为14纳秒。但如果块中出现误码,则这个时间会相应增加。图3所示为FEC码字锁定状态机方法300的一个实施例,可减少预期的改进的FEC 码字锁定所需的时间。FEC码字锁定状态机方法300可能包含为提高通信效率而对上述状 态机所作的更改,这些更改对于较高的传输速率(如IOGbps)尤为重要。特别的,FEC码字 锁定状态机方法300除包含可减少预期检查块数量从而减少预期处理时间的步骤外,还可 能包含上述状态机的步骤。例如,在块310中,FEC码字锁定状态机方法300可以在接收机缓冲区接收数量与 FEC码字块的预期数量相等的块。在块320中,FEC码字锁定状态机方法300可以在接收的 块序列中检测第一块和下一块。例如,计算下一块的同步头比特的比特值之和,确定这个块 是数据块还是奇偶校验块。例如,如果比特值之和等于1,则假定这个块为数据块。或者,如 果比特值之和等于0或2,则假定这个块是奇偶校验块。在块330中,FEC码字锁定状态机方法300可以检验被检测的块是否是FEC码字 块序列中的预期块。例如,可以将这个块的类型(数据块或奇偶校验块)与FEC码字中相 同位置的预期块的类型相比。此外,还可以在被检测的奇偶校验块中检查头比特的比特值 之和,检验被检测的奇偶校验块在奇偶校验块序列中是否正确对齐。例如,可以将被检测的 奇偶校验块的同步头比特的比特值之和或同步头比特对与奇偶校验块序列中相同位置上 的预期同步头比特的比特值之和或预期同步头比特对相比较。如果被检测的块在预期的块 序列中,则FEC码字锁定状态机方法300可以转到块350。否则,FEC码字锁定状态机方法 300转到块335。在块335中,FEC码字锁定状态机方法300可以检查块序列中下一数量的块,该数 量可能等于FEC码字中奇偶校验块的数量。这样就可以计算出检测块的同步头比特的比特 值之和。之后,FEC码字锁定状态机方法300可以转到块340,验证被检测的块是否是FEC 码字的预期奇偶校验块。例如,FEC码字锁定状态机方法300可以将计算得到的这些块的同 步头比特的比特值之和的序列与奇偶校验块的对应比特值之和的预期序列进行比较。如果 两个序列匹配,则被检测的块可能为奇偶校验块,且适当对齐,代表FEC码字的末端或结尾 部分。因此,检测块下一序列中的第一个块可能对应FEC码字的起始部分,且很可能会被锁 定。此外,整个块序列中,任何先前检测到的对齐错误都可以假定为误码,而不是对齐错误。 之后,FEC码字锁定状态机方法300可以转到块350。如果这两个序列不匹配,则FEC码字 锁定状态机方法300可以转到块345,其中块序列可以移动或滑动到下一个已接收的比特。 随后,FEC码字锁定状态机方法300可以返回块320,在其中检测移动块的下一个块。在块350中,FEC码字锁定状态机方法300可以验证是否所有接收的块都已经过 检测以及它们是否均适当对齐。如果所有接收的块都检测为适当对齐,则这些块与FEC码 字一致。因而,FEC码字锁定状态机方法300可以转到块355中。否则,FEC码字锁定状态 机方法300返回块320,以检测序列中的下一个块。在块355中,FEC码字锁定状态机方法300可以验证是否已检测两个连续的块序 列以及它们是否适当对齐,例如,是否已接收到两个连续的FEC码字。如果符合块355的条 件,则FEC码字锁定状态机方法300可以转到块360锁定两个连续FEC码字。相反,如果只 有单个块序列经过检测适当对齐,例如,只接收到单个FEC码字。则FEC码字锁定状态机方 法300返回块310,测定块的第二个序列是否与随后的FEC码字相一致。
相比验证和锁定单个FEC码字而言,检验和锁定两个连续的FEC码字可降低错误 检测多个接收的块对准情况的可能性。例如,这些块可能包含至少一个可隐藏或掩饰的误 码以及实际对齐错误,因此它们可能会出现在不正确的序列中。但最不可能发生的情况是, 这种误码在两个连续的接收的块序列中隐藏实际对齐错误。在FEC码字锁定状态机方法 300的一些实施例中,块335为可选。例如,在其他实施例中,FEC码字状态锁定机方法300 可以从块350转到块360,锁定相应的FEC码字,无需(在块355中)验证块的第二个序列 的对齐情况。图4所示为另一个FEC码字锁定状态机方法400,其中可能包含多种与上述IEEE 802. 3av标准中的状态相似的状态,本申请案以引用方式并入本文中。但是,FEC码字锁定 状态机方法400也可以包含其他可减少预期处理时间和提高效率的状态。特别是,当检测 到一个没有对齐的块时,其他状态可以验证是否已经FEC码字的尾部,之后移动或滑动检 测块序列,如果未达到FEC的结尾部分,则重新启动此流程。我们可以在L0CK_INIT状态410中启动FEC码字锁定状态机方法400。例如,重 设置参数时,可将指示在打开电源或切换到低电源模式过程中是否启动复位信号的布尔变 量设置为“真”。signal_ok参数是一个可以指示接收的块是否已经达到码字中预期的块数 量的布尔变量。当该参数设置为“假”时,也可以启动L0CK_INIT状态410。在一些实施例 中,重设状态机或未检测到启动信号时,可以启动L0CK_INIT状态410。在L0CK-INIT状态410期间,多个参数可以进行初始化。例如,cwordjock参数可 能是一个指示接收机是否已获取码字定界(codeword delineation)的布尔变量,可设置为 “假”。test_sh参数可能是一个指示新同步头是否可用于测试的布尔变量,可设置为“假”。 decodejuccess参数可能是一个指示码字是否已锁定的布尔变量,可设置为“假”。DeCOde_ failures参数可能是一个指示连续锁定失败次数的计数器,可以设置为0。persist_dec_ fail参数可能是一个指示连续锁定失败次数是否超出限制(如2次)的布尔变量,可设 置为“假”。例如,之后FEC码字锁定状态机方法400可以利用无条件传输(UCT)程序转到 RESET_CNT 状态 420。在RESET_CNT状态420期间,还多个参数可以进行初始化。例如,sh_cnt参数可 能是一个指示接收的块范围内选中的同步头数量的计数器,可以设置为0。在一些实施例 中,某个替代参数也可用于指示同步头的数量,如IEEE802. 3av标准中的sh_wndw_cnt。sh_ invalid_cnt参数可能是一个指示接收的块范围内无效同步头数量的计数器,可以设置为 0。slip_d0ne参数可能是一个指示SLIP流程是否已完成,是否可以测试下一个块同步位置 的布尔变量,可以设置为“假”。FEC_cnt参数可能是一个指示检测到的奇偶同步头的数量 的计数器,可以设置为0。此外,在一些实施例中,FEC_synchead_cnt参数可能是一个指示 检测到的FEC码字同步头的数量的计数器,可以设置为0。之后,FEC码字锁定状态机方法 400转到TEST_SH状态430的状态。在TEST_SH状态430期间,test_sh可以设置为“假”。接着执行 DecodeffhenReadyO程序,该程序可测定缓冲区是否含有FEC码字块中预期数量的块。此 外,在DecodeWhenReadyO程序期间,可以执行某个子程序以检测这些块是否适当对齐,如 IEEE 802. 3av标准中的Decode ()程序。如果这些块对齐,则接收的块可能与FEC码字一 致,且缓冲区之后会被清除。接着可以执行AppencLinbufferO程序,检测下一个比特适合(66个比特)的接收的块。例如,当sh_valid[sh_cnt]参数(该参数可能指示接收的块的 同步头有效)设置为“真”时,FEC码字锁定状态机方法400可以转到VALID_SH状态440的 状态。在进行此类测定时,sh_valid[sh_cnt]参数可能对应符合sh_cnt参数的sh_valid 阵列中的某个位置。或者,当sh_valid[sh_cnt]参数设置为“假”且cworcLlock参数设 置为“假”时,FEC码字锁定状态机方法400可以转到FEC_SH状态445,或当sh_valid[sh_ cnt]参数设置为“假”且cworcLlock参数设置为“真”时,FEC码字锁定状态机方法400转 到 INVALID_SH 状态 455。在VALID_SH状态440期间,sh_cnt参数可以增加1。例如,当sh_cnt参数等于 62且sh_invalid_cnt参数等于0时,FEC码字锁定状态机方法400可以转到62G00D状态 450。可选的,当test_sh参数设置为“真”且sh_cnt参数小于62时,FEC码字锁定状态机 方法400可以返回TEST_SH状态430 ;,或当sh_cnt参数等于62且sh_invalid_cnt大于 0时FEC码字锁定状态机方法400可以返回RESET_CNT状态420。在62G00D状态450期间, cword_lock参数可以设置为“真”。例如,之后FEC码字锁定状态机方法400可以利用无条 件传输(UCT)程序返回RESET_CNT状态420。FEC_SH状态445可检验接收的块中最后一个序列的块是否符合FEC码字的奇偶校 验块。在FEC_SH状态445期间,test_sh参数可以重置为“假”,FEC_cnt参数可增加1。当 FEC_valid[FEC_cnt]参数设置为“真”且FEC_cnt参数(该参数可能指示块序列中的最后 一些块是否符合奇偶校验块)等于4时,FEC码字锁定状态机方法400可以返回RESET_CNT 状态420。特别的,FEC_valid[FEC_cnt]参数可能对应符合FEC_cnt参数的FEC_valid阵 列中的某个位置。如果同步头总数与FEC码字的预期总数一致,则FEC_valid[FEC_cnt]参 数可以设置为“真”。或者,当test_sh参数设置为“真”且FEC_cnt参数小于4时,FEC码 字锁定状态机方法400可以重新启动FEC_SH状态445,或当FEC_valid[FEC_cnt]参数(该 参数可能指示块序列中最后一些块不是奇偶校验块)设置为“假”时,FEC码字锁定状态机 方法400转到INVALID_SH状态455。在一个实施例中,如果rx_COded
参数和rx_COded[l]参数的比特值之和等于 sh_Cff_PATTERN[26+FEC_cnt],则 FEC_valid[REC_cnt]参数可以设置为“真”。rx_coded
参数和rx_coded[l]参数可能对应rx_coded阵列中的第一个和第二个位置。rx_coded 阵列或矢量可能包含下一个被检测的块的比特,为66个比特。因此,rx_coded
参数和 rx_coded[l]参数可能包含这个块的同步头比特。SH_CW_PATTERN[26+FEC_cnt]参数可能 对应符合FEC_cnt的sh_CW_PATTERN阵列中的第二十六个位置之外的某个位置。SH_CW_ PATTER阵列可能是一个常量,包含FEC码字中同步头比特的比特值之和的序列。例如,SH_ Cff_PATTER阵列可能包含同步头比特的比特值之和,比特值之和的数量约为31个,这些同 步头比特对应FEC码字中的31个块。最后四个比特值之和的值可能为0、2、2、1,对应奇偶 校验块。因此SH_CW_PATTERN[26+FEC_cnt]参数可能对应其中一个奇偶校验块。在INVALID_SH状态455期间,sh_cnt参数和sh_invalid_cnt参数可以分别增加 1。例如,如果 sh_invalid_cnt 参数等于 16,cword_lock 参数设定为“假”,persist_dec_ fail参数设定为“假”,或它们的任意组合,则FEC码字锁定状态机方法400可以转到SLIP 状态460。或者,如果sh_cnt参数等于62,sh_invalid_cnt参数小于16,且cword_lock参 数设置为“真”,则FEC码字锁定状态机方法400可以返回RESET_CNT状态420。在SLIP状态460期间,cworcLlock参数设置为“假”,执行SLIP程序,且perSiSt_dec_fail参数增加 1。例如,在SLIP程序步骤中,当slip_done参数设置为“真”时,FEC码字锁定状态机方法 400可以返回RESET_CNT状态420。图5所示为FEC码字锁定状态机处理时间500的一个实施例。重点列出了第一条 曲线510,其中包含多个预期处理时间值与多个BER值的比。预期处理时间的值可以表示 使用第一个FEC码字锁定状态机方法(如FEC码字锁定状态机方法400)时的平均码字锁 定时间。预期处理时间的范围可以从2微秒至10微秒左右,而BER值的范围可以从10-7 到10-2左右。尤其当预期处理时间为1. 5微秒左右时,BER值的范围为10-7db至10_3db 左右。该实施例同时还列出了第二条曲线520,其中包含多个预期时间值,表示使用第二种 FEC码字锁定状态机方法(例如,与图4所述类似的码字锁定状态机,但不带块445))时的 平均码字锁定时间。第二条曲线520的预期处理时间值大于第一条曲线510的预期处理时 间值。例如,第二条曲线520的预期处理时间值的范围至少可以从15微秒到35微秒,这与 第一条曲线510的BER值相同。与第一种FEC码字锁定状态机方法(第一条曲线510)不同,如果检测到没有对齐 的块,则第二种FEC码字锁定状态机方法(第二条曲线520)接收到的块序列可能会滑动一 块或1比特,无需首先检验最后一些块是否符合FEC码字的尾部(例如,奇偶校验块)。检 验下一部分的块是否表示FEC码字的奇偶校验块,可以避免对这些块进行不必要的移动和 检测,加快锁定时间。此外,锁定时间还会随着BER值的增大而加快。上述网络组件可应用于任何通用网络组件,如配备有充足处理电源、内存资源,具 有能够处理其工作负载的网络吞吐能力的计算机或网络组件。图6所示为典型的通用网络 组件600,适用于执行本申请案公开的一个或多个实施例。网络组件600包含一个处理器 602 (通常称为中央处理器或CPU),该处理器与一些存储设备进行通信,如二级存储器604、 只读存储器(ROM) 606、随机存取存储器(RAM) 608、输入/输出(I/O)设备610以及网络连 接设备612。处理器602可用作一个或多个CPU芯片,或一个或多个专用集成电路(ASIC) 中的一部分。二级存储器604通常由一个或多个磁盘驱动器或磁带驱动器构成,可用作资料非 易失性存储器。如果RAM608没有足够空间保存所有工作资料,则二级存储器604还可用 作溢流资料存储设备。如果选定要执行已载入RAM 608的程序,则二级存储器604可用于 存储这些程序。ROM 606可用于存储指令,也可以存储在执行程序过程中读取的数据。ROM 606是一种非易失性存储设备,与二级存储器604相比,其存储容量较小。RAM 608可用于 存储易失性资料,也可以存储指令。通常情况下,访问ROM 606与RAM 608比访问二级存储 器604所需的速度更快。本专利至少公开一个实施例,如相关技术人员对实施例和/或实施例功能做出任 何变更、组合和/或修改,均在公开范围内。由于组合、集成和/或省略实施例功能而得 出的替换实施例也同样在公开范围内。在明确列出数值范围或限制的地方,这些明确范 围或限制应理解为包括其中所含数量位数的迭代范围或限制(例如,从1到10包括2、3、 4等等,大于0. 10包括0. 11,0. 12,0. 13等等)。例如,如果一个数值范围中有下限值Rl 以及上限值Ru,则范围中的任何数值均明确公开。特别明确公开下列范围内的数值R = Rl+k*(Ru-Rl),其中k为从到100%范围之间的变量(增量为),即,k为1%、2%、3%、4%、5%、...、50%、51%、52%、...、95%、96%、97%、98%、99%或 100%。此外,任何如 以上所述由两个R定义的数值范围也同样明确公开。针对权利要求中的任何元件使用“可 选”这一术语,意味着该元件为必要或非必要元件,二者均在权利要求范围内。文中所用的 上位词(如“包含”、“包括”)均支持下位词含义(如“由…组成”、“基本由…组成”以及“主 要由…组成”)。相应的,保护范围不受上文描述限制,而是由下文权利要求定义,该范围包 括所有权利要求标的同等物。各项权利要求均作为进一步公开内容并入说明书,这些权利 要求均为当前公开内容的实施例。公开内容中针对参考所作的讨论并代表其为先前技术, 特别是参考发布日期晚于本申请案优先日期的任何参考。本公开内容引用的所有专利公开 内容、专利申请书以及出版物均以参考方式纳入本文中,并提供示范性、程序性的或其他形 式的详细资料补充。尽管本公开内容已提供多个实施例,但仍应明确,已公开的系统和方法是许多其 他特定形式的体现,不得背离本发明的精神和范围。当前示例均应视为例证性和非限制性 示例,其意图并不限于文中细节。例如,可在另一个系统中组合或集成各种元件或组件,或 省略或不执行某种功能。此外,各个单独实施例中描述和列举的技术、系统、子系统和方法可与其他系统、 模块、技术或方法组合或继承,不得背离本发明范围。本发明介绍或讨论的其他耦合、直接 耦合或相互通信的物品可通过接口、设备或中间组件以电力、机械或其他方式间接耦合或 通信。相关技术人员可确定并更改、替换和修改本发明其他示例,但不得背离本发明精神和 范围。
权利要求
1.一种设备,包含耦合到光接收机的前向纠错FEC处理器,其中,FEC处理器,用于将多个接收的块与包含多个奇偶校验块的多个FEC码字比较,如果在 接收的块中检测到未对齐的块,至少将部分其余的接收的块与奇偶校验块比较。
2.根据权利要求1所述的设备,其中接收的块和FEC码字块中每一个块是一个奇偶校 验块或数据块。
3.根据权利要求2所述的设备,其中奇偶校验块和数据块中每一个块包含多个同步头 比特和载荷比特。
4.根据权利要求3所述的设备,其中FEC码字块包含27个数据块和4个奇偶校验块, 每个数据块包含比特位数为2的同步头比特和比特位数为64的载荷比特,每个奇偶校验块 包含比特位数为2的同步头比特和比特位数为64的载荷比特。
5.根据权利要求4所述的设备,其中数据块的同步头比特的比特值之和等于1,奇偶校 验块的同步头比特的比特值之和等于0或2。
6.根据权利要求5所述的设备,其中FEC码字的奇偶校验块的同步头比特的比特值之 和为固定值。
7.根据权利要求6所述的设备,其中FEC码字的奇偶校验块的同步头比特比特值之和 的最后四个值为0、2、2和0。
8.根据权利要求3所述的设备,其中当未对齐的块的同步头比特的比特值之和不等于 FEC码字中处于相同位置的对应块的同步头比特的比特值之和时,检测出该未对齐的块。
9.一种在设备中执行的方法,包括接收多个块,所接收的块的数量等于前向纠错FEC码字中块的数量;选定其中一个接收的块;检测选定的块是否与FEC码字对齐;当选定块与FEC码字不对齐时,检测其余块是否与FEC码字一致。
10.根据权利要求9所述的方法,其中的方法还包括,当其余块与FEC码字不对应时,将 这些块滑动一块或1比特。
11.根据权利要求10所述的方法,其中的方法还包括当选定块与FEC码字对齐或其余块与FEC码字对应时,接收第二部分的块,并检测这些 块是否与FEC码字对齐,其中第二部分块的数量等于FEC码字的块的数量。
12.根据权利要求9所述的方法,其中FEC码字的最后四个块有固定顺序的多个同步头 比特的比特值之和。
13.根据权利要求9所述的设备,其中FEC码字块包含27个数据块和4个奇偶校验块, 每个数据块包含比特位数为2的同步头比特和比特位数为64的载荷比特,每个奇偶校验块 包含比特位数为2的同步头比特和比特位数为64的载荷比特。
14.根据权利要求13所述的设备,其中数据块的同步头比特的比特值之和等于1,奇偶 校验块的同步头比特的比特值之和等于0或2,其中FEC码字的奇偶校验块的同步头比特比 特值之和的最后四个值为0、2、2和0。
15.根据权利要求9所述的方法,其中如果其余块的多个同步头比特的比特值之和等 于FEC码字的同步头比特的比特值之和,其余块对应FEC码字。
16.根据权利要求9所述的方法,其中如果选定块含有一个误码,或选定的块的多个同 步头比特的比特值之和不等于FEC码字中处于相同位置的对应块的多个同步头比特的比 特值之和,则选定的块没有对齐。
全文摘要
本发明包括一种设备,该设备包含耦合到光接收机的前向纠错(FEC)处理器。该前向纠错(FEC)处理器用于将多个接收的块与多个包含奇偶校验块的FEC码字块比较,如果在接收的块中检测到未对齐的接收的块,至少应将其余的接收的块与奇偶校验块比较。本发明还包括一种设备,该设备包含至少一个组件,该组件用于执行接收多个块的方法。其中接收块的数量等于FEC码字中块的数量,选定一个接收的块,测定选定的块是否与FEC码字对准,如果选定块与FEC码字没有对齐,则确定其余块是否与FEC码字一致。
文档编号H04B10/00GK102007712SQ200980106657
公开日2011年4月6日 申请日期2009年4月30日 优先权日2008年4月30日
发明者弗兰克·J·埃芬博格, 欧鹏 申请人:华为技术有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1