CN101454982B - 数据传送系统、差错检测方法和帮助差错检测的系统 - Google Patents
数据传送系统、差错检测方法和帮助差错检测的系统 Download PDFInfo
- Publication number
- CN101454982B CN101454982B CN2007800168937A CN200780016893A CN101454982B CN 101454982 B CN101454982 B CN 101454982B CN 2007800168937 A CN2007800168937 A CN 2007800168937A CN 200780016893 A CN200780016893 A CN 200780016893A CN 101454982 B CN101454982 B CN 101454982B
- Authority
- CN
- China
- Prior art keywords
- bit
- mistake
- parity matrix
- passage
- character
- 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.)
- Expired - Fee Related
Links
Images
Classifications
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
- H03M13/25—Error detection or forward error correction by signal space coding, i.e. adding redundancy in the signal constellation, e.g. Trellis Coded Modulation [TCM]
- H03M13/251—Error detection or forward error correction by signal space coding, i.e. adding redundancy in the signal constellation, e.g. Trellis Coded Modulation [TCM] with block coding
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
- H03M13/03—Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
- H03M13/05—Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits
- H03M13/09—Error detection only, e.g. using cyclic redundancy check [CRC] codes or single parity bit
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
- H03M13/03—Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
- H03M13/05—Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits
- H03M13/13—Linear codes
- H03M13/19—Single error correction without using particular properties of the cyclic codes, e.g. Hamming codes, extended or generalised Hamming codes
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/004—Arrangements for detecting or preventing errors in the information received by using forward error control
- H04L1/0056—Systems characterized by the type of code used
- H04L1/0061—Error detection codes
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L25/00—Baseband systems
- H04L25/38—Synchronous or start-stop systems, e.g. for Baudot code
- H04L25/40—Transmitting circuits; Receiving circuits
- H04L25/49—Transmitting circuits; Receiving circuits using code conversion at the transmitter; using predistortion; using insertion of idle bits for obtaining a desired frequency spectrum; using three or more amplitude levels ; Baseband coding techniques specific to data transmission systems
- H04L25/4917—Transmitting circuits; Receiving circuits using code conversion at the transmitter; using predistortion; using insertion of idle bits for obtaining a desired frequency spectrum; using three or more amplitude levels ; Baseband coding techniques specific to data transmission systems using multilevel codes
- H04L25/4919—Transmitting circuits; Receiving circuits using code conversion at the transmitter; using predistortion; using insertion of idle bits for obtaining a desired frequency spectrum; using three or more amplitude levels ; Baseband coding techniques specific to data transmission systems using multilevel codes using balanced multilevel codes
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Probability & Statistics with Applications (AREA)
- Theoretical Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Spectroscopy & Molecular Physics (AREA)
- Error Detection And Correction (AREA)
- Detection And Correction Of Errors (AREA)
- Detection And Prevention Of Errors In Transmission (AREA)
Abstract
本发明提供了将“标准”汉明码映射到33比特控制块的比特上的系统(例如光纤信道差错检测码(FC-EDC))。该系统针对FC-EDC使用了二维奇偶校验矩阵中的校验位置的“旋转”。本发明公开了一种计算机实现的程序,用于对“标准”distance-4奇偶校验矩阵的进一步修正和置换进行测试,以便产生具有增强的差错检测属性的FC-EDC,其被设计为对已知的物理环境中的最可能发生的差错进行检测。通过利用具有“旋转”属性的奇偶校验矩阵,确保了奇偶校验矩阵的某些差错检测属性,并且用于搜索具有增强的差错检测属性的矩阵的计算时间大大变短。
Description
相关申请的交叉引用
本申请要求2006年5月9日提交的题为“ERROR DETECTING CODE FOR MULTI-CHARACTER,MULTI-LANE,MULTI-LEVELPHYSICAL TRANSMISSION”的美国临时专利申请No.60/798,926的优先权。上述申请的全部内容通过引用被结合于此。
背景技术
进行测试以便在物理介质上进行准确的数据传送在当今的数字世界中是极为重要的。就当今的传送协议而言,传统的差错检测码(EDC)的检测能力是有限的。
差错检测指的是识别在传送期间由于噪声或其他问题而出现的数据差错的能力。在抽象级别上,“差错”发生在某一比特在发送时值为1但在接收时值却为0时,反之亦然。但是,为了使差错检测码最有效,代码所检测的抽象差错应当是在物理传送介质上最有可能发生的差错。例如,某些物理干扰可能在多个比特中产生差错,这些差错基于比特在时间和空间方面在物理介质中分布的方式而分布在接收到的数据上。
根据当今的物理传送环境,数据经常是利用33比特“控制块”来传送的,所述33比特“控制块”例如是FC-BaseT用来在无屏蔽双绞线缆上承载光纤信道协议的那种。FC-BaseT环境使用四对信号线或通道(lane),其中每个线对承载按PAM-8编码(8级脉冲幅度调制)来进行编码的3比特“符号(symbol)”。
因而,在任何给定时刻,四个通道可以承载12比特的信息。为了提高物理解调和解码的准确性,在Schlaefli编码中,第12个比特通常是作为前9个比特的奇偶校验位而传送的。因此,在实践中,每一次在四个通道上只传送被称为“字符(character)”的11比特的信息。
根据FC-BaseT,对于一个33比特块,三个11比特字符在四个通道上被顺次传送。33比特块的指定比特指示出其余的32比特是对数据块进行转码还是对所谓的光纤信道有序集或者说“控制块”进行转码。FC-BaseT“控制块”包含三个8比特控制字节(24比特信息),用于标识控制块的具体类型的三个比特(在用于光纤信道时,所有三个比特都设为0),以及五个未使用的额外比特。
发明内容
以下给出了对说明书的简单概括,以便提供对本技术的某些方面的基本理解。这里的概括不是对本公开的广泛综述。它并不是用来标识本公开的重要/关键要素或者界定本技术的范围的。其唯一目的是以简化形式给出本技术的某些概念,以作为稍后给出的更详细描述的前序。
这里公开和要求保护的技术在一个方面中包括比传统的差错检测技术提供更高的差错检测概率的差错检测码系统和方案。具体地,本公开的一个方面提供了将标准的distance-3和distance-4汉明码映射到33比特控制块的比特。例如,在FC-BaseT传送中,对于每个块传送三个11比特字符。如果物理差错独立地影响各个字符,则相同的校验比特可用于检测所有三个字符中的差错。在一个实施例中,可以生成用于三个字符的三个独立的5比特校验符号。在操作中,这些符号被按位异或(XOR),以为相应的33比特传送产生单个5比特校验符号,这允许了检测被隔离到单个11比特字符的3比特差错。
在物理差错跨越多个字符时间的情况下,连续字符的奇偶校验矩阵可被“旋转”,以便矩阵的不同列被用于保护在同一通道中传送的所有比特。执行旋转以确保当矩阵被应用到后续传送字符时,给定通道中的所有相应列与在各个先前字符的同一通道中使用的列相比都是独特的。所得到的代码可以检测单个传送字符中的最多达3比特的差错以及单个通道中的最多达3比特的差错。
另一个方面涉及一种增强方法和/或程序,其搜索具有旋转属性的可能奇偶校验矩阵,直到具有所需属性的一个或多个矩阵被识别出。更具体而 言,奇偶校验矩阵的置换(permutation)被分析,以判定它们是否能够检测与预先定义的标准相匹配的所有差错。
为了完成前述和相关目标,这里结合以下描述和附图描述了某些示例性方面。但是,这些方面仅仅指示出可以使用本技术的原理的各种方式中的几种,而本说明书想要包括所有这样的方面及其等同物。当结合附图来考虑时,从以下详细描述中将清楚看到本技术的其他优点和特征。
附图说明
图1示出根据一个实施例的对多字符、多通道、多级别物理传送中的差错进行检测和校正的差错检测码(EDC)系统。
图2示出根据一个实施例的物理编码子层(PCS)操作方案。
图3示出根据一个实施例的4D PAM-8Schlaefli点阵(lattice)编码。
图4示出根据一个实施例的比特到符号映射。
图5示出根据一个实施例的2维点阵空间。
图6示出根据一个实施例的生成15比特编码字以供传送的示例性编码器。
图7示出根据一个实施例的能够建立11比特数据和1比特差错指示的示例性解码器。
图8示出根据一个实施例的能够利用这里所述的EDC为控制块生成校验比特的编码器。
图9示出一个实施例的对根据EDC传送的控制块中的差错进行检测的解码器的框图。
图10示出根据一个实施例的光纤信道字的转码或映射。
图11示出根据一个实施例的奇偶校验矩阵的“旋转”。
图12示出根据一个实施例的示例性的4比特和梯形差错。
图13示出根据一个实施例的使用识别具有“旋转”属性的矩阵的奇偶校验矩阵生成组件(或程序)的系统。
图14示出根据一个实施例的帮助生成奇偶校验矩阵的过程的示例性流程图。
图15示出根据一个实施例的帮助发送和接收控制块并检测差错的过 程的示例性流程图。
具体实施方式
现在参考附图来描述本技术,在附图中相似的标号始终用于指代相似的元件。在以下描述中,出于说明目的,阐述了许多具体细节以提供对特征和功能的全面理解。但是,很明显,没有这些具体细节也能实现本技术。在其他情况下,以框图形式示出公知的结构和设备,以便帮助描述特征和功能。
本申请中使用的术语“组件”和“系统”是想要指代与计算机相关的实体,其或者是硬件、硬件和软件的组合、软件、执行中的软件,或者是数字逻辑电路。例如,组件可以是但不限于是在处理器上运行的进程、处理器、对象、可执行文件、执行的线程、程序和/或计算机。例如,在服务器上运行的应用和服务器都可以是组件。一个或多个组件可以存在于进程和/或执行的线程之内,并且组件可以局限于一个计算机和/或分布在两个或更多个计算机之间。
如上所述,进行测试以便在物理介质上进行准确的数据传送在当今的数字世界中是极为重要的。此外,就正在发展的传送协议而言,传统的差错检测码(EDC)的检测能力是有限的。
参考附图,图1示出根据一个方面的帮助对多字符、多通道、多级别物理传送的差错进行检测和校正的差错检测码系统100。更具体而言,根据一个方面,系统100可以针对适合于经由双绞线介质(FC-BaseT)进行的传送的光纤信道协议检测差错。这样,系统100在这里将被称为FC-EDC(光纤信道差错检测码)。虽然这里描述的方面是针对光纤信道协议的,但是应当理解,其他的方面可以针对其他的传送系统和协议,而不脱离本说明书的精神和/或范围。
一般来说,FC-EDC系统100可以包括FC-EDC编码器102,该FC-EDC编码器102使用奇偶校验矩阵104,该奇偶校验矩阵104能够利用本公开的EDC来为控制块生成校验比特。系统100还可以包括FC-EDC解码器106,该FC-EDC解码器106可以对利用这里描述的EDC传送的控制 块中的差错进行检测。正如阅读以下讨论之后将会更好地理解的,系统100可以帮助对二维奇偶校验矩阵中的校验位置进行旋转,以检测物理环境中的差错。
根据示例性的物理传送环境,EDC对于检测33比特“控制块”中的差错可能尤其有用,所述33比特“控制块”例如是FC-BaseT用来在无屏蔽双绞线缆上承载光纤信道协议的那种。在该方面中,应当理解FC-BaseT环境使用四对信号线或通道,其中每个线对承载按PAM-8编码(8级脉冲幅度调制)来进行编码的3比特“符号”。
因而,在任何给定时刻,四个通道可以承载12比特的信息。为了提高物理解调和解码的准确性,在Schlaefli编码中,第12个比特通常是作为前9个比特的奇偶校验位而传送的。因此,在实践中,每一次在四个通道上只传送被称为“字符”的11比特的信息。
根据FC-BaseT环境,对于一个33比特块,三个11比特字符在四个通道上被顺次传送。33比特块的指定比特指示出其余的32比特是对数据块进行转码还是对所谓的光纤信道有序集或者说“控制块”进行转码。33比特FC-BaseT“控制块”包含三个8比特控制字节(24比特信息),用于标识控制块的具体类型的三个比特(在用于光纤信道时,所有三个比特都设为0),以及五个未使用的额外比特。
根据EDC,FC-EDC系统100使用这五个额外的比特来作为校验比特。该FC-EDC系统100可以使得对控制块传送时发生的任何差错的检测概率更高。在某些方面中,可以在考虑到FC-BaseT双绞线环境中可发生的可能的物理差错机制的情况下以使检测到差错的概率最大化的方式来选择FC-EDC100编码方案。
将会理解,根据本说明书,33比特块的各个比特可以结合PAM-8和Schlaefli编码被映射到四个通道中的字符和符号上。此外,根据本公开使用的五个校验比特是基于distance-3和distance-4(扩展)汉明码的。
本说明的一个特定方面公开了一种技术,其中“标准”汉明码被映射到33比特控制块的比特上。另外,本公开还针对FC-EDC系统描述和使用了二维奇偶校验矩阵中的校验位置的“旋转”。虽然所描述的方面针对 的是33比特控制块,但是应当理解,这里描述的特征和功能可以应用到其他传送的数据,而不脱离本公开及所附权利要求的精神和范围。
另外,本公开描述和提供了一种计算机实现的系统及其用途,用于对“标准”distance-4奇偶校验矩阵的进一步修正和置换进行测试,以便产生具有增强的属性的FC-EDC。该计算机实现的系统所发现的奇偶校验矩阵被设计为对已知的物理环境中的最可能发生的差错进行检测。
通过利用具有“旋转”属性的奇偶校验矩阵104,可以将搜索的计算时间限制到尤其可控的范围。应当明白,如果没有奇偶校验矩阵(例如104)的旋转属性,那么就将需要测试27!(27的阶乘)和26^27(26的27次幂)之间的某个数目的不同的奇偶校验矩阵。
以下是对Schlaefli编码和解码的讨论,其提供了对于理解图1所示的FC-EDC系统100有用的信息。FC-BaseT设备的操作可以被分解在物理编码子层(PCS)和物理介质附接(PMA)子层中。PCS把从更上层接收到的数字数据转换成适合于在特定介质上进行有效的物理传送的格式(物理编码)。PMA子层取得由PCS产生的代码,并且使它们适合于所使用的特定物理介质(例如,通过将某一值转换为线缆上的某一电压电平)。FC-BaseT PCS通过XGMII接口(在IEEE Std.802.3中定义)与更上层相接口连接。
现在转到表示PCS传送方案或操作的图2,PCS传送过程基于XGMII上的TXD<31:0>和TXC<3:0>信号来连续生成33比特(33b)块。每个33b块被划分成三个11比特传送字符。如图所示,每个11比特传送字符被加扰,然后被利用12比特来进行Schlaefli点阵编码。加扰器可以是所谓的“旁流加扰器”,这样,在接收器进行解扰时,不会移动比特差错或使比特差错加倍。这12比特进而被划分成各具有三比特的四个组,每个组标识8级脉冲幅度调制或PAM-8符号集{-7,-5,-3,-1,+1,+3,+5,+7}中的一个符号。所标识的符号形成4维(4D)PAM-8代码组(An,Bn,Cn,Dn)。图2示出了在XGMII上从四个字节到包含三个字符的33b块的映射。
在每个符号时段中,当与PMA通信时,PCS发送方生成被传送到 PMA的代码组(An,Bn,Cn,Dn)。PMA分别在线对A、B、C和D上传送符号An、Bn、Cn、Dn。整数n是为了建立不同符号时段之间的时间关系而引入的时间索引。
所得到的调制速率是2.75比特每符号(对于每个字符是4个符号上的11比特)。在此示例中,利用4096点4D PAM-8星座中一半的点(例如2048个点)来使用4D PAM-8Schlaefli点阵编码,这是最密集的4维点阵。该编码确保了Schlaefli点阵的点之间的最小欧几里得平方距离是完整的4D PAM-8星座的两个点之间的最小欧几里得平方距离的两倍。
现在参考图3,并开始讨论Schlaefli点阵编码,每个33b块被划分成三个11比特传送字符,S0、S1和S2,如图2所示。每个11比特传送字符被加扰,然后被利用12比特进行Schlaefli点阵编码,如图3所示。
每个经加扰的传送字符的11比特按图示顺序从比特0到比特10被处理。每个传送字符的比特0被映射到比特d2,以确保传送字符S0的比特0(例如Data/Ctrl比特)被映射到在线对D上传送的PAM-8符号的msb(最高有效位)。比特a2、b2和c2分别被生成为等于传送字符的比特10、7和4。比特a1、b1和c1分别是通过对比特a2和传送字符的比特9进行异或、对比特b2和传送字符的比特6进行异或,以及对比特c2和传送字符的比特3进行异或来生成的。比特a0、b0和c0分别是通过对比特a1和传送字符的比特8进行异或、对比特b1和传送字符的比特5进行异或,以及对比特c1和传送字符的比特2进行异或来生成的。比特d1是通过对比特d2和传送字符的比特1进行异或来生成的。比特d0是通过对比特a0、b0和c0进行异或来生成的。
每组的三个比特x2、x1、x0(其中x可以是a、b、c或d)标识PAM-8符号集{-7,-5,-3,-1,+1,+3,+5,+7}中的一个符号。比特到PAM-8的符号映射在图4的表400中示出。作为Schlaefli点阵编码的一个示例,11比特10010100111b被编码成4维PAM-8符号(+7,+5,-5,+1)。
在一个线对(通道)上传送的每个符号可以具有八个可能的模拟值-7、-5、-3、-1、+1、+3、+5或+7之一,因此编码了3个比特。“小”物理差错将解码值移动一步,例如从-5移动到-7,或者从-1移动到+1。对于 表400中所述的“自然”比特编码来说,“小”物理差错可能导致解码值中的最多达3比特的差错(例如,-1->+1==>011b->100b)。通过在发送时执行格雷码到自然码(gray-to-natural)编码,并且在接收时执行相应的自然码到格雷码解码,Schlaefli点阵编码确保了一个符号上的“小”物理差错只影响一个解码比特。
Schlaefli点阵编码还使用一个比特,即图3的比特d0,来进一步增强解码。该比特是作为原始传送字符的通道A、B和C中的所有比特的异或(奇偶校验位)而传送的。这具有对于由通道A、B、C和D上的4个符号组成的4维符号去除4维点阵中的一半的点的效果。这确保了Schlaefli点阵的点之间的最小欧几里得平方距离是完整的4维PAM-8星座的点之间的最小欧几里得平方距离的2倍。此效果可以增强接收机处的解码过程。
图5表示通过与在4维中构造Schlaefli点阵相同的方式构造的2维点阵空间中的点。点阵中的有效代码点是完整的2维星座的可能代码点的一半(例如,(1,1)是有效点阵代码点,但(3,1)不是)。这使得点阵的代码点之间的最小平方欧几里得距离是完整的2维星座的代码点之间的最小平方欧几里得距离的2倍。考虑点阵代码点(1,1),如果接收到的2维信号保持在图5中的点(1,1)周围的方形内部,则接收机将把它解码为(1,1)。点阵的点之间的最小平方欧几里得距离的加倍使得该“解码方形”是使用完整的2维星座情况下的四倍那么大。这意味着若要错误地对代码点解码则需要更大的扰动,这样,点阵编码改进了接收机处的解码过程,使得其在面对噪声时更加鲁棒。
2维点阵的点周围的方形在4维Schlaefli点阵中变成具有24个面和8个顶点的多面体。对4D PAM-8符号进行解码意味着寻找在Schlaefli点阵中与在通道A、B、C和D上接收到的信号具有最小欧几里得距离的点。当接收到的符号被包含在错误的多面体中时,就解码出错误的符号。
返回图3,实际上,这意味着根据Schlaefli点阵解码,不可能像只存在一个“小”差错那样进行解码。从一个有效的12比特代码点(基于a2a1a0、b2b1b0、c2c1c0和d2d1d0的值)移动到另一个有效的12比特代 码点需要两个小差错,例如改变a0、b0、c0和d0中的两个。在大多数情况下,这看起来将是原始的11比特格雷编码字符的比特0至10中的2比特差错,例如(A、B、C和D之中的)两个通道中的每一个中的1比特差错。在某些情况下,如果小差错之一发生在通道D中,并且d0改变,而d2和d1保持不变,则原始的11比特格雷编码字符中的差错看起来将只是通道A、B或C中的1比特差错。这可以被称为“退化情况”。在考查FC-EDC系统100将要检测的差错的类别时,理解这些Schlaefli编码和解码属性是尤其重要的。
现在参考对汉明码的讨论,这些代码是利用这样一个奇偶校验矩阵来构造的:该奇偶校验矩阵的列全部是独特的并且非零。传统上,汉明码的最小距离为3,因此其可以检测任何最多达2比特的差错。以下的表1示出了用于具有11个数据比特、4个校验比特和最小距离3(按照设计,这可以检测最多达2比特中的差错)的“理想”汉明码的奇偶校验矩阵:
d d d d d d d d d d d c c c c
a 9 8 7 6 5 4 3 2 1 0 0 1 2 3
-----------------------------
0 0 0 0 1 1 1 1 1 1 1 1 0 0 0
0 1 1 1 0 0 0 1 1 1 1 0 1 0 0
1 0 1 1 0 1 1 0 0 1 1 0 0 1 0
1 1 0 1 1 0 1 0 1 0 1 0 0 0 1
表1
应当理解,标记为d和c的列分别对应于数据和校验比特。每个校验比特是利用奇偶校验矩阵的相应行来生成的,该行是奇偶比特的列具有1那一行。校验比特是这样选择的:使得该行中包括校验比特在内的所有具有“1”的比特的模2和(异或)为0。换言之,校验比特是它的行中的“1”比特所选择的所有数据比特的异或的补码。因而,校验比特c0是数据比特d6至d0的异或的补码。应当理解,给定这样的奇偶校验矩阵,本 领域的技术人员可以设计利用一组异或门或者可编程逻辑器件等等来为一组数据比特d0-da计算校验比特c0-c3的数字逻辑电路。还可以利用在计算机处理器上运行的软件来计算校验比特,但这一般会较慢。能够计算校验比特(例如c0-c3)的编码器的图示在图6中示出。更具体而言,根据一个实施例,编码器602可以使用矩阵604来计算校验比特。
类似地,根据本说明书的一个方面的解码器(或者校验器)702的图示在图7中示出。更具体而言,可以根据接收到的汉明码字来使用图7的解码器。解码器计算接收到的汉明码字中的四个不同的、部分重叠的比特子集的奇偶校验位,每个子集由奇偶校验矩阵704的相应行中的1比特来定义。该计算产生被称为“校验子(syndrome)”的4比特值,其中如果计算出的奇偶校验位为偶则比特为0,如果为奇则比特为1。如果校验子的所有四个比特都为零,则认为接收到的字是正确的。如果校验子的任何比特非零,则发生了差错。各个校验子比特可以在硬件中利用异或门来计算。OR门可用于判定任何校验子比特是否非零,从而创建“差错”信号。还可以利用在计算机处理器上运行的软件来计算校验子并检查差错,但这一般会较慢。在具有更多校验比特的EDC中,在校验子中有更多比特,对于奇偶校验矩阵的每一行始终有一个校验子比特,并且如图7所示,如果任何校验子比特非零,则发生了差错。
再次参考上述的汉明码,应当理解,该代码之所以被称为“理想”是因为它具有仅利用4个校验比特就能保护的最大数目的数据比特,并且仍具有最小距离3。另外,应当理解,对于以上奇偶校验矩阵(例如表1)中的数据列,可能存在许多不同的置换,而同时仍维持最小距离3。独特的要求是每一列必须是非零且独特的。对于4个校验比特,存在4行,因此有15个非零列,其中具有单个1的列对应于校验比特。这就是为什么在具有4个校验比特的“理想”汉明码中存在11个(15减4)个数据比特,在5个校验比特的情况下则最多达26个数据比特,在6个校验比特的情况下则最多达57个数据比特,等等。
通过添加对所有其他比特进行校验的另一个“整体”奇偶比特,可以将汉明码的最小距离增大到4(三重差错检测)。由于添加该额外的奇偶 比特,因而向奇偶校验矩阵添加了另一行和列,如以下的表2所示:
d d d d d d d d d d d c c c c c
a 9 8 7 6 5 4 3 2 1 0 0 1 2 3 4
-------------------------------
0 0 0 0 1 1 1 1 1 1 1 1 0 0 0 0
0 1 1 1 0 0 0 1 1 1 1 0 1 0 0 0
1 0 1 1 0 1 1 0 0 1 1 0 0 1 0 0
1 1 0 1 1 0 1 0 1 0 1 0 0 0 1 0
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
表2
同样,应当理解,对于表2的奇偶校验矩阵中的数据列可能存在许多不同的置换,而同时仍维持最小距离4。还可以通过取行的线性组合(异或)来得出同样有效的奇偶校验矩阵。例如,通过对以上的前四行和最后一行进行异或,可以产生最后一行的新版本,其中“整体”奇偶比特c4只是数据比特而不是其他校验比特的函数。
类似地,根据FC-EDC系统100,图8示出了根据本说明书一个方面的FC-EDC编码器102。如图所示,该编码器102可以利用这里所述的EDC来为控制块输入生成校验比特。按照其最简单的形式,图8示出了具有27个输入和5个输出的单个块802。应当理解,27个输入表示数据,而5个输出表示校验比特。另外,数据比特和校验比特以及选择控制块或数据块的1/0比特在右侧(例如,经由“合并”块804)被连接起来,以形成要传送的33比特块。
图9示出了根据这里所述的EDC的示例性解码器/校验器106。在操作中,该解码器106可以对利用这里所述的EDC传送的控制块(例如来自图8的控制块)中的差错进行检测。如图9所示,该解码操作的输出是33比特数据块或者经差错校验的控制块,以及1比特的ERROR。
以下是对根据一个实施例的从汉明码到FC-BaseT传送的讨论。在FC- BaseT传送方案中,单个字符具有在四个线对上传送的11比特。因而,具有11个数据比特和5个校验比特的distance-4汉明码可以检测单个字符中的最多达三个差错。
在FC-BaseT场景中,对于每个块传送三个11比特字符(例如S0、S1、S2)。对所有三个字符进行校验是尤其重要的。应当理解,如果物理差错独立地影响字符,则它们可以使用相同的校验比特来检测所有三个字符中的差错。也就是说,如果以上的奇偶校验矩阵(例如表2)被用于检测第一字符(S0)的比特d_0至d_10中的差错,则同一奇偶校验矩阵可用于检测第二和第三字符(分别是S1和S2)中的比特d_0至d_10中的差错。
但是,本说明书公开了对于三个字符使用三个独立生成的各具有5个校验比特的集合,并且对它们进行按位异或,以为33比特传送产生5个校验比特的仅一个集合。这样,仍可以检测被隔离到单个11比特字符的任何3比特差错。
因为5个校验比特不是分开发送的,而是从可用的33比特中划出来的,因此这个操作比起先前所述的来要略困难某些。但是,应当理解,在作为替换的实施例中,可以使用5个额外的比特。
参考图10,其中示出了FC-BaseT传送中从数据比特和校验比特到各个字符、通道和符号的一种优选映射。如图10所示,“X”标记5个校验比特的位置。虽然探索所有可能的映射的属性是一个计算上很困难的问题,但将5个校验比特和控制/数据比特仅仅映射到通道D与其他映射相比增强了FC-EDC的属性。
以上段落涉及仅仅影响单个字符的物理差错。现在开始讨论影响多个字符的差错,物理干扰当然有可能持续得更长并且跨越多个字符时间。据此,本公开的FC-EDC系统100能够检测影响多个字符的差错。
因为同一奇偶校验矩阵被用于所有字符中,所以以上提出的代码构造对于影响同一通道中的两个符号的差错可能会不起作用。例如,在通道/线对A上传送的所有三个字符中的比特d_10都受奇偶校验矩阵列da(00111)的保护。如果在这三个字符中的两个字符的比特d_10上发生1 比特差错,则奇偶差错抵消(00111XOR00111产生校验子00000),并且该差错将不会被检测到。
这里所述的技术可以通过以下方式来解决此问题:对于连续的字符旋转奇偶校验矩阵,使得不同的列被用于保护在同一通道上传送的所有比特。该旋转技术在图11中示出。
继续以上示例,在旋转之后,第二字符的奇偶校验矩阵可能如以下的表3所示:
d d d d d d d d d d d c c c c c
a 9 8 7 6 5 4 3 2 1 0 0 1 2 3 4
-------------------------------
0 1 1 1 1 1 1 1 0 0 0 1 0 0 0 0
1 0 0 0 1 1 1 1 0 1 1 0 1 0 0 0
1 0 1 1 0 0 1 1 1 0 1 0 0 1 0 0
1 1 0 1 0 1 0 1 1 1 0 0 0 0 1 0
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
表3
在这里,奇偶校验矩阵的数据比特列已经被向左旋转了三个比特位置。这确保了当该矩阵被应用到第二传送字符时,给定通道中的所有三个列与第一传送字符的同一通道中使用的列相比是独特的。对于第三传送字符,奇偶校验矩阵被进一步旋转三个比特位置。这样,所得到的代码不仅可以检测单个传送字符中的最多达3比特的差错,而且还可以检测单个通道中的最多达3比特的差错。图11示出了利用旋转技术构造的完整的33比特宽的奇偶校验矩阵。根据图10所示的映射类型,该矩阵还包括用于控制/数据比特和校验比特的列。
由于FC-BaseT PCS使用Schlaefli编码,因此可以实现进一步的增强。例如,由于Schlaefli解码避免了大多数的奇数比特差错,因此作为回应或许可以削弱FC-EDC的差错检测属性,以便改进对多于3比特的差错 的检测。
应当明白,最可能发生的物理差错是在模拟域中具有最小平方距离的差错。首先考虑被隔离到单个字符的差错。
1)通过Schlaefli解码,避免了通道A、B、C和D上的大多数1比特和3比特差错。但是,如果错误比特之一在通道D上并且在自然码到格雷码转换之后被丢弃,则有可能从2比特差错产生1比特差错(这被称为“退化情况”)。这种1比特差错仍被FC-EDC所检测(最小距离至少为2-奇偶校验矩阵中没有为零的列)。
2)通道A、B、C和D中的所有2比特差错都被FC-EDC所检测(最小距离至少为3-独特的列)。
3)通道A、B、C和D中的所有1-1-1-1比特差错(四个通道中的每个通道中的一比特)都可以通过“构造”被FC-EDC所检测(见下)。这包括当通道D上的差错比特在自然码到格雷码转换之后被丢弃时被转换成通道A、B和C上的1-1-1比特差错的1-1-1-1比特差错。
4)类似地,通道A、B和C和D中所有2-1-1比特差错(一个通道中2个比特,两个其他通道中的每个通道中1比特)都可以通过“构造”被FC-EDC所检测(同样见下)。
接下来,考虑被隔离到单个通道的差错:
1)通道A、B和C中的所有1比特差错都被Schlaefli所避免,并且无论如何将被FC-EDC所检测。
2)通道D中的所有1比特差错都或者被Schlaefli所避免(如果在自然码到格雷码转换之后比特被丢弃,则又是“退化情况”),或者被FC-EDC所检测(最小距离至少为2-没有为零的列)。
3)通道A、B、C和D中的所有2比特差错都或者被FC-EDC所检测(由于distance-3-独特的列),或者被转换成1比特差错(当通道D上的错误传送在自然码到格雷码转换之后被丢弃时,即“退化情况”)。
4)在自然码到格雷码转换之后使得1个或更多个差错比特被丢弃的通道D中的所有1-1-1比特差错具有净剩的两个或更少个比特差错,这被FC-EDC所检测(非零,独特的列)。
5)通道D中的所有其他1-1-1比特差错(在传送比特d_1、d_2上)都通过“构造”被FC-EDC所检测。
6)通道A、B和C中的所有1-1-1比特差错都通过“构造”被FC-EDC所检测。
7)所关注的另一个差错模式是“梯形”模式中的四个1比特差错-两个连续字符的同一通道中的两个1比特差错,以及同一字符的两个其他通道中的每一个中的两个1比特差错。虽然当在一个通道的两个连续字符中存在物理干扰时该差错可能由Schlaefli解码所导致,但是它并不总是被FC-EDC所检测。但是,在选择奇偶校验矩阵时,希望至少能够使不可检测的梯形差错模式的数目最小化。为了帮助理解,包括了图12,该图示出了根据本技术的一个方面的示例性梯形差错。
现在参考图13,如上所述,通过“构造”经由FC-EDC来检测差错指的是使用程序或奇偶校验矩阵生成组件1302来搜索具有旋转属性的可能的奇偶校验矩阵的集合。在操作中,该奇偶校验矩阵生成组件1302可以搜索具有旋转属性的矩阵,直到定位到具有所需的差错检测属性的矩阵(或者矩阵集合)。对于针对具有11个数据比特和5个校验比特的扩展汉明码的11个奇偶校验矩阵数据列的给定集合,以及对于这些列到图6中的FC-BaseT传送的字符、通道和符号的给定映射,可能存在11!/2或者说19,958,400个具有旋转属性的可能的33比特宽的奇偶校验矩阵。
现在转到对差错模式的频率的讨论,应当理解,某些差错模式可能出现得比其他的更频繁。为了帮助讨论差错模式的频率,考虑以下的表4,该表示出了针对一个符号的三个比特的格雷码到自然码映射:
格雷码 自然码
---------------------
S2 S1 S0 A2 A1 A0
0 0 0 0 0 0
0 0 1 0 0 1
0 1 1 0 1 0
0 1 0 0 1 1
1 1 0 1 0 0
1 1 1 1 0 1
1 0 1 1 1 0
1 0 0 1 1 1
表4
“小”物理差错具有将表的一行中的符号值移动到它的上一行或下一行的效果。考虑此表的结构,只存在一个能够导致格雷比特S2被错误解码的“小”物理差错-第四和第五行之间的移动。存在两个可能导致格雷比特S1被错误解码的“小”物理差错-第二和第三行之间或者第六和第七行之间。同样,存在四个可能导致格雷比特S0被错误解码的“小”物理差错。
在评估可能的奇偶校验矩阵时可以考虑这些差错模式的频率。例如,考虑特定的差错模式,例如先前提到的4比特“梯形”差错模式。不可能仅利用五个校验比特来构造一个检测所有可能的“梯形”差错模式的代码(例如,某些将不被检测到)。
当评估不同的奇偶校验矩阵的适当性时,可以对列进行布置以使不被检测到的差错模式的数目最小化。例如,假定存在与不可检测的4比特梯形模式差错相对应的四个奇偶校验矩阵列的一个集合。如果所有这四个列在其各自的传送符号中都对应于格雷比特S0,则这些符号中的每一个将可能通过四种方式被“小”物理差错所破坏,并且对于该梯形模式将总共有4*4*4*4=256种不同的得到未检测到的差错的方式。
另一方面,如果这四个奇偶校验矩阵列在其各自的传送符号中对应于格雷比特S2,则这些符号中的每一个将只能通过一种方式被“小”物理差错所破坏,并且对于该梯形模式总共有1*1*1*1或者说只有一种得到未检测到的差错的方式。
因而,当奇偶校验矩阵生成组件1302(或者程序)找到不可检测的差错模式时,它不是简单地将其计为一个不可检测的差错。更确切地说,它 基于该差错模式中涉及的符号比特的“差错权重”来计算能够看到差错模式的方式的数目。对于符号比特S0、S1和S2,权重分别是4、2和1。差错可能发生的方式的数目被计算为所有涉及到的位置的权重的乘积。对于所有未检测到的差错模式,奇偶校验矩阵生成组件1302挑选使得这些乘积的和最小化的奇偶校验矩阵。
程序1302检查具有先前描述的“旋转”属性的奇偶校验矩阵的所有置换,并且判定它们是否检测到了与所述标准匹配的所有差错。有11!/2或者说19,958,400个奇偶校验矩阵要分析,其被计算为二项式系数“11选9”的值-从11个可能的列值中选择9个列值,并且分配给与第一字符中的通道A、B和C相对应的9个奇偶校验矩阵列位置;其余的值通过“旋转”确定。“旋转”操作避免了糟糕得多的组合激增。注意,不失一般性,与通道D相对应的列被设定为5个校验比特列,加上与控制/数据比特相对应的一列00000,该一列未被校验。注意,不利用FC-EDC来对控制/数据比特进行校验之所以合理是因为只存在两种可能性,而这两种可能性都不会受益于这样的校验:(1)比特是作为0被发送的,表明是数据字,但却是作为1被接收的;在这种情况下接收到的数据将被解释为控制字,其中FC-EDC指示差错的机率是31/32,以及(2)比特是作为1被发送的,表明是控制字,但却是作为0被接收的;在这种情况下,控制字将被忽略,并且将转而被认为是数据流的一部分,其中差错可以由数据流的CRC差错检测码来检测,而这不是本公开的主题。
在对于distance-4扩展汉明码使用“标准”列值的情况下,没有奇偶校验矩阵具有所有所需的差错检测属性。但是,可以对起始的列值进行微小的额外“调节”。具体地,从包括某些校验比特列和某些数据比特列在内的某些列中丢弃整体奇偶校验比特(例如,15比特宽扩展汉明码奇偶校验矩阵的最后一行)。另一方面,这么做使得代码丧失了检测所有的3比特差错的能力,但是在许多情况下都是可接受的,因为Schlaefli解码避免了大多数的3比特差错。例如,稍后示出的代码将不会检测字符S0、通道C中的3比特差错,但该差错被Schlaefli解码所避免。作为回报,这样做产生了更多的得出具有所有其他所需差错检测属性的奇偶校验矩阵的机 会。
可以通过考虑4比特差错来理解这种修正能够起作用的一个原因。如果奇偶校验矩阵的最后一行中的所有比特都是1,则奇偶校验矩阵的该行永远不会检测到4比特差错,因为四个1的异或是0,从而使得校验子的该位置中为0。但是,当该行中的某些比特为0时,那么某些4比特差错模式将使得它们的1中的一个处于相应列中,因而只有三个1将被异或,从而在校验子中产生1,因此产生可检测的差错。
根据这里所述的程序1302的操作,可以使用一个过程来选择作为替换的起始列值,其中最后一行的比特被设定为1或不被设定为1。程序1302可用于验证该选择是否改进了结果。应当明白,可以使用一个手工过程来选择将要应用到程序1302的作为替换的起始列值,并且该手工过程在此情况下可以产生适当的结果;例如,可以测试起始列值的少于十二个不同的组合,以得出适当的结果。或者,可以增强程序1302以自动地选择作为替换的起始列值。
基于前述的差错检测标准,程序1302可以用于定位符合所述的差错检测标准的2个奇偶校验矩阵,同时还使梯形模式差错的数目最小化;其中之一的程序输出在以下表5中示出:
4011个差错,w=26:12,24,20,23,27,15,6,10,30,28,1819958400
最佳的11比特奇偶校验矩阵数据列(col[10]...col[0]):
0 1 1 1 1 0 0 0 1 1 1
1 1 0 0 1 1 0 1 1 1 0
1 0 1 1 0 1 1 0 1 1 0
0 0 0 1 1 1 1 1 1 0 1
0 0 0 1 1 1 0 0 0 0 0
表5
33比特奇偶校验矩阵(p[32]...p[0])在以下的表6中示出:
0,16,12,24,20,23,27,15,6,10,30,8,4,23,27,15,6,10,30,12,24,20, 2,1,6,10,30,12,24,20,23,27,15
0 1 0 1 1 1 1 0 0 0 1 0 0 1 1 0 0 0 1 0 1 1 0 0 0 0 1 0 1 1 1 1 0
0 0 1 1 0 0 1 1 0 1 1 1 0 0 1 1 0 1 1 1 1 0 0 0 0 1 1 1 1 0 0 1 1
0 0 1 0 1 1 0 1 1 0 1 0 1 1 0 1 1 0 1 1 0 1 0 0 1 0 1 1 0 1 1 0 1
0 0 0 0 0 1 1 1 1 1 1 0 0 1 1 1 1 1 1 0 0 0 1 0 1 1 1 0 0 0 1 1 1
0 0 0 0 0 1 1 1 0 0 0 0 0 1 1 1 0 0 0 0 0 0 0 1 0 0 0 0 0 0 1 1 1
表6
以上的11列矩阵(表5)具有未旋转的“数据”列,其中列0和1未使用,列2至列10被用于填充对实际的33比特传送进行校验的33列矩阵(表6)。列p[32]...p[0]与上述图10中的比特具有相同的编号。
输出的第一行中提及的“4011个差错”是如上所述的未被检测到的梯形模式差错。先前所述的其他模式类型,例如字符内的类型1-4和单个通道内的类型1-6,可以被检测。输出的第一行中的记号“w=26”表明11比特奇偶校验矩阵的列2至列10中具有26个1,这可以作为实现相应电路的成本的度量,也就是所需的异或门输入的数目的度量。在具有相等的差错检测能力的奇偶校验矩阵中,选择成本最低的是尤其有帮助的。
由逗号分隔的11和33个十进制数只是11比特和33比特奇偶校验矩阵的另一种表示-矩阵列的十进制值。
图14示出了根据本说明书的一个方面建立奇偶校验矩阵的方法。虽然出于简化说明的目的,这里示出的例如采取流程图形式的一个或多个方法被示出和描述为一系列动作,但是应当理解和明白,本公开并不受动作顺序所限,因为根据本技术,某些动作可以按不同的顺序发生和/或与这里示出和描述的其他动作同时发生。例如,本领域的技术人员将会理解和明白,一种方法也可以被表示为一系列相互关联的状态或事件,例如采取状态图的形式。另外,实现根据本技术的方法并不需要所有示出的动作。
根据该过程流,在一个方面中,在1402,可以选择作为替换的起始列值。接下来,在1404,可以生成11个起始列值的置换。基于当前置换,在1406可以建立33比特宽的奇偶矩阵。
在1408,该程序接下来可以针对当前奇偶校验矩阵确定未被检测的差错模式的数目。如果当前置换和相关联的未被检测的差错模式的数目到目前为止是最佳的,那么在1410该信息可被记录。如1412处的判决块所示,可以判定是否生成了所有置换。如果不是,则过程返回到1404,以生成额外的置换。另一方面,如果在1412已经生成了所有置换,则可以呈现(例如显示)33比特宽奇偶校验矩阵和未检测到的差错模式的相应数目以及最佳置换的值。
应当理解和明白,该计算机实现的程序和软件(例如矩阵生成程序)可以实现在标准的计算机体系结构内。虽然以上已经在可以运行于一个或多个计算机上的计算机可执行指令的一般上下文中描述了本公开的某些方面,但是本领域的技术人员将会认识到,本技术也可与其他程序模块结合实现和/或作为硬件和软件的组合实现。
一般来说,程序模块包括执行特定的任务或实现特定的抽象数据类型的例程、程序、组件、数据结构等等。另外,本领域的技术人员将会明白,本发明的方法可以利用其他计算机系统配置来实现,所述其他计算机系统配置包括单处理器或多处理器计算机系统、微型计算机、大型计算机、以及个人计算机、手持式计算设备、基于微处理器或可编程的消费者电子设备等等,其中每一个都可操作地耦合到一个或多个相关联的设备。
所示出的本公开的方面也可以实现在分布式计算环境中,在这些环境中,某些任务是由通过通信网络来链接的远程处理设备执行的。在分布式计算环境中,程序模块可以位于本地和远程存储器存储设备中。
图15示出了根据本说明书的一个方面用于发送(例如1502-1508)和接收控制块并检测差错(例如1510-1518)的方法。在1512,访问33比特块。在1504,判定该块是否是控制块。如果该块被判定为控制块,则从输入的数据比特生成校验比特。更具体而言,27个输入的数据比特可用来根据所选择的奇偶校验矩阵生成5个校验比特。在一个方面中,该校验比特生成可以利用图8的编码器来完成。
33比特块可以被发送并在另一位置处被接收(例如1508、1510)。在1512,可以判定接收到的块是否是控制块。如果在1512判定为控制 块,则在1514可以生成5比特校验子。更具体而言,可以使用解码器(例如图9)来为接收到的控制块生成5比特差错校验子。最后,可以在1506判定该校验子是否是非零值。如果校验子非零,则在1518可以作出发生了差错的声明。
以上描述的内容包括本技术的示例。当然不可能为了描述本公开而描述组件或方法的每一个可设想到的组合,但是本领域的普通技术人员可以认识到,本发明的许多其他的组合和置换是可能的。因此,希望本技术包括落在所附权利要求的精神和范围之内的所有变更、修正和变化。另外,就详细描述部分或权利要求中使用的术语“包括(includes)”而言,希望这样的术语的包含方式类似于术语“包括(comprising)”在用作权利要求中的过渡词时所被解释为的包含方式。
Claims (10)
1.一种差错检测方法,包括:
利用可旋转的奇偶校验矩阵来检测在多个通道中的第一通道上传送的符号中的第一差错;
旋转所述奇偶校验矩阵的多个数据比特列,以便所述奇偶校验矩阵中的不同列值被用于保护在所述第一通道中传送的额外符号,旋转动作包括在一通道中将所述奇偶校验矩阵的多个数据比特列旋转多个比特位置,从而当所述矩阵被应用到后续的传送字符时,该通道中的所有列与该通道中结合先前的传送字符所使用的列相比都是独特的;以及
利用旋转后的奇偶校验矩阵来检测在所述第一通道中传送的第二符号中的第二差错。
2.如权利要求1所述的方法,检测第一差错和检测第二差错的动作包括建立非零的校验子。
3.如权利要求1所述的方法,还包括生成具有可旋转属性的奇偶校验矩阵。
4.如权利要求2所述的方法,生成所述奇偶校验矩阵的动作包括:
选择多个列值;
生成所述列值的子集的置换;
基于所述置换生成矩阵;
针对所述矩阵确定未被检测到的差错模式的数目;以及
记录所述未被检测到的差错模式的数目。
5.一种帮助对多字符、多通道、多级别物理传送进行差错检测的系统,包括:
用于使用可旋转的奇偶校验矩阵来检测所传送的通道中的字符中的差错的装置;
用于通过旋转所述奇偶校验矩阵中的多个数据比特列来建立经修正的奇偶校验矩阵的装置,所述经修正的奇偶校验矩阵检测所传送的通道中的后续字符中的差错;以及
用于为三个字符生成三个独立的5比特校验符号的装置,所述符号被按位异或以产生单个5比特校验符号,该单个5比特校验符号对应于33比特控制块并且允许对隔离到单个11比特字符的3比特差错进行检测。
6.如权利要求5所述的系统,还包括用于生成包括可旋转属性的奇偶校验矩阵的装置。
7.如权利要求6所述的系统,还包括用于对标准distance-4奇偶校验矩阵的修正和置换进行测试的装置。
8.如权利要求5所述的系统,还包括用于使用所述经修正的奇偶校验矩阵来检测所传送的通道中的不同字符中的后续差错的装置。
9.如权利要求5所述的系统,还包括用于将标准distance-3和标准distance-4汉明码中的至少一个映射到具有三个字符的33比特控制块的比特的装置。
10.如权利要求5所述的系统,所述字符是11比特字符。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310187891.1A CN103354457B (zh) | 2006-05-09 | 2007-05-01 | 数据传送系统 |
Applications Claiming Priority (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US79892606P | 2006-05-09 | 2006-05-09 | |
US60/798,926 | 2006-05-09 | ||
US11/467,236 | 2006-08-25 | ||
US11/467,236 US7657821B1 (en) | 2006-05-09 | 2006-08-25 | Error detecting code for multi-character, multi-lane, multi-level physical transmission |
PCT/US2007/067964 WO2007133937A2 (en) | 2006-05-09 | 2007-05-01 | Error detecting code for multi-character, multi-lane, multi-level physical transmission |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201310187891.1A Division CN103354457B (zh) | 2006-05-09 | 2007-05-01 | 数据传送系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101454982A CN101454982A (zh) | 2009-06-10 |
CN101454982B true CN101454982B (zh) | 2013-06-19 |
Family
ID=38694598
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2007800168937A Expired - Fee Related CN101454982B (zh) | 2006-05-09 | 2007-05-01 | 数据传送系统、差错检测方法和帮助差错检测的系统 |
CN201310187891.1A Expired - Fee Related CN103354457B (zh) | 2006-05-09 | 2007-05-01 | 数据传送系统 |
Family Applications After (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201310187891.1A Expired - Fee Related CN103354457B (zh) | 2006-05-09 | 2007-05-01 | 数据传送系统 |
Country Status (4)
Country | Link |
---|---|
US (2) | US7657821B1 (zh) |
EP (1) | EP2016678B1 (zh) |
CN (2) | CN101454982B (zh) |
WO (1) | WO2007133937A2 (zh) |
Families Citing this family (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7657821B1 (en) * | 2006-05-09 | 2010-02-02 | Cisco Technology, Inc. | Error detecting code for multi-character, multi-lane, multi-level physical transmission |
DE102009032275A1 (de) * | 2009-07-08 | 2011-01-13 | Siemens Aktiengesellschaft | Beschleunigeranlage und Verfahren zur Einstellung einer Partikelenergie |
US8761285B2 (en) | 2012-02-22 | 2014-06-24 | Cisco Technology, Inc. | Application-aware dynamic bit-level error protection for modulation-based communication |
US9252968B2 (en) * | 2012-06-22 | 2016-02-02 | Intel Corporation | Link training and training frame for 100GBPS ethernet |
US9112722B2 (en) | 2012-11-29 | 2015-08-18 | Intel Corporation | PMA-size training frame for 100GBASE-KP4 |
US9407547B2 (en) | 2013-12-13 | 2016-08-02 | Cisco Technology, Inc. | Fibre channel over ethernet (FCoE) over virtual port channel (vPC) |
US10361721B1 (en) | 2014-05-01 | 2019-07-23 | Marvell International Ltd. | Methods and network device for uncoded bit protection in 10GBASE-T Ethernet |
US9842020B2 (en) | 2014-11-26 | 2017-12-12 | Qualcomm Incorporated | Multi-wire symbol transition clocking symbol error correction |
WO2019145021A1 (en) * | 2018-01-23 | 2019-08-01 | Huawei Technologies Co., Ltd. | Channel code construction for decoder reuse |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4601044A (en) * | 1983-11-04 | 1986-07-15 | Racal Data Communications Inc. | Carrier-phase adjustment using absolute phase detector |
US6633856B2 (en) * | 2001-06-15 | 2003-10-14 | Flarion Technologies, Inc. | Methods and apparatus for decoding LDPC codes |
US6789227B2 (en) * | 2001-07-05 | 2004-09-07 | International Business Machines Corporation | System and method for generating low density parity check codes using bit-filling |
Family Cites Families (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6895547B2 (en) * | 2001-07-11 | 2005-05-17 | International Business Machines Corporation | Method and apparatus for low density parity check encoding of data |
US7178080B2 (en) * | 2002-08-15 | 2007-02-13 | Texas Instruments Incorporated | Hardware-efficient low density parity check code for digital communications |
KR100996029B1 (ko) * | 2003-04-29 | 2010-11-22 | 삼성전자주식회사 | 저밀도 패리티 검사 코드의 부호화 장치 및 방법 |
KR100809619B1 (ko) * | 2003-08-26 | 2008-03-05 | 삼성전자주식회사 | 이동 통신 시스템에서 블록 저밀도 패러티 검사 부호부호화/복호 장치 및 방법 |
KR100955952B1 (ko) * | 2003-10-13 | 2010-05-19 | 삼성전자주식회사 | 무선 통신 시스템에서 리프팅 저밀도 패러티 검사 부호를이용한 시공간 부호화 방법 및 장치 |
US7260763B2 (en) | 2004-03-11 | 2007-08-21 | Nortel Networks Limited | Algebraic low-density parity check code design for variable block sizes and code rates |
KR101065693B1 (ko) * | 2004-09-17 | 2011-09-19 | 엘지전자 주식회사 | Ldpc 코드를 이용한 부호화, 복호화 방법 및 부호화또는 복호화를 위한 ldpc 코드 생성 방법 |
US7536629B2 (en) * | 2005-01-10 | 2009-05-19 | Broadcom Corporation | Construction of LDPC (Low Density Parity Check) codes using GRS (Generalized Reed-Solomon) code |
DE602006011240D1 (de) * | 2005-06-21 | 2010-02-04 | Samsung Electronics Co Ltd | Vorrichtung und Methode zum Übermitteln/Empfangen von Daten in einem Mehrantennenkommunikationssystem unter Verwendung eines strukturierten Low Density Parity Check (LDPC) Codes |
KR100809616B1 (ko) * | 2005-10-19 | 2008-03-05 | 삼성전자주식회사 | 가변 블록 길이를 가지는 블록 저밀도 패리티 검사 부호부호화/복호 장치 및 방법 |
US7657821B1 (en) | 2006-05-09 | 2010-02-02 | Cisco Technology, Inc. | Error detecting code for multi-character, multi-lane, multi-level physical transmission |
US7801200B2 (en) * | 2006-07-31 | 2010-09-21 | Agere Systems Inc. | Systems and methods for code dependency reduction |
-
2006
- 2006-08-25 US US11/467,236 patent/US7657821B1/en active Active
-
2007
- 2007-05-01 WO PCT/US2007/067964 patent/WO2007133937A2/en active Application Filing
- 2007-05-01 EP EP07761703.3A patent/EP2016678B1/en not_active Not-in-force
- 2007-05-01 CN CN2007800168937A patent/CN101454982B/zh not_active Expired - Fee Related
- 2007-05-01 CN CN201310187891.1A patent/CN103354457B/zh not_active Expired - Fee Related
-
2009
- 2009-12-28 US US12/648,094 patent/US8650454B2/en active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4601044A (en) * | 1983-11-04 | 1986-07-15 | Racal Data Communications Inc. | Carrier-phase adjustment using absolute phase detector |
US6633856B2 (en) * | 2001-06-15 | 2003-10-14 | Flarion Technologies, Inc. | Methods and apparatus for decoding LDPC codes |
US6789227B2 (en) * | 2001-07-05 | 2004-09-07 | International Business Machines Corporation | System and method for generating low density parity check codes using bit-filling |
Also Published As
Publication number | Publication date |
---|---|
EP2016678A2 (en) | 2009-01-21 |
WO2007133937A2 (en) | 2007-11-22 |
US8650454B2 (en) | 2014-02-11 |
CN103354457B (zh) | 2017-04-12 |
US20100100796A1 (en) | 2010-04-22 |
CN101454982A (zh) | 2009-06-10 |
WO2007133937A3 (en) | 2008-11-20 |
CN103354457A (zh) | 2013-10-16 |
EP2016678A4 (en) | 2012-07-18 |
US7657821B1 (en) | 2010-02-02 |
EP2016678B1 (en) | 2013-07-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101454982B (zh) | 数据传送系统、差错检测方法和帮助差错检测的系统 | |
US4486882A (en) | System for transmitting binary data via a plurality of channels by means of a convolutional code | |
EP0031183B1 (en) | Multi-processor computer system | |
US5856987A (en) | Encoder and decoder for an SEC-DED-S4ED rotational code | |
US5938773A (en) | Sideband signaling with parity bit schemes | |
US5878061A (en) | Providing serial data clock signal transitions with parity bits | |
JP2732862B2 (ja) | データ伝送試験装置 | |
US5077743A (en) | System and method for decoding of convolutionally encoded data | |
US6961891B2 (en) | High-efficiency error detection and/or correction code | |
RU51428U1 (ru) | Отказоустойчивый процессор повышенной достоверности функционирования | |
Dugar et al. | A survey on Hamming codes for error detection | |
RU2637426C1 (ru) | Устройство хранения и передачи данных с обнаружением ошибок | |
JP2003283341A (ja) | 線形ブロック符号に従って符号化されたデータを訂正するための装置 | |
Seguin et al. | A class of high rate codes for byte-oriented information systems | |
JPH03154521A (ja) | 軟判定復号情報出力機能付ビタビ復号器 | |
US20020013919A1 (en) | Integrated circuit that is robust against circuit errors | |
RU2297030C2 (ru) | Самокорректирующееся устройство хранения информации | |
RU44201U1 (ru) | Отказоустойчивое запоминающее устройство | |
RU169207U1 (ru) | Устройство хранения и передачи данных с обнаружением ошибок | |
RU42684U1 (ru) | Самокорректирующееся запоминающее устройство | |
RU2297035C2 (ru) | Отказоустойчивое запоминающее устройство | |
RU42685U1 (ru) | Отказоустойчивое устройство | |
Slinko et al. | Error-Correcting Codes | |
KR100358353B1 (ko) | 러닝 디스패리티 에러 검출 장치 및 방법 | |
RU83859U1 (ru) | Отказоустойчивое устройство ускоренного умножения |
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 | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20130619 Termination date: 20210501 |