FT3 frame structure data transmission method and device based on 8b10b coding

By adopting 8b10b encoding and adding CRC checksum and K code in the FT3 frame structure, the problems of low transmission rate and high error rate of FT3 frame format in power system communication are solved, and more efficient data transmission is achieved.

CN121173422APending Publication Date: 2025-12-19QILU ZHONGKE ELECTRICAL ADVANCED ELECTROMAGNETIC DRIVE TECH RES INST +1
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202511329667.0
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2025-09-17
Publication Date
2025-12-19

AI Technical Summary

Technical Problem

The existing FT3 frame format suffers from low transmission rate and high error rate in power system communication, especially in long-distance optical fiber communication.

Method used

The FT3 frame structure is improved by adopting an 8b10b encoding method. By performing CRC check and data sampling check on the data, and adding K code as synchronization and data start bit during transmission, the balance and accuracy of data bits are ensured.

Benefits of technology

It increased data transmission rate by approximately 40%, reduced link latency and bit error rate, and improved communication reliability and efficiency.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN121173422A_ABST
    Figure CN121173422A_ABST
Patent Text Reader

Abstract

The invention discloses an FT3 frame structure data transmission method and device based on 8b10b coding, a sending end enables data to form three packets of 816-bit data according to FT3 frame structure protocol requirements, each packet of data is subjected to crc verification calculation, crc verification calculation values are respectively placed behind each packet of data, after data framing is completed, according to 8b10b communication protocol requirements, each 8-bit data is coded into 10-bit data, and the 10bit data are sent to the sending end. Serial optical fiber communication is carried out; and after receiving the 8b10b code stream, a receiving end converts 10bit data into 8bit data, forms a frame structure which is the same as that of the sending end according to the requirement of the FT3 frame structure of the sending end, receives the data after framing and performs crc verification and sampling verification, and obtains the required data after the verification is passed. According to the embodiment of the invention, three packets of 816-bit data transmission can be completed in one communication period, and long-distance microsecond-level transmission of multiple data is realized.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention relates to the field of power system communication, and in particular to a data transmission method and apparatus based on FT3 frame structure using 8b10b encoding. Background Technology

[0002] The FT3 frame format typically refers to the frame transmission format in the IEC 60044-8 standard, with the link layer set to IEC 60870-5-1. The FT3 frame format is a commonly used data transmission frame structure in power system communication, frequently used for transmitting digital information such as voltage and current between current transformers and intelligent substation monitoring systems, monitoring the fault status of power equipment, fault diagnosis, and controlling intelligent power equipment. In the IEC 60044-8 standard, the FT3 frame structure is usually bound to serial Manchester code and asynchronous serial code (UART). Manchester code is a synchronous encoding method, using rates of 2.5 Mbps, 5 Mbps, and 10 Mbps, while UART is an asynchronous encoding method, using rates of 2 Mbps, 4 Mbps, 6 Mbps, and 8 Mbps. The standard FT3 frame format includes three data blocks, each containing 8 bytes of data. To improve the accuracy of data transmission, each 16-bit data block undergoes CRC verification, and the verified value is appended to the end of each data block. Therefore, the transmission rate is relatively low.

[0003] 8b10b encoding is an encoding technique widely used in interfaces such as SCSI, Serial ATA, fiber optic communication, Ethernet, and PCIe bus. In fiber optic communication, only two unipolar codes, "0" or "1", can be transmitted. If long strings of 0s or 1s appear, it will cause baseline drift at the receiving end, preventing correct decoding of the transmitted signal; this is known as DC imbalance. 8b10b solves the DC imbalance problem by detecting the data polarity (RD) after encoding, ensuring that the number of transmitted "0"s and "1"s is consistent, and that the number of consecutive "0"s and "1"s does not exceed 5 bits. Comma bits are added to idle bits during transmission, serving as synchronization and data segment start bits. This allows for early detection of data bit transmission errors and facilitates data recovery at the receiving end. However, a high bit error rate still exists. Summary of the Invention

[0004] This invention utilizes 8b10b encoding for the transmission of FT3 frame format data over long-distance optical fiber, incorporating CRC and data sampling verification. Experimental analysis shows that the receiving end can completely decode the data, ensuring consistency with the transmitted data. Compared to traditional FT3 frame format transmission via Manchester encoding, the 8b10b encoding method offers lower link latency and a lower bit error rate in long-distance optical fiber communication, improving communication speed and enabling more effective performance enhancement of FPGA chips.

[0005] This invention proposes a data transmission method for FT3 frame structures based on 8b10b encoding, utilizing the Manchester encoding method commonly used in FT3 frame structures. This improved method refines the 8b10b encoding scheme according to the data composition of the FT3 frame structure, reducing link communication latency and bit error rate, thus achieving reliable data transmission.

[0006] A data transmission method based on an FT3 frame structure using 8b10b encoding specifically includes the following steps: Step 1: Construct FT3 frame structure data; Step 2: Based on the 8b10b protocol, the data is encoded to obtain FT3 frame structure data and formed into a bit stream for transmission in optical fiber. Step 3: Based on the 8b10b protocol, decode the received bitstream to obtain the required FT3 frame structure data.

[0007] Furthermore, the specific implementation method for constructing the FT3 frame structure data in step one is as follows: the data is grouped into 3 packets of 8 bytes according to the FT3 format. For a 16-bit data packet, taking the first packet as an example, the first 8 bits to the eighth 8 bits are used to calculate the CRC value according to the formula. After the calculation is completed, the CRC value is placed in the 16 bits after the first packet. Similarly, the second and third packets are calculated in the same way. After the calculation is completed, the FT3 frame structure data with parity bits is formed.

[0008] Furthermore, in step two, the encoding method specifically involves splitting each 8-bit data into three high-bit (3 bits) and five low-bit (5 bits). After splitting, the polarity of the three high-bit and five low-bit data is calculated and determined to obtain positive polarity RD+ and negative polarity RD- data. Depending on the polarity, "0" or "1" is added during encoding to ensure that the encoded data does not contain more than five consecutive "0" or "1" bits. After determining the polarity, the five low-bit data enters the six high-bit encoder, and the three high-bit data enters the four low-bit encoder. The encoded data is then converted into a stream of "0" and "1" data bits and transmitted in the optical fiber.

[0009] Furthermore, step two also includes adding control character codes, namely K codes, to the idle bits in the transmitted bit stream as synchronization and data start bits, used to detect data bit transmission errors and facilitate data recovery at the receiving end; after the K code is encoded, the K code is used as the basis for determining the data start bit at the receiving end.

[0010] Furthermore, the specific implementation of step three is as follows: the decoding method is to split the received 10-bit data into 6 bits and 4 bits during decoding. The high six bits of data enter the low five-bit decoder, and the low four bits of data enter the high three-bit decoder. The decoder completes the data decoding according to the 8b10b protocol. The decoded data is used to perform CRC check calculation using the same formula as in the encoding method. After calculation, the CRC check value is obtained. The result is compared with the CRC check value before encoding to determine the integrity and accuracy of the data.

[0011] Furthermore, after the CRC check is completed, the data is sampled and checked. The sampling check is completed by sampling the data four times in one clock cycle. The four data are compared and erroneous data is discarded.

[0012] A data transmission device based on an FT3 frame structure using 8b10b encoding specifically includes the following modules: Build modules to construct FT3 frame structure data; The encoding module, based on the 8b10b protocol, encodes the data to obtain FT3 frame structure data and forms a bit stream for transmission in optical fiber. The decoding module, based on the 8b10b protocol, decodes the received bitstream to obtain the required FT3 frame structure data.

[0013] An electronic device, characterized in that it comprises: one or more processors; and a memory for storing one or more programs, wherein when the one or more programs are executed by the one or more processors, the one or more processors cause the one or more processors to implement the method.

[0014] A computer-readable storage medium having executable instructions stored thereon, which, when executed by a processor, cause the processor to implement the method described thereon.

[0015] The present invention has the following beneficial effects: Compared to Manchester encoding, the gain method described in this invention increases the transmission rate by 40% for transmitting a packet of FT3 frame structure data using 8b10b encoding. Ignoring fiber optic transmission losses and delays, Manchester encoding of a packet of FT3 frame structure data takes approximately 24µs, while 8b10b encoding takes approximately 15µs. A packet of FT3 frame structure data undergoes three CRC checks using a formula. The CRC value of the decoded data is compared with the CRC value of the unencoded data; if the CRC values ​​are the same, the data is considered valid. Simultaneously, four samples from the same clock cycle are compared; if three samples are the same, the data is considered valid. These two verification methods complement each other, effectively reducing the data error rate. Attached Figure Description

[0016] Figure 1This is a flowchart illustrating the transmission process of the FT3 frame structure data in this invention. Figure 2 This is a schematic diagram of the 8b10b encoding and decoding principle of the present invention. Detailed Implementation

[0017] To make the objectives, technical solutions, and advantages of this invention clearer, the invention will be further described in detail below with reference to the accompanying drawings and embodiments. It should be understood that the specific embodiments described herein are merely illustrative and not intended to limit the invention. Furthermore, the technical features involved in the various embodiments of this invention described below can be combined with each other as long as they do not conflict with each other.

[0018] The FT3 frame structure data transmission link described in this invention is as follows: Figure 1 As shown, the FT3 frame structure is a standard packet of FT3 format data, totaling 384 bytes. 16-bit. According to the FT3 frame format requirements, it is split into 3 packets of 128 bits each. The data consists of 16 bits, and CRC checksums are calculated for each of the three packets. The calculated CRC checksum value is then placed in the last 16 bits of each packet, forming a sequence as follows: Figure 1 The FT3 frame structure shown.

[0019] The encoding method described in this invention is as follows: Figure 2As shown, each 8-bit data is split into three high-order 3-bit data and five low-order 5-bit data. After splitting, the three high-order 3-bit data and the five low-order 5-bit data are encoded separately. The five low-order 5-bit data enters the high-order 6-bit encoder, and the three high-order 3-bit data enters the low-order 4-bit encoder. According to the 8b10b encoding protocol, the high-order 6-bit encoder and the low-order 4-bit encoder reassemble the encoded data to form a 10-bit 8b10b code. During the encoding process, the polarity of the encoded bit stream is calculated and determined. The number of '0' and '1' in the encoded data stream is counted. If the number of '1' is greater than the number of '0', it is positive polarity (RD+); if the number of '1' is less than the number of '0', it is negative polarity (RD-). Data continuously enters the encoder, converting from 8-bit to 10-bit data. Different encoding methods are selected based on the polarity of the encoded bitstream. When the polarity is positive (RD+), an encoding method with more "0"s than "1"s is used to supplement the bitstream with "0"s. Similarly, when the polarity is negative (RD-), "1"s are added. This ensures that the "0"s and "1"s in the encoded signal are roughly balanced, not exceeding five consecutive "0"s or "1"s. Simultaneously, a special code, the K-code, is added to idle bits during transmission. The K-code, consisting of five "0"s or five "1"s, serves as a separator code, forming the frame header of the bitstream. It serves as the start and separator of the data, eliminating the need for an additional frame header in the FT3 frame structure and facilitating the detection of the K-code during decoding to determine the data position. The encoded data and the K-code are combined to form the bitstream, which is then transmitted via optical fiber.

[0020] The decoding method described in this invention is as follows: Figure 2 As shown, by detecting the K-code, the starting position of the bitstream corresponding to the FT3 frame structure data is obtained, and the bitstream is intercepted according to the data length to obtain the bitstream corresponding to the data. Corresponding to the 8b10b encoding protocol, during decoding, the received 10-bit data is split into 6 bits and 4 bits. The high six bits enter the low five-bit decoder, and the low four bits enter the high three-bit decoder. Based on the encoding position, the CRC checksum value is obtained. After the CRC check passes, it is determined to be valid data. Valid data is sampled four times in one clock cycle for a second sampling check. After the sampling check passes, the data is restored to the required data format according to the requirements of the FT3 frame structure. A specific embodiment of the present invention is described below. Figure 1 As shown, taking a packet of FT3 frame structure data Data_T_ram[383:0] as an example, the specific implementation of the encoding is described. First, the packet of FT3 frame structure data Data_T_ram[383:0] is divided into 3 packets of 128. The 16-bit data, namely Data_T_ram[127:0], Data_T_ram[255:128], and Data_T_ram[383:255], are used to determine the bit error rate requirements for each 128-bit data segment. The 16-bit data, namely Data_T_ram[127:0], Data_T_ram[255:128], and Data_T_ram[383:255], are used for CRC checksum calculation. The calculation method is a loop calculation, starting from the first 8-bit data in Data_T_ram[127:0], calculating the CRC checksum of the first 8-bit data, and so on, sequentially calculating the CRC checksum of the second 8-bit data, until the CRC checksum of the last 8-bit data. The obtained CRC checksums are combined into a 16-bit CRC checksum calculation value Crc_1[15:0] and placed after the data Data_T_ram[127:0]. The same calculation method is used for 3 packets of 128... The 16-bit data yields three 16-bit CRC checksums, which are then appended to the packet count to form a complete set. Figure 1 The standard FT3 frame structure data is shown.

[0021] After framing is complete, the data enters the encoder, where the FT3 frame structure data (i.e., 384 bytes) is encoded according to the 8b10b encoding protocol. 16-bit data plus 3 The 16-bit checksum data is encoded. For example... Figure 1 As shown, every 8 bits of data are encoded into 10 bits. The FT3 frame structure data is encoded bit by bit from the high bit to the low bit. After encoding, it is converted into "0" and "1" that can be transmitted through optical fiber signals. By determining the polarity, consecutive "0" and "1" bits do not exceed 5 bits to maintain DC balance. K28.5 encoding is added to the idle bits according to the protocol. After completion, it is converted into 10-bit control character encoding. Together, they form the encoded bit stream and realize transmission in optical fiber.

[0022] The decoding method described in this invention is as follows: Figure 1 As shown, taking a packet of FT3 frame structure data Data_T_ram[383:0] as an example, the decoding method is described. The starting position of the FT3 frame structure data in the bitstream is determined by detecting the control characters agreed upon by the sending end. If the sending end adds a standard K28.5 character, the receiving end checks whether to read this character; if the character is read, it is determined to be the start of the FT3 frame structure data. According to the format of the FT3 frame structure, the valid bits of the data, i.e., a string of "0" and "1" at the start of the data, are extracted and stored in the decoder for decoding. First, the decoded data is divided into 128 segments according to the FT3 frame structure of the sending end. 16-bit 3-packet data, and 3 The 16-bit 3 packets of CRC checksum data are Data_F_ram[127:0], Data_F_ram[255:128], Data_F_ram[383:255], Crc_1[15:0], Crc_2[15:0], and Crc_3[15:0]. The Data_F_ram[127:0], Data_F_ram[255:128], and Data_F_ram[383:255] data are calculated using the same CRC calculation formula as in the encoding method. The calculated Crc_o_1[15:0], Crc_o_2[15:0], and Crc_o_3[15:0] are compared with the CRC checksum values ​​in the received encoded data. If they match, the data is considered valid, and a CRC checksum completion flag is set; otherwise, the data is discarded. After the CRC verification is complete, phase-shift sampling is performed for each clock cycle. Starting from the falling edge, four data points are delayed by 90°, 180°, 270°, and 360° respectively. The data from the four clock cycles are compared simultaneously. If three data points are the same, the data is considered valid. After decoding the valid data, the data Data_R_ram[383:0] is obtained. By comparing it with the data before encoding, the original data can be obtained completely.

[0023] Those skilled in the art will readily understand that the above description is merely a preferred embodiment of the present invention and is not intended to limit the present invention. Any modifications, equivalent substitutions, and improvements made within the spirit and principles of the present invention should be included within the scope of protection of the present invention.

Claims

1. A data transmission method for an FT3 frame structure based on 8b10b encoding, characterized in that, Specifically, the following steps are included: Step 1: Construct FT3 frame structure data; Step 2: Based on the 8b10b protocol, the data is encoded to obtain FT3 frame structure data and formed into a bit stream for transmission in optical fiber. Step 3: Based on the 8b10b protocol, decode the received bitstream to obtain the required FT3 frame structure data.

2. The method according to claim 1, characterized in that, The specific implementation method for constructing the FT3 frame structure data in step one is as follows: the data is grouped into 3 packets of 8 bytes according to the FT3 format. For a 16-bit data packet, taking the first packet as an example, the first 8 bits to the eighth 8 bits are used to calculate the CRC value according to the formula. After the calculation is completed, the CRC value is placed in the 16 bits after the first packet. Similarly, the second and third packets are calculated in the same way. After the calculation is completed, the FT3 frame structure data with parity bits is formed.

3. The method according to claim 1, characterized in that, In step two, the encoding method is as follows: each 8-bit data is split into three high-bit 3-bit data and five low-bit 5-bit data. After splitting, the polarity of the three high-bit 3-bit data and the five low-bit 5-bit data is calculated and judged to obtain positive polarity RD+ data and negative polarity RD- data. Depending on the polarity, "0" or "1" is added during encoding to ensure that the encoded data does not exceed five consecutive "0" or "1" bits. After judging the polarity, the five low-bit data enters the six high-bit encoder, and the three high-bit data enters the four low-bit encoder. The encoded data is converted into a string of "0" and "1" data bit streams and transmitted in optical fiber.

4. The method according to claim 3, characterized in that, Step two also includes adding control character codes, namely K codes, to the idle bits in the transmitted bit stream as synchronization and data start bits, used to detect data bit transmission errors and facilitate data recovery at the receiving end; after the K code is encoded, the K code is used as the basis for determining the data start bit at the receiving end.

5. The method according to claim 1, characterized in that, The specific implementation of step three is as follows: During decoding, the received 10-bit data is split into 6 bits and 4 bits. The high six bits of data enter the low five-bit decoder, and the low four bits of data enter the high three-bit decoder. The decoder completes the data decoding according to the 8b10b protocol. The decoded data is used to perform CRC check calculation using the same formula as in the encoding method. After calculation, the CRC check value is obtained. The result is compared with the CRC check value before encoding to determine the integrity and accuracy of the data.

6. The method according to claim 5, characterized in that, After the CRC verification is completed, the data is sampled and verified. The sampling and verification is completed by sampling the data 4 times in one clock cycle. The 4 data are compared and erroneous data is discarded.

7. The method according to claim 6, characterized in that, The four data points include four data points starting from the falling edge with lags of 90°, 180°, 270°, and 360° respectively.

8. A data transmission device based on an FT3 frame structure using 8b10b encoding, characterized in that, Specifically, it includes the following modules: Build modules to construct FT3 frame structure data; The encoding module, based on the 8b10b protocol, encodes the data to obtain FT3 frame structure data and forms a bit stream for transmission in optical fiber. The decoding module, based on the 8b10b protocol, decodes the received bitstream to obtain the required FT3 frame structure data.

9. An electronic device, characterized in that, include: One or more processors; A memory for storing one or more programs, wherein when the one or more programs are executed by the one or more processors, the one or more processors cause the one or more processors to implement the method of any one of claims 1 to 7.

10. A computer-readable storage medium, characterized in that, It stores executable instructions that, when executed by a processor, cause the processor to perform the method described in any one of claims 1 to 7.