Viterbi incoherent demodulation method and system

By employing the Viterbi incoherent demodulation method, utilizing the forgetting factor and historical correlation accumulation, and combining it with the optimal incoherent detection theory, the problem of carrier synchronization difficulties in rapidly changing channels during coherent demodulation is solved. This achieves efficient and stable QPSK-CPM signal demodulation, reduces hardware complexity, and improves real-time performance.

CN122027418APending Publication Date: 2026-05-1236TH RES INST OF CETC
View PDF 0 Cites 0 Cited by

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
36TH RES INST OF CETC
Filing Date
2026-02-27
Publication Date
2026-05-12

AI Technical Summary

Technical Problem

Existing coherent demodulation methods suffer from degraded demodulation performance and high implementation complexity in rapidly changing channels due to difficulties in carrier synchronization, making it difficult to achieve accurate carrier phase positioning in sudden situations.

Method used

The Viterbi incoherent demodulation method is adopted. By introducing the forgetting factor and historical correlation accumulation, combined with the optimal incoherent detection theory, the path metric is calculated and the step-by-step backtracking is performed to achieve demodulation of QPSK-CPM signals.

Benefits of technology

It reduces the hardware implementation complexity of the receiver, has strong anti-frequency offset capability, adapts to harsh channel environments, has demodulation performance close to coherent demodulation, and shortens demodulation time, making it suitable for application scenarios with limited resources and high real-time requirements.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN122027418A_ABST
    Figure CN122027418A_ABST
Patent Text Reader

Abstract

The invention relates to a Viterbi incoherent demodulation method and system. The method comprises the following steps: acquiring a received symbol sequence; calculating a non-correlation branch metric of each candidate path based on a preset forgetting factor, a correlation cumulant of each candidate path in a previous moment state, and an instantaneous correlation value between a receiving symbol at a current moment and a reference symbol of each candidate path; calculating the path metric of each candidate path at the current moment based on the path metric at the previous moment, and selecting the candidate path with the maximum path metric from the plurality of candidate paths at the current moment state as a surviving path at the current moment state; based on the forgetting factor, the correlation cumulant of the previous moment state corresponding to the selected surviving path and the instantaneous correlation value of the surviving path, updating the correlation cumulant of the current moment state reached by the surviving path; processing the received symbols hourly; and finally, selecting the state corresponding to the maximum value from the path metrics of all the states as a backtracking starting point at the moment, and carrying out step-by-step backtracking to obtain a demodulation data sequence.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention relates to the field of wireless communication technology, and in particular to a Viterbi (Viterbi algorithm) noncoherent demodulation method and system. Background Technology

[0002] Quadrature Phase Shift Keying (QPSK)-Continuous Phase Modulation (CPM) spread spectrum is a highly efficient modulation technique characterized by continuous phase. This eliminates the need for the high bandwidth requirements of traditional PSK (Phase Shift Keying) modulation. Another advantage of QPSK-CPM is its constant envelope, which effectively reduces the impact of fading channels on the modulated signal. Furthermore, the use of nonlinear amplifiers can reduce system power consumption, making it widely used in modern communications.

[0003] Although CPM coherent demodulation has the best performance, it is severely limited by the demodulation time under sudden conditions, such as rapid changes in certain channels. Coherent demodulation cannot accurately locate the carrier phase within the corresponding demodulation time, which makes it very difficult to implement the optimal coherent demodulation algorithm for CPM. Summary of the Invention

[0004] Based on the above analysis, the embodiments of the present invention aim to provide a Viterbi noncoherent demodulation method and system to solve the technical problems of the existing coherent demodulation methods, which suffer from degraded demodulation performance and high implementation complexity due to difficulties in carrier synchronization in rapidly changing channels.

[0005] This invention provides a Viterbi incoherent demodulation method, comprising the following steps: Step S1: Obtain the received symbol sequence; and initialize the path metric and related cumulative quantity for each state in the state grid at the initial moment of the Viterbi algorithm; Step S2: Based on the preset forgetting factor, the cumulative correlation of the previous state corresponding to each candidate path, and the instantaneous correlation value between the received symbol at the current time and the reference symbol corresponding to each candidate path, calculate the uncorrelated branch metric of each candidate path at the current time. Step S3: Based on the irrelevant branch metrics of each candidate path and the path metrics of the previous time step, calculate the path metrics of each candidate path at the current time step, and select the candidate path with the largest path metric from the multiple candidate paths at the current time step as the surviving path at the current time step. Step S4: Based on the forgetting factor, the cumulative correlation of the previous state corresponding to the selected surviving path, and the instantaneous correlation value corresponding to the surviving path, update the cumulative correlation of the current state reached by the surviving path. Step S5: Repeat steps S2 to S4, processing the received symbol sequence hour by hour until all received symbols have been processed; at the last moment, select the state corresponding to the maximum value from all states' path metrics as the backtracking starting point, and backtrack step by step based on the surviving paths of each state at each moment to obtain the demodulated data sequence.

[0006] Furthermore, the Viterbi incoherent demodulation method is used to demodulate the QPSK-CPM modulated signal; the received symbol is the QPSK-CPM modulated signal.

[0007] Furthermore, for each candidate path, the instantaneous correlation value between the received symbol at the current time and the reference symbol corresponding to that candidate path is calculated according to formula (1), as follows: Formula (1) in, This indicates the received symbol at the current time and the state from the previous time. Current state The instantaneous correlation value between the reference symbols corresponding to the candidate paths; , These refer to the current moment and the previous moment, respectively. The symbol interval time. The received symbol at the current moment; The state of the previous moment The conjugate of the corresponding reference symbol.

[0008] Furthermore, for each candidate path, the incoherent branch metric of the candidate path at the current time is calculated according to formula (2), as follows: Formula (2) in, Indicates the state from the previous moment Current state The incoherent branch metric of candidate paths; Forgetting factor; Indicates the state at the previous moment. The relevant cumulative amount.

[0009] Furthermore, for each current state The path metric of the candidate path is calculated according to formula (3), and the surviving path is selected from each candidate path that reaches the current state, as follows: Formula (3) in, Indicates the current state Path metrics; Indicates the state at the previous moment. Path metric.

[0010] Furthermore, for each current state The relevant cumulative amount of the current state reached by the surviving path is updated according to formula (4) as follows: Formula (4) in, Indicates the current state Updated cumulative figures; To reach the current state The state of the previous moment corresponding to the survival path; Indicates the state at the previous moment. The relevant cumulative amount; Indicates from state to state The instantaneous correlation value corresponding to the survival path.

[0011] Furthermore, at the final moment, the state corresponding to the maximum value of the path metric from all states is selected as the backtracking starting point. Based on the surviving paths of each state at each moment, a step-by-step backtracking is performed to obtain the demodulated data sequence, including: At the last moment after all received symbols have been processed, the path metrics of all states are compared, and the state corresponding to the maximum value of the path metrics at the last moment is taken as the backtracking starting point. Starting from the backtracking starting point, the surviving paths of each state at each moment are searched sequentially in reverse chronological order to determine the state of the previous moment corresponding to each moment. The backtracking is performed step by step to obtain the complete backtracking path. Based on the state pairs of adjacent time points in the backtracking path, the mapping relationship between the Viterbi state transition and the input bits is found to obtain the input bits corresponding to each time point. The input bits of all time points are concatenated in chronological order to obtain the complete demodulated data sequence.

[0012] Furthermore, the Viterbi algorithm has 16 states in its state grid at each time step, and each state at each time step corresponds to 4 forward transition branches, resulting in a total of 64 candidate paths. 64 path metrics are calculated at each time step.

[0013] Furthermore, the forgetting factor is a positive number less than 1.

[0014] The present invention also discloses a Viterbi incoherent demodulation system, the system comprising a symbol sequence receiving module M1, a branch metric calculation module M2, a survival path selection module M3, a correlation cumulant update module M4, and a backtracking demodulation module M5; The symbol sequence receiving module M1 is used to acquire the received symbol sequence; and to initialize the path metric and related cumulative quantity for each state in the state grid at the initial moment of the Viterbi algorithm; The branch metric calculation module M2 is used to calculate the unrelated branch metric of each candidate path at the current time based on the preset forgetting factor, the cumulative correlation of the previous state corresponding to each candidate path, and the instantaneous correlation value between the received symbol at the current time and the reference symbol corresponding to each candidate path. The surviving path selection module M3 is used to calculate the path metric of each candidate path at the current time based on the irrelevant branch metric of each candidate path and the path metric of the corresponding previous time step, and select the candidate path with the largest path metric from the multiple candidate paths at the current time step as the surviving path at the current time step. The relevant cumulative update module M4 is used to update the relevant cumulative amount of the current state reached by the survival path based on the forgetting factor, the relevant cumulative amount of the previous state corresponding to the selected survival path, and the instantaneous relevant value corresponding to the survival path. The backtracking demodulation module M5 is used to process the received symbol sequence hour by hour until all received symbols have been processed. At the last moment, the state corresponding to the maximum value of the path metric of all states is selected as the backtracking starting point. Based on the surviving paths of each state at each moment, backtracking is performed level by level to obtain the demodulated data sequence.

[0015] Compared with the prior art, the present invention can achieve at least one of the following beneficial effects: 1. This invention adopts the Viterbi noncoherent demodulation algorithm based on the forgetting factor, which eliminates the need for carrier phase synchronization of the received signal, and removes complex carrier recovery circuits such as phase-locked loops and Costas loops, greatly reducing the hardware implementation complexity and resource consumption of the receiver, making the demodulation system easier to implement and integrate, and reducing implementation complexity. 2. This invention effectively suppresses the cumulative effect of residual frequency offset during the iteration process by introducing a forgetting factor and historical correlation accumulation in the branch metric calculation. It exhibits good fault tolerance for frequency offset, timing offset, and modulation index offset, and can operate stably in scenarios with rapid channel changes and significant Doppler frequency shift, ensuring demodulation performance. It also possesses strong anti-frequency offset capability and adaptability to harsh channel environments. 3. This invention combines the optimal incoherent detection theory with the Viterbi algorithm. Through iterative updates of relevant cumulative quantities, the performance loss of incoherent demodulation is controlled within an acceptable range, and the demodulation performance is close to that of coherent demodulation. At the same time, the demodulation time is significantly shortened, and the real-time performance and practicality of the algorithm are improved while ensuring performance. It is particularly suitable for application scenarios with limited resources and high real-time requirements, such as satellite communication.

[0016] In this invention, the above-described technical solutions can be combined with each other to achieve more preferred combinations. Other features and advantages of this invention will be set forth in the following description, and some advantages may become apparent from the description or be learned by practicing the invention. The objects and other advantages of this invention can be realized and obtained through the details specifically pointed out in the description and drawings. Attached Figure Description

[0017] The accompanying drawings are for illustrative purposes only and are not intended to limit the invention. Throughout the drawings, the same reference numerals denote the same parts.

[0018] Figure 1 This is a flowchart of a Viterbi incoherent demodulation method according to an embodiment of the present invention; Figure 2 This is a schematic diagram of the QPSK-CPM spread spectrum modulation system in an embodiment of the present invention; Figure 3 This is a schematic diagram of the Viterbi demodulation process in an embodiment of the present invention; Figure 4 This is a schematic diagram of the implementation structure of branch metric calculation in an embodiment of the present invention; Figure 5 This is a schematic diagram illustrating the implementation of survivor path management in an embodiment of the present invention; Figure 6 This is a schematic diagram of the functional modules of a Viterbi noncoherent demodulation system in an embodiment of the present invention. Detailed Implementation

[0019] Preferred embodiments of the present invention will now be described in detail with reference to the accompanying drawings, which form part of this application and are used together with the embodiments of the present invention to illustrate the principles of the present invention, but are not intended to limit the scope of the present invention.

[0020] For coherent demodulation, the precise phase of the carrier is required, and the receiver of coherent demodulation needs to accurately replicate the carrier frequency and phase of the transmitter; the non-coherent demodulation in this invention does not require knowledge of the initial phase of the received signal, but only utilizes the relative relationship or envelope information of the signal.

[0021] The core of this technical solution is to use historical correlation accumulation plus a forgetting factor to correctly demodulate the data even without knowing the exact initial phase and frequency of the received signal.

[0022] For QPSK-CPM signals, the phase is continuous and the envelope is constant, which has the advantages of high spectral efficiency and resistance to nonlinearity. The disadvantage is that the phase trajectory is complex.

[0023] Challenges in coherent demodulation of QPSK-CPM signals include: the need to accurately track continuously changing phases; the phase memory of CPMs making carrier recovery more complex; insufficient synchronization time in burst communications; and the presence of Doppler shift and phase noise in satellite channels.

[0024] To address the aforementioned issues, this invention does not employ simple differential detection (which requires comparing the phase difference between adjacent symbols), but instead incorporates the theory of optimal incoherent detection into the Viterbi algorithm.

[0025] This invention provides a Viterbi noncoherent demodulation method for QPSK-CPM signals, introducing a forgetting factor to combat frequency offset accumulation; and optimizing the implementation using FPGA (Field-Programmable Gate Array) with sliding window serial computation; it is particularly suitable for specific demodulation scenarios of QPSK-CPM signal demodulation in maritime satellite communications.

[0026] The Viterbi algorithm is an intelligent search algorithm that uses dynamic programming to find the optimal path in a grid graph, transforming a seemingly impossible exponential search problem into a practically achievable linear complexity problem. This algorithm is combined with incoherence metrics, a forgetting factor mechanism, and an optimized hardware architecture to address the technical challenge of efficient demodulation of QPSK-CPM signals in dynamic satellite channels.

[0027] Example 1: This method performs blind demodulation of QPSK-CPM signals. The key to blind demodulation is blindly estimating the modulation parameters and the effective demodulated signal. Modulation parameter estimation always introduces a bias, so the demodulation algorithm must be able to tolerate this bias.

[0028] In the case of blind demodulation, coherent demodulation algorithms require precise initial phase and frequency of the carrier, which is not suitable for demodulating QPSK-CPM signals with unknown initial phase and frequency in this invention.

[0029] Incoherent demodulation algorithms are a better choice, as they do not require carrier initial phase and have good fault tolerance to frequency offset, timing offset, and modulation index offset. Therefore, this method adopts the Viterbi demodulation method based on optimal incoherent detection theory.

[0030] The noncoherent demodulation algorithm based on Viterbi suffers some performance loss compared to coherent demodulation, but it simplifies complexity and shortens demodulation time, making it more advantageous in practical applications.

[0031] A specific embodiment of the present invention, such as Figure 1 As shown, a Viterbi incoherent demodulation method is disclosed, comprising the following steps: Step S1: Obtain the received symbol sequence; and initialize the path metric and related cumulative quantity for each state in the state grid at the initial moment of the Viterbi algorithm; Step S2: Based on the preset forgetting factor, the cumulative correlation of the previous state corresponding to each candidate path, and the instantaneous correlation value between the received symbol at the current time and the reference symbol corresponding to each candidate path, calculate the uncorrelated branch metric of each candidate path at the current time. Step S3: Based on the irrelevant branch metrics of each candidate path and the path metrics of the previous time step, calculate the path metrics of each candidate path at the current time step, and select the candidate path with the largest path metric from the multiple candidate paths at the current time step as the surviving path at the current time step. Step S4: Based on the forgetting factor, the cumulative correlation of the previous state corresponding to the selected surviving path, and the instantaneous correlation value corresponding to the surviving path, update the cumulative correlation of the current state reached by the surviving path. Step S5: Repeat steps S2 to S4, processing the received symbol sequence hour by hour until all received symbols have been processed; at the last moment, select the state corresponding to the maximum value from all states' path metrics as the backtracking starting point, and backtrack step by step based on the surviving paths of each state at each moment to obtain the demodulated data sequence.

[0032] Step S1, specifically.

[0033] The received symbol sequence is obtained using a receiving device.

[0034] The Viterbi incoherent demodulation method is used to demodulate QPSK-CPM modulated signals; the received symbol is a QPSK-CPM modulated signal.

[0035] For example, the generation of QPSK-CPM modulated signals, such as Figure 2 As shown.

[0036] (1) Data is the input bit stream: the raw information bit stream to be transmitted. It is a binary bit sequence, such as 1101001011…; the rate depends on the business requirements, such as ship AIS (Automatic Identification System, mainly used for information exchange between ships and between ships and shore, including ship identification, location, speed, heading, etc., to improve navigation safety and traffic management efficiency) messages; usually a frame structure encapsulated by upper-layer protocols; (2) Turbo coding: Using two or more simple short component codes, an equivalent complex long code is constructed through deformation and interleaving. This increases redundancy, error correction, and forward error correction capability. In this invention, the output of the Viterbi noncoherent demodulation in step S5 is the Turbo-coded input bit; (3) Scrambling: The signal to be transmitted is processed by scrambling code to shorten the length of "0" and "1" in the signal, avoid long 0 / 1, flatten the spectrum, and reduce the minimum period; (4) Insert synchronization word: used to capture the received signal sequence at the receiving end. A 48-symbol "01" synchronization sequence will be spread by CDMA (Code Division Multiple Access) together with the data symbols at the transmitting end before being transmitted. Despreading at the receiving end can improve the signal-to-noise ratio. (5) Pilot: A series of known symbols are periodically inserted into the scrambled data, with one symbol inserted each time. Pilots can perform channel estimation and phase tracking on the data frame at the receiving end, thereby correcting the received signal; (6) QPSK mapping: mapping bit pairs to complex symbols To achieve constant envelope and continuous phase; (7) CPM spread spectrum: converting ordinary QPSK symbols into QPSK-CPM signals. Perform symbol expansion and phase continuity; each QPSK symbol is expanded into a BL chip (e.g., BL=256).

[0037] The QPSK-CPM modulated signal is obtained by CPM spreading of QPSK symbols, as follows: Formula (1) in, It is a QPSK-CPM modulated signal; For QPSK notation, , These are the CPA and CPE spreading sequences in the CPM spreading sequence, respectively. , These are the row numbers for the CPA spread spectrum sequence and the CPE spread spectrum sequence, respectively. , These are the column indices for the CPA spread spectrum sequence and the CPE spread spectrum sequence, respectively. These are the lengths of the CPA spreading sequence and the CPE spreading sequence, respectively. ; This is the length of the spreading block.

[0038] The received symbol sequence obtained in this invention is a QPSK-CPM modulated signal, representing the discrete time intervals. Modulated, spread complex baseband sample values; constant envelope =constant; For time indexing, Discrete-time index; The input signal is of length BL (Block Length), which is a complex symbol after QPSK mapping. BL sampling points (one frame of data) are processed at a time. After processing one frame, the next frame is processed. , For the CPM spread spectrum sequence, there are CPA (Continuous Phase Alternating) spread spectrum sequence and CPE (Continuous Phase Extension) spread spectrum sequence. A single QPSK symbol will be modulated into the form {CPA, CPE} after CPM spread spectrum.

[0039] For example, the BL length is 256, meaning one symbol is 256 code elements; the CPA sequence length is 128; the CPE sequence length is 128. CPA line number. CPE industry standard .

[0040] The calculation process is as follows: Formula (2) in, The value is an integer index, mapping 2 binary bits to integers between 0 and 3. This is an intermediate variable in the QPSK modulation process.

[0041] QPSK symbol to The mapping rules. A mapping table, representing the input two bits (one QPSK symbol) and an integer index. The correspondence and mapping rules between them are shown in Table 1.

[0042]

[0043] The calculation is as follows: Formula (3) Wherein, is the position of the symbol in the data, is the value of the current symbol; is the value of the previous symbol.

[0044] At the first moment n = 0 when the symbol starts, is fixed to 0, which means that the CPA spreading of each symbol starts from the 0th chip of the CPA sequence; At subsequent moments n > 0, is equal to the modulo 4 operation result of the difference between the value of the current symbol and the value of the previous symbol. % That is, the mod modulo operation.

[0045] The calculation of is as follows: Where BL is the length of each frame of the input signal data.

[0046] At the last moment n = BL - 1 when the received symbol sequence ends, is fixed to 0, which means that the end of each symbol points to the 0th chip of the CPE sequence; At other moments n < BL - 1, then is calculated in the same way as when n > 0 in CPA, and it is also the modulo 4 operation result of the difference between the q value of the current symbol and the q value of the previous symbol.

[0047] is the initial path metric and related cumulative quantity in the state grid at the initial moment of the Viterbi algorithm.

[0048] Exemplarily, the path metric and related cumulative quantity are initialized to 0.

[0049] At the initial moment, no symbols have been received yet, and there is no preference information for the paths of each state. Initializing the path metric to 0 means that all states have the same initial score at the starting stage, avoiding artificially introducing biases; The Viterbi algorithm finds the optimal surviving path by iteratively updating the path metric. After the related cumulative quantity is initialized to 0, the path metric at subsequent moments will be gradually accumulated based on the correlation between the received symbol and the reference symbol (such as the instantaneous correlation value), ensuring that the path selection depends on the actual received data rather than the initial assumption.

[0050] Step S1 provides the necessary received symbol sequence data and initial conditions for the entire Viterbi incoherent demodulation process. Obtaining the received symbol sequence clearly defines the target object for demodulation, which is fundamental to all subsequent demodulation operations. Initializing the path metric and correlation accumulator ensures that the Viterbi algorithm treats all possible states unbiasedly in the initial stage, providing a fair and reliable starting point for subsequent path metric updates based on the correlation between the received and reference symbols, surviving path selection, and correlation accumulator iterations, ensuring that the demodulation process can proceed in an orderly and accurate manner.

[0051] Step S2, specifically.

[0052] like Figure 3 As shown, Viterbi incoherent detection combines optimal incoherent detection theory with the Viterbi algorithm, changing the branch metric calculation method in coherent demodulation. Because the signal has residual frequency offset, as demodulation and decoding progress, the iteration of the path metric causes frequency offset accumulation. When it reaches a certain decoding depth, decoding errors will occur.

[0053] Figure 3 The initialization variables in step S1, i.e., the received symbol sequence. .

[0054] To reduce the impact of residual frequency offset accumulation, a forgetting factor is introduced. It is corrected in each iteration.

[0055] The Viterbi algorithm states that the state grid has 16 states at each time step, and each state at each time step corresponds to 4 forward transition branches, resulting in a total of 64 candidate paths. 64 path metrics are calculated at each time step.

[0056] The Viterbi incoherent demodulation has 16 states at each time step, and each state has 4 possible forward states (00, 01, 10, 11). There are 64 branch paths, so 64 branch metrics need to be calculated.

[0057] Total number of forward transition branches = number of states × number of out-degrees of each state = 16 × 4 = 64.

[0058] Tables 2(a) and 2(b) show the Viterbi incoherent demodulation signal state table and branch path table, respectively.

[0059]

[0060]

[0061] In Table 2(a), , The associated phase of the current state; Status in Table 2(b) , , and These are the four forward states of the current state, meaning that each state has four branch paths at each time step.

[0062] For each candidate path, the instantaneous correlation value between the received symbol at the current time and the reference symbol corresponding to the candidate path is calculated according to formula (5), as follows: Formula (5) in, This indicates the received symbol at the current time and the state from the previous time. Current state The instantaneous correlation value between the reference symbols corresponding to the candidate paths; , These refer to the current moment and the previous moment, respectively. The symbol interval time. The received symbol at the current moment; The state of the previous moment The conjugate of the corresponding reference symbol.

[0063] The received symbol at the current moment For receiving the symbol sequence in step S1 A subset of.

[0064] For each candidate path, the incoherent branch metric of the candidate path at the current time is calculated according to formula (6), as follows: Formula (6) in, Indicates the state from the previous moment Current state The incoherent branch metric of candidate paths; Forgetting factor; Indicates the state at the previous moment. The relevant cumulative amount.

[0065] The forgetting factor is a positive number less than 1.

[0066] For example, the forgetting factor , is a positive number slightly less than 1, with a value of 0.938; in practical applications, it can be changed according to specific needs.

[0067] The implementation structure of incoherent branch metric computation is as follows: Figure 4As shown. Correlation operations are performed on the received symbols and the reference symbols of the local path. For each input received symbol group (there are 256 received symbols in one received symbol group due to CPM spread spectrum), each received symbol in the received symbol group will be correlated and accumulated with the reference symbols in 64 groups of 256*64 local path reference symbol groups to obtain 64 incoherent branch metric values.

[0068] Step S2 calculates the instantaneous correlation value and incoherent branch metric of each candidate path, and adjusts the weight of historical accumulation using a forgetting factor. This provides a quantified path cost reference for the Viterbi algorithm's state transition selection at the current moment, thereby achieving efficient incoherent demodulation of the received symbol sequence and laying the foundation for subsequent decoding decisions. By introducing a forgetting factor, the contribution of historical information and currently received symbols can be dynamically balanced, effectively improving the robustness of the demodulation system in time-varying channel environments, ensuring the accuracy and real-time performance of path metric calculation, and thus optimizing the performance of the entire incoherent demodulation system.

[0069] Step S3, specifically.

[0070] For each current state The path metric of the candidate path is calculated according to formula (7), and the surviving path is selected from each candidate path that reaches the current state, as follows: Formula (7) in, Indicates the current state Path metrics; Indicates the state at the previous moment. Path metric.

[0071] The state calculated in step S2 from the previous time step Current state The incoherent branch metric of the candidate paths is used. The candidate path with the maximum path metric is selected as the surviving path for the current state.

[0072] Step S3 calculates the path metric of each candidate path and selects the surviving path, thus implementing the core state transition decision of the Viterbi algorithm and preserving the optimal path information for each state at the current moment. Combining the incoherent branch metric obtained in step S2, the candidate path with the largest path metric is selected as the surviving path from among many candidate paths, effectively reducing the complexity of subsequent calculations and providing a reliable path history for the subsequent backtracking decoding stage. By preserving the optimal path, the accuracy of symbol decision during demodulation can be significantly improved, ensuring stable output of high-quality demodulation results even in complex channel environments, further optimizing the performance of incoherent demodulation.

[0073] Step S4, specifically.

[0074] For each current state The relevant cumulative amount of the current state reached by the surviving path is updated according to formula (8) as follows: Formula (8) in, Indicates the current state Updated cumulative figures; To reach the current state The state of the previous moment corresponding to the survival path; Indicates the state at the previous moment. The relevant cumulative amount; Indicates from state to state The instantaneous correlation value corresponding to the survival path.

[0075] This indicates the state at the current moment. The new relevant cumulative amount possessed represents the state reached. The total amount of historical phase information accumulated up to the current position along this surviving path; The forgetting factor determines the extent to which historical accumulation is trusted and the extent to which the current instantaneous correlation value is trusted when updating the correlation accumulation.

[0076] Step S4 updates the cumulative correlation of the current state reached by the surviving path, thus dynamically maintaining and updating the historical path information in real time. Combining the surviving paths selected in Step S3, the cumulative correlation of the previous state is integrated with the instantaneous correlation value corresponding to the current surviving path, ensuring that the cumulative correlation accurately reflects the cumulative information of the current optimal path. This operation not only provides real-time and reliable historical data support for path metric calculations in subsequent moments, effectively avoiding path decision bias caused by outdated cumulative information, but also further enhances the adaptability of the demodulation system in time-varying channel environments. It ensures that the Viterbi algorithm always makes decisions based on the latest cumulative path information during state transitions, thereby continuously optimizing the accuracy and stability of the demodulation results and providing a solid foundation of cumulative information for the final decoding decision.

[0077] Step S5, specifically.

[0078] Repeat steps S2 to S4, processing the received symbol sequence hour by hour until all received symbols have been processed; at the last moment, select the state corresponding to the maximum value of the path metric from all states as the backtracking starting point, and backtrack step by step based on the surviving paths of each state at each moment to obtain the demodulated data sequence.

[0079] At the final moment, the state corresponding to the maximum value of the path metric from all states is selected as the backtracking starting point. Backtracking is then performed level by level based on the surviving paths of each state at each moment to obtain the demodulated data sequence, including: At the last moment after all received symbols have been processed, the path metrics of all states are compared, and the state corresponding to the maximum value of the path metrics at the last moment is taken as the backtracking starting point. Starting from the backtracking starting point, the surviving paths of each state at each moment are searched sequentially in reverse chronological order to determine the state of the previous moment corresponding to each moment. The backtracking is performed step by step to obtain the complete backtracking path. Based on the state pairs of adjacent time points in the backtracking path, the mapping relationship between the Viterbi state transition and the input bits is found to obtain the input bits corresponding to each time point. The input bits of all time points are concatenated in chronological order to obtain the complete demodulated data sequence.

[0080] After each code interval Repeat steps S2 to S4 until the received symbol sequence ends. Then select the node with the largest path metric and the surviving path, backtrack to decode, and obtain the demodulated sequence.

[0081] like Figure 5 The survival path management shown uses 16 RAM (Random Access Memory) blocks, each with a depth of 260, to store the state transition flags for each state of the survival path at each time step. When the RAM is full, the decoding result can be obtained. That is, each RAM block stores 260 state transition flags.

[0082] Since there are 16 states at any given moment, 16 RAMs with a depth of 260 bits and a width of 7 bits (the data frame length of satellite downlink Link ID 20 is 260 bits) are first initialized to store the state transition flags for each state at each moment. When 260 valid data are stored in each RAM, backtracking begins from the state with the surviving path to obtain the final demodulation result.

[0083] Step S5 ensures that each symbol receives demodulation analysis based on the optimal surviving path. The core of this step is the use of a step-by-step backtracking mechanism. Starting from the state corresponding to the surviving path at the last moment, the backtracking traces the state transition trajectory throughout the entire transmission process, concatenating the surviving path information scattered across various moments into a complete demodulated data sequence. Combined with the efficient storage and management of surviving path markers in RAM, this ensures the complete preservation of path history information and enables rapid initiation of backtracking decoding after data frame processing, significantly improving the real-time performance and engineering feasibility of the demodulation process. This step not only completes the final conversion from the received symbol sequence to the demodulated data sequence but also, through global tracing of the surviving path, maximizes the mitigation of interference and noise from time-varying channels, ensuring high reliability of the demodulation results.

[0084] For specific application scenarios such as satellite links (e.g., Link ID 20 data transmission with a frame length of 260 bits), step S5 can accurately adapt to the configuration of hardware storage resources, achieve efficient collaboration between the demodulation process and the hardware architecture, and ultimately provide a stable, accurate and efficient output for the entire non-coherent demodulation system, meeting the stringent requirements of actual communication scenarios for data demodulation.

[0085] The method in this invention can be used for demodulation of constant envelope signals in satellite communications, reducing hardware resources while maintaining demodulation performance comparable to coherent demodulation. For example, in onboard VDE (VHF Data Exchange), link 20 uses QPSK-CPM modulation. Since carrier synchronization does not require carrier recovery, the receiver hardware implementation complexity is reduced. Simultaneously, the sliding window design in the non-correlated branch metric calculation effectively reduces demodulation output delay and hardware storage resource consumption.

[0086] Example 2: A specific embodiment of the present invention discloses a Viterbi incoherent demodulation system, thereby implementing a Viterbi incoherent demodulation method as described in Embodiment 1. The specific implementation of each module is described in the corresponding section of Embodiment 1.

[0087] like Figure 6 As shown, a Viterbi incoherent demodulation system is characterized in that the system includes a symbol sequence receiving module M1, a branch metric calculation module M2, a survival path selection module M3, a correlation accumulator update module M4, and a backtracking demodulation module M5. The symbol sequence receiving module M1 is used to acquire the received symbol sequence; and to initialize the path metric and related cumulative quantity for each state in the state grid at the initial moment of the Viterbi algorithm; The branch metric calculation module M2 is used to calculate the unrelated branch metric of each candidate path at the current time based on the preset forgetting factor, the cumulative correlation of the previous state corresponding to each candidate path, and the instantaneous correlation value between the received symbol at the current time and the reference symbol corresponding to each candidate path. The surviving path selection module M3 is used to calculate the path metric of each candidate path at the current time based on the irrelevant branch metric of each candidate path and the path metric of the corresponding previous time step, and select the candidate path with the largest path metric from the multiple candidate paths at the current time step as the surviving path at the current time step. The relevant cumulative update module M4 is used to update the relevant cumulative amount of the current state reached by the survival path based on the forgetting factor, the relevant cumulative amount of the previous state corresponding to the selected survival path, and the instantaneous relevant value corresponding to the survival path. The backtracking demodulation module M5 is used to process the received symbol sequence hour by hour until all received symbols have been processed. At the last moment, the state corresponding to the maximum value of the path metric of all states is selected as the backtracking starting point. Based on the surviving paths of each state at each moment, backtracking is performed level by level to obtain the demodulated data sequence.

[0088] Since the system in this embodiment and the method in Embodiment 1 are related and can be referenced from each other, this description is redundant and will not be repeated here. Because this system embodiment shares the same principle as the above method embodiment, it also possesses the corresponding technical effects of the above method embodiment.

[0089] In summary, the Viterbi incoherent demodulation method and system of this invention have the following beneficial effects: 1. This invention adopts the Viterbi noncoherent demodulation algorithm based on the forgetting factor, which eliminates the need for carrier phase synchronization of the received signal, and removes complex carrier recovery circuits such as phase-locked loops and Costas loops, greatly reducing the hardware implementation complexity and resource consumption of the receiver, making the demodulation system easier to implement and integrate, and reducing implementation complexity. 2. This invention effectively suppresses the cumulative effect of residual frequency offset during the iteration process by introducing a forgetting factor and historical correlation accumulation in the branch metric calculation. It exhibits good fault tolerance for frequency offset, timing offset, and modulation index offset, and can operate stably in scenarios with rapid channel changes and significant Doppler frequency shift, ensuring demodulation performance. It also possesses strong anti-frequency offset capability and adaptability to harsh channel environments. 3. This invention combines the optimal incoherent detection theory with the Viterbi algorithm. Through iterative updates of relevant cumulative quantities, the performance loss of incoherent demodulation is controlled within an acceptable range, and the demodulation performance is close to that of coherent demodulation. At the same time, the demodulation time is significantly shortened, and the real-time performance and practicality of the algorithm are improved while ensuring performance. It is particularly suitable for application scenarios with limited resources and high real-time requirements, such as satellite communication.

[0090] Those skilled in the art will understand that all or part of the processes of the methods described in the above embodiments can be implemented by a computer program instructing related hardware, and the program can be stored in a computer-readable storage medium. The computer-readable storage medium may be a disk, optical disk, read-only memory, or random access memory, etc.

[0091] The above description is only a preferred embodiment of the present invention, but the scope of protection of the present invention is not limited thereto. Any changes or substitutions that can be easily conceived by those skilled in the art within the scope of the technology disclosed in the present invention should be included within the scope of protection of the present invention.

Claims

1. A Viterbi incoherent demodulation method, characterized in that, Includes the following steps: Step S1: Obtain the received symbol sequence; and initialize the path metric and related cumulative quantity for each state in the state grid at the initial moment of the Viterbi algorithm; Step S2: Based on the preset forgetting factor, the cumulative correlation of the previous state corresponding to each candidate path, and the instantaneous correlation value between the received symbol at the current time and the reference symbol corresponding to each candidate path, calculate the uncorrelated branch metric of each candidate path at the current time. Step S3: Based on the irrelevant branch metrics of each candidate path and the path metrics of the previous time step, calculate the path metrics of each candidate path at the current time step, and select the candidate path with the largest path metric from the multiple candidate paths at the current time step as the surviving path at the current time step. Step S4: Based on the forgetting factor, the cumulative correlation of the previous state corresponding to the selected surviving path, and the instantaneous correlation value corresponding to the surviving path, update the cumulative correlation of the current state reached by the surviving path. Step S5: Repeat steps S2 to S4, processing the received symbol sequence hour by hour until all received symbols have been processed; at the last moment, select the state corresponding to the maximum value from all states' path metrics as the backtracking starting point, and backtrack step by step based on the surviving paths of each state at each moment to obtain the demodulated data sequence.

2. The Viterbi incoherent demodulation method according to claim 1, characterized in that, The Viterbi incoherent demodulation method is used to demodulate QPSK-CPM modulated signals; the received symbol is a QPSK-CPM modulated signal.

3. The Viterbi incoherent demodulation method according to claim 1, characterized in that, For each candidate path, the instantaneous correlation value between the received symbol at the current time and the reference symbol corresponding to the candidate path is calculated according to formula (1), as follows: Official (1) in, This indicates the received symbol at the current time and the state from the previous time. Current state The instantaneous correlation value between the reference symbols corresponding to the candidate paths; , These refer to the current moment and the previous moment, respectively. The symbol interval time. The received symbol at the current moment; The state of the previous moment The conjugate of the corresponding reference symbol.

4. The Viterbi incoherent demodulation method according to claim 3, characterized in that, For each candidate path, the incoherent branch metric of the candidate path at the current time is calculated according to formula (2), as follows: Official (2) in, Indicates the state from the previous moment Current state The incoherent branch metric of candidate paths; Forgetting factor; Indicates the state at the previous moment. The relevant cumulative amount.

5. The Viterbi incoherent demodulation method according to claim 4, characterized in that, For each current state The path metric of the candidate path is calculated according to formula (3), and the surviving path is selected from each candidate path that reaches the current state, as follows: Official (3) in, Indicates the current state Path metrics; Indicates the state at the previous moment. Path metric.

6. The Viterbi incoherent demodulation method according to claim 5, characterized in that, For each current state The relevant cumulative amount of the current state reached by the surviving path is updated according to formula (4) as follows: Official (4) in, Indicates the current state Updated cumulative figures; To reach the current state The state of the previous moment corresponding to the survival path; Indicates the state at the previous moment. The relevant cumulative amount; Indicates from state to state The instantaneous correlation value corresponding to the survival path.

7. The Viterbi incoherent demodulation method according to claim 1, characterized in that, At the final moment, the state corresponding to the maximum value of the path metric from all states is selected as the backtracking starting point. Backtracking is then performed level by level based on the surviving paths of each state at each moment to obtain the demodulated data sequence, including: At the last moment after all received symbols have been processed, the path metrics of all states are compared, and the state corresponding to the maximum value of the path metrics at the last moment is taken as the backtracking starting point. Starting from the backtracking starting point, the surviving paths of each state at each moment are searched sequentially in reverse chronological order to determine the state of the previous moment corresponding to each moment. The backtracking is performed step by step to obtain the complete backtracking path. Based on the state pairs of adjacent time points in the backtracking path, the mapping relationship between the Viterbi state transition and the input bits is found to obtain the input bits corresponding to each time point. The input bits of all time points are concatenated in chronological order to obtain the complete demodulated data sequence.

8. The Viterbi incoherent demodulation method according to any one of claims 1-7, characterized in that, The Viterbi algorithm states that the state grid has 16 states at each time step, and each state at each time step corresponds to 4 forward transition branches, resulting in a total of 64 candidate paths. 64 path metrics are calculated at each time step.

9. The Viterbi incoherent demodulation method according to any one of claims 1-7, characterized in that, The forgetting factor is a positive number less than 1.

10. A Viterbi incoherent demodulation system, characterized in that, The system includes a symbol sequence receiving module M1, a branch metric calculation module M2, a survival path selection module M3, a correlation cumulative update module M4, and a backtracking demodulation module M5; The symbol sequence receiving module M1 is used to acquire the received symbol sequence; and to initialize the path metric and related cumulative quantity for each state in the state grid at the initial moment of the Viterbi algorithm; The branch metric calculation module M2 is used to calculate the unrelated branch metric of each candidate path at the current time based on the preset forgetting factor, the cumulative correlation of the previous state corresponding to each candidate path, and the instantaneous correlation value between the received symbol at the current time and the reference symbol corresponding to each candidate path. The surviving path selection module M3 is used to calculate the path metric of each candidate path at the current time based on the irrelevant branch metric of each candidate path and the path metric of the corresponding previous time step, and select the candidate path with the largest path metric from the multiple candidate paths at the current time step as the surviving path at the current time step. The relevant cumulative update module M4 is used to update the relevant cumulative amount of the current state reached by the survival path based on the forgetting factor, the relevant cumulative amount of the previous state corresponding to the selected survival path, and the instantaneous relevant value corresponding to the survival path. The backtracking demodulation module M5 is used to process the received symbol sequence hour by hour until all received symbols have been processed. At the last moment, the state corresponding to the maximum value of the path metric of all states is selected as the backtracking starting point. Based on the surviving paths of each state at each moment, backtracking is performed level by level to obtain the demodulated data sequence.