CN111722027A - FPGA-based Phase Noise Data Stream Processing Device and Method - Google Patents
FPGA-based Phase Noise Data Stream Processing Device and Method Download PDFInfo
- Publication number
- CN111722027A CN111722027A CN202010610485.1A CN202010610485A CN111722027A CN 111722027 A CN111722027 A CN 111722027A CN 202010610485 A CN202010610485 A CN 202010610485A CN 111722027 A CN111722027 A CN 111722027A
- Authority
- CN
- China
- Prior art keywords
- data
- phase noise
- module
- control module
- data flow
- 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.)
- Granted
Links
- 238000012545 processing Methods 0.000 title claims abstract description 68
- 238000000034 method Methods 0.000 title claims abstract description 19
- 238000001914 filtration Methods 0.000 claims abstract description 28
- 238000000605 extraction Methods 0.000 claims abstract description 12
- 238000005070 sampling Methods 0.000 claims abstract description 11
- 238000003672 processing method Methods 0.000 claims description 10
- 230000008569 process Effects 0.000 claims description 9
- 238000013500 data storage Methods 0.000 claims description 7
- 238000007726 management method Methods 0.000 claims description 6
- 230000001360 synchronised effect Effects 0.000 claims description 4
- 230000003139 buffering effect Effects 0.000 claims description 2
- 238000005111 flow chemistry technique Methods 0.000 claims 1
- 230000005540 biological transmission Effects 0.000 abstract description 12
- 238000013461 design Methods 0.000 abstract description 4
- 238000001228 spectrum Methods 0.000 description 6
- 238000010586 diagram Methods 0.000 description 5
- 238000004422 calculation algorithm Methods 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 3
- 230000003595 spectral effect Effects 0.000 description 3
- 238000012360 testing method Methods 0.000 description 3
- 238000004458 analytical method Methods 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 2
- 230000001276 controlling effect Effects 0.000 description 2
- 238000005259 measurement Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 241000238876 Acari Species 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 230000002596 correlated effect Effects 0.000 description 1
- 230000000875 corresponding effect Effects 0.000 description 1
- 230000007812 deficiency Effects 0.000 description 1
- 238000012938 design process Methods 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000012423 maintenance Methods 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 230000000630 rising effect Effects 0.000 description 1
- 238000004088 simulation Methods 0.000 description 1
- 230000001629 suppression Effects 0.000 description 1
- 230000009466 transformation Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01R—MEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
- G01R29/00—Arrangements for measuring or indicating electric quantities not covered by groups G01R19/00 - G01R27/00
- G01R29/26—Measuring noise figure; Measuring signal-to-noise ratio
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01R—MEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
- G01R25/00—Arrangements for measuring phase angle between a voltage and a current or between voltages or currents
Landscapes
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Synchronisation In Digital Transmission Systems (AREA)
Abstract
本发明公开了一种基于FPGA的相位噪声数据流处理装置及方法,该装置包括数据处理模块、时钟管理模块、控制模块、数据流控制模块和FFT模块;数据处理模块包括多级抽取滤波单元,对输入相位噪声信号抽取滤波产生多级不同采样率的相位噪声数据流;时钟管理模块用于产生各级抽取滤波单元所需的时钟信号;控制模块用于产生控制各级抽取滤波单元的复位信号;数据流控制模块用于调整每一级相位噪声数据流输入FFT模块的数据长度和时钟频率;FFT模块用于计算各级相位噪声数据流的频域信息。本发明在FPGA内部实现了抽取滤波和数据处理的设计,提高了相位噪声数据的处理速度,减少了数据传输过程中的延迟与发生传输错误的可能性,同时还减低了系统复杂度。
The invention discloses an FPGA-based phase noise data stream processing device and method. The device includes a data processing module, a clock management module, a control module, a data flow control module and an FFT module; the data processing module includes a multi-stage decimation filtering unit, Extracting and filtering the input phase noise signal to generate multi-level phase noise data streams with different sampling rates; the clock management module is used to generate the clock signal required by the extraction and filtering units at all levels; the control module is used to generate the reset signal that controls the extraction and filtering units at all levels ; The data flow control module is used to adjust the data length and clock frequency input to the FFT module of each level of phase noise data flow; the FFT module is used to calculate the frequency domain information of each level of phase noise data flow. The invention realizes the design of decimation filtering and data processing inside the FPGA, improves the processing speed of the phase noise data, reduces the delay in the data transmission process and the possibility of transmission errors, and also reduces the system complexity.
Description
技术领域technical field
本发明属于相位噪声数据处理技术领域,具体涉及一种基于FPGA的相位噪声数据流处理装置及方法。The invention belongs to the technical field of phase noise data processing, and in particular relates to an FPGA-based phase noise data stream processing device and method.
背景技术Background technique
相位噪声是描述时钟信号频率稳定度的重要指标,对信号分析与测试具有重要意义。随着电子电路技术等高新技术快速发展以来,电子系统的测量精确度要求越来越高,对高性能信号发生源的需求也与日俱增,高质量信号的相位噪声的指标也越来越小,测量精度与测量难度也愈发增大。相位噪声在电子系统中占有举足轻重的地位,过差的相位噪声往往会极大地影响设备稳定性,进而增加设备维护成本。相位噪声研究与测试已经成为现代科技高地上一块寸土必争的领域。Phase noise is an important indicator to describe the frequency stability of a clock signal, and is of great significance to signal analysis and testing. With the rapid development of high and new technologies such as electronic circuit technology, the measurement accuracy of electronic systems has become higher and higher, and the demand for high-performance signal generators has also increased. Accuracy and measurement difficulty are also increasing. Phase noise plays an important role in electronic systems, and excessive phase noise will often greatly affect the stability of equipment, thereby increasing equipment maintenance costs. Phase noise research and testing has become a field of competition on the high ground of modern technology.
目前主流的相位噪声测试系统采用的提取相位噪声的方法是鉴相法,即将被测信号与同频参考本振源信号经过鉴相器和锁相环将两者的相位随机波动转换为与之成线性的输出电压变化,当被测信号与本振源的相位差被锁相环锁到90°状态时,鉴相器的输出可以近似认为是被测信号携带的相位噪声,得到的相位噪声转换到数据域并计算功率谱密度分布。The current mainstream phase noise test system adopts the phase noise extraction method, which means that the measured signal and the reference local oscillator signal of the same frequency pass through a phase detector and a phase-locked loop to convert the random phase fluctuations of the two into The output voltage changes linearly. When the phase difference between the measured signal and the local oscillator source is locked to 90° by the phase-locked loop, the output of the phase detector can be approximately considered as the phase noise carried by the measured signal, and the obtained phase noise Transform to the data domain and compute the power spectral density distribution.
将被测信号通过功率分配器分为两路信号,经过两路通道鉴相与传递,则两路信号受到的噪声干扰是随机独立的。而两路信号都是被测信号的相位噪声,这部分是相关噪声,互相关算法对不相关的噪声信号有比较好的抑制效果,对相同的部分可以进行保留。将两路信号的FFT变换的结果进行共轭相乘,在数学意义上等价于互相关运算,结果即为相位噪声功率谱,可以表征被测信号的相位噪声信息。Divide the measured signal into two channels of signals through the power divider, and through the phase detection and transmission of the two channels, the noise interference of the two channels is random and independent. The two signals are the phase noise of the measured signal, and this part is correlated noise. The cross-correlation algorithm has a better suppression effect on uncorrelated noise signals, and the same part can be reserved. The conjugate multiplication of the results of the FFT transformation of the two signals is equivalent to the cross-correlation operation in the mathematical sense, and the result is the phase noise power spectrum, which can characterize the phase noise information of the measured signal.
为了获得更高分辨率的靠近载波频率的相位噪声功率谱,且抽取过程中不产生混叠现象,需要对数字相位噪声信号进行多级抽取滤波处理,一般采用CIC+FIR滤波器实现。每级抽取滤波器实现10倍抽取,逐级降低信号采样率,每级信号的FFT结果就能得到分辨率合适的功率谱密度。In order to obtain a higher-resolution phase noise power spectrum close to the carrier frequency without aliasing during the extraction process, it is necessary to perform multi-stage decimation filtering on the digital phase noise signal, which is generally implemented by a CIC+FIR filter. Each stage of the decimation filter realizes 10 times decimation, and reduces the signal sampling rate step by step, and the FFT result of each stage signal can obtain the power spectral density with appropriate resolution.
已有的相位噪声的数字域处理方式采用FPGA和DSP共同处理,如图1所示。传统方案数据的处理经过FPGA、DRAM、DSP,FPGA实现相位噪声数据的抽取滤波,产生各级抽取信号,数据量比较大,必须存入DRAM中缓存才能传输给DSP。DSP对各级数据进行FFT处理,然后将FFT结果进行共轭相乘,即互相关处理,中间产生的中间过程数据需要SDRAM缓冲,最后将DSP的数据传输给电脑端进行显示处理。传统方案的数据传输过程复杂,运算速度慢,实现起来比较困难。The existing digital domain processing method of phase noise adopts FPGA and DSP to jointly process, as shown in Figure 1. The data processing of the traditional scheme goes through FPGA, DRAM, DSP, and the FPGA realizes the extraction and filtering of the phase noise data, and generates the extracted signals at all levels. The DSP performs FFT processing on the data at all levels, and then performs conjugate multiplication of the FFT results, that is, cross-correlation processing. The intermediate process data generated in the middle needs SDRAM buffering, and finally the DSP data is transmitted to the computer for display processing. The data transmission process of the traditional scheme is complicated, the operation speed is slow, and it is difficult to implement.
发明内容SUMMARY OF THE INVENTION
针对现有技术中的上述不足,本发明提供了一种基于FPGA的相位噪声数据流处理装置及方法,可以省去数据在FPGA和DSP传递的过程,从而提高数据处理速度。In view of the above deficiencies in the prior art, the present invention provides an FPGA-based phase noise data stream processing device and method, which can save the process of data transmission in the FPGA and DSP, thereby improving the data processing speed.
为了达到上述发明目的,本发明采用的技术方案为:In order to achieve the above-mentioned purpose of the invention, the technical scheme adopted in the present invention is:
一种基于FPGA的相位噪声数据流处理装置,包括数据处理模块、时钟管理模块、控制模块、数据流控制模块和FFT模块;An FPGA-based phase noise data stream processing device, comprising a data processing module, a clock management module, a control module, a data flow control module and an FFT module;
所述数据处理模块包括多级抽取滤波单元,各级抽取滤波单元用于分别对输入相位噪声信号进行抽取滤波,产生多级不同采样率的相位噪声数据流;The data processing module includes a multi-level decimation and filtering unit, and the decimation and filtering units at each level are used to decimate and filter the input phase noise signal respectively to generate multi-level phase noise data streams with different sampling rates;
所述时钟管理模块用于产生各级抽取滤波单元所需的时钟信号;The clock management module is used to generate clock signals required by the decimation filtering units at all levels;
所述控制模块用于根据控制信号产生控制各级抽取滤波单元的复位信号;The control module is used to generate a reset signal for controlling the extraction and filtering units at all levels according to the control signal;
所述数据流控制模块用于调整数据处理模块产生的每一级相位噪声数据流输入FFT模块的数据长度和时钟频率;The data flow control module is used to adjust the data length and clock frequency of each phase noise data flow generated by the data processing module and input to the FFT module;
所述FFT模块用于计算数据流控制模块同步后的各级相位噪声数据流的频域信息,并输出FIFO缓存频域数据。The FFT module is used to calculate the frequency domain information of the phase noise data streams at all levels after synchronization by the data flow control module, and output the FIFO buffered frequency domain data.
进一步地,所述数据流控制模块设定最高频段的时钟频率作为每一级相位噪声数据流输入FFT模块处理的工作频率。Further, the data flow control module sets the clock frequency of the highest frequency band as the operating frequency for inputting the phase noise data flow of each stage to the FFT module for processing.
进一步地,所述数据流控制模块分别对最高频段数据流和跨时钟域数据流进行控制。Further, the data flow control module respectively controls the highest frequency band data flow and the cross-clock domain data flow.
进一步地,所述数据流控制模块对最高频段数据流进行控制具体为:Further, the control of the highest frequency band data flow by the data flow control module is specifically:
设置多个FFT模块,将每一级相位噪声数据流划分为多个1024个数据组成的数据组,分别将各个数据组输入各个FFT模块进行处理。Set up multiple FFT modules, divide each level of phase noise data stream into multiple data groups consisting of 1024 data, and input each data group into each FFT module for processing.
进一步地,所述数据流控制模块对跨时钟域数据流进行控制具体为:Further, the control of the data flow across the clock domain by the data flow control module is specifically:
采用异步乒乓FIFO的处理方式,利用两个FIFO作为数据存储单元,一个FIFO写入数据的同时另一个FIFO读出数据。The asynchronous ping-pong FIFO processing method is adopted, and two FIFOs are used as data storage units. One FIFO writes data and the other FIFO reads data.
本发明还提出了一种基于FPGA的相位噪声数据流处理方法,包括以下步骤:The present invention also proposes an FPGA-based phase noise data stream processing method, comprising the following steps:
S1、将相位噪声信号输入数据处理模块,经多级抽取滤波单元产生多级不同采样率的相位噪声数据流;S1, input the phase noise signal into the data processing module, and generate multi-stage phase noise data streams with different sampling rates through the multi-stage extraction filtering unit;
S2、将各级相位噪声数据流经过数据流控制模块进行工作频率同步;S2. Synchronize the working frequency of the phase noise data streams at all levels through the data stream control module;
S3、将同步后的各级相位噪声数据流输入FFT模块计算频域信号;S3. Input the synchronized phase noise data streams at all levels into the FFT module to calculate the frequency domain signal;
S4、利用FIFO缓存频域数据,并输出处理数据。S4, using the FIFO to buffer the frequency domain data, and output the processed data.
进一步地,所述步骤S3中利用数据流控制模块设定最高频段的时钟频率作为每一级相位噪声数据流输入FFT模块处理的工作频率。Further, in the step S3, the data flow control module is used to set the clock frequency of the highest frequency band as the working frequency of each stage of the phase noise data flow input to the FFT module for processing.
进一步地,所述步骤S3中利用数据流控制模块分别对最高频段数据流和跨时钟域数据流进行控制。Further, in the step S3, the data flow control module is used to control the highest frequency band data flow and the cross-clock domain data flow respectively.
进一步地,所述利用数据流控制模块对最高频段数据流进行控制具体为:Further, the use of the data flow control module to control the highest frequency band data flow is specifically:
设置多个FFT模块,将每一级相位噪声数据流划分为多个1024个数据组成的数据组,分别将各个数据组输入各个FFT模块进行处理。Set up multiple FFT modules, divide each level of phase noise data stream into multiple data groups consisting of 1024 data, and input each data group into each FFT module for processing.
进一步地,所述数据流控制模块对跨时钟域数据流进行控制具体为:Further, the control of the data flow across the clock domain by the data flow control module is specifically:
采用异步乒乓FIFO的处理方式,利用两个FIFO作为数据存储单元,一个FIFO写入数据的同时另一个FIFO读出数据。The asynchronous ping-pong FIFO processing method is adopted, and two FIFOs are used as data storage units. One FIFO writes data and the other FIFO reads data.
本发明具有以下有益效果:The present invention has the following beneficial effects:
(1)本发明在FPGA内部实现了抽取滤波和数据处理的设计,信号数据直接在同一块FPGA芯片内进行计算,提高了相位噪声数据的处理速度,减少了数据传输过程中的延迟与发生传输错误的可能性,同时还减低了系统复杂度;(1) The present invention realizes the design of decimation filtering and data processing inside the FPGA, and the signal data is directly calculated in the same FPGA chip, which improves the processing speed of phase noise data and reduces the delay and occurrence of transmission in the process of data transmission. The possibility of errors, while also reducing the system complexity;
(2)本发明合理FPGA内部资源,实现了相位噪声数据实时并行处理效率的最大化,将相位噪声功率谱估计的最小分辨率降低到0.1Hz左右;(2) The present invention rationalizes the internal resources of the FPGA, realizes the maximization of the real-time parallel processing efficiency of the phase noise data, and reduces the minimum resolution of the phase noise power spectrum estimation to about 0.1 Hz;
(3)本发明对相位噪声数字处理方案进行了模块化划分,每个模块实现不同的功能,实现了相位噪声的数字化处理。(3) The present invention divides the phase noise digital processing scheme into modules, each module realizes different functions, and realizes the digital processing of phase noise.
附图说明Description of drawings
图1为现有技术中相位噪声的数字域处理方法示意图;1 is a schematic diagram of a digital domain processing method of phase noise in the prior art;
图2为本发明基于FPGA的相位噪声数据流处理装置结构示意图;2 is a schematic structural diagram of an FPGA-based phase noise data stream processing device of the present invention;
图3为本发明中最高频段数据流控制时序图;Fig. 3 is the highest frequency band data flow control sequence diagram in the present invention;
图4为本发明中异步乒乓FIFO操作示意图。FIG. 4 is a schematic diagram of an asynchronous ping-pong FIFO operation in the present invention.
具体实施方式Detailed ways
下面对本发明的具体实施方式进行描述,以便于本技术领域的技术人员理解本发明,但应该清楚,本发明不限于具体实施方式的范围,对本技术领域的普通技术人员来讲,只要各种变化在所附的权利要求限定和确定的本发明的精神和范围内,这些变化是显而易见的,一切利用本发明构思的发明创造均在保护之列。The specific embodiments of the present invention are described below to facilitate those skilled in the art to understand the present invention, but it should be clear that the present invention is not limited to the scope of the specific embodiments. For those of ordinary skill in the art, as long as various changes Such changes are obvious within the spirit and scope of the present invention as defined and determined by the appended claims, and all inventions and creations utilizing the inventive concept are within the scope of protection.
如图2所示,本发明实施例提供了一种基于FPGA的相位噪声数据流处理装置,包括数据处理模块、时钟管理模块、控制模块、数据流控制模块和FFT模块;As shown in FIG. 2, an embodiment of the present invention provides an FPGA-based phase noise data stream processing device, including a data processing module, a clock management module, a control module, a data flow control module, and an FFT module;
所述数据处理模块包括多级抽取滤波单元,各级抽取滤波单元用于分别对输入相位噪声信号进行抽取滤波,产生多级不同采样率的相位噪声数据流;The data processing module includes a multi-level decimation and filtering unit, and the decimation and filtering units at each level are used to decimate and filter the input phase noise signal respectively to generate multi-level phase noise data streams with different sampling rates;
所述时钟管理模块用于产生各级抽取滤波单元所需的时钟信号;The clock management module is used to generate clock signals required by the decimation filtering units at all levels;
所述控制模块用于根据控制信号产生控制各级抽取滤波单元的复位信号;The control module is used to generate a reset signal for controlling the extraction and filtering units at all levels according to the control signal;
所述数据流控制模块用于调整数据处理模块产生的每一级相位噪声数据流输入FFT模块的数据长度和时钟频率;The data flow control module is used to adjust the data length and clock frequency of each phase noise data flow generated by the data processing module and input to the FFT module;
所述FFT模块用于计算数据流控制模块同步后的各级相位噪声数据流的频域信息,并输出FIFO缓存频域数据。The FFT module is used to calculate the frequency domain information of the phase noise data streams at all levels after synchronization by the data flow control module, and output the FIFO buffered frequency domain data.
本发明中每级抽取滤波单元均对数据的时钟进行等同于抽取倍率的变换,并且数据点数、数据实际采样率等指标也产生变化,算法分级处理产生的每级数据流相关信息如表1所示。In the present invention, each level of decimation filtering unit transforms the clock of the data equivalent to the extraction rate, and the indicators such as the number of data points and the actual sampling rate of the data also change. Show.
表1分级处理过程数据流信息表Table 1. Data flow information table of hierarchical processing process
在表1中,第0级数据表示ADC采集的相位噪声数据。本发明利用数据处理模块一共进行了5级抽取滤波,产生6段不同采样率的相位噪声数据,每一级相位噪声数据对应一段不同分辨率的相位噪声功率谱,最后对6段功率谱结果综合就能在距离载波频率不同位置处获得不同分辨率的相位噪声功率谱密度分布曲线。In Table 1, level 0 data represents the phase noise data acquired by the ADC. The present invention uses the data processing module to carry out a total of 5 stages of decimation and filtering to generate 6 stages of phase noise data with different sampling rates, each stage of phase noise data corresponds to a stage of phase noise power spectrum with different resolutions, and finally the results of the 6 stages of power spectrum are synthesized. Phase noise power spectral density distribution curves with different resolutions can be obtained at different positions from the carrier frequency.
相位噪声处理过程需要对多个频段进行分段计算,而每一段的数据点数、数据时钟都不一样,因此本发明采用不同的方法进行分段计算。The phase noise processing process needs to perform segmental calculation on multiple frequency bands, and the data points and data clocks of each segment are different, so the present invention adopts different methods to perform segmental calculation.
ADC采集的相位噪声信号是最高频段数据,时钟为100MHz,数据点数为110M,而最低频段的时钟为1KHz,数据点数仅1.1K个点,次低频段的数据时钟为10KHz,数据点数为11K个点。每一段数据的时钟都不一样,每个频段的时钟,最快的是高频段的100MHz,为了保证所有的数据都有时间和空间进行处理,本发明利用数据流控制模块设定最高频段的时钟频率100MHz作为每一级相位噪声数据流输入FFT模块处理的工作频率,使得每个FFT模块的工作时钟保持在同一个时钟域下,这样一方面对输入的数据比较好进行处理,另一方面可以加快低频段FFT模块的运行速度。The phase noise signal collected by ADC is the highest frequency band data, the clock is 100MHz, the number of data points is 110M, while the clock of the lowest frequency band is 1KHz, the number of data points is only 1.1K points, the data clock of the second low frequency band is 10KHz, the number of data points is 11K point. The clock of each piece of data is different. The fastest clock of each frequency band is 100MHz in the high frequency band. In order to ensure that all data have time and space for processing, the present invention uses the data flow control module to set the clock of the highest frequency band. The frequency of 100MHz is used as the working frequency of each stage of phase noise data stream input to the FFT module, so that the working clock of each FFT module is kept in the same clock domain. Speed up the operation of the low-band FFT module.
由于最高频段的时钟较快,但是数据量较多,其余频段的数据量较少但是数据并不处在同一个时钟域下,因此本发明利用数据流控制模块分别对最高频段数据流和跨时钟域数据流进行控制。Since the clock of the highest frequency band is faster, but the amount of data is large, and the amount of data in the other frequency bands is small but the data is not in the same clock domain, the present invention uses the data flow control module to control the data flow of the highest frequency band and the cross-clock respectively. Domain data flow is controlled.
在FPGA中,1K个点的FFT运算一段数据需要一定的时间,即输入数据与输出数据之间必须经过一定的时钟节拍,高频段数据的数量很大,而且数据从DDR中依次传输,每一个时钟上升沿都有一个数据送到处理模块,如果不做任何处理,在运算的过程中一部分输入的数据会被IP核遗弃,这样会造成数据缺失的问题。In FPGA, FFT operation of 1K points takes a certain amount of time, that is, a certain clock beat must pass between input data and output data. On the rising edge of the clock, a data is sent to the processing module. If no processing is done, part of the input data will be discarded by the IP core during the operation, which will cause the problem of missing data.
在最高频段的数据处理中,数据直接进行FFT算法,单个FFT运算的速度匹配不上一路数据的传输速度,为了保证每个FFT模块的时钟保持同步,本发明设置多个FFT模块单元,进行数据交替处理。In the data processing of the highest frequency band, the data is directly subjected to the FFT algorithm, and the speed of a single FFT operation cannot match the transmission speed of the previous data. Alternate processing.
为了避免数据处理过程出现冲突,本发明将每一级相位噪声数据流划分为多个1024个数据组成的数据组,每一个数据组的数据进入一个FFT IP核,待此IP核的信号处理完成后再输入下一个数据组。In order to avoid conflicts in the data processing process, the present invention divides each level of phase noise data stream into a plurality of data groups composed of 1024 data, and the data of each data group enters an FFT IP core, and the signal processing of this IP core is completed. Then enter the next data set.
经仿真发现,设计4个FFT IP核可以完全处理输入的所有数据组而不出现遗漏。如图3所示,为最高频段数据流控制时序图。图3中的每条线表示数据有效标志,长度为1024个时钟节拍。将四组数据信号输入4个各自的FFT IP核中,可以实现最高频段数据的实时处理。最高频段的数据量最大,而且时钟频率最高,因此该频段数据的处理速度成为整个算法处理模块的短板,通过本发明的设计,可以显著提高整体系统的运算速度。It is found by simulation that designing 4 FFT IP cores can completely process all input data groups without omission. As shown in Figure 3, it is a timing diagram of the highest frequency band data flow control. Each line in Figure 3 represents a data valid flag and is 1024 clock ticks in length. Inputting four sets of data signals into four respective FFT IP cores enables real-time processing of the highest frequency band data. The highest frequency band has the largest amount of data and the highest clock frequency, so the processing speed of the data in this frequency band becomes the short board of the entire algorithm processing module. Through the design of the present invention, the operation speed of the overall system can be significantly improved.
对于其余频段,由于抽取滤波器的存在,这些频段产生的数据点数都没有最高频段的数据多,而且时钟频率也比较低。因此在FFT模块的时钟频率还保持100MHz的情况下,FFT的的运算时间足够,所以不需要采用最高频段的处理架构进行处理,本发明采用异步乒乓FIFO的处理方式,利用两个FIFO作为数据存储单元,一个FIFO写入数据的同时另一个FIFO读出数据,如图4所示。For the remaining frequency bands, due to the existence of the decimation filter, the number of data points generated by these frequency bands is not as large as that of the highest frequency band, and the clock frequency is relatively low. Therefore, when the clock frequency of the FFT module remains 100MHz, the operation time of the FFT is sufficient, so it is not necessary to use the processing architecture of the highest frequency band for processing. The present invention adopts the asynchronous ping-pong FIFO processing method and uses two FIFOs as data storage. Unit, one FIFO writes data while the other FIFO reads data, as shown in Figure 4.
输入数据在第一个周期内开始将第一组1K个数据点送入FIFO1,送完之后FIFO1的满标志变为1,关闭FIFO1的写使能,打开读使能,与此同时打开FIFO2的写使能。这一步操作将FIFO1置为读状态,将FIFO2置为写状态,可以实现数据连续存储。在FIFO2写入了1K个数据点后,FIFO2满标志置为1,于是类似于前面的步骤,将FIFO2的写使能关闭,打开读使能,同时将FIFO1的读使能关闭,打开写使能,这一步操作会让FIFO2置为读状态,而FIFO1置为写状态,于是开始循环往复,周而复始,直至数据传输完毕。The input data starts to send the first group of 1K data points into FIFO1 in the first cycle. After the transmission, the full flag of FIFO1 becomes 1, the write enable of FIFO1 is turned off, the read enable is turned on, and the FIFO2 is turned on at the same time. Write enable. In this step, FIFO1 is set to read state, and FIFO2 is set to write state, which can realize continuous data storage. After 1K data points are written in FIFO2, the FIFO2 full flag is set to 1, so similar to the previous steps, the write enable of FIFO2 is turned off, the read enable is turned on, and the read enable of FIFO1 is turned off and the write enable is turned on. Yes, this step will put FIFO2 in the read state, and FIFO1 in the write state, so the cycle starts to repeat, until the data transmission is completed.
本发明采用异步FIFO,写时钟是各级抽取滤波后降采样的时钟频率,与写入数据保持一致,读时钟是FFT的工作时钟,与读出数据保持一致。读时钟比写时钟快,因此在两个FIFO的读状态下,FIFO中的数据只读了一段时间,FIFO就置为空状态了,因此输入数据是连续的,根据时钟节拍依次对应的,但是输出数据却是分段输出的,每一段数据都是FIFO一次性读出的数据。The invention adopts asynchronous FIFO, the writing clock is the clock frequency of down-sampling after decimation and filtering at all levels, which is consistent with the writing data, and the reading clock is the working clock of the FFT, which is consistent with the reading data. The read clock is faster than the write clock, so in the read state of the two FIFOs, the data in the FIFO is read for a period of time, and the FIFO is set to an empty state, so the input data is continuous, corresponding to the clock beat in turn, but The output data is output in segments, and each segment of data is the data read out by the FIFO at one time.
基于上述相位噪声数据流处理装置,本发明还提供了一种基于FPGA的相位噪声数据流处理方法,包括以下步骤:Based on the above-mentioned phase noise data stream processing device, the present invention also provides an FPGA-based phase noise data stream processing method, comprising the following steps:
S1、将相位噪声信号输入数据处理模块,经多级抽取滤波单元产生多级不同采样率的相位噪声数据流;S1, input the phase noise signal into the data processing module, and generate multi-stage phase noise data streams with different sampling rates through the multi-stage extraction filtering unit;
S2、将各级相位噪声数据流经过数据流控制模块进行工作频率同步;S2. Synchronize the working frequency of the phase noise data streams at all levels through the data stream control module;
S3、将同步后的各级相位噪声数据流输入FFT模块计算频域信号;S3. Input the synchronized phase noise data streams at all levels into the FFT module to calculate the frequency domain signal;
S4、利用FIFO缓存频域数据,并输出处理数据。S4, using the FIFO to buffer the frequency domain data, and output the processed data.
在步骤S3中,本发明利用数据流控制模块设定最高频段的时钟频率作为每一级相位噪声数据流输入FFT模块处理的工作频率,并分别对最高频段数据流和跨时钟域数据流进行控制。In step S3, the present invention uses the data flow control module to set the clock frequency of the highest frequency band as the operating frequency of the input FFT module for each stage of phase noise data flow, and controls the highest frequency band data flow and the cross-clock domain data flow respectively. .
利用数据流控制模块对最高频段数据流进行控制具体为:Using the data flow control module to control the highest frequency band data flow is as follows:
设置多个FFT模块,将每一级相位噪声数据流划分为多个1024个数据组成的数据组,依次将每一个数据组分别输入FFT模块进行处理。Set up multiple FFT modules, divide each level of phase noise data stream into multiple data groups consisting of 1024 data, and sequentially input each data group into the FFT module for processing.
利用数据流控制模块对跨时钟域数据流进行控制具体为:Using the data flow control module to control the cross-clock domain data flow is as follows:
采用异步乒乓FIFO的处理方式,利用两个FIFO作为数据存储单元,一个FIFO写入数据的同时另一个FIFO读出数据。The asynchronous ping-pong FIFO processing method is adopted, and two FIFOs are used as data storage units. One FIFO writes data and the other FIFO reads data.
本发明在FPGA内部实现了抽取滤波和数据处理的设计,信号数据直接在同一块FPGA芯片内进行计算,提高了相位噪声数据的处理速度,减少了数据传输过程中的延迟与发生传输错误的可能性,同时还减低了系统复杂度。在设计过程中,本发明合理FPGA内部资源,实现了相位噪声数据实时并行处理效率的最大化,将相位噪声功率谱估计的最小分辨率降低到0.1Hz左右。对于相位噪声处理模块中的不同时钟域处理方法提出了不同的解决方案,两种方案适用于不同的情况。本发明对相位噪声数字处理方案进行了模块化划分,每个模块实现不同的功能,对相位噪声的数字化处理具有一定的指导意义。The invention realizes the design of decimation filtering and data processing in the FPGA, and the signal data is directly calculated in the same FPGA chip, which improves the processing speed of the phase noise data and reduces the delay in the data transmission process and the possibility of transmission errors. It also reduces the complexity of the system. In the design process, the present invention rationalizes the internal resources of the FPGA, maximizes the real-time parallel processing efficiency of the phase noise data, and reduces the minimum resolution of the phase noise power spectrum estimation to about 0.1 Hz. Different solutions are proposed for different clock domain processing methods in the phase noise processing module, and the two solutions are suitable for different situations. The invention divides the phase noise digital processing scheme into modules, each module realizes different functions, and has certain guiding significance for the digital processing of the phase noise.
本领域的普通技术人员将会意识到,这里所述的实施例是为了帮助读者理解本发明的原理,应被理解为本发明的保护范围并不局限于这样的特别陈述和实施例。本领域的普通技术人员可以根据本发明公开的这些技术启示做出各种不脱离本发明实质的其它各种具体变形和组合,这些变形和组合仍然在本发明的保护范围内。Those of ordinary skill in the art will appreciate that the embodiments described herein are intended to assist readers in understanding the principles of the present invention, and it should be understood that the scope of the present invention is not limited to such specific statements and embodiments. Those skilled in the art can make various other specific modifications and combinations without departing from the essence of the present invention according to the technical teachings disclosed in the present invention, and these modifications and combinations still fall within the protection scope of the present invention.
Claims (10)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010610485.1A CN111722027B (en) | 2020-06-30 | 2020-06-30 | FPGA-based Phase Noise Data Stream Processing Device and Method |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010610485.1A CN111722027B (en) | 2020-06-30 | 2020-06-30 | FPGA-based Phase Noise Data Stream Processing Device and Method |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111722027A true CN111722027A (en) | 2020-09-29 |
CN111722027B CN111722027B (en) | 2021-10-08 |
Family
ID=72571973
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010610485.1A Expired - Fee Related CN111722027B (en) | 2020-06-30 | 2020-06-30 | FPGA-based Phase Noise Data Stream Processing Device and Method |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111722027B (en) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112198428A (en) * | 2020-12-02 | 2021-01-08 | 佛山市联动科技股份有限公司 | Method and system for testing response time of radio frequency switch chip |
CN113419119A (en) * | 2021-06-02 | 2021-09-21 | 中电科思仪科技股份有限公司 | Parallel phase noise measurement method based on multi-core DSP |
CN118244019A (en) * | 2024-03-05 | 2024-06-25 | 西安科技大学 | Phase noise analyzer and phase noise analysis method |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20090244399A1 (en) * | 2008-03-26 | 2009-10-01 | Zoran Corporation | Unified single and multiple carrier receiver architecture |
CN102768302A (en) * | 2012-07-18 | 2012-11-07 | 北京无线电计量测试研究所 | Double-channel digital phase noise detection device and phase noise detection method |
CN103733516A (en) * | 2011-06-10 | 2014-04-16 | 技术研究及发展基金公司 | Receiver, transmitter and a method for digital multiple sub-band processing |
CN105306053A (en) * | 2015-11-05 | 2016-02-03 | 中国电子科技集团公司第四十一研究所 | Digital PLL (Phase-Locked Loop) based phase noise measuring device and method |
CN107966620A (en) * | 2017-11-21 | 2018-04-27 | 中国电子科技集团公司第四十研究所 | A kind of phase noise measurement device and method of digital frequency discrimination |
CN107976590A (en) * | 2017-11-21 | 2018-05-01 | 中国电子科技集团公司第四十研究所 | The data processing equipment and method of a kind of phase noise measurement |
-
2020
- 2020-06-30 CN CN202010610485.1A patent/CN111722027B/en not_active Expired - Fee Related
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20090244399A1 (en) * | 2008-03-26 | 2009-10-01 | Zoran Corporation | Unified single and multiple carrier receiver architecture |
CN103733516A (en) * | 2011-06-10 | 2014-04-16 | 技术研究及发展基金公司 | Receiver, transmitter and a method for digital multiple sub-band processing |
CN102768302A (en) * | 2012-07-18 | 2012-11-07 | 北京无线电计量测试研究所 | Double-channel digital phase noise detection device and phase noise detection method |
CN105306053A (en) * | 2015-11-05 | 2016-02-03 | 中国电子科技集团公司第四十一研究所 | Digital PLL (Phase-Locked Loop) based phase noise measuring device and method |
CN107966620A (en) * | 2017-11-21 | 2018-04-27 | 中国电子科技集团公司第四十研究所 | A kind of phase noise measurement device and method of digital frequency discrimination |
CN107976590A (en) * | 2017-11-21 | 2018-05-01 | 中国电子科技集团公司第四十研究所 | The data processing equipment and method of a kind of phase noise measurement |
Non-Patent Citations (1)
Title |
---|
PATRIK FLEISCHMANN等: "Implementation of a Cross-Spectrum FFT Analyzer for a Phase-Noise Test System in a Low-Cost FPGA", 《INTERNATIONAL JOURNAL OF MICROWAVE SCIENCE AND TECHNOLOGY》 * |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112198428A (en) * | 2020-12-02 | 2021-01-08 | 佛山市联动科技股份有限公司 | Method and system for testing response time of radio frequency switch chip |
CN113419119A (en) * | 2021-06-02 | 2021-09-21 | 中电科思仪科技股份有限公司 | Parallel phase noise measurement method based on multi-core DSP |
CN118244019A (en) * | 2024-03-05 | 2024-06-25 | 西安科技大学 | Phase noise analyzer and phase noise analysis method |
Also Published As
Publication number | Publication date |
---|---|
CN111722027B (en) | 2021-10-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111722027A (en) | FPGA-based Phase Noise Data Stream Processing Device and Method | |
CN113535620A (en) | A multi-channel synchronous high-speed data acquisition device | |
CN103969483B (en) | Digital triggering system of oscilloscope | |
CN101706521A (en) | Digital storage oscilloscope with function of time base fine tuning | |
CN102053186B (en) | Digital oscilloscope with variable-order digital filter | |
CN104393854A (en) | FPGA-based time division multiplexing cascaded integrator-comb decimation filter and realization method thereof | |
CN111294089A (en) | Broadband power line carrier communication symbol synchronization method based on FPGA | |
CN109581016B (en) | Random time equivalent sampling system | |
CN107976590A (en) | The data processing equipment and method of a kind of phase noise measurement | |
CN103048506B (en) | Method for calibrating data merging sequences of parallel acquisition system | |
CN110535551B (en) | Method and system for synchronizing fault recording sampling data in power system | |
JP5328489B2 (en) | Sampling apparatus, sampling method and program | |
CN103309981B (en) | ADC data organization system with high storage efficiency and method thereof | |
CN102944301B (en) | Digital peak detection method and system for ultrasonic signals based on variable-pitch sectioning method | |
CN109474356A (en) | Broadband multi channel signals energy detection system and method | |
CN103323063A (en) | Ultrasonic flow meter and time difference measuring method thereof | |
CN204086871U (en) | A kind of multiple signals synchronous sampling control circuit based on FPGA | |
CN110022201A (en) | Bypass attack power consumption profile based on FPGA acquires synchronized clock system | |
CN203224746U (en) | Real-time parallel multichannel signal acquisition system | |
WO2008075702A1 (en) | Signal measuring device, and signal measuring method | |
CN112861067B (en) | Phase difference detection method for tokamak plasma density measurement | |
CN113091897B (en) | Coincidence counting method and device, coincidence counting equipment and storage medium | |
CN209526729U (en) | Bypass attack power consumption profile based on FPGA acquires synchronized clock system | |
CN202424765U (en) | Parallel interleaved signal sampling system | |
Wang et al. | Design of dynamic synchronous multi-channel data acquisition system for lung sound based on FPGA |
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 | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20211008 |
|
CF01 | Termination of patent right due to non-payment of annual fee |