Automatic modulation classification method of signals for intelligent oscilloscope

By deploying an LSTM neural network in an FPGA and implementing full pipeline, the computational time and power consumption issues of automatic signal modulation classification in intelligent oscilloscopes are resolved, achieving efficient and low-power signal classification suitable for high-real-time scenarios.

CN119357847BActive Publication Date: 2025-09-26UNIV OF ELECTRONICS SCI & TECH OF CHINA
View PDF 3 Cites 0 Cited by

Patent Information

Application Number
CN202411457320.X
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2024-10-18
Publication Date
2025-09-26
Estimated Expiration
2044-10-18

AI Technical Summary

Technical Problem

The existing LSTM neural network takes a long time to calculate and consumes high power in smart oscilloscopes, making it difficult to meet the high real-time and low-power modulation classification requirements.

Method used

Deploy the LSTM neural network in the FPGA and train it offline. Use the FPGA to implement signal acquisition and classification. Automatic signal modulation and classification are achieved through hardware. Full pipelining is implemented within and between modules to improve computing speed and reduce power consumption.

Benefits of technology

It realizes efficient and low-power automatic signal modulation and classification, meets the needs of high real-time scenarios, and provides flexible adaptability and scalability.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119357847B_ABST
    Figure CN119357847B_ABST
Patent Text Reader

Abstract

The present invention discloses a method for automatic modulation classification of signals for an intelligent oscilloscope. The method comprises the following steps: firstly, deploying an LSTM neural network in an FPGA and conducting offline training; then, subjecting the collected modulation signals to mixing and low-pass filtering to obtain IQ two-channel baseband signals; and finally, converting the IQ two-channel baseband signals into amplitude and phase data, which are then input point by point into the LSTM neural network to realize automatic modulation classification.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention belongs to the technical field of intelligent signal recognition, and more particularly, relates to a signal automatic modulation classification method of an intelligent oscilloscope. Background Art

[0002] Intelligent modulation format recognition refers to the automatic identification of the modulation type of the received signal so that it can be correctly demodulated. It can be used to identify signals affected by noise and multipath fading. As the core technology of intelligent radio, it has wide applications in electronic countermeasures, signal monitoring, electromagnetic environment warning and other fields.

[0003] Mainstream modulation format recognition methods can be roughly divided into two categories: maximum likelihood estimation based on decision theory and pattern recognition methods based on feature extraction. Although the maximum likelihood estimation method can provide the best performance, it faces the problems of high computational complexity, poor robustness and the need to know multiple parameters including signal baud rate and signal-to-noise ratio in practice; the pattern recognition method can effectively avoid the above problems and provide better classification performance.

[0004] Neural networks can be used to perform pattern recognition and classification tasks very well. The long short-term memory neural network (LSTM) is an improved recurrent neural network (RNN). By adding hidden states of neurons, it solves the long-term dependency problem that is common in general RNN networks. It can effectively transmit information in long time series without causing information from a long time ago to be forgotten. At the same time, it can effectively solve the gradient disappearance problem in RNN.

[0005] Existing LSTM neural networks often use general-purpose computing platforms (CPUs and GPUs) for calculations. However, due to their serial execution nature, calculations are time-consuming and the separation of storage and computation introduces significant transmission overhead, making it difficult to meet the computational speed requirements of practical applications. Patent CN 113191494 A discloses a high-efficiency FPGA-based LSTM accelerator. This utilizes an FPGA to construct a computation, cache, and control unit to parallelize matrix operations. This hardware-co-acceleration approach addresses some of the challenges of LSTM neural network applications in low-power, high-throughput scenarios.

[0006] However, the above invention only realizes the pipeline between the matrix-vector multiplication module and its Element_wise operation module, and does not realize the pipeline within the module. In addition, the above invention is essentially based on software, and operations such as data source, data sorting and splicing are completed by software. The hardware accelerator is designed to accelerate matrix operations. Its advantage is that it is relatively flexible and highly portable, but it is difficult to meet the needs of high real-time scenarios. Summary of the Invention

[0007] The purpose of the present invention is to overcome the shortcomings of the existing technology and provide a method for automatic modulation classification of signals for an intelligent oscilloscope. After data acquisition, signal classification is completed through an LSTM neural network. The entire system relies entirely on hardware to maximize the computing speed and meet the high real-time scenario requirements of modulation classification.

[0008] To achieve the above object of the invention, the present invention provides a method for automatically modulating and classifying signals of an intelligent oscilloscope, characterized by comprising the following steps:

[0009] (1) Deploy the LSTM neural network in the FPGA of the acquisition system and train it offline;

[0010] Deploy the LSTM neural network in the FPGA of the acquisition system, and train the LSTM neural network with the data of m modulation formats collected by the ADC in the acquisition system, and then record the input layer weight W after the LSTM neural network training is completed. x , bias B x , hidden layer weight W h , bias B h , and the fully connected layer weight W fc , bias B fc , and sent to the FPGA on-chip RAM for storage;

[0011] (2) Use the acquisition system to collect the signal to be tested;

[0012] The signal to be tested is input into the acquisition system, sampled by the ADC and stored in the FPGA external memory DDR;

[0013] (3) The host computer starts modulation classification and automatically classifies the test signal through the LSTM neural network.

[0014] The object of the invention of the present invention is achieved like this:

[0015] The present invention discloses a method for automatic modulation classification of signals of an intelligent oscilloscope. The method comprises the following steps: firstly deploying an LSTM neural network in an FPGA and conducting offline training; then subjecting the collected modulation signals to frequency mixing and low-pass filtering to obtain IQ two-channel baseband signals; and finally converting the IQ two-channel baseband signals into amplitude and phase data, which are then input point by point into the LSTM neural network to realize automatic modulation classification.

[0016] At the same time, the signal automatic modulation classification method of an intelligent oscilloscope of the present invention also has the following beneficial effects:

[0017] (1) The present invention implements LSTM neural network based on FPGA, which is highly efficient. According to the current computing state, full pipeline is achieved within and between modules. Compared with the implementation using CPU, GPU or hardware accelerator, it has the fastest computing speed and the lowest power consumption. It has practical value in scenarios with high requirements on real-time performance and power consumption, such as modulation classification.

[0018] (2) The present invention proposes a universal FPGA implementation architecture for LSTM neural networks, which is universal and can realize different LSTM networks or adapt to different scenarios by simply modifying the number of parallel paths and computing cycles according to the LSTM network parameters (including input feature dimension, number of hidden layer nodes, etc.) to balance speed and resource consumption requirements.

[0019] (3) The present invention implements LSTM neural network based on FPGA, which is scalable. The matrix calculation method, segmented fitting method to realize nonlinear activation function and pipelining, and resource reuse ideas used in the design can provide a reference for the implementation of other recursive neural networks and feedforward neural networks, and has certain guiding significance. BRIEF DESCRIPTION OF THE DRAWINGS

[0020] Figure 1 This is a flow chart of a signal automatic modulation classification method of an intelligent oscilloscope of the present invention;

[0021] Figure 2 This is the QAM signal acquisition and recognition result diagram; DETAILED DESCRIPTION

[0022] The following describes the specific embodiments of the present invention in conjunction with the accompanying drawings so that those skilled in the art can better understand the present invention. It should be noted that in the following description, when detailed descriptions of known functions and designs may dilute the main content of the present invention, such descriptions will be omitted here.

[0023] Example

[0024] In this embodiment, if Figure 1 As shown, the present invention provides a method for automatically modulating and classifying signals of an intelligent oscilloscope, comprising the following steps:

[0025] (1) Deploy the LSTM neural network in the FPGA of the acquisition system and train it offline;

[0026] The LSTM neural network is deployed in the FPGA of the acquisition system, and the LSTM neural network is trained by using the data of m modulation formats (in this embodiment, m=11, including 8 digital modulation formats: BPSK, 8PSK, QPSK, CPFSK, GFSK, 16-QAM, 64-QAM, 4-PAM and 3 analog modulation formats: AM-DSB, AM-SSB, WBFM) collected by the ADC in the acquisition system. Then, the input layer weight W is recorded after the LSTM neural network training is completed. x , bias B x , hidden layer weight W h , bias B h , and the fully connected layer weight W fc , bias B fc , and sent to the FPGA on-chip RAM for storage;

[0027] In this embodiment, if Figure 1 As shown in the figure, the LSTM neural network consists of 2 LSTM layers, 1 fully connected layer and 1 softmax layer, where each LSTM layer includes an input layer, a hidden layer, a nonlinear activation layer and an output layer.

[0028] (2) Use the acquisition system to collect the signal to be tested;

[0029] The signal to be tested is input into the acquisition system, sampled by the ADC and stored in the FPGA external memory DDR;

[0030] (3) The host computer starts modulation classification and realizes automatic modulation classification of the test signal through the LSTM neural network;

[0031] (3.1) FPGA reads the parameters of the LSTM neural network from the on-chip RAM and initializes the LSTM neural network;

[0032] (3.2) The host computer reads the sampled data required to complete a modulation classification from the DDR. The length of the sampled data is L, which in this embodiment is L=128. The sampled data is then transmitted to the FPGA for digital down-mixing and low-pass filtering to obtain I / Q baseband signals.

[0033] (3.3) Calculate the amplitude A of each sampling point in the I / Q baseband signal t and phase θ t ;

[0034]

[0035] Among them, A t ,θ t Represents the amplitude and phase of the t-th sampling point, I tIndicates the value of the t-th sampling point in the I-channel baseband signal, Q t Indicates the value of the t-th sampling point in the Q-channel baseband signal;

[0036] (3.4), set the input sequence X = [X1, X2, ..., X t ,…,X L ], X t =[A t θ t ]X t Represents the tth input data;

[0037] (3.5), initialize t = 1, input data X t Input to LSTM neural network, input data X t After passing through the input layer of the first LSTM layer, the output X of the input layer in the first LSTM layer is obtained. t W x ;

[0038] In order to improve the computational efficiency and make full use of the FPGA characteristics, multi-channel parallel computing is adopted. However, when the weight matrix parameters are large (i.e., the hidden layer neuron nodes are large), due to the limited FPGA resources, the matrix X t W x The calculation is divided into multiple cycles. Since the calculations between neurons in the output layer are independent and four gating signals of neurons are required, the calculation is performed in a 4N-way parallel manner, which takes n / N cycles to complete. n represents the number of neuron nodes. The N parameter is selected by weighing the calculation speed and resource consumption. In this embodiment, n=128 and N=1;

[0039] (3.6) The output H of the hidden layer in the first LSTM layer t-1 W h , H t-1 Represents the state of the hidden layer at time t-1;

[0040] Since the weight matrix W h It is a matrix with n rows and 4n columns, and the calculation of the output layer is subject to the weight matrix W h Due to the limitation of computing speed, the hidden layer is expected to have a faster computing speed. The hidden layer is a feedback link that needs to match the data rate of the previous and subsequent stages at the same time. Its output layer outputs N data per cycle, and its subsequent summation module inputs 4N data per cycle. Therefore, some modifications are made to the matrix calculation method of the hidden layer. The matrix operation performed by this layer is:

[0041]

[0042] Taking two cycles as an example, the output of the front stage in the first cycle is h1, and we can calculate:

[0043]

[0044] And adding them together we get:

[0045]

[0046] The output of the front stage in the second cycle is [h N+1 h N+2 … h 2N ], we can calculate:

[0047]

[0048] And adding them together we get:

[0049]

[0050] Adding it to the output of the previous cycle gives:

[0051]

[0052] By analogy, according to this calculation scheme, without any cache slowdown within the computation unit, 4nN parallel computations are used to complete the entire matrix operation in n / N cycles. This computation unit consumes 4nN multiplier resources and 4nN two-input adders.

[0053] (3.7) The output X of the input layer in the first LSTM layer t W x , the output H of the hidden layer t-1 W h and the sum of the input layer and hidden layer bias B x+h Sum them together to get the input gate I t 、Forget Gate F t , candidate memory element and output gate O t ;

[0054]

[0055] Among them, B x+h =B x +B h ;

[0056] (3.8), for input gate I t 、Forget Gate F t and output gate O t The sigmoid function is used for nonlinear activation to select candidate memory elements. Use tanh function for nonlinear activation;

[0057] In this embodiment, the activation function is implemented by piecewise fitting. After simulation testing, the fitting effect of the sigmoid and tanh functions using a cubic polynomial is better; the derivative of the activation function is close to 0 in the interval (8, +∞); the absolute value of the derivative of the activation function is large in the interval (-1.5, 1.5], so the number of segments in this interval is large; both activation functions are symmetrical, and the interval is divided into (0, 0.5), (0.5, 1), (1, 1.5), (1.5, 3), (1.5, 3), (5, 8), (8, -∞), and each interval is fitted with a different polynomial. The negative interval is obtained by using symmetry.

[0058] In the specific implementation, we first roughly segment the input data into four segments: (-∞, -8], (-8, 0), [0, 8), and [8, +∞). Then, we convert the negative numbers into positive numbers x for calculation. We take the tanh function fitting polynomial of the data x as an example:

[0059] Ax 3 +Bx 2 +Cx+D

[0060] This module requires a total of 5 multipliers and 3 adders. Starting from an x, the module uses the lower 3 bits of the integer part and the highest bit of the decimal part to subdivide the interval [0, 8). Based on this, the corresponding segment A, B, C, D coefficients are read from the ROM to complete the calculation. The output is selected by the 4-to-1 data selector according to the coarse segmentation result: if the input data belongs to (-∞, -8), the output is -1; if the input data belongs to [8, +∞), the output is 1; if the input data belongs to [0, 8), the output is Ax 3 +Bx 2 +Cx+D; if the input data is (-8, 0), the output is -(Ax 3 +Bx 2 +Cx+D).

[0061] (3.9) Calculate the current memory element C t and hidden state H t ;

[0062]

[0063] H t =O t ⊙Tanh(C t )

[0064] Among them, ⊙ represents the multiplication of corresponding elements of the matrix;

[0065] (3.9) The current hidden state H in the hidden layer of the first LSTM layer t As the input of the second LSTM layer, that is: Xt =H t Then, follow steps (3.5) to (3.9) to complete the second LSTM layer processing and obtain the hidden state H of the hidden layer in the second LSTM layer at the current time t. t ;

[0066] (3.10), traverse the input sequence X = [X1, X2, ..., X t ,…,X L ], and finally obtain the hidden state H of the hidden layer in the second LSTM layer at the Lth moment. L ;

[0067] (3.11), the hidden state H at the Lth moment L Input to the fully connected layer, and obtain a set of probability vectors P=[p1,p2,…,p m ], p m Indicates the probability value of the signal to be tested belonging to the mth modulation type;

[0068] (3.12), the probability vector P = [p1, p2, ..., p m ] is input to the softmax layer, the maximum probability value is output, and the modulation type corresponding to the maximum probability value is used as the modulation classification result of the test signal. The classification result is as follows Figure 2 shown.

[0069] Although the above describes the illustrative specific embodiments of the present invention to facilitate understanding of the present invention by those skilled in the art, it should be clear that the present invention is not limited to the scope of the specific embodiments. For those skilled in the art, as long as various changes are within the spirit and scope of the present invention as defined and determined by the appended claims, these changes are obvious, and all inventions and creations using the concepts of the present invention are protected.

Claims

1. A method for automatic modulation classification of signals of an intelligent oscilloscope, characterized in that: The following steps are involved: (1) Deploy the LSTM neural network in the FPGA of the acquisition system and train it offline; Deploy the LSTM neural network in the FPGA of the acquisition system, and train the LSTM neural network with the data of m modulation formats collected by the ADC in the acquisition system, and then record the input layer weight W after the LSTM neural network training is completed. x , bias B x , hidden layer weight W h , bias B h , and the fully connected layer weight W fc , bias B fc , and sent to the FPGA on-chip RAM for storage; (2) Use the acquisition system to collect the signal to be tested; The signal to be tested is input into the acquisition system, sampled by the ADC and stored in the FPGA external memory DDR; (3) The host computer starts modulation classification and realizes automatic modulation classification of the test signal through the LSTM neural network; (3.1) The host computer reads the parameters of the LSTM neural network from the on-chip RAM and initializes the LSTM neural network; (3.2) The host computer reads the sampled data required to complete a modulation classification from the DDR. The sampled data has a length of L. The sampled data is then transferred to the FPGA for digital down-mixing and low-pass filtering to obtain the I / Q baseband signals. (3.3) Calculate the amplitude A of each sampling point in the I / Q baseband signal t and phase θ t ; Among them, A t ,θ t Represents the amplitude and phase of the t-th sampling point, I t Indicates the value of the t-th sampling point in the I-channel baseband signal, Q t Indicates the value of the t-th sampling point in the Q-channel baseband signal; (3.4), set the input sequence X = [X1, X2, ..., X t ,…,X L ], X t =[A t θ t ], X t Represents the tth input data; (3.5), initialize t = 1, input data X t Input to LSTM neural network, input data X t After passing through the input layer of the first LSTM layer, the output X of the input layer in the first LSTM layer is obtained. t W x ; (3.6) The output H of the hidden layer in the first LSTM layer t-1 W h , H t-1 Represents the state of the hidden layer at time t-1; (3.7) The output X of the input layer in the first LSTM layer t W x , the output H of the hidden layer t-1 W h and the sum of the input layer and hidden layer bias B x+h Sum them together to get the input gate I t 、Forget Gate F t , candidate memory element and output gate O t ; Among them, B x+h =B x +B h ; (3.8), for input gate I t 、Forget Gate F t and output gate O t The sigmoid function is used for nonlinear activation to select candidate memory elements. Use tanh function for nonlinear activation; (3.9) Calculate the current memory element C t and hidden state H t ; H t =O t ⊙Tanh(C t ) Among them, ⊙ represents the multiplication of corresponding elements of the matrix; (3.9) The current hidden state H in the hidden layer of the first LSTM layer t As the input of the second LSTM layer, that is: X t =H t Then, follow steps (3.5) to (3.9) to complete the second LSTM layer processing and obtain the hidden state H of the hidden layer in the second LSTM layer at the current time t. t ; (3.10), traverse the input sequence X = [X1, X2, ..., X t ,…,X L ], and finally obtain the hidden state H of the hidden layer in the second LSTM layer at the Lth moment. L ; (3.11), the hidden state H at the Lth moment L Input to the fully connected layer, and obtain a set of probability vectors P=[p1,p2,…,p m ], p m Indicates the probability value of the signal to be tested belonging to the mth modulation type; (3.12), the probability vector P = [p1, p2, ..., p m ] is input to the softmax layer, the maximum probability value is output, and the modulation type corresponding to the maximum probability value is used as the modulation classification result of the test signal.

2. The method for automatically modulating and classifying signals of an intelligent oscilloscope according to claim 1, wherein: The LSTM neural network includes two LSTM layers, one fully connected layer and one softmax layer, wherein each LSTM layer includes an input layer, a hidden layer, a nonlinear activation layer and an output layer.

3. The automatic modulation classification method for signals of an intelligent oscilloscope according to claim 1, wherein: The sigmoid function and the tanh function both use a cubic polynomial piecewise fitting method to achieve nonlinear activation.

Citation Information

Patent Citations

  • Efficient LSTM accelerator based on FPGA

    CN113191494A

  • Signal modulation classification method based on convolutional neural network

    CN108764077A

  • Automatic modulation classification method based on deep learning network fusion

    CN115563468A