2.2. MIMO RADAR CONCEPT
17
where L is the number of elements in the virtual array and X
l
(f ) refers to
the spectrum of the signal in the l
th
virtual array element and a
l
v
(θ) refers to
the l
th
element of the steering vector. Intuitively, the formula above finds the
amplitudes (gains) associated with the angle of arrivals (AOA) in the whole
imaging area. It can be thought as finding a frequency spectrum of a time-
domain signal where frequency corresponds to direction and time samples
correspond to space samples:
Figure 2.5: Virtual antenna array
Consequently, assuming antennas in the virtual array uniformly spaced
and distance between two antennas is d, we can find the relation between θ
and virtual array as:
L−1
l=0
X
l
(f ) · e
−j2πsl
L
=
L−1
l=0
X
l
(f ) · e
−j2πdl sin θ
λ
(2.30)
where the range of s is 1 ≤ s ≤ L.
The left side of the Equation 2.30 is the Discrete Fourier Transform and
the right side is the Equation 2.29 modified for virtual array representation.
The equation above will help us to describe the relation of a virtual antenna
number or FFT bin s with AOA (θ):
−
j2πsl
L
= −
j2πdl sin θ
λ
(2.31)
which gives us θ expressed as:
θ = arcsin
sλ
dL
(2.32)
Since we want 180
o
view, the angle of arrival θ will range from −90
o
to 90
o
.
Angular resolution of a radar is the minimum angular separation that the
radar can distinguish two objects located at the same range. It is determined
by the antenna beam width; the smaller the beam width is, the better the
angular resolution becomes [9]. The beam width of the antenna is directly
18
CHAPTER 2. FMCW SIGNAL PROCESSING
proportional to the the wavelength of the transmitted signal and inversely
proportional to the effective antenna aperture. Hence, considering a con-
stant wavelength, increasing the effective antenna aperture will decrease the
antenna beam width and increase the angular resolution [12]. This is one of
the reasons why the MIMO radar is preferred over other alternatives such as
the phased-array radar. It allows us to increase the antenna aperture, thus
the angular resolution by using the same number of antennas.
Chapter 3
Requirements
This chapter describes the analysis of the algorithm that the signal processing
is based on. The first section describes the Matlab model of the radar signal
processing. The second section provides the computational analysis on the
FFT algorithm which is the main functional block of the signal processing
and gives the requirements for the architecture to be implemented. The next
section discusses the architectures proposed in the recent literature. Finally,
the last section provides a signal-flow analysis of the radar processing.
3.1
Matlab Model
The Matlab model of the reception part of the radar application was provided
by the NXP Semiconductors. The essential part of the code is 3D FFT mod-
ule which is used to get the frequency domain representation of the received
signals from their time and space domain equivalents. Later, the frequency
domain representation is used to plot the Range-Doppler spectrum and the
bearing information. Provided code had no measurement file that could be
used to test the model. To be able to test the radar Matlab function was
implemented which generates an input signal based on the MIMO FMCW
model presented in Chapter 2. The function implements the Equation 2.25
from Chapter 2 with three transmitting and four receiving antennas. The
output of the tested Matlab model can be seen in the Figure 3.1 and 3.2.
The input signal was generated considering an object located at 4 m initial
distance with 1 rad counter-clockwise angular position and moving with a
relative velocity of 4 m/s (14.4 km/h). Figure 3.1 shows the range-Doppler
spectrum of the radar. It can be seen that the range of the the target is 4
m and its relative velocity is around 15 km/h. Figure 3.2 shows the relative
position of the object with respect to the radar transceiver.
19
20
CHAPTER 3. REQUIREMENTS
Figure 3.1: Range-Doppler Spectrum
Figure 3.2: Birdseye view
3.2
Computational Analysis
We have seen in Chapter 2 that the main processing block of the radar
application is the FFT block. The FFT is a fast algorithm that computes
the discrete Fourier transform of the time domain samples x
n
:
X
k
=
N −1
n=0
x
n
e
−
2πi
N
nk
(3.1)
The algorithm allows to reduce the complexity of the DFT computation from
O(n
2
) to O(n log n).
Straightforward Starburst MPSoC implementation of the signal process-
ing would be to use MicroBlaze cores to perform Fast Fourier Transforms.
3.2. COMPUTATIONAL ANALYSIS
21
The platform has enough processing cores to support simultaneous process-
ing of signals coming from multiple receiving antennas. Hence, it should be
studied if MicroBlaze cores could provide enough computing power for the
FFT processes used in the signal processing while taking into account the
real-time constraints of the application.
The computational requirements for the FFT process can provide us with
an overview of the required computational power. The analysis of the al-
gorithm shows that N point FFT requires
N
2
(log
2
N ) number of complex
multiplications and N log
2
N number of complex additions. Taking into ac-
count the fact that multiplications in the last stage of the FFT are simply
multiplications by 1, we can exclude the multiplication operations in that
stage. Therefore, the number of complex multiplications required will be
N
2
(log
2
N − 1). Additionally, each complex multiplication contains four real
multiplications and two real additions. By combining these two we can ex-
press the number of real multiplications (RM) required as:
RM = 2N (log
2
N − 1)
(3.2)
Similarly, each complex addition contains two real additions. As a result,
the number of real additions (RA) can be expressed as:
RA = N (log
2
N − 1) + 2N log
2
N
(3.3)
According to the MicroBlaze Reference Guide, the core has a Floating Point
Unit (FPU) which supports single-precision floating point arithmetic. As
stated in the reference, floating-point addition and multiplication requires 4
clock cycles in non-area optimized mode and 6 clock cycles in area optimized
mode. Considering using the single-precision floating point numbers and
configuring the MicroBlaze core in non-area optimized mode, we can find the
number of clock cycles (NCC) required for the FFT processing as:
N CC = 4 · (RM + RA)
(3.4)
The first FFT stage is very crucial from the perspective that it has a
real-time requirement to finish the 1024 point FFT processing in 35.6 µs,
since in every 35.6 µs new 1024 samples will be available. By using the
Equations 3.2 and 3.3, we can find that the number of real multiplications and
additions needed for this FFT; which are 18432 and 29696 respectively. By
substituting the values in Equation 3.4, we can find that the number of clock
cycles required to finish the FFT equals to 192512. Since the MicroBlaze core
in Starburst runs at 100 MHz clock frequency, the time needed to finish the
FFT process will be 1925.12 µs. The resulting value gives us the lower bound
Dostları ilə paylaş: |