CN102487307B - 一种用于fc协议的eof极性选择方法 - Google Patents

一种用于fc协议的eof极性选择方法 Download PDF

Info

Publication number
CN102487307B
CN102487307B CN201010574614.2A CN201010574614A CN102487307B CN 102487307 B CN102487307 B CN 102487307B CN 201010574614 A CN201010574614 A CN 201010574614A CN 102487307 B CN102487307 B CN 102487307B
Authority
CN
China
Prior art keywords
value
polarity
eof
data
data flow
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
CN201010574614.2A
Other languages
English (en)
Other versions
CN102487307A (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.)
Xian Xiangteng Microelectronics Technology Co Ltd
Original Assignee
AVIC No 631 Research Institute
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 AVIC No 631 Research Institute filed Critical AVIC No 631 Research Institute
Priority to CN201010574614.2A priority Critical patent/CN102487307B/zh
Publication of CN102487307A publication Critical patent/CN102487307A/zh
Application granted granted Critical
Publication of CN102487307B publication Critical patent/CN102487307B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Compression, Expansion, Code Conversion, And Decoders (AREA)
  • Communication Control (AREA)

Abstract

本发明涉及一种用于FC协议的帧结束定界符EOF极性选择方法,该方法包括以下步骤:1)定义起始参数的极性;2)根据起始参数的极性获取数据流中第一数据的实际RD值的极性;3)获取数据流中EOF的实际RD值的极性;4)根据数据流中EOF的实际RD值的极性对EOF极性进行选择。本发明提供了一种能够正确对FC协议的EOF极性进行选择的用于FC协议的EOF极性选择方法。

Description

一种用于FC协议的EOF极性选择方法
技术领域
本发明属于计算机控制领域,涉及一种用于FC协议的帧结束定界符EOF极性选择方法。
背景技术
FC-FS-3协议规定,有极性为正、负两种编码的EOF帧结束定界符被定义,在输入到8B/10B编码器的数据中,选择合适的极性的EOF编码,这样可以使处理完有序集(Ordered Sets)的最后一个字符(最右边)之后,应该产生一个负的RD(running disparity)值。EOF编码极性选择,和RD值的初始化规则相结合,确保了在发射机上电,或者发射机退出诊断模式(diagnostic mode)时,可以使用负的开始RD值来发送EOF之后的第一个有序集。用于原语信号和原语序列的被定义的有序集(Ordered Sets)保持负的极性,确保了和SOF定界符、原语信号、原语序列相关的有序集被发送时,总是以负的RD值开始。结果,原语信号、原语序列、SOF定界符有序集只定义了开始RD值为负的情况。这样定义最主要的好处是,可以从编码后的位流中一次移除或者添加一个字的填充字,而不用改变被移除的填充字之后发送的字的开始RD极性。
为了实现FC-1层编解码相关协议的正确解析,需要在FC-1层协议处理电路中实现EOF极性选择电路,以确保在处理完EOF之后,下一个原语序列开始的RD值为负。
发明内容
为了解决背景技术中存在的上述技术问题,本发明提供了一种能够正确对FC协议的EOF极性进行选择的用于FC协议的EOF极性选择方法。
本发明的技术解决方案是:本发明提供了一种用于FC协议的EOF极性选择方法,其特殊之处在于:所述方法包括以下步骤:
1)定义起始参数的极性;
2)根据起始参数的极性获取数据流中第一数据的实际RD值的极性;
3)获取数据流中EOF的实际RD值的极性;
4)根据数据流中EOF的实际RD值的极性对EOF极性进行选择。
上述步骤1)中起始参数包括起始数据RD值的极性;所述起始数据RD值的极性为负。
上述数据流的极性和数据RD值的极性保持一致。
上述步骤2)的具体实现方式是:
2.1)获取起始数据RD值的极性;
2.2)获取数据流中第一数据的理论RD值的极性,并将其拆分为高8位理论RD值和低8位理论RD值;
2.3)将步骤2.1)和步骤2.2)所得到的起始数据RD值的极性、高8位理论RD值以及低8位理论RD值进行异或运算,得到数据流中第一数据的实际RD值的极性。
上述步骤3)的具体实现方式是:
3.1)获取数据流中EOF前一个数据的实际RD值的极性;
3.2)获取数据流中EOF的理论RD值的极性,并将其拆分为高8位理论RD值和低8位理论RD值;
3.3)将步骤3.1)和步骤3.2)所得到的数据流中EOF前一个数据的实际RD值的极性、高8位理论RD值以及低8位理论RD值进行异或运算,得到数据流中EOF的实际RD值的极性。
上步骤4)的具体实现方式是:
若数据流中EOF的实际RD值的极性是负,则数据流中EOF的极性为负保持不变;
若数据流中EOF的实际RD值的极性是正,则将数据流中EOF的极性更改为负。
上述步骤4)中将数据流中EOF的极性更改为负的具体实现方式是:
4.1)获取数据流中EOF前一个数据的实际RD值的极性;
4.2)获取数据流中EOF的理论RD值的极性,并将其拆分为高8位理论RD值和低8位理论RD值;
4.3)将步骤4.2)所得到的低8位理论RD值的计算结果取反值;
4.4)将数据流中EOF前一个数据的实际RD值的极性、高8位理论RD值以及经步骤4.3)所得到的低8位理论RD值进行异或运算,得到数据流中EOF的实际RD值的极性。
本发明的优点是:
本发明所提供的用于FC协议的EOF极性选择方法将输入到EOF极性选择电路的所有EOF编码都选择负编码,在EOF极性选择电路模块中对EOF之前处理数据的极性进行计算,处理EOF时,起始RD值为负,此时的EOF编码也为负,可以满足EOF处理结束后RD值为负的要求,如果处理EOF时,起始RD为正,只需要将负EOF编码调整为正的EOF编码。使用以上EOF编码极性选择的方法,可以实现在FC-1层协议处理电路中,EOF帧结束定界符处理结束后,下一个原语8B/10B编码的起始RD值为负的要求。对输入FC-1层之前16bit数据的EOF编码极性进行选择,以确保FC-1层协议处理电路在对EOF进行8B/10编码之后,下一个原语序列8B/10B编码的起始RD值为负。
具体实施方式
FC-FS-3协议规定,在处理完每一种被定义的EOF定界符有序集最后一个字符(最右边)之后,应该产生一个负的RD值。这个规定和RD值的初始化规则相结合,确保了在发射机上电,或者发射机退出诊断模式(diagnostic mode)之后,应该使用负的开始RD值来发送EOF之后的第一个有序集。用于原语信号和原语序列的被定义的有序集保持负的极性,确保了和SOF定界符、原语信号、原语序列相关的有序集被发送时,总是以负的RD值开始。最终的结果是,原语信号、原语序列和SOF定界符有序集,只定义了开始RD值为负的情况。这样定义最主要的好处是,可以从编码后的位流中一次移除或者添加一个字的填充字,而不用改变被移除填充字之后发送字的开始RD极性(在时钟校正时,需要插入或者移除IDLE原语)。
按照协议规定,本发明提供了一种用于FC协议的EOF极性选择方法,该方法包括以下步骤:
1)定义起始参数的极性,起始参数包括起始数据RD值的极性;所述起始数据RD值的极性为负;
2)根据起始参数的极性获取数据流中第一数据的实际RD值的极性:
2.1)获取起始数据RD值的极性;
2.2)获取数据流中第一数据的理论RD值的极性,并将其拆分为高8位理论RD值和低8位理论RD值;
2.3)将步骤2.1)和步骤2.2)所得到的起始数据RD值的极性、高8位理论RD值以及低8位理论RD值进行异或运算,得到数据流中第一数据的实际RD值的极性。
3)获取数据流中EOF的实际RD值的极性:
3.1)获取数据流中EOF前一个数据的实际RD值的极性;
3.2)获取数据流中EOF的理论RD值的极性,并将其拆分为高8位理论RD值和低8位理论RD值;
3.3)将步骤3.1)和步骤3.2)所得到的数据流中EOF前一个数据的实际RD值的极性、高8位理论RD值以及低8位理论RD值进行异或运算,得到数据流中EOF的实际RD值的极性。
4)根据数据流中EOF的实际RD值的极性对EOF极性进行选择;若数据流中EOF的实际RD值的极性是负,则数据流中EOF的极性为负保持不变;
若数据流中EOF的实际RD值的极性是正,则将数据流中EOF的极性更改为负:
4.1)获取数据流中EOF前一个数据的实际RD值的极性;
4.2)获取数据流中EOF的理论RD值的极性,并将其拆分为高8位理论RD值和低8位理论RD值;
4.3)将步骤4.2)所得到的低8位理论RD值的计算结果取反值;
4.4)将数据流中EOF前一个数据的实际RD值的极性、高8位理论RD值以及经步骤4.3)所得到的低8位理论RD值进行异或运算,得到数据流中EOF的实际RD值的极性。
数据流的极性和数据RD值的极性保持一致。
EOF编码极性选择电路由8B数据极性计算模块Disp、16位数据RD计算电路以及EOF选择电路组成。
EOF编码极性选择的实现流程为:
1、将16位的输入数据分为高8位和第8位两路,输入DispLow和DispHigh模块,分别对RD值进行计算;
2、将以上每个8B数据计算的结果DispOutLow、DispOutHigh和保留的上一个16位数据的RD值OldDisp进行按位异或运算,得到当前处理的8B数据的起始RD值,RD为正,表示应该从8B/10B编码表的正列选取编码的数据;
3、输入数据不是EOF,对输入的数据流不做处理,将数据是寄存一拍后输出,保存当前处理数据的RD值到OldDisp;
4、当前输入数据是EOF时,将输入数据的bit5替换为计算出来的RD值CalcDisp,可以实现EOF由负编码极性调整为正编码极性,同时:
EOF之前一个数据处理结束时RD值为正,除将EOF的编码极性由负调整为正之外,也需要将保存到OldDisp的当前编码的RD值进行调整。EOF的起始RD值为负,保持EOF的编码极性不变,将调整后的EOF寄存输出,保存当前处理数据的RD值到OldDisp。
EOF编码极性选择电路的具体实现如下:
将输入EOF编码极性选择电路的16bit输入数据分为高8位和低8位两路,与输入数据高8位和低8位对应的两位K字符也分为高位和低位,分别输入到EOF编码极性选择电路高8位和低8位数据的RD值计算模块Disp中,对8B输入数据(包括特殊的K字符)对应的10bit编码的RD值进行计算。
FC-FS-3协议规定,在串行链路上发送的10bit串行数据,可以分成两个子模块。第一个6bit(adbcei)组成一个子模块,第二个4bit(fghj)组成另一个子模块,应该根据子模块计算发送字符的RD值。6位子模块开始的RD值是上一个发送字符结束时的RD值。4位子模块的开始RD值是6位子模块结束时的RD值。传输字符结束时的RD值是4位子模块结束时的RD值。
在上电时,发射机将当前的RD(Current RD)初始化为负。在发送任何传输字符时,发射机应该根据发送的字符内容和发送字符开始的RD值重新计算新的RD值。FC-FS-3定义的5B/6B、3B/4B子模块的RD计算规则是:
1、任何子模块的RD值在结束时是正的:如果子模块包含的1比0多;
1.1)如果在6bit的子模块结束时,6bit的子模块是’000111’b;
1.2)如果在4bit的子模块结束时,4bit的子模块是’0011’b;
2、任何子模块的RD值在结束时是负的:
2.1)如果子模块包含的0比1多;
2.2)如果在6bit的子模块结束时,6bit的子模块是’111000’b;
2.3)如果在4bit的子模块结束时,4bit的子模块是’1100’b;
根据FC协议,8B/10B编码规则将输入的8B数据从高位到低位依次定义为HGFEDCBA,分成3B的HGF和5B的EDCBA两个子模块,对3B码HGF进行3B/4B编码为fghj,5B码进行5B/6B编码为adbcei,最后将4B、6B编码组合来完成10B的编码。除此之外,特殊的输入K字符有专用的K字符编码表。所以,8B数据的10B编码输出数据RD值是否为0和3B/4B编码表,5B/6B编码表,以及K字符编码表定义的编码规则有关。
参照对高位HGF编码的3B/4B编码表,可以得到编码输出RD不为0的输入数据表达式:
Disp 3 = ( G ‾ · F ‾ ) + ( H · G · F )
参照对低5位EDCBA进行编码的5B/6B编码表,可以得到编码输出RD不为0的输入数据表达式:
Disp 5 = ( C ‾ · B ‾ · A ‾ ) + ( ( B · A ) · ( ( E · D ) + ( C · ( E ⊕ D ) ) ) ) + ( E · D · C · ( B ⊕ A ) ) + ( E ‾ · D ‾ · ( ( C ‾ · ( B ⊕ A ) ) + ( C · B ‾ · A ‾ ) ) )
参照FC-FS-3协议中有效的特殊字符编码表,对于特殊的K字符输入,得到编码后输出RD值为0的输入数据表达式(表示8B编码为K28.0、K28.4、K28.7、K23.7、K27.7、K29.7和K30.7的特殊字符):
Kdisp = ( ( E · D · C · B ‾ · A ‾ ) · ( ( G ‾ · F ‾ ) + H · G · F ) ) + ( H · G · F )
将以上各部分的RD值计算的表达式组合起来可以得到8B输入数据编码后10B数据的RD是否为0的表达式:
Disp = ( Disp 5 · Disp 3 ‾ · k ‾ ) + ( Disp 5 ‾ · Disp 3 · k ‾ ) + ( k · Kdisp ‾ )
上面公式中,k表示输入的8B数据为K字符。Disp等于1,表示10B输出数据的RD值为正。
将以上每个8B数据RD计算模块DispHigh和DispLow的RD计算出书结果DispOutLow、DispOutHigh,与保留的上一个16位数据的RD值OldDisp进行按位异或运算,得到当前处理的8B数据的起始RD值,RD为正,表示应该从8B/10B编码表的正列选取编码的数据;输入数据不是EOF,对输入的数据流不做处理,将数据是寄存一拍后输出,保存当前处理数据的RD值到OldDisp;当前输入数据是EOF时,将输入数据的bit5替换为计算出来的RD值CalcDisp,可以实现EOF由负编码极性调整为正编码极性,同时:EOF之前一个数据处理结束时RD值为正,除将EOF的编码极性由负调整为正之外,也需要将保存到OldDisp的当前编码的RD值进行调整。EOF的起始RD值为负,保持EOF的编码极性不变,将调整后的EOF寄存输出,保存当前处理数据的RD值到OldDisp。

Claims (2)

1.一种用于FC协议的EOF极性选择方法,其特征在于:所述方法包括以下步骤:
1)定义起始参数的极性;起始参数包括起始数据RD值的极性;所述起始数据RD值的极性为负;
2)根据起始参数的极性获取数据流中第一数据的实际RD值的极性:
2.1)获取起始数据RD值的极性;
2.2)获取数据流中第一数据的理论RD值的极性,并将其拆分为高8位理论RD值和低8位理论RD值;
2.3)将步骤2.1)和步骤2.2)所得到的起始数据RD值的极性、高8位理论RD值以及低8位理论RD值进行异或运算,得到数据流中第一数据的实际RD值的极性;
3)获取数据流中EOF的实际RD值的极性:
3.1)获取数据流中EOF前一个数据的实际RD值的极性;
3.2)获取数据流中EOF的理论RD值的极性,并将其拆分为高8位理论RD值和低8位理论RD值;
3.3)将步骤3.1)和步骤3.2)所得到的数据流中EOF前一个数据的实际RD值的极性、高8位理论RD值以及低8位理论RD值进行异或运算,得到数据流中EOF的实际RD值的极性;
4)根据数据流中EOF的实际RD值的极性对EOF极性进行选择:
若数据流中EOF的实际RD值的极性是负,则数据流中EOF的极性为负保持不变;
若数据流中EOF的实际RD值的极性是正,则将数据流中EOF的极性更改为负;
其中:将数据流中EOF的极性更改为负的具体实现方式是:
4.1)获取数据流中EOF前一个数据的实际RD值的极性;
4.2)获取数据流中EOF的理论RD值的极性,并将其拆分为高8位理论RD值和低8位理论RD值;
4.3)将步骤4.2)所得到的低8位理论RD值的计算结果取反值;
4.4)将数据流中EOF前一个数据的实际RD值的极性、高8位理论RD值以及经步骤4.3)所得到的低8位理论RD值进行异或运算,得到数据流中EOF的实际RD值的极性。
2.根据权利要求1所述的用于FC协议的EOF极性选择方法,其特征在于:所述数据流的极性和数据RD值的极性保持一致。
CN201010574614.2A 2010-12-06 2010-12-06 一种用于fc协议的eof极性选择方法 Active CN102487307B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201010574614.2A CN102487307B (zh) 2010-12-06 2010-12-06 一种用于fc协议的eof极性选择方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201010574614.2A CN102487307B (zh) 2010-12-06 2010-12-06 一种用于fc协议的eof极性选择方法

Publications (2)

Publication Number Publication Date
CN102487307A CN102487307A (zh) 2012-06-06
CN102487307B true CN102487307B (zh) 2014-05-28

Family

ID=46152764

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201010574614.2A Active CN102487307B (zh) 2010-12-06 2010-12-06 一种用于fc协议的eof极性选择方法

Country Status (1)

Country Link
CN (1) CN102487307B (zh)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103199869B (zh) * 2012-01-06 2017-05-10 上海华虹集成电路有限责任公司 基于rd+的8b/10b解码电路
CN104734804A (zh) * 2013-12-20 2015-06-24 中国航空工业集团公司第六三一研究所 一种32位crc计算及eof极性选择电路
CN109905199B (zh) * 2017-12-08 2021-07-09 中国科学院上海高等研究院 一种非对称k码编解码的串行通信数据极性恢复方法
CN109889306B (zh) * 2019-01-16 2021-12-17 中国航空工业集团公司洛阳电光设备研究所 一种用于高速光纤数字传输系统的编码极性计算方法

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1921445A (zh) * 2005-08-26 2007-02-28 华为技术有限公司 传送fc帧的方法以及应用该方法的包交换网络及其节点

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8774215B2 (en) * 2006-09-01 2014-07-08 Emulex Corporation Fibre channel over Ethernet
US7849265B2 (en) * 2007-12-18 2010-12-07 Hitachi, Ltd. Avoiding use of an inter-unit network in a storage system having multiple storage control units

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1921445A (zh) * 2005-08-26 2007-02-28 华为技术有限公司 传送fc帧的方法以及应用该方法的包交换网络及其节点

Non-Patent Citations (4)

* Cited by examiner, † Cited by third party
Title
American National Standard for Information Technology.Fibre Channel Framing and Signaling -3(FC-FS-3).《INCITS working draft Project T11/1861-D Rev 0.94》.2010,
American National Standard for Information Technology.Fibre Channel Framing and Signaling-3(FC-FS-3).《INCITS working draft Project T11/1861-D Rev 0.94》.2010, *
FC Encapsulation;R.Weber 等;《draft-ietf-ips-fcenapsulation-00.txt》;20011019;全文 *
R.Weber 等.FC Encapsulation.《draft-ietf-ips-fcenapsulation-00.txt》.2001,

Also Published As

Publication number Publication date
CN102487307A (zh) 2012-06-06

Similar Documents

Publication Publication Date Title
CN102487307B (zh) 一种用于fc协议的eof极性选择方法
CN1108664C (zh) 用于小数位的多电平编码
US7260155B2 (en) Method and apparatus for encoding and decoding digital communications data
EP2315357A3 (en) Multi-stage code generator and decoder for communication systems
CN104426631A (zh) 对数据进行处理的方法及装置
US6601214B1 (en) System and method employing a rate matching algorithm for providing optimized puncturing patterns for turbo encoded data in a communications network
WO2007134196A3 (en) Code generator and decoder using hybrid codes
WO2007098397A3 (en) Multiple-field based code generator and decoder for communications systems
CN103797742A (zh) 以太网中处理数据的方法、物理层芯片和以太网设备
US20150078486A1 (en) Code modulation and demodulation method and apparatus for high order modulation
CN103916217B (zh) Xlgmii接口多通道降频dic机制的实现方法及装置
WO2004013974A3 (en) Parallel convolutional encoder
EP2421187A3 (en) Method for transmitting control information in a wireless communication system and apparatus therefor
CN101702639A (zh) 循环冗余校验的校验值计算方法及装置
CN101729198B (zh) 一种编解码方法、装置及系统
CN102594492A (zh) 一种码块分割方法及装置
WO2010008165A2 (ko) 이동통신 시스템에서 ctc(convolutional turbo code) 인코더를 이용하여 데이터를 전송하기 위한 장치 및 그 방법.
WO2006032192A1 (fr) Procede pour coder une signalisation de liaison montante amelioree dans un systeme wcdma
CN109327283A (zh) 一种网络自适应的抗丢包方法、装置及终端设备
CN101764617A (zh) 一种9b/10b码的编码方法
US9749237B2 (en) Method and apparatus for aggregating and encoding received symbols including generation of a pointer for a control code
CN103401568A (zh) 基于伽罗华域傅里叶变换的rs码编码参数盲识别方法
US8885664B1 (en) Multi-rate media independent interface over a physical coding sublayer
CN107017962B (zh) 动态功耗控制的编码方法及编解码器
CN108462561A (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
TR01 Transfer of patent right

Effective date of registration: 20221129

Address after: Room S303, Innovation Building, No. 25, Gaoxin 1st Road, Xi'an, Shaanxi 710075

Patentee after: XI'AN XIANGTENG MICROELECTRONICS TECHNOLOGY Co.,Ltd.

Address before: 710068 No. 156 Taibai North Road, Shaanxi, Xi'an

Patentee before: 631ST Research Institute OF AVIC

TR01 Transfer of patent right