CN110740011B - 一种编解码方法及编解码器 - Google Patents

一种编解码方法及编解码器 Download PDF

Info

Publication number
CN110740011B
CN110740011B CN201910949280.3A CN201910949280A CN110740011B CN 110740011 B CN110740011 B CN 110740011B CN 201910949280 A CN201910949280 A CN 201910949280A CN 110740011 B CN110740011 B CN 110740011B
Authority
CN
China
Prior art keywords
data
code
polarity
coded
information
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.)
Active
Application number
CN201910949280.3A
Other languages
English (en)
Other versions
CN110740011A (zh
Inventor
郭巍
郝锐
梅国强
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Suzhou Inspur Intelligent Technology Co Ltd
Original Assignee
Suzhou Inspur Intelligent Technology Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Suzhou Inspur Intelligent Technology Co Ltd filed Critical Suzhou Inspur Intelligent Technology Co Ltd
Priority to CN201910949280.3A priority Critical patent/CN110740011B/zh
Publication of CN110740011A publication Critical patent/CN110740011A/zh
Application granted granted Critical
Publication of CN110740011B publication Critical patent/CN110740011B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/0001Systems modifying transmission characteristics according to link quality, e.g. power backoff
    • H04L1/0006Systems modifying transmission characteristics according to link quality, e.g. power backoff by adapting the transmission format
    • H04L1/0007Systems modifying transmission characteristics according to link quality, e.g. power backoff by adapting the transmission format by modifying the frame length
    • H04L1/0008Systems modifying transmission characteristics according to link quality, e.g. power backoff by adapting the transmission format by modifying the frame length by supplementing frame payload, e.g. with padding bits

Abstract

本发明公开了一种编解码方法及编解码器,通过对获取到的未编码8B码型数据进行编码,得到第一编码10B码型数据和第二编码10B码型数据,累加第一编码10B码型的极性信息、第二编码10B码型的极性信息和上一次极性信息,得到极性信息数据,根据K28.5码字的位置信息对极性信息数据进行填充,选择极性控制后的符合发送要求的编码10B码型数据,并识别出符合发送要求的编码10B码型数据中的极性信息代表的附加数据位和补偿位,基于附加数据位和补偿位输出附加数据位1B码型数据。通过上述方案,利用10B编码数据的极性传递附加数据,并基于K28.5码字实现附加传输数据的正确采样,提高原有8B/10B的编码效率的目的。

Description

一种编解码方法及编解码器
技术领域
本发明涉及数据传输技术领域,更具体地说,涉及一种编解码方法及编解码器。
背景技术
8b/10b也叫8比特/10比特,8b/10b编码成为目前许多高速串行总线采用的编码机制。8b/10b编码的特性之一是保证直流平衡,采用8b/10b编码方式,该编码将8位数据经过映射的机制转化为10位的码字时,平衡了位流中0与1的数量。通过8b/10b编码,使得数据在特定信道中的正确传输。
在不改变编码方式的条件下,如果有需要在以太网环境下增加传输内容的需求,则利用以太网的帧间隔传输数据或者独立组成正常的以太网帧,共享以太网带宽进行传输。
但是,原有8B/10B编码方案为了保证直流平衡,选用的10B码型中舍弃了极性偏差大于2的编码,而且为了限制连0或连1的个数,也放弃了10B中连0或连1个数大于5的码型。在连续编码过程中,极性偏差不超过2,对于同一组8B有正负两组10B编码与之对应。在这种编码规则之下,造成编码效率不高。
发明内容
有鉴于此,本发明提供了一种编解码方法及编解码器,利用10B编码数据的极性传递附加数据,并基于K28.5码字实现附加传输数据的正确采样,提高原有8B/10B的编码效率的目的。
为了实现上述目的,现提出的方案如下:
本发明第一方面公开了一种编解码方法,所述方法包括:
获取未编码8B码型数据,并对所述未编码8B码型数据进行编码,分别得到第一编码10B码型数据和第二编码10B码型数据;
累加所述第一编码10B码型数据的极性信息、所述第二编码10B码型数据的极性信息和上一次极性信息,得到极性信息数据,其中,所述上一次极性信息包括上一次第一编码10B码型数据的极性信息和上一次第二编码10B码型数据的极性信息;
根据K28.5码字的位置信息对所述极性信息数据的补偿位信息进行填充;
基于填充后的补偿位信息和预先获取的附加数据,控制所述第一编码10B码型数据的极性和所述第二编码10B码型数据的极性;
选择极性控制后的所述第一编码10B码型数据和所述第二编码10B码型数据中符合发送要求的编码10B码型数据;
对所述符合发送要求的编码10B码型数据进行处理,得到附加数据位1B码型数据并输出。
优选的,所述累加所述第一编码10B码型数据的极性信息、所述第二编码10B码型数据的极性信息和上一次极性信息,得到极性信息数据,包括:
累加所述第一编码10B码型数据的极性信息的数值、所述第二编码10B码型数据的极性信息的数值和上一次极性信息的数值,得到极性信息数据。
优选的,所述选择极性控制后的所述第一编码10B码型数据和所述第二编码10B码型数据中符合发送要求的编码10B码型数据,包括:
基于输出的控制信号的数值进行选择;
若所述控制信号的数值为1时,选择所述第二编码10B码型数据;
若所述控制信号的数值为0时,选择所述第一编码10B码型数据。
优选的,所述对所述符合发送要求的编码10B码型数据进行处理,得到附加数据位1B码型数据并输出,包括:
基于所述K28.5码字的位置信息识别出所述符合发送要求的编码10B码型数据中的极性信息代表的附加数据位和补偿位;
基于所述附加数据位和所述补偿位输出附加数据位1B码型数据。
优选的,在选择极性控制后的所述第一编码10B码型数据和所述第二编码10B码型数据中符合发送要求的编码10B码型数据之后,还包括:
将符合发送要求的第二编码10B码型数据恢复成正常编码10B码型数据;
解码所述正常编码10B码型数据,得到8B码型解码数据并输出。
本发明第二方面公开了一种编解码器,所述编解码器包括:
正常编码模块,用于获取未编码8B码型数据,并对所述未编码8B码型数据进行编码,得到第一编码10B码型数据;基于填充后的补偿位信息和预先获取的附加数据,控制所述第一编码10B码型数据的极性;
拓展编码模块,用于获取未编码8B码型数据,并对所述未编码8B码型数据进行编码,得到第二编码10B码型数据;基于填充后的补偿位信息和预先获取的附加数据,控制所述第二编码10B码型数据的极性;
极性监控模块,用于累加所述第一编码10B码型数据的极性信息、所述第二编码10B码型数据的极性信息和上一次极性信息,得到极性信息数据,其中,所述上一次极性信息包括上一次第一编码10B码型数据的极性信息和上一次第二编码10B码型数据的极性信息;
附加通道发送控制模块,用于根据K28.5码字的位置信息对所述极性信息数据的补偿位信息进行填充;
已编码数据选择模块,用于选择极性控制后的所述第一编码10B码型数据和所述第二编码10B码型数据中符合发送要求的编码10B码型数据;
附加通道接收选通模块,用于对所述符合发送要求的编码10B码型数据进行处理,得到附加数据位1B码型数据并输出。
优选的,所述极性监控模块,具体用于:
累加所述第一编码10B码型数据的极性信息的数值、所述第二编码10B码型数据的极性信息的数值和上一次极性信息的数值,得到极性信息数据。
优选的,所述已编码数据选择模块,具体用于:
基于所述拓展编码模块输出的控制信号的数值进行选择,若所述控制信号的数值为1时,选择所述第二编码10B码型数据,若所述控制信号的数值为0时,选择所述第一编码10B码型数据。
优选的,所述附加通道接收选通模块,具体用于:
基于所述K28.5码字的位置信息识别出所述符合发送要求的编码10B码型数据中的极性信息代表的附加数据位和补偿位,基于所述附加数据位和所述补偿位输出附加数据位1B码型数据。
优选的,还包括:
拓展解码模块,用于将符合发送要求的第二编码10B码型数据恢复成正常编码10B码型数据;
正常解码模块,用于解码所述正常编码10B码型数据,得到8B码型解码数据并输出。
经由技术方案可知,通过对获取到的未编码8B码型数据进行编码,得到第一编码10B码型数据和第二编码10B码型数据,累加第一编码10B码型的极性信息、第二编码10B码型的极性信息和上一次极性信息,得到极性信息数据,根据K28.5码字的位置信息对极性信息数据进行填充,选择极性控制后的符合发送要求的编码10B码型数据,并识别出符合发送要求的编码10B码型数据中的极性信息代表的附加数据位和补偿位,基于附加数据位和补偿位输出附加数据位1B码型数据。通过上述方案,利用10B编码数据的极性传递附加数据,并基于K28.5码字实现附加传输数据的正确采样,提高原有8B/10B的编码效率的目的。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
图1为本发明实施例公开的一种编解码器的架构图;
图2为本发明实施例公开的一种编解码方法的流程示意图;
图3为本发明实施例公开的累加第一编码10B码型数据的极性信息、第二编码10B码型数据的极性信息和上一次极性信息,得到极性信息数据的流程示意图;
图4为本发明实施例公开的选择极性控制后的第一编码10B码型数据和第二编码10B码型数据中符合发送要求的编码10B码型数据的流程示意图;
图5为本发明实施例公开的对符合发送要求的编码10B码型数据进行处理,得到附加数据位1B码型数据并输出的流程示意图;
图6为本发明实施例公开的一种编解码器的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
现有技术中,由于以太网的数据传输方式对恒定速率的数据传输有时延不确定的影响,导致对一些恒定速率的数据传输并不适用。
因此,本发明公开了一种编解码方法及编解码器,利用10B编码数据的极性传递附加数据,并基于K28.5码字实现附加传输数据的正确采样的目的。
如图1所示,为本发明实施例公开的一种编解码器的架构图,该编解码器主要包括:
发送端和接收端。
发送端包括正常编码模块11,附加通道发送控制模块12,拓展编码模块13,已编码数据选择模块14和极性监控模块15,接收端包括拓展解码模块16,正常解码模块17和附加通道接收选通模块18。
正常编码模块11,用于获取未编码8B码型数据;对未编码8B码型数据进行编码,得到第一编码10B码型数据;将第一编码10B码型数据的极性信息发送至极性监控模块15;接收填充后的补偿位信息和预先获取到的附加数据;基于填充后的补偿位信息和预先获取的附加数据,控制第一编码10B码型数据的极性,并将第一编码10B码型数据发送至所述已编码数据选择模块14。
附加通道发送控制模块12,用于接收极性信息数据;根据K28.5码字的位置信息对极性信息数据的补偿位信息进行填充,将填充后的补偿位信息和预先获取到的附加数据发送至正常编码模块11和拓展编码模块13。
需要说明的是,1B是指附加数据。
附加通道发送控制模块12输出包含附加数据和补偿数据。
需要说明的是,附加通道发送控制模块预先获取到的附加数据为编码1B码型数据,有效速率为未编码8B码型数据的一半。
附加通道发送控制模块发送的数据控制着本方案的编解码器的编码10B码型数据的极性,若该附加通道发送控制模块发1对应着正极性码型数据,若该附加通道发送控制模块发0对应着负极性码型数据。
若极性信息数据的信息位发送1,则10B码字发送一个+2极性的码字,若累计的极性偏差为正,则极性信息数据的补偿位发送0,对应一个编码10B码型数据为-2极性,使其累计的极性差趋于0,使得保持编码10码型数据的直流平衡的特性。
拓展编码模块13,用于获取未编码8B码型数据;对未编码8B码型数据进行编码,得到第二编码10B码型数据;将第二编码10B码型数据的极性信息发送至极性监控模块15;接收填充后的补偿位信息和预先获取到的附加数据;基于填充后的补偿位信息和预先获取的附加数据,控制第二编码10B码型数据的极性,并将第二编码10B码型数据发送至已编码数据选择模块14。
需要说明的是,若拓展编码模块输出的控制信号的数值为1,已编码数据选择模块选择第二编码10B码型数据发送至拓展解码模块,若拓展编码模块输出的控制信号的数值为0,已编码数据选择模块选择第一编码10B码型数据发送至拓展解码模块。
若拓展编码模块识别到第二编码10B码型数据为拓展编码模块负责的编码时,发送该第二编码10B码型数据的控制信号至已编码数据选择模块。
当任意一组未编码8B码型数据以太网数据和一位1B码型附加数据进行编码时,若在编码时需要使用拓展编码模块进行编码,该拓展编码模块会给出控制信号,使已编码数据选择模块选择该拓展编码模块的输出作为整个编码模块的输出,若在编码时不需要使用拓展编码模块进行编码,则使用正常编码模块的输出作为整个编码模块的输出。
根据控制信号的数值选择正常编码模块和拓展编码模块输出的编码10B码型数据。当控制信号的数值为1时,已编码数据选择模块选择拓展编码模块输出,当控制信号的数值为0时,该已编码数据选择模块选择正常编码模块输出。
已编码数据选择模块14,用于接收第一编码10B码型数据和第二编码10B码型数据;选择第一编码10B码型数据和第二编码10B码型数据中符合发送要求的编码10B码型数据发送至拓展解码模块16。
极性监控模块15,用于接收第一编码10B码型数据的极性信息和第二编码10B码型数据的极性信息;累加第一编码10B码型数据的极性信息、第二编码10B码型数据的极性信息和上一次极性信息,得到极性信息数据,并将极性信息数据发送至附加通道发送控制模块12。
拓展解码模块16,用于接收第一编码10B码型数据和第二编码10B码型数据中符合发送要求的编码10B码型数据;提取符合发送要求的编码10B码型数据中的极性信息,并将符合发送要求的编码10B码型数据中的极性信息发送至附加通道接收选通模块18;将第二编码10B码型数据恢复成正常编码10B码型数据,并将正常编码10B码型数据发送至正常解码模块17。
正常解码模块17,用于基于正常编码10B码型数据进行解码,得到8B码型解码数据并输出;将识别出的K28.5码字的位置信息发送至附加通道接收选通模块18。
附加通道接收选通模块18,用于接收符合发送要求的编码10B码型数据中的极性信息;基于K28.5码字的位置信息识别出符合发送要求的编码10B码型数据中的极性信息代表的附加数据位和补偿位,并基于附加数据位和补偿位输出附加数据位1B码型数据。
本发明实施例中,通过对获取到的未编码8B码型数据进行编码,得到第一编码10B码型数据和第二编码10B码型数据,累加第一编码10B码型的极性信息、第二编码10B码型的极性信息和上一次极性信息,得到极性信息数据,根据K28.5码字的位置信息对极性信息数据进行填充,选择极性控制后的符合发送要求的编码10B码型数据,并识别出符合发送要求的编码10B码型数据中的极性信息代表的附加数据位和补偿位,基于附加数据位和补偿位输出附加数据位1B码型数据。通过上述方案,利用10B编码数据的极性传递附加数据,并基于K28.5码字实现附加传输数据的正确采样,提高原有8B/10B的编码效率的目的。
如图2所示,为本发明实施例公开的一种编解码方法的流程示意图,具体包括如下步骤:
步骤S201:获取未编码8B码型数据,并对未编码8B码型数据进行编码,分别得到第一编码10B码型数据和第二编码10B码型数据。
步骤S202:累加第一编码10B码型数据的极性信息、第二编码10B码型数据的极性信息和上一次极性信息,得到极性信息数据。
需要说明的是,每次编码后,每个编码10B码型数据都有自己的极性,极性包括+2、-2或0,将每个编码10B码型数据的极性进行累加,并将计算结果的正数极性信息数据或负数极性信息数据发送至附加通道发送控制模块,以便在补偿位进行极性补偿。
极性信息是指编码10B码型数据中1和0的个数差。
上一次极性信息包括上一次第一编码10B码型数据的极性信息和上一次第二编码10B码型数据的极性信息。
步骤S203:根据K28.5码字的位置信息对极性信息数据的补偿位信息进行填充。
步骤S204:基于填充后的补偿位信息和预先获取的附加数据,控制第一编码10B码型数据的极性和第二编码10B码型数据的极性。
需要说明的是,控制10B码型的极性就是控制编码的结果,每个8B码字都对应了2个10B码型,附加数据和补偿位的数值对应了10B码型的极性,在接收端,根据收到的10B码型,就知道了源端发送的附加数据和补偿位的信息,从而恢复出发送的有效信息。
预先获取到的附加数据为编码1B码型数据,有效速率为未编码8B码型数据的一半。
若极性信息数据的信息位发送1,则10B码字发送一个+2极性的码字,若累计的极性偏差为正,则极性信息数据的补偿位发送0,对应一个编码10B码型数据为-2极性,使其累计的极性差趋于0,使得保持编码10码型数据的直流平衡的特性。
附加数据可以是任意的需要传输的二进制数据,如两个设备之间的维护管理数据等。本方案中的附加数据优选1B码型。
由于编码规则中仍使用部分极性为0的码型数据,这种码型数据存在使前后两个码型数据的极性之和不一定能恢复到0,本方案连续监测运行不平衡性RunningDisparity,对极性信息的补偿位持续进行补偿,维持直流平衡。
直流平衡是指将编码8B编码数据经过映射的机制转化为编码10B码型数据时,平衡位流中0与1的数量。
步骤S205:选择极性控制后的第一编码10B码型数据和第二编码10B码型数据中符合发送要求的编码10B码型数据。
在具体实现步骤S205的过程中,基于控制信号的数值选择第一编码10B码型数据或所述第二编码10B码型数据。
需要说明的是,根据控制信号的数值选择第一编码10B码型数据和第二编码10B码型数据。
若控制信号的数值为1,选择第二编码10B码型数据,若控制信号的数值为0,选择第一编码10B码型数据。
步骤S206:对符合发送要求的编码10B码型数据进行处理,得到附加数据位1B码型数据并输出。
在执行步骤S206的过程中,基于K28.5码字的位置信息识别到符合发送要求的编码10B码型数据中的极性信息代表的附加数据位和补偿位,基于附加数据位和补偿位输出附加数据位1B码型数据。
本发明实施例公开了一种编解码方法,通过对获取到的未编码8B码型数据进行编码,得到第一编码10B码型数据和第二编码10B码型数据,累加第一编码10B码型的极性信息、第二编码10B码型的极性信息和上一次极性信息,得到极性信息数据,根据K28.5码字的位置信息对极性信息数据进行填充,选择极性控制后的符合发送要求的编码10B码型数据,并识别出符合发送要求的编码10B码型数据中的极性信息代表的附加数据位和补偿位,基于附加数据位和补偿位输出附加数据位1B码型数据。通过上述方案,利用10B编码数据的极性传递附加数据,并基于K28.5码字实现附加传输数据的正确采样,提高原有8B/10B的编码效率的目的。
可选的,在选择极性控制后的第一编码10B码型数据和第二编码10B码型数据中符合发送要求的编码10B码型数据之后,将符合发送要求的第二编码10B码型数据恢复成正常编码10B码型数据。
解码正常编码10B码型数据,得到8B码型解码数据并输出。
需要说明的是,8B码型解码数据为正常的未编码的8B码型数据。
在本发明实施例中,通过提取符合发送要求的编码10B码型数据中的极性信息,将第二编码10B码型数据恢复成正常编码10B码型数据,解码正常编码10B码型数据,得到8B码型解码数据并输出,实现输出8B码型解码数据的目的。
可选的,在千兆以太网应用过程中,若在传输千兆以太网数据的同时,以带外附加的方式增加部分传输带宽,改变PCS层的编码方式。
需要说明的是,PCS层为物理编码子层,作用是通过对信息数据的编码,使信息数据适应传输信道的要求,增加数据帧同步、字节同步的控制信息等。如8B/10B编码中,就可以通过增加的K码实现字节同步及帧同步控制,包含足够的信号跳变密度,实现DC平衡,利于光模块接口电路的时钟数据恢复。
在本发明实施例的一种实际应用场景中,在纯千兆以太网的传输场景下,两台光纤直连的设备,在保证千兆传输以太网数据的同时,可以提供一个接近62.5Mbps的带宽用于传输设备的维护管理信息。
在本发明实施例的另一种实际应用场景中,在自定义帧结构的混合传输场景下,10个百兆的以太网通过被按照时隙分割成10个刚性的传输通道,附加通管道可用于对10个百兆以太网的接口的管理。
在上述步骤S202中涉及到累加第一编码10B码型数据的极性信息、第二编码10B码型数据的极性信息和上一次极性信息,得到极性信息数据的过程,如图3所示,具体包括如下步骤:
步骤S301:累加第一编码10B码型数据的极性信息的数值、第二编码10B码型数据的极性信息的数值和上一次极性信息的数值。
需要说明的是,极性信息的取值包括+2,-2或0。
步骤S302:得到极性信息数据。
本发明实施例中,累加第一编码10B码型数据的极性信息的数值、第二编码10B码型数据的极性信息的数值和上一次极性信息的数值,得到极性信息数据,实现得到极性信息数据的目的。
在上述步骤S205中涉及到选择极性控制后的第一编码10B码型数据和第二编码10B码型数据中符合发送要求的编码10B码型数据的过程,如图4所示,具体包括如下步骤:
步骤S401:基于输出的控制信号的数值进行选择,若控制信号的数值为1,执行步骤S402,若控制信号的数值为0,执行步骤S403。
步骤S402:选择第二编码10B码型数据。
步骤S403:选择第一编码10B码型数据。
本发明实施例中,基于输出的控制信号的数值进行选择,若控制信号的数值为1时,选择第二编码10B码型数据,若控制信号的数值为0时,选择第一编码10B码型数据,实现基于输出的控制信号的数值对第一编码10B码型数据或第二编码10B码型数据进行选择的目的。
在上述步骤S206中涉及到对符合发送要求的编码10B码型数据进行处理,得到附加数据位1B码型数据并输出的过程,如图5所示,具体包括如下步骤:
步骤S501:基于K28.5码字的位置信息识别出符合发送要求的编码10B码型数据中的极性信息代表的附加数据位和补偿位。
需要说明的是,K28.5码字对应了+2和-2两个极性的码字,当需要发送K28.5码字的时候,根据当前累计的极性偏差,发送使极性偏差趋于0的码字。K28.5码字也用于10B码字的定界及以太网帧的IDLE码字,所以出现的频率较高,可以充分用于极性补偿。
由于K28.5码字不会连续出现,K28.5码字后都会至少跟一个普通数据,规定K28.5码字只用于传输补偿位,K28.5码字后的下一个10B码字的极性信息代表了附加数据的信息,然后交替传输补偿位和数据位,直到遇到下一个K28.5码字的10B码字。
步骤S502:基于附加数据位和补偿位输出附加数据位1B码型数据。
在具体实现步骤S502的过程中,K28.5码字对应的位置为补偿位,在接收到附加数据时,需要K28.5的位置信息标识出哪些位置是补偿位,从而识别出附加数据的位置。
需要说明的是,数据位和补偿位都是编码10B码型数据,都带有正负极性信息,编解码器的接收端识别出数据位和补偿位,正确恢复出需要传输的附加数据。
数据位是指传输的编码10B码型数据的极性信息代表了附加数据值。
补偿位是指传输的编码10B码型数据的极性信息用于平衡传输极性。
每发送一位附加数据,紧接着的一个编码10B码型数据就进行极性补偿,即之前累积极性为负,就发送正极性的码型数据进行补偿,之前累积极性为正,就发送负极性的码型数据进行补偿。
极性补偿是指附加数据的信息位控制了部分编码10B码型数据的极性,补偿位对信息位的极性失衡进行补偿,使长期运行的极性趋于平衡。
在本发明实施例中,基于K28.5码字的位置信息识别出符合发送要求的编码10B码型数据中的极性信息代表的附加数据位和补偿位,实现基于附加数据位和补偿位输出附加数据位1B码型数据的目的。
基于上述实施例公开的一种编解码方法的流程示意图,本发明实施例还对应公开了一种编解码器的结构示意图,如图6所示,该编解码器600,主要包括:
正常编码模块601,用于获取未编码8B码型数据,并对未编码8B码型数据进行编码,得到第一编码10B码型数据;基于填充后的补偿位信息和预先获取的附加数据,控制第一编码10B码型数据的极性。
拓展编码模块603,用于获取未编码8B码型数据,并对未编码8B码型数据进行编码,得到第二编码10B码型数据;基于填充后的补偿位信息和预先获取的附加数据,控制第二编码10B码型数据的极性。
极性监控模块605,用于累加第一编码10B码型数据的极性信息、第二编码10B码型数据的极性信息和上一次极性信息,得到极性信息数据,其中,上一次极性信息包括上一次第一编码10B码型数据的极性信息和上一次第二编码10B码型数据的极性信息。
附加通道发送控制模块602,用于根据K28.5码字的位置信息对极性信息数据的补偿位信息进行填充。
已编码数据选择模块604,用于选择极性控制后的第一编码10B码型数据和第二编码10B码型数据中符合发送要求的编码10B码型数据;
附加通道接收选通模块608,用于对符合发送要求的编码10B码型数据进行处理,得到附加数据位1B码型数据并输出。
进一步的,极性监控模块605,具体用于:
累加第一编码10B码型数据的极性信息的数值、第二编码10B码型数据的极性信息的数值和上一次极性信息的数值,得到极性信息数据。
进一步的,已编码数据选择模块604,具体用于:
基于拓展编码模块输出的控制信号的数值进行选择,若控制信号的数值为1时,选择第二编码10B码型数据,若控制信号的数值为0时,选择第一编码10B码型数据。
进一步的,附加通道接收选通模块608,具体用于:
基于K28.5码字的位置信息识别出符合发送要求的编码10B码型数据中的极性信息代表的附加数据位和补偿位,基于附加数据位和补偿位输出附加数据位1B码型数据。
需要说明的是,在发送端第一个K28.5码字出现之前,所有附加通道接收选通模块输出的数据都是补偿位,当出现K28.5码字后,则按照约定交替发送附加数据和补偿位。
可选的,还包括:
拓展解码模块606,用于提取符合发送要求的编码10B码型数据中的极性信息,将第二编码10B码型数据恢复成正常编码10B码型数据。
正常解码模块607,用于解码正常编码10B码型数据,得到8B码型解码数据并输出。
需要说明的是,正常编码10B码型数据为正常解码模块可以识别的10B码型数据。
本发明实施例公开的一种编解码器,通过对获取到的未编码8B码型数据进行编码,得到第一编码10B码型数据和第二编码10B码型数据,累加第一编码10B码型的极性信息、第二编码10B码型的极性信息和上一次极性信息,得到极性信息数据,根据K28.5码字的位置信息对极性信息数据进行填充,选择极性控制后的符合发送要求的编码10B码型数据,并识别出符合发送要求的编码10B码型数据中的极性信息代表的附加数据位和补偿位,基于附加数据位和补偿位输出附加数据位1B码型数据。通过上述方案,利用10B编码数据的极性传递附加数据,并基于K28.5码字实现附加传输数据的正确采样,提高原有8B/10B的编码效率的目的。
对于前述的各方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明并不受所描述的动作顺序的限制,因为依据本发明,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定是本发明所必须的。
需要说明的是,本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。对于装置类实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
本发明各实施例方法中的步骤可以根据实际需要进行顺序调整、合并和删减。
最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
对所公开的实施例的上述说明,使本领域技术人员能够实现或使用本发明。对这些实施例的多种修改对本领域技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。
以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。

Claims (8)

1.一种编解码方法,其特征在于,所述方法包括:
获取未编码8B码型数据,并对所述未编码8B码型数据进行编码,分别得到第一编码10B码型数据和第二编码10B码型数据;
累加所述第一编码10B码型数据的极性信息、所述第二编码10B码型数据的极性信息和上一次极性信息,得到极性信息数据,其中,所述上一次极性信息包括上一次第一编码10B码型数据的极性信息和上一次第二编码10B码型数据的极性信息;
根据K28.5码字的位置信息对所述极性信息数据的补偿位信息进行填充;
基于填充后的补偿位信息和预先获取的附加数据,控制所述第一编码10B码型数据的极性和所述第二编码10B码型数据的极性;
选择极性控制后的所述第一编码10B码型数据和所述第二编码10B码型数据中符合发送要求的编码10B码型数据;
对所述符合发送要求的编码10B码型数据进行处理,得到附加数据位1B码型数据并输出;
所述对所述符合发送要求的编码10B码型数据进行处理,得到附加数据位1B码型数据并输出的过程包括:
基于所述K28.5码字的位置信息识别出所述符合发送要求的编码10B码型数据中的极性信息代表的附加数据位和补偿位;
基于所述附加数据位和所述补偿位输出附加数据位1B码型数据。
2.根据权利要求1所述的方法,其特征在于,所述累加所述第一编码10B码型数据的极性信息、所述第二编码10B码型数据的极性信息和上一次极性信息,得到极性信息数据,包括:
累加所述第一编码10B码型数据的极性信息的数值、所述第二编码10B码型数据的极性信息的数值和上一次极性信息的数值,得到极性信息数据。
3.根据权利要求1所述的方法,其特征在于,所述选择极性控制后的所述第一编码10B码型数据和所述第二编码10B码型数据中符合发送要求的编码10B码型数据,包括:
基于输出的控制信号的数值进行选择;
若所述控制信号的数值为1时,选择所述第二编码10B码型数据;
若所述控制信号的数值为0时,选择所述第一编码10B码型数据。
4.根据权利要求1所述的方法,其特征在于,在选择极性控制后的所述第一编码10B码型数据和所述第二编码10B码型数据中符合发送要求的编码10B码型数据之后,还包括:
将符合发送要求的第二编码10B码型数据恢复成正常编码10B码型数据;
解码所述正常编码10B码型数据,得到8B码型解码数据并输出。
5.一种编解码器,其特征在于,所述编解码器包括:
正常编码模块,用于获取未编码8B码型数据,并对所述未编码8B码型数据进行编码,得到第一编码10B码型数据;基于填充后的补偿位信息和预先获取的附加数据,控制所述第一编码10B码型数据的极性;
拓展编码模块,用于获取未编码8B码型数据,并对所述未编码8B码型数据进行编码,得到第二编码10B码型数据;基于填充后的补偿位信息和预先获取的附加数据,控制所述第二编码10B码型数据的极性;
极性监控模块,用于累加所述第一编码10B码型数据的极性信息、所述第二编码10B码型数据的极性信息和上一次极性信息,得到极性信息数据,其中,所述上一次极性信息包括上一次第一编码10B码型数据的极性信息和上一次第二编码10B码型数据的极性信息;
附加通道发送控制模块,用于根据K28.5码字的位置信息对所述极性信息数据的补偿位信息进行填充;
已编码数据选择模块,用于选择极性控制后的所述第一编码10B码型数据和所述第二编码10B码型数据中符合发送要求的编码10B码型数据;
附加通道接收选通模块,用于对所述符合发送要求的编码10B码型数据进行处理,得到附加数据位1B码型数据并输出;
其中,所述附加通道接收选通模块,具体用于基于所述K28.5码字的位置信息识别出所述符合发送要求的编码10B码型数据中的极性信息代表的附加数据位和补偿位,基于所述附加数据位和所述补偿位输出附加数据位1B码型数据。
6.根据权利要求5所述的编解码器,其特征在于,所述极性监控模块,具体用于:
累加所述第一编码10B码型数据的极性信息的数值、所述第二编码10B码型数据的极性信息的数值和上一次极性信息的数值,得到极性信息数据。
7.根据权利要求5所述的编解码器,其特征在于,所述已编码数据选择模块,具体用于:
基于所述拓展编码模块输出的控制信号的数值进行选择,若所述控制信号的数值为1时,选择所述第二编码10B码型数据,若所述控制信号的数值为0时,选择所述第一编码10B码型数据。
8.根据权利要求5所述的编解码器,其特征在于,还包括:
拓展解码模块,用于将符合发送要求的第二编码10B码型数据恢复成正常编码10B码型数据;
正常解码模块,用于解码所述正常编码10B码型数据,得到8B码型解码数据并输出。
CN201910949280.3A 2019-10-08 2019-10-08 一种编解码方法及编解码器 Active CN110740011B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910949280.3A CN110740011B (zh) 2019-10-08 2019-10-08 一种编解码方法及编解码器

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910949280.3A CN110740011B (zh) 2019-10-08 2019-10-08 一种编解码方法及编解码器

Publications (2)

Publication Number Publication Date
CN110740011A CN110740011A (zh) 2020-01-31
CN110740011B true CN110740011B (zh) 2022-12-13

Family

ID=69268562

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910949280.3A Active CN110740011B (zh) 2019-10-08 2019-10-08 一种编解码方法及编解码器

Country Status (1)

Country Link
CN (1) CN110740011B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112787683B (zh) * 2020-12-30 2022-03-01 深圳市紫光同创电子有限公司 以太网数据传输电路、系统及以太网数据传输方法

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101847997A (zh) * 2010-04-26 2010-09-29 瑞斯康达科技发展股份有限公司 一种9b/10b编解码器及其实现方法

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101847997A (zh) * 2010-04-26 2010-09-29 瑞斯康达科技发展股份有限公司 一种9b/10b编解码器及其实现方法

Also Published As

Publication number Publication date
CN110740011A (zh) 2020-01-31

Similar Documents

Publication Publication Date Title
CN101610134B (zh) 64b/66b编解码装置及实现64b/66b编解码的方法
US20090119571A1 (en) 64b/66b Coding Apparatus and Method
US8255779B2 (en) System and method for accelerated forward error correction (FEC) synchronization
US8898550B2 (en) Encoding of data for transmission
EP0062922B1 (en) Burst signal transmission system
CN101847997B (zh) 一种9b/10b编解码器及其实现方法
US8594125B1 (en) Inverse multiplexing using transcoding and frame alignment markers
US10256941B1 (en) Power saving in a communication network for a motor vehicle
JPH0744570B2 (ja) ディジタルデータの伝送方法およびそのための装置
JP2003289286A (ja) 多重変換装置、逆多重変換装置および多重伝送システム
US6930621B2 (en) Method to overlay a secondary communication channel onto an encoded primary communication channel
US8024558B2 (en) Method and system for providing synchronous running encoding and encryption
JP2008061132A (ja) 送受信機、送信機、ならびに受信機
US9166618B2 (en) Data encoding and decoding
CN101729194B (zh) 数据编码、数据解码的方法、装置和系统
KR100281738B1 (ko) 니블 반전 및 블록 반전 부호의 부호화 및 복호화 방법, 그 부호 및 복호장치
JP2009239897A (ja) データエラー報告を実現するための方法およびデバイス
CN110740011B (zh) 一种编解码方法及编解码器
US5144305A (en) Transmission arrangement comprising a block code encoded main channel and an auxiliary channel
JP3217298B2 (ja) nB2P符号および復号装置
US6346895B1 (en) Apparatus and method for using nibble inversion code
CN1639982A (zh) 副比特流与主比特流的复用
CN113949388B (zh) 用于串行器/解串器系统的编解码器与编解码方法
CN108563604B (zh) Pcs协议复用芯片和方法
JP3597136B2 (ja) 符号通信方法及び通信装置

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant