CN109981517B - QPSK neural network demodulator based on FPGA and control method thereof - Google Patents
QPSK neural network demodulator based on FPGA and control method thereof Download PDFInfo
- Publication number
- CN109981517B CN109981517B CN201910059841.2A CN201910059841A CN109981517B CN 109981517 B CN109981517 B CN 109981517B CN 201910059841 A CN201910059841 A CN 201910059841A CN 109981517 B CN109981517 B CN 109981517B
- Authority
- CN
- China
- Prior art keywords
- data
- module
- sampling
- fpga
- demodulator
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 29
- 238000013528 artificial neural network Methods 0.000 title claims abstract description 19
- 230000035772 mutation Effects 0.000 claims abstract description 43
- 238000005070 sampling Methods 0.000 claims abstract description 38
- 238000001514 detection method Methods 0.000 claims abstract description 26
- 239000000872 buffer Substances 0.000 claims abstract description 20
- 238000006243 chemical reaction Methods 0.000 claims abstract description 16
- 230000008859 change Effects 0.000 claims abstract description 14
- 230000001360 synchronised effect Effects 0.000 claims abstract description 7
- 238000013527 convolutional neural network Methods 0.000 claims description 19
- 238000010586 diagram Methods 0.000 claims description 10
- 230000003139 buffering effect Effects 0.000 claims description 7
- 230000003993 interaction Effects 0.000 claims description 5
- 230000010363 phase shift Effects 0.000 claims 1
- 230000008569 process Effects 0.000 abstract description 9
- 238000012549 training Methods 0.000 abstract description 5
- 230000001427 coherent effect Effects 0.000 description 6
- 238000012545 processing Methods 0.000 description 6
- 230000005540 biological transmission Effects 0.000 description 3
- 238000004364 calculation method Methods 0.000 description 3
- 238000004891 communication Methods 0.000 description 3
- 230000006870 function Effects 0.000 description 3
- 210000002569 neuron Anatomy 0.000 description 3
- 238000013461 design Methods 0.000 description 2
- 238000011161 development Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 230000004913 activation Effects 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000015572 biosynthetic process Effects 0.000 description 1
- 239000000470 constituent Substances 0.000 description 1
- 239000013078 crystal Substances 0.000 description 1
- 230000003111 delayed effect Effects 0.000 description 1
- 230000007613 environmental effect Effects 0.000 description 1
- 238000002474 experimental method Methods 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000004377 microelectronic Methods 0.000 description 1
- 238000007781 pre-processing Methods 0.000 description 1
- 230000003252 repetitive effect Effects 0.000 description 1
- 230000002441 reversible effect Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 210000000225 synapse Anatomy 0.000 description 1
- 238000003786 synthesis reaction Methods 0.000 description 1
- 230000009466 transformation Effects 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L27/00—Modulated-carrier systems
- H04L27/32—Carrier systems characterised by combinations of two or more of the types covered by groups H04L27/02, H04L27/10, H04L27/18 or H04L27/26
- H04L27/34—Amplitude- and phase-modulated carrier systems, e.g. quadrature-amplitude modulated carrier systems
- H04L27/3405—Modifications of the signal space to increase the efficiency of transmission, e.g. reduction of the bit error rate, bandwidth, or average power
- H04L27/3444—Modifications of the signal space to increase the efficiency of transmission, e.g. reduction of the bit error rate, bandwidth, or average power by applying a certain rotation to regular constellations
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L27/00—Modulated-carrier systems
- H04L27/32—Carrier systems characterised by combinations of two or more of the types covered by groups H04L27/02, H04L27/10, H04L27/18 or H04L27/26
- H04L27/34—Amplitude- and phase-modulated carrier systems, e.g. quadrature-amplitude modulated carrier systems
- H04L27/38—Demodulator circuits; Receiver circuits
- H04L27/3845—Demodulator circuits; Receiver circuits using non - coherent demodulation, i.e. not using a phase synchronous carrier
- H04L27/3854—Demodulator circuits; Receiver circuits using non - coherent demodulation, i.e. not using a phase synchronous carrier using a non - coherent carrier, including systems with baseband correction for phase or frequency offset
- H04L27/3863—Compensation for quadrature error in the received signal
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L27/00—Modulated-carrier systems
- H04L27/32—Carrier systems characterised by combinations of two or more of the types covered by groups H04L27/02, H04L27/10, H04L27/18 or H04L27/26
- H04L27/34—Amplitude- and phase-modulated carrier systems, e.g. quadrature-amplitude modulated carrier systems
- H04L27/38—Demodulator circuits; Receiver circuits
- H04L27/3845—Demodulator circuits; Receiver circuits using non - coherent demodulation, i.e. not using a phase synchronous carrier
- H04L27/3854—Demodulator circuits; Receiver circuits using non - coherent demodulation, i.e. not using a phase synchronous carrier using a non - coherent carrier, including systems with baseband correction for phase or frequency offset
- H04L27/3872—Compensation for phase rotation in the demodulated signal
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Digital Transmission Methods That Use Modulated Carrier Waves (AREA)
Abstract
本发明涉及一种基于FPGA的QPSK神经网络解调器,包括:时钟和复位模块,用于发送时钟信号和复位信号;AD采样模块,用于对待解调信号采样获取采样数据;输入缓冲模块,用于接收和缓存采样数据,并对采样数据进行时钟域转换;相位突变检测模块,用于检测时钟域转换后的采样数据中的相对相位变化,并输出相位突变信息;星座旋转和数据翻转模块,用于接收并处理相位突变信息,形成基带数据;同步输出模块,用于同步判决基带数据,生成并输出解调数据。本发明提出的解调器,参数复杂度低,结构稳定性高,能够通过有针对性的训练提高解调器对特殊环境的适应力,运用时间延迟网进行一维卷积运算,降低了计算复杂度,提高了硬件资源使用效率。
The invention relates to an FPGA-based QPSK neural network demodulator, comprising: a clock and reset module, which is used for sending a clock signal and a reset signal; an AD sampling module, which is used for sampling the to-be-demodulated signal to obtain sampling data; an input buffer module, It is used to receive and buffer the sampled data, and perform clock domain conversion on the sampled data; the phase mutation detection module is used to detect the relative phase change in the sampled data after clock domain conversion, and output the phase mutation information; the constellation rotation and data inversion module , which is used to receive and process phase mutation information to form baseband data; the synchronous output module is used to synchronously judge baseband data, and generate and output demodulated data. The demodulator proposed by the invention has low parameter complexity and high structural stability, can improve the demodulator's adaptability to special environments through targeted training, and uses a time delay network to perform one-dimensional convolution operations, thereby reducing computational costs. complexity, and improve the efficiency of hardware resource use.
Description
技术领域technical field
本发明属于数字通信技术领域,具体涉及一种基于FPGA的QPSK神经网络解调器及其控制方法。The invention belongs to the technical field of digital communication, in particular to an FPGA-based QPSK neural network demodulator and a control method thereof.
背景技术Background technique
调制解调环节是数字通信系统中至关重要的过程,所谓调制,是为了便于信号的发射,将基带信号加载到较高频率的电磁波信号上的过程,而解调则是调制的反向过程,是将信号由较高频率搬移至低频的过程。通常来讲,解调器的输入信号在传输、接收的过程中会引入很多的非理想因素,包括环境噪声、多径效应、接收设备电磁干扰等。这些因素的存在对解调器的性能提出了更高的要求,可以说,解调器性能的好坏很大程度上影响着整个通信系统性能的好坏。The modulation and demodulation link is a crucial process in the digital communication system. The so-called modulation is the process of loading the baseband signal onto the higher frequency electromagnetic wave signal in order to facilitate the transmission of the signal, and the demodulation is the reverse process of the modulation. , is the process of moving the signal from higher frequencies to lower frequencies. Generally speaking, the input signal of the demodulator will introduce many non-ideal factors in the process of transmission and reception, including environmental noise, multipath effect, electromagnetic interference of receiving equipment, etc. The existence of these factors puts forward higher requirements on the performance of the demodulator. It can be said that the performance of the demodulator largely affects the performance of the entire communication system.
卷积神经网络作为一类典型的前馈型多层神经网络,能够从大量数据中自动提取复杂特征,进行自主学习,并且对输入图像要求不高,不需要对输入图像进行繁杂的前期预处理。因为卷积神经网络自身特定的网络结构,其识别能力不易受到图像中图形畸变或简单几何变换的影响,对有一些细微变化的识别对象也有较好的识别效果。其中,一维卷积神经网络由于其一维输入的结构特性,特别适合处理离散时间序列。而对调制信号的高速AD采样数据正是这样的一组序列,如果将其输入一维卷积神经网络,可以通过对其中一些特征的检测,进而解析出调制信号中所携带的信息。这种方法与传统的解调方法有其特有的优势,首先,可以通过实验,构建稳定的网络结构,使其对输入信号的参数扰动不敏感,提高其鲁棒性。其次,由于一维卷积神经网络对信息的识别能力是通过训练得到的,在应对特殊信道环境时,可以通过设计大量的、有特点的训练数据来提升一维卷积神经网络的适应能力,使其更好的适应频偏等特殊条件。As a typical feedforward multi-layer neural network, convolutional neural network can automatically extract complex features from a large amount of data and perform autonomous learning, and does not require high input images, and does not require complicated pre-processing of input images. . Because of the specific network structure of the convolutional neural network, its recognition ability is not easily affected by graphic distortion or simple geometric transformation in the image, and it also has a good recognition effect on the recognition objects with some subtle changes. Among them, the one-dimensional convolutional neural network is particularly suitable for processing discrete time series due to the structural characteristics of its one-dimensional input. The high-speed AD sampling data of the modulated signal is just such a set of sequences. If it is input into a one-dimensional convolutional neural network, the information carried in the modulated signal can be analyzed by detecting some of the features. This method has its unique advantages compared with the traditional demodulation method. First, a stable network structure can be constructed through experiments, making it insensitive to the parameter disturbance of the input signal and improving its robustness. Secondly, since the ability of one-dimensional convolutional neural networks to identify information is obtained through training, when dealing with special channel environments, the adaptability of one-dimensional convolutional neural networks can be improved by designing a large number of characteristic training data. It can better adapt to special conditions such as frequency offset.
随着微电子制造工艺和集成电路设计的进步,卷积神经网络的硬件实现方案也越来越多样,其中现场可编程门阵列(Field Programmable Gate Array,FPGA)以其稳定可靠、资源丰富、可重复编程、功耗低且速度快的优点,成为了卷积神经网络硬件实现的最佳选择。近年来,基于FPGA的高层次综合工具的发展,极大的降低了FPGA设计的开发难度,使FPGA实现复杂算法更加方便快捷。With the advancement of microelectronics manufacturing process and integrated circuit design, the hardware implementation schemes of convolutional neural networks are becoming more and more diverse. Among them, Field Programmable Gate Array (FPGA) is stable, reliable, resource-rich and can The advantages of repetitive programming, low power consumption, and high speed make it the best choice for hardware implementation of convolutional neural networks. In recent years, the development of high-level synthesis tools based on FPGA has greatly reduced the development difficulty of FPGA design and made it easier and faster to implement complex algorithms on FPGA.
在传统解调器中,一般采用相干解调和非相干解调两种方法。其中,相干解调由于其良好的抗噪声性能而得到了更广泛的应用。相干解调主要针对线性调制信号的解调,其实现方法是在接收端恢复出一个与调制载波严格同步的相干载波,进而进行混频,判决。相干载波的质量,直接关系到解调器性能的优劣。在这种方法中,存在大量的可配置参数,包括滤波参数、数控振荡器参数、鉴相参数、环路参数等等,每一个参数都可能对解调性能造成影响,这就造成解调器的鲁棒性较差,且不能针对某种特殊环境,例如频偏进行有针对性的升级改进。In traditional demodulators, two methods of coherent demodulation and non-coherent demodulation are generally used. Among them, coherent demodulation has been more widely used due to its good anti-noise performance. Coherent demodulation is mainly aimed at the demodulation of linearly modulated signals, and its realization method is to recover a coherent carrier that is strictly synchronized with the modulated carrier at the receiving end, and then conduct frequency mixing and judgment. The quality of the coherent carrier is directly related to the performance of the demodulator. In this method, there are a large number of configurable parameters, including filter parameters, numerically controlled oscillator parameters, phase detection parameters, loop parameters, etc., each parameter may affect the demodulation performance, which causes the demodulator The robustness is poor, and can not be upgraded and improved in a targeted manner for a special environment, such as frequency offset.
发明内容SUMMARY OF THE INVENTION
为了解决现有技术中存在的上述问题,本发明提供了一种基于FPGA的QPSK神经网络解调器及其控制方法。本发明要解决的技术问题通过以下技术方案实现:In order to solve the above problems existing in the prior art, the present invention provides an FPGA-based QPSK neural network demodulator and a control method thereof. The technical problem to be solved by the present invention is realized by the following technical solutions:
本发明实施例提供了一种基于FPGA的QPSK神经网络解调器,包括:An embodiment of the present invention provides an FPGA-based QPSK neural network demodulator, including:
时钟和复位模块,用于发送时钟信号和复位信号;Clock and reset module, used to send clock signal and reset signal;
AD采样模块,用于对待解调信号采样获取采样数据;AD sampling module, used for sampling the demodulated signal to obtain sampling data;
输入缓冲模块,用于接收和缓存所述采样数据,并对所述采样数据进行时钟域转换;an input buffer module for receiving and buffering the sampled data, and performing clock domain conversion on the sampled data;
相位突变检测模块,用于检测时钟域转换后的所述采样数据中的相对相位变化,并输出相位突变信息;a phase mutation detection module, configured to detect the relative phase change in the sampled data after clock domain conversion, and output phase mutation information;
星座旋转和数据翻转模块,用于接收并处理所述相位突变信息,形成基带数据;a constellation rotation and data inversion module for receiving and processing the phase mutation information to form baseband data;
同步输出模块,用于同步判决所述基带数据,生成并输出解调数据。The synchronous output module is used for synchronously judging the baseband data, and generating and outputting demodulated data.
在本发明的一个实施例中,还包括:PCIe交互模块,用于将网络参数输入到FPGA。In an embodiment of the present invention, the method further includes: a PCIe interaction module, configured to input network parameters to the FPGA.
在本发明的一个实施例中,还包括:参数存储模块,用于接收、存储并转发所述网络参数。In an embodiment of the present invention, it further includes: a parameter storage module, configured to receive, store and forward the network parameters.
在本发明的一个实施例中,所述相位突变检测模块包括:多个在FPGA内实现的一维卷积神经网络。In an embodiment of the present invention, the phase mutation detection module includes: a plurality of one-dimensional convolutional neural networks implemented in an FPGA.
在本发明的一个实施例中,所述一维卷积神经网络包括:一个输入层、一个卷积层、一个隐含层和一个输出层,以及辅助的输入缓存、输出缓存和控制模块。In an embodiment of the present invention, the one-dimensional convolutional neural network includes: an input layer, a convolutional layer, a hidden layer and an output layer, and auxiliary input buffer, output buffer and control module.
本发明另一个实施例提供了一种基于FPGA的QPSK神经网络解调器的控制方法,包括:Another embodiment of the present invention provides a control method of an FPGA-based QPSK neural network demodulator, including:
发送时钟信号和复位信号;Send clock signal and reset signal;
对待解调信号采样获取采样数据;Obtain sampling data by sampling the demodulated signal;
接收和缓存所述采样数据,并对所述采样数据进行时钟域转换;receiving and buffering the sampled data, and performing clock domain conversion on the sampled data;
检测时钟域转换后的所述采样数据中的相对相位变化,并输出相位突变信息;Detecting the relative phase change in the sampled data after clock domain conversion, and outputting phase mutation information;
接收并处理所述相位突变信息,形成基带数据;receiving and processing the phase mutation information to form baseband data;
同步判决所述基带数据,生成并输出解调数据。The baseband data is judged synchronously, and demodulated data is generated and output.
在本发明的一个实施例中,在发送时钟信号和复位信号之前,还包括:将网络参数存储到参数存储模块。In an embodiment of the present invention, before sending the clock signal and the reset signal, the method further includes: storing the network parameters in the parameter storage module.
在本发明的一个实施例中,在对待解调信号采样获取采样数据之前,还包括:将网络参数输入到FPGA。In an embodiment of the present invention, before sampling the to-be-demodulated signal to obtain sampled data, the method further includes: inputting network parameters into the FPGA.
与现有技术相比,本发明的有益效果:Compared with the prior art, the beneficial effects of the present invention:
1.本发明提出的解调器,将QPSK调制信号中的相对相位突变作为一种特征,利用在FPGA中实现的相位突变检测模块对其进行特征检测,分别检测QPSK调制信号中三种相对相位变化,利用在FPGA中实现的星座旋转和数据翻转模块根据相位突变的类型和时机输出解调数据波形,进而完成解调。1. The demodulator proposed by the present invention takes the relative phase sudden change in the QPSK modulated signal as a feature, and uses the phase sudden change detection module implemented in the FPGA to perform feature detection on it, and respectively detects three kinds of relative phases in the QPSK modulated signal. Change, use the constellation rotation and data inversion module implemented in the FPGA to output the demodulated data waveform according to the type and timing of the phase sudden change, and then complete the demodulation.
2.本发明提出的解调器,参数复杂度低,结构稳定性高,能够通过有针对性的训练提高解调器对特殊环境的适应力,运用时间延迟网进行一维卷积运算,降低了计算复杂度,提高了硬件资源使用效率。2. The demodulator proposed by the present invention has low parameter complexity and high structural stability, and can improve the adaptability of the demodulator to special environments through targeted training, and uses a time delay network to perform one-dimensional convolution operations to reduce It reduces the computational complexity and improves the utilization efficiency of hardware resources.
附图说明Description of drawings
图1为本发明实施例提供的一种基于FPGA的QPSK神经网络解调器的结构示意图;1 is a schematic structural diagram of an FPGA-based QPSK neural network demodulator provided by an embodiment of the present invention;
图2为本发明实施例提供的一种基于FPGA的QPSK神经网络解调器中待解调信号的波形示意图;2 is a schematic waveform diagram of a signal to be demodulated in an FPGA-based QPSK neural network demodulator provided by an embodiment of the present invention;
图3为本发明实施例提供的一种基于FPGA的QPSK神经网络解调器的工作过程示意图;3 is a schematic diagram of a working process of an FPGA-based QPSK neural network demodulator provided by an embodiment of the present invention;
图4为本发明实施例提供的另一种基于FPGA的QPSK神经网络解调器中一维卷积神经网络结构示意图;4 is a schematic structural diagram of a one-dimensional convolutional neural network in another FPGA-based QPSK neural network demodulator provided by an embodiment of the present invention;
图5为本发明实施例提供的再一种基于FPGA的QPSK神经网络解调器中一维Same卷积运算示意图;5 is a schematic diagram of one-dimensional Same convolution operation in yet another FPGA-based QPSK neural network demodulator provided by an embodiment of the present invention;
图6为本发明实施例提供的又一种基于FPGA的QPSK神经网络解调器中时间延迟网结构示意图;6 is a schematic structural diagram of a time delay network in another FPGA-based QPSK neural network demodulator provided by an embodiment of the present invention;
图7为本发明实施例提供的又一种基于FPGA的QPSK神经网络解调器的控制方法的流程示意图。FIG. 7 is a schematic flowchart of another control method of an FPGA-based QPSK neural network demodulator provided by an embodiment of the present invention.
具体实施方式Detailed ways
下面结合具体实施例对本发明做进一步详细的描述,但本发明的实施方式不限于此。The present invention will be described in further detail below with reference to specific embodiments, but the embodiments of the present invention are not limited thereto.
实施例一Example 1
请参见图1,图1为本发明实施例提供的一种基于FPGA的QPSK神经网络解调器的结构示意图。Please refer to FIG. 1. FIG. 1 is a schematic structural diagram of an FPGA-based QPSK neural network demodulator according to an embodiment of the present invention.
本发明实施例提供了一种基于FPGA的QPSK神经网络解调器,包括:An embodiment of the present invention provides an FPGA-based QPSK neural network demodulator, including:
时钟和复位模块,用于发送时钟信号和复位信号;Clock and reset module, used to send clock signal and reset signal;
AD采样模块,用于对待解调信号采样获取采样数据;AD sampling module, used for sampling the demodulated signal to obtain sampling data;
输入缓冲模块,用于接收和缓存采样数据,并对采样数据进行时钟域转换;The input buffer module is used to receive and buffer the sampled data, and perform clock domain conversion on the sampled data;
相位突变检测模块,用于检测时钟域转换后的采样数据中的相对相位变化,并输出相位突变信息;The phase mutation detection module is used to detect the relative phase change in the sampled data after clock domain conversion, and output the phase mutation information;
星座旋转和数据翻转模块,用于接收并处理相位突变信息,形成基带数据;Constellation rotation and data inversion module for receiving and processing phase mutation information to form baseband data;
同步输出模块,用于同步判决基带数据,生成并输出解调数据。The synchronous output module is used for synchronously judging baseband data, and generating and outputting demodulated data.
具体地,时钟和复位模块发送时钟信号和复位信号两种信号,时钟信号在系统工作时一直存在,复位信号只在发送复位信号时存在。输入缓冲模块位于解调器的最前端,用于完成输入缓冲采样数据的功能。解调器的前级是AD采样模块,在二者进行数据传输时,输入缓冲模块根据AD采样模块给出的采样同步时钟完成数据接收,而这一采样同步时钟相比于FPGA内时钟是不稳定的,不能直接为后级所用,因此,这里通过在输入缓冲模块设置一个FIFO作信号线的跨时钟域处理,输出数据宽度等于输入信号宽度,利用FPGA上的时钟作为数据的同步输出时钟。Specifically, the clock and reset module sends two signals, a clock signal and a reset signal. The clock signal always exists when the system is working, and the reset signal exists only when the reset signal is sent. The input buffer module is located at the front end of the demodulator, and is used to complete the function of input buffer sample data. The front stage of the demodulator is the AD sampling module. When the two perform data transmission, the input buffer module completes the data reception according to the sampling synchronization clock given by the AD sampling module, and this sampling synchronization clock is different from the clock in the FPGA. It is stable and cannot be used directly by the subsequent stage. Therefore, here, a FIFO is set in the input buffer module for the cross-clock domain processing of the signal line, the output data width is equal to the input signal width, and the clock on the FPGA is used as the synchronous output clock of the data.
解调器的时钟由外部晶体振荡器经FPGA内部PLL锁相之后产生,通过全局时钟网络提供给各个模块,以保证时钟到达各个模块的延迟相同。The clock of the demodulator is generated by the external crystal oscillator after being phase-locked by the internal PLL of the FPGA, and is provided to each module through the global clock network to ensure that the delay of the clock reaching each module is the same.
时钟和复位模块还用于产生解调器运行的复位信号,复位信号包括两级,第一级是时钟复位,即解调器上电之后,PLL由复位开始工作;第二级复位是程序复位,待PLL进入锁定状态后,所有模块由复位状态进入工作状态,这样的结构可以有效地避免上电初期时钟不稳定带来的逻辑错乱。The clock and reset module is also used to generate a reset signal for demodulator operation. The reset signal includes two stages. The first stage is clock reset, that is, after the demodulator is powered on, the PLL starts to work from reset; the second stage reset is program reset. After the PLL enters the locked state, all modules enter the working state from the reset state. This structure can effectively avoid the logic disorder caused by the unstable clock at the initial stage of power-on.
特别地,本发明具体实施例中,还包括:PCIe交互模块,用于将网络参数输入到FPGA。In particular, the specific embodiment of the present invention further includes: a PCIe interaction module, configured to input network parameters to the FPGA.
PCIe交互模块用于完成通用计算机和FPGA之间的信息交互,主要将训练好的网络参数输入FPGA内,并将解调数据输出至计算机做进一步分析处理。The PCIe interaction module is used to complete the information interaction between the general-purpose computer and the FPGA. It mainly inputs the trained network parameters into the FPGA, and outputs the demodulated data to the computer for further analysis and processing.
特别地,本发明具体实施例中,还包括:参数存储模块,用于接收、存储并转发所述网络参数。In particular, in a specific embodiment of the present invention, it further includes: a parameter storage module, configured to receive, store and forward the network parameters.
参数存储模块主要利用FPGA内的BRAM资源,形成块状存储阵列,以存储网络参数,在FPGA复位之前由上位机将网络参数存储到参数存储模块中,在复位之后将网络参数输入到FPGA,网络参数在FPGA中只被使用不被修改。该模块在上电后通过PCIe接口读入网络参数,并在需要时提供给相位突变检测模块。The parameter storage module mainly uses the BRAM resources in the FPGA to form a block storage array to store network parameters. Before the FPGA is reset, the host computer stores the network parameters in the parameter storage module. Parameters are only used and not modified in the FPGA. After the module is powered on, it reads in network parameters through the PCIe interface, and provides it to the phase mutation detection module when needed.
特别地,本发明具体实施例中,相位突变检测模块包括:多个在FPGA内实现的一维卷积神经网络。In particular, in the specific embodiment of the present invention, the phase mutation detection module includes: a plurality of one-dimensional convolutional neural networks implemented in FPGA.
具体地,相位突变检测模块是解调器的核心,包括:三个在FPGA内实现的一维卷积神经网络,分别检测QPSK待解调信号中π/2型、-π/2型和π型三种相对相位变化,并输出相位突变信息。Specifically, the phase mutation detection module is the core of the demodulator, including: three one-dimensional convolutional neural networks implemented in FPGA to detect π/2, -π/2 and π in the QPSK signal to be demodulated respectively. Type three relative phase changes, and output phase mutation information.
具体地,参照图2和图3,待解调信号波形如图2所示,易知QPSK信号中的相对相位变化包括π/2型、-π/2型和π型三类。解调器的工作过程如图3所示,解调器上电之后,时钟和复位模块依次给出时钟信号和复位信号,然后对待解调信号进行AD采样,形成离散的时间序列,将该序列输入到输入缓冲模块进行数据缓冲和时钟域转换。随后,时钟域转换后的采用数据被以滑动窗口的形式输入相位突变检测模块,同时参数存储模块给出对应网络参数,星座旋转和数据翻转模块对IQ两路数据线初始化;在相位突变检测中,相位突变检测模块根据事先训练好的网络参数进行计算,其计算结果输出的规则为:假如相位突变检测模块在当前的输入中检测到了某种相位突变,那么输出1,否则输出0。相位突变检测模块的输出是一列速率与AD采样速率相同的离散序列,其形状表现为在某种相位突变发生时出现一个脉冲;星座旋转和数据翻转模块对相位突变检测模块的输出序列进行脉冲检测,根据相位突变的种类对星座图进行翻转,以上一个码元所对应的星座位置为起点,按照相位变化的类型进行旋转,当发生π/2型相位突变则顺时针旋转90°,当发生-π/2型相位突变则逆时针旋转90°,当发生π型相位突变则旋转180°,旋转所得即为当前码元对应的星座位置,根据当前码元对应的星座位置对IQ两路路数据线进行翻转,就得到了IQ两路数据波形;随后,同步输出模块,根据码速率对IQ两路数据波形进行采样,输出,即得到了最终的解调数据。Specifically, referring to FIG. 2 and FIG. 3 , the waveform of the signal to be demodulated is shown in FIG. 2 , and it is easy to know that the relative phase change in the QPSK signal includes three types: π/2 type, -π/2 type and π type. The working process of the demodulator is shown in Figure 3. After the demodulator is powered on, the clock and reset modules give the clock signal and the reset signal in turn, and then AD samples the demodulated signal to form a discrete time sequence. Input to the input buffer block for data buffering and clock domain conversion. Subsequently, the clock domain converted data is input into the phase mutation detection module in the form of a sliding window, and the parameter storage module provides the corresponding network parameters, and the constellation rotation and data inversion modules initialize the IQ data lines; in the phase mutation detection , the phase mutation detection module calculates according to the pre-trained network parameters, and the output rule of the calculation result is: if the phase mutation detection module detects a certain phase mutation in the current input, it outputs 1, otherwise it outputs 0. The output of the phase mutation detection module is a discrete sequence with the same rate as the AD sampling rate, and its shape appears as a pulse when a certain phase mutation occurs; the constellation rotation and data inversion module performs pulse detection on the output sequence of the phase mutation detection module. , the constellation diagram is flipped according to the type of phase mutation. The constellation position corresponding to the previous symbol is the starting point, and it is rotated according to the type of phase change. When a π/2 type phase mutation occurs, it is rotated 90° clockwise. When - The π/2-type phase mutation is rotated 90° counterclockwise. When the π-type phase mutation occurs, it is rotated 180°. The result of the rotation is the constellation position corresponding to the current symbol. According to the constellation position corresponding to the current symbol, the IQ two-way data Then, the IQ two-way data waveform is obtained by flipping the line; then, the synchronous output module samples the IQ two-way data waveform according to the code rate, and outputs the final demodulated data.
特别地,本发明具体实施例中,一维卷积神经网络包括:一个输入层、一个卷积层、一个隐含层和一个输出层,以及辅助的输入缓存、输出缓存和控制模块。In particular, in a specific embodiment of the present invention, a one-dimensional convolutional neural network includes: an input layer, a convolutional layer, a hidden layer and an output layer, as well as auxiliary input buffering, output buffering and control modules.
具体地,参照图4,相位突变检测模块中在FPGA内实现的一维卷积神经网络包括:输入层、卷积层、隐含层、输出层,以及辅助的输入缓存、输出缓存和控制模块。在输入层中,寄存器被级联形成滑动窗口,卷积层包括两个结构相同,物理上相互独立的一维卷积核、隐含层和输出层中的主要构成元素是神经元,两层的神经元模型相似,只有突触的数量不同,神经元的激活函数采用sigmoid函数。输入输出缓存用于缓存输入数据并作时钟域转换,控制模块用于控制有效信号,并协调参数存储模块适时给出相应参数。Specifically, referring to FIG. 4 , the one-dimensional convolutional neural network implemented in the FPGA in the phase mutation detection module includes: an input layer, a convolutional layer, a hidden layer, an output layer, and an auxiliary input buffer, output buffer and control module. . In the input layer, the registers are cascaded to form a sliding window. The convolutional layer includes two physically independent one-dimensional convolution kernels with the same structure. The main constituent elements in the hidden layer and the output layer are neurons. The neuron model is similar, only the number of synapses is different, and the activation function of the neuron adopts the sigmoid function. The input and output buffers are used to buffer the input data and perform clock domain conversion, and the control module is used to control valid signals, and coordinate the parameter storage module to give corresponding parameters in a timely manner.
具体地,参照图5和图6,在FPGA内实现的一维卷积神经网络中的卷积层需要完成一维same卷积运算,same卷积是指输出向量的长度等于输入向量,假设输入向量的长度σ=M+1,卷积核的长度为M+1,根据卷积理论,若要得到长度为M+1的输出向量,需对输入向量进行长度为M的扩充,一般使用0进行扩充,扩充后的长度为2M+1的输入向量与长度为M+1的卷积核进行卷积运算,结果如图5所示。该卷积运算共包括(M+1)2次乘法运算,在这之中有一部分是乘数为0的情况,而图5线框内这部分数据的计算结果则是曾经在先前或者将会在之后的运算中出现的,通过将一些相乘结果加入到不同的延迟队列组成的时间延迟网中,就可以避免大量的重复计算。时间延迟网的结构如图6所示。图中[x1x2...xM+1]是当前输入向量,[w1w2...wM+1]是由参数存储模块输出的当前卷积核,D是延迟单元,与当前输入对应的卷积运算结果是[y1y2...yM+1]。在FPGA时钟的控制下,数据可以以很小的资源占用实现精确地节拍延迟,配合延迟线上的结果,平均每个输入向量只需进行M+1次乘法运算即可得到卷积结果。Specifically, referring to FIG. 5 and FIG. 6 , the convolution layer in the one-dimensional convolutional neural network implemented in the FPGA needs to complete the one-dimensional same convolution operation. The same convolution means that the length of the output vector is equal to the input vector, assuming that the input The length of the vector is σ=M+1, and the length of the convolution kernel is M+1. According to the convolution theory, to obtain an output vector with a length of M+1, the input vector needs to be expanded with a length of M. Generally, 0 is used. For expansion, the expanded input vector with a length of 2M+1 performs a convolution operation with a convolution kernel with a length of M+1, and the result is shown in Figure 5. The convolution operation includes a total of (M+1) 2 multiplication operations, some of which are cases where the multiplier is 0, and the calculation result of this part of the data in the wire frame in Figure 5 has been previously or will be In the subsequent operations, by adding some multiplication results to the time delay network composed of different delay queues, a large number of repeated calculations can be avoided. The structure of the time delay network is shown in Figure 6. In the figure [x 1 x 2 ... x M+1 ] is the current input vector, [w 1 w 2 ... w M+1 ] is the current convolution kernel output by the parameter storage module, D is the delay unit, The result of the convolution operation corresponding to the current input is [y 1 y 2 ... y M+1 ]. Under the control of the FPGA clock, the data can be accurately clocked and delayed with a small resource occupation. With the results on the delay line, on average, each input vector only needs to perform M+1 multiplications to obtain the convolution result.
如图7所示,本发明在上述实施例的基础上提供了一种基于FPGA的QPSK神经网络解调器的控制方法,包括:As shown in Figure 7, the present invention provides a control method of an FPGA-based QPSK neural network demodulator on the basis of the above-mentioned embodiment, including:
发送时钟信号和复位信号;Send clock signal and reset signal;
对待解调信号采样获取采样数据;Obtain sampling data by sampling the demodulated signal;
接收和缓存采样数据,并对采样数据进行时钟域转换;Receive and buffer sampled data, and perform clock domain conversion on the sampled data;
检测时钟域转换后的采样数据中的相对相位变化,并输出相位突变信息;Detect the relative phase change in the sampled data after clock domain conversion, and output phase mutation information;
接收并处理相位突变信息,形成基带数据;Receive and process phase mutation information to form baseband data;
同步判决基带数据,生成并输出解调数据。Synchronously judge baseband data, generate and output demodulated data.
特别地,本发明具体实施例中,在发送时钟信号和复位信号之前,还包括:将网络参数存储到参数存储模块。In particular, in the specific embodiment of the present invention, before sending the clock signal and the reset signal, the method further includes: storing the network parameters in the parameter storage module.
特别地,本发明具体实施例中,在对待解调信号采样获取采样数据之前,还包括:将网络参数输入到FPGA。In particular, in the specific embodiment of the present invention, before sampling the to-be-demodulated signal to obtain sampled data, the method further includes: inputting network parameters into the FPGA.
本发明提出的解调器,将QPSK调制信号中的相对相位突变作为一种特征,利用在FPGA中实现的相位突变检测模块对其进行特征检测,分别检测QPSK调制信号中三种相对相位变化,利用在FPGA中实现的星座旋转和数据翻转模块根据相位突变的类型和时机输出解调数据波形,进而完成解调。本发明提出的解调器,参数复杂度低,结构稳定性高,能够通过有针对性的训练提高解调器对特殊环境的适应力,运用时间延迟网进行一维卷积运算,降低了计算复杂度,提高了硬件资源使用效率。The demodulator proposed by the present invention takes the relative phase sudden change in the QPSK modulation signal as a feature, and uses the phase sudden change detection module implemented in FPGA to perform feature detection on it, and respectively detects three kinds of relative phase changes in the QPSK modulation signal, The constellation rotation and data inversion module implemented in FPGA is used to output the demodulated data waveform according to the type and timing of the phase mutation, and then complete the demodulation. The demodulator proposed by the invention has low parameter complexity and high structural stability, can improve the demodulator's adaptability to special environments through targeted training, and uses a time delay network to perform one-dimensional convolution operations, thereby reducing computational costs. complexity, and improve the efficiency of hardware resource use.
以上内容是结合具体的优选实施方式对本发明所作的进一步详细说明,不能认定本发明的具体实施只局限于这些说明。对于本发明所属技术领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干简单推演或替换,都应当视为属于本发明的保护范围。The above content is a further detailed description of the present invention in combination with specific preferred embodiments, and it cannot be considered that the specific implementation of the present invention is limited to these descriptions. For those of ordinary skill in the technical field of the present invention, without departing from the concept of the present invention, some simple deductions or substitutions can be made, which should be regarded as belonging to the protection scope of the present invention.
Claims (7)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910059841.2A CN109981517B (en) | 2019-01-22 | 2019-01-22 | QPSK neural network demodulator based on FPGA and control method thereof |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910059841.2A CN109981517B (en) | 2019-01-22 | 2019-01-22 | QPSK neural network demodulator based on FPGA and control method thereof |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109981517A CN109981517A (en) | 2019-07-05 |
CN109981517B true CN109981517B (en) | 2020-06-19 |
Family
ID=67076602
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910059841.2A Active CN109981517B (en) | 2019-01-22 | 2019-01-22 | QPSK neural network demodulator based on FPGA and control method thereof |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109981517B (en) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111884967B (en) * | 2020-07-29 | 2022-07-01 | 黑龙江大学 | QPSK signal demodulation method based on time-frequency analysis and convolutional neural network |
CN113037293A (en) * | 2021-02-07 | 2021-06-25 | 武汉能钠智能装备技术股份有限公司 | Phase jump detection method, device, equipment and storage medium |
CN114553646B (en) * | 2022-01-09 | 2023-03-31 | 苏州大学 | Reconfigurable modulation-demodulation system based on WBAN (white blood cell network) narrowband physical layer |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1988402A (en) * | 2006-10-10 | 2007-06-27 | 东南大学 | Method for realizing power line carrier communication system |
CN101969319A (en) * | 2010-08-10 | 2011-02-09 | 贵州航天天马机电科技有限公司 | Universal digital dual modulation-demodulation technology in wireless communication |
CN106936742A (en) * | 2017-05-02 | 2017-07-07 | 西安电子科技大学 | Multi gear bit rate adaptive demodulation system and method based on neutral net |
CN108627809A (en) * | 2017-03-15 | 2018-10-09 | 武汉玉航科技有限公司 | One kind being based on FPGA real-time radar signal generating means and modulator approach |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
FR2840142B1 (en) * | 2002-05-24 | 2004-09-10 | Dibcom | METHOD AND DEVICE FOR SYNCHRONIZING RECEPTION OF SIGNAL AND ECHO |
US8644706B2 (en) * | 2010-01-22 | 2014-02-04 | Gainspeed, Inc. | Distributed cable modem termination system with software reconfigurable MAC and PHY capability |
US8948154B2 (en) * | 2010-02-10 | 2015-02-03 | Qualcomm Incorporated | Method and apparatus for sending and receiving a low-complexity transmission in a wireless communication system |
-
2019
- 2019-01-22 CN CN201910059841.2A patent/CN109981517B/en active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1988402A (en) * | 2006-10-10 | 2007-06-27 | 东南大学 | Method for realizing power line carrier communication system |
CN101969319A (en) * | 2010-08-10 | 2011-02-09 | 贵州航天天马机电科技有限公司 | Universal digital dual modulation-demodulation technology in wireless communication |
CN108627809A (en) * | 2017-03-15 | 2018-10-09 | 武汉玉航科技有限公司 | One kind being based on FPGA real-time radar signal generating means and modulator approach |
CN106936742A (en) * | 2017-05-02 | 2017-07-07 | 西安电子科技大学 | Multi gear bit rate adaptive demodulation system and method based on neutral net |
Also Published As
Publication number | Publication date |
---|---|
CN109981517A (en) | 2019-07-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109981517B (en) | QPSK neural network demodulator based on FPGA and control method thereof | |
Khalaf et al. | VLSI Implementation of a High‐Performance Nonlinear Image Scaling Algorithm | |
CN111884685A (en) | Digital communication signal synchronous demodulation method and device | |
CN108401489B (en) | A Quantum Chaotic Wave Packet Digital Signal Generation Method | |
US8605828B2 (en) | Blind mechanism for demodulating offset QPSK signals in the presence of carrier phase error | |
Lin et al. | Modulation recognition using signal enhancement and multistage attention mechanism | |
CN115250216A (en) | A joint channel estimation and signal detection method for underwater acoustic OFDM based on deep learning | |
CN109889461B (en) | Low-complexity parallel carrier recovery system and method thereof | |
Zhang et al. | Data augmentation aided complex-valued network for channel estimation in underwater acoustic orthogonal frequency division multiplexing system | |
US20210028885A1 (en) | Cnn-based demodulating and decoding systems and methods for universal receiver | |
Shi et al. | STTMC: A few-shot spatial temporal transductive modulation classifier | |
CN108551371A (en) | A kind of blind carrier phase estimation method of QAM signals and system | |
CN113132076A (en) | Frame synchronization method, device, electronic equipment and storage medium | |
CN118200092A (en) | Signal modulation type identification method based on space-time convolution network | |
CN102263884A (en) | A video image processor | |
US11514322B2 (en) | CNN-based demodulating and decoding systems and methods for universal receiver | |
CN118414808A (en) | Multi-mode acyclic unrolled decision feedback equalizer with flexible clock configuration | |
CN101729472A (en) | Carrier recovery method and device for all-digital receiver | |
CN113162713A (en) | Variable symbol rate timing recovery method and system based on Gardner algorithm | |
Xie et al. | Implementation of the CPFSK Signal Non-coherent Multi-symbol Detection Algorithm with Reduced Complexity | |
CN112671419A (en) | Wireless signal reconstruction method, device, system, equipment and storage medium | |
Haq et al. | Low complexity deep learning aided channel estimation architecture for vehicular networks | |
US20140333353A1 (en) | Managing clock and recovery data | |
Cai et al. | A high performance SURF image feature detecting system based on ZYNQ | |
Wang et al. | Multi-scale Feature Extraction Channel Equalization Method Based on Res2net Module |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |