The present disclosure is related to 5G New Radio (NR) next generation NodeB (gNB) systems supporting a relatively high number of antennas to increase the plurality of the streams and/or increase the joint antenna gain. More particularly, the present disclosure is related to a method to align and equalize the massive Multi-Input Multi-Output (mMIMO) antennas in terms of gain, delay, and phase for both downlink (DL) and Uplink (UL).
Current 5G New Radio (NR) next generation NodeB (gNB) systems support high number of antennas to increase the plurality of the streams and/or increase the joint antenna gain by applying digital/analog/hybrid beamforming to simultaneously address multiple User Equipment (UE) locating in different trajectories to the gNB. The increased number of antennas per gNB and per sector is often called massive Multi-Input Multi-Output (mMIMO) and can be as high as 32 and 64 antennas (or an even higher number of antennas) per gNB and per sector.
These mMIMO antennas need to jointly work to achieve an optimized transmission and reception by forming one or multiple beams simultaneously projecting or receiving to or from different directions, as well as nulling different directions. Each antenna can be driven by a separate and dedicated baseband and an RF circuit. Separate baseband and especially RF circuits cause imbalanced antennas. The imbalance can be expressed in different gain, delay, and phase and different radio frequency (RF) and temperature conditions. The imbalance can cause a degradation in the joint antenna beam gain performance and increase the multi-beam interference once multiple antennas are combined while transmitting to or receiving from one or multiple UEs, respectively. The main challenge is to align and equalize the mMIMO antennas in terms of gain, delay, and phase for both Downlink (DL) and Uplink (UL).
Emerging 4G and 5G NR cellular systems constantly improve the Signal-to-Noise Ratio (SNR) at the receivers on both gNB and UE sides, and thus throughput performance on both sides, reaching longer distances and more UEs with much higher data rates. One of the main methods to increase the SNR performance improvement is achieved by using multiple antennas in the gNB. For many years the multi-antennas in the base-station (BTS) were used to increase the throughput by using parallel streams to and from a single UE (and vice versa). This method was called Multiple-In Multiple-Out (MIMO). Over the years there were different precoding methods proposed and employed in both the cellular and Wi-Fi standards (e.g., using codebooks, etc.). Over the years multiple antennas were used to form a beam. The beams were formed digitally by aligning their phases in a way that the amplitude at the UE will be constructively added, increasing the gain (e.g., doubling the amplitude at the receiver input with 6 dB gain is achieved by doubling the number of the antennas used in the beamforming). The beam can be formed using Channel State Information (CSI) either received from the UE side or through using channel reciprocity. A more advanced MIMO method for increasing the plurality of the spatial beams is through massive MIMO (mMIMO). As its name suggests, mMIMO significantly increases the number of antennas used to create multiple MIMO beams reaching one or more UEs simultaneously, reusing the same time and frequency, but separated by space. In addition to the use of polarization (e.g., vertical/horizontal, or left/right circular), the mMIMO beams can be formed in the same polarization space. Hence, multiple mMIMO beams can be formed in each polarization separately. The number of antennas per mMIMO can be anything from 8 to 64 antennas and above.
Based on the above, a significant challenge is the alignment of the multiple antennas to form the beam. Maximum beam alignment is achieved by aligning three parameters: Gain, Delay, and Phase. Hence, prior to forming the beam by a plurality of antennas for any direction, each antenna needs to be equalized to the other antennas through the Gain, Delay, and Phase criteria. The process is typically divided into two main steps:
1) Factory Calibration. The first step to align the antennas is to create a method to measure the three parameters for each antenna in a way that they can be referenced to the same gain, delay, and phase values at different RF and temperature conditions. One of the ways to achieve the reference is through conductive connection by combining all the antenna paths (transmitter and receiver) to a single receiving point on the Radio Unit (RU) board. This receiving point is used as the measurement reference point on the RU board for all the antennas. However, routing all the antennas into a single receiving point requires combing the antennas and routing them. Each route from each antenna bears a different Gain, Delay, and Phase by itself (namely Internal Coupling Network), which also needs to be calibrated. Hence, one of the methods to obtain the internal coupling network gain, delay, and phase is by using a pre-calibrated external coupling network that is installed in the RU board's factory connecting and combining all the transmitter outputs to a single connector that is connected to one of the receivers.
2) Run-time Calibration. Once the internal coupling network parameters are derived by the factory calibration method, the system can use the internal coupling network values to align the antennas while in operation in the field. There is also a need to constantly update the antenna calibration parameters every few minutes/seconds since the Transmit (Tx) and Receive (Rx) Radio Frequency (RF) chain parameters are also dependent on temperature and the change of the RF components characteristics.
In most systems, the AC parameters are obtained through injecting a unique sequence through the Tx and Rx chain for Tx Calibration and Rx Calibration respectively. These can be captured and correlated with the injected sequence to obtain the Tx/Rx chain Gain, Delay and Phase parameters. In some cases, the selected injecting sequence is based on Zadoff-Chu (ZC) sequence whose length is optimized to the system Band Width (BW) (e.g., 50 MHz, 100 MHz, etc.). Due to the nature of the run-time antenna calibration process, there is a need to inject and capture ZC sequences from the Tx path to the Rx path. The process needs to be executed during a quiet time where neither signal transmission nor signal reception is performed. In 5G-NR Time Division Duplex (TDD) systems, there is such a quiet time when the system switches between the DL and UL slots. The quiet time is called the Guard Period (GP) and it lasts for a few symbols.
5G NR Frame Format for Sub-Carrier Spacing (SCS) of 30 KHz (μ=1) is illustrated in
Factory Calibration. The complexity required to obtain the internal coupling network parameters over the full IBW is:
Where I is number of Iterations for averaging and 2 is for internal and external tests. On a typical laptop it takes more than 10 minutes to perform all internal and external tests with N=32 antennas and I=5.
Run-Time Calibration. The complexity required to perform the Tx/Rx AC Inject/Capture is:
SRC=2CNI
Where C is the number of Carrier Components (CCs). Due to the restriction that the AC Inject/Capture can only happen during the GP, it means that it takes 2× 32×5×5 ms=1.6 seconds to conduct the AC over all 32 antennas with 5 iterations for averaging assuming C=1. The calculated time of 1.6 seconds is best case assuming the software (SW) can be processed as fast as the frame of 5 ms per antenna. However, based on the Factory Calibration time, it would take 10 minutes/4=2.5 minutes to finish one round of Run-Time Calibration and for C=1. For C>1, the AC processing time increases by a factor C.
The main problem in the case of the Factory Calibration is the RU board manufacturing and validation time is very expensive, and 10 minutes for AC processing of a single RU board is too time and cost intensive. In the case of the Run-time Calibration, a round time of about 2.5 minutes is too long for the Antenna Calibration parameters to stay coherent due to temperature changes that require an AC update at about 10 second intervals. In addition, increasing the number of CCs (C>1) and antennas will linearly increase both complexities and times.
Currently there are two options to accelerate the AC processing time, which are: Reduced Iterations and Orthogonal ZC Sequences.
Reduced Iterations. To accelerate the AC processing time, current systems reduce the number of iterations executed to average the AC parameters (Gain, Delay, and Phase).
Orthogonal ZC Sequences. Each antenna is assigned with an orthogonal ZC sequence so they can be simultaneously transmitted. However, in that case, only one value per OBW per AC parameter can be derived. Based on further AC tests, it is recognized that more than one gain and phase value need to be used per OBW.
Both workarounds lead to reduced performance and reduced accuracy in deriving the AC parameters. The reduced performance leads to gain degradation in the joint mMIMO beams and to increased interference between the constructed antenna beams (namely Layers).
Accordingly, there is a need for a system and method to align and equalize mMIMO antennas in terms of gain, delay, and phase for both downlink (DL) and Uplink (UL) that overcome, alleviate, and/or mitigate one or more of the aforementioned and other deleterious effects of prior art.
Accordingly, what is needed is a system and method for supporting a relatively high number of antennas in a 5G New Radio (NR) next generation NodeB (gNB) system to increase the plurality of the streams and/or increase the joint antenna gain.
It is further desired to provide a system and method for reducing the time needed for gain, delay and phase equalization and alignment in mMIMO antennas used in a 5G NR gNB system.
It is still further desired to provide a system and method for parallel injection of multi-antennas used in a 5G NR gNB system.
It is also desired to provide a system and method allowing simultaneous AC injection of mMIMO antennas used in a 5G NR gNB system.
It is yet further desired to provide a system and method enabling an antenna calibration process that is faster than current processes with the same number of antennas, iterations, and Carrier Components.
Accordingly, a method is provided that reduces time needed for the gain, delay and phase equalization and alignment process time to cover all the antennas. The antennas alignment comprises two main steps: 1) Factory Calibration; and 2) Run-time Calibration. The proposed Parallel-Processing Multi-Antenna Calibration (PPMAC) method significantly reduces the calibration time in both steps thereby increasing the calibration accuracy and improving the joint gain and beam separation to reduce interferences between the beams.
The PPMAC method applies a Hadamard code on top of the ZC sequence, which allows simultaneous antennas to be AC injected. The level of parallelism of the injecting antennas is dependent on the Hadamard code size (P). The Hadamard code that is applied on the parallel injecting multi-antennas converts the ZC sequence to P orthogonal ZC-Hadamard sequences that are decodable and separable from the captured combined sequence.
In the following invention description, an example is given with 32 antennas RU, which is divided into four 8-antenna Digital Front-End Units (namely DFEs) with the parallelism level P=4.
Each of the four DFE FPGAs (named A, B, C and D) contains an Antenna Calibration block that injects a Zadoff-Chu sequence from its internal memory to be transmitted into the calibration feedback network. The calibration network returns the waveform back into a designated receiver port. The Antenna Calibration block can then capture this calibration waveform after a programmed delay and make the captured contents available to SW for post-processing to determine the phase offsets between the various antenna ports in both the transmit and receive directions.
The calibration of all 32 antenna ports is performed periodically in both the Tx and Rx direction. Each calibration cycle performs an injection and capture during the TDD guard period between Tx and Rx on one port per DFE FPGA in the Tx or Rx direction (4 of the 32 ports simultaneously). This means that the calibration process needs to perform a total of at least 16 cycles, 8 in the Tx direction and 8 in the Rx direction for each CC. Note that every guard period is not used for calibration if the resources can't be made available, implying that the number of cycles can exceed 16. For example, if there are three CCs allocated in the occupied BW then the entire calibration process will take a minimum of 48 airframes. Because the SW is requesting calibration cycles asynchronous to the airframe timing it is possible that an airframe could go by without a calibration cycle being performed.
The overall calibration process is managed by the Fronthaul FPGA, which can send and receive messages and the compensated values over the inter-FPGA Ethernet connection to the DFE FPGAS.
Overall, the proposed method significantly reduces the AC inject/capture processing time by a factor of P.
For this application the following terms and definitions shall apply:
The term “data” as used herein means any indicia, signals, marks, symbols, domains, symbol sets, representations, and any other physical form or forms representing information, whether permanent or temporary, whether visible, audible, acoustic, electric, magnetic, electromagnetic or otherwise manifested. The term “data” as used to represent predetermined information in one physical form shall be deemed to encompass any and all representations of the same predetermined information in a different physical form or forms.
The term “network” as used herein includes both networks and internetworks of all kinds, including the Internet, and is not limited to any particular type of network or inter-network.
The terms “first” and “second” are used to distinguish one element, set, data, object or thing from another, and are not used to designate relative position or arrangement in time.
The terms “coupled”, “coupled to”, “coupled with”, “connected”, “connected to”, and “connected with” as used herein each mean a relationship between or among two or more devices, apparatus, files, programs, applications, media, components, networks, systems, subsystems, and/or means, constituting any one or more of (a) a connection, whether direct or through one or more other devices, apparatus, files, programs, applications, media, components, networks, systems, subsystems, or means, (b) a communications relationship, whether direct or through one or more other devices, apparatus, files, programs, applications, media, components, networks, systems, subsystems, or means, and/or (c) a functional relationship in which the operation of any one or more devices, apparatus, files, programs, applications, media, components, networks, systems, subsystems, or means depends, in whole or in part, on the operation of any one or more others thereof.
The term g NodeB (gNB) as used herein is the radio base station in 5G NR networks. These radio base stations (nodes) are the cell towers mobile operators use to connect mobile phones.
User Equipment (UE) refers to the end-user device that connects to a wireless network to access various services and applications.
The term massive Multi-Input Multi-Output (mMIMO) as used herein means a wireless communications technology in which base stations are equipped with a very large number of antenna elements to improve spectral and energy efficiency.
The term Downlink (DL) as used herein means data flow towards the radiating antenna.
The term Uplink (UL) as used herein means data flow away from the radiating antenna.
The term “Zadoff-Chu sequence” as used herein means a mathematical sequence which, when applied to a signal, generates a new signal having the feature of being a constant amplitude zero autocorrelation (CAZAC) waveform. A Zadoff-Chu sequence is generated by two parameters: R which is the root sequence and N which is the sequence length, and it is calculated as follows:
In one configuration method for Parallel-Processing Multi-Antenna Calibration (PPMAC) for massive Multi-Input Multi-Output (mMIMO) antennas in a 5G New Radio (NR) next generation NodeB (gNB) system is provided, the method comprising the steps of providing a plurality of digital front-end units (DFEs), each of the plurality of DFEs includes an antenna calibration block having an internal memory and a plurality of associated antennas used in a 5G NR gNB, each antenna connected to a port, and connecting each of the plurality of DFEs in parallel with each other. The method further comprises the steps where each of the antenna calibration blocks injects a Zadoff-Chu (ZC) sequence from the calibration blocks internal memory into respective waveforms in a calibration feedback network to form ZC sequences, and the calibration feedback network returns the ZC sequences to a designated receiver port. The method still further comprises the steps of capturing the ZC sequences with the calibration block in one or more of the plurality of DFEs after a programmed delay, and determining phase offsets between antenna ports in both the transmit (Tx) and receive (Rx) directions based on the ZC sequences.
The above-described and other features and advantages of the present disclosure will be appreciated and understood by those skilled in the art from the following detailed description, drawings, and appended claims.
Referring now to the drawings, wherein like reference numerals designate corresponding structure throughout the views. The drawings provide a full description of the invention using an example of P=4 Digital Front-End (DFE) units, each supporting 8 antennas.
Referring to
Therefore, the Tx calibration process should be completed after at least 8 sessions, where at most 4 antennas are processed at each session. To process 4 antennas in parallel per session, the SW needs to differentiate the four antenna channels from the captured signal, that is a linear combination of the four ZC sequences each arriving from a different antenna. To simplify the implementation, it is assumed that the Tx Antenna channel can be measured at every 4th SC (4×30 KHz=120 KHz). The intermediate 3 SCs can be extrapolated from the captured ZC sequence applied every 4th SC.
For
Time domain channel components (Random):
In addition, a smoothing function (f) is recommended to be applied on the output of each antenna calibration channel estimation to reduce the noise component contribution and increase the quality and accuracy of the channel estimation of the four antennas in the set as can be seen in
For FIGS.
Time domain channel components (Gain=1, delay only):
In this case, a linear curve-fitting smoothing approach can be applied as can be seen in
Alternatively, given here is a method that divides the 3276-length FD ZC sequence to be interlaced in the 4 DFEs but it creates 4 new different sub-sequences.
FH/DFE AC Control Diagram.
In
As stated above, DFE-A AC Inject Start should be set after setting all the other AC inject Start signals of the other 3 DFEs. Once the DFE-A AC inject Start is set, the signal goes to all the DFE FPGAs through GPIO 3 and sets all the Tx requests simultaneously once the Request_En signal is set by the Arbiter of each DFE FPGA. After a configured delay the Tready signal to the AC inject block is set by the arbiter. Once the Tready of the arbiter is set in all the DFE FPGAs (all are synchronized to the 491.52 MHz sample), the DFE FPGAs start injecting to their corresponding PAs. The combined signal is then captured at DFE-A Antenna 0, and once done, the cap_ready signal is set for the SW. The SW keeps on waiting for cap_ready set right after the AC inject start is set. Once the SW processed the captured data and calculated the compensation coefficients (or even before, right after reading the captured data), it can start the next session of AC inject with another set of antennas, and so on, through all the 8 antenna sets.
Multi-DFE Rx Calibration.
The following is the AC software orchestration description of the RU system and the corresponding switches and interface control.
There are four calibration related switches on the Midas board connected only to DFE A:
The Tx/Rx Antenna Calibration Select switch does not need to be controlled in real time by the PL in DFE A. This switch can be set by the SW based on whether it intends to do a Tx or Rx calibration. The other three switches do need to be controlled in real time by the PL in DFE A as they must be synchronized with the TDD frame timing.
For a Tx calibration cycle data is injected from all four DFE FPGAs and combined through the calibration network to be received in DFE FPGA A and captured there for post-processing. For an Rx calibration cycle data is injected only from DFE FPGA A and split through the calibration network to be received in all four DFE FPGAs where it is captured for post-processing.
FPGA Internal Interface. Each DFE FPGA contains the blocks shown in
The DPD client runs autonomously during the downlink period and has highest priority as it will perform a capture of the transmitted data and ORx data and then go off and process the capture to perform PA linearization as it cycles its operations through each of the 8 antenna ports. The other two clients make requests on an as needed basis under the direction of DFE SW, which will write to registers within the client to initiate a request. Each client has a status that is polled by DFE SW to determine when the request operation is complete.
DFE FPGA SW Process. The Antenna Calibration block has a register set that needs to be programmed for each calibration cycle. The injection data programmed into a memory in the block only once for each 100 MHz/4 CC combination. The organization of this memory corresponds to the same four CC positions used in the DL LPHY block repeated 1024 times. The Zadoff-Chu sequence programmed into the memory can be 4096 samples long for a CC that has a sample rate of 122.88 MSPS, 2048 long for a CC that has a sample rate of 61.44 MSPS or 1024 long for a CC that has a sample rate of 30.72 MSPS. When multiple CCs occupy the same memory, they are interleaved the same as the TDM sequence from the DL LPHY is interleaved and the Zadoff-Chu sequence data is specific to the channel bandwidth of each CC. Since the Midas RU is required to support 200 MHz of OBW the DFE FPGA SW will have two potential sets of injection memory, one that matches the CC content of the first DL LPHY Subsystem and one that matches the CC content of the second DL LPHY Subsystem.
The selection of the CC that is transmitted and the Tx port that it is transmitted on is controlled by a set of four 16-bit masks, two in each DUC Subsystem. These mask registers are part of the DUC register space.
The overall calibration process is managed by the Fronthaul FPGA SW so prior to every calibration cycle each DFE FPGA will receive a message informing it the CC to be calibrated, the local port number (0 to 7) and whether the DFE FPGA should inject, capture or both. In response DFE SW will take the following steps:
At this point, the DFE FPGA SW can start processing the captured data relative to the data that was injected in the background. Note that even if the DFE FPGA did not inject data it would have the information from the calibration cycle request what data was injected from a separate DFE FPGA based on the CC requested. The SW will derive the amplitude and phase compensation per subcarrier necessary to tune out the relative error for each CC. The details of this processing and programming of the compensation memory within the DL and UL LPHY blocks are not covered in this document. The DFE FPGA SW may be directed by the Fronthaul FPGA SW to send its calibration data processing results to another DFE FPGA. This would be the case for a Tx calibration cycle performed within DFE A
The next calibration cycle is started when the DFE FPGA receives the next calibration cycle request from the Fronthaul FPGA.
Fronthaul FPGA SW Process. The Fronthaul FPGA SW has the responsibility of coordinating the entire calibration process across all 32 Tx and Rx ports. The process is managed in units of calibration cycles, where each calibration cycle performs a Tx or Rx calibration on four ports, one per DFE FPGA. The Fronthaul FPGA SW performs the following steps:
Each calibration cycle captures calibration data for 4 Tx or Rx ports, one on each DFE FPGA. The most sensible sequence would be to start with either Tx or Rx and run through all 32 ports in one direction for a particular CC. The first calibration cycle would start with the DFE FPGA's local Tx0 on each DFE FPGA (i.e., Tx ports 0, 8, 16 and 24), the next local Tx1 (i.e., Tx ports 1, 9, 17, 25), etc. The reason for using this order is to minimize the need for the DFE FPGAs to rewrite their injection memory. The only time it would need to perform a rewrite of the injection memory would be when it needs to change from a CC that is associated with one DL LPHY to a CC associated with the other DL LPHY.
While the present disclosure has been described with reference to one or more exemplary embodiments, it will be understood by those skilled in the art that various changes may be made and equivalents may be substituted for elements thereof without departing from the scope of the present disclosure. In addition, many modifications may be made to adapt a particular situation or material to the teachings of the disclosure without departing from the scope thereof. Therefore, it is intended that the present disclosure not be limited to the particular embodiment(s) disclosed as the best mode contemplated, but that the disclosure will include all embodiments falling within the scope of the appended claims.
This application claims the benefit of U.S. Application 63/507,336, filed Jun. 9, 2023 the contents of which are incorporated by reference herein.
Number | Date | Country | |
---|---|---|---|
63507336 | Jun 2023 | US |