PIPELINE SIGNAL PROCESSING WITH HIGH RESOLUTION IN BOTH TIME AND FREQUENCY DOMAINS

An algorithm for real time signal processing with high accuracy of determining both frequency and time characteristics of RF signals is proposed. The algorithm provides frequency resolution through FFT processing and pulse width measurement in time domain. The algorithm is developed for real-time systems, for example in laboratory measurement devices or in radioemission monitoring applications. Keywords: signal processing, frequency measurement, pulse width measuring, real-time processing Manuscript submitted 17.04.2015 Radio phys. radio astron. 2015, 20(2): 180-186 REFERENCES 1. TSUI, J. B., 2004. Digital techniques for wideband receivers. Raleigh, NC, USA: SciTech Publishing Inc. DOI: https://doi.org/10.1049/sbra005e 2. TSUI, J. B.,  1986. Microwave Receivers With Electronic Warfare Applications. New York, USA: Wiley-Interscience. 3. NAMGOONG, W., 2003. AChannelized Digital Ultrawideband Receiver. IEEE Trans. Wireless Commun . vol. 2, no. 3, pp. 502–510. DOI: https://doi.org/10.1109/TWC.2003.811177 4. ZAHIRNIAK, D. R., SHARPIN, D. L. and FIELDS, T. W., 1998. AHardware-Efficient, Multirate, Digital Channelized Receiver Architecture. IEEE Trans. Aerosp. Electron. Syst . vol. 34, no. 1, pp. 137–152. DOI: https://doi.org/10.1109/7.640270 5. FIELDS, T. W., SHARPIN, D. L. and TSUI, J. B.,  1994. Digital Channelized IFM Receiver. In: Microwave Symposium Digest IEEEMTT-S International . San Diego, CA, USA, 23-27 May 1994, vol. 3, pp. 1667–1670. 6. LOPEZ-RISUENO, G., GRAJAL, J. and SANZ-OSORIO, A., 2005. Digital Channelized Receiver Based on Time-Frequency Analysis for Signal Interception. IEEE Trans. Aerosp. Electron. Syst . vol. 41, no. 3, pp. 879–898. DOI: https://doi.org/10.1109/TAES.2005.1541437


Introduction
In this paper, we consider the problem of real-time, high-resolution measurements of characteristics of signals observed in a wide frequency range.The signal characteristics to be measured include the central frequency, spectrum width, pulse width, time of arrival, amplitude.These characteristics are assumed to be measured with high resolution in both time and frequency domains.Such a problem is typical for radars, communication, astronomy and electronic warfare systems [1,2].
The major difficulty of the problem is the necessity to measure pulse characteristics in real time by processing large dataflow.This makes problematic using recursive methods of analysis or methods which require storing large prehistory of the analyzed signal.The above limitations call for the usage of a pipeline signal processing approach.
As a rule, signal processing in wideband receivers is implemented using bank filters [3][4][5], that allows reducing the analysis of a wide frequency range to parallel analysis of several narrow frequency bands.In earlier systems, both filter banks and the consequent measurement circuits were analogous [1].As the capabilities of available ADCs and processing boards were growing, it became possible to use digital processing: first, for narrow-band signal processing, then for filter bank implementation.In digital implementation, the filter banks are often implemented through FFT of frames of the input signal [4,5].
In designing a system based on a filter bank, one has to choose the pass-band of a single filter.This usually leads to a compromise between accuracy of frequency measurement and accuracy of pulse width measurement.On the one hand, decreasing the pass band allows for better frequency resolution and higher signal-to-noise ratio (SNR) values, on the other hand, narrower filters have wider pulse responses, which decreases accuracy of time measurement.Different solutions have been proposed to solve this problem.
In paper [6], the authors propose to use a wide pass-band, suitable for the shortest pulses, and then increase the SNR through non-coherent accumulation in time.They calculate two or three versions of measurement with different non-coherent accumulation duration.After that, by comparing these measurements, it is possible to estimate which of them is more accurate.
One of the methods used to measure the central frequency with less error than the resolution of the filter bank is by differentiation of the phase of the detected signal.An example of application of this method can be found in [4].
In our work, we propose the following solutions for enhancing the accuracy of pulse width and central frequency measurement.First, the central frequency is calculated through integration in frequency domain, that makes the frequency measurement error less than a single filter pass-band.Second, the frequency bins that satisfy detection criteria are fed to iFFT to convert the signal back to the time-domain (however, with less noise due to narrower bandwidth), that allows measuring the pulse width with better accuracy.
The paper is organized as follows.In Section 2, we formulate the problem.In Section 3, we give definitions of the pulse characteristics that are used in this work.In Section 4, a general structure of the developed algorithm is given.Section 5 describes in Pipeline Signal Processing with High Resolution in Both Time and Frequency Domains more detail the spectrums calculations and distribution of data between the signal-following channels.Section 6 contains a detailed description of the signal-following channel structure.Conclusions are given in Section 7.

Problem Formulation
We assume that signals observed in a wide frequency band are digitized at some sampling frequency , s F resulting in a sequence of real values , n x where n is the sample number.We assume that, generally, the signals are a mixture of pulsed signals, continuous wave signals, and random Gaussian noises.Our task is to determine characteristics of continuous wave and pulsed signals.Also, we assume that pulses should be measured individually.
We consider the case when both frequency and temporal characteristics of the signals have to be measured with high accuracy in the sense that 1, where F  and T  are root mean square errors of the corresponding frequency and temporal measurements.
Development of the discussed approach to the signal characteristics measurements was initiated by the necessity of developing a digital receiver with a 1 GHz frequency band.Other requirements were: pulse widths from 50 ns thru 5 ms, minimal pulse repetition interval of 1 s, accuracy of the central frequency measurement of 0.5 MHz, pulse width measurement error lower than 25 ns, pulse of arrival measurement error less than 25 ns.
For the planed ADC with the bit depth of 10 bits and the sampling frequency of 2.5 GHz, the dataflow is as high as 25 gigabits per second.Processing of such data flows is possible by using modern FPGA.However, in order to weaken the requirements to such hardware realization, efficient pipeline processing algorithms should be proposed.

Definition of Pulse Parameters
In real-world applications, pulse envelope is not strictly rectangular.Therefore, there are different ways to determine the pulse width.One of the widely used definitions of pulse width is duration of time when an instant value of the video pulse is higher than 0.9 of the peak value.This definition is not convenient for real-time measurements because, in order to determine whether a pulse has started, we need to know the peak value, and the peak has not yet occurred.Practically, this problem can be solved by using the delay lines.However, the delay should be longer than the largest expected pulse width, and when the range of the observed pulse widths is expected to be large (several orders of magnitude), digital implementation of delay requires more memory than is available in the current processing boards.Also, this definition is not suitable for pulses having complex envelopes.
Another definition of pulse width is using a threshold related to the noise level.This definition can be easily implemented in a real-time system.However, it has an essential drawback: for pulses with large rise and fall times, the measured value depends on the SNR value.According to this definition, two pulses with the same envelope but with different amplitude have different pulse widths.
To overcome the mentioned problems we use a pulse width definition which is based on integral characteristics of pulse: 1. Pulse mid-time 0 , t where ( ) p t is instant value of signal power, while A t and B t limit the time during which the instant power was higher than the detection threshold.Basically, (2) is averaging of time using the instant value of signal power as a weighting function.
2. Pulse width , As is seen from the equation, we define the pulse width as variance of time, again, using the instant value of signal power as a weighting function.Introduction of the coefficient 2 3 was necessary to provide for the case of rectangular pulses coincidence of the pulse value defined as (3) with other pulse width definitions.
3. Central frequency 0 , Definition of the central frequency is similar to that of pulse mid-time, except for the integration being performed in the frequency domain, and the power spectral density ( ) P f being used as a weighting function.
4. Spectrum width , Spectrum width definition is similar to that of pulse width, except for the integration being performed in the frequency domain, and the power spectral density ( ) P f being used as a weighting function.
The above definitions are convenient because they are applicable to pulses with arbitrary envelopes and they can be implemented in real-time signal processing.

General Structure of the Algorithm
Before delving into details of the data processing algorithm, consider its general structure showed in Fig. 1.
The first stage of processing the n x data, coming from the ADC, is their reorganization into frames and calculation of spectrum , i k F for each frame.Hereinafter, index i is the frame number, and index k is the number of the frequency bin.
Calculation of spectra is necessary to solve the following tasks: measuring of the central frequency; separation of pulses which overlap in time domain but do not overlap in frequency domain; dynamic adaptation of the processed frequency bandwidth corresponding to the analyzed pulse spectrum in order to increase SNR.
The next step of data processing is detection.The signal power is compared with frequency dependent threshold values.The threshold values are calculated using the spectra statistical analysis.
Then the data are fed to several parallel pulsefollowing channels.Several channels are necessary to analyze several pulses overlapping in time domain.A pulse-following channel performs calculations in both frequency and time domains, and, when the pulse is over, calculates its characteristics and sends them either to an external processing module or to a recording system.

Calculation of Spectra
Let us consider the spectrum calculation in detail.The first step is rearranging the ADC data n x into frames , i l x of 2N samples.Index i denotes the frame number and index l denotes sample number within a frame.
In order to decrease the side-lobes of long pulses and to increase the accuracy of frequency measurement, the frames are multiplied by a window function.Accounting for the fact that in the following steps of processing we need a possibility to restore the signal from several frames, the frames are overlapping by 50 % of their length, while the window function l w should satisfy the following: The results within this work were obtained by using the Hann window Whereas the effect of windowing on the sidelobes level and frequency resolution is well known, the effect on the accuracy of central frequency measurement is less known.In Fig. 2 one can find a comparison of central frequency measurement error (when measurement is made according to (4)) for rectangular and Hann windows.As is seen from the Figure, the Hann window allows for much more accurate measurement; for the most part of the analyzed bandwidth, the error value becomes smaller than a frequency bin.
Mathematically, separation of the ADC data into frames is described as where for each i-th frame, the l index varies through 0 to 2 1. N  After applying the window function, the spectrum , i k F is calculated for each frame: In order to decrease the computation time, 2N real values are transformed into N complex values.Then, an intermediate spectrum , and then the needed spectrum , where asterisk denotes complex conjugation.This scheme of spectrum calculation requires FFT length of N instead of 2N.

Detection
If the power in k-th frequency bin * ( ) is higher than the corresponding threshold value , k thr we assume that the frequency bin contains an artificial signal or a part of it.
For convenience of the following processing, the frequency bins with signal power below the detection threshold are zeroed.This effectively narrows the frequency bandwidth of the signal in the following stages of processing.
The main problem in the detection stage is automatic calculation of the detection threshold values .
k thr To solve this problem, we analyze statistical properties of the power in each frequency bin.Namely, we calculate the following values: is the average value of ; is the average absolute value of difference between power and its average value.Now consider the relation between these values for two special cases.
Case 1.The signal is random with Gaussian distribution of its instant values (noise).
It can be showed that in case of analogous signal, the above values are related as 2 0.736.
However, in a real system containing ADC, this value can be slightly different.
If the SNR value is so large that the presence of noise can be neglected, 2(1 ), where D is We have treated differently three situations: In this case we assume that the signal either has constant amplitude, or is a pulse signal with duty factor larger than 0.9.The threshold value was set several decibels below the average value of power, so that the signal was detected.
In this case, we assume that the signal is either a noise or a mixture of noise with short pulses with the average power of these pulses being smaller than the average power of noise.In this case, the noise power was considered to be equal to , AV k p and threshold value was set so that the false alarm rate was below the demanded value.
In this case, we assume that the signal is a sequence of pulses with duty factor less than 0.3.The threshold value was set by interpolation of the values calculated for the bins with other types of signal.

Distribution of the Frequency Bins Between the Signal-Following Channels
The frequency bins which have passed the detection threshold are distributed between the pulse-following channels.During the distribution, it is taken into ac-count that short pulses or short rise and fall times of pulses can have side-lobes.Also, the previous spectra are taken into account: if the same frequency bins have passed the detection threshold in several subsequent spectra, these frequency bins are distributed to the same pulse-following channel.If there are several different pulses detected in the same spectrum then the corresponding frequency bins are distributed to different channels.

Signal-Following Channel
The general block-diagram of a pulse-following channel is given in Fig. 3. First, a frequency-domain analysis is made.Then, the data are converted to time domain.Then, time-domain analysis is made.When the last frame of the pulse is analyzed, the pulse characteristics are calculated.

Spectrum Analysis
The calculations in the frequency domain are intermediate in calculation of the central frequency of the pulse and the pulse bandwidth.Namely, the following three sums are calculated: where i is the spectrum number, * , , , i k i k i k P F F   is power in the k-th sample of the i-th spectrum, k f is the frequency corresponding to the k-th sample of the spectrum.By index i, the summing is performed along all the frames containing the analyzed pulse.By index k, the summing is performed along the frequency bins that were distributed to this pulse-following channel.

Transition to Time Domain
The first step of transition to time domain is performed through discrete Fourier transformation:  x First, they are N complex values rather than 2N real ones.Second, due to processing in the frequency domain they have less noise and contain only one pulse even if originally there were two pulses at different frequencies.
The next step of transition to time domain is combining of the overlapping frames into a single sequence: first half of the current frame is summed with the second half of the previous frame, while the second half of the current frame is stored for summing with the next one.Thus, we arrive at / 2 , 2 1, , where n z is a complex signal in time domain with the sampling frequency of 2, s F and index l is varied from 0 through 2 1 N  for each i-th frame.

Time-Domain Analysis
In the time domain the following sums are calculated: where n t is the time corresponding to the n-th sample of the signal in time domain, n varies along all the samples related to the analyzed pulse, * n n n p z z  is instant power at the n-th sample.

Calculation of Pulse Characteristics
If, during the time-domain analysis, all the samples of a frame are zeroes, the pulse is considered to be over.In this case, the next step of signal analysis is calculation of the pulse characteristics: average frequency 0 , average power within the pulse 2 .
P AV S P S   When the above calculations are complete, the characteristics are sent to the recording system or to an external device.Then, the pulse-following channel is free for analysis of another pulse.

Testing Results
In order to verify the algorithm performance, the ADC data were numerically simulated.The following parameters were used: ADC resolution 8 bit; Sampling frequency 2.2 GHz; Type of pulses rectangular, no modulation; Pulse width 50 5000  ns; Carrier frequencies 1.2-2.1 GHz; SNR values 10 and 25 dB.The frame length was 232.7 ns (512 samples), therefore, each frequency bin had a bandwidth of 4.3 MHz.
In Fig. 4 one can find root mean square error of central frequency calculation plotted versus pulse width for two different values of SNR.As is seen in this figure, the error never exceeds 1 MHz, that is several times less than a frequency bin bandwidth.
In Fig. 5, one can find root mean square error of pulse width calculation for two different values of SNR.

Fig. 1 .
Fig. 1.General structure of the algorithm

Fig. 2 .
Fig. 2. Influence of the weighting function on the frequency measurement accuracy

Fig. 3 .
Fig. 3. General structure of a frequency-following channel