O-RAN Modeling and Simulation with MATLAB - MATLAB
Video Player is loading.
Current Time 0:00
Duration 28:43
Loaded: 0.58%
Stream Type LIVE
Remaining Time 28:43
 
1x
  • descriptions off, selected
  • en (Main), selected
    Video length is 28:43

    O-RAN Modeling and Simulation with MATLAB

    Overview

    In this webinar, we showcase new functionality in MATLAB to model and simulate the open radio access network (O-RAN) technology. First, we provide an overview of the O-RAN standard and its specifications. This includes a discussion about the role of Radio Unit (RU) and Distributed Unit (DU) system components and how they communicate with each other using the Enhanced Common Public Radio Interface (eCPRI) protocol. You learn how to use 5G Toolbox to generate and decode those packets. You will also learn how to examine the impact of O-RAN compression algorithms on the overall performance using metrics such as EVM. 

    Highlights

    Through example you learn how to:

    • Generate O-RAN 7.2x split
    • Apply O-RAN compression techniques such as block floating-point, block scaling and mu-law
    • Encapsulate the compressed data into eCPRI packets using pcapWriter function
    • Perform decoding operations on the packets using pcapReader function to obtain the compressed data
    • Decompress the data and recover the best estimate of the O-RAN 7.2x split
    • Optionally, examine the impact of this process on the overall EVM performance

    About the Presenters

    Houman Zarrinkoub:

    Dr. Houman Zarrinkoub is a senior product manager at MathWorks responsible for wireless communications products. During his 20-year tenure at MathWorks, he has also served as a development manager and has been responsible for multiple signal processing and communications software tools. Prior to MathWorks, he was a research scientist working on mobile and voice coding technologies in the Wireless Group at Nortel Networks. He has been awarded multiple patents on topics related to computer simulations of signal processing applications. Houman is the author of the book Understanding LTE with MATLAB: From Mathematical Modeling to Simulation and Prototyping. He holds a B.Sc. degree in electrical engineering from McGill University and M.Sc. and Ph.D. degrees in telecommunications from the University of Quebec, in Canada.

    Uvaraj Natarajan:

    Uvaraj is a Senior Application Engineer in MathWorks, focusing on the 5G/ LTE/ WLAN/ Wireless and Satellite communications. Prior to MathWorks he has worked with Cisco Systems where he worked on Self-Optimizing Networks (SON) for the 5G/ LTE market and developed expertise on end-to-end LTE networks working closely with mobile operators across globe. He has industry expertise on LTE ENB protocol stack development, LTE PHY development. He has also worked at Centre for Communication Systems Research, UK on cognitive radios, relay systems, LTE-A, CoMP systems. Uvaraj holds a master's degree in Mobile and Satellite Communications from University of Surrey, UK and BE in Electronics and Communications from Anna University, India.

    Recorded: 20 Oct 2022

    Hello, everyone. My name is Houman Zarrinkoub. I am the product manager of all the wireless products here at MathWorks. And today I'm joined by my friend and colleague, Uvaraj.

    Hi all. My name is Uvaraj Natarajan. And I'm from the application engineering team in MathWorks. My primary focus area is on the wireless communication-related products, such as the 5G, WLAN, LTE, Bluetooth, satellite communication, and so on. Nice to have you out here.

    Thank you, Uvaraj. And we would like to welcome you to this MathWorks webinar entitled O-RAN Modeling and Simulation with MATLAB. Let's take a look at the agenda of today's webinar. First, I'm going to provide some introductory remarks and some motivation for the talk. And then we're going to talk about the O-RAN architecture a little bit. We're going to focus on front-haul processing, which is one component of the O-RAN architecture for which we have lots of MATLAB functionality. And we're going to finally show you ways to learn more and summarize the talk.

    Let's get some introductory remarks here. O-RAN stands for Open Radio Access Network. So you have, in wireless communication, you have the core network, which aggregates data from lots of wireless base stations and sends to internet and distributes the traffic. And you have Radio Access Network. Traditionally, in a hardware-centric way, it's designed around base station, or known as gNodeB in the 5G lingo.

    And the Radio Access Network traditionally is built on a hardware-centric way, which means that the functional components, as you can see on the left-hand side, the radio unit, which has all the radio frequency circuitry, and the baseband unit, which has the signal processing, are contained in a physical safe environment and is usually provided to a service provider by a single vendor, by a single equipment maker. That's the traditional approach.

    So, Open RAN, or O-RAN, wants to open up this access, meaning that you want to functionally and logically take the radio access network and divide it, as you can see on the right-hand side of the screen here, into multiple functional units. These functional units then have defined interfaces. And this way, if you have different functional units for the open RAN architecture, multiple vendors can be suppliers or vendors to multiple parts of this architecture. Some vendors, some company may provide you the Open Radio Unit. That's called ORU on the bottom.

    Some vendor gives you the ODU, or the Open Distributed Unit. And some vendor gives you the OCU, Open Central Unit. And this opening up and providing modular components is a theme that is resonating very well with a lot of people. And it might continue beyond 5G and 6G and so on.

    So now that you have interoperability made easy by the open RAN concept, and you allow different units, ORU, or OCU, and OCI be provided by different vendors, it becomes important for the interface to be well-defined. So different companies providing different modules can talk to each other using defined interfaces.

    The interface between the ORU, or the Open Radio Unit, and the OCU, which is the Open Distributed Unit, is known as front-haul. The interface between the OCU and the OCU is known as the mid-haul. And the interface, classical interface, between all the RAN or Radio Access Unit and the core networks is known as the back-haul.

    Now, the standard body responsible for this initiative is known as the O-RAN Alliance. It's a collection of service providers as well as equipment makers, hardware providers, and many other people in the ecosystem who helped characterize and design the protocol for Open Radio Access Network. As I told you, the functionality lies in separation or splitting the Radio Access Network into multiple units and allowing the operators to buy different units from different vendors and, hence, provide a more flexible design environment.

    So as you can see on the left-hand side, we see the radio unit, which has all the radio and antenna and antenna array configurations, the RF part of the wireless communication access to the UEs. And then there is a smaller portion of the overall essentially baseband processing involved in the radio unit, which we can talk about that soon.

    Then, the majority, the heavy lifting on the even signal processing at the downlink for example, is dedicated to what's known as distributed unit or ODU. And that may not be physically connected to the base station location, could be somewhere on the cloud. And using that interface, that front-haul, the data can be gathered from the physical base station in the ORU and transmitted to cloud and get to the ODU.

    And then there's a mid-haul between OCU and OCU, centralized unit, and then back-haul to core network. So this O-RAN protocol happens at various splits. As you can see, data comes from 5G core or core network.

    And either it goes through the two functional units, the radio convergence, the SDAP and RRC. And the beginning of the connection between different elements of the O-RAN is at the Packet Data Conversion Protocol-- PDCPP, the Radio Link Controller-- RLC, MAC-- Medium Access Control, PHY and RF, and antenna.

    So you see these different layers or different components of data and control information passing from core network all the way to the RF interface of air interface goes through multiple options or splits. So if the options of the O-RAN splits are between these functional units, like option 1, 2, 4, and 6, and 8, that defines the boundary between different things.

    But as you can see, the option 3 and option 5 and option 7 are defined between or inside each of the functional units. For example, option 7, which is most of our interest, includes an upper part of PHY and the lower part of PHY And we can define it shortly.

    And that is one way you can split the functionality and allocate different units to different logical components. As you can see, as we go toward RF, the bandwidth required for that split becomes larger and larger. But the latency becomes smaller. And that's very good for the future networks, where you want as little latency on the radio access unit and close to the UE, close to the radio access. And you are willing to allocate more bandwidth to communicate between different elements of this protocol.

    So take a look at the O-RAN gNodeB on the right-hand side. So as I told you, the ORU is the radio unit, Open Radio Unit. It includes all the RF functionality, going from baseband to RF, RF map to antenna, antenna array transmitter using MIMO. And the lower part of PHY, Low-PHY. And then you notice that there is a 7.2x split. That is very important for people who are designing 5G networks and so on. And we are focusing on that.

    And that 7.2x split happens exactly at the front-haul interface, meaning the boundary between the low-PHY and the high-PHY, between the ORU and the OCU, the radio unit and distributed unit. And then, as you can see, ODU will contain the high-PHY, or the portion of the PHY operations that we'll discuss soon, followed by MAC and RLC. And then, of course, the mid-haul is between OCU and OCU and so on.

    So if you look at the signal processing protocol of data in a downlink, and let's look at what high-PHY and low-PHY, which defines the front-haul bonding, which defines the O-RAN 7.2x split is all about. So as you get data, in terms of transport channels, from the MAC and upper layers of ODU, the signal processing in 5G and LTE and 4G is as follows.

    You get the data from MAC, transport channels come in. The first thing you do is channel coding, encoding. In 5G, for data is LDPC, and for control data is polar coding followed by scrambling and then modulation mapping-- different forms of PuAM is used here-- and then layer mapping, meaning assign different layers to end up in different MIMO layers later. And apply precoding, number one digital precoding, to that information.

    And then you take that data, after scrambling modulation layer mapping precoding, and you assign it to the resource grid using resource element mapping. And the resource grid is composed. That is the information transmitted through front-haul at the 7.2x. When you transmit that from ODU-- and we can talk about that very soon-- to ORU, the ORU receives and reconstructs the resource grid with all the resource elements mapped. And thus, the second precoding, the analog precoding, these will be informing.

    And then of OFDM, which is IIFT-- IFFT followed by cyclic prefix, analog conversion, and goes to analog beamforming and goes to the antenna elements. So that 7.2x split defines the front-haul processing. It splits the PHY into high-PHY, which has all the computationally expensive stuff, like encoding, resource element mapping, and so on. That can happen somewhere on the cloud or away from the gNodeB. But the ORU is essentially more precoding and OFDM, which is lower in terms of baseband processing complexity.

    Now, 7.2x split separates high-PHY from low-PHY. And then this is the open front-haul modeling and simulation. Can you do it in 5G Toolbox? Yes. In 5G Toolbox, which are main product for 5G modeling and simulation and testing, this is the kind of stuff you can do to model and simulate open front-haul of the O-RAN. So you can apply a high-PHY operations, extract the IQ data in 7.2x split, which is the data coming from the resource grid.

    So you populate the resource grid after the processing, and then compress the data using one of the compression methods available. So we have a slide to talk about all the compression methods that are standardized and mentioned in the O-RAN WG4 documents. And we have many of that covered in 5G Toolbox.

    So then you build the O-RAN front-haul control and user plane messages according to the TS O-RAN WG4 CUS document and write those messages to a PCAP file. PCAP file is the Packet Capture file. It's the file format that can be transmitted using ethernet protocol. And then it goes from O-RAN ODU to the O-RAN ORU.

    So you decode these CU play masters in OCU-- in ORU and get the resource back, and recover the resource grid uncompressed data and continue with the low-PHY processing. So that's the story that we're going to follow through.

    And 5G Toolbox has all the functionality, not only, as you can see on the left-hand side, not only we get the data from OCU, and this is the downlink shared channel encoding and beginning of the PDSCH, which is the scrambling and modulation and precoding. Here is where the resource grid happens, that's the split happens. And this is where we're going to put the compression and so on, CPU FDM in the ORU unit to get the signal to RF.

    And not only that, we have channel models, CDL and TDL, by the 5G standard. And we also have the receiver operation. So you can actually do an end-to-end link level simulation with the O-RAN protocol, front-haul processing protocol included.

    Just to summarize for you and describe what is it that my friend Uvaraj is going to show you as an example soon, so imagine we are in this kind of end-to-end scenario. From the OCU, data arrives to ODU, the Open Distributed Unit. And the data calls through the radio link controller and MAC, Medium Access Controller. And from MAC, data comes to PHY as transport channels. High-PHY processing happens. Remember all the stuff that I told you about, that encoding, LDPC, scrambling, modulation, precoding, all of that. Here is where the resource grid composed.

    At that point, 7.2x split happens. And there are three functional components for you to model and simulate. You have to compress or de-- compress in this case, the data. I'm going to show you the compressing techniques available. After you compress them-- so much less bits involved because that is where, through compression, we reduced the bandwidth of the large amount of data already available in the resource grid. We reduce bandwidth without losing too much accuracy. Then you put that in a Enhanced Common Public Radio Interface or eCPRI protocol packets. And that is put into an ethernet packet.

    And that ethernet packet is transmitted through open front-haul, received somewhere from the cloud to the actual gNodeB, actual ORU or the radio unit of the 5G base station. So it's a in packet received, right? eCPRI fields or ECP packets are extracted. Decompression is done. So you reconstruct right here the resource grid. And then you go from resource grid through the typical operations of analog or hybrid beamforming, followed by IFFT and sane prefix. You go to RF, and you transmit.

    So all of that information from high-PHY all the way to end of low-PHY is available in MATLAB, in the release 22B of MATLAB in 5G Toolbox.

    Let's talk about the eCPRI a little more. eCPRI stands for Enhanced Common Public Radio Interface. It's a protocol use over Ethernet for PHY and back compression to transmit IQ data over a wire. So this is the RU here. And IQ samples that are, as you saw, are, in this case, on the 7.2x or computer over a resource grid are put into the eCPRI format and put in an ethernet packet.

    So DU happens at the bandspace of a tower or in the cloud. And these octets or bits are transmitted over the ethernet, go to OCU and so on and so forth. And eCPRI is used between RU and DU, as we saw before.

    So O-RAN front-haul compression methods that are specified in the standard are as follows. We support three of the five that are published by the documents-- block floating point compression, block scaling compression, subblock coding techniques, and mu-law, which is used in the original speech quality, you know, voice transmissions a long time ago-- a-law, mu-law for voice transmissions over the last 50 years.

    All right. Of course, there's been space compression, modulation compression that we yet don't support it in the 5G Toolbox. But we are working on that. So now that I told you about all these different components of O-RAN front-haul processing, I'm going to ask my friend Uvaraj to show us a demo that generates the Control and User Plane-- CU-Plane messages and transmitted for the O-RAN front-haul processing and does the testing. Uvaraj, take it away.

    Thank you, Houman. Now let's see a nice example, which is actually a part of the 5G Toolbox in the MATLAB framework. So I have MATLAB R2022b open. Now, let's quickly start with the example section. So we can go to the example, just by typing the doc 5G, which will help you to take to the documentation page. And this documentation page is a very good place where you can read a lot of things about 5G. And the Examples tab here have a very big list of examples for various applications, like end-to-end link-level simulation, system-level simulation, and even for various testing and measurement use cases.

    So one of the example in that is generating a control plane and user plane message for O-RAN front-haul testing. So basically, MATLAB gives you a kind of standard defined NR-TM and even custom waveforms, which can be used for various purposes. And that can also be used for your O-RAN testing as well. So here, this particular example generates a control user plane message for O-RAN conformance testing, using the 5G Toolbox.

    So this is as per 7.2x split. And the good part here is, if you are testing your RU, you would need a standard compliant O-RAN waveform packaged into a form which can be used as a test vector for your RU testing SH. And this example gives you the same package as you need. And for example, this is starting with the waveform, which is generated using the 5G Toolbox. And you export that waveform into a PCAP format, which is actually a test vector package, which can be independently used by your RU for further analysis and so on.

    So this is, again, based out of the standard definition. The NR-TM waveform which you have generated is based out of standard. And we are basically generating the waveform for the 7.2x split of O-RAN. But you will be able to also generate waveform for various other 7.2x splits and then so on.

    So let's see how this works. So we have various parameter configurations, like the O-RAN set of parameters and even the eCPRI and the ethernet, so the various other configurations, so you'll be able to select any kind of waveform which you want for, maybe an FR1 or FR2 operational frequency and various other O-RAN configuration.

    So we'll be able to generate a packet with various compression techniques, like the block floating point compression or block scaling, or even the mu-law compression and various other configurations, like the ethernet configurations with the source and the destination addresses and also the M-Plane configurations and so on.

    So finally, you generate the waveform with this particular configuration. So in this case, we have the FTB-based waveform, which is generated using an inbuilt function. And then package that-- now compress that into a new plane data. And then that can be sent in the transmitter side along with the eCPRI and the ethernet headers. So finally, you'll also be able to visualize the packet. For example, this gives you a good idea of the C-Plane messages and the U-Plane message. So we have an ethernet packet, which is actually on the first layer.

    And then you have O-RAN front-haul packet on top of it. And then the C-Plane messages, you'll be able to see what kind of message is transmitted. Likewise, for U-Plane, we have the frame with ethernet packet and then O-RAN front-haul message, especially for the user plane. And the eCPRI, the headers, and then the data in that. So this is a complete package by itself. So you can use it, if you are looking for a ready-made test vector to test your RU-SH.

    So I hope this would have given you a good idea of a way in which you can generate a O-RAN-specific packet using MATLAB. And hope you find interesting. Thank you all, and back to you, Houman.

    Thank you, Uvaraj. That was great. So, our customers of particularly 5G Toolbox, which is the main product for 5G modeling and simulation in MATLAB, have been using our O-RAN functionality already. And I want to mention one of these customers. The company called Capgemini reports accelerating the O-RAN development for their 5G NR wireless communication system implemented onto an FPGA. So they used model-based design, which is modeling and simulation and automatic coordination and verification, and validate how they implemented the interface between ODU and ORU using their techniques.

    So they built a 5G O-RAN emulator with MATLAB and Simulink. And the result was that the UE emulator development time was reduced because they're using model-based development. Essentially, we are looking at a model of this before any implementation is done. So every possible scenario is considered. And the synchronization of subsystems achieved earlier than expected, so you can synchronize things better. And system implementation was evaluated on the first attempt because, if you have a digital twin or you have model-based design, you can test all the contingencies before you implement.

    And you can see a nice quote from our friend at Capgemini. "We started with a working example from MathWorks that includes 5G new radio cell search and master information block recovery, and modified the design to match customer requirements. That helped simplify our work and saved a lot of time."

    So that's the value of using our tools to save time because all the detail standard implementations are already included with our tools and makes you good implementation fast. To summarize, you can model and simulate the O-RAN protocols in MATLAB.

    And MATLAB enables you to implement O-RAN front-haul processing, as you saw, particularly 7.2x split in this version of MATLAB. We can apply O-RAN compression techniques and encapsulate data using eCPRI. And we have functions to read and write into eCPRI packets for ethernet, perform decoding operations on packets, and decompress the data, recover the best estimate of the split, in this case, resource grid, and examine the impact of the overall EVM performance.

    With that, I want to thank you very much. And shortly we will open the floor to any questions you may have. Thank you.