93096v00 Beamforming Whitepaper PDF
93096v00 Beamforming Whitepaper PDF
93096v00 Beamforming Whitepaper PDF
Introduction
This paper demonstrates how you can use MATLAB® and Simulink® features and toolboxes to:
1. Design and synthesize complex antenna elements and MIMO phased arrays and subarrays
2. Partition hybrid beamforming systems intelligently across RF and digital domains
3. Validate spatial signal processing algorithm concepts
4. Verify link-level designs using high-fidelity simulations
5. Evaluate the impacts of failed or imperfect elements and subarrays
6. Eliminate design problems before building hardware
A fundamental goal of MATLAB and Simulink products for this application is to provide a direct
path to expand the level of fidelity of the model over the many phases of project development. This
includes tasks such as bringing measured data into the model for the antenna pattern and the propa-
gation paths. It also includes expanding the level of fidelity of the RF chain by bringing in models of
RF components in the context of multidomain simulation with Simulink.
Note: In the examples below, we use Phased Array System Toolbox™, Antenna Toolbox™, RF Blockset,
RF Toolbox™, Communications System Toolbox™, and Global Optimization Toolbox to complete the
associated workflows.
Smaller wavelengths at these higher frequency bands enable implementations with more antenna ele-
ments per system within small form factors. Signal path and propagation challenges associated with
operating at these frequencies also increases. For example, the attenuation due to gas absorption for a
60-GHz waveform is more than 10 dB/km, while a 700-MHz waveform experiences an attenuation on
the order of 0.01 dB/km. You can offset these losses with intelligent array design and the use of spatial
signal processing techniques, including beamforming. This type of processing is enabled by massive
MIMO arrays and can be used directly to provide higher link-level gains to overcome path loss and
undesirable interference sources.
To achieve the most control and flexibility with beamforming in an active array design, it is desirable
to have independent weighting control over each antenna array element. This requires a transmit/
W H I T E PA P E R | 2
Hybrid Beamforming for Massive MIMO Phased Array Systems
receive (T/R) module dedicated to each element. For array sizes that are typical of a massive MIMO
communication system, this type of architecture is difficult to build due to cost, space, and power
limitations. For example, having a high performance ADC and DAC for every channel (along with
the supporting components) can drive the cost and power beyond allocated design budgets. Similarly,
having variable gain amplifiers in the RF chain for each channel increases the system cost.
Hybrid Beamforming
Hybrid beamforming is a technique you can use to partition beamforming between the digital and
RF domains. System designers can implement hybrid beamforming to balance flexibility and cost
trade-offs while still fielding a system that meets the required performance parameters. Hybrid
beamforming designs are developed by combining multiple array elements into subarray modules. A
transmit/receive (T/R) module is dedicated to a subarray in the array and therefore fewer T/R mod-
ules are required in the system. The number of elements, and the positioning within each subarray,
can be selected to ensure system-level performance is met across a range of steering angles.
Using the transmit signal chain as our first example, each element within a subarray can have a phase
shift applied directly in the RF domain, while digital beamforming techniques based on complex
weighting vectors can be applied on the signals that feed each subarray. Digital beamforming allows
control of the signal for both amplitude and phase on signals aggregated at the subarray level. For cost
and complexity reasons, the RF control is typically limited to applying phase shifts to each
of the elements.
Systems such as the one shown in Figure 1 are complex to develop. You can use modeling techniques
to design and evaluate massive MIMO arrays and the corresponding RF and digital architectures
needed to help manage their complexity. With these techniques, you can reduce risk and validate
design approaches at the earliest stages of a project. We will first look at an array design example.
We have selected parameters for each of the examples that are common in the 5G wireless community
but all of the examples shown can be modified to match your desired configuration.
W H I T E PA P E R | 3
Hybrid Beamforming for Massive MIMO Phased Array Systems
W H I T E PA P E R | 4
Hybrid Beamforming for Massive MIMO Phased Array Systems
You can edit all design parameters that define an array directly on the left side of the app in the Array
Settings window shown in Figure 2. The parameters include array size, array geometry, element spac-
ing, and tapering.
From the app, you can easily visualize the resulting geometry, 2D and 3D Directivity, and the Grating
Lobe Diagrams.
To achieve steering in azimuth and elevation, you can design a uniformly spaced planar array. Figure
3 shows an example of a 64x64 uniform rectangular array that was designed within the Sensor Array
Analyzer app. The large number of elements provides a high level of directivity. The design shown
below also has tapering applied to the rows and columns of the array to reduce sidelobe levels. As is
the case with all design choices, the larger antenna gains achieved with narrower beams must be bal-
anced with the fact that MIMO systems are based on scattering environments that also depend on
broader beam patterns to maximize channel capacity. This trade-off can also be assessed during the
interactive design process.
Figure 3. Beam pattern and grating lobe diagram for 66 GHz 64x64 element design.
The image displayed in the right side of Figure 3 shows that with half wavelength spacing between the
elements, there are no grating lobes present across the full range of steering directions as expected. It
is important to understand the impacts here because it may be necessary to increase the spacing
between the elements to mitigate the effects of mutual coupling. This is an important design consid-
eration that needs to be accounted for. Fortunately, at higher frequencies where half wavelength spac-
ing is small to start with, an increase in element separation by 10% of a wavelength only requires a
change of less than 0.5 mm at 66 GHz. Figure 4 shows the trade-off that must be considered using a
grating lobe diagram with a 10% increase in the spacing between the elements. For this example, grat-
ing lobes are only present with azimuth and elevation angles outside +/- 54.9 degrees. This can be
traded off against the array with less space between elements (and more mutual coupling effects).
W H I T E PA P E R | 5
Hybrid Beamforming for Massive MIMO Phased Array Systems
Figure 4. Grating lobe diagram with element spacing larger than half a wavelength
When the process of designing the array is complete, you can generate MATLAB code from the app
and either use directly in your model or as a starting point for further customization, as shown in
Figure 5.
W H I T E PA P E R | 6
Hybrid Beamforming for Massive MIMO Phased Array Systems
p = patchMicrostrip;
p.Length = 0.49*lambda;
p.Width = 1.5*0.49*lambda;
p.Height = 0.01*lambda;
p.GroundPlaneLength = lambda;
p.GroundPlaneWidth = lambda;
W H I T E PA P E R | 7
Hybrid Beamforming for Massive MIMO Phased Array Systems
We generate the pattern of the patch element in free space using the full wave EM solver in Antenna
Toolbox where F0 = 66e9:
figure
pattern(p, F0);
Figure 7. Element pattern generated using a full wave EM solver in Antenna Toolbox.
Note that we modified the patch element parameters directly in the code above, but there is also a
dedicated function in Antenna Toolbox which you can use to generate the parameters directly for any
library element and frequency combination. In this example it would be:
p = design(patchMicrostrip,66e9)
Next, we build a uniform linear array (ULA) which serves as the subarray in this example. We then
create a full array based on a collection of multiple subarrays. From the code shown above, we gener-
ate the pattern, P_isolated, for each element in the subarray. P_isolated is defined as a pattern across a
range of azimuth and elevation angles.
We model an 8x1 element uniform linear array, where each element has a pattern response from the
patch element. Eight subarrays are then replicated to form an 8x8 array using the MATLAB code
W H I T E PA P E R | 8
Hybrid Beamforming for Massive MIMO Phased Array Systems
shown below. Note that the taper for the elements in each subarray can be applied directly within the
subarray. Hamming weights are added to reduce the level of sidelobes in the resulting pattern.
patchElement = phased.CustomAntennaElement;
patchElement.AzimuthAngles = (-180:5:180);
patchElement.ElevationAngles = (-90:5:90);
patchElement.RadiationPattern = P _ isolated;
sULA = phased.ULA(‘NumElements’,numElementsA,...
‘Element’,patchElement,...
‘ElementSpacing’, lambda/Spacing,...
‘ArrayAxis’,’z’,’Taper’, hamming(8));
aURA = phased.ReplicatedSubarray(‘Subarray’,sULA,...
‘GridSize’,[1 numElementsS],...
‘SubarraySteering’,’Phase’,...
‘PhaseShifterFrequency’, F0,...
‘GridSpacing’, lambda/Spacing);
Phased Array System Toolbox makes it easy to build a large array by replicating subarrays using the
phased.ReplicatedSubarray System object, as shown in the code above.
The resulting array structure can be visualized as follows, where each subarray (8 elements x 1 subar-
ray) is shown on the left of Figure 8. The full array (1 subarray replicated in 8 columns) is shown on
the right.
W H I T E PA P E R | 9
Hybrid Beamforming for Massive MIMO Phased Array Systems
W H I T E PA P E R | 10
Hybrid Beamforming for Massive MIMO Phased Array Systems
From the hybrid beamforming perspective, you can pass each of the signals that drive elements
within the 8x1 array through a phase shifter for steering in the elevation plane. We show how this can
be modeled in the RF domain in the following section. In addition, each of the signals that feed the
eight subarrays can be controlled via digital beamforming techniques to steer the beam in the azi-
muth direction.
The resulting beam pattern for this array configuration, which has been calculated using superposi-
tion, is shown in Figure 10. With this combination of RF and digital beamforming, you can achieve
more granularity in the steering angle in the azimuth direction. Figure 11 provides a comparison of
the subarray pattern computed with superposition and Method of Moments.
Figure 10. Array pattern generated using superposition techniques with Phased Array System Toolbox.
Figure 11. Comparison of the subarray pattern computed with superposition and Method of Moments.
W H I T E PA P E R | 11
Hybrid Beamforming for Massive MIMO Phased Array Systems
In this example, we start with a partition of our architecture for the transmit chain with phase shifts
(applied in the RF domain) and complex weights (applied in the digital domain). For basic analysis,
you can generate the weights using MATLAB and Phased Array System Toolbox, as shown in the
code below.
wT _ digital = steervec(subpos,[tp.steeringAngle;0]);
wT _ analog = exp(li*angle(steervec(subelempos,[tp.steeringAngle;0])));
%%
% From the system perspective, the effect of the hybrid beamforming can
Combined with the array design parameters built up earlier, the digital weights and the RF phase
shifts generated in the MATLAB code above can be applied using an architecture model in Simulink,
which can then be part of a multi-domain system simulation (as shown in Figure 12).
In this block diagram, you can see that the phase shifts are provided as inputs to each of the subar-
rays, which are then applied to the RF signals. The digital beamforming weights are used to shape the
signals feeding each of the subarrays.
RF Blockset is used within Simulink to perform the circuit envelope simulation (note that the circuit
envelope allows you to achieve fast simulation). RF Blockset contains a library of RF components such
as amplifiers, mixers, filters, couplers splitters, and other typical parts that you can use to create an
RF chain. This is done to increase the level of fidelity of the model.
W H I T E PA P E R | 12
Hybrid Beamforming for Massive MIMO Phased Array Systems
Figure 13. RF transmit chain using RF Blockset blocks to control phase shifters.
Figure 13 provides a detailed view into a single RF Array block from Figure 12. The RF phase shifters
shown in Figure 13 perform the beamforming in the elevation plane, while the baseband weights pro-
vide the beamforming in the azimuth plane.
You can configure each of the blocks with parameters taken from the data sheet of the supplier. The
power amplifier and the modulator blocks are shown below, in Figures 14 and 15, to illustrate this
capability.
W H I T E PA P E R | 13
Hybrid Beamforming for Massive MIMO Phased Array Systems
An alternative approach to creating the RF chain in the model involves using the RF Budget Analyzer,
which is part of RF Toolbox, (shown in Figure 16). Here, you can build up your RF chain directly in
the app, including devices represented with S-parameters, mixers, amplifiers, and filters. This app
provides an intuitive interface to build up your link budget directly. You can export the resulting cas-
cade directly to the system model using the Export option on the tool strip.
W H I T E PA P E R | 14
Hybrid Beamforming for Massive MIMO Phased Array Systems
It is worth noting that the final block in our example also includes the detailed model of the array
described earlier. The pattern (represented as P_antenna) includes the effects of mutual coupling and
is used directly in the array as a Custom Antenna. P_antenna is defined as a radiation pattern across
azimuth and elevation angles. Note that a pattern measured from an actual element could also be
imported into the model in this same way.
Also, the array parameters of an 8-element ULA are also included in this same block, as shown in
Figure 17 below.
W H I T E PA P E R | 15
Hybrid Beamforming for Massive MIMO Phased Array Systems
Figure 17. Using the Array Design within the Simulink block.
W H I T E PA P E R | 16
Hybrid Beamforming for Massive MIMO Phased Array Systems
Global Optimization Toolbox provides solvers that can be used when there are many locally optimal
solutions (or when the functions are not smooth). In our example, we are looking to get the best per-
formance across a set of steering angles and frequencies, which translates to the need for multiple
optimal solutions.
Constraints for the outputs, for example weights and element positions, can be set up as part of the
optimization. This can include parameters that bound the number of elements per subarray, where
the elements are located in the subarray. It can also include accounting for the effects of phased shift
quantization. You can use this general capability to ensure that the design coming out of optimization
is actually buildable.
Once the array is set up, you can determine the beam patterns across both the azimuth and elevation
angles. You can then use this data directly to extract the key metrics associated with the pattern. This
example focuses on the main lobe, sidelobes, and beamwidth, but many other parameters could be
considered.
For a detailed example, see the code available here.
W H I T E PA P E R | 17
Hybrid Beamforming for Massive MIMO Phased Array Systems
You can perform similar analysis at the subarray level as well. An example is shown below in Figure
20, where the array is built up from 6x6 subarrays. The resulting beam pattern is also shown with 10
of the 36 subarrays in a failed state. Again, you can use this type of data to determine how many sub-
arrays should be implemented. It can also be used in a way similar to the maintenance concept
described earlier.
W H I T E PA P E R | 18
Hybrid Beamforming for Massive MIMO Phased Array Systems
Once the array, subarray, and beamforming design are completed, you can implement a larger system
around the array and subarrays. You can setup scenarios and signal processing algorithms, including
beamforming and DOA integration. There are multiple ways to visualize the link-level performance,
including the constellation diagrams shown below. The link to this example demonstrates how this
can be accomplished.
W H I T E PA P E R | 19
Hybrid Beamforming for Massive MIMO Phased Array Systems
W H I T E PA P E R | 20
Hybrid Beamforming for Massive MIMO Phased Array Systems
Summary
MIMO arrays and the corresponding RF and digital architectures are critical components of 5G
designs. These components also drive the related hybrid beamforming systems. A balance must be
reached in these systems to meet system performance goals and system-level cost objectives.
Modeling and simulation techniques can help reduce the risk associated with this complex workflow.
Higher levels of fidelity can be added across the project life cycle to bring the model in line with the
end system implementation.
Developing a hybrid beamformer and evaluating algorithm alternatives is only the first step toward
achieving the required performance of a wireless communications system. To assess performance, the
beamformer must be integrated into a system-level model and evaluated over a collection of parame-
ter, steering, and channel combinations.
Modeling these beamforming algorithms in the context of an entire system, including RF, antenna,
and signal processing components, can help verify design choices at the earliest phases of the project
and reduce the associated challenges.
In MATLAB you can design antenna elements with a full wave EM solver. You can use the resulting
element patterns directly in your complex array design models. It is easy to iterate the key parameters
of the array, including the geometry, tapering, element spacing, and the lattice structure between ele-
ments. As you design the array, you have access to a full set of visualizations including 2D and 3D
directivity and grating lobe diagrams. Alternatively, you can start with a beam pattern and synthesize
an array which generates this desired pattern.
You have a library of spatial signal processing algorithms available to be used in your system model,
including narrowband and wideband beamforming and direction of arrival (DOA) estimation
algorithms.
You can use individual components, such as baseband receive and transmit systems, and connect
within MATLAB to form a system link-level model where your designs can be evaluated and tested in
the context of overall system performance. Many supporting components are also provided, including
model propagation effects due to atmospheric conditions (e.g. rain, gas, fog), multi-path reflections,
and platform motion modeling.
In addition to the system modeling described above, you can use the phased array model to evaluate
areas such as equipment life cycle planning (failed element and subarray impacts) or to help with the
development of calibration frameworks (to correct for imperfect elements and arrays).
Expanding the level of fidelity in the RF domain can be valuable as your project evolves. You have
multiple ways to do this with your antenna and RF designs.
W H I T E PA P E R | 21
Hybrid Beamforming for Massive MIMO Phased Array Systems
Learn More
© 2017 The MathWorks, Inc. MATLAB and Simulink are registered trademarks of The MathWorks, Inc. See mathworks.com/trademarks for a list of additional trademarks.
Other product or brand names may be trademarks or registered trademarks of their respective holders.
W H I T E PA P E R | 22
93096v00 03/17