Coding and decoding method based on RS-convolutional code cascading in FSO system
By adopting the RS-convolution code cascaded coding method in the FSO system, combining interleaving technology and dynamic adjustment of encoding parameters, the problem of handling dynamic environments and errors in the FSO system is solved, and efficient signal error correction and reliable information transmission are achieved.
Patent Information
- Application Number
- CN202411668224.X
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-11-21
- Publication Date
- 2025-03-14
AI Technical Summary
In free space optical communication (FSO) systems, the prior art is difficult to effectively deal with dynamic changes in the communication environment and continuous and random errors in high-speed transmission, resulting in a decrease in signal quality and a decrease in transmission reliability.
The cascaded coding method based on RS-convolution code is adopted to generate error-corrected redundant code words through RS encoding, and the continuous errors are broken by using interleaving technology, and the interleaved code words are input into the dynamically adjusted convolution encoder, and the encoding parameters are dynamically adjusted according to the communication environment to generate a redundant enhanced encoding sequence. The receiver uses an iterative decoder and a dynamically adjusted RS decoder to recover the source data.
It improves the FSO system's error correction ability for continuous and random errors, enhances the reliability and efficiency of information transmission, especially maintains high-quality transmission in harsh communication environments.
Smart Images

Figure CN119628659A_ABST
Abstract
Description
Technical Field
[0001] The invention belongs to the technical field of atmospheric laser communication, and more specifically relates to a RS-convolutional code cascade coding and decoding method in a FSO system. Background Art
[0002] In Free Space Optics (FSO), due to the presence of environmental factors such as atmospheric turbulence, rain and snow, attenuation and scattering of signals in high-speed transmission often occur in communication links. In addition, the performance of the light source and optical receiver in the FSO system will also directly affect the communication quality. Especially in the scenario of long-distance transmission and large light openings, due to the fluctuation of the atmospheric refractive index, the phase and amplitude of the light wave may change dramatically, causing beam point diffusion and energy fluctuations, which will have a great impact on the quality of the received signal.
[0003] In the prior art, the main error correction coding technology used is Reed-Solomon coding (hereinafter referred to as RS code). RS code is a non-binary block code that has a good correction capability for burst errors, but its performance will significantly decrease when the error probability is high. Although convolutional codes perform well in improving the ability to resist noise interference, they have limited ability to correct burst errors.
[0004] In order to improve the anti-interference ability and transmission performance of optical communication systems, cascade coding technology is also used in the prior art, that is, RS code and convolution code are cascaded to combine the advantages of both. However, the coding parameters of RS coding and convolution coding in this method are usually fixed and cannot adapt to the dynamic changes of the communication environment. Therefore, in practical applications, its performance cannot be maximized. At the same time, this cascade coding method usually requires more complex decoding algorithms and higher computing resources, which is difficult to meet the needs in some communication systems with limited resources.
[0005] In addition, in the prior art, for symbol errors and burst errors in high-speed transmission, interleaving technology is usually used to diffuse errors in order to reduce the impact of continuous errors. However, this method not only diffuses errors, but also increases the length of the codeword and the corresponding processing complexity, which is unacceptable for communication systems with limited resources.
[0006] Therefore, there is an urgent need for a RS-convolutional code cascade coding and decoding method in an FSO system that can adapt to dynamic changes in the communication environment and effectively handle continuous errors and random errors. Summary of the invention
[0007] The main technical problem to be solved by the present invention is how to improve the error correction capability for continuous errors and random errors in a free space optical communication (FSO) system through effective coding and decoding methods in response to the dynamic changes of the communication environment, so as to enhance the reliability and efficiency of information transmission, especially to maintain high-quality transmission in harsh communication environments.
[0008] In order to achieve the above object, the present invention is implemented by adopting the following technical scheme: a method for cascade coding and decoding based on RS-convolutional code in FSO system, comprising the following steps:
[0009] S1: Input the source data sequence into the sparse code encoder for block division and RS encoding to generate RS codewords with error correction redundancy;
[0010] S2: Use interleaving technology to rearrange RS codewords to reduce the occurrence of continuous errors;
[0011] S3: convert the interleaved RS codewords into parallel and serial codes and input them into a dynamically adjusted convolutional encoder, dynamically adjust the coding parameters according to the current communication environment, and generate a redundancy enhanced coding sequence;
[0012] S4: convert the electrical signal into an optical signal through the optical antenna and send it, receive the optical signal and convert it into an electrical signal, and obtain a received sequence;
[0013] S5: input the received sequence into an iterative decoder to recover the interleaved RS codeword;
[0014] S6: The RS decoder uses the dynamically adjusted decoding parameters to correct symbol errors and recover the source data.
[0015] Furthermore, the RS code encoder in S1 adopts an NK-level RS coder composed of a division circuit, and selects the (255, 253) RS code type. For RS (n, k), the information codeword polynomial is set to m (x):
[0016] m(x)=m k-1 x k-1 +m k-2 x k-2 +…+m0
[0017] The RS encoder first generates a polynomial g(x) and uses g(x) as the modulus to generate the polynomial:
[0018] g(x) = (x-α)(x-α 2 )…(x-α 2t )
[0019] Multiply the information codeword polynomial m(x) by x2t and divide it by g(x)b and take the remainder to get the check codeword polynomial
[0020] Formula h(x):
[0021]
[0022] Then combine h(x) and m(x) to get the RS codeword polynomial c(x) after RS encoding:
[0023] c(x)=x n-k m(x)+h(x)=c n-1 x n-1 +c n-2 x n-2 +…+c0
[0024] Then the RS code encoding process is completed.
[0025] Further, in S2, for the RS codeword c(x) of length n, it is divided into N sub-blocks, and the length of each sub-block is n / N;
[0026] Assume that the N sub-blocks are C1, C2, ..., CN;
[0027] Recombine these N sub-blocks to form a new codeword;
[0028] Specifically, the first characters of all sub-blocks are combined to form a new sub-block; then the second characters of all sub-blocks are combined to form a new sub-block; and so on, until the n / Nth characters of all sub-blocks are combined to form the last new sub-block;
[0029] Let Ck(i) be the i-th character of the k-th sub-block, then:
[0030] Ci=[C1(i),C2(i),...,CN(i)], i=1,2,...,n / N
[0031] The Ci combination forms a new codeword after interleaving.
[0032] Further, in said S3, each interleaved RS codeword Ci is sequentially input into a dynamically adjusted convolutional encoder for encoding;
[0033] Each time encoding is performed, the encoder parameters are adjusted according to the current channel conditions, so that the redundant information generated by the encoder is most suitable for the current communication environment, thereby improving the reliability of transmission; the specific implementation steps are as follows:
[0034] Assume that the state of the dynamically adjusted convolutional encoder is x, the input is u, and the output is v. Each encoding process can be described by the following mathematical formula:
[0035] v=f(u,x)
[0036] The function f represents the process of convolutional encoding. Each time the state x of the convolutional encoder is updated, the update rule is:
[0037] x'=g(u,x)
[0038] The function g represents the state update process. After each encoding, the information symbol is converted into a string of code words and output.
[0039] Furthermore, S4 converts the redundant enhanced coding sequence generated by step S3 into electrical signals, and then converts these electrical signals into optical signals through optical antennas, and the optical signals are transmitted to the destination through optical wireless communication FSO; the optical antenna at the receiving end receives the optical signal, and the received optical signal will first be converted into an electrical signal through a photoelectric converter, and the photoelectric converter will convert it into a corresponding electrical signal according to the light intensity of the optical signal; then, these electrical signals will be further processed to form a receiving sequence.
[0040] Furthermore, the specific process of S5 is as follows:
[0041] S501: First, the received sequence is appropriately preprocessed, including signal-to-noise ratio estimation and initial probability setting;
[0042] S502: Then, the iterative decoder is initialized. For the iterative decoder, a state value needs to be initialized;
[0043] S503: Iterative decoding begins. In each iteration, the decoder calculates a new decoding result based on the current state value and feeds it back to the internal message passing process. This process is expressed by the following formula:
[0044] Assume that the data passed into the iterative decoder is r, which is the result of the preprocessing of the received sequence y. The decoder maintains a state value s internally, and the initial state is set to s 0; For each iteration, let the current number of iterations be k, then the estimated value u of the original data is k It is derived from the following formula:
[0045] u k =f(r,s {k-1} )
[0046] Where f is the decoding function in the decoder, and the update process of the state value s is obtained by the following formula:
[0047] s k =g(r,s {k-1} ,u k )
[0048] Where g is the state update function;
[0049] S504: Then, the decoder checks whether the current decoding result meets the convergence condition; if so, the iteration ends and the current decoding result is output; if not, the iteration continues;
[0050] S505: Finally, the coded sequence output by the iterative decoder is subjected to a deinterleaving operation to obtain a recovered RS codeword; specifically, the decoded redundant enhancement sequence is assumed to be D, and a deinterleaving operation is performed to obtain a deinterleaved sequence, which is recorded as D';
[0051] D'=h(D)
[0052] Wherein, h is the deinterleaving function.
[0053] Furthermore, the specific content of S6 is: first, assume that the working state of the dynamically adjusted RS decoder is q, the input codeword is D', the output is O, and the decoder is a dynamic function Q; the parameters include the codeword length n and the error correction capability t;
[0054] In each run, the running state of the decoder will be updated. Let the updated state be q', then:
[0055] O=Q(D',q)
[0056] q'=g(D',q)
[0057] Where Q represents each decoding process, and g represents the update process of the problem state;
[0058] Specifically, for RS codes, the decoding process is the Syndrome process, which is the difference between the received codeword and the original codeword; consider the polynomial form c(x) of the RS code, which is defined as S = c(α), where α is the root of the generating polynomial g(x); if S is not equal to zero, then it means that there is an error in the received codeword;
[0059] The RS decoder uses Syndrome to find the location and size of the error. Therefore, it is considered that after the decoder accepts D', it generates Syndrome according to the current state q and tries to solve the Syndrome, which is a process of finding and correcting errors.
[0060] Beneficial effects of the present invention:
[0061] Efficient error correction capability: The RS-convolutional code cascade coding method adopted in the present invention can solve random errors and continuous errors in a targeted manner, and effectively enhance the reliability of information transmission.
[0062] Dynamic adaptability: By dynamically adjusting the encoding and decoding parameters, the present invention can perform adaptive adjustments according to the real-time communication environment, thereby achieving optimal transmission performance in different communication environments.
[0063] Reduce processing complexity: By using interleaving technology, the present invention does not increase additional processing complexity while "breaking up" errors, and the characters after error correction are distributed more evenly, thereby improving decoding efficiency and accuracy.
[0064] Improved channel fault tolerance: The iterative decoder in the present invention can dynamically adjust the decoding strategy according to the channel and internal state, so as to obtain the best decoding result in a harsh channel environment, thereby enhancing the channel fault tolerance.
[0065] The overall performance of the FSO system is enhanced: the FSO system applicable to the present invention can ensure high-speed data transmission while also ensuring high data quality, thereby improving the overall performance of the FSO system. BRIEF DESCRIPTION OF THE DRAWINGS
[0066] Figure 1 is a flow chart of the method of the present invention;
[0067] Figure 2 It is the structure diagram of RS code encoder;
[0068] Figure 3 Flowchart for iterative decoder to recover interleaved RS codewords. DETAILED DESCRIPTION
[0069] In order to facilitate understanding of the present invention, the present invention will be described more fully below with reference to the relevant drawings. Typical embodiments of the present invention are provided in the drawings. However, the present invention can be implemented in many different forms and is not limited to the embodiments described in the present invention. On the contrary, the purpose of providing these embodiments is to make the disclosure of the present invention more thorough and comprehensive.
[0070] Unless otherwise defined, all technical and scientific terms used in the present invention have the same meaning as those commonly understood by those skilled in the art of the present invention. The terms used in the specification of the present invention are only for the purpose of describing specific embodiments and are not intended to limit the present invention.
[0071] Example:
[0072] like Figure 1 As shown, a RS-convolutional code cascade coding method in a FSO system includes the following steps:
[0073] S1: Assume that the source data sequence is "10101100", input it into the sparse code encoder for block segmentation and RS encoding to generate RS codewords with error correction redundancy.
[0074] The encoded RS codeword is "1010110010110100", where "10110100" is the error correction redundancy.
[0075] The RS code encoder adopts a NK-level RS encoder composed of a division circuit, and selects the (255, 253) RS code type. The encoded RS code word is "1010110010110100", where "10110100" is the error correction redundancy.
[0076] For RS(n,k), let the information codeword polynomial be m(x):
[0077] m(x)=m k-1 x k-1 +m k-2 x k-2 +…+m0
[0078] The RS encoder first generates a polynomial g(x) and uses g(x) as the modulus to generate the polynomial:
[0079] g(x) = (x-α)(x-α 2 )…(x-α 2t )
[0080] Multiply the information codeword polynomial m(x) by x2t and divide it by g(x)b and take the remainder to get the check codeword polynomial h(x):
[0081]
[0082] Then combine h(x) and m(x) to get the RS codeword polynomial c(x) after RS encoding:
[0083] c(x)=x n-k m(x)+h(x)=c n-1 x n-1 +c n-2 x n-2 +…+c0
[0084] In the above formula: m is the source data polynomial, x is the polynomial variable; k is the information length of the RS code; g(x) is the generating polynomial; α is the original element of the finite field; t represents the error correction capability of the RS code; h(x) is the check codeword polynomial; n is the codeword length of the RS code; c(x) is the RS codeword polynomial; c n-1 ,c n-2 ...c0 is each code element in the RS code word.
[0085] Then the RS code encoding process is completed. The structure of the RS encoder is as follows: Figure 2 shown.
[0086] S2: Use interleaving technology to rearrange RS codewords to reduce the occurrence of continuous errors.
[0087] The RS codeword is divided into two sub-blocks, each of which has a length of 8.
[0088] For an RS codeword c(x) of length n, it is divided into N sub-blocks, and the length of each sub-block is n / N; it is assumed that the divided N sub-blocks are C1, C2, ..., CN.
[0089] Recombine these N sub-blocks to form a new codeword;
[0090] Specifically, the first characters of all sub-blocks can be combined to form a new sub-block; then the second characters of all sub-blocks can be combined to form a new sub-block; and so on, until the n / Nth characters of all sub-blocks are combined to form the last new sub-block. In this way, the original continuous errors are "broken up" into different sub-blocks, thereby achieving the purpose of reducing the impact of continuous errors after interleaving.
[0091] Let Ck(i) be the i-th character of the k-th sub-block, then:
[0092] Ci=[C1(i),C2(i),...,CN(i)], i=1,2,...,n / N
[0093] Ci is combined to form a new interleaved codeword. In this way, continuous errors are "broken up", making the errors in a single sub-block more sparse, and reducing the impact of continuous errors on decoding. This method can increase the system's anti-interference ability and improve the channel's fault tolerance, thereby ensuring reliable data transmission in harsh transmission environments.
[0094] Then, the characters of these two sub-blocks are recombined to form a new codeword, which results in "1101100101101100".
[0095] S3: The interleaved RS codewords are converted from parallel to serial and then input into a dynamically adjusted convolutional encoder, and the coding parameters are dynamically adjusted according to the current communication environment to generate a redundancy-enhanced coding sequence.
[0096] The interleaved RS codeword is input to the dynamically adjusted convolutional encoder, and the initial decoding state is set to "00".
[0097] Each interleaved RS codeword Ci is input into the dynamically adjusted convolutional encoder for encoding. Each time the encoding is performed, the encoder parameters are adjusted according to the current channel conditions so that the redundant information generated by the encoder is most suitable for the current communication environment, thereby improving the reliability of transmission.
[0098] The specific implementation steps are as follows:
[0099] Assume that the state of the dynamically adjusted convolutional encoder is x, the input is u, and the output is v. Each encoding process can be described by the following mathematical formula:
[0100] v=f(u,x)
[0101] The function f represents the process of convolutional encoding. Each time the state x of the convolutional encoder is updated, the update rule is:
[0102] x'=g(u,x)
[0103] The function g represents the state update process. After each encoding, the information symbol is converted into a string of code words and output.
[0104] Using "11" and "10" as input respectively, the encoded sequence after calculation is "1101100010101010".
[0105] For the dynamically adjusted convolutional encoder, its encoding parameters include constraint length, code rate, generating polynomial, etc. These parameters will be dynamically adjusted according to the current communication environment. For example, if the current communication environment is relatively bad, the constraint length will be increased or the code rate will be reduced to increase redundant information and improve transmission reliability; on the contrary, if the communication environment is good, the constraint length can be reduced accordingly and the code rate can be increased to improve transmission efficiency.
[0106] Finally, after being encoded by the dynamically adjusted convolutional encoder, the generated coding sequence is a redundancy-enhanced coding sequence, which is ready for the next step of optical signal transmission. In this way, dynamic coding of the signal can be achieved, making it better adaptable to different communication environments and improving the transmission reliability of the signal.
[0107] S4: The electrical signal is converted into an optical signal through an optical antenna and sent, and the optical signal is received and converted into an electrical signal to obtain a received sequence.
[0108] This step converts the redundancy-enhanced coding sequence generated in step S3 into electrical signals, and then converts these electrical signals into optical signals through optical antennas. The optical signals are transmitted to the destination through optical wireless communication FSO. There are some factors affecting the transmission process, such as optical attenuation, etc., and the received optical signals are not completely consistent, which can be expressed as "1100101010111010".
[0109] The optical antenna at the receiving end receives the optical signal, which is first converted into an electrical signal through a photoelectric converter. The photoelectric converter converts the optical signal into a corresponding electrical signal based on the light intensity of the optical signal. Then, these electrical signals are further processed to form a receiving sequence.
[0110] S5: Input the received sequence into the iterative decoder to recover the interleaved RS codeword.
[0111] like Figure 3 As shown, the specific process is as follows:
[0112] S501: First, the received sequence is appropriately preprocessed, which generally includes signal-to-noise ratio estimation and initial probability setting.
[0113] S502: Then, the iterative decoder is initialized. For the iterative decoder, some state values, such as the internal message passing buffer, etc., usually need to be initialized.
[0114] S503: After that, the received sequence is input into the iterative decoder, the decoding state is initialized to "000", and the iteration begins, and iterative decoding begins. In each iteration, the decoder calculates a new decoding result based on the current state value and feeds it back to the internal message transmission process.
[0115] Suppose the data passed into the iterative decoder is r, which is the result of the preprocessing of the received sequence y. The decoder maintains a state value s inside, and the initial state is set to s0. For each iteration, let the current number of iterations be k, then the estimated value of the original data u k It is derived from the following formula:
[0116] u k =f(r,s {k-1} )
[0117] Where f is the decoding function in the decoder, and the update process of the state value s is obtained by the following formula:
[0118] s k =g(r,s {k-1} ,u k )
[0119] Where g is the state update function;
[0120] S504: Then, the decoder checks whether the current decoding result meets the convergence condition. If it does, the iteration ends and the current decoding result is output. If it does not, the iteration continues. The power of the iterative decoder lies in that it can dynamically adjust the decoding strategy according to the channel and internal state to obtain the optimal decoding result.
[0121] S505: Finally, the coded sequence output by the iterative decoder is subjected to a deinterleaving operation to obtain a recovered RS codeword; specifically, the decoded redundant enhancement sequence is assumed to be D, and a deinterleaving operation is performed to obtain a deinterleaved sequence, which is recorded as D';
[0122] D'=h(D)
[0123] Wherein, h is the deinterleaving function.
[0124] After 10 iterations, the recovered interleaved RS codeword is "1101101001101110".
[0125] S6: The RS decoder uses the dynamically adjusted decoding parameters to correct symbol errors and recover the source data.
[0126] The specific contents are:
[0127] The recovered RS codeword is input into the dynamically adjusted RS decoder for decoding. First, the working state of the dynamically adjusted RS decoder is assumed to be q, the input codeword is D', the output is O, and the decoder is a dynamic function Q; the parameters include the codeword length n and the error correction capability t;
[0128] In each run, the running state of the decoder will be updated. Let the updated state be q', then:
[0129] O=Q(D',q)
[0130] q'=g(D',q)
[0131] Where Q represents each decoding process, and g represents the update process of the problem state;
[0132] Specifically, for RS codes, the decoding process involves a concept of Syndrome, which is the difference between the received codeword and the original codeword. Considering the polynomial form of RS code c(x), SyndromeS can be defined as S=c(α), where α is the root of the generating polynomial g(x). If S is not equal to zero, it means that there is an error in the received codeword. Set the state to "00", the output to "01", and the final recovered source data is "10101100".
[0133] The job of the RS decoder is to find the location and size of the error through the Syndrome. Therefore, it can be considered that after the decoder accepts D', it generates a Syndrome based on the current state q and tries to solve the Syndrome, which is a process of finding and correcting errors.
[0134] This process can be described by a series of mathematical operations, such as multiplication, division, and inversion of polynomials, etc. Finally, the original information codeword m(x) is restored.
[0135] It should be noted that since the operations involved are all in the finite field GF(2 8 ), all addition operations are equivalent to XOR operations, and multiplication operations are equivalent to modulo 2 8-1 multiplication under polynomials.
[0136] Some of the parameters, such as codeword length n and error correction capability t, can be adjusted dynamically. For example, if the set error correction capability t is not enough to correct all errors, then t needs to be increased. Or if the communication environment is good and the probability of error is small, then t can be appropriately reduced to reduce the complexity of processing.
[0137] Finally, let the last recovered source codeword be D0, then the result given by the decoder is D0. This completes the error correction and data recovery of the RS codeword.
[0138] In this way, data transmission in the FSO system is realized through the RS-convolutional code cascade coding and decoding method. In the whole process, the reliability and accuracy of data transmission are effectively guaranteed through the dynamically adjusted coding and decoding and interleaving technology.
[0139] Those skilled in the art can understand that all or part of the processes in the above-mentioned embodiments can be implemented by instructing the relevant hardware through a computer program, and the program can be stored in a computer-readable storage medium, and when the program is executed, it can include the processes of the embodiments of the above-mentioned methods. The storage medium can be a disk, an optical disk, a read-only memory (ROM) or a random access memory (RAM).
[0140] It should be understood that the detailed description of the technical solutions of the present invention by means of the preferred embodiments is illustrative rather than restrictive. A person skilled in the art may modify the technical solutions described in the embodiments, or replace some of the technical features by equivalents, based on reading the specification of the present invention; and these modifications or replacements do not deviate the essence of the corresponding technical solutions from the spirit and scope of the technical solutions of the embodiments of the present invention.
Claims
1. A method for concatenated coding and decoding based on RS-convolutional codes in a FSO system, characterized by: The following steps are involved: S1: Input the source data sequence into the sparse code encoder for block division and RS encoding to generate RS codewords with error correction redundancy; S2: Use interleaving technology to rearrange RS codewords to reduce the occurrence of continuous errors; S3: convert the interleaved RS codewords into parallel and serial codes and input them into a dynamically adjusted convolutional encoder, dynamically adjust the coding parameters according to the current communication environment, and generate a redundancy enhanced coding sequence; S4: convert the electrical signal into an optical signal through the optical antenna and send it, receive the optical signal and convert it into an electrical signal, and obtain a received sequence; S5: input the received sequence into an iterative decoder to recover the interleaved RS codeword; S6: The RS decoder uses the dynamically adjusted decoding parameters to correct symbol errors and recover the source data.
2. The RS-convolutional code concatenated coding method in a FSO system according to claim 1, characterized in that: The RS code encoder in S1 adopts a NK-level RS coder composed of a division circuit, and selects a (255, 253) RS code type. For RS (n, k), the information codeword polynomial is set to m (x): m(x)=m k-1 x k-1 +m k-2 x k-2 +…+m0 The RS encoder first generates a polynomial g(x) and uses g(x) as the modulus to generate the polynomial: g(x)=(x-a)(x-a) 2 )…(x-a 2t ) Multiply the information codeword polynomial m(x) by x2t and divide it by g(x)b and take the remainder to get the check codeword polynomial h(x): Then combine h(x) and m(x) to get the RS codeword polynomial c(x) after RS encoding: c(x)=x n-k m(x)+h(x)=c n-1 x n-1 +c n-2 x n-2 +…+c0 Then the RS code encoding process is completed.
3. The RS-convolutional code concatenated coding method in a FSO system according to claim 2, characterized in that: In S2, for an RS codeword c(x) of length n, it is divided into N sub-blocks, and the length of each sub-block is n / N; Assume that the N sub-blocks are C1, C2, ..., CN; Recombine these N sub-blocks to form a new codeword; Specifically, the first characters of all sub-blocks are combined to form a new sub-block; then the second characters of all sub-blocks are combined to form a new sub-block; and so on, until the n / Nth characters of all sub-blocks are combined to form the last new sub-block; Let Ck(i) be the i-th character of the k-th sub-block, then: Ci=[C1(i),C2(i),...,CN(i)], i=1,2,...,n / N The Ci combination forms a new codeword after interleaving.
4. The method for cascade coding and decoding based on RS-convolutional codes in a FSO system according to claim 3, characterized in that: In S3, each interleaved RS codeword Ci is sequentially input into a dynamically adjusted convolutional encoder for encoding; Each time encoding is performed, the encoder parameters are adjusted according to the current channel conditions, so that the redundant information generated by the encoder is most suitable for the current communication environment, thereby improving the reliability of transmission; The specific implementation steps are as follows: Assume that the state of the dynamically adjusted convolutional encoder is x, the input is u, and the output is v. Each encoding process is described by the following mathematical formula: v=f(u,x) The function f represents the process of convolutional encoding. Each time the state x of the convolutional encoder is updated, the update rule is: x'=g(u,x) The function g represents the state update process. After each encoding, the information symbol is converted into a string of code words and output.
5. The method for RS-convolutional code concatenation encoding and decoding in a FSO system according to claim 4, characterized in that: The S4 converts the redundant enhanced coding sequence generated in step S3 into electrical signals, and then converts these electrical signals into optical signals through optical antennas, and the optical signals are transmitted to the destination through optical wireless communication FSO; the optical antenna at the receiving end receives the optical signal, and the received optical signal is first converted into an electrical signal through a photoelectric converter, and the photoelectric converter converts it into a corresponding electrical signal according to the light intensity of the optical signal; then, these electrical signals will be further processed to form a receiving sequence.
6. The RS-convolutional code concatenated coding method in a FSO system according to claim 5, characterized in that: The specific process of S5 is as follows: S501: First, the received sequence is appropriately preprocessed, including signal-to-noise ratio estimation and initial probability setting; S502: Then, the iterative decoder is initialized. For the iterative decoder, a state value needs to be initialized; S503: Iterative decoding begins. In each iteration, the decoder calculates a new decoding result based on the current state value and feeds it back to the internal message passing process. This process is expressed by the following formula: Assume that the data passed into the iterative decoder is r, which is the result of the preprocessing of the received sequence y. The decoder maintains a state value s internally, and the initial state is set to s 0; For each iteration, let the current number of iterations be k, then the estimated value u of the original data is k It is derived from the following formula: u k =f(r,s {k-1} ) Where f is the decoding function in the decoder, and the update process of the state value s is obtained by the following formula: s k =g(r,s {k-1} ,u k ) Where g is the state update function; S504: Then, the decoder checks whether the current decoding result meets the convergence condition; if so, the iteration ends and the current decoding result is output; if not, the iteration continues; S505: Finally, the coded sequence output by the iterative decoder is subjected to a deinterleaving operation to obtain a recovered RS codeword; specifically, the decoded redundant enhancement sequence is assumed to be D, and a deinterleaving operation is performed to obtain a deinterleaved sequence, which is recorded as D'; D'=h(D) Wherein, h is the deinterleaving function.
7. The RS-convolutional code concatenated coding method in a FSO system according to claim 6, characterized in that: The specific content of S6 is: first, assume that the working state of the dynamically adjusted RS decoder is q, the input codeword is D', the output is O, and the decoder is a dynamic function Q; the parameters include the codeword length n and the error correction capability t; In each run, the running state of the decoder will be updated; let the updated state be q', then: O=Q(D',q) q'=g(D',q) Where Q represents each decoding process, and g represents the update process of the problem state; Specifically, for RS codes, the decoding process is the Syndrome process, which is the difference between the received codeword and the original codeword; consider the polynomial form c(x) of the RS code, which is defined as S = c(α), where α is the root of the generating polynomial g(x); if S is not equal to zero, then it means that there is an error in the received codeword; The RS decoder uses Syndrome to find the location and size of the error. Therefore, it is considered that after the decoder accepts D', it generates Syndrome according to the current state q and tries to solve the Syndrome, which is a process of finding and correcting errors.
Citation Information
Cited By
Wireless transmission fault tolerance method and device based on cascade coding and dynamic interleaving
CN121968198A