Coding processing method, computer readable storage medium, electronic device and computer program product
By encoding eight 66B code blocks into 513B code blocks, the problems of high decoding error rate and complex processing in existing technologies are solved, achieving more efficient data transmission, especially in high-speed network communication and storage systems.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- ZTE CORP
- Filing Date
- 2024-11-22
- Publication Date
- 2026-05-22
AI Technical Summary
In the existing technology, the 512B/513B transcoding method is prone to high decoding error rate and complex processing, especially when the control block position is indicated by the linked list, the shifting processing of the 66B control block increases the complexity of decoding.
Eight 66B code blocks are encoded into one 513B code block. The first number of bits is used as the encoding information. Each 66B code block is encoded into one row of an 8-row, 8-byte structure. If it cannot be completely placed, the remaining data is put into the row of the subsequent control block with the second number of bits, and the position of the control code block is indicated by the bits.
It reduces decoding error rate and processing complexity, improves the flexibility and efficiency of data transmission, and is suitable for high-speed network communication and storage systems.
Smart Images

Figure CN122073522A_ABST
Abstract
Description
Technical Field
[0001] This application relates to the field of communications, and more specifically, to an encoding processing method, a computer-readable storage medium, an electronic device, and a computer program product. Background Technology
[0002] In related technologies, 512B / 513B transcoding uses a linked list to indicate the position of control blocks. If a certain FC (Forwarding Function) error occurs, it may cause subsequent control block decoding errors, thus amplifying the errors. At the same time, this method shifts the 66B control block, requiring the relevant 64B code blocks to be moved back to their original positions during decoding, which makes the process more complicated. Summary of the Invention
[0003] This application provides an encoding processing method, a computer-readable storage medium, an electronic device, and a computer program product to at least solve the problems of high error rates and complex processing in transcoding methods in related technologies.
[0004] According to one embodiment of this application, an encoding processing method is provided, including:
[0005] A set of eight 66B code blocks is encoded into a 513B code block. The first number of bits in the 513B code block is the encoded information. Each 66B code block is encoded into one row of an eight-row, eight-byte structure. If a 66B code block cannot be completely placed into the current row, the remaining data is placed into the subsequent rows of other control blocks with the second number of bits.
[0006] According to another embodiment of this application, an encoding processing apparatus is provided, comprising:
[0007] The encoding module is used to encode a group of eight 66B code blocks into a 513B code block. The first number of bits in the 513B code block is the encoded information. Each 66B code block is encoded into one row of an eight-row, eight-byte structure. If the 66B code block cannot be completely placed into the current row, the remaining data is placed into the subsequent rows of other control blocks in the second number of bits.
[0008] According to yet another embodiment of this application, a computer-readable storage medium is also provided, wherein a computer program is stored therein, and the computer program is configured to perform the steps in any of the above method embodiments when it is run.
[0009] According to yet another embodiment of this application, an electronic device is also provided, including a memory and a processor, wherein the memory stores a computer program and the processor is configured to run the computer program to perform the steps in any of the above method embodiments.
[0010] According to yet another embodiment of this application, a computer program product is also provided, including a computer program that, when executed by a processor, implements the steps in any of the above method embodiments.
[0011] Through the above embodiments of this application, a group of eight 66B code blocks are encoded into a single 513B code block. In this 513B code block, a first number of bits represent encoded information. Each 66B code block is encoded into one row of an eight-row, eight-byte structure. If a 66B code block cannot be completely placed in the current row, the remaining data is placed into subsequent rows containing other control blocks using a second number of bits. Because eight consecutive 66B code blocks are encoded into a 513B code block, and one or more bits indicate whether a control block exists within the 513B code block and its position, the problem of high decoding error rates and complex processing in related technologies can be solved, thus reducing the processing complexity. Attached Figure Description
[0012] Figure 1 This is a hardware structure block diagram of the mobile terminal used in the method embodiments of this application;
[0013] Figure 2 This is a flowchart of an encoding processing method according to an embodiment of this application;
[0014] Figure 3 This is a schematic diagram of the encoding of the 66B code block in the 513B code block according to an embodiment of this application;
[0015] Figure 4 This is a schematic diagram of 66B code block encoding according to an embodiment of this application;
[0016] Figure 5 This is a schematic diagram illustrating the encoding order of the 66B code block in the 513B code block according to an embodiment of this application;
[0017] Figure 6 This is a schematic diagram of the first line encoding format of the 513B code block according to an embodiment of this application. Figure 1 ;
[0018] Figure 7 This is a schematic diagram of the encoding format outside the first row of the 513B code block according to an embodiment of this application;
[0019] Figure 8 This is a schematic diagram of the first line encoding format of the 513B code block according to an embodiment of this application. Figure 2 ;
[0020] Figure 9 This is a schematic diagram of the first line encoding format of the 513B code block according to an embodiment of this application. Figure 3 ;
[0021] Figure 10 This is a schematic diagram of the encoding format of the 513B code block more control block according to an embodiment of this application;
[0022] Figure 11 This is a schematic diagram showing that 0 and 1 represent opposite meanings according to embodiments of this application;
[0023] Figure 12 This is a schematic diagram of the 513B encoding format according to an embodiment of this application. Detailed Implementation
[0024] The embodiments of this application will be described in detail below with reference to the accompanying drawings and examples.
[0025] It should be noted that the terms "first," "second," etc., in the specification, claims, and drawings of this application are used to distinguish similar objects and are not necessarily used to describe a specific order or sequence.
[0026] The methods and embodiments provided in this application can be executed on a mobile terminal, computer terminal, or similar computing device. Taking running on a mobile terminal as an example, Figure 1 This is a hardware structure block diagram of the mobile terminal used in the embodiments of the method of this application. For example... Figure 1 As shown, a mobile terminal may include one or more ( Figure 1 Only one is shown in the diagram. A processor 102 (which may include, but is not limited to, a microprocessor MCU or a programmable logic device FPGA, etc.) and a memory 104 for storing data are also shown. The mobile terminal may further include a transmission device 106 for communication functions and an input / output device 108. Those skilled in the art will understand that... Figure 1 The structure shown is for illustrative purposes only and does not limit the structure of the mobile terminal described above. For example, the mobile terminal may also include components that are more... Figure 1 The more or fewer components shown, or having the same Figure 1 The different configurations shown.
[0027] The memory 104 can be used to store computer programs, such as application software programs and modules, like the computer program corresponding to the encoding processing method in this embodiment. The processor 102 executes various functional applications and data processing by running the computer program stored in the memory 104, thus implementing the above-described method. The memory 104 may include high-speed random access memory and non-volatile memory, such as one or more magnetic storage devices, flash memory, or other non-volatile solid-state memory. In some instances, the memory 104 may further include memory remotely located relative to the processor 102, and these remote memories can be connected to the mobile terminal via a network. Examples of such networks include, but are not limited to, the Internet, corporate intranets, local area networks, mobile communication networks, and combinations thereof.
[0028] The transmission device 106 is used to receive or send data via a network. Specific examples of the network described above may include a wireless network provided by the mobile terminal's communication provider. In one example, the transmission device 106 includes a Network Interface Controller (MIC), which can connect to other network devices via a base station to communicate with the Internet. In another example, the transmission device 106 may be a Radio Frequency (RF) module used for wireless communication with the Internet.
[0029] This embodiment provides an encoding processing method that operates on the aforementioned mobile terminal or network architecture. Figure 2 This is a flowchart of the encoding processing method according to an embodiment of this application, such as... Figure 2 As shown, the process includes the following steps:
[0030] Step S202: Encode a group of 8 66B code blocks into a 513B code block. In the 513B code block, the first number of bits is the encoded information. Each 66B code block is encoded into one row of an 8-row 8-byte structure. If the 66B code block cannot be completely placed in the current row, the remaining data is placed into the subsequent rows of other control blocks with the second number of bits.
[0031] The above steps solve the problems of high decoding error rates and complex processing in related technologies, reducing processing complexity. They also improve the flexibility and efficiency of data transmission, making it particularly suitable for scenarios requiring the transmission of large amounts of data within limited bandwidth, such as high-speed network communication and storage systems.
[0032] In one embodiment of this application, the 513B code block includes eight 64B data code blocks, with the encoded information being a flag bit F, where F is 1 bit. This method allows for rapid identification of whether a code block is entirely composed of data code blocks, simplifying the decoding steps during data transmission and making it suitable for scenarios with large data transmission volumes and limited control information.
[0033] In one embodiment of this application, the 513B code block includes a 64B control code block. The encoded information includes flag bit F, flag bit N1, and flag bit LOC. Flag bit N1 indicates that the 513B code block includes a 64B control code block, and flag bit LOC indicates the location of a 66B control code block. Flag bits F and N1 are both 1 bit, and flag bit LOC is a third-order bit. This encoding method allows for accurate location of the control code block even when it contains only one control code block. It is suitable for scenarios where a small amount of control information needs to be inserted into the data stream, such as network device configuration updates.
[0034] In one embodiment of this application, the 513B code block includes two 64B control code blocks. The encoded information includes flag bit F, flag bit N1, flag bit N2, and flag bit LOC. Flag bits N1 and N2 indicate that the 513B code block includes two 64B control code blocks, and flag bit LOC indicates the position of the two 64B control code blocks. Flag bits F, N1, and N2 are each 1 bit, and flag bit LOC is a fourth quantization bit. This encoding method supports more control information and is suitable for communication systems that require frequent status monitoring and error detection.
[0035] In one embodiment of this application, the 513B code block includes at least three 64B control code blocks. The encoded information includes flag bit F, flag bit N1, flag bit N2, flag bit N3, flag bit N4, and flag bit LOC bitmap. Flag bits N1 and N2 indicate that the 513B code block includes at least three 64B control code blocks, and the flag bit LOC bitmap indicates the position of the at least three 64B control code blocks. Flag bits F, N1, N2, N3, and N4 are each 1 bit, and the flag bit LOC bitmap is a fifth number bit, with bits 0 to 7 corresponding to the positions of 0 to 7 64B code blocks. This encoding method greatly enhances the transmission capability of control information and is suitable for scenarios that require processing complex control logic and large amounts of control information, such as network management in data centers and advanced function implementation of storage devices.
[0036] In one embodiment of this application, if the control code block is the first 66B code block CBO, the byte indicating the control code block type in the control code block CBO after removing the synchronization header is converted into a 4-bit CB type. The remaining 56 bits of the control code block CBO are encoded into the last 56 bits of the first row of the 513B code block. The remaining 7 66B data code blocks after removing the synchronization header are encoded into the 64 bits of the corresponding row of the 513B code block. If the control code block is located outside the first 66B code block, and the first 66B code block is a data code block DBO, the first 60 bits of the remaining 64 bits of the data code block DBO after removing the synchronization header are encoded into the last 60 bits of the first row of the 513B code block. The last 4 bits are encoded into the first 4 bits of the 513B code block CBi corresponding to the first 66B control code block after the data code block DBO, starting from the (i+1)th row. The remaining 66B data code blocks after removing the synchronization header are encoded into the 64 bits of the corresponding row of the 513B code block. This method improves the efficiency and accuracy of data transmission by flexibly adjusting the encoding positions of control and data blocks. It is suitable for scenarios that require flexible insertion of control information into the data stream, such as quality control in real-time video streaming.
[0037] In one embodiment of this application, if the control code block is the first 66B code block CBO, the byte indicating the control code block type in the control code block CBO after removing the synchronization header is converted into a 4-bit CB. The remaining 56 bits of the control code block CBO are encoded into the last 56 bits of the first row of the 513B code block. The remaining 7 66B data code blocks, after removing the synchronization header, are encoded into the corresponding 64 bits of the 513B code block. If the control code block is outside the first 66B code block, and the first 66B code block is the data code block DBO, the first 60 bits of the remaining 64 bits after removing the synchronization header of the data code block DBO are encoded into the last 60 bits of the first row of the 513B code block, and the last 4 bits are encoded into the data code block DBO. The second 66B control code block CBj is then encoded into the first 4 bits of the (j+1)th row of the 513B code block. The remaining 66B data code blocks, after removing the synchronization header, are encoded into the corresponding 8 bytes of the 513B code block. The synchronization headers of the 66B control code blocks CBi and CBj are removed, and the bytes indicating the control code block type are converted into 4-bit CB. The remaining 56 bits from the 66B control code blocks CBi and CBj are encoded into the last 56 bits of rows i+1 and j+1 of the 513B code block, respectively. This encoding method further optimizes data transmission efficiency by encoding part of the control code block into the data code block. It is suitable for scenarios that require efficient transmission of data and control information with limited transmission resources, such as real-time status updates of network devices.
[0038] In one embodiment of this application, Figure 3This is a schematic diagram of the encoding of the 66B code block in the 513B code block according to an embodiment of this application, as shown below. Figure 3 As shown, if the first block in two 64B control code blocks is a control code block CBO, remove the synchronization header from the control code block CBO, convert the byte indicating the control code block type in the control code block CBO into a 4-bit CB type, and encode the 4-bit CB type into the 4-bit Type code in the first row; encode the first 52 bits of the remaining 56 bits of the control code block CBO into the last 52 bits of the first row of the 513B code block, and encode the last 4 bits into the last 4 bits of the (i+1)th row of the 513B code block corresponding to the first 66B control code block CBi after the control code block CBO; after removing the synchronization header from the remaining 66B data code blocks, encode them into the 8 bytes of the corresponding row of the 513B code block; remove the synchronization header from the remaining 1 control code block CBi, convert the byte indicating the control code block type in the control code block CBi into a 4-bit CB type, and encode the 4-bit CB type into the 4-bit Type code in the first row of the 513B code block CBi. The type is encoded into the 4-bit Typecode in the first line; the remaining 56 bits in the 66B control code block CBi are copied to the first 56 bits in the (i+1)th line of the 513B code block. This method ensures both data transmission efficiency and accurate transmission of control information, making it suitable for scenarios requiring the simultaneous transmission of large amounts of data and control information, such as high-speed data exchange within a data center.
[0039] In one embodiment of this application, if the first of at least three 64B control code blocks is a control code block CBO, the synchronization header of the control code block CBO is removed, the byte indicating the control code block type in the control code block CBO is converted into a 4-bit CB type, and the first 48 bits of the remaining 56 bits of the first control code block CBO are encoded into the last 48 bits of the first row of the 513B code block. If the first control code block CBO is the penultimate control code block, the starting position of the 8 bits in the first row of the 513B code block is CC Type and CB Type; or, if the first control code block CBO is not one of the last two control code blocks, the starting position of the 8 bits in the first row of the 513B code block is CC PAD and CB Type. The synchronization headers of the remaining control code blocks CBi are removed, and the bytes indicating the control code block type in the remaining control code blocks CBi are converted into 4-bit CB types. This encoding method can effectively handle the situation of multiple control code blocks and is suitable for scenarios that require the insertion of multiple control information in data transmission, such as the transmission of complex control commands in network protocols.
[0040] In one embodiment of this application, if the first of at least three 64B control code blocks is a data code block DBO, the first 56 bits of the remaining 64 bits after removing the synchronization header of the data code block DBO are encoded into the last 56 bits of the first row of the 513B code block, and the last 8 bits are encoded into the first 8 bits of the (i+1)th row of the 513B code block corresponding to the last 66B control code block CBi; the remaining 66B data code blocks, after removing the synchronization header, are encoded into 8 bytes of the corresponding row of the 513B code block; the remaining control code blocks CBj have their synchronization headers removed, and the bytes indicating the control code block type in the remaining control code blocks CBj are converted into 4-bit CB type. This encoding method performs well in scenarios where data and control information are transmitted in a mixed manner, and is suitable for scenarios where multiple control information needs to be flexibly inserted into the data stream, such as data block transmission and error checking in large-scale storage systems.
[0041] In one embodiment of this application, if the first of at least three 64B control code blocks is a control code block CBO, the synchronization header of the control code block CBO is removed, the byte indicating the control code block type in the control code block CBO is converted into a 4-bit CB type, and the first 48 bits of the remaining 56 bits of the first control code block CBO are encoded into the last 48 bits of the first row of the 513B code block. If the first control code block CBO is the penultimate control code block, the starting position of the 8 bits in the first row of the 513B code block is CCType and CB Type; or, if the first control code block CBO is not one of the last two control code blocks, the starting position of the 8 bits in the first row of the 513B code block is CC PAD and CB Type. The synchronization headers of the remaining control code blocks CBi are removed, and the bytes indicating the control code block type in the remaining control code blocks CBi are converted into 4-bit CB types. This method ensures efficient data transmission and accurate control information even when multiple control code blocks exist, making it suitable for complex network communication scenarios that require processing large amounts of control information.
[0042] In one embodiment of this application, if the first of at least three 64B control code blocks is a data code block DBO, the first 56 bits of the remaining 64 bits after removing the synchronization header of the data code block DBO are encoded into the last 56 bits of the first row of the 513B code block, and the last 8 bits are encoded into the first 8 bits of the (i+1)th row of the 513B code block corresponding to the last 66B control code block CBi; the remaining 66B data code blocks, after removing the synchronization header, are encoded into 8 bytes of the corresponding row of the 513B code block; the remaining control code blocks CBj have their synchronization headers removed, and the bytes indicating the control code block type in the remaining control code blocks CBj are converted into 4-bit CB type. This method flexibly handles control information in data transmission, improves the efficiency of data transmission and the processing speed of control information, and is suitable for scenarios that require the insertion of control information into high-speed data streams, such as real-time data exchange in high-performance computing clusters.
[0043] In one embodiment of this application, if the current control code block CBi is the last 66B control code block in a 513B code block, the 4-bit CB type of control code block CBi is encoded into the 4-bit CC type field in the corresponding row of the second-to-last 66B control code block in the 513B code block, and the first 8 bits in the corresponding row of the second-to-last 66B control code block in the 513B code block are filled with CC type and CB type; the remaining 56 bits in the 66B control code block CBi are encoded into the last 56 bits in the (i+1)th row of the 513B code block; if the current 66B control code block CBi is the second-to-last 66B control code block in a 513B code block, the remaining 56 bits in the 66B control code block CBi are encoded into the last 56 bits in the (i+1)th row of the 513B code block, and the first 8 bits in the (i+1)th row are filled with CB type and CC type, wherein the CC type is encoded as the CB type of the last 66B control code block. Type; If the current 66B control code block CBi is not one of the last two 66B control code blocks in the 513B code block, the remaining 56 bits in the 66B control code block CBi are encoded into 56 bits in the (i+1)th row of the 513B code block, and the first 8 bits in the (i+1)th row are filled with CC PAD+CB type. This method improves the flexibility of data transmission and the efficiency of control information processing by optimizing the encoding position of the control code block. It is suitable for scenarios that require flexible insertion and processing of control information in the data stream, such as real-time monitoring and fault detection of network devices.
[0044] In one embodiment of this application, if the current control code block CBi is the last 66B control code block in a 513B code block, the 4-bit CB type of control code block CBi is encoded into the 4-bit CC type field in the corresponding row of the second-to-last 66B control code block in the 513B code block, and the first 8 bits in the corresponding row of the second-to-last 66B control code block in the 513B code block are filled with CC type and CB type; the remaining 56 bits in the 66B control code block CBi are encoded into the first 56 bits in the (i+1)th row of the 513B code block; if the current 66B control code block CBi is the second-to-last 66B control code block in the 513B code block, the remaining 56 bits in the 66B control code block CBi are encoded into the last 56 bits in the (i+1)th row of the 513B code block, and the first 8 bits in the (i+1)th row are filled with CB type and CC type, wherein the CC type is encoded as the CB type of the last 66B control code block. Type; If the current 66B control code block CBi is not one of the last two 66B control code blocks in the 513B code block, the remaining 56 bits in the 66B control code block CBi are encoded into 56 bits in the (i+1)th row of the 513B code block, and the first 8 bits in the (i+1)th row are filled with CC PAD+CB type. This encoding method ensures high efficiency in data transmission and accuracy in control information by adjusting the encoding position of the control code block. It is suitable for scenarios that require flexible processing of multiple control information in high-speed data transmission, such as resource scheduling and network optimization in cloud computing platforms.
[0045] In one embodiment of this application, the 513B code block includes eight 64B data code blocks, with the encoded information being a flag bit F, used to indicate that the 513B code block includes eight 64B data code blocks, and the flag bit F is 1 bit. This method allows for rapid identification of the code block type, simplifies the decoding steps in the data transmission process, improves data transmission efficiency, and is suitable for scenarios with large data transmission volumes and limited control information, such as video streaming and big data analysis.
[0046] In one embodiment of this application, the 513B code block includes a 64B control code block. The encoded information includes a flag bit F, a flag bit SMI, and a flag bit LOC. The flag bit SMI indicates whether the 513B code block contains a 64B control code block, and the flag bit LOC indicates the location of a 66B control code block. Both flag bits F and SMI are 1 bit, and the flag bit LOC is the sixth digit. This encoding method improves the flexibility of data transmission and the efficiency of control information processing by adding flag bits to indicate the presence and location of control code blocks. It is suitable for scenarios where control information needs to be flexibly inserted and processed in the data stream, such as real-time status updates and error detection of network devices.
[0047] In one embodiment of this application, the 513B code block includes at least two 66B control code blocks. The encoded information includes a flag bit F, a flag bit SMI, and a flag bit LOC bitmap. The flag bit SMI indicates that the 513B code block includes at least two 66B control code blocks, and the flag bit LOC bitmap indicates the location of the at least two 66B control code blocks. Both flag bits F and SMI are 1 bit, and the flag bit LOC bitmap is the seventh bit. This encoding method supports efficient encoding of multiple control code blocks and is suitable for scenarios requiring the processing of complex control logic and large amounts of control information, such as network management in data centers and advanced function implementations of storage devices, ensuring efficient data transmission and accurate processing of control information.
[0048] In one embodiment of this application, if the 66B control code block is the first code block, the synchronization header of the 66B control code block CBO is removed, the byte indicating the control code block type in the control code block CBO is converted into a 4-bit CB type, and the 4-bit CB type is encoded into the 4-bit Type in the first line. The remaining 56 bits of the control code block CBO are encoded into the last 56 bits of the first row of the 513B code block. The remaining seven 66B data code blocks, after removing the synchronization header, are encoded into the corresponding 8 bytes of the 513B code block. If the 66B control code block is not the first code block, and the first code block is the data code block DBO, the first 56 bits of the remaining 64 bits after removing the synchronization header of the data code block DBO are encoded into the last 56 bits of the first row of the 513B code block, and the last 8 bits are encoded into the first 8 bits of the 513B code block CBi corresponding to the (i+1)th row of the 513B code block. The remaining 66B data code blocks, after removing the synchronization header, are encoded into the corresponding 8 bytes of the 513B code block. The synchronization header of the 66B control code block CBi is removed, and the byte indicating the control code block type is converted into a 4-bit CB. The remaining 56 bits of the 66B control code block CBi are encoded into the last 56 bits of the (i+1)th row of the 513B code block. The remaining 64 bits of the other 66B control code blocks CBI (after removing the synchronization header) are encoded into the 64 bits of the first row of the 513B code block. This method improves data transmission efficiency and control information processing speed by flexibly adjusting the encoding positions of control and data code blocks. It is suitable for scenarios requiring the insertion and processing of control information in high-speed data streams, such as real-time data exchange in high-performance computing clusters and real-time status monitoring of network devices.
[0049] In one embodiment of this application, if the 66B control code block is the first code block, the synchronization header of the 66B control code block CBO is removed, the byte indicating the control code block type in the control code block CBO is converted into a 4-bit CB type, and the 4-bit CB type is encoded into the 4-bit Type in the first line. The remaining 56 bits of the control code block CBO are encoded into the last 56 bits of the first row of the 513B code block. The remaining seven 66B data code blocks, after removing the synchronization header, are encoded into the corresponding 8 bytes of the 513B code block. If the 66B control code block is not the first code block, and the first code block is the data code block DBO, the first 56 bits of the remaining 64 bits after removing the synchronization header of the data code block DBO are encoded into the last 56 bits of the first row of the 513B code block, and the last 8 bits are encoded into the first 8 bits of the 513B code block CBi corresponding to the (i+1)th row of the 513B code block. The remaining 66B data code blocks, after removing the synchronization header, are encoded into the corresponding 8 bytes of the 513B code block. The synchronization header of the 66B control code block CBi is removed, and the byte indicating the control code block type is converted into a 4-bit CB. The remaining 56 bits of the 66B control code block CBi are encoded into the first 56 bits of the (i+1)th row of the 513B code block. The remaining 64 bits of the other 66B control code blocks CBI (after removing the synchronization header) are encoded into the 64 bits of the 1st row of the 513B code block. This method not only improves data transmission efficiency but also optimizes the control information processing flow, ensuring data transmission accuracy and timely processing of control information. It is suitable for scenarios requiring flexible processing and insertion of control information in high-speed data transmission, such as real-time video streaming, data block transmission in large-scale storage systems, and real-time status monitoring of network devices.
[0050] This application demonstrates how multiple 66B code blocks of different types can be effectively integrated into a single 513B code block, improving data transmission efficiency and optimizing control information processing. By flexibly adjusting the position and format of the encoded information, this method ensures accurate indication of the type and position of each code block, even when control and data code blocks are mixed, thus avoiding errors and confusion during data transmission. Furthermore, this scheme supports efficient encoding of multiple control code blocks, further enhancing its applicability and performance in high-speed data transmission systems. In practical applications, this method can be widely used in various high-speed network communication and storage systems, such as high-speed data exchange within data centers, resource scheduling in cloud computing platforms, and data block transmission in large-scale storage systems. Its advantages are particularly pronounced in scenarios requiring complex control logic and large amounts of control information, such as real-time status updates of network devices and real-time data exchange in high-performance computing clusters. It significantly improves data transmission efficiency and control information processing speed, providing strong technical support for building more efficient and reliable high-speed data transmission systems.
[0051] The transcoding process in this embodiment mainly processes the input 66B code block sequence. Figure 4 This is a schematic diagram of 66B code block encoding according to an embodiment of this application, wherein the 66B control code block format is as follows: Figure 4 As shown.
[0052] A group of eight 66B code blocks is encoded into a single 513B code block. Figure 5 This is a schematic diagram of the encoding order of the 66B code block in the 513B code block according to an embodiment of this application, and its format changes are as follows: Figure 5 As shown. Each 66B code block is encoded into 8 bytes in one row of the corresponding 513B code block. Figure 6 This is a schematic diagram of the first line encoding format of the 513B code block according to an embodiment of this application. Figure 1 Specific encoding information is as follows Figure 6 As shown.
[0053] If the 513B code block contains all 66B data code blocks, the F flag is 0. By removing the data code block synchronization header '01', all remaining 8 bytes are copied to the corresponding 8 bytes of the 513B code block, thus completing the encoding of the entire data code block.
[0054] If the 513B code block contains at least one 66B control code block, the F flag is set to 1;
[0055] If the 513B code block contains only one 66B control code block, the N1 flag is 0, and the 3-bit LOC is used to encode the position of the control code block in the sequence of the eight received 66B code blocks, that is, the position of the 66B control block in the row of the 513B code block. 0 to 7 indicate that the control block is in the 1st to 8th rows of 64 bits in the 513B code block, respectively.
[0056] When the first code block is a control code block (CBO), remove the synchronization header '10', and proceed according to... Figure 4 The rightmost column contains bytes indicating the type of control block. Figure 4 The 15 valid values are converted into a 4-bit CB type. The remaining 56 bits of the CBO are copied to the last 56 bits of the first line in the 513B code block. The remaining 7 66B code blocks are all data code blocks. By removing the synchronization header '01', all the remaining 8 bytes are copied to the corresponding 8 bytes of the 513B code block, completing the encoding of the entire data block.
[0057] When the first code block is a data block (DBO), after removing the synchronization header '01', the remaining 64 bits are divided into the first 60 bits and the last 4 bits. The first 60 bits are filled into the last 60 bits of the first row of the 513B code block. The last 4 bits are filled into the first 4 bits of the (i+1)th row of the corresponding 513B code block CBi of the first 66B control code block following this 66B code block. Figure 7 This is a schematic diagram of the encoding format outside the first row of the 513B code block according to an embodiment of this application, as shown below. Figure 7 As shown. The remaining 66B code blocks are all data code blocks. By removing the synchronization header '01', all the remaining 8 bytes are copied to the corresponding 8 bytes of the 513B code block to complete the encoding of the entire data block. The remaining 66B control code block CBi, after removing the synchronization header '10', is encoded according to... Figure 4 The rightmost column contains bytes indicating the block type field within the control block. Figure 4 The 15 valid values are converted into a 4-bit CBtype, and the remaining 56 bits in CBi are copied to the last 56 bits of the (i+1)th row in the 513B code block.
[0058] Figure 8 This is a schematic diagram of the first line encoding format of the 513B code block according to an embodiment of this application. Figure 2 ,like Figure 8 As shown, if the 513B code block contains only two 66B control code blocks, the N1 flag is 1, the N2 flag is 0, and the 3 bits LOC1 and LOC2 are used to encode the position of the control code block in the sequence of the received eight 66B code blocks, that is, the position of the 66B control block in the row of the 513B code block. Here, 0 to 7 indicate that the two control blocks are located in the first to eighth rows of 64 bits in the 513B code block, respectively.
[0059] When the first code block is a control code block (CBO), remove the synchronization header '10', and proceed according to... Figure 4 The rightmost column contains bytes indicating the type of control block. Figure 4 The 15 valid values are converted into a 4-bit CB type. The remaining 56 bits of the CBO are divided into the first 52 bits and the last 4 bits. The first 52 bits are copied to the last 52 bits of the 0th row of the 513B code block. The last 4 bits are filled into the first 4 bits of the (i+1)th row of the corresponding 513B code block of the first 66B control code block CBi after this 66B code block. Figure 7 As shown. The remaining 66B data blocks are encoded by removing the synchronization header '01' and copying all the remaining 8 bytes to the corresponding 8 bytes of the 513B code block, thus completing the encoding of the entire data block. For example... Figure 7 As shown, the remaining 66B control code block CBi, with the synchronization header '10' removed, is based on... Figure 4 The rightmost column contains bytes indicating the block type field within the control block. Figure 4 The 15 valid values are converted into a 4-bit CB type, and the remaining 56 bits in CBi are copied to the last 56 bits of the (i+1)th row in the 513B code block.
[0060] When the first code block is a data block (DBO), after removing the synchronization header '01', the remaining 64 bits are divided into the first 56 bits and the last 8 bits. The first 56 bits are filled into the last 60 bits of the first row in the 513B code block. The first 4 bits of the last 8 bits are filled into the first 4 bits of the corresponding (i+1)th row of the 513B code block of the first 66B control code block CBi following this 66B code block, and the last 4 bits of the last 8 bits are filled into the first 4 bits of the corresponding (j+1)th row of the 513B code block of the second 66B control code block CBj following this 66B code block, as follows. Figure 7 As shown. For the remaining 66B data blocks, the synchronization header '01' is removed, and all remaining 8 bytes are copied to the corresponding 8 bytes of the 513B code block to complete the data block encoding. The remaining two 66B control code blocks CBi and CBj have their synchronization header '10' removed, and are encoded according to... Figure 4 The rightmost column contains bytes indicating the block type field within the control block. Figure 4 The 15 valid values are converted into 4-bit CB type, and the remaining 56 bits in CBi and CBj are copied to the last 56 bits of the (i+1)th and (j+1)th rows of the 513B code block, respectively.
[0061] Figure 9 This is a schematic diagram of the first line encoding format of the 513B code block according to an embodiment of this application. Figure 3,like Figure 9 As shown, if the 513B code block contains only two 66B control code blocks, the N1 flag is 1, the N2 flag is 0, and the 3 bits LOC1 and LOC2 are used to encode the position of the control code block in the sequence of the received eight 66B code blocks, that is, the position of the 66B control block in the row of the 513B code block. Here, 0 to 7 indicate that the two control blocks are located in the first to eighth rows of 64 bits in the 513B code block, respectively.
[0062] When the first code block is a control code block (CBO), remove the synchronization header '10', and proceed according to... Figure 4 The rightmost column contains bytes indicating the type of control block. Figure 4 The 15 valid values are converted into a 4-bit CB type. The remaining 56 bits of the CBO are divided into the first 52 bits and the last 4 bits. The first 52 bits are copied to the last 52 bits of the 0th row of the 513B code block. The last 4 bits are filled into the first 4 bits of the (i+1)th row of the corresponding 513B code block of the first 66B control code block CBi after this 66B code block. Figure 7 As shown. The remaining 66B data blocks are encoded by removing the synchronization header '01' and copying all the remaining 8 bytes to the corresponding 8 bytes of the 513B code block, thus completing the encoding of the entire data block. For example... Figure 5 As shown, the remaining 66B control code block CBi, with the synchronization header '10' removed, is based on... Figure 4 The rightmost column contains bytes indicating the block type field within the control block. Figure 4 The 15 valid values are converted into a 4-bit CB type, and the remaining 56 bits in CBi are copied to the last 56 bits of the (i+1)th row in the 513B code block.
[0063] When the first code block is a data block (DBO), after removing the synchronization header '01', the remaining 64 bits are divided into the first 56 bits and the last 8 bits. The first 56 bits are filled into the last 60 bits of the first row in the 513B code block. The first 4 bits of the last 8 bits are filled into the first 4 bits of the corresponding (i+1)th row of the 513B code block of the first 66B control code block CBi following this 66B code block, and the last 4 bits of the last 8 bits are filled into the first 4 bits of the corresponding (j+1)th row of the 513B code block of the second 66B control code block CBj following this 66B code block, as follows. Figure 7 As shown. For the remaining 66B data blocks, the synchronization header '01' is removed, and all remaining 8 bytes are copied to the corresponding 8 bytes of the 513B code block to complete the data block encoding. The remaining two 66B control code blocks CBi and CBj have their synchronization header '10' removed, and are encoded according to... Figure 4 The rightmost column contains bytes indicating the block type field within the control block. Figure 4 The 15 valid values are converted into 4-bit CB type, and the remaining 56 bits in CBi and CBj are copied to the last 56 bits of the (i+1)th and (j+1)th rows of the 513B code block, respectively.
[0064] If a 513B code block contains three or more 66B control code blocks, the N1 flag is 1, the N2 flag is 1, and the N3 and N4 bits are 0. An 8-bit Local bitmap is used to encode whether each of the eight received 66B code blocks is a data code block. The 8 bits of the Local bitmap correspond to the type of the eight 66B code blocks, and bits 0 to 7 correspond to the order of the 0 to 7 66B code blocks, which are rows 0 to 7 in the 513B code block. When the i-th 66B code block is a 66B data code block, the i-th bit in the Local bitmap is 1; when the i-th 66B code block is a 66B control code block, the i-th bit in the Local bitmap is 0.
[0065] When the first code block is a control code block (CBO), according to Figure 4 The rightmost column contains bytes indicating the type of control block. Figure 4 The 15 valid values are converted into a 4-bit CB type. The remaining 56 bits of CBO are divided into the first 48 bits and the last 8 bits. The first 48 bits are copied to the last 48 bits of the 0th row of the 513B code block. The first 4 bits of the last 8 bits are filled into the first 4 bits of the first 66B control code block CBi following this 66B code block, corresponding to the (i+1)th row of the 513B code block. The last 4 bits of the last 8 bits are filled into the first 4 bits of the second 66B control code block CBj following this 66B code block, corresponding to the (j+1)th row of the 513B code block. Figure 7 As shown. For the remaining 66B data blocks, by removing the synchronization header '01' and copying all the remaining 8 bytes to the corresponding 8 bytes of the 513B code block, the encoding of the entire data block is completed. The two 66B control code blocks CBi and CBj, by removing the synchronization header '10', are... Figure 4 The rightmost column contains bytes indicating the block type field within the control block. Figure 4 The 15 valid values are converted into 4-bit CB type, and the remaining 56 bits in CBi and CBj are copied to the last 56 bits of the (i+1)th and (j+1)th rows of the 513B code block, respectively. Figure 10 This is a schematic diagram of the encoding format of the 513B code block more control block according to an embodiment of this application, as shown below. Figure 10 As shown, the remaining 66B control code block CBk, after removing the synchronization header '10', has its remaining 64 bits filled into the 64 bits of the (k+1)th row of the 513B code block.
[0066] When the first code block is a data block (DBO), after removing the synchronization header '01', the remaining 64 bits are divided into the first 52 bits and the last 12 bits. The first 52 bits are filled into the last 52 bits of the first row in the 513B code block. The first 4 bits of the last 12 bits are filled into the first 4 bits of the corresponding (i+1)th row of the 513B code block for the first 66B control code block CBi following this 66B code block; the middle 4 bits of the last 12 bits are filled into the first 4 bits of the corresponding (j+1)th row of the 513B code block for the second 66B control code block CBj following this 66B code block; and the last 4 bits of the last 12 bits are filled into the first 4 bits of the corresponding (k+1)th row of the 513B code block for the third 66B control code block CBk following this 66B code block, as follows. Figure 7 As shown. For the remaining 66B data blocks, the synchronization header '01' is removed, and all remaining 8 bytes are copied to the corresponding 8 bytes of the 513B code block to complete the data block encoding. For the remaining three 66B control code blocks CBi, CBj, and CBk, the synchronization header '10' is removed, and according to... Figure 4 The rightmost column contains bytes indicating the block type field within the control block. Figure 4 The 15 valid values are converted into 4-bit CB type, CBi, CBj, and CBk. The remaining 56 bits are copied to the last 56 bits of the (i+1), (j+1), and (k+1)th rows of the 513B code block, respectively. Figure 10 As shown, the remaining 66B control code block CBI, after removing the synchronization header '10', has its remaining 64 bits filled into the 64 bits of the first row of the 513B code block.
[0067] In the above scheme, the specific values of F, N1, N2, N3, N4, and the Ioc bitmap can be represented by inverted 0 and 1 values without affecting the specific encoding function. Figure 11 This is a schematic diagram illustrating that 0 and 1 represent opposite meanings according to embodiments of this application, such as... Figure 11 As shown.
[0068] This transcoding process mainly processes the input 66B code block sequence, where the 66B control code block format is as follows: Figure 4 As shown.
[0069] A group of eight 66B code blocks is encoded into a single 513B code block, and its format changes as follows: Figure 5 As shown. Each 66B code block is encoded into 8 bytes in one row of the corresponding 513B code block. Figure 12 This is a schematic diagram of the 513B encoding format according to an embodiment of this application. Specific encoding information is as follows: Figure 12 As shown.
[0070] If the 513B code block contains all 66B data code blocks, the F flag is 0. By removing the data code block synchronization header '01', all remaining 8 bytes are copied to the corresponding 8 bytes of the 513B code block, thus completing the encoding of the entire data code block.
[0071] If the 513B code block contains at least one 66B control code block, the F flag is set to 1;
[0072] If a 513B code block contains only one 66B control code block, the SMI flag is 0, and the 3-bit LOC is used to encode the position of this control code block within the sequence of the received eight 66B code blocks, that is, the position of the 66B control block within the 513B code block row. Bits 0 to 7 indicate rows 1 to 8 (64 bits) of the 513B code block, respectively. The 4-bit Type code indicates the CB type of this unique 66B control block. Figure 4 The rightmost column contains the bytes in the 66B control block that indicate the block type field. Figure 4 (15 valid values) are converted into a 4-bit CB type.
[0073] When the first code block is a control code block (CBO), remove the synchronization header '10', and proceed according to... Figure 4 The rightmost column contains bytes indicating the type of control block. Figure 4 The 15 valid values are converted into a 4-bit CB type. The remaining 56 bits of the CBO are copied to the last 56 bits of the first line in the 513B code block. The remaining 7 66B code blocks are all data code blocks. By removing the synchronization header '01', all the remaining 8 bytes are copied to the corresponding 8 bytes of the 513B code block, completing the encoding of the entire data block.
[0074] When the first code block is a data block (DBO), after removing the synchronization header '01', the remaining 64 bits are divided into the first 56 bits and the last 8 bits. The first 56 bits are filled into the last 56 bits of the first row of the 513B code block. The last 8 bits are filled into the first 8 bits of the (i+1)th row of the corresponding 513B code block of the last 66B control code block CBi in this 66B code block sequence, as follows: Figure 12 As shown in (b). For the remaining 66B code blocks (data blocks), the synchronization header '01' is removed, and all remaining 8 bytes are copied to the corresponding 8 bytes of the 513B code block, completing the encoding of the entire data block. For the remaining 66B control code block CBi, the synchronization header '10' is removed, and according to... Figure 4 The rightmost column contains bytes indicating the block type field within the control block. Figure 4The 15 valid values in the CBi are converted into a 4-bit CB type, which is then filled into the 4-bit Type code in the first line. The remaining 56 bits in the CBi are copied to the last 56 bits of the (i+1)th line in the 513B code block.
[0075] If a 513B code block contains two or more 66B control code blocks, the SMI flag is set to 1, and the 7-bit IOC bitmap is used to encode the position of the control code block within the sequence of the received eight 66B code blocks, i.e., whether the first seven 66B code blocks are control or data code blocks. This also indicates the row position of the 66B code block within the 513B code block, where bits 0 to 7 indicate the 66B code block's location in rows 1 to 8 (64 bits) of the 513B code block. When the i-th 66B code block is a 66B data code block, the i-th bit in the IOC bitmap is 1; when the i-th 66B code block is a 66B control code block, the i-th bit in the IOC bitmap is 0.
[0076] When the first code block is a control code block (CBO), remove the synchronization header '10', and proceed according to... Figure 4 The rightmost column contains bytes indicating the control block type. Figure 4 The 15 valid values are converted into a 4-bit CB type. The remaining 56 bits of the CBO are divided into the first 48 bits and the last 8 bits. The first 48 bits are copied to the last 48 bits of the first line in the 513B code block. Specifically, the first 8 bits of the first line of the 513B code block are filled with CC Type and CB Type (if the current control block is the second to last control block) or CC PAD and CB Type (if the current control block is not the last two control blocks).
[0077] For each control block CBi at the remaining positions, remove the synchronization header '10', according to Figure 4 The rightmost column contains bytes indicating the block type field within the control block. Figure 4 (15 valid values) are converted into a 4-bit CB type.
[0078] 1) If the current CBi is the last 66B control block in a 513B code block, such as Figure 12As shown in (b), the 4-bit CBtype is filled into the 4-bit CC type field in the corresponding row of the 513B code block of the second-to-last 66B control code block. In this row, CCtype + CB type together occupy the first 8 bits of the 513B code block. The specific order of CC Type and CB Type can be chosen arbitrarily, and only one can be determined during the transcoding process. It can be CC Type + CB Type or CB Type + CCType. The remaining 56 bits in CBi are copied to the last 56 bits of the (i+1)th row of the 513B code block.
[0079] 2) If the current CBi is the second-to-last 66B control code block in the 513B code block, such as Figure 12 As shown in (c), the 4-bit CB type and the CC type filled by the last control block CB Type together occupy 8 bits in the (i+1)th row of the 513B code block. The remaining 56 bits in CBi are copied to the last 56 bits of the (i+1)th row of the 513B code block. The specific order of CC Type and CB Type cannot be arbitrarily chosen; one of them needs to be determined during the transcoding process, which can be either CC Type + CB Type or CB Type + CC Type.
[0080] 3) If the current CBi is not one of the last two 66B control blocks in a 513B code block, such as Figure 12 As shown in (a), Figure 4 The unused 4 bits of CC PAD = '0100' and CB type are padded with 8 bits. The remaining 56 bits in CBi are copied to the 64 bits of the (i+1)th row of the 513B code block. The specific order of CC PAD and CB Type cannot be arbitrarily chosen; only one of them needs to be determined during the transcoding process. It can be either CC PAD + CB Type or CB Type + CC PAD.
[0081] The remaining 66B code blocks are all data code blocks. By removing the synchronization header '01', all the remaining 8 bytes are copied to the corresponding 8 bytes of the 513B code block to complete the encoding of all data blocks.
[0082] When the first code block is a data block (DBO), after removing the synchronization header '01', the remaining 64 bits are divided into the first 56 bits and the last 8 bits. The first 56 bits are filled into the last 56 bits of the first row of the 513B code block. The last 8 bits are filled into the first 8 bits of the (i+1)th row of the corresponding 513B code block of the last 66B control code block CBi in this 66B code block sequence, as follows: Figure 12As shown in (b). For the remaining 66B code blocks, the synchronization header '01' is removed, and all remaining 8 bytes are copied to the corresponding 8 bytes of the 513B code block, completing the encoding of the entire data block. For each control block CBi in the remaining positions, the synchronization header '10' is removed, and the encoding is performed according to... Figure 4 The rightmost column contains bytes indicating the block type field within the control block. Figure 4 (15 valid values) are converted into a 4-bit CB type.
[0083] 1) If the current CBi is the last 66B control block in a 513B code block, such as Figure 12 As shown in (b), the 4-bit CBtype is filled into the 4-bit CC type field in the corresponding row of the 513B code block of the second-to-last 66B control code block. In this row, CCtype + CB type together occupy the first 8 bits of the 513B code block. The specific order of CC Type and CB Type can be chosen arbitrarily, and only one can be determined during the transcoding process. It can be CC Type + CB Type or CB Type + CCType. The remaining 56 bits in CBi are copied to the last 56 bits of the (i+1)th row of the 513B code block.
[0084] 2) If the current CBi is the second-to-last 66B control code block in the 513B code block, such as Figure 12 As shown in (c), the 4-bit CB type and the CC type filled by the last control block CB Type together occupy 8 bits in the (i+1)th row of the 513B code block. The remaining 56 bits in CBi are copied to the last 56 bits of the (i+1)th row of the 513B code block. The specific order of CC Type and CB Type cannot be arbitrarily chosen; one of them needs to be determined during the transcoding process, which can be either CC Type + CB Type or CB Type + CC Type.
[0085] 3) If the current CBi is not one of the last two 66B control blocks in a 513B code block, such as Figure 12 As shown in (a), Figure 4 The unused 4 bits of CC PAD = '0100' in the table are padded with 8 bits to make up the CB type. These, along with the remaining 56 bits in CBi, are copied to the 64 bits in the (i+1)th row of the 513B code block. The specific order of CC PAD and CB Type cannot be arbitrarily chosen; only one of them needs to be determined during the transcoding process. It can be either CC PAD + CB Type or CB Type + CC PAD.
[0086] Through the above description of the embodiments, those skilled in the art can clearly understand that the methods according to the above embodiments can be implemented by means of software plus necessary general-purpose hardware platforms. Of course, they can also be implemented by hardware, but in many cases the former is a better implementation method. Based on this understanding, the technical solution of this application, in essence, or the part that contributes to the prior art, can be embodied in the form of a software product. This computer software product is stored in a storage medium (such as ROM / RAM, magnetic disk, optical disk) and includes several instructions to cause a terminal device (which may be a mobile phone, computer, server, or network device, etc.) to execute the methods described in the various embodiments of this application.
[0087] This embodiment also provides an encoding processing apparatus for implementing the above embodiments and preferred embodiments; details already described will not be repeated. As used below, the term "module" can be a combination of software and / or hardware that implements a predetermined function. Although the apparatus described in the following embodiments is preferably implemented in software, hardware implementation, or a combination of software and hardware, is also possible and contemplated. The apparatus includes:
[0088] The encoding module is used to encode a group of eight 66B code blocks into a 513B code block. The first number of bits in the 513B code block is the encoded information. Each 66B code block is encoded into one row of an eight-row, eight-byte structure. If the 66B code block cannot be completely placed into the current row, the remaining data is placed into the subsequent rows of other control blocks in the second number of bits.
[0089] It should be noted that the above modules can be implemented by software or hardware. For the latter, they can be implemented in the following ways, but are not limited to: all the above modules are located in the same processor; or, the above modules are located in different processors in any combination.
[0090] Embodiments of this application also provide a computer-readable storage medium storing a computer program, wherein the computer program is configured to perform the steps in any of the above method embodiments when it is run.
[0091] In one exemplary embodiment, the aforementioned computer-readable storage medium may include, but is not limited to, various media capable of storing computer programs, such as a USB flash drive, read-only memory (ROM), random access memory (RAM), portable hard disk, magnetic disk, or optical disk.
[0092] Embodiments of this application also provide an electronic device including a memory and a processor, wherein the memory stores a computer program and the processor is configured to run the computer program to perform the steps in any of the above method embodiments.
[0093] In one exemplary embodiment, the electronic device may further include a transmission device and an input / output device, wherein the transmission device is connected to the processor and the input / output device is connected to the processor.
[0094] Specific examples in this embodiment can be found in the examples described in the above embodiments and exemplary implementations, and will not be repeated here.
[0095] Obviously, those skilled in the art should understand that the modules or steps of this application described above can be implemented using general-purpose computing devices. They can be centralized on a single computing device or distributed across a network of multiple computing devices. They can be implemented using computer-executable program code, and thus can be stored in a storage device for execution by a computing device. In some cases, the steps shown or described can be performed in a different order than those presented here, or they can be fabricated as separate integrated circuit modules, or multiple modules or steps can be fabricated as a single integrated circuit module. Thus, this application is not limited to any particular combination of hardware and software.
[0096] The above description is merely a preferred embodiment of this application and is not intended to limit this application. Various modifications and variations can be made to this application by those skilled in the art. Any modifications, equivalent substitutions, improvements, etc., made within the principles of this application should be included within the protection scope of this application.
Claims
1. An encoding processing method, characterized in that, include: A set of eight 66B code blocks is encoded into a 513B code block. The first number of bits in the 513B code block is the encoded information. Each 66B code block is encoded into one row of an eight-row, eight-byte structure. If a 66B code block cannot be completely placed into the current row, the remaining data is placed into the subsequent rows of other control blocks with the second number of bits.
2. The method according to claim 1, characterized in that, The 513B code block includes the eight 64B data code blocks, and the encoded information is a flag bit F, which is 1 bit.
3. The method according to claim 1, characterized in that, The 513B code block includes a 64B control code block. The encoded information includes flag bit F, flag bit N1, and flag bit LOC. Flag bit N1 is used to indicate that the 513B code block includes a 64B control code block. Flag bit LOC is used to indicate the position of the 66B control code block. Flag bit F and flag bit N1 are both 1 bit, and flag bit LOC is a third number of bits.
4. The method according to claim 1, characterized in that, The 513B code block includes two 64B control code blocks. The encoding information includes flag bit F, flag bit N1, flag bit N2, and flag bit LOC. Flag bits N1 and N2 are used to indicate that the 513B code block includes two 64B control code blocks. Flag bit LOC is used to indicate the position of the two 64B control code blocks. Flag bits F, N1, and N2 are all 1 bit, and flag bit LOC is a fourth number bit.
5. The method according to claim 1, characterized in that, The 513B code block includes at least three 64B control code blocks. The encoding information includes flag bit F, flag bit N1, flag bit N2, flag bit N3, flag bit N4, and flag bit LOC bitmap. Flag bits N1 and N2 are used to indicate that the 513B code block includes at least three 64B control code blocks. The flag bit LOC bitmap is used to indicate the position of the at least three 64B control code blocks. Flag bits F, N1, N2, N3, and N4 are all 1 bit. The flag bit LOC bitmap is a fifth number bit, and bits 0 to 7 correspond to the positions of 0 to 7 64B code blocks.
6. The method according to claim 3, characterized in that, If the control code block is the first 66B code block CBO, the byte indicating the control code block type in the control code block CBO after removing the synchronization header is converted into a 4-bit CB type. The remaining 56 bits of the control code block CBO are encoded into the last 56 bits of the first line in the 513B code block. The remaining 7 66B data code blocks after removing the synchronization header are encoded into the 64 bits of the corresponding line of the 513B code block. If the control code block is located outside the first 66B code block, and the first 66B code block is a data code block DBO, the first 60 bits of the 64 bits after removing the synchronization header of the data code block DBO are encoded into the last 60 bits of the first row of the 513B code block, and the last 4 bits are encoded into the first 4 bits of the first 66B control code block CBi after the data code block DBO, corresponding to the (i+1)th row of the 513B code block. The remaining 66B data code blocks after removing the synchronization header are encoded into the 64 bits of the corresponding row of the 513B code block.
7. The method according to claim 3, characterized in that, If the control code block is the first 66B code block CBO, the byte indicating the control code block type in the control code block CBO after removing the synchronization header is converted into a 4-bit CB type. The remaining 56 bits of the control code block CBO are encoded into the last 56 bits of the first row in the 513B code block. The remaining 7 66B data code blocks after removing the synchronization header are encoded into the 64 bits of the corresponding row of the 513B code block. If the control code block is located outside the first 66B code block, and the first 66B code block is a data code block DBO, the first 60 bits of the 64 bits after removing the synchronization header of the data code block DBO are encoded into the last 60 bits of the first row of the 513B code block, and the last 4 bits are encoded into the last 4 bits of the first 66B control code block CBi after the data code block DBO, corresponding to the (i+1)th row of the 513B code block. The remaining 66B data code blocks, after removing the synchronization header, are encoded into the 64 bits of the corresponding row of the 513B code block.
8. The method according to claim 4, characterized in that, If the first of the two 64B control code blocks is a control code block CBO, remove the synchronization header from the control code block CBO, convert the byte indicating the control code block type in the control code block CBO into a 4-bit CB type, encode the first 52 bits of the remaining 56 bits of the control code block CBO into the last 52 bits of the first row of the 513B code block, and encode the last 4 bits into the first 4 bits of the first 66B control code block CBi after the control code block CBO, corresponding to the (i+1)th row of the 513B code block; after removing the synchronization header from the remaining 66B data code blocks, encode them into the 8 bytes of the corresponding row of the 513B code block; remove the synchronization header from the remaining 1 control code block CBi, convert the byte indicating the control code block type in the control code block CBi into a 4-bit CB type, and copy the remaining 56 bits of the control code block CBi to the last 56 bits of the (i+1)th row of the 513B code block; If the first of the two 64B control code blocks is a data code block DBO, the first 56 bits of the remaining 64 bits after removing the synchronization header of the data code block DBO are encoded into the last 60 bits of the first row of the 513B code block. The first 4 bits of the last 8 bits are encoded into the first 66B control code block CBi after the data code block DBO, corresponding to the first 4 bits of the (i+1)th row of the 513B code block. The last 4 bits of the last 8 bits are encoded into the second 66B control code block CBj after the data code block DBO, corresponding to the first 4 bits of the (j+1)th row of the 513B code block. The remaining 66B data code blocks, after removing the synchronization header, are encoded into the corresponding 8 bytes of the 513B code block. The synchronization headers of the 66B control code blocks CBi and CBj are removed, the bytes indicating the control code block type are converted into 4-bit CB type, and the remaining 56 bits are encoded into the last 56 bits of the (i+1)th and (j+1)th rows of the 513B code block, respectively.
9. The method according to claim 4, characterized in that, If the first of the two 64B control code blocks is a control code block CBO, remove the synchronization header from the control code block CBO, convert the byte indicating the control code block type in the control code block CBO into a 4-bit CB type, encode the first 52 bits of the remaining 56 bits of the control code block CBO into the last 52 bits of the first row of the 513B code block, and encode the last 4 bits into the last 4 bits of the (i+1)th row of the corresponding 513B code block of the first 66B control code block CBi after the control code block CBO; after removing the synchronization header from the remaining 66B data code blocks, encode them into the 8 bytes of the corresponding row of the 513B code block, remove the synchronization header from the remaining 1 control code block CBi, convert the byte indicating the control code block type in the control code block CBi into a 4-bit CB type, and copy the remaining 56 bits of the control code block CBi to the first 56 bits of the (i+1)th row of the 513B code block; If the first of the two 64B control code blocks is a data code block DBO, the first 56 bits of the remaining 64 bits after removing the synchronization header of the data code block DBO are encoded into the last 60 bits of the first row of the 513B code block, and the first 4 bits of the last 8 bits are encoded into the last 4 bits of the first 66B control code block CBi after the data code block DBO, corresponding to the (i+1)th row of the 513B code block. The last 4 bits of the last 8 bits are encoded into the last 4 bits of the second 66B control code block CBj after the data code block DBO, corresponding to the (j+1)th row of the 513B code block. The remaining 66B data code blocks, after removing the synchronization header, are encoded into the corresponding 8 bytes of the 513B code block. The synchronization headers of the 66B control code blocks CBi and CBj are removed, the byte indicating the control code block type is converted into a 4-bit CB type, and the remaining 56 bits are encoded into the first 56 bits of the (i+1)th and (j+1)th rows of the 513B code block, respectively.
10. The method according to claim 5, characterized in that, If the first of the at least three 64B control code blocks is a control code block CBO, the byte indicating the control code block type in the control code block CBO is converted into a 4-bit CB type. The first 48 bits of the remaining 56 bits of the control code block CBO are encoded into the last 48 bits of the 0th row of the 513B code block. The first 4 bits of the last 8 bits are encoded into the first 4 bits of the first 66B control code block CBi after the control code block CBO, corresponding to the starting 4 bits of the (i+1)th row of the 513B code block. The last 4 bits of the last 8 bits are encoded into the second 66B control code block CBj after the control code block CBO, corresponding to the starting 4 bits of the (j+1)th row of the 513B code block. The remaining 66B data code blocks, after removing the synchronization header, are encoded into the 8 bytes of the corresponding row of the 513B code block. The synchronization headers of the 66B control code blocks CBi and CBj are removed, and the byte indicating the control code block type is converted into a 4-bit CB type. The remaining 56 bits of the 66B control code blocks CBi and CBj are encoded into the last 56 bits of the (i+1)th and (j+1)th rows of the 513B code block, respectively; the remaining 64 bits of the other 66B control code blocks CBk after removing the synchronization header are encoded into the 64 bits of the (k+1)th row of the 513B code block. If the first of the at least three 64B control code blocks is a data code block DBO, the first 52 bits of the remaining 64 bits after removing the synchronization header from the data code block DBO are encoded into the last 52 bits of the first row of the 513B code block. The first 4 bits of the last 12 bits are encoded into the first 4 bits of the first 66B control code block CBi after the data code block DBO, corresponding to the first 4 bits of the (i+1)th row of the 513B code block. The middle 4 bits of the last 12 bits are encoded into the second 66B control code block CBj after the data code block DBO. The first 4 bits of the (j+1)th row of the 513B code block, and the last 4 bits of the last 12 bits are encoded into the first 4 bits of the (k+1)th row of the corresponding 513B code block CBk of the third 66B control code block after the data code block DBO; the remaining 66B data code blocks, after removing the synchronization header, are encoded into the corresponding 8 bytes of the 513B code block; the synchronization headers of the 66B control code blocks CBi, CBj, and CBk are removed, and the byte indicating the control code block type is converted into a 4-bit CBk. The remaining 56 bits of the 66B control code blocks CBi, CBj, and CBk are encoded into the last 56 bits of the (i+1), (j+1), and (k+1)th rows of the 513B code block, respectively. The remaining 64 bits of the other 66B control code blocks CBI after removing the synchronization header are encoded into the 64 bits of the first row of the 513B code block.
11. The method according to claim 5, characterized in that, If the first of the at least three 64B control code blocks is a control code block CBO, the byte indicating the control code block type in the control code block CBO is converted into a 4-bit CB type. The first 48 bits of the remaining 56 bits of the control code block CBO are encoded into the last 48 bits of the 0th row of the 513B code block. The first 4 bits of the last 8 bits are encoded into the last 4 bits of the (i+1)th row of the first 66B control code block CBi after the control code block CBO. The last 4 bits of the last 8 bits are encoded into the last 4 bits of the (j+1)th row of the second 66B control code block CBj after the control code block CBO. The remaining 66B data code blocks, after removing the synchronization header, are encoded into the 8 bytes of the corresponding row of the 513B code block. The synchronization headers of the 66B control code blocks CBi and CBj are removed, and the byte indicating the control code block type is converted into a 4-bit CB type. The remaining 56 bits of the 66B control code block CBi and the 66B control code block CBj are encoded into the first 56 bits of the (i+1)th and (j+1)th rows of the 513B code block, respectively; the remaining 64 bits of the other 66B control code blocks CBk after removing the synchronization header are encoded into the 64 bits of the (k+1)th row of the 513B code block. If the first of the at least three 64B control code blocks is a data code block DBO, the first 52 bits of the remaining 64 bits after removing the synchronization header from the data code block DBO are encoded into the last 52 bits of the first row of the 513B code block. The first 4 bits of the last 12 bits are encoded into the last 4 bits of the (i+1)th row of the first 66B control code block CBi after the data code block DBO. The middle 4 bits of the last 12 bits are encoded into the second 66B control code block CBj after the data code block DBO. The last 4 bits of the last 12 bits of the 513B code block corresponding to the end of the (j+1)th row of the 513B code block are encoded into the last 4 bits of the (k+1)th row of the third 66B control code block CBk following the data code block DBO; the remaining 66B data code blocks, after removing the synchronization header, are encoded into the 8 bytes of the corresponding row of the 513B code block; the synchronization headers of the 66B control code blocks CBi, CBj, and CBk are removed, and the byte indicating the control code block type is converted into a 4-bit CB... The remaining 56 bits of the 66B control code blocks CBi, CBj, and CBk are encoded into the first 56 bits of the (i+1), (j+1), and (k+1)th rows of the 513B code block, respectively. The remaining 64 bits of the other 66B control code blocks CBI after removing the synchronization header are encoded into the 64 bits of the first row of the 513B code block.
12. The method according to claim 1, characterized in that, The 513B code block includes the eight 64B data code blocks. The encoding information is a flag bit F, which is used to indicate that the 513B code block includes the eight 64B data code blocks. The flag bit F is 1 bit.
13. The method according to claim 1, characterized in that, The 513B code block includes a 66B control code block. The encoding information includes a flag bit F, a flag bit SMI, and a flag bit LOC. The flag bit SMI is used to indicate whether the 513B code block contains a 66B control code block. The flag bit LOC is used to indicate the position of the 66B control code block. The flag bit F and the flag bit SMI are both 1 bit, and the flag bit LOC is the sixth number of bits.
14. The method according to claim 1, characterized in that, The 513B code block includes at least two 66B control code blocks. The encoding information includes a flag bit F, a flag bit SMI, and a flag bit LOC bitmap. The flag bit SMI is used to indicate that the 513B code block includes at least two 66B control code blocks. The flag bit LOC bitmap is used to indicate the position of the at least two 66B control code blocks. Both the flag bit F and the flag bit SMI are 1 bit, and the flag bit LOC bitmap is the seventh number of bits.
15. The method according to claim 13, characterized in that, If the 66B control code block is the first code block, remove the synchronization header from the 66B control code block CBO, convert the byte indicating the control code block type in the control code block CBO into a 4-bit CB type, and encode the 4-bit CB type into a 4-bit Type code in the first line; The remaining 56 bits of the control code block CBO are encoded into the last 56 bits of the first row of the 513B code block; the remaining 7 66B data code blocks, after removing the synchronization header, are encoded into the 8 bytes of the corresponding row of the 513B code block. If the 66B control code block is not the first code block, and the first code block is a data code block DBO, the first 56 bits of the remaining 64 bits after removing the synchronization header of the data code block DBO are encoded into the last 56 bits of the first row of the 513B code block, and the last 8 bits are encoded into the first 8 bits of the 66B control code block CBi corresponding to the (i+1)th row of the 513B code block; the remaining 66B data code blocks after removing the synchronization header are encoded into the 8 bytes of the corresponding row of the 513B code block; the synchronization header of the 66B control code block CBi is removed, and the byte indicating the control code block type in the 66B control code block CBi is converted into a 4-bit CB type, and the 4-bit CB type is encoded into the 4-bit Type code in the first row; the remaining 56 bits of the 66B control code block CBi are encoded into the last 56 bits of the (i+1)th row of the 513B code block.
16. The method according to claim 13, characterized in that, If the 66B control code block is the first code block, remove the synchronization header from the 66B control code block CBO, convert the byte indicating the control code block type in the control code block CBO into a 4-bit CB type, and encode the 4-bit CB type into a 4-bit Type code in the first line; The remaining 56 bits of the control code block CBO are encoded into the last 56 bits of the first row of the 513B code block; the remaining 7 66B data code blocks, after removing the synchronization header, are encoded into the 8 bytes of the corresponding row of the 513B code block. If the 66B control code block is not the first code block, and the first code block is a data code block DBO, the first 56 bits of the remaining 64 bits after removing the synchronization header of the data code block DBO are encoded into the last 56 bits of the first row of the 513B code block, and the last 8 bits are encoded into the last 8 bits of the i+1th row of the 513B code block corresponding to the 66B control code block CBi; the remaining 66B data code blocks after removing the synchronization header are encoded into the 8 bytes of the corresponding row of the 513B code block; the synchronization header of the 66B control code block CBi is removed, and the byte indicating the control code block type in the 66B control code block CBi is converted into a 4-bit CB type, and the 4-bit CB type is encoded into the 4-bit Type code in the first row; the remaining 56 bits in the 66B control code block CBi are encoded into the first 56 bits of the i+1th row of the 513B code block.
17. The method according to claim 14, characterized in that, If the first code block is the first control code block CBO among the at least two 66B control code blocks, the synchronization header of the first control code block CBO is removed, the byte indicating the control code block type in the first control code block CBO is converted into a 4-bit CB type, and the first 48 bits of the remaining 56 bits of the first control code block CBO are encoded into the last 48 bits of the first row of the 513B code block. If the first control code block CBO is the penultimate control code block, the starting position of the 8 bits in the first row of the 513B code block is CC Type and CB Type. Alternatively, if the first control code block CBO is not one of the last two control code blocks, the starting position of the 8 bits in the first row of the 513B code block is CC PAD and CB Type. The synchronization headers of the remaining control code blocks CBi are removed, and the bytes indicating the control code block type in the remaining control code blocks CBi are converted into 4-bit CB type.
18. The method according to claim 14, characterized in that, If the first code block is a data code block DBO, the first 56 bits of the remaining 64 bits after removing the synchronization header of the data code block DBO are encoded into the last 56 bits of the first row of the 513B code block, and the last 8 bits are encoded into the first 8 bits of the (i+1)th row of the last 66B control code block CBi. The remaining 66B data code blocks, after removing the synchronization header, are encoded into 8 bytes of the corresponding row of the 513B code block. The remaining control code blocks CBj have their synchronization headers removed, and the bytes indicating the control code block type in the remaining control code blocks CBj are converted into 4-bit CB type.
19. The method according to claim 17 or 18, characterized in that, If the current control code block CBi is the last 66B control code block in the 513B code block, the 4 bits of the CB type in the control code block CBi are encoded into the 4 bits of the CC type field in the corresponding row of the 513B code block of the second to last 66B control code block. The first 8 bits of the corresponding row of the 513B code block of the second to last 66B control code block are filled with CC type and CB type. The remaining 56 bits in the 66B control code block CBi are encoded into the last 56 bits in the (i+1)th row of the 513B code block. If the current 66B control code block CBi is the second to last 66B control code block in the 513B code block, the remaining 56 bits in the 66B control code block CBi are encoded into the last 56 bits of the (i+1)th row in the 513B code block, and the first 8 bits of the (i+1)th row are filled with CB type and CC type, wherein the CC type is encoded as the CBType of the last 66B control code block; If the current 66B control code block CBi is not one of the last two 66B control code blocks in the 513B code block, the remaining 56 bits in the 66B control code block CBi are encoded into 56 bits in the (i+1)th row of the 513B code block, and the first 8 bits in the (i+1)th row are filled with CC PAD+CB type. The CC type indicates the type of other control code blocks, the CB type indicates the type of the current control code block, and the CC PAD indicates that at least two control code blocks will follow.
20. The method according to claim 17 or 18, characterized in that, If the current control code block CBi is the last 66B control code block in the 513B code block, the 4 bits of the CB type in the control code block CBi are encoded into the 4 bits of the CC type field in the corresponding row of the 513B code block of the second to last 66B control code block. The first 8 bits of the corresponding row of the 513B code block of the second to last 66B control code block are filled with CC type and CB type. The remaining 56 bits in the 66B control code block CBi are encoded into the first 56 bits of the (i+1)th row in the 513B code block. If the current 66B control code block CBi is the second to last 66B control code block in the 513B code block, the remaining 56 bits in the 66B control code block CBi are encoded into the last 56 bits of the (i+1)th row in the 513B code block, and the first 8 bits of the (i+1)th row are filled with CB type and CC type, wherein the CC type is encoded as the CBType of the last 66B control code block; If the current 66B control code block CBi is not one of the last two 66B control code blocks in the 513B code block, the remaining 56 bits in the 66B control code block CBi are encoded into 56 bits in the (i+1)th row of the 513B code block, and the first 8 bits in the (i+1)th row are filled with CC PAD+CB type.
21. A computer-readable storage medium, characterized in that, The computer-readable storage medium stores a computer program, wherein the computer program, when executed by a processor, implements the steps of the method described in any one of claims 1 to 20.
22. An electronic device comprising a memory, a processor, and a computer program stored in the memory and executable on the processor, characterized in that, When the processor executes the computer program, it implements the steps of the method described in any one of claims 1 to 20.
23. A computer program product, characterized in that, It includes a computer program that, when executed by a processor, implements the steps of the method described in any one of claims 1 to 20.