Method for processing downlink bandwidth allocation information, method for generating downlink superframe

CN122970408APending Publication Date: 2026-10-23ZTE CORP
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202510502104.0
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2025-04-21
Publication Date
2026-10-23

AI Technical Summary

Technical Problem

[0008]本申请实施例提供了一种下行带宽分配信息的处理方法、下行超帧的生成方法,以至少解决ONU如何根据下行带宽分配进行相应的处理从而实现最小集接收处理的问题

Benefits of technology

[0039]根据本申请的又一方面,还提供了一种计算机程序产品,包括计算机程序,所述计算机程序被处理器执行时实现上述任一项方法实施例中的步骤。

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN122970408A_ABST
    Figure CN122970408A_ABST
Patent Text Reader

Abstract

Embodiments of the present application provide a method for processing downlink bandwidth allocation information, and a method for generating a downlink superframe. The method for processing downlink bandwidth allocation information comprises determining effective downlink time slots in a downlink superframe, converting the effective downlink time slots into physical time slots, processing data in the physical time slots, and obtaining information in the effective downlink time slots according to the effective downlink time slots. The above technical solution solves the problem of how to process according to downlink bandwidth allocation to achieve minimum set reception processing in related technologies.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This application relates to the field of communications, and more specifically, to a method for processing downlink bandwidth allocation information and a method for generating downlink superframes. Background Technology

[0002] like Figure 1 As shown, a passive optical network system consists of an OLT (Optical Line Terminal) connected to multiple ONUs (Optical Network Units) via an ODN (Optical Distribution Network).

[0003] Combination Figure 2 In traditional PON (Passive Optical Network) systems, the OLT (Optical Linear Transmission) schedules different downlink services and the services destined for different services using a specific scheduling algorithm. It then sends downlink services with different characteristics to each ONU (Optical Network Unit) according to TDM (Time Division Multiplexing) technology. The OLT does not send the scheduling results to the ONUs. Therefore, the ONUs cannot perform preprocessing based on the scheduling results and must fully parse the downlink frames to obtain the services they need to process.

[0004] like Figure 3 As shown, taking the downlink service transmission of XG-PON (10 Gigabit-capable Passive Optical Network) as an example, the service data is encapsulated in a series of XGEM (XG-PON encapsulation method) frames and transmitted. The service data is placed in the XGEM payload field of each XGEM frame. The ONU needs to parse the XGEM frame one by one, parse the XGEM Port-ID from the XGEM header frame header, and determine whether to receive the XGEM payload by judging whether the XGEM Port-ID belongs to this ONU.

[0005] The ITU-T has been discussing VHSP (Very High Speed ​​PON) and its downlink bandwidth allocation function, proposing to realize downlink bandwidth by adding a downlink bandwidth allocation structure to the downlink frame. However, it has not proposed a solution for how the ONU should process the downlink bandwidth allocation accordingly.

[0006] Therefore, regarding the relevant technologies, there is currently no effective solution to the problem of how the ONU can perform corresponding processing based on downlink bandwidth allocation to achieve minimum set reception processing.

[0007] Therefore, it is necessary to improve the relevant technology to overcome the aforementioned defects. Summary of the Invention

[0008] This application provides a method for processing downlink bandwidth allocation information and a method for generating downlink superframes, so as to at least solve the problem of how the ONU performs corresponding processing based on downlink bandwidth allocation to achieve minimum set reception processing.

[0009] According to one aspect of the embodiments of this application, a method for processing downlink bandwidth allocation information is provided, comprising: determining a valid downlink time slot in a downlink superframe; converting the valid downlink time slot into a physical time slot; processing the data in the physical time slot to obtain information in the valid downlink time slot based on the valid downlink time slot.

[0010] In an exemplary embodiment, the effective downlink time slot is a necessary information time slot, which includes downlink bandwidth allocation information. Obtaining the information within the effective downlink time slot based on the effective downlink time slot includes: converting the necessary information time slot into a first physical time slot; processing the data within the first physical time slot, and then obtaining the downlink bandwidth allocation information within the necessary information time slot based on the necessary information time slot.

[0011] In an exemplary embodiment, the effective downlink time slot is a downlink service time slot, the downlink service time slot contains downlink service information, and the method further includes: obtaining the downlink service time slot according to the downlink bandwidth allocation information, converting the downlink service time slot into a second physical time slot, processing the data in the second physical time slot, and then performing service processing on the downlink service information of the downlink service time slot.

[0012] In an exemplary embodiment, the necessary information time slot also carries other necessary information, including at least uplink bandwidth allocation information. The method further includes: processing the data within the first physical time slot to obtain the uplink bandwidth allocation information; and sending uplink services according to the uplink bandwidth allocation information.

[0013] In an exemplary embodiment, the necessary information time slot also carries other necessary information, which includes at least a physical layer management message. The method further includes: processing the data in the first physical time slot to obtain the physical layer management message; and processing the data according to the physical layer management message.

[0014] In an exemplary embodiment, service processing based on downlink service information carried in the downlink service time slot includes: obtaining a data frame sequence within the downlink service time slot, and parsing and processing the data frame sequence.

[0015] In an exemplary embodiment, the physical time slot is composed of physical time slot units, and the physical time slot unit includes at least a forward error correction (FEC) code block. Processing the physical time slot includes: descrambling each FEC code block in the physical time slot individually, and performing FEC decoding on the descrambled FEC code block.

[0016] In an exemplary embodiment, the physical time slot is composed of physical time slot units, each physical time slot unit including bit interleaving blocks. Processing the physical time slot includes: deinterleaving each bit interleaving block in the physical time slot.

[0017] In an exemplary embodiment, de-interleaving each bit interleaving block in the physical time slot includes: obtaining each bit interleaving block according to the interleaving depth, and de-interleaving each bit interleaving block.

[0018] In one exemplary embodiment, descrambling each FEC code block in the physical time slot individually and performing FEC decoding on the descrambled FEC code blocks includes: descrambling the downlink intra-frame FEC code blocks individually and decoding the descrambled FEC code blocks individually.

[0019] In an exemplary embodiment, the step of individually descrambling the downlink intra-frame FEC code blocks includes: starting from each FEC code block, initializing a scrambling shift register.

[0020] In an exemplary embodiment, descrambling each FEC code block in the physical time slot individually and performing FEC decoding on the descrambled FEC code blocks includes: determining a first FEC code block group obtained by converting the effective downlink time slot based on the number of downlink bandwidth entries; descrambling each FEC code block in the first FEC code block group individually; performing FEC decoding on the descrambled FEC code blocks; obtaining the number of bandwidth entries based on the effective downlink time slot based on the number of downlink bandwidth entries, wherein the number of bandwidth entries represents the number of downlink bandwidth entries, or the sum of the number of uplink bandwidth entries and the number of downlink bandwidth entries; and determining the location of the bandwidth entry based on the number of bandwidth entries. Another effective downlink time slot is used to determine a second FEC code block group obtained by conversion based on the other effective downlink time slot. Each FEC code block in the second FEC code block group is descrambled individually, and the descrambled FEC code blocks are FEC decoded. The bandwidth entry is obtained according to the other effective downlink time slot, and the bandwidth entry is parsed to obtain the downlink bandwidth belonging to the ONU. A third FEC code block group is determined by conversion based on the effective downlink time slot corresponding to the downlink bandwidth. Each FEC code block in the third FEC code block is descrambled individually, and the descrambled FEC code blocks are FEC decoded. Downlink service information is obtained according to the effective downlink time slot corresponding to the downlink bandwidth.

[0021] In an exemplary embodiment, descrambling each FEC code block in the physical time slot individually and performing FEC decoding on the descrambled FEC code blocks includes: determining a first FEC code block group obtained by converting the effective downlink time slots based on the number of downlink bandwidth entries, the number of uplink bandwidth entries, and the number of physical layer management messages; descrambling each FEC code block in the first FEC code block group individually; performing FEC decoding on the descrambled FEC code blocks; obtaining the number of bandwidth entries and the number of physical layer management messages based on the effective downlink time slots based on the number of downlink bandwidth entries, the number of uplink bandwidth entries, and the number of physical layer management messages, wherein the number of bandwidth entries includes the number of downlink bandwidth entries and the number of uplink bandwidth entries; determining a second FEC code block group obtained by converting the number of bandwidth entries and the number of physical layer management messages; descrambling each FEC code block in the second FEC code block group individually; performing FEC decoding on the descrambled FEC code blocks to obtain the downlink bandwidth belonging to the ONU, the uplink bandwidth belonging to the ONU, and the physical layer management messages belonging to the ONU.

[0022] In an exemplary embodiment, the method further includes: if there are overlapping code blocks among the first FEC code block group, the second FEC code block group, and the third FEC code block group, then the already descrambled portion of the overlapping code block is no longer descrambled, nor is the already decoded portion of the overlapping code block decoded.

[0023] In one exemplary embodiment, descrambling each FEC code block within the first FEC code block group individually and then performing FEC decoding on the descrambled FEC code blocks includes: determining the first FEC code block group obtained by converting the effective downlink time slot based on the number of downlink bandwidth entries and other necessary information according to the target downlink FEC code pattern adopted by the ONU; descrambling each FEC code block within the first FEC code block group individually according to the target downlink FEC code pattern; and then performing FEC decoding on the descrambled FEC code blocks.

[0024] In one exemplary embodiment, the method further includes: determining a bit interleaving block obtained by conversion based on the effective downlink time slot, and deinterleaving the bit interleaving block to obtain a first FEC code block group, a second FEC code block group, and a third FEC code block group; or, determining a bit interleaving block obtained by conversion based on the first FEC code block group, the second FEC code block group, and the third FEC code block group, and deinterleaving the bit interleaving block to obtain a first FEC code block group, a second FEC code block group, and a third FEC code block group.

[0025] In an exemplary embodiment, the method further includes: searching for delimiters corresponding to modulation formats; determining a first modulation block obtained by conversion based on the effective downlink time slot where the downlink bandwidth entry number is located; demodulating the first modulation block group to obtain a first FEC code block group; descrambling each code block in the first FEC code block group individually; performing FEC decoding on the descrambled FEC code blocks; obtaining the number of bandwidth entries based on the effective downlink time slot where the downlink bandwidth entry number is located, wherein the number of bandwidth entries represents the number of downlink bandwidth entries, or the sum of the number of uplink bandwidth entries and the number of downlink bandwidth entries; determining another effective downlink time slot where the bandwidth entry is located based on the number of bandwidth entries; and determining a first modulation block obtained by conversion based on the other effective downlink time slot. The second modulation block obtained by converting the effective downlink time slot is demodulated to obtain a second FEC code block group. Each FEC code block in the second FEC code block group is descrambled individually. The descrambled FEC code blocks are then FEC decoded. The bandwidth entry is obtained according to the other effective downlink time slot, and the bandwidth entry is parsed to obtain the downlink bandwidth belonging to the ONU. The third modulation block obtained by converting the effective downlink time slot corresponding to the downlink bandwidth is determined. The third modulation block is demodulated to obtain a third FEC code block group. Each FEC code block in the third FEC code block is descrambled individually. The descrambled FEC code blocks are then FEC decoded. Downlink service information is obtained according to the effective downlink time slot corresponding to the downlink bandwidth.

[0026] In an exemplary embodiment, deinterleaving each bit interleaving block in the physical time slot includes: if the bit interleaving blocks overlap, then deinterleaving is no longer performed on the already deinterleaved portions of the overlapping interleaved code blocks.

[0027] In one exemplary embodiment, the method further includes: not processing the idle physical time slots other than the physical time slots converted from the effective downlink time slots, or shutting down the receiving component for receiving the effective downlink time slots during the idle physical time slots.

[0028] According to another aspect of the embodiments of this application, a method for generating downlink superframes is provided, comprising: an optical line terminal (OLT) scrambling each FEC code block individually to obtain a downlink superframe.

[0029] In one exemplary embodiment, the optical line terminal (OLT) scrambles each FEC code block individually, including: starting from each FEC code block, initializing a scrambling shift register.

[0030] In one exemplary embodiment, the method further includes: bit interleaving every X FEC code blocks according to the interleaving depth value X to obtain the downlink superframe.

[0031] In an exemplary embodiment, before the optical line terminal (OLT) scrambles each FEC code block individually, the method further includes: carrying downlink bandwidth entries, the number of downlink bandwidth entries, other necessary information, the number of other necessary information, and downlink services, and performing FEC verification on each FEC code block according to a specified FEC code pattern.

[0032] In one exemplary embodiment, different ONUs correspond to different FEC code patterns. FEC verification is performed on each FEC code block according to the specified FEC code pattern, including: FEC encoding of each FEC code block using the specified FEC code pattern according to the downlink time slot of the different ONUs.

[0033] In one exemplary embodiment, the method further includes: setting a default FEC code block group in the downlink superframe header for different FEC code patterns, wherein the default FEC code block group adopts one FEC code pattern; or setting a default modulation block in the downlink superframe header for different modulation formats, wherein the default modulation block adopts one modulation format.

[0034] In an exemplary embodiment, the default FEC code block carries not only downlink bandwidth allocation information and necessary information, but also remaining payload information. The method further includes: the remaining payload information includes downlink service information; or the remaining payload information is idle information.

[0035] According to another aspect of the embodiments of this application, a processing apparatus for downlink bandwidth allocation information is also provided, comprising: a processing module, configured to determine a valid downlink time slot in a downlink superframe, convert the valid downlink time slot into a physical time slot, process the data in the physical time slot, and obtain information in the valid downlink time slot based on the valid downlink time slot.

[0036] According to another aspect of the embodiments of this application, a downlink superframe generation apparatus is also provided, comprising: an obtaining module, configured to individually scramble each FEC code block in an existing downlink superframe through an optical line terminal (OLT) to obtain a downlink superframe.

[0037] According to another aspect of the embodiments of this application, a computer-readable storage medium is also provided, wherein a computer program is stored in the computer program, and the computer program is configured to execute the above-described downlink bandwidth allocation information processing method when running.

[0038] According to another aspect of the embodiments of this application, an electronic device is also provided, including a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein the processor executes the downlink bandwidth allocation information processing method through the computer program.

[0039] According to another aspect 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.

[0040] This application achieves precise processing and information extraction of data within a specific time slot by identifying and converting the effective downlink time slot in the downlink superframe into a physical time slot; processing the data within the physical time slot; obtaining information within the effective downlink time slot based on the effective downlink time slot; and identifying and converting the effective downlink time slot in the downlink superframe into a physical time slot. This solves the problem of how the ONU can perform corresponding processing based on downlink bandwidth allocation to achieve minimum set reception processing, thereby improving the efficiency and accuracy of data transmission. Attached Figure Description

[0041] The accompanying drawings, which are included to provide a further understanding of this application and form part of this application, illustrate exemplary embodiments of this application and, together with the description thereof, serve to explain this application and do not constitute an undue limitation thereof. In the drawings:

[0042] Figure 1 This is a schematic diagram of the system architecture of a passive optical network system in related technologies;

[0043] Figure 2 This is a schematic diagram of the downlink service scheduling and transmission method in a passive optical network system in related technologies;

[0044] Figure 3 This is a schematic diagram of the XGEM frame sequence transmission method for downlink services in the XG-PON system in related technologies;

[0045] Figure 4 This is a hardware structure block diagram of a computer terminal for processing downlink bandwidth allocation information according to an embodiment of this application;

[0046] Figure 5 This is a flowchart of a method for processing downlink bandwidth allocation information according to an embodiment of this application;

[0047] Figure 6 This is a flowchart of a downlink superframe generation method according to an embodiment of this application;

[0048] Figure 7 This is a schematic diagram of the effective downlink time slot processing flow according to an embodiment of this application;

[0049] Figure 8 This is a schematic diagram illustrating the process of adding FEC check and scrambling to the FS frame on the 50G-PON transmitting side according to an embodiment of this application;

[0050] Figure 9 This is a schematic diagram of the operation and scrambling process of the scrambling shift register on the 50G-PON transmitting side according to an embodiment of this application;

[0051] Figure 10 This is a schematic diagram illustrating the process of adding FEC check, scrambling, and bit interleaving to the FS frame on the 50G-PON transmitting side according to an embodiment of this application;

[0052] Figure 11 This is a schematic diagram of the bit interleaving process on the 50G-PON transmission side according to an embodiment of this application;

[0053] Figure 12 This is a schematic diagram illustrating the relationship between a GPON downlink superframe and an FEC code pattern according to an embodiment of this application.

[0054] Figure 13 This is a schematic diagram of the Upstream BWmap structure in G.984.3 according to an embodiment of this application;

[0055] Figure 14 This is a schematic diagram illustrating the principle of modifying the number of bandwidth entries in the GPON BWmap according to an embodiment of this application;

[0056] Figure 15 This is a schematic diagram illustrating the relationship between downlink superframes and FEC codes in XG-PON according to an embodiment of this application.

[0057] Figure 16 This is a schematic diagram of the Upstream BWmap structure in G.987.3 according to an embodiment of this application;

[0058] Figure 17 This is a schematic diagram illustrating the principle of modifying the number of bandwidth entries in the XG-PON BWmap according to an embodiment of this application;

[0059] Figure 18 This is a schematic diagram illustrating the relationship between a 50G-PON downlink superframe and an FEC code pattern, according to an embodiment of this application.

[0060] Figure 19 This is a schematic diagram of the 50G-PON uplink bandwidth allocation BWmap structure according to an embodiment of this application;

[0061] Figure 20 This is a schematic diagram illustrating the principle of modifying the number of bandwidth entries in the 50G-PON BWmap according to an embodiment of this application;

[0062] Figure 21 This is a schematic diagram illustrating the principle of modifying the number of bandwidth entries in the flexible FEC 50G-PON BWmap according to an embodiment of this application;

[0063] Figure 22 This is a schematic diagram of a 50G-PON flexible FEC frame structure according to an embodiment of this application;

[0064] Figure 23 This is a schematic diagram of the 50G-PON flexible FEC frame structure and bit-interleaved frame structure according to embodiments of this application;

[0065] Figure 24 This is a schematic diagram of a 50G-PON flexible modulation frame structure according to an embodiment of this application;

[0066] Figure 25 This is a structural block diagram of a downlink bandwidth allocation information processing apparatus according to an embodiment of this application;

[0067] Figure 26 This is a structural block diagram of a downlink superframe generation apparatus according to an embodiment of this application. Detailed Implementation

[0068] To enable those skilled in the art to better understand the present application, the technical solutions in the embodiments of the present application will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some embodiments of the present application, and not all embodiments. Based on the embodiments in the present application, all other embodiments obtained by those skilled in the art without creative effort should fall within the scope of protection of the present application.

[0069] It should be noted that the terms "first," "second," etc., in the specification, claims, and accompanying drawings of this application are used to distinguish similar objects and are not necessarily used to describe a specific order or sequence. It should be understood that such data can be interchanged where appropriate so that the embodiments of this application described herein can be implemented in orders other than those illustrated or described herein. Furthermore, the terms "comprising" and "having," and any variations thereof, are intended to cover non-exclusive inclusion; for example, a process, method, system, product, or apparatus that comprises a series of steps or units is not necessarily limited to those steps or units explicitly listed, but may include other steps or units not explicitly listed or inherent to such processes, methods, products, or apparatus.

[0070] The methods and embodiments provided in this application can be executed on a computer terminal or similar computing device. Taking running on a computer terminal as an example, Figure 4 This is a hardware structure block diagram of a computer terminal for processing downlink bandwidth allocation information according to an embodiment of this application. Figure 4 As shown, a computer terminal may include one or more ( Figure 4 Only one is shown in the diagram. Processor 402 (processor 402 may include, but is not limited to, a microprocessor (MPU) or a programmable logic device (PLD)) and memory 404 for storing data.

[0071] In one exemplary embodiment, the computer terminal described above may further include a transmission device 406 for communication functions and an input / output device 408. Those skilled in the art will understand that... Figure 4 The structure shown is for illustrative purposes only and does not limit the structure of the computer terminal described above. For example, the computer terminal may also include components that are more complex than those described above. Figure 4 The more or fewer components shown, or having the same Figure 4 Equivalent functions or ratios shown Figure 4 The functions shown have more different configurations.

[0072] The memory 404 can be used to store computer programs, such as application software programs and modules, like the computer program corresponding to the downlink bandwidth allocation information processing method in this embodiment. The processor 402 executes various functional applications and data processing by running the computer program stored in the memory 404, thus implementing the above-described method. The memory 404 may include high-speed random access memory and may also include 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 404 may further include memory remotely located relative to the processor 402, and these remote memories can be connected to a computer 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.

[0073] Transmission device 406 is used to receive or send data via a network. Specific examples of the network described above may include a wireless network provided by a communication provider for the computer terminal. In one example, transmission device 406 includes a Network Interface Controller (NIC), which can connect to other network devices via a base station to communicate with the Internet. In another example, transmission device 406 may be a Radio Frequency (RF) module used for wireless communication with the Internet.

[0074] This embodiment provides a method for processing downlink bandwidth allocation information running on a network architecture. Figure 5 This is a flowchart of a method for processing downlink bandwidth allocation information according to an embodiment of this application, such as... Figure 5 As shown, the steps of this method include:

[0075] Step S502: Determine the effective downlink time slot in the downlink superframe, convert the effective downlink time slot into a physical time slot, process the data in the physical time slot, and obtain the information in the effective downlink time slot based on the effective downlink time slot.

[0076] Optionally, the entity performing the above steps can be a base station, a terminal, etc., but is not limited to these.

[0077] This application embodiment determines the effective downlink time slot in the downlink superframe; converts the effective downlink time slot into a physical time slot; processes the data within the physical time slot, and obtains the information within the effective downlink time slot based on the effective downlink time slot. By identifying and converting the effective downlink time slot in the downlink superframe into a physical time slot, it achieves precise processing and information extraction of data within a specific time slot, solves the problem of how the ONU can perform corresponding processing based on downlink bandwidth allocation to achieve minimum set reception processing, and improves the efficiency and accuracy of data transmission.

[0078] In an exemplary embodiment, the effective downlink time slot is a necessary information time slot, which includes downlink bandwidth allocation information. Obtaining the information within the effective downlink time slot based on the effective downlink time slot includes: converting the necessary information time slot into a first physical time slot; processing the data within the first physical time slot, and then obtaining the downlink bandwidth allocation information within the necessary information time slot based on the necessary information time slot.

[0079] In an exemplary embodiment, the effective downlink time slot is a downlink service time slot, which contains downlink service information. The following scheme is further proposed: obtain the downlink service time slot according to the downlink bandwidth allocation information, convert the downlink service time slot into a second physical time slot, process the data in the second physical time slot, and then process the downlink service information of the downlink service time slot.

[0080] In an exemplary embodiment, the necessary information time slot also carries other necessary information, which includes at least uplink bandwidth allocation information. The following scheme is further proposed: the data in the first physical time slot is processed to obtain the uplink bandwidth allocation information; and uplink services are sent according to the uplink bandwidth allocation information.

[0081] In an exemplary embodiment, the necessary information time slot also carries other necessary information, which includes at least physical layer management messages. The following scheme is further proposed: processing the data in the first physical time slot to obtain the physical layer management messages; and processing according to the physical layer management messages.

[0082] Based on the above embodiments, other necessary information includes uplink bandwidth allocation and PLOAM (Physical Layer Operation, Administration and Management) messages. Therefore, the necessary information within the necessary information acquisition time slot may include acquiring uplink bandwidth allocation information and then using it to send uplink services, or it may include acquiring PLOAM messages (corresponding to the aforementioned physical layer management messages) and processing them accordingly, such as performing operation management processing.

[0083] In an exemplary embodiment, service processing based on downlink service information carried in the downlink service time slot includes: obtaining a data frame sequence within the downlink service time slot, and parsing and processing the data frame sequence.

[0084] Optionally, the data frame sequence in this embodiment includes a GEM frame sequence and an XGEM frame sequence. XGEM stands for 10-Gigabit passive optical network (XG-PON) encapsulation method.

[0085] In an exemplary embodiment, the physical time slot is composed of physical time slot units, and the physical time slot unit includes at least a forward error correction (FEC) code block. Processing the physical time slot includes: descrambling each FEC code block in the physical time slot individually, and performing FEC decoding on the descrambled FEC code block.

[0086] In an exemplary embodiment, the physical time slot is composed of physical time slot units, each physical time slot unit including bit interleaving blocks. Processing the physical time slot includes: deinterleaving each bit interleaving block in the physical time slot.

[0087] In an exemplary embodiment, de-interleaving each bit interleaving block in the physical time slot includes: obtaining each bit interleaving block according to the interleaving depth, and de-interleaving each bit interleaving block.

[0088] In one exemplary embodiment, descrambling each FEC code block in the physical time slot individually and performing FEC decoding on the descrambled FEC code blocks includes: descrambling the downlink intra-frame FEC code blocks individually and decoding the descrambled FEC code blocks individually.

[0089] In an exemplary embodiment, the step of individually descrambling the downlink intra-frame FEC code blocks includes: starting from each FEC code block, initializing a scrambling shift register.

[0090] In an exemplary embodiment, descrambling each FEC code block in the physical time slot individually and performing FEC decoding on the descrambled FEC code blocks includes: determining a first FEC code block group obtained by converting the effective downlink time slot based on the number of downlink bandwidth entries; descrambling each FEC code block in the first FEC code block group individually; performing FEC decoding on the descrambled FEC code blocks; obtaining the number of bandwidth entries based on the effective downlink time slot based on the number of downlink bandwidth entries, wherein the number of bandwidth entries represents the number of downlink bandwidth entries, or the sum of the number of uplink bandwidth entries and the number of downlink bandwidth entries; and determining the location of the bandwidth entry based on the number of bandwidth entries. Another effective downlink time slot is used to determine a second FEC code block group obtained by conversion based on the other effective downlink time slot. Each FEC code block in the second FEC code block group is descrambled individually, and the descrambled FEC code blocks are FEC decoded. The bandwidth entry is obtained according to the other effective downlink time slot, and the bandwidth entry is parsed to obtain the downlink bandwidth belonging to the ONU. A third FEC code block group is determined by conversion based on the effective downlink time slot corresponding to the downlink bandwidth. Each FEC code block in the third FEC code block is descrambled individually, and the descrambled FEC code blocks are FEC decoded. Downlink service information is obtained according to the effective downlink time slot corresponding to the downlink bandwidth.

[0091] Optionally, in one embodiment, the number of downlink bandwidth entries can be parsed first, and then the FEC code blocks containing the corresponding number of downlink bandwidth entries can be obtained based on the number of downlink bandwidth entries. The downlink bandwidth entries in the FEC code blocks are obtained, the downlink bandwidth related to the ONU is mapped to the FEC code blocks to be processed, and these FEC code blocks are decoded to obtain the corresponding data.

[0092] In an exemplary embodiment, descrambling each FEC code block in the physical time slot individually and performing FEC decoding on the descrambled FEC code blocks includes: determining a first FEC code block group obtained by converting the effective downlink time slots based on the number of downlink bandwidth entries, the number of uplink bandwidth entries, and the number of physical layer management messages; descrambling each FEC code block in the first FEC code block group individually; performing FEC decoding on the descrambled FEC code blocks; obtaining the number of bandwidth entries and the number of physical layer management messages based on the effective downlink time slots based on the number of downlink bandwidth entries, the number of uplink bandwidth entries, and the number of physical layer management messages, wherein the number of bandwidth entries includes the number of downlink bandwidth entries and the number of uplink bandwidth entries; determining a second FEC code block group obtained by converting the number of bandwidth entries and the number of physical layer management messages; descrambling each FEC code block in the second FEC code block group individually; performing FEC decoding on the descrambled FEC code blocks to obtain the downlink bandwidth belonging to the ONU, the uplink bandwidth belonging to the ONU, and the physical layer management messages belonging to the ONU.

[0093] In this embodiment, in addition to the number of downlink bandwidth entries, the number of uplink bandwidth entries and the number of physical layer management messages may also be included. After decoding and descrambling each FEC code block in the first FEC code block group individually, in addition to obtaining the number of downlink bandwidth entries, the number of uplink bandwidth entries and the number of physical layer management messages can also be obtained. Based on these quantities, a second FEC code block group is obtained. Each FEC code block in the second FEC code block group is then descrambled and decoded individually to obtain the downlink bandwidth, uplink bandwidth, and physical layer management messages belonging to the ONU.

[0094] In an exemplary embodiment, the following scheme is further proposed: if there are overlapping code blocks among the first FEC code block group, the second FEC code block group and the third FEC code block group, then the already descrambled part of the overlapping code block is no longer descrambled, nor is the already decoded part of the overlapping code block decoded.

[0095] In one exemplary embodiment, descrambling each FEC code block within the first FEC code block group individually and performing FEC decoding on the descrambled FEC code blocks includes: determining the first FEC code block group obtained by converting the effective downlink time slot according to the number of downlink bandwidth entries and other necessary information based on the target downlink FEC code pattern adopted by the ONU; descrambling each FEC code block within the first FEC code block group individually according to the target downlink FEC code pattern; and performing FEC decoding on the descrambled FEC code blocks.

[0096] In an optional embodiment, the process of descrambling each FEC code block in the first FEC code block group according to the target downlink FEC code pattern, and then performing FEC decoding on the descrambled FEC code blocks, includes at least one of the following:

[0097] When the target downlink FEC code pattern is LDPC1, the FEC code block group to be parsed corresponding to the target downlink FEC code pattern is determined to be the first FEC code block group, i.e., the LDPC1 code block group, and X1 LDPC1 code blocks in the LDPC1 code block group are decoded. LDPC stands for Low Density Parity Check.

[0098] When the target downlink FEC code pattern is LDPC2, the FEC code block group to be parsed corresponding to the target downlink FEC code pattern is determined to be the first FEC code block group, that is, the LDPC2 code block group. The first number of FEC code blocks are skipped, and X2 LDPC2 code blocks in the LDPC2 code block group are decoded.

[0099] When the target downlink FEC code pattern is LDPC3, the FEC code block group to be parsed corresponding to the target downlink FEC code pattern is determined to be the first FEC code block group, that is, the LDPC3 code block group. The second number of FEC code blocks are skipped, and the X3 LDPC3 code blocks in the LDPC3 code block group are decoded.

[0100] In one exemplary embodiment, the following scheme is further proposed: determining the bit interleaving block obtained by conversion based on the effective downlink time slot, and deinterleaving the bit interleaving block to obtain the first FEC code block group, the second FEC code block group, and the third FEC code block group; or, determining the bit interleaving block obtained by conversion based on the first FEC code block group, the second FEC code block group, and the third FEC code block group, and deinterleaving the bit interleaving block to obtain the first FEC code block group, the second FEC code block group, and the third FEC code block group.

[0101] In an exemplary embodiment, the method further includes: searching for delimiters corresponding to modulation formats; determining a first modulation block obtained by conversion based on the effective downlink time slot where the downlink bandwidth entry number is located; demodulating the first modulation block group to obtain a first FEC code block group; descrambling each code block in the first FEC code block group individually; performing FEC decoding on the descrambled FEC code blocks; obtaining the number of bandwidth entries based on the effective downlink time slot where the downlink bandwidth entry number is located, wherein the number of bandwidth entries represents the number of downlink bandwidth entries, or the sum of the number of uplink bandwidth entries and the number of downlink bandwidth entries; determining another effective downlink time slot where the bandwidth entry is located based on the number of bandwidth entries; and determining a first modulation block obtained by conversion based on the other effective downlink time slot. The second modulation block obtained by converting the effective downlink time slot is demodulated to obtain a second FEC code block group. Each FEC code block in the second FEC code block group is descrambled individually. The descrambled FEC code blocks are then FEC decoded. The bandwidth entry is obtained according to the other effective downlink time slot, and the bandwidth entry is parsed to obtain the downlink bandwidth belonging to the ONU. The third modulation block obtained by converting the effective downlink time slot corresponding to the downlink bandwidth is determined. The third modulation block is demodulated to obtain a third FEC code block group. Each FEC code block in the third FEC code block is descrambled individually. The descrambled FEC code blocks are then FEC decoded. Downlink service information is obtained according to the effective downlink time slot corresponding to the downlink bandwidth.

[0102] In an exemplary embodiment, deinterleaving each bit interleaving block in the physical time slot includes: if the bit interleaving blocks overlap, then deinterleaving is no longer performed on the already deinterleaved portions of the overlapping interleaved code blocks.

[0103] In one exemplary embodiment, the following scheme is further proposed: for idle physical time slots other than those converted from the effective downlink time slots, the idle physical time slots are not processed, or the receiving component for receiving the effective downlink time slots is turned off during the idle physical time slots.

[0104] In an optional embodiment, the following scheme is further proposed: not to deinterleave the remaining bit interleaving code blocks other than the bit interleaving code blocks, or to shut down the receiving component for receiving the effective downlink time slot in the physical time slot corresponding to the remaining bit interleaving code blocks.

[0105] In an optional embodiment, the HLend field in the aforementioned FEC code block group can be parsed to obtain the BWmaplength field. The number of bandwidth entries N in the downlink bandwidth allocation BWmap is determined based on the BWmap length field. The FEC code block corresponding to the BWmap is then decoded based on the number of bandwidth entries N, where N is a positive integer. That is, parsing the BWmap length in the HLend field of the FEC code block group yields the number of entries N in the BWmap, and then further parsing based on N yields the BWmap.

[0106] In an optional embodiment, the process of decoding the FEC code block corresponding to the BWmap according to the number of bandwidth entries N includes: if it is determined that the allocation identifier Alloc-ID of the bandwidth entry in the downlink bandwidth allocation BWmap is the allocation identifier Alloc-ID of the FEC code block group, and the downlink FEC code pattern of the FEC code block group is consistent with the downlink FEC code pattern adopted by the ONU, then the start code block representing the start time of the downlink bandwidth and the duration code block representing the duration of the downlink bandwidth are obtained within the FEC code block group. In this embodiment, when the Alloc-ID in a bandwidth entry is the FEC packet Alloc-ID and corresponds to the FEC code pattern adopted by this ONU, then the downlink bandwidth StartTime and GrantSize of the FEC packet are obtained; when the Alloc-ID in a bandwidth entry is the downlink Alloc-ID allocated to this ONU, then the start time StartTime and duration GrantSize of the downlink service bandwidth are obtained.

[0107] In an optional embodiment, the uplink bandwidth allocation BWmap structure can also be defined as the downlink bandwidth allocation BWmap structure, wherein the allocation identifier in the indicator structure of the downlink bandwidth allocation BWmap structure includes at least one of the following: uplink allocation identifier, downlink allocation identifier.

[0108] In an optional embodiment, if the allocation identifier in the indicator structure of the downlink bandwidth allocation BWmap structure is a downlink allocation identifier, then the downlink bandwidth entry can be carried in the downlink bandwidth allocation BWmap structure. The downlink bandwidth allocation BWmap structure is provided with attribute code blocks for setting downlink bandwidth attributes, start code blocks for indicating the start time of downlink bandwidth, and duration code blocks for indicating the duration of downlink bandwidth.

[0109] In the downlink direction, the BWmap can reuse the uplink bandwidth allocation BWmap structure. The Alloc-ID in the Allocation structure can be either an uplink Alloc-ID or a downlink Alloc-ID. When it's a downlink Alloc-ID, the Allocation structure carries downlink bandwidth entries. The Flags, FWI, and BurstProfile fields are temporarily reserved for future setting of downlink bandwidth attributes. StartTime and GrantSize represent the start time and duration of the downlink bandwidth, respectively. Additionally, the BWmap length field can be reused to represent the number of bandwidth entries in the BWmap, including both uplink and downlink bandwidth entries.

[0110] Furthermore, this embodiment also provides a method for generating downlink superframes. Figure 6 This is a flowchart of a downlink superframe generation method according to an embodiment of this application, such as... Figure 6 As shown, the steps of this method include:

[0111] In step S602, the optical line terminal (OLT) scrambles each FEC code block individually to obtain a downlink superframe.

[0112] This embodiment solves the problem of how the OLT can accurately generate downlink superframes by independently scrambling each FEC (Forward Error Correction) code block using the OLT (Optical Line Terminal). This facilitates the ONU to perform corresponding processing based on the downlink bandwidth allocation within the downlink superframe of the OLT, thereby achieving minimum set reception processing and enhancing data security.

[0113] In one exemplary embodiment, the optical line terminal (OLT) scrambles each FEC code block individually, including: starting from each FEC code block, initializing a scrambling shift register.

[0114] In one exemplary embodiment, the method further includes: bit interleaving every X FEC code blocks according to the interleaving depth value X to obtain the downlink superframe.

[0115] In an exemplary embodiment, before the optical line terminal (OLT) scrambles each FEC code block individually, the method further includes: carrying downlink bandwidth entries, the number of downlink bandwidth entries, other necessary information, the number of other necessary information, and downlink services, and performing FEC verification on each FEC code block according to a specified FEC code pattern.

[0116] In one exemplary embodiment, different ONUs correspond to different FEC code patterns. FEC verification is performed on each FEC code block according to the specified FEC code pattern, including: FEC encoding of each FEC code block using the specified FEC code pattern according to the downlink time slot of the different ONUs.

[0117] In one exemplary embodiment, the method further includes: setting a default FEC code block group in the downlink superframe header for different FEC code patterns, wherein the default FEC code block group adopts one FEC code pattern; or setting a default modulation block in the downlink superframe header for different modulation formats, wherein the default modulation block adopts one modulation format.

[0118] In one exemplary embodiment, the default FEC code block carries remaining payload information in addition to downlink bandwidth allocation information and necessary information. The method further includes: the remaining payload information includes downlink service information; or the remaining payload information is idle information. It is understood that in this embodiment, if there is remaining payload in the default FEC code block besides downlink bandwidth allocation information and other necessary information, it also carries downlink services supporting the ONU of that downlink FEC code type. Of course, the remaining payload can also be set to idle information.

[0119] In one embodiment, based on the above-mentioned downlink bandwidth allocation information processing method, the ONU determines the effective downlink time slot to be received and processed, converts it into a physical time slot and performs physical time slot processing, and then receives and processes the information and services within the effective downlink time slot.

[0120] Effective downlink time slots include: necessary information time slots and downlink service time slots.

[0121] For the necessary information time slot, the downlink time slot carrying downlink bandwidth allocation information and other necessary information (such as uplink bandwidth allocation, PLOAM message) is converted into a physical time slot (such as FEC (Forward Error Correction) code block, bit interleaving block, etc.), and physical time slot processing (such as FEC decoding, descrambling, deinterleaving, etc.) is performed. Then, the necessary information in the necessary information time slot is obtained, and the downlink service time slot is obtained according to the downlink bandwidth allocation information, as well as the uplink bandwidth allocation information is obtained for uplink service transmission, and the PLOAM message is obtained and processed accordingly.

[0122] For downlink service time slots, the downlink service (e.g., downlink XGEM frame sequence) is obtained from downlink bandwidth allocation information. The downlink service time slot is converted into a physical time slot (e.g., FEC code block, bit interleaving block, etc.), and physical time slot processing (e.g., FEC decoding, descrambling, deinterleaving, etc.) is performed. Then, the downlink service (e.g., XGEM frame sequence) within the downlink service time slot is obtained, and the XGEM frame sequence is parsed and processed.

[0123] like Figure 7 As shown, the specific processing flow of effective downlink time slots (including necessary information time slots and downlink service time slots) includes: obtaining the location and duration of necessary information time slots, converting necessary information time slots into idle physical time slots, performing physical time slot processing, obtaining necessary information, determining the location and duration of time slots again, converting downlink service time slots to obtain idle physical time slots, performing physical time slot processing, and obtaining downlink services.

[0124] In the idle physical time slots outside the physical time slots converted from effective downlink time slots, no physical time slot processing is performed, such as no deinterleaving, descrambling, or FEC removal, and the corresponding receiving components can even be shut down.

[0125] Decoding FEC is the final physical time slot processing step; therefore, physical time slot units can be FEC code blocks. The ONU needs to map the valid downlink time slots to physical downlink time slots in units of FEC code blocks, decode FEC, and then obtain the information and data within the valid downlink time slots.

[0126] Before decoding FEC, descrambling is required. Since each ONU only decodes FEC code blocks, the original approach of scrambling and descrambling the entire downlink superframe is optimized by scrambling and descrambling each FEC code block separately.

[0127] If downlink bit interleaving occurs, the ONU maps the effective downlink time slots to physical time slots in units of FEC code blocks, then maps them to interleaved blocks, performs deinterleaving physical time slot processing, and then switches to physical time slot processing in units of FEC code blocks.

[0128] Based on the above steps, it can be understood that the ONU's processing procedure includes: first, receiving and processing FEC code blocks containing downlink bandwidth allocation and other necessary information, such as first parsing the number of downlink bandwidth entries, then further obtaining the FEC code blocks containing the corresponding number of downlink bandwidth entries to be parsed based on the number of downlink bandwidth entries, and obtaining the downlink bandwidth entries therein, then mapping the downlink bandwidth related to itself to the FEC code blocks to be processed, decoding these FEC code blocks, obtaining the corresponding data, and receiving and processing it.

[0129] Furthermore, the following examples will provide further details.

[0130] The following preparatory work needs to be completed first.

[0131] Based on GPON, XG-PON, XGS-PON, or TWDM-PON, FEC check and scrambling are added to XGTC frames (XG-PON Transmission Convergence) on the transmitting side to form downlink superframes. Then, on the receiving side, the downlink superframes are descrambled and FEC de-processed to obtain the XGTC frames. Here, XG-PON stands for 10-Gigabit-capable passive optical networks.

[0132] Descrambling FEC on the receiving side means that descrambling must be performed first. When the processing unit on the ONU side is an FEC code block, the ONU only needs to process a portion of the FEC code blocks, rather than processing all of them. Therefore, the transmitting side needs to change the scrambling rules, and the receiving side also needs to change the descrambling rules accordingly. Both need to perform scrambling and descrambling on a unit basis of FEC code blocks.

[0133] In this application, based on the PON standard, the initial values ​​of the scrambling code, descrambling polynomial, and shift register can remain unchanged, or different initial values ​​can be used. When there is no downlink bit interleaving, the transmission and reception sides of the 50G-PON downlink direction follow a similar processing method, which will not be elaborated further here. Figure 8 As shown, a process is provided for adding FEC checksum and scrambling code to FS frames on the downlink transmitting side of a 50G-PON.

[0134] The following uses 50G-PON as an example to explain the scrambling and descrambling process of FEC code blocks. Except for PSBd (downstream Physical Synchronization Block), polynomial "x" is used. 58 +x 39 +1 is used for scrambling or descrambling. The PSBd field is scrambled and descrambled. The first 8 bytes are PSync and are not scrambled or descrambled. The last 16 bytes are scrambled or descrambled by XORing with "0x0F0F". The part after PSBd is scrambled and descrambled using the above scrambling and descrambling polynomial.

[0135] like Figure 9 As shown, in the 58 shift registers, the highest bit is output as "x". 58 "and 39-bit output value "x 39 "After XORing, the values ​​are input into a 1-bit register. The initial values ​​of these shift registers consist of the current superframe number and seven 1-bit values. The highest bit outputs the value "x". 58 "and FS frame data (corresponding)" Figure 9 The result of XORing (data in) is scrambled data (corresponding to) Figure 9 Scrambled data).

[0136] When bit interleaving is used in the downlink direction of 50G-PON, FEC check, scrambling, and bit interleaving are performed on the FS frame at the transmitting side to form a downlink superframe. At the receiving side, the superframe is deinterleaved, descrambled, and then deFEC is performed to obtain the FS frame.

[0137] The ONU receives FEC code block information, obtains the interleaved block according to the interleaving depth, deinterleaves the interleaved block, and then obtains the corresponding FEC code block. For example... Figure 10 As shown, the process of adding FEC check, scrambling and bit interleaving to FS frames on the downlink transmitting side of 50G-PON is provided.

[0138] For example, bit interleaving is performed on D interleaving units, such as Figure 11 The diagram shown illustrates 50G-PON bit interleaving. The interleaving depth is the number of bits between X and X+3, i.e., (X+3)-X+1=4. For example, when the interleaving depth D=4, the interleaving unit is an FEC code block.

[0139] Next, the processing methods for effective downlink time slots are summarized in Table 1. Table 1 and the following examples describe specific implementations for existing standards such as GPON, XG-PON, XGS-PON, TWDM-PON, and 50G-PON. However, this application is not limited to these standards and is applicable to future ITU-T VHSP (Very High Speed ​​PON) or IEEE series PON standards, which will not be elaborated here.

[0140] Table 1 Summary of Effective Downlink Time Slot Processing Methods

[0141]

[0142] Example 1

[0143] In this embodiment, implementation method 1, "GPON, Unified FEC, No Bit Interleaving", shown in Table 1, will be described.

[0144] like Figure 12The diagram illustrates the relationship between GPON downlink superframes and FEC code patterns. According to the ITU-T G.984 series standards, a superframe is transmitted every 125μs in the GPON downlink direction at a rate of 2.48832Gbps. Each downlink superframe is 38880 bytes long and is protected by FEC, using the unified FEC code pattern RS(255,239). This means each 255 bytes constitutes one FEC codeword, with 239 bytes being the payload and 255-239=16 bytes for RS checksum. Therefore, each downlink superframe contains 152 complete FEC codewords and one 120-byte short codeword, totaling 153 FEC codewords. The 36432 bytes of payload in each downlink superframe are protected by FEC, where 38880-16×153=36432.

[0145] The ITU-T G.984.3 standard defines the Upstream BWmap structure for allocating upstream bandwidth, such as... Figure 13 As shown, there are N Allocation structures, each carrying a bandwidth entry, where StartTime and StopTime represent the start and end times of the uplink bandwidth in the uplink 125μs physical frame.

[0146] The uplink speed of GPON is 1.24416Gbps. Every 125μs corresponds to 19440 bytes. The StartTime and StopTime of the uplink bandwidth are represented in bytes, with a value range of 0 to 19439.

[0147] The BWmap structure for downlink bandwidth allocation can reuse the Upstream BWmap structure and be changed to a BWmap structure. In the Allocation structure, Alloc-ID can be either uplink Alloc-ID or downlink Alloc-ID. StartTime indicates the start position of uplink bandwidth in the uplink physical frame or the start position of downlink bandwidth in the downlink superframe. StopTime indicates the end position of uplink bandwidth in the uplink physical frame or the end position of downlink bandwidth in the downlink superframe.

[0148] When using a downlink Alloc-ID, the Allocation structure carries downlink bandwidth entries, temporarily reserving the Flags field for future setting of downlink bandwidth attributes. StartTime and StopTime represent the start and end times of the downlink bandwidth, respectively. Additionally, the Blen field can be reused; Blen represents the number of bandwidth entries in the BWmap, such as... Figure 14 As shown, the number of bandwidth entries in BWmap includes uplink bandwidth entries and downlink bandwidth entries.

[0149] This is merely an example; there are other ways to implement downlink bandwidth allocation, which are not limited in this application.

[0150] To achieve the minimum set of ONU parses, each FEC code block is scrambled and descrambled separately. The scrambling and descrambling still follow the method specified in G.984.3, and the scrambling and descrambling polynomials are "x 7 +x 6 "+1" sets the initial value of the shift register at the start of scrambling and descrambling for each FEC code block, for example, seven ones. Specifically, in the scrambling and descrambling of the PCBd field in the first FEC code block, the first four bytes are PSync and are not scrambled or descrambled. For the part after PCBd, the above scrambling and descrambling polynomial is used for scrambling and descrambling, and the shift register at the start of scrambling and descrambling is set to an initial value, for example, seven ones.

[0151] Next, an ONU receiving calculation example is provided. It should be noted that the ONU receiving calculation is not limited to the following example, and can also be implemented by other algorithms, which will not be elaborated in this application.

[0152] The downlink superframe contains 38,880 bytes, numbered 0 to 37,779. The downlink superframe contains 153 FEC blocks, numbered 0 to 152.

[0153] Decoding each FEC code block implicitly involves descrambling each FEC code block individually. Each FEC code block is descrambled according to the method specified in G.984.3, with the descrambling polynomial being "x 7 +x 6 "+1" sets the initial value of the shift register when each FEC code block begins descrambling, for example, seven ones. In particular, the first four bytes of the first FEC code block are not processed. The part after PCBd is descrambled using the above descrambling polynomial, and the initial value of the shift register when it begins descrambling is set, for example, seven ones.

[0154] To obtain the number of downlink bandwidth entries, the ONU first decodes the first FEC code block, then parses the Blen field in the Plend field of the first FEC code block, which is the number of entries N in the BWmap. Considering that there are 30 bytes of PSync, Ident, PLOAMd, BIP, Plend, and Plend fields before the BWmap, if N×8+30≤239, the BWmap is directly parsed; otherwise, the further decoding is determined based on N. Each FEC code block is processed, and these FEC code blocks are decoded, along with the bandwidth entries in the BWmap. If the Alloc-ID in a bandwidth entry is the downlink Alloc-ID configured for this ONU, the downlink bandwidth represented by StartTime and StopTime in that bandwidth entry is obtained. Then, the FEC code block containing that downlink bandwidth is calculated based on StartTime and StopTime, including the start FEC code block F1 and the end FEC code block F2.

[0155] To simplify the description, StartTime and StopTime are represented in units of 2 bytes, with the value of each byte ranging from 0 to 19439. Of course, it is also possible to use other byte units, but we will not go into detail here.

[0156] The specific calculation process is as follows. To simplify the formula, S represents 2×StartTime and E represents 2×StopTime.

[0157] Start FEC code block F1: End of FEC code block F2:

[0158] The ONU decodes FEC code blocks F1 to F2. When these FEC code blocks overlap with FEC code blocks related to the number of bandwidth entries and BWmap, the ONU can only parse the non-overlapping FEC code blocks in F1 to F2 during this stage.

[0159] After FEC decoding is completed, the payload portion of the F1st FEC code block starting from the StartTime byte, the payload portions of FEC code blocks F1+1 to F2-1 (if there are other code blocks between FEC code blocks F1 and FEC code blocks F2), and the payload portion of the F2th FEC code block from the beginning to StopTime are taken as the received data GEM frame sequence, and GEM frame parsing is performed on the GEM frame sequence to obtain the corresponding downlink service.

[0160] The ONU can either leave other FEC code blocks unprocessed or shut down the relevant receiving components within the corresponding time slots of these FEC code blocks.

[0161] Example 2

[0162] In this embodiment, the implementation method 2 "XG-PON / XGS-PON / TWDM-PON, unified FEC, no bit interleaving" shown in Table 1 will be described.

[0163] Based on ITU-T G.987 series standards, G.9807.1 standard, and G.989.3 series standards, the downlink rate of XG-PON, XGS-PON, and TWDM-PON single wavelength is set to 9.95328Gbps. A superframe is transmitted every 125μs in the downlink direction, with each superframe totaling 155520 bytes. The foreground PSBd field is 24 bytes and is not within the FEC protection range. The remaining 155496 bytes in each superframe are protected by FEC (155520 - 24 = 155496). The FEC code type is RS(248, 216), meaning each 248 bytes constitutes one FEC codeword, with 216 bytes being the payload and the remaining 248 - 216 = 32 bytes being the RS checksum.

[0164] A downlink superframe contains 627 FEC codewords, and each downlink superframe includes 135,432 bytes of payload protected by FEC. 155,520 - 24 - 32 × 627 = 135,432.

[0165] The downlink frame structures of XG-PON, XGS-PON, and TWDM-PON are basically the same. The main difference is that in XG-PON, the last 4 bytes of the downlink XGTC frame structure carry the service, such as... Figure 15 The diagram illustrates the relationship between downlink superframes and FEC codes, taking XG-PON as an example. The XG-PON downlink XGTC frame structure ends with a 4-byte trailer, the specific content of which is set by the OLT. The TWDM-PON downlink XGTC frame structure ends with a 4-byte BIP.

[0166] The ITU-T G.987.3 / G.9807.1 / G.989.3 standards define the BWmap structure for allocating uplink bandwidth, such as... Figure 16 As shown, StartTime and GrantSize represent the start time and length of the uplink bandwidth. StartTime indicates the start position of the uplink bandwidth in the uplink physical frame, and GrantSize indicates the length of the uplink bandwidth in the uplink FS frame, excluding FEC checksum. The values ​​of StartTime and GrantSize range from 0 to 9719. The unit for StartTime and GrantSize in XG-PON is 4 bytes, while the unit for StartTime and GrantSize in both XGS-PON and TWDM-PON is 16 bytes.

[0167] Downlink bandwidth allocation can reuse BWmap. In the Allocation structure, Alloc-ID can be either uplink Alloc-ID or downlink Alloc-ID. StartTime indicates the start position of uplink bandwidth in the uplink physical frame or the start position of downlink bandwidth in the downlink superframe. GrantSize indicates the length of uplink bandwidth in the uplink FS frame or the length of downlink bandwidth in the downlink FS frame.

[0168] When it is a downlink Alloc-ID, the Allocation structure carries a downlink bandwidth entry. Fields such as Flags, FWI, and BurstProfile are temporarily reserved for future setting of downlink bandwidth attributes. StartTime and GrantSize represent the start time and duration of the downlink bandwidth, respectively.

[0169] Additionally, the BWmap length field can be reused to represent the number N of bandwidth entries in the BWmap, such as... Figure 17 As shown, the number of bandwidth entries N includes the number of uplink bandwidth entries and the number of downlink bandwidth entries. This is merely an example; there are other ways to implement downlink bandwidth allocation, which are not limited in this application.

[0170] Furthermore, to achieve the minimum set of ONU parses, each FEC code block is scrambled and descrambled separately. The scrambling and descrambling still follow the methods specified in G.987.3 / G.9807.1 / G.989.3, with the scrambling and descrambling polynomials being "x 58 +x 39 "+1" sets the initial value of the shift register when scrambling and descrambling each FEC code block, for example, adding 7 ones to the 51-bit superframe number.

[0171] The following is an example of ONU receiving calculation, which consists of 155,520 bytes, numbered 0 to 155,519, with FEC code block numbers ranging from 0 to 626, totaling 627 FEC code blocks.

[0172] Decoding each FEC code block implicitly involves descrambling each FEC code block individually. For example, descrambling according to the method specified in G.987.3 results in a descrambling polynomial of x. 58 +x 39 +1, when descrambling each FEC code block, the descrambling shift register is set to an initial value, for example, adding 7 ones to the 51-bit superframe number.

[0173] To obtain the BWmap length, the ONU first decodes the first FEC code block, parsing the BWmap length (i.e., the number of entries N in the BWmap) within the HLend field of the first FEC code block. Considering that the HLend field has 4 bytes protected by FEC before the BWmap, if N×8+4≤216, the BWmap is directly parsed; otherwise, further decoding is needed based on N. Each FEC code block is processed, and these FEC code blocks are decoded, followed by parsing of the BWmap.

[0174] When the Alloc-ID in a bandwidth entry is the downlink Alloc-ID assigned to this ONU, the downlink bandwidth corresponding to StartTime and GrantSize is obtained, and the FEC code block in which this downlink bandwidth is located is calculated, including the calculation of the start FEC code block F1 and the end FEC code block F2.

[0175] For simplicity, StartTime and GrantSize are in units of 8 bytes. The value of StartTime ranges from 3 to 19439, and the value of GrantSize ranges from 16929. Of course, it is also possible to use other numbers of bytes as units, which will not be elaborated here.

[0176] It should be noted that this application is not limited to the specific calculation process described below. The calculation process can also be implemented by other algorithms, which will not be elaborated on in this application.

[0177] To simplify the formula, S represents StartTime×8 and G represents GrantSize×8.

[0178] Start FEC code block F1:

[0179] End of FEC code block F2:

[0180]

[0181] ONU decodes FEC code blocks F1 to F2.

[0182] When these FEC code blocks overlap with the FEC code blocks related to the number of bandwidth entries and BWmap, the ONU can only parse the non-overlapping FEC code blocks in FEC code blocks F1 to F2 in this stage.

[0183] After completing FEC decoding, take the payload starting from byte S of the F1st FEC code block (assuming length L1), the payload from F1+1 to F2-1 of the FEC code block (assuming length L2 if there are other code blocks between FEC code block F1 and FEC code block F2), and the payload from the beginning of the F2nd FEC code block up to G-L1-L2 as the received data XGEM frame sequence, or take the payload starting from byte S of the F1st FEC code block for a total of G bytes as the received data XGEM frame sequence, and perform GEM frame parsing on the XGEM frame sequence to obtain the corresponding downlink service.

[0184] The ONU can either leave other FEC code blocks unprocessed or shut down the relevant receiving components within the corresponding time slots of these FEC code blocks.

[0185] Example 3

[0186] In this embodiment, implementation method 3 "50G-PON, unified FEC, no bit interleaving" shown in Table 1 will be described.

[0187] According to the ITU-T G.9804 series standards, at a downlink rate of 49.7664Gbps for 50G-PON, a superframe is transmitted every 125μs in the downlink direction. Each superframe consists of 777,600 bytes. The entire superframe is protected by FEC. The FEC code is represented by LDPC(17280, 14592) in bits and LDPC(2160, 1824) in bytes. That is, every 2160 bytes is an FEC codeword, of which 1824 bytes are the payload and 336 bytes are LDPC checksums. 2160-1824=336.

[0188] The relationship between 50G-PON downlink superframes and FEC coding patterns is as follows: Figure 18 As shown. A downlink superframe contains 360 FEC codewords, and each downlink superframe includes 656,640 bytes of FEC-protected payload, 777,600 - 336 × 360 = 656,640.

[0189] The ITU-T G.9804.2 standard defines the BWmap structure for allocating uplink bandwidth, such as... Figure 19As shown, StartTime and GrantSize represent the start time and length of the uplink bandwidth. StartTime indicates the start position of the uplink bandwidth in the uplink physical frame, and GrantSize indicates the length of the uplink bandwidth in the uplink FS frame, excluding FEC checksum. The value range of StartTime is 0 to 12149, and the value range of GrantSize is 0 to 10260. The units of uplink rates of 12.4416 Gbit / s, 24.8832 Gbit / s, and 49.7664 Gbit / s are 16 bytes, 32 bytes, and 64 bytes, respectively.

[0190] The downlink BWmap can reuse this structure. In the Allocation structure, the Alloc-ID can be either the uplink Alloc-ID or the downlink Alloc-ID. StartTime indicates the start position of the uplink bandwidth in the uplink physical frame or the start position of the downlink bandwidth in the downlink superframe. GrantSize indicates the length of the uplink bandwidth in the uplink FS frame or the length of the downlink bandwidth in the downlink FS frame.

[0191] When it is a downlink Alloc-ID, the Allocation structure carries a downlink bandwidth entry. The Flags, FWI, and BurstProfile are temporarily reserved so that the downlink bandwidth attributes can be set in the future. StartTime and GrantSize represent the start time and duration of the downlink bandwidth, respectively.

[0192] Additionally, the BWmap length field can be reused to represent the number of bandwidth entries in the BWmap, such as... Figure 20 As shown, the number of bandwidth entries in BWmap includes the number of uplink bandwidth entries and the number of downlink bandwidth entries.

[0193] This is merely an example; there are other ways to implement downlink bandwidth allocation, which are not limited in this application.

[0194] In addition, to achieve the minimum set of ONU parses, each FEC code block is scrambled and descrambled separately. The scrambling and descrambling still follow the method specified in G.9804.2, and the scrambling and descrambling polynomials are "x 58 +x 39"+1" sets the initial value of the shift register at the start of scrambling and descrambling for each FEC code block, for example, adding 7 ones to the 51-bit superframe number. Specifically, in the scrambling and descrambling of the PSBd field in the first FEC code block, the first 8 bytes are PSync and are not scrambled or descrambled, while the last 16 bytes are scrambled or descrambled by XORing with "0x0F0F". For the part after PSBd, the above scrambling and descrambling polynomial is used for scrambling and descrambling, and the shift register at the start of scrambling and descrambling is set to the initial value, for example, adding 7 ones to the 51-bit superframe number.

[0195] The following is an example of ONU reception calculation. The downlink superframe consists of 777,600 bytes, with byte numbers ranging from 0 to 777,599, and FEC code block numbers ranging from 0 to 359, totaling 360 FEC code blocks.

[0196] It should be noted that this application is not limited to the specific calculation process described below. The calculation process can also be implemented by other algorithms, which will not be elaborated on in this application.

[0197] For ease of explanation, the following decoding of each FEC code block implicitly involves descrambling each FEC code block individually. Descrambling is performed according to the method specified in G.9804.2, and the descrambling polynomial is "x 58 +x 39 +1”, when each FEC code block begins descrambling, the descrambling shift register is initialized, for example, by adding 7 ones to the 51-bit superframe number. Specifically, the first 8 bytes of the first FEC code block are not processed, and the following 16 bytes are descrambled by XORing with “0x0F0F”. For the part after PSBd, the above descrambling polynomial is used for descrambling, and the shift register is initialized at the beginning of descrambling, for example, by adding 7 ones to the 51-bit superframe number.

[0198] To obtain the BWmap length, the ONU first decodes the first FEC code block, parsing the BWmap length (i.e., the number of entries N in the BWmap) from the Plend field. Considering that the PSBd and HLend fields (a total of 28 bytes) are protected by FEC before the BWmap, if N×8+28≤1824, the BWmap is directly parsed; otherwise, further decoding is determined based on N. Each FEC code block is decoded, and the BWmap is parsed. When the Alloc-ID in a bandwidth entry is the downlink Alloc-ID assigned to this ONU, the downlink bandwidth corresponding to StartTime and GrantSize is obtained, and the FEC code block in which it is located is calculated, including the start FEC code block F1 and the end FEC code block F2.

[0199] For simplicity, StartTime and GrantSize are expressed in 16-byte units. StartTime ranges from 0 to 48599, and GrantSize ranges from 0 to 41040. Of course, other byte units are also possible, but will not be elaborated here. To simplify the formula, S represents StartTime × 16, and G represents GrantSize × 16.

[0200] Start FEC code block F1:

[0201] End of FEC code block F2:

[0202]

[0203] ONU decodes FEC code blocks F1 to F2.

[0204] When these FEC code blocks overlap with the FEC code blocks related to the number of bandwidth entries and BWmap, the ONU can only parse the non-overlapping FEC code blocks in FEC code blocks F1 to F2 at this stage.

[0205] After completing FEC decoding, the payload starting from byte S of the F1st FEC code block (assuming length L1), the payload from F1+1 to F2-1 of the FEC code block (assuming length L2 if there are other code blocks between FEC code block F1 and FEC code block F2), and the payload of the F2th FEC code block starting from the beginning with a length of G-L1-L2 are taken as the received data XGEM frame sequence. Alternatively, the payload of the F1st FEC code block starting from byte S and a total of G bytes are taken as the received data XGEM frame sequence, and XGEM frame parsing is performed on the XGEM frame sequence to obtain the corresponding downlink service.

[0206] The ONU can either leave other FEC code blocks unprocessed or shut down the relevant receiving components within the corresponding time slots of these FEC code blocks.

[0207] Example 4

[0208] In this embodiment, implementation method 4, "50G-PON, unified FEC, with bit interleaving", shown in Table 1, will be described.

[0209] According to the ITU-T G.9804 series standards, the downlink rate of 50G-PON is 49.7664Gbps. A superframe is transmitted every 125μs in the downlink direction, and a superframe consists of 777,600 bytes. The entire superframe is protected by FEC. The FEC code is represented by LDPC(17280,14592) in bits and LDPC(2160,1824) in bytes. That is, every 2160 bytes is an FEC codeword, of which 1824 bytes are the payload and 336 bytes are LDPC checksum. 2160-1824=336.

[0210] based on Figure 18 The diagram shows the relationship between 50G-PON downlink superframes and FEC codewords. A downlink superframe contains 360 FEC codewords, and 656,640 bytes of payload are protected by FEC in each downlink superframe. 777,600 - 336 × 360 = 656,640.

[0211] like Figure 11 As shown, the transmitting side scrambles the downlink frames after FEC check and scrambling, and interleaves them according to the interleaving depth D=4, that is, every 4 scrambled FEC code blocks are interleaved to form an interleaved block, which is 69120 bits or 8640 bytes in total.

[0212] The ITU-T G.9804.2 standard defines the BWmap structure for allocating uplink bandwidth, such as... Figure 19 As shown, StartTime and GrantSize represent the start time and length of the uplink bandwidth. StartTime indicates the start position of the uplink bandwidth in the uplink physical frame, and GrantSize indicates the length of the uplink bandwidth in the FS frame, excluding FEC checksum. The value range of StartTime is 0 to 12149, and the value range of GrantSize is 0 to 10260. The units of uplink rates of 12.4416 Gbit / s, 24.8832 Gbit / s, and 49.7664 Gbit / s are 16 bytes, 32 bytes, and 64 bytes, respectively.

[0213] The downlink BWmap can reuse this structure. In the Allocation structure, Alloc-ID can be either uplink Alloc-ID or downlink Alloc-ID. StartTime indicates the start position of the uplink bandwidth in the uplink physical frame or the start position of the downlink bandwidth in the downlink superframe. GrantSize indicates the length of the uplink bandwidth in the uplink FS frame or the length of the downlink bandwidth in the downlink FS frame.

[0214] When using a downlink Alloc-ID, the Allocation structure carries downlink bandwidth entries. The Flags, FWI, and BurstProfile fields are temporarily reserved for future configuration of downlink bandwidth attributes. StartTime and GrantSize represent the start time and duration of the downlink bandwidth, respectively. The BWmap length field can also be reused to indicate the number of bandwidth entries in the BWmap. Figure 20 As shown, the number of bandwidth entries in BWmap includes the number of uplink bandwidth entries and the number of downlink bandwidth entries.

[0215] This is merely an example; there are other ways to implement downlink bandwidth allocation, which are not limited in this application.

[0216] In addition, to achieve the ONU parsing minimum set, each FEC code block is scrambled and descrambled separately, still following the scrambling and descrambling method specified in G.9804.2, with the scrambling and descrambling polynomials being "x 58 +x 39 "+1" sets the initial value of the shift register at the start of scrambling and descrambling for each FEC code block, for example, adding 7 ones to the 51-bit superframe number. Specifically, in the scrambling and descrambling of the PSBd field in the first FEC code block, the first 8 bytes are PSync and are not scrambled or descrambled, while the last 16 bytes are scrambled or descrambled by XORing with "0x0F0F". For the part after PSBd, the above scrambling and descrambling polynomial is used for scrambling and descrambling, and the shift register at the start of scrambling and descrambling is set to the initial value, for example, adding 7 ones to the 51-bit superframe number.

[0217] The following is an example of ONU reception calculation. The downlink superframe has a total of 777,600 bytes, with byte numbers ranging from 0 to 777,599. The FEC code block numbers range from 0 to 359, totaling 360 FEC code blocks. The interleaving block numbers range from 0 to 89, totaling 90 interleaving blocks.

[0218] For ease of explanation, the following decoding of each FEC code block implicitly involves descrambling each FEC code block individually, according to the method specified in G.9804.2, with the descrambling polynomial being "x 58 +x 39 +1”, when each FEC code block begins descrambling, the descrambling shift register is initialized, for example, by adding 7 ones to the 51-bit superframe number. Specifically, the first 8 bytes of the first FEC code block are not processed, and the following 16 bytes are descrambled by XORing with “0x0F0F”. For the part after PSBd, the above descrambling polynomial is used for descrambling, and the shift register is initialized at the beginning of descrambling, for example, by adding 7 ones to the 51-bit superframe number.

[0219] To obtain the BWmap length, the ONU first deinterleaves the first interleaved block, obtains and decodes the first FEC code block, and parses the BWmap length in the HLend field of the first FEC code block, which is the number of entries N in the BWmap. Considering that the PSBd and HLend fields, a total of 28 bytes, are protected by FEC before the BWmap, if N×8+28≤1824×4, the BWmap is directly parsed; otherwise, based on N, further determination is made to determine which decoding is needed. Unintertwist the interwoven blocks, then... Each FEC code block is further decoded, and the BWmap is parsed. When the Alloc-ID in a bandwidth entry is the downlink Alloc-ID assigned to this ONU, the StartTime and GrantSize are obtained, and the FEC code block is calculated, including the calculation of the start FEC code block F1 and the end FEC code block F2. Based on the FEC code block number, the interleaving block is calculated, including the start interleaving block number I1 and the end interleaving block number I2.

[0220] For simplicity, we will use 16 bytes as the unit, although other byte numbers are also possible, which will not be elaborated here. For the simplified formula, S represents StartTime × 16, and G represents GrantSize × 16.

[0221] It should be noted that this application is not limited to the specific calculation process described below. The calculation process can also be implemented by other algorithms, which will not be elaborated on in this application.

[0222] First, calculate the FEC code block containing the time slot:

[0223] Start FEC block number F1:

[0224] End of FEC block number F2:

[0225]

[0226] Based on the FEC code block numbering, the interleaving block is then calculated:

[0227] Starting interleaving block number I1:

[0228] End of interleaving block number I2:

[0229] First, deinterleave the interleaved blocks I1 to I2 to obtain the corresponding FEC code blocks.

[0230] In cases where these interleaved blocks overlap with the number of bandwidth entries and BWmap-related interleaved blocks, the ONU can parse only the interleaved blocks that do not overlap in FEC code blocks I1 to I2 during this stage.

[0231] The ONU can either leave other interleaved code blocks unprocessed or shut down the relevant receiving components within the time slots corresponding to these interleaved blocks.

[0232] The ONU decodes FEC code blocks F1 to F2. After completing the FEC decoding, it takes the payload of the F1st FEC code block starting from byte S (assuming a length of L1), the payload of FEC code blocks F1+1 to F2-1 (if there are other code blocks between FEC code blocks F1 and FEC code block F2, assuming a length of L2), and the payload of the F2th FEC code block starting from the beginning with a length of G-L1-L2 as the received data XGEM frame sequence. Alternatively, it takes the payload of the F1st FEC code block starting from byte S and a total of G bytes as the received data XGEM frame sequence, and performs XGEM frame parsing on the XGEM frame sequence to obtain the corresponding downlink service.

[0233] When these FEC code blocks overlap with the FEC code blocks related to the number of bandwidth entries and BWmap, the ONU can only parse the non-overlapping FEC code blocks in FEC code blocks F1 to F2 at this stage.

[0234] The ONU can either leave other FEC code blocks unprocessed or shut down the relevant receiving components within the corresponding time slots of these FEC code blocks.

[0235] Example 5

[0236] In this embodiment, implementation method 5, "50G-PON, downlink flexible FEC, no bit interleaving", shown in Table 1, will be described.

[0237] According to the ITU-T G.9804 series of standards, the downlink rate of 50G-PON is 49.7664Gbps. A superframe is sent every 125μs in the downlink direction. Each superframe is a total of 777,600 bytes. The entire superframe is protected by FEC. The FEC code is represented by LDPC (17280, 14592) in bits and by LDPC (2160, 1824) in bytes. That is, every 2160 bytes is an FEC codeword, of which 1824 bytes are the payload and the other 336 bytes are LDPC checksum. 2160-1824=336.

[0238] The ITU-T G.9804 series of standards also defines two additional uplink FEC codes, namely LDPC(15872,14592) and LDPC(17664-S,14592-S), where S = CS × 256, and CS is a value between 19 and 35.

[0239] Standards organizations have discussed introducing different FEC codes in the downlink direction of 50G-PON based on the link loss between the OLT and different ONUs. Potential FEC codes, in addition to the existing LDPC (17280, 14592), could include LDPC (15872, 14592), LDPC (17664-S, 14592-S), or other more general LDPC (C, P), where C is the block length, P is the payload length, and CP is the parity check length. The block lengths of these four FEC codes are 17280, 15872, 17664-S, and C bits, respectively.

[0240] The downlink direction uses multiple FEC code patterns, and different FEC code patterns are used for the downlink time slots sent to different ONUs. Therefore, the division and number of FEC code blocks in the downlink superframe are no longer fixed, but dynamically change according to the service traffic sent to different ONUs.

[0241] The ITU-T G.9804.2 standard defines the BWmap structure for allocating uplink bandwidth, such as... Figure 19 As shown, StartTime and GrantSize represent the start time and length of the uplink bandwidth. StartTime represents the start position of the uplink bandwidth in the uplink physical frame, and GrantSize represents the length of the uplink bandwidth in the uplink FS frame, excluding FEC check.

[0242] The StartTime value ranges from 0 to 12149, the GrantSize value ranges from 0 to 10260, and the uplink rates of 12.4416 Gbit / s, 24.8832 Gbit / s, and 49.7664 Gbit / s are in units of 16 bytes, 32 bytes, and 64 bytes, respectively.

[0243] The downlink BWmap can reuse this structure. In the Allocation structure, Alloc-ID can be either uplink Alloc-ID, downlink Alloc-ID, or downlink FEC code block Alloc-ID. StartTime indicates the start position of the uplink bandwidth in the uplink physical frame or the start position of the downlink bandwidth in the downlink superframe. GrantSize indicates the length of the uplink bandwidth in the uplink FS frame or the length of the downlink bandwidth in the downlink FS frame.

[0244] When it is a downlink Alloc-ID, the Allocation structure carries a downlink bandwidth entry. The Flags, FWI, and BurstProfile are temporarily reserved for future setting of downlink bandwidth attributes. StartTime and GrantSize represent the start time and duration of the downlink bandwidth, respectively.

[0245] When it is a downlink FEC pattern packet Alloc-ID, the Allocation structure carries a downlink bandwidth entry. The Flags, FWI, and Burst Profile are temporarily reserved so that the downlink FEC pattern packet bandwidth attributes can be set in the future. StartTime and GrantSize represent the start time and duration of the downlink FEC pattern packet bandwidth, respectively.

[0246] Additionally, the BWmap length field can be reused to represent the number of bandwidth entries in the BWmap, such as... Figure 21 As shown, the number of bandwidth entries in BWmap includes the number of uplink bandwidth entries, downlink bandwidth entries, and downlink FEC packet bandwidth entries.

[0247] This is merely an example; there are other ways to implement downlink bandwidth allocation, which are not limited in this application.

[0248] In addition, to achieve the ONU parsing minimum set, each FEC code block is scrambled and descrambled separately, still following the scrambling and descrambling method specified in G.9804.2, with the scrambling and descrambling polynomials being "x 58 +x 39 "+1" sets the initial value of the shift register at the start of scrambling and descrambling for each FEC code block, for example, adding 7 ones to the 51-bit superframe number. Specifically, in the scrambling and descrambling of the PSBd field in the first FEC code block, the first 8 bytes are PSync and are not scrambled or descrambled, while the last 16 bytes are scrambled or descrambled by XORing with "0x0F0F". For the part after PSBd, the above scrambling and descrambling polynomial is used for scrambling and descrambling, and the shift register at the start of scrambling and descrambling is set to the initial value, for example, adding 7 ones to the 51-bit superframe number.

[0249] The following is an example of ONU reception calculation. The downlink superframe consists of 777,600 bytes, numbered from 0 to 777,599. The number of FEC code blocks is uncertain and starts from 0.

[0250] It should be noted that this application is not limited to the specific calculation process described below. The calculation process can also be implemented by other algorithms, which will not be elaborated on in this application.

[0251] For ease of explanation, the following decoding of each FEC code block implicitly includes individual descrambling, performed according to the method specified in G.9804.2, with the descrambling polynomial being "x 58 +x 39+1”, when each FEC code block begins descrambling, the descrambling shift register is initialized, for example, by adding 7 ones to the 51-bit superframe number. Specifically, the first 8 bytes of the first FEC code block are not processed, and the following 16 bytes are descrambled by XORing with “0x0F0F”. For the part after PSBd, the above descrambling polynomial is used for descrambling, and the shift register is initialized at the beginning of descrambling, for example, by adding 7 ones to the 51-bit superframe number.

[0252] In this embodiment, it is assumed that the downlink direction uses three FEC code types: LDPC(17664-S,14592-S), LDPC(17280,14592), and LDPC(15872,14592), which are abbreviated as LDPC1, LDPC2, and LDPC3, respectively. The downlink superframe header is conventionally configured to contain X1 LDPC1 code blocks, X2 LDPC2 code blocks, and X3 LDPC3 code blocks in that order. It should be noted that the X1 LDPC1 code blocks may or may not contain the PSBd field, and the order of the X1 LDPC1 code blocks, X2 LDPC2 code blocks, and X3 LDPC3 code blocks can also be adjusted according to actual needs, but once these are determined, they will not change.

[0253] These convention FEC blocks contain downlink bandwidth allocation information and other necessary information (such as uplink bandwidth allocation information, PLOAM messages, etc.). They can be downlink bandwidth allocation information and other necessary information for all ONUs, or they can be downlink bandwidth allocation information and other necessary information sent to ONUs that support the downlink FEC code pattern corresponding to the convention FEC block.

[0254] In addition to carrying downlink bandwidth allocation information and other necessary information, the time slots corresponding to these FEC code blocks can also carry downlink services of ONUs that support the downlink FEC code pattern if there are any remaining time slots. Of course, the remaining time slots can also carry idle information.

[0255] Different ONUs support different downlink FEC code patterns. In order to obtain downlink bandwidth allocation and other necessary information, the ONU selects the corresponding FEC code block group from the three default FEC code blocks in the downlink superframe header for FEC decoding based on the downlink FEC code pattern it uses.

[0256] like Figure 22As shown, for example, after obtaining downlink PSync (Physical Synchronization), the downlink ONU supporting LDPC1 decodes X1 LDPC1 code blocks, the downlink ONU supporting LDPC2 skips X1×(17664-S) bits to decode X2 LDPC2 code blocks, and the downlink ONU supporting LDPC3 skips X1×(17664-S)+X2×17280 bits to decode X3 LDPC3 code blocks.

[0257] Generally, the downlink bandwidth of an FEC packet is immediately followed by the downlink service bandwidth, and the downlink bandwidth of the FEC packet is greater than or equal to the sum of the downlink service bandwidths immediately following it. The ONU parses the BWmap length in the HLend field, which is the number of entries N in the BWmap, and then further parses the BWmap based on N. When the Alloc-ID in a bandwidth entry is the FEC packet Alloc-ID and corresponds to the FEC code pattern used by this ONU, the StartTime and GrantSize of the FEC packet downlink bandwidth are obtained, and the bandwidth entries allocated to the downlink Alloc-ID within the downlink bandwidth of that FEC packet are further parsed. When the Alloc-ID in a bandwidth entry is the downlink Alloc-ID allocated to this ONU, the StartTime and GrantSize of the downlink service bandwidth are obtained.

[0258] The ONU calculates the FEC code block where its downlink service bandwidth is located based on the downlink bandwidth StartTime of the FEC packet it belongs to, including calculating the start FEC code block F1 and the end FEC code block F2.

[0259] To simplify the description, we will use 16 bytes as the unit. Of course, other byte numbers are also possible, but we will not go into detail here.

[0260] To simplify the formula, S represents the downlink service bandwidth start time StartTime×16, S0 represents the FEC packet downlink bandwidth StartTime0×16, G represents GrantSize×16, and the FEC packet code is FEC(C,P).

[0261] Start FEC code block F1:

[0262] End of FEC code block F2:

[0263]

[0264] ONU decodes FEC code blocks F1 to F2.

[0265] When these FEC code blocks overlap with the FEC code blocks related to the number of bandwidth entries and BWmap, the ONU can only parse the non-overlapping FEC code blocks in FEC code blocks F1 to F2 at this stage.

[0266] After completing FEC decoding, the payload starting from byte S of the F1st FEC code block (assuming length L1), the payload from F1+1 to F2-1 of the FEC code block (assuming length L2 if there are other code blocks between FEC code block F1 and FEC code block F2), and the payload of the F2th FEC code block starting from the beginning with a length of G-L1-L2 are taken as the received data XGEM frame sequence. Alternatively, the payload of the F1st FEC code block starting from byte S and a total of G bytes are taken as the received data XGEM frame sequence, and XGEM frame parsing is performed on the XGEM frame sequence to obtain the corresponding downlink service.

[0267] The ONU can either leave other FEC code blocks unprocessed or shut down the relevant receiving components within the corresponding time slots of these FEC code blocks.

[0268] Example 6

[0269] In this embodiment, implementation method 6 "50G-PON, downlink flexible FEC, with bit interleaving" shown in Table 1 will be described.

[0270] According to the ITU-T G.9804 series of standards, the downlink rate of 50G-PON is 49.7664Gbps. A superframe is sent every 125μs in the downlink direction, and each superframe is a total of 777,600 bytes. The entire superframe is protected by FEC. The FEC code is represented by LDPC(17280,14592) in bits and LDPC(2160,1824) in bytes. That is, every 2160 bytes is an FEC codeword, of which 1824 bytes are the payload and the other 336 bytes are LDPC checksum. 2160-1824=336.

[0271] like Figure 11 As shown, the transmitting side scrambles the downlink frame after FEC verification and interleaves it according to the interleaving depth D=4, that is, every 4 FEC code blocks are interleaved to form an interleaved block, which is 69120 bits or 8640 bytes in total.

[0272] The ITU-T G.9804 series of standards also defines two additional uplink FEC codes, namely LDPC(15872,14592) and LDPC(17664-S,14592-S), where S = CS × 256, and CS is a value between 19 and 35.

[0273] Standards organizations have discussed introducing different FEC codes in the 50G-PON downlink direction based on the link loss between the OLT and different ONUs. Potential FEC codes, in addition to the existing LDPC (17280, 14592), could include LDPC (15872, 14592), LDPC (17664-S, 14592-S), or other more general LDPC (C, P), where C is the block length, P is the payload length, and CP is the parity check length. The block lengths of these four FEC codes are 17280 bits, 15872 bits, (17664-S) bits, and C bits, respectively.

[0274] The downlink direction uses multiple FEC code patterns, and different FEC code patterns are used for the downlink time slots sent to different ONUs. Therefore, the division and number of FEC code blocks in the downlink superframe are no longer fixed, but dynamically change according to the service traffic sent to different ONUs.

[0275] The ITU-T G.9804.2 standard defines the BWmap structure for allocating uplink bandwidth, such as... Figure 19 As shown, StartTime and GrantSize represent the start time and length of the uplink bandwidth. StartTime indicates the start position of the uplink bandwidth in the uplink physical frame, and GrantSize indicates the length of the uplink bandwidth in the uplink FS frame, excluding FEC checksum. The value range of StartTime is 0 to 12149, and the value range of GrantSize is 0 to 10260. The units of uplink rates of 12.4416 Gbit / s, 24.8832 Gbit / s, and 49.7664 Gbit / s are 16 bytes, 32 bytes, and 64 bytes, respectively.

[0276] The downlink BWmap can reuse this structure. In the Allocation structure, Alloc-ID can be either uplink Alloc-ID, downlink Alloc-ID, or downlink FEC code block Alloc-ID. StartTime indicates the start position of the uplink bandwidth in the uplink physical frame or the start position of the downlink bandwidth in the downlink superframe. GrantSize indicates the length of the uplink bandwidth in the uplink FS frame or the length of the downlink bandwidth in the downlink FS frame.

[0277] When it is a downlink Alloc-ID, the Allocation structure carries a downlink bandwidth entry. The Flags, FWI, and BurstProfile are temporarily reserved so that the downlink bandwidth attribute can be set in the future. StartTime and GrantSize represent the start time and duration of the downlink bandwidth, respectively.

[0278] When it is a downlink FEC pattern packet Alloc-ID, the Allocation structure carries a downlink bandwidth entry. The Flags, FWI, and Burst Profile are temporarily reserved so that the downlink FEC pattern packet bandwidth attributes can be set in the future. StartTime and GrantSize represent the start time and duration of the downlink FEC pattern packet bandwidth, respectively.

[0279] Additionally, the BWmap length field can be reused to represent the number of bandwidth entries in the BWmap, such as... Figure 21 As shown, the number of bandwidth entries in BWmap includes the number of uplink bandwidth entries, downlink bandwidth entries, and downlink FEC packet bandwidth entries.

[0280] This is merely an example; there are other ways to implement downlink bandwidth allocation, which are not limited in this application.

[0281] In addition, to achieve the ONU parsing minimum set, each FEC code block is scrambled and descrambled separately, still following the scrambling and descrambling method specified in G.9804.2, with the scrambling and descrambling polynomials being "x 58 +x 39 "+1" sets the initial value of the shift register during scrambling and descrambling at the beginning of each FEC code block, for example, adding 7 ones to the 51-bit superframe number. Specifically, in the scrambling and descrambling of the PSBd field in the first FEC code block, the first 8 bytes are PSync and are not scrambled or descrambled, while the last 16 bytes are scrambled or descrambled by XORing with "0x0F0F". For the part after PSBd, the above scrambling and descrambling polynomial is used for scrambling and descrambling, and the shift register at the beginning of scrambling and descrambling is set to an initial value, for example, adding 7 ones to the 51-bit superframe number.

[0282] The following is an example of ONU reception calculation. The downlink superframe consists of 777,600 bytes, numbered from 0 to 777,599. The number of FEC code blocks is uncertain and starts from 0.

[0283] It should be noted that this application is not limited to the specific calculation process described below. The calculation process can also be implemented by other algorithms, which will not be elaborated on in this application.

[0284] For ease of explanation, the following decoding of each FEC code block implicitly involves descrambling each FEC code block individually, according to the method specified in G.9804.2, with the descrambling polynomial being "x 58 +x 39+1”, when each FEC code block begins descrambling, the descrambling shift register is initialized, for example, by adding 7 ones to the 51-bit superframe number. Specifically, the first 8 bytes of the first FEC code block are not processed, and the following 16 bytes are descrambled by XORing with “0x0F0F”. For the part after PSBd, the above descrambling polynomial is used for descrambling, and the shift register is initialized at the beginning of descrambling, for example, by adding 7 ones to the 51-bit superframe number.

[0285] In this embodiment, it is assumed that the downlink direction uses three FEC code types: LDPC(17664-S,14592-S), LDPC(17280,14592), and LDPC(15872,14592), which are abbreviated as LDPC1, LDPC2, and LDPC3, respectively. It is also assumed that the interleaving depth is 4 for all three types. The downlink superframe header is conventionally configured to contain X1 LDPC1 code blocks (assuming X1 is a multiple of 4, and these X1 LDPC1 code blocks use bit interleaving with an interleaving depth of 4) and X2 LDPC2 code blocks (assuming X2 is a multiple of 4). The X2 LDPC2 code blocks use bit interleaving with an interleaving depth of 4, and the X3 LDPC3 code blocks (assuming X3 is a multiple of 4, the X3 LDPC3 code blocks use bit interleaving with an interleaving depth of 4). These conventional FEC code blocks contain downlink bandwidth allocation information and other necessary information (such as uplink bandwidth allocation information, PLOAM messages, etc.). This can be downlink bandwidth allocation information and other necessary information for all ONUs, or it can be downlink bandwidth allocation information and other necessary information sent to ONUs that support the downlink FEC code pattern corresponding to the conventional FEC code blocks. It should be noted that the X1 LDPC1 code blocks may or may not contain the PSBd field. The order of the X1 LDPC1 code blocks, X2 LDPC2 code blocks, and X3 LDPC3 code blocks can also be adjusted according to actual needs, but once these orders are determined, they will not change.

[0286] In addition to carrying downlink bandwidth allocation information and other necessary information, the time slots corresponding to these FEC code blocks can also carry downlink services supporting the downlink FEC code type ONU if there are any remaining time slots. Of course, the remaining time slots can also carry idle information.

[0287] Of course, the interleaving depth can also be flexibly changed. BWmap can also carry downlink bandwidth information of interleaved packets. Generally, the downlink bandwidth of interleaved packets is followed by the downlink bandwidth of FEC packets. The downlink bandwidth of interleaved packets is greater than or equal to the sum of the downlink bandwidth of the following FEC packets. The downlink bandwidth of FEC packets is followed by the downlink service bandwidth. The downlink bandwidth of FEC packets is greater than or equal to the sum of the downlink service bandwidth of the following FEC packets.

[0288] Different ONUs support different downlink FEC code patterns. In order to obtain downlink bandwidth allocation and other necessary information, the ONU selects the corresponding FEC code block group from the three default FEC code blocks in the downlink superframe header according to the downlink FEC code pattern it uses, and performs deinterleaving and FEC decoding.

[0289] like Figure 23 As shown, after obtaining downlink PSync synchronization, the downlink direction supports ONUs with LDPC1 to deinterleave and decode X1 LDPC1 code blocks; the downlink direction supports ONUs with LDPC2 to skip X1×(17664-S) bits to deinterleave and decode X2 LDPC2 code blocks; and the downlink direction supports ONUs with LDPC3 to skip X1×(17664-S)+X2×17280 bits to deinterleave and decode X3 LDPC3 code blocks. The BWmap length in the HLend field is parsed, which is the number of entries N in the BWmap. Then, based on N, the BWmap is further parsed. When the Alloc-ID in a bandwidth entry is an FEC packet Alloc-ID and corresponds to the FEC code type used by this ONU, the FEC packet downlink bandwidth StartTime and GrantSize are obtained, and the bandwidth entries allocated to the downlink Alloc-ID within the FEC packet downlink bandwidth are further parsed. When the Alloc-ID in a bandwidth entry is a downlink Alloc-ID allocated to this ONU, the downlink service bandwidth StartTime and GrantSize are obtained.

[0290] Generally, the downlink bandwidth of an FEC packet is immediately followed by the downlink service bandwidth. The downlink bandwidth of an FEC packet is greater than or equal to the sum of the downlink service bandwidths that follow. The ONU calculates the FEC code block in which its downlink service bandwidth is located based on the StartTime of the downlink bandwidth of the FEC packet, including the start FEC code block F1 and the end FEC code block F2.

[0291] For simplicity, we use 16 bytes as the unit, although other byte numbers are also possible, which will not be elaborated here. To simplify the formula, S represents the downlink service bandwidth start time StartTime×16, S0 represents the FEC packet downlink bandwidth StartTime0×16, G represents GrantSize×16, and the FEC packet code is FEC(C,P).

[0292] Start FEC code block F1:

[0293] End of FEC code block F2:

[0294] Based on the FEC code block numbering, the interleaving block is then calculated:

[0295] Starting interleaving block number I1:

[0296] End of interleaving block number I2:

[0297] First, the interleaved blocks I1 to I2 are deinterleaved to obtain the corresponding FEC code blocks. Considering that these interleaved blocks overlap with the interleaved blocks related to the number of bandwidth entries and BWmap, the ONU can only parse the non-overlapping interleaved blocks in I1 to I2 at this stage.

[0298] The ONU can either leave other interleaved code blocks unprocessed or shut down the relevant receiving components within the time slots corresponding to these interleaved blocks.

[0299] The ONU decodes FEC code blocks F1 to F2. After completing the FEC decoding, it takes the payload of the F1st FEC code block starting from byte S (assuming a length of L1), the payload of FEC code blocks F1+1 to F2-1 (if there are other code blocks between FEC code blocks F1 and FEC code block F2, assuming a length of L2), and the payload of the F2th FEC code block starting from the beginning with a length of G-L1-L2 as the received data XGEM frame sequence. Alternatively, it takes the payload of the F1st FEC code block starting from byte S and a total of G bytes as the received data XGEM frame sequence, and performs XGEM frame parsing on the XGEM frame sequence to obtain the corresponding downlink service.

[0300] When these FEC code blocks overlap with the FEC code blocks related to the number of bandwidth entries and BWmap, the ONU can only parse the non-overlapping FEC code blocks in FEC code blocks F1 to F2 at this stage.

[0301] The ONU can either leave other FEC code blocks unprocessed or shut down the relevant receiving components within the corresponding time slots of these FEC code blocks.

[0302] Example 7

[0303] In this embodiment, the implementation method "50G / 100G-PON, flexible downlink modulation" will be described.

[0304] According to the ITU-T G.9804 series of standards, 50G-PON adopts NRZ (non-return-to-zero) modulation, with a downlink rate of 49.7664Gbps. A superframe is transmitted every 125μs in the downlink direction, and each superframe consists of 777,600 bytes. The entire superframe is protected by FEC. The FEC code is represented by LDPC (17280, 14592) in bits and by LDPC (2160, 1824) in bytes. That is, every 2160 bytes is an FEC codeword, of which 1824 bytes are the payload and the other 336 bytes are LDPC checksum. 2160-1824=336.

[0305] The ITU-T G.9804 series of standards also consider using PAM4 (4-Level Pulse Amplitude Modulation) modulation to increase the downlink rate to 99.5328Gbps. A superframe is sent every 125μs in the downlink direction, and each superframe is a total of 1,555,200 bytes.

[0306] The downlink direction uses multiple modulation formats, and different modulation formats are used for the downlink time slots sent to different ONUs. Therefore, the division of modulation format time slots in the downlink superframe is dynamically changed according to the service traffic sent to different ONUs.

[0307] The ITU-T G.9804.2 standard defines the BWmap structure for allocating uplink bandwidth, such as... Figure 19 As shown, StartTime and GrantSize represent the start time and length of the uplink bandwidth. StartTime represents the start position of the uplink bandwidth in the uplink physical frame, and GrantSize represents the length of the uplink bandwidth in the uplink FS frame, excluding FEC check.

[0308] The StartTime value ranges from 0 to 12149, the GrantSize value ranges from 0 to 10260, and the uplink rates of 12.4416 Gbit / s, 24.8832 Gbit / s, and 49.7664 Gbit / s are in units of 16 bytes, 32 bytes, and 64 bytes, respectively.

[0309] The downlink BWmap can reuse this structure. In the Allocation structure, the Alloc-ID can be an uplink Alloc-ID, a downlink Alloc-ID, or a downlink FEC code block Alloc-ID. StartTime indicates the start position of the uplink bandwidth in the uplink physical frame or the start position of the downlink bandwidth in the downlink superframe. GrantSize indicates the length of the uplink bandwidth in the uplink FS frame or the length of the downlink bandwidth in the downlink FS frame.

[0310] When it is a downlink Alloc-ID, the Allocation structure carries a downlink bandwidth entry. The Flags, FWI, and BurstProfile are temporarily reserved for future setting of downlink bandwidth attributes. StartTime and GrantSize represent the start time and duration of the downlink bandwidth, respectively.

[0311] When it is a downlink FEC pattern packet Alloc-ID, the Allocation structure carries a downlink bandwidth entry. The Flags, FWI, and Burst Profile are temporarily reserved so that the downlink FEC pattern packet bandwidth attributes can be set in the future. StartTime and GrantSize represent the start time and duration of the downlink FEC pattern packet bandwidth, respectively.

[0312] Additionally, the BWmap length field can be reused to represent the number of bandwidth entries in the BWmap, such as... Figure 21 As shown, the number of bandwidth entries in BWmap includes the number of uplink bandwidth entries, downlink bandwidth entries, and downlink FEC packet bandwidth entries.

[0313] This is merely an example; there are other ways to implement downlink bandwidth allocation, which are not limited in this application.

[0314] In addition, to achieve the ONU parsing minimum set, each FEC code block is scrambled and descrambled separately, still following the scrambling and descrambling method specified in G.9804.2, with the scrambling and descrambling polynomials being "x 58 +x 39"+1" sets the initial value of the shift register at the start of scrambling and descrambling for each FEC code block, for example, adding seven 1s to the 51-bit superframe number. Specifically, this applies to the scrambling and descrambling of the PSBd field in the first FEC code block. The first 8 bytes are PSync, which is not scrambled or descrambled. The following 16 bytes are scrambled or descrambled using an XOR operation with "0x0F0F". The portion after PSBd is scrambled and descrambled using the aforementioned scrambling and descrambling polynomial. The shift register at the start of scrambling and descrambling for each FEC code block is initialized, for example, adding seven 1s to the 51-bit superframe number.

[0315] The following provides an example of ONU reception calculation. In this embodiment, it is assumed that NRZ and PAM4 modulation are used in the downlink direction. Within the 125μs downlink superframe, NRZ modulation is used in a portion of the downlink bandwidth, and PAM4 modulation is used in another portion. The downlink superframe length ranges from 777,600 to 1,555,200 bytes. All downlink bandwidth using NRZ modulation within the downlink superframe forms one downlink superframe subframe, and all downlink bandwidth using PAM4 modulation within the downlink superframe forms another downlink superframe subframe. The downlink superframe subframes are similar to the downlink superframes, having a fixed modulation format and a fixed downlink rate, only differing in duration. Within the downlink superframe subframes, a uniform FEC code, a flexible FEC code, or bit interleaving can be used. These implementations are similar to those in embodiments three, four, five, and six; this embodiment only describes the implementation of flexible downlink modulation.

[0316] It should be noted that this application is not limited to the specific calculation process described below. The calculation process can also be implemented by other algorithms, which will not be elaborated on in this application.

[0317] For ease of explanation, the following decoding of each FEC code block implicitly includes individual descrambling, performed according to the method specified in G.9804.2, with the descrambling polynomial being "x 58 +x 39 +1”, when each FEC code block begins descrambling, the descrambling shift register is initialized, for example, by adding 7 ones to the 51-bit superframe number. Specifically, the first 8 bytes of the first FEC code block in the downlink superframe subframe are not processed, and the following 16 bytes are descrambled by XORing with “0x0F0F”. For the portion after PSBd, the above descrambling polynomial is used for descrambling, and the shift register is initialized when each FEC code block begins descrambling, for example, by adding 7 ones to the 51-bit superframe number.

[0318] In this embodiment, the downlink superframe header is conventionally configured to contain an NRZ modulation block of length X1 bytes and a PAM4 modulation block of length X2 bytes. The X1-byte NRZ modulation block contains PSBd1 and FS Header1. FS Header1 contains downlink bandwidth allocation information for NRZ modulation and other necessary information (such as uplink bandwidth allocation information, PLOAM messages, etc.). The X2-byte PAM4 modulation block contains PSBd1 and FS Header2. FS Header2 contains downlink bandwidth allocation information for PAM4 modulation and other necessary information (such as uplink bandwidth allocation information, PLOAM messages, etc.). It should be noted that the order of the X1-byte NRZ modulation block and the X2-byte PAM4 modulation block can be adjusted according to actual needs, but once determined, this order will not change.

[0319] In addition to carrying downlink bandwidth allocation information and other necessary information, the time slots corresponding to these conventional modulation blocks can also carry downlink services of ONUs that support this downlink modulation format if there are any remaining time slots. Of course, the remaining time slots can also carry idle information.

[0320] Different ONUs support different downlink modulation formats. In order to obtain downlink bandwidth allocation and other necessary information, the ONU selects the corresponding modulation block from the two sets of default modulation blocks in the downlink superframe header for demodulation according to its own downlink modulation format.

[0321] like Figure 24 As shown, an ONU supporting NRZ modulation in the downlink direction demodulates an X1-byte NRZ modulation block (including PSBd1) after finding PSBd1, and an ONU supporting PAM4 modulation in the downlink direction demodulates an X2-byte PAM4 modulation block (including PSBd2) after finding PSBd2.

[0322] Taking the unified FEC coding pattern as an example, generally, the downlink bandwidth of the modulation packet is immediately followed by the downlink service bandwidth, and the downlink bandwidth of the modulation packet is greater than or equal to the sum of the downlink service bandwidths immediately following it. The ONU parses the BWmaplength in the HLend field, which is the number of entries N in the BWmap. Then, it further parses the BWmap based on N. If the Alloc-ID in a bandwidth entry is the modulation packet Alloc-ID and corresponds to the modulation format used by this ONU, the downlink bandwidth StartTime and GrantSize of the modulation packet are obtained, and the bandwidth entries allocated to the downlink Alloc-ID within the downlink bandwidth of that modulation packet are further parsed. If the Alloc-ID in a bandwidth entry is the downlink Alloc-ID allocated to this ONU, the downlink service bandwidth StartTime and GrantSize are obtained.

[0323] The ONU calculates the FEC code block containing its downlink service bandwidth based on the downlink bandwidth StartTime of the modulation group, including calculating the start FEC code block F1 and the end FEC code block F2.

[0324] To simplify the description, NRZ modulation uses 16 bytes as the unit, and PAM4 modulation uses 32 bytes as the unit. Of course, other byte numbers are also possible, but they will not be elaborated here.

[0325] To simplify the formula, let S represent the downlink service bandwidth start time, which is StartTime×16 in NRZ modulation and StartTime×32 in PAM4 modulation. Let S0 represent the modulation packet downlink bandwidth start time, which is StartTime0×16 in NRZ modulation and StartTime0×32 in PAM4 modulation. Let G represent the downlink service bandwidth length, which is GrantSize×16 in NRZ modulation and GrantSize×32 ​​in PAM4 modulation. Assume the FEC block code is FEC(C,P). Of course, the FEC codes used in the two modulation formats can be different, but the calculation method is similar, and will not be elaborated here.

[0326] Start FEC code block F1:

[0327] End of FEC code block F2:

[0328]

[0329] ONU decodes FEC code blocks F1 to F2.

[0330] When these FEC code blocks overlap with the FEC code blocks related to the number of bandwidth entries and BWmap, the ONU can only parse the non-overlapping FEC code blocks in FEC code blocks F1 to F2 at this stage.

[0331] After completing FEC decoding, the payload starting from byte S of the F1st FEC code block (assuming length L1), the payload from F1+1 to F2-1 of the FEC code block (assuming length L2 if there are other code blocks between FEC code block F1 and FEC code block F2), and the payload of the F2th FEC code block starting from the beginning with a length of G-L1-L2 are taken as the received data XGEM frame sequence. Alternatively, the payload of the F1st FEC code block starting from byte S and a total of G bytes are taken as the received data XGEM frame sequence, and XGEM frame parsing is performed on the XGEM frame sequence to obtain the corresponding downlink service.

[0332] The ONU can either leave other FEC code blocks unprocessed or shut down the relevant receiving components within the corresponding time slots of these FEC code blocks.

[0333] This embodiment also provides a downlink bandwidth allocation information processing device, which is used to implement 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 device described in the following embodiments is preferably implemented in software, hardware implementation, or a combination of software and hardware, is also possible and contemplated.

[0334] Figure 25 This is a structural block diagram of a downlink bandwidth allocation information processing apparatus according to an embodiment of this application. Figure 25 As shown, the downlink bandwidth allocation information processing device includes:

[0335] The processing module 2502 is used to determine the effective downlink time slot in the downlink superframe, convert the effective downlink time slot into a physical time slot, process the data in the physical time slot, and obtain the information in the effective downlink time slot based on the effective downlink time slot.

[0336] This application embodiment determines the effective downlink time slot in the downlink superframe; converts the effective downlink time slot into a physical time slot; processes the data within the physical time slot, and obtains the information within the effective downlink time slot based on the effective downlink time slot. By identifying and converting the effective downlink time slot in the downlink superframe into a physical time slot, it achieves precise processing and information extraction of data within a specific time slot, solves the problem of how the ONU can perform corresponding processing based on downlink bandwidth allocation to achieve minimum set reception processing, and improves the efficiency and accuracy of data transmission.

[0337] In an exemplary embodiment, the effective downlink time slot is a downlink service time slot, the downlink service time slot contains downlink service information, and the processing module is further configured to: obtain the downlink service time slot according to the downlink bandwidth allocation information, convert the downlink service time slot into a second physical time slot, process the data in the second physical time slot, and then perform service processing on the downlink service information of the downlink service time slot.

[0338] In an exemplary embodiment, the necessary information time slot also carries other necessary information, which includes at least uplink bandwidth allocation information. The processing module is further configured to: process the data in the first physical time slot to obtain the uplink bandwidth allocation information; and send uplink services according to the uplink bandwidth allocation information.

[0339] In an exemplary embodiment, the necessary information time slot also carries other necessary information, which includes at least a physical layer management message. The processing module is further configured to: process the data in the first physical time slot to obtain the physical layer management message; and process the data according to the physical layer management message.

[0340] In an exemplary embodiment, the processing module is further configured to: obtain the data frame sequence within the downlink service time slot, and parse and process the data frame sequence.

[0341] In an exemplary embodiment, the physical time slot is composed of physical time slot units, and the processing module is further configured to: descramble each FEC code block in the physical time slot individually, and perform FEC decoding on the descrambled FEC code blocks.

[0342] In an exemplary embodiment, the physical time slot is composed of physical time slot units, and the processing module is further configured to: de-interleave each bit interleaving block in the physical time slot.

[0343] In an exemplary embodiment, the processing module is further configured to: obtain each bit interleaving block according to the interleaving depth, and deinterleave each bit interleaving block.

[0344] In an exemplary embodiment, the processing module is further configured to: descramble the downlink intra-frame FEC code block separately, and decode the descrambled FEC code block separately.

[0345] In an exemplary embodiment, the step of individually descrambling the downlink intra-frame FEC code blocks includes: starting from each FEC code block, initializing a scrambling shift register.

[0346] In an exemplary embodiment, the processing module is further configured to: determine a first FEC code block group obtained by conversion of the effective downlink time slot in which the downlink bandwidth entry number is located; descramble each FEC code block in the first FEC code block group individually; perform FEC decoding on the descrambled FEC code blocks; obtain the bandwidth entry number based on the effective downlink time slot in which the downlink bandwidth entry number is located, wherein the bandwidth entry number represents the number of downlink bandwidth entry entries, or the sum of the number of uplink bandwidth entry entries and the number of downlink bandwidth entry entries; determine another effective downlink time slot in which the bandwidth entry is located based on the bandwidth entry number; and determine the bandwidth entry number based on the effective downlink time slot in which the downlink bandwidth entry is located. The second FEC code block group, obtained by converting another effective downlink time slot, is used to descramble each FEC code block within the second FEC code block group individually. The descrambled FEC code blocks are then FEC decoded. The bandwidth entry is obtained based on the other effective downlink time slot, and the bandwidth entry is parsed to obtain the downlink bandwidth belonging to the ONU. A third FEC code block group, obtained by converting based on the effective downlink time slot corresponding to the downlink bandwidth, is then determined. Each FEC code block within the third FEC code block is descrambled individually, and the descrambled FEC code blocks are then FEC decoded. Downlink service information is obtained based on the effective downlink time slot corresponding to the downlink bandwidth.

[0347] In an exemplary embodiment, the processing module is further configured to: determine a first FEC code block group obtained by converting the effective downlink time slots in which the number of downlink bandwidth entries, the number of uplink bandwidth entries, and the number of physical layer management messages are located; descramble each FEC code block in the first FEC code block group individually; perform FEC decoding on the descrambled FEC code blocks; obtain the number of bandwidth entries and the number of physical layer management messages in the effective downlink time slots in which the number of downlink bandwidth entries, the number of uplink bandwidth entries, and the number of physical layer management messages are located, wherein the number of bandwidth entries includes the number of downlink bandwidth entries and the number of uplink bandwidth entries; determine a second FEC code block group obtained by converting the number of bandwidth entries and the number of physical layer management messages; descramble each FEC code block in the second FEC code block group individually; perform FEC decoding on the descrambled FEC code blocks; and obtain the downlink bandwidth belonging to the ONU, the uplink bandwidth belonging to the ONU, and the physical layer management messages belonging to the ONU.

[0348] In an exemplary embodiment, the processing module is further configured to: if there are overlapping code blocks among the first FEC code block group, the second FEC code block group and the third FEC code block group, then no longer descramble the already descrambled portion of the overlapping code block, nor decode the already decoded portion of the overlapping code block.

[0349] In an exemplary embodiment, the processing module is further configured to: determine the first FEC code block group obtained by converting the effective downlink time slot according to the number of downlink bandwidth entries and other necessary information based on the target downlink FEC code pattern adopted by the ONU, descramble each FEC code block in the first FEC code block group individually according to the target downlink FEC code pattern, and perform FEC decoding on the descrambled FEC code blocks.

[0350] In an exemplary embodiment, the processing module is further configured to: determine a bit interleaving block obtained by conversion based on the effective downlink time slot, and deinterleave the bit interleaving block to obtain the first FEC code block group, the second FEC code block group, and the third FEC code block group; or, determine a bit interleaving block obtained by conversion based on the first FEC code block group, the second FEC code block group, and the third FEC code block group, and deinterleave the bit interleaving block to obtain the first FEC code block group, the second FEC code block group, and the third FEC code block group.

[0351] In an exemplary embodiment, the processing module is further configured to: search for the delimitation corresponding to the modulation format, determine the first modulation block obtained by conversion based on the effective downlink time slot where the downlink bandwidth entry number is located, demodulate the first modulation block group to obtain the first FEC code block group, descramble each code block in the first FEC code block group individually, perform FEC decoding on the descrambled FEC code block, obtain the number of bandwidth entries based on the effective downlink time slot where the downlink bandwidth entry number is located, wherein the number of bandwidth entries represents the number of downlink bandwidth entries, or the sum of the number of uplink bandwidth entries and the number of downlink bandwidth entries; determine another effective downlink time slot where the bandwidth entry is located based on the number of bandwidth entries, and determine the first modulation block obtained by conversion based on the first modulation block group to obtain the first FEC code block group, demodulate each code block in the first FEC code block group individually, perform FEC decoding on the descrambled FEC code block, obtain the number of bandwidth entries based on the effective downlink time slot where the downlink bandwidth entry number is located, wherein the number of bandwidth entries represents the number of downlink bandwidth entries, or the sum of the number of uplink bandwidth entries and the number of downlink bandwidth entries; determine another effective downlink time slot where the bandwidth entry is located based on the number of bandwidth entries, and determine the first modulation block obtained by conversion based on the first modulation block group to obtain the first FEC code block group; demodulate each code block in the first FEC code block group individually, and perform FEC decoding on ... The second modulation block obtained by converting the effective downlink time slot is demodulated to obtain a second FEC code block group. Each FEC code block in the second FEC code block group is descrambled individually. The descrambled FEC code blocks are then FEC decoded. The bandwidth entry is obtained according to the other effective downlink time slot, and the bandwidth entry is parsed to obtain the downlink bandwidth belonging to the ONU. The third modulation block obtained by converting the effective downlink time slot corresponding to the downlink bandwidth is determined. The third modulation block is demodulated to obtain a third FEC code block group. Each FEC code block in the third FEC code block is descrambled individually. The descrambled FEC code blocks are then FEC decoded. Downlink service information is obtained according to the effective downlink time slot corresponding to the downlink bandwidth.

[0352] In an exemplary embodiment, the processing module is further configured to: if the bit interleaving blocks overlap, then no longer de-interleave the already de-interleaved portions of the overlapping interleaved code blocks.

[0353] In an exemplary embodiment, the processing module is further configured to: not process the idle physical time slots other than the physical time slots converted from the effective downlink time slots, or to shut down the receiving component for receiving the effective downlink time slots during the idle physical time slots.

[0354] Figure 26 This is a structural block diagram of a downlink superframe generation apparatus according to an embodiment of this application. Figure 26 As shown, the downlink superframe generation apparatus includes:

[0355] Module 2602 is obtained, which is used by the optical line terminal (OLT) to scramble each FEC code block individually to obtain a downlink superframe.

[0356] This embodiment solves the problem of how the OLT can accurately generate downlink superframes by independently scrambling each FEC (Forward Error Correction) code block using the OLT (Optical Line Terminal). This facilitates the ONU to perform corresponding processing based on the downlink bandwidth allocation within the downlink superframe of the OLT, thereby achieving minimum set reception processing and enhancing data security.

[0357] In one exemplary embodiment, the module is further configured to: initialize a scrambling shift register starting from each FEC code block.

[0358] In an exemplary embodiment, the module is further configured to: perform bit interleaving on every X FEC code blocks according to the interleaving depth value X to obtain the downlink superframe.

[0359] In an exemplary embodiment, the module is further configured to: carry downlink bandwidth entries, the number of downlink bandwidth entries, other necessary information, the number of other necessary information and downlink services, and perform FEC verification on each FEC code block according to a specified FEC code pattern.

[0360] In an exemplary embodiment, the module is further configured to: perform FEC encoding on each FEC code block using a specified FEC code pattern according to the downlink time slot of the different ONUs.

[0361] In an exemplary embodiment, the module is further configured to: set a default FEC code block group in the downlink superframe header for different FEC code patterns, wherein the default FEC code block group adopts one FEC code pattern, or set a default modulation block in the downlink superframe header for different modulation formats, wherein the default modulation block adopts one modulation format.

[0362] In an exemplary embodiment, the default FEC code block carries not only downlink bandwidth allocation information and necessary information, but also remaining payload information. The module is further configured to: include downlink service information in the remaining payload information; or include idle information in the remaining payload information.

[0363] 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 readable 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 of the various embodiments of this application.

[0364] 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.

[0365] 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.

[0366] 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.

[0367] Optionally, in this embodiment, the processor can be configured to perform the following steps via a computer program:

[0368] S1, determine the effective downlink time slot in the downlink superframe, convert the effective downlink time slot into a physical time slot, process the data in the physical time slot, and obtain the information in the effective downlink time slot based on the effective downlink time slot.

[0369] Alternatively, the processor described above can be configured to perform the following steps via a computer program:

[0370] S1, the optical line terminal (OLT) scrambles each FEC code block individually to obtain a downlink superframe.

[0371] 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.

[0372] Optionally, in this embodiment, the electronic device may also be configured to perform step S1 via a computer program.

[0373] Embodiments of this application also provide a computer program product, which includes a computer program that, when executed by a processor, implements the steps in any of the above method embodiments.

[0374] Embodiments of this application also provide another computer program product, including a non-volatile computer-readable storage medium storing a computer program that, when executed by a processor, implements the steps in any of the above method embodiments.

[0375] Embodiments of this application also provide a computer program that includes computer instructions stored in a computer-readable storage medium; a processor of a computer device reads the computer instructions from the computer-readable storage medium and executes the computer instructions, causing the computer device to perform the steps in any of the above method embodiments.

[0376] 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.

[0377] 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 hardware and software combination.

[0378] 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. A method for processing downlink bandwidth allocation information, characterized in that, include: Determine the effective downlink time slot in the downlink superframe, convert the effective downlink time slot into a physical time slot, process the data in the physical time slot, and obtain the information in the effective downlink time slot based on the effective downlink time slot.

2. The method for processing downlink bandwidth allocation information according to claim 1, characterized in that, The effective downlink time slot is a necessary information time slot, which contains downlink bandwidth allocation information. The information obtained from the effective downlink time slot includes: Convert the necessary information time slots into first physical time slots; After processing the data in the first physical time slot, the downlink bandwidth allocation information in the necessary information time slot is obtained according to the necessary information time slot.

3. The method for processing downlink bandwidth allocation information according to claim 2, characterized in that, The effective downlink time slot is a downlink service time slot, and the downlink service time slot contains downlink service information. The method further includes: The downlink service time slot is obtained based on the downlink bandwidth allocation information, the downlink service time slot is converted into a second physical time slot, the data in the second physical time slot is processed, and the downlink service information of the downlink service time slot is processed.

4. The method for processing downlink bandwidth allocation information according to claim 2, characterized in that, The necessary information time slot also carries other necessary information, which includes at least uplink bandwidth allocation information. The method further includes: The data within the first physical time slot is processed to obtain the uplink bandwidth allocation information; Uplink services are sent according to the uplink bandwidth allocation information.

5. The method for processing downlink bandwidth allocation information according to claim 2, characterized in that, The necessary information time slot also carries other necessary information, which includes at least physical layer management messages. The method further includes: The data within the first physical time slot is processed to obtain the physical layer management message; Process according to the physical layer management message.

6. The method for processing downlink bandwidth allocation information according to claim 3, characterized in that, Service processing is performed based on the downlink service information carried in the downlink service time slot, including: Obtain the data frame sequence within the downlink service time slot, and parse and process the data frame sequence.

7. The method for processing downlink bandwidth allocation information according to claim 1, characterized in that, The physical time slot is composed of physical time slot units, and each physical time slot unit includes at least a forward error correction (FEC) code block. The physical time slot is processed, including: Each FEC code block in the physical time slot is descrambled individually, and the descrambled FEC code blocks are then FEC decoded.

8. The method for processing downlink bandwidth allocation information according to claim 1, characterized in that, The physical time slot is composed of physical time slot units, each physical time slot unit including a bit interleaving block, which processes the physical time slot, including: Deinterleave each bit interleaving block in the physical time slot.

9. The method for processing downlink bandwidth allocation information according to claim 8, characterized in that, Deinterleaving each bit-interleaved block in the physical time slot includes: Each bit interleaving block is obtained according to the interleaving depth, and each bit interleaving block is deinterleaved.

10. The method for processing downlink bandwidth allocation information according to claim 7, characterized in that, Each FEC code block in the physical time slot is descrambled individually, and the descrambled FEC code blocks are then FEC decoded, including: The downlink superframe intra-FEC code blocks are descrambled separately, and the descrambled FEC code blocks are decoded separately.

11. The method for processing downlink bandwidth allocation information according to claim 10, characterized in that, The step of individually descrambling the downlink superframe FEC code blocks includes: starting from each FEC code block, initializing the descrambling shift register.

12. The method for processing downlink bandwidth allocation information according to claim 7, characterized in that, Each FEC code block in the physical time slot is descrambled individually, and the descrambled FEC code blocks are then FEC decoded, including: A first FEC code block group is determined based on the effective downlink time slot where the downlink bandwidth entry number is located. Each FEC code block in the first FEC code block group is descrambled individually. The descrambled FEC code blocks are then FEC decoded. The number of bandwidth entries is obtained based on the effective downlink time slot where the downlink bandwidth entry number is located. The number of bandwidth entries represents the number of downlink bandwidth entries, or the sum of the number of uplink bandwidth entries and the number of downlink bandwidth entries. Based on the number of bandwidth entries, determine another valid downlink time slot where the bandwidth entry is located, determine the second FEC code block group obtained by conversion based on the other valid downlink time slot, descramble each FEC code block in the second FEC code block group individually, perform FEC decoding on the descrambled FEC code blocks, obtain the bandwidth entry based on the other valid downlink time slot, and parse the bandwidth entry to obtain the downlink bandwidth belonging to the ONU. The third FEC code block group is determined based on the effective downlink time slot corresponding to the downlink bandwidth. Each FEC code block in the third FEC code block is descrambled individually. The descrambled FEC code blocks are then FEC decoded to obtain downlink service information based on the effective downlink time slot corresponding to the downlink bandwidth.

13. The method for processing downlink bandwidth allocation information according to claim 12, characterized in that, Each FEC code block in the physical time slot is descrambled individually, and the descrambled FEC code blocks are then FEC decoded, including: A first FEC code block group is determined based on the effective downlink time slots where the number of downlink bandwidth entries, the number of uplink bandwidth entries, and the number of physical layer management messages are located. Each FEC code block in the first FEC code block group is descrambled individually, and FEC decoding is performed on the descrambled FEC code blocks. The number of bandwidth entries and the number of physical layer management messages are obtained based on the effective downlink time slots where the number of downlink bandwidth entries, the number of uplink bandwidth entries, and the number of physical layer management messages are located. The number of bandwidth entries includes the number of downlink bandwidth entries and the number of uplink bandwidth entries. A second FEC code block group is determined based on the number of bandwidth entries and the number of physical layer management messages. Each FEC code block in the second FEC code block group is descrambled individually. The descrambled FEC code blocks are then FEC decoded to obtain the downlink bandwidth belonging to the ONU, the uplink bandwidth belonging to the ONU, and the physical layer management messages belonging to the ONU.

14. The method for processing downlink bandwidth allocation information according to any one of claims 12 to 13, characterized in that, The method further includes: If there are overlapping code blocks among the first FEC code block group, the second FEC code block group, and the third FEC code block group, then the already descrambled parts of the overlapping code blocks will no longer be descrambled, nor will the already decoded parts of the overlapping code blocks be decoded.

15. The method for processing downlink bandwidth allocation information according to any one of claims 12 to 13, characterized in that, Each FEC code block within the first FEC code block group is descrambled individually, and the descrambled FEC code blocks are then FEC decoded, including: Based on the target downlink FEC code pattern adopted by the ONU, the first FEC code block group is determined by converting the effective downlink time slot according to the number of downlink bandwidth entries and other necessary information. Each FEC code block in the first FEC code block group is descrambled individually according to the target downlink FEC code pattern, and FEC decoding is performed on the descrambled FEC code blocks.

16. The method for processing downlink bandwidth allocation information according to any one of claims 12 to 13, characterized in that, The method further includes: Determine the bit interleaving block obtained by converting the effective downlink time slot, and deinterleave the bit interleaving block to obtain the first FEC code block group, the second FEC code block group, and the third FEC code block group; Alternatively, determine the bit interleaving block obtained by converting the first FEC code block group, the second FEC code block group, and the third FEC code block group, and deinterleave the bit interleaving block to obtain the first FEC code block group, the second FEC code block group, and the third FEC code block group.

17. The method for processing downlink bandwidth allocation information according to any one of claims 12, 13, and 16, characterized in that, The method further includes: The search defines the bounds corresponding to the modulation format, determines the first modulation block obtained by converting the effective downlink time slot based on the number of downlink bandwidth entries, demodulates the first modulation block group to obtain the first FEC code block group, descrambles each code block in the first FEC code block group individually, performs FEC decoding on the descrambled FEC code blocks, and obtains the number of bandwidth entries based on the effective downlink time slot based on the number of downlink bandwidth entries. The number of bandwidth entries represents the number of downlink bandwidth entries, or the sum of the number of uplink bandwidth entries and the number of downlink bandwidth entries. Based on the number of bandwidth entries, determine another valid downlink time slot where the bandwidth entry is located, determine the second modulation block obtained by conversion based on the other valid downlink time slot, demodulate the second modulation block to obtain a second FEC code block group, descramble each FEC code block in the second FEC code block group individually, perform FEC decoding on the descrambled FEC code blocks, obtain the bandwidth entry based on the other valid downlink time slot, and parse the bandwidth entry to obtain the downlink bandwidth belonging to the ONU; A third modulation block is determined based on the effective downlink time slot corresponding to the downlink bandwidth. The third modulation block is demodulated to obtain a third FEC code block group. Each FEC code block in the third FEC code block is descrambled individually. The descrambled FEC code blocks are then FEC decoded to obtain downlink service information based on the effective downlink time slot corresponding to the downlink bandwidth.

18. The method for processing downlink bandwidth allocation information according to claim 16, characterized in that, Deinterleaving each bit-interleaved block in the physical time slot includes: If the bit interleaving blocks overlap, then the already deinterleaved portions of the overlapping interleaved code blocks will no longer be deinterleaved.

19. The method for processing downlink bandwidth allocation information according to claim 1, characterized in that, The method further includes: For idle physical time slots outside the physical time slots converted from the effective downlink time slots, the idle physical time slots are not processed, or the receiving component used to receive the effective downlink time slots is turned off during the idle physical time slots.

20. A method for generating downlink superframes, characterized in that, include: The optical line terminal (OLT) scrambles each FEC code block individually to obtain a downlink superframe.

21. The method for generating downlink superframes according to claim 20, characterized in that, The optical line terminal (OLT) performs individual scrambling on each FEC code block, including: Starting with each FEC code block, initialize the scrambling shift register.

22. The method for generating downlink superframes according to claim 21, characterized in that, The method further includes: The downlink superframe is obtained by bit interleaving every X FEC code blocks according to the interleaving depth value X.

23. The method for generating downlink superframes according to claim 21, characterized in that, Before the optical line terminal (OLT) scrambles each FEC code block individually, the method further includes: It carries downlink bandwidth entries, the number of downlink bandwidth entries, other necessary information, the number of other necessary information, and downlink services, and performs FEC verification on each FEC code block according to the specified FEC code pattern.

24. The method for generating downlink superframes according to claim 23, characterized in that, Different ONUs correspond to different FEC code patterns. FEC verification is performed on each FEC code block according to the specified FEC code pattern, including: Each FEC code block is FEC encoded using a specified FEC code pattern according to the downlink time slot of the different ONUs.

25. The method for generating downlink superframes according to claim 24, characterized in that, The method further includes: For different FEC code patterns, a default FEC code block group is set in the downlink superframe header, and the default FEC code block group adopts one FEC code pattern; Alternatively, a default modulation block can be set in the downlink superframe header for different modulation formats, wherein the default modulation block adopts a modulation format.

26. The method for generating downlink superframes according to claim 25, characterized in that, In addition to carrying downlink bandwidth allocation information and necessary information, the default FEC code block also carries remaining payload information. The method further includes: The remaining net load information includes downlink service information; Alternatively, the remaining net load information may be idle information.

27. A processing apparatus for downlink bandwidth allocation information, characterized in that, include: The processing module is used to determine the effective downlink time slot in the downlink superframe, convert the effective downlink time slot into a physical time slot, process the data in the physical time slot, and obtain the information in the effective downlink time slot based on the effective downlink time slot.

28. A downlink superframe generation apparatus, characterized in that, include: The module is used by the optical line terminal (OLT) to scramble each FEC code block individually to obtain a downlink superframe.

29. A computer-readable storage medium, characterized in that, The storage medium stores a computer program, wherein the computer program is configured to execute the method described in any one of claims 1 to 26 when it is run.

30. An electronic device, characterized in that, The method includes a memory and a processor, wherein the memory stores a computer program and the processor is configured to perform the method of any one of claims 1 to 26 through the computer program.

31. A computer program product, characterized in that, Includes a computer program, which, when executed by a processor, implements the steps of the method described in any one of claims 1 to 26.