Sora Research Showcase: Massive MIMO

How many antennas do you need?

MIMO (Multi-Input Multi-Output) and MU-MIMO (Multi-User Multi-Input Multi-Output) are advanced wireless technologies that hold the promise of increasing the wireless channel capacity in a communication system. In theory, the capacity is proportional to the number of antennas in the system.

The current state-of-the-art is limited to only a handful of antennas. 802.11n has up to 4 antennas specified in the IEEE standard, but we only see 2 or 3 antennas being productized. 802.11ac has up to 8 antennas in the standard, yet only 4-antenna is implemented. LTE standard is also up to 4 antennas. There has been little known system building and field-test study on MIMO or MU-MIMO with more than 10 antennas.

One difficulty in implementing high-order MIMO is to deal with the tremendous computation and throughput requirement. A simple back-of-the-envelop calculation will show that the algorithmic complexity for spatial demultiplexing and precoding is proportion to the total number of sending antennas times the total number of receiving antennas times the number of subcarriers. This will rapidly grow beyond any single system can handle as the number of antennas goes up.

Scalable MIMO architecture

To build a MIMO system that can support as many antenna as possible, we have to come up with a software radio system that is scalable in both computation and signal throughputs. It cannot be done with a single PC. Instead, we have used a cluster of PC servers and a fast Ethernet network.

We also need to parallelize MIMO signal processing algorithms and distribute them across these PC servers. We have to do it in a special way that take into account the number of subcarriers, the number of antennas, as well as the detail configuration of the PC cluster. Below is the parallelized MU-MIMO algorithms:

And of course the software has to do this in real-time.

What we have got so far

We have come up with a scalable MU-MIMO implementation system called "BigStation", which is designed to scale to tens of antennas and hundreds of subcarriers. Our over-the-air experiment was conducted on a moderate size system with 12 MIMO antennas, 52 subcarriers over a 20Mhz channel, 9 mobile nodes and 9 independent data streams. The system uses 3 Sora 4x4 MIMO PCs, 15 low-end quad-core servers, and one 1/10GbE switch.

We have achieved 6.8x capacity gain, with the mean end-to-end processing delay measured at 870us:

For more details, please see publication: