CN101355403A - 通用成帧协议中检错纠错的装置及其控制方法 - Google Patents
通用成帧协议中检错纠错的装置及其控制方法 Download PDFInfo
- Publication number
- CN101355403A CN101355403A CNA2008101397855A CN200810139785A CN101355403A CN 101355403 A CN101355403 A CN 101355403A CN A2008101397855 A CNA2008101397855 A CN A2008101397855A CN 200810139785 A CN200810139785 A CN 200810139785A CN 101355403 A CN101355403 A CN 101355403A
- Authority
- CN
- China
- Prior art keywords
- error
- output
- register
- module
- correction
- 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
Abstract
本发明公开了一种通用成帧协议中检错纠错的装置及其控制方法。该装置针对GFP帧中核心报头与净荷报头信息差错控制的问题,根据CRC-16的差错控制技术是GFP帧中核心报头与净荷报头信息差错控制的核心,针对基于CRC-16的单比特检错与纠错进行设计,提出了一种快速、高效、简捷的CRC-16纠错检错装置及其控制方法,该装置采用四个ROM、简单运算器以及三阶流水线寄存器的设计,使得纠错检错的过程十分简洁、并且该装置对硬件要求简单、适合于高速EoS系统。
Description
技术领域
本发明涉及一种通用成帧协议中检错纠错的装置及其控制方法。
背景技术
随着网络的迅猛发展,以IP业务为代表的数据报业务也取得了突飞猛进的发展,并在现在的网络业务中占据了主要市场。为了保证数据报在网络传播中的可靠性,我们采取了一些编码技术。其中,循环冗余校验CRC(Cyclic Redundancy Check,CRC)是最常用的一种编码技术。IP业务在进入同步数字体系SDH(Synchronous Digital Hierarchy,SDH)主干网传输之前,需要进行封装以解决主干网恒定速率与IP业务的突发性之间的矛盾。通用成帧协议GFP(Generic Framing Procedure,GFP)就是其中的一种封装技术。GFP帧是由核心报头和净荷组成。核心报头是由四个八比特组组成,其中前两个八比特组是净荷长度(Payload LengthIndicator,PLI),后两位是净荷长度的CRC-16差错校验码(cHEC)。在GFP接收端,对GFP帧进行帧定位的时候,需要对核心报头进行检错和单比特纠错。
实际中,对IP数据报进行GFP封装/解封装时,整个系统的处理速度要求很快,传统的串行处理是很难达到要求的。有一种快速CRC算法,可以得到CRC校验码,从而为后面的检错纠错准备数据。这种算法属于GFP帧捕获电路的一部分。假设GFP核心报头中PLI的值为a15a14a13...ai...a1a0,其中,ai(0≤i≤15)为二进制数0或1,其二进制多项式为:D(x)=a15x15+a14x14+L+a1x+a0。核心报头差错校验部分(cHEC)的生成多项式为:G(x)=x16+x12+x5+1。当初始化值为0时,可以得到计算CRC校验码的余式为:R(x)=re[x16D(x)/G(x)]。该式中,re[]为求余运算。进一步展开,可以得到下式:
R(x)=re[x16(a15x15)/G(x)]+re[x16(a14x14)/G(x)]+L+re[x16(aixi)/G(x)]+L+re[x16a0/G(x)]
当ai=0时,re[x16(aixi)/G(x)]=0;当ai=1时,re[x16(aixi)/G(x)]的值随着i的不同而不同;由于i的取值有16种可能,因而,re[x16(aixi)/G(x)]也有16种取值。这样可以通过查表,再经过模2加(异或)运算,就可以计算出PLI值的CRC校验码。
在GFP接收端进行差错检验时,要对16位的PLI值进行CRC校验(采用上述快速CRC算法),我们假设所获得的CRC校验码为Ccrc。同时,在接收到的GFP核心报头中,还有一个核心报头校验码,随数据一起传过来,属于GFP帧的一部分,即核心报头差错控制部分(cHEC),我们假设为Chec。比较Chec和Ccrc,如果二者相等,说明核心报头在传输中没有出错;如果不同,则表明核心报头在传输中出现了错误。当二者不匹配时,可能是核心报头中多位比特出现错误也有可能是其中的某一位出现错误。当某一位出现错误的时,这种错误又分为两种情况:一种是PLI值的某一位出现错误,另一种是核心报头校验码的某一位出现错误。如果PLI值的某一位出现了错误,还需要将这一位检测并纠正过来。如果是核心报头校验码的某一位出现了错误,只需要检测出来就可以了,并不需要纠正。
假设设 ,其中Ccrct为检错校验码。根据上述所的,当Chec和Ccrc二者相等时,检错校验码Ccrct的值应该为零;当Chec和Ccrc二者不相等时,检错校验码Ccrct的值不为零。
通过对快速CRC算法的分析可以得出,PLI值中的每一位都与检错校验码Ccrct中的某几位有关系。比如,PLI值的最低位(bit0)与检错校验码Ccrct中的bit0,bit5和bit12有关,如果PLI值的最低位(bit0)出现了跳变,那么检错校验码Ccrct中的bit0,bit5和bit12都会出现反转。这样,就可以总结出PLI值中各位出现错误后,检错校验码Ccrct中的哪几位会反转。则Ccrct与PLI值各位的关系如表1所示。
表1:Ccrct与PLI各位变化的关系(16进制表示)
PLI错误位 | Ccrct | PLI错误位 | Ccrct | PLI错误位 | Ccrct | PLI错误位 | Ccrct |
0 | 0x1021 | 4 | 0x1231 | 8 | 0x3331 | 12 | 0x0373 |
1 | 0x2042 | 5 | 0x2462 | 9 | 0x6662 | 13 | 0x06E6 |
2 | 0x4084 | 6 | 0x48C4 | 10 | 0xCCC4 | 14 | 0xDCC |
3 | 0x8108 | 7 | 0x9188 | 11 | 0x89A9 | 15 | 0x1B98 |
如果是核心报头校验码中的某一位出现了错误,那么Ccrct的值(只可能是2n,0≤n≤15)与核心报头校验码中错误的位相对应。例如,如果Ccrct的十六进制数为0001,即第1位(bit0)为1,则代表Chec的第1位(bit0)出现了错误;如果Ccrct的十六进制数为0400,即第11位(bit10)为1,那么Chec的第11位(bit10)出现了错误。
如果在核心报头出现了单比特错误,则 的值是各不相同的。例如,如果是PLI值的第8位(bit7)出现了错误,那么Ccrct的值是0x9188,如果要对PLI值进行纠错的话,只需要将PLI值与0x0080进行异或,就可以得到正确的PLI值
检错纠错电路的设计过程中纠错码的提取,采用查找表法。硬件实现选用ROM,把Ccrct当作寻址地址,ROM中存放的是纠错码。例如,当单比特错误出现在PLI值的bit7时,通过Ccrct值0x9188可以寻找到相应错误和纠错码,即0x0080。只要将PLI值与该纠错码进行异或运算,就可得到正确的PLI值,完成了单比特纠错。对于cHEC字段的错误,是可以忽略的。所以如果是cHEC字段的单比特错误或者多比特的错误,纠错码为0x0000。
综上所述,寻址地址Ccrct是16位二进制码,则要求ROM的大小应为65536×16,可见,硬件资源消耗太大。为了解决这一问题,有人提出了前八位进行寻址,则需要一个256×16的ROM。由此可见、对硬件资源的消耗依然很大。如果能够找到一种新的、更节省资源的方法,将会对通用成帧协议中检错纠错机制带来有益效果。
发明内容
本发明的目的就是为了解决目前的GFP帧中核心报头与净荷报头信息差错控制的问题,基于CRC-16的差错控制技术是GFP帧中核心报头与净荷报头信息差错控制的核心,针对基于CRC-16的单比特检错与纠错进行设计,提出了一种快速、高效、简捷的CRC-16纠错检错装置及其控制方法,该装置的系统设计思路简洁、硬件要求简单、适合于高速EoS系统。
为实现上述目的,本发明采用了如下技术方案:
通用成帧协议中检错纠错的装置,其特征在于:该装置包括检错模块和纠错模块;其中检错模块和纠错模块通过数据线连接;检错模块接收CRC校验码和核心报头校验码,输出纠错码和无差错指示信号,其中纠错码发送给纠错模块;纠错模块接收纠错码和净荷长度值PLI,输出纠错后正确的净荷长度值PLI以及单比特差错信号。
所述检错模块包括异或运算器A、输入寄存器、无差错检查模块、四个ROM、流水线寄存器、与运算器、输出寄存器;其中,异或运算器A与输入寄存器连接;无差错检查模块和四个ROM同时与输入寄存器和流水线寄存器进行连接;与运算器连接流水线寄存器和输出寄存器;输出寄存器和流水线寄存器连接。
所述纠错模块包括延时模块、异或运算器B以及单比特检错模块;其中,异或运算器B与输出寄存器和延时模块连接;输出寄存器和单比特检错模块连接。
所述异或运算器A接收CRC校验码和核心报头校验码,异或运算器A的输出端与输入寄存器连接,输出检错校验码。
所述输入寄存器的输出端与无差错检查模块以及四个ROM连接;无差错检查模块以及四个ROM的输出端与流水线寄存器连接。
所述流水线寄存器的纠错码输出端连接到与运算器;流水线寄存器的无差错指示信号输出端连接到输出寄存器;与运算器的纠错码输出端与输出寄存器连接。
所述输出寄存器的纠错码输出端与异或运算器B和单比特检错模块连接;输出寄存器输出无差错指示信号;单比特检错模块输出单比特差错信号。
所述异或运算器B与延时模块的输出端连接。
所述输入寄存器、流水线寄存器、输出寄存器组成三阶流水线。
所述的通用成帧协议中检错纠错的装置的控制方法,该控制方法包括以下步骤:
Step1:在GFP接收端将核心报头中净荷长度值PLI和核心报头校验码Chec分别发送给延时模块和异或运算器A,并将由净荷长度值PLI计算所得出的CRC校验码Ccrc发送给异或运算器A;
Step2:异或运算器A将核心报头校验码Chec和CRC校验码Ccrc进行异或运算,得到检错校验码Ccrct,并将检错校验码Ccrct发送给输入寄存器;
Step3:输入寄存器将检错校验码Ccrct分成四个独立的寻址地址,分别发送给四个ROM;同时输入寄存器将检错校验码Ccrct发送给无差错检查模块;
Step4:无差错检查模块检测有无比特错误,产生无差错指示信号,并将无差错指示信号传送给流水线寄存器;同时四个ROM根据寻址地址,采用查找表法产生四个纠错码,并将纠错码传送给流水线寄存器;
Step5:流水线寄存器将四个纠错码发送给与运算器,与运算器将四个纠错码进行与运算后得到纠错码,并将纠错码发送给输出寄存器;同时流水线寄存器将无差错指示信号发送给输出寄存器;
Step6:输出寄存器将纠错码分别发送给异或运算器B和单比特检错模块;
Step7:异或运算器B将纠错码与经过延时模块处理过的净荷长度值PLI进行异或运算,输出正确的净荷长度值PLI;同时,单比特检错模块对纠错码进行判断,输出单比特错误信号;
Step8:该检错纠错的装置将无差错指示信号和单比特错误信号传送给控制帧定位装置状态的控制器。
本发明设计的通用成帧协议中检错纠错的装置,包括输入寄存器、流水线寄存器、输出寄存器、与运算器、四个ROM、两个异或运算器、单比特检错模块、无差错检查模块以及延时模块;其中,异或运算器A与输入寄存器连接;无差错检查模块和四个ROM都与输入寄存器和流水线寄存器进行连接;与运算器连接流水线寄存器和输出寄存器;输出寄存器和流水线寄存器连接;异或运算器B与输出寄存器和延时模块连接;输出寄存器和单比特检错模块连接。输入寄存器、流水线寄存器、输出寄存器组成三阶流水线;无差错检查模块和单比特检错模块产生无差错指示信号和单比特错误信号。
本发明在表1的数据的基础上,对纠错码的提取,采用查找表法。硬件实现选用ROM,把Ccrct当作寻址地址,ROM中存放的是纠错码。寻址地址Ccrct是16位二进制码,该装置选用了四个16×16的ROM。这样,每个的寻址地址为4位,也就是将Ccrct分成四个独立的寻址地址。ROM_1的寻址地址是Ccrct[3:0],即Ccrct的第1到4位;ROM_2的寻址地址是Ccrct[7:4],即Ccrct的第4到8位;ROM_3的寻址地址是Ccrct[11:8],即Cctct的第9到12位;ROM_4的寻址地址是Ccrct[15:12],即Ccrct的第13到16位。最后,把从ROM中得到的纠错码相与,这样就得到了最终的纠错码。以下是各ROM内的纠错码列表:
表2:四个16×16ROM的寻址信息(16进制表示)
ROM_1地址 | 纠错信息 | ROM_2地址 | 纠错信息 | ROM_3地址 | 纠错信息 | ROM_4地址 | 纠错信息 |
0000 | 0x0000 | 0000 | 0x0008 | 0000 | 0x0007 | 0000 | 0x7000 |
0001 | 0x0111 | 0001 | 0x0000 | 0001 | 0x0088 | 0001 | 0x8011 |
0010 | 0x0222 | 0010 | 0x0001 | 0010 | 0x0010 | 0010 | 0x0022 |
0011 | 0x1000 | 0011 | 0x0110 | 0011 | 0x0010 | 0011 | 0x0100 |
0100 | 0x0444 | 0100 | 0x0002 | 0100 | 0x0020 | 0100 | 0x0044 |
0101 | 0x0000 | 0101 | 0x0000 | 0101 | 0x0000 | 0101 | 0x0000 |
0110 | 0x2000 | 0110 | 0x0220 | 0110 | 0x2200 | 0110 | 0x0200 |
0111 | 0x0000 | 0111 | 0x1000 | 0111 | 0x0000 | 0111 | 0x0000 |
1000 | 0x8088 | 1000 | 0x0084 | 1000 | 0x0040 | 1000 | 0x0808 |
1001 | 0x0800 | 1001 | 0x8000 | 1001 | 0x0800 | 1001 | 0x0080 |
1010 | 0x0000 | 1010 | 0x0800 | 1010 | 0x0000 | 1010 | 0x0000 |
1011 | 0x0000 | 1011 | 0x0000 | 1011 | 0x0800 | 1011 | 0x0000 |
1100 | 0x4000 | 1100 | 0x4440 | 1100 | 0x0400 | 1100 | 0x0400 |
1101 | 0x0000 | 1101 | 0x0000 | 1101 | 0x4000 | 1101 | 0x0000 |
1110 | 0x0000 | 1110 | 0x2000 | 1110 | 0x0000 | 1110 | 0x0000 |
1111 | 0x0000 | 1111 | 0x0000 | 1111 | 0x0000 | 1111 | 0x0000 |
上表中纠错码的确定与表1的原理一样,不过由于寻址地址的限制,使得纠错码较为复杂。通常,可以通过将四个ROM的纠错码进行相与,则可以求出最终的纠错码。这样,将对ROM的需求量从65536×16减小到16×16,大大节省了资源。
本发明的有益效果是:
1、本发明对传统的以逻辑电路为主的GFP检错纠错模块在架构上进行了创新,采用了只读存储器来实现设计,并且对纠错码提取采用了分布式并行计算的方式。
2、本发明适应了GFP高速数据率的应用场合,可以工作在较高的频率上,通过在XilinxVertexII Pro XC2VP40系列的FPGA实现,可以得到该模块可以工作在274MHz的频率上,可以满足工作需求。
3、本发明整个设计摆脱了传统的复杂逻辑电路设计,使得电路结构简单,占用面积较少,在Xilinx VertexII Pro XC2VP40系列的FPGA实现结果表明,本装置只占用了该FPGA19392个Slice中的61个,从而达到节省芯片成本的作用。
4、本发明由于采用了4个16×16只读存储器的分布式存储方式,这种方式比只采用一个大的等存储量(16×64)的只读存储器在功耗上要降低70%,而且由分布式带来的逻辑电路十分简单,仅是与门逻辑,并采用了流水线结构,截断了长的数据路径,降低了时钟周期内的充放电电容,从而使得其工作电压可以降低。所以,本发明的功耗也是非常低。这些特点都可以降低整个GFP芯片或者EOS芯片的成本,提高产品在市场上的竞争力。
说明书附图
图1为本发明的硬件结构示意图。
其中,1、异或运算器A;2、输入寄存器;3、无差错检查模块;4、ROM;5、流水线寄存器;6、与运算器;7、输出寄存器;8、延时模块;9、异或运算器B;10、单比特纠错模块。
具体实施方式
下面结合附图与实施例对本发明作进一步说明。
在图1中,通用成帧协议中检错纠错的装置,该装置包括输入寄存器2、流水线寄存器5、输出寄存器7、与运算器6、四个ROM4、异或运算器A1、异或运算器B9、单比特检错模块10、无差错检查模块3以及延时模块8;其中,异或运算器A1与输入寄存器2连接;无差错检查模块3和四个ROM4都与输入寄存器2和流水线寄存器5进行连接;与运算器6连接流水线寄存器5和输出寄存器7;输出寄存器7和流水线寄存器5连接;异或运算器B9与输出寄存器7和延时模块8连接;输出寄存器7和单比特检错模块10连接。
所述异或运算器A1接收CRC校验码和核心报头校验码,异或运算器A1的输出端与输入寄存器2连接,输出检错校验码。
所述输入寄存器2的输出端与无差错检查模块3以及四个ROM4连接;无差错检查模块3以及四个ROM4的输出端与流水线寄存器5连接。
所述流水线寄存器5的纠错码输出端连接到与运算器6;流水线寄存器5的无差错指示信号输出端连接到输出寄存器7;与运算器6的纠错码输出端与输出寄存器7连接。
所述输出寄存器7的纠错码输出端与异或运算器B9和单比特检错模块连接;输出寄存器输出无差错指示信号;单比特检错模块输出单比特差错信号。
所述异或运算器B9与延时模块8的输出端连接。
所述输入寄存器2、流水线寄存器5、输出寄存器7组成三阶流水线。
该控制方法包括以下步骤:
Step1:在GFP接收端将核心报头中净荷长度值PLI和核心报头校验码Chec分别发送给延时模块8和异或运算器A1,并将由净荷长度值PLI计算所得出的CRC校验码Ccrc发送给异或运算器A1;
Step2:异或运算器A1将核心报头校验码Chec和CRC校验码Ccrc进行异或运算,得到检错校验码Ccrct,并将检错校验码Ccrct发送给输入寄存器2;
Step3:输入寄存器2将检错校验码Ccrct分成四个独立的寻址地址,分别发送给四个ROM4;同时输入寄存器2将检错校验码Ccrct发送给无差错检查模块3;
Step4:无差错检查模块3检测有无比特错误,产生无差错指示信号,并将无差错指示信号传送给流水线寄存器5;同时四个ROM4根据寻址地址,采用查找表法产生四个纠错码,并将纠错码传送给流水线寄存器5;
Step5:流水线寄存器5将四个纠错码发送给与运算器6,与运算器6将四个纠错码进行与运算后得到纠错码,并将纠错码发送给输出寄存器7;同时流水线寄存器5将无差错指示信号发送给输出寄存器7;
Step6:输出寄存器7将纠错码分别发送给异或运算器B9和单比特检错模块10;
Step7:异或运算器B9将纠错码与经过延时模块8处理过的净荷长度值PLI进行异或运算,输出正确的净荷长度值PLI;同时,单比特检错模块10对纠错码进行判断,输出单比特错误信号。
Step8:该检错纠错的装置将无差错指示信号和单比特错误信号传送给控制帧定位装置状态的控制器。
本发明设计过程中对纠错码的提取,采用查找表法。硬件实现选用ROM,把Ccrct当作寻址地址,ROM中存放的是纠错码。寻址地址Ccrct是16位二进制码,该装置选用了四个16×16的ROM。这样,每个的寻址地址为4位,也就是将Ccrct分成四个独立的寻址地址。ROM_1的寻址地址是Ccrct[3:0],即Ccrct的第1到4位;ROM_2的寻址地址是Ccrct[7:4],即Ccrct的第4到8位;ROM_3的寻址地址是Ccrct[11:8],即Ccrct的第9到12位;ROM_4的寻址地址是Ccrct[15:12],即Ccrct的第13到16位。最后,把从ROM中得到的纠错码相与,这样就得到了最终的纠错码。
例如,如果PLI值的第8位(bit7)出现了单比特错误,那么Ccrct的值是0x9188,那么它在ROM_1的寻址地址是1000,ROM_1反馈回来的纠错码是0x8088,表示可能出现PLI单比特错误的位数;同理,可得到ROM_2中的寻址地址是1000,纠错码是0x0084。ROM_3中的寻址地址是0001,纠错码是0x0088。ROM_4中的寻址地址是1001,纠错码是0x0080。这样,与运算器6将这四个纠错码相与,即得到最后的纠错码0x0080,其含义是核心报头PLI值的bit7出现了单比特错误,纠错码是0x0080。这个纠错码发送给异或运算器B,将经过延时模块处理过的PLI值与纠错码0x0080做异或运算,就能得到最终的正确的PLI值。
同时,由于Ccrct的值是0x9188,而且Ccrct的值会被发送给无差错检查模块。无差错检查模块对Ccrct进行判断后,发现核心报头中存在错误,就发送无差错指示信号“0”。随后无差错指示信号经过传输后,会被发送给控制帧定位装置状态的控制器。同时纠错码0x0080会被发送给单比特检错模块。单比特检错模块对纠错码进行判断后,会给控制帧定位装置状态的控制器发送单比特检错信号“1”。状态控制器会根据这两个信号进行装置状态的切换。
如果Chec和Ccrc二者相等时,检错校验码Ccrct的值应该为0x0000,并会被发送给无差错检查模块无差错检查模块对Ccrct进行判断后,发现核心报头没有错误,或者Ccrct有且仅有一位为1,即核心报头校验码有错误,就发送无差错指示信号“1”。随后无差错指示信号经过传输后,会被发送给控制帧定位装置状态的控制器。同时,Ccrct的值应该为0x0000会被发送给四个ROM并得到四个纠错码。与运算器6将这四个纠错码相与,即得到最后的纠错码0x0000,其含义是核心报头PLI值没有出现单比特错误。这个纠错码0x0000会被发送给异或运算器B,将经过延时模块处理过的PLI值与纠错码0x0000做异或运算,能得到与原PLI值相同的新的PLI值,作为最后正确的PLI值。同时,纠错码0x0000会被发送给单比特检错模块。单比特检错模块对纠错码进行判断后,会给控制帧定位装置状态的控制器发送单比特检错信号“0”。状态控制器会根据这两个信号进行装置状态的切换。
Claims (10)
1.通用成帧协议中检错纠错的装置,其特征在于:该装置包括检错模块和纠错模块;其中检错模块和纠错模块通过数据线连接;检错模块接收CRC校验码和核心报头校验码,输出纠错码和无差错指示信号,其中纠错码发送给纠错模块;纠错模块接收纠错码和净荷长度值PLI,输出纠错后正确的净荷长度值PLI以及单比特差错信号。
2.根据权利要求1所述的通用成帧协议中检错纠错的装置,其特征在于:所述检错模块包括异或运算器A(1)、输入寄存器(2)、无差错检查模块(3)、四个ROM(4)、流水线寄存器(5)、与运算器(6)、输出寄存器(7);其中,异或运算器A(1)与输入寄存器(2)连接;无差错检查模块(3)和四个ROM(4)同时与输入寄存器(2)和流水线寄存器(5)进行连接;与运算器(6)连接流水线寄存器(5)和输出寄存器(7);输出寄存器(7)和流水线寄存器(5)连接。
3.根据权利要求1所述的通用成帧协议中检错纠错的装置,其特征在于:所述纠错模块包括延时模块(8)、异或运算器B(9)以及单比特检错模块(10);其中,异或运算器B(9)与输出寄存器(7)和延时模块(8)连接;输出寄存器(7)和单比特检错模块(10)连接。
4.根据权利要求2所述的通用成帧协议中检错纠错的装置,其特征在于:所述异或运算器A(1)接收CRC校验码和核心报头校验码,异或运算器A(1)的输出端与输入寄存器(2)连接,输出检错校验码。
5.根据权利要求2或4所述的通用成帧协议中检错纠错的装置,其特征在于:所述输入寄存器(2)的输出端与无差错检查模块(3)以及四个ROM(4)连接;无差错检查模块(3)以及四个ROM(4)的输出端与流水线寄存器(5)连接。
6.根据权利要求2所述的通用成帧协议中检错纠错的装置,其特征在于:所述流水线寄存器(5)的纠错码输出端连接到与运算器(6);流水线寄存器(5)的无差错指示信号输出端连接到输出寄存器(7);与运算器(6)的纠错码输出端与输出寄存器(7)连接。
7.根据权利要求2所述的通用成帧协议中检错纠错的装置,其特征在于:所述输出寄存器(7)的纠错码输出端与异或运算器B(9)和单比特检错模块(10)连接;输出寄存器(7)输出无差错指示信号;单比特检错模块(10)输出单比特差错信号。
8.根据权利要求3所述的通用成帧协议中检错纠错的装置,其特征在于:所述异或运算器B(9)与延时模块(8)的输出端连接。
9.根据权利要求2所述的通用成帧协议中检错纠错的装置,其特征在于:所述输入寄存器(2)、流水线寄存器(5)、输出寄存器(7)组成三阶流水线。
10.一种权利要求1所述的通用成帧协议中检错纠错的装置的控制方法,其特征在于:该控制方法包括以下步骤:
Step1:在GFP接收端将核心报头中净荷长度值PLI和核心报头校验码Chec分别发送给延时模块(8)和异或运算器A(1),并将由净荷长度值PLI计算所得出的CRC校验码Ccrc发送给异或运算器A(1);
Step2:异或运算器A(1)将核心报头校验码Chec和CRC校验码Ccrc进行异或运算,得到检错校验码Ccrct,并将检错校验码Ccrct发送给输入寄存器(2);
Step3:输入寄存器(2)将检错校验码Ccrct分成四个独立的寻址地址,分别发送给四个ROM(4);同时输入寄存器(2)将检错校验码Ccrct发送给无差错检查模块(3);
Step4:无差错检查模块(3)检测有无比特错误,产生无差错指示信号,并将无差错指示信号传送给流水线寄存器(5);同时四个ROM(4)根据寻址地址,采用查找表法产生四个纠错码,并将纠错码传送给流水线寄存器(5);
Step5:流水线寄存器(5)将四个纠错码发送给与运算器(6),与运算器(6)将四个纠错码进行与运算后得到纠错码,并将纠错码发送给输出寄存器(7);同时流水线寄存器(5)将无差错指示信号发送给输出寄存器(7);
Step6:输出寄存器(7)将纠错码分别发送给异或运算器B(9)和单比特检错模块(10);
Step7:异或运算器B(9)将纠错码与经过延时模块(8)处理过的净荷长度值PLI进行异或运算,输出正确的净荷长度值PLI;同时,单比特检错模块(10)对纠错码进行判断,输出单比特错误信号;
Step8:该检错纠错的装置将无差错指示信号和单比特错误信号传送给控制帧定位装置状态的控制器。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2008101397855A CN101355403B (zh) | 2008-09-09 | 2008-09-09 | 通用成帧协议中检错纠错的装置及其控制方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2008101397855A CN101355403B (zh) | 2008-09-09 | 2008-09-09 | 通用成帧协议中检错纠错的装置及其控制方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101355403A true CN101355403A (zh) | 2009-01-28 |
CN101355403B CN101355403B (zh) | 2011-04-20 |
Family
ID=40308017
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2008101397855A Expired - Fee Related CN101355403B (zh) | 2008-09-09 | 2008-09-09 | 通用成帧协议中检错纠错的装置及其控制方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN101355403B (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104272625A (zh) * | 2012-03-02 | 2015-01-07 | Ls产电株式会社 | 通信设备及通信方法 |
CN110532127A (zh) * | 2019-08-13 | 2019-12-03 | 南京芯驰半导体科技有限公司 | 一种差错校验位协议转换器 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN100384118C (zh) * | 2004-11-03 | 2008-04-23 | 上海贝尔阿尔卡特股份有限公司 | 处理通用成帧规程帧的方法和装置 |
CN100493084C (zh) * | 2004-11-07 | 2009-05-27 | 华为技术有限公司 | 一种gfp数据性能监控方法及gfp设备 |
-
2008
- 2008-09-09 CN CN2008101397855A patent/CN101355403B/zh not_active Expired - Fee Related
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104272625A (zh) * | 2012-03-02 | 2015-01-07 | Ls产电株式会社 | 通信设备及通信方法 |
US10142058B2 (en) | 2012-03-02 | 2018-11-27 | Lsis Co., Ltd. | Communication device and communication method |
CN104272625B (zh) * | 2012-03-02 | 2020-07-14 | Ls产电株式会社 | 通信设备及通信方法 |
CN110532127A (zh) * | 2019-08-13 | 2019-12-03 | 南京芯驰半导体科技有限公司 | 一种差错校验位协议转换器 |
Also Published As
Publication number | Publication date |
---|---|
CN101355403B (zh) | 2011-04-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107154836B (zh) | 一种基于fpga的并行循环冗余crc校验方法 | |
CN101777924B (zh) | 一种Turbo码译码方法和装置 | |
CA3040604C (en) | Receiving apparatus using low-density parity check code and bit deinterleaving and receiving method thereof | |
CN101702639B (zh) | 循环冗余校验的校验值计算方法及装置 | |
CN100555235C (zh) | N模冗余表决系统 | |
CN104579313A (zh) | 一种基于配置帧的在轨sram型fpga故障检测与修复方法 | |
CN101958720A (zh) | 缩短Turbo乘积码的编译码方法 | |
CN203149557U (zh) | 基于fpga的容错异步串行收发器装置 | |
CN105897689B (zh) | 嵌入式系统及其方法 | |
CN108337069B (zh) | 一种改进的降低误码率的末端并行分组crc校验系统 | |
CN101901022A (zh) | 时钟精度调节模块与方法及应用其的通用串行总线设备 | |
CN102820892B (zh) | 一种用于并行bch编码的电路、编码器及方法 | |
CN100384090C (zh) | 一种用于纠正数据帧中错误比特的快速循环crc校验方法 | |
CN101355403B (zh) | 通用成帧协议中检错纠错的装置及其控制方法 | |
CN101207467B (zh) | 循环冗余校验码的生成和数据序列发送、校验方法及装置 | |
CN103986557A (zh) | 低路径延迟的LTE Turbo码并行分块译码方法 | |
WO2023116245A1 (zh) | 发送方法、接收方法、装置、系统、设备及存储介质 | |
CN104298572A (zh) | 一种纠错方法、装置和系统 | |
CN104464820A (zh) | 电路装置和用于实现用于交叉校验码的校验位压缩的方法 | |
Sridevi et al. | Implementation of Cyclic Redundancy Check in Data Recovery | |
CN103905066A (zh) | Turbo码译码装置和方法 | |
CN102543207B (zh) | 一种在闪存控制器中rs纠检错算法的高效利用方法 | |
CN109614275B (zh) | 冗余修正电路及应用其的冗余修正方法 | |
CN102751994B (zh) | 一种基于两个有限群符号的短码长分组码译码器装置 | |
CN100484042C (zh) | 报文净荷透传逻辑的验证方法及装置 |
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 | ||
C17 | Cessation of patent right | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20110420 Termination date: 20120909 |