Model and simulate O-RAN with MATLAB
An open radio access network (O-RAN) is a type of radio access network (RAN) that allows interoperability between cellular network equipment developed by different vendors. O-RAN aims to transform the traditional monolithic hardware-centric RAN design into one that uses separate building blocks with open and standardized interfaces. As a result, wireless network equipment providers can focus on providing specific software components rather than building an entire RAN. This componentization enables wireless service providers to mix and match components sourced from multiple vendors. You can use MATLAB® and 5G Toolbox™ to generate fronthaul control and user (CU) plane messages for O-RAN conformance tests.
O-RAN Architecture
The left side of Figure 2 depicts how a traditional RAN uses blocks, such as baseband unit (BBU) and radio unit (RU), provided by a single vendor. To accommodate more flexibility in the design of radio access networks, the O-RAN Alliance has developed O-RAN protocols, allowing the baseband and radio units to be split into three different modules and their protocol layers, each of which can be provided by different vendors:
- O-RU (O-RAN radio unit), which processes the RF and lower part of the physical layer (Low-PHY)
- O-DU (O-RAN distributed unit), which takes on tasks of the upper part of the physical layer (High-PHY), medium access control (MAC), and radio link control (RLC)
- O-CU (O-RAN central unit), which manages the packet data convergence protocol (PDCP), service data adaptation protocol (SDAP), and radio resource control (RRC) protocol entities
In the O-RAN context, the interface between O-CU and the core network is known as backhaul, the interface between O-DU and O-CU is known as midhaul, and the interface between O-DU and O-RU is called fronthaul. You can use MATLAB and 5G Toolbox to develop algorithms that generate data for Fronthaul and other O-RAN interfaces, as depicted in Figure 2. You can also use MATLAB, Simulink®, and Wireless HDL Toolbox™ to reduce the complexity of your implementation and then integrate, test, and validate your O-DU and O-RU systems on FPGA through Model-Based Design.
The O-RAN Alliance has selected split 7.2x, which lies between the lower part of the physical layer (Low-PHY) and the upper part of the physical layer (High-PHY). The open fronthaul interface between O-DU and O-RU is defined at the 7.2x split.
O-RAN Fronthaul Signal Processing
In downlink (DL) processing, for example, the sequence of operations can be subdivided between the ones preceding the 7.2x split and the ones following it. On one side of the 7.2x split, the functionality goes up to resource element mapping in the O-DU as follows:
- The user bits are received from the medium access control (MAC) layer.
- These bits, organized as transport channels, undergo 5G NR higher layer signal processing operations including data encoding, scrambling, modulation, layer mapping, and precoding and resource element mapping.
- The resulting IQ samples generate the 5G NR resource grid.
On the other side of the 7.2x split, the functionality that follows occurs in O-RU:
- Precoding and digital beamforming
- Cyclic prefix orthogonal frequency division multiplexing (CP-OFDM) signal generation, which is composed of inverse fast Fourier transform (IFFT) followed by cyclic prefix insertion
- Digital-to-analog conversion and analog beamforming
- Over-the-air analog signal transmission on the designated antenna port at designated RF frequency
Open Fronthaul Interface
To enable sending information between the two 7.2x splits in the open fronthaul, you must follow these instructions: On the O-DU side, the High-PHY information is first compressed, then encapsulated within enhanced common public radio interface (eCPRI) packets and finally embedded within Ethernet frames and transmitted. On the O-RU side, the received Ethernet frames are acquired, eCPRI packets are extracted, the data within packets are decompressed, and then Low-PHY operations are performed. These steps are depicted in Figure 5. The need for compression stems from the limited capacity of the open fronthaul. The O-RAN Alliance suggests different compression and decompression methods to reduce the bandwidth of the transmission.
O-RAN Modeling and Simulation with MATLAB
Using MATLAB and 5G Toolbox, you can generate fronthaul control and user (CU) plane messages for O-RAN compression conformance tests. You can use 5G Toolbox to generate and decode those packets. All the physical layer functions that belong to the High-PHY and the Low-PHY are available in the toolbox.
Open fronthaul modeling and simulation in 5G Toolbox enables you to:
- Apply High-PHY operations and then extract IQ data in 7.2x split, which is the data coming from the resource grid.
- Compress the data using one of the compression methods available. Supported compression methods are block floating point (BFP), block scaling, and mu-law, as defined in TS O-RAN.WG4.CUS Annex A.1.1, A.2.1, and A.3.1, respectively.
- Build the O-RAN fronthaul CU-plane messages, as defined in TS O-RAN.WG4.CUS, and write the messages to a PCAP file. These fronthaul messages would be sent from the O-RAN distributed unit (O-DU) to the O-RAN radio unit (O-RU).
- Decode the CU-plane messages in the O-RAN radio unit (O-RU).
- Recover the resource grid, uncompress the data, and continue with the Low-PHY operations.
Examples
Software Reference
See also: Communications Toolbox™, 5G Toolbox, Wireless HDL Toolbox, MATLAB and Simulink for wireless communications