Software radio (or software-defined radio, SDR) is an engineering pursue in wireless communication technology field that one day all wireless signal processing functions, which are typically implemented in hardware today, will be done completely in software. Over the years, researchers and engineers have made remarkable progress and have been constantly pushing the hardware-software boundary. The Microsoft Research Software Radio (Sora) is one such recent success in advancing the state of the art in software radio technology.
Principle and Architecture
The goal of Sora is to develop the most advanced software radio that is capable of implementing the state-of-the-art wireless communication technology easily and efficiently. In late 2000s and early 2010s, the state-of-the-art is Wi-Fi and LTE. The implementation platform must then be able to handle OFDM, 64QAM, MIMO, CSMA, 40MHz channel width, and tens to hundreds Mbps data rate. This is a significant challenge for any software radio.
There are many ways of building high-performance software radios. We choose commodity PC as the underlying platform. PC does have the advantage of a familiar environment with rich programming tools and ecosystem supports, but meeting the astronomical demands of signal processing in PC software and in real-time seems quite "mission impossible" to many people.
Sora has been used to implement and run the-state-the-art wireless standards including Wi-Fi and LTE. For Wi-Fi, Sora is able to do 802.11 a/b/g/n in full data-rate (up to 40MHz channel, up to 64QAM, up to 4x4 MIMO). The actual data rate is limited by the speed of the PC, but we have accomplished 802.11 data-rate up to 300Mbps. Spectrum-wise, Sora supports a wide range of radio front-end options, from standard Wi-Fi (ISM bands) to TV Whitespace (TVWS), in both single antenna setting and in 4x4 MIMO setting (8x8 also possible).
In Sora, you write your entire baseband in C language. A highly optimized implementation of 802.11 a/b/g/n PHY is available in source code (so you can learn about Wi-Fi implementation or learn how to program in Sora). The SDK also comes with a rich set of common signal processing library (from FFT to Viterbi decoding, etc.) so you can reuse. The program model in Sora currently includes a vector computation library called Vector1 and a modular data-flow composition system called brick, both of which can help programmers to write high-performance baseband programs. Further, the SDK includes various tools, like helping users debug their signal processing programs, visualizing Wi-Fi decoding, etc.
Research Scenarios and Showcases
With Sora's ability to run high-speed wireless systems in software, it becomes a powerful yet convenient tool for research and development in the wireless communication technology field. Here is a few examples that showcase Sora's achievements.
Wi-Fi PHY and MAC Research
The PHY and MAC have been an active research areas for many years. New improvements have been frequently proposed on new PHY and MAC algorithms. However, experimental studies are extremely difficult to do at the bottom layers of wireless network. Without open software radio, these layers are all but hidden in the commerical hardware and totally out of reach for ordinary researchers.
Sora is capable of running Wi-Fi at hundreds of Mbps in software and in real-time. The entire Wi-Fi PHY implementation is written in C and is open-source. Researchers can now modify the source code to implement their ideas and validate them in real over-the-air experiments.
TVWS basestationTV Whitespace (TVWS) and dynamic spectrum access (DSA) is a hot research topic in wireless networking. To cover TVWS bands and extend the outdoor range, we have built a 40MHz front-end option that operates in the 500MHz-700MHz band with a 1-4W configurable amplifier. It supports both single antenna and 4x4 MIMO setting, making Sora a very useful TVWS research platform. For example, we have rolled out a cellular-type TVWS research network to cover the Microsoft Redmond campus. Each basestation is just a PC plus four roof-top TVWS antennas. Everything else is software based on Sora.
- Kun Tan, Haichen Shen, Jiansong Zhang, Yongguang Zhang, "Enable Flexible Spectrum Access with Spectrum Virtualization," IEEE DySPAN 2012.
- Project Istanbul: TV Whitespace network for Microsoft Redmond campus.
12x12 MIMO with SoraMIMO (Multi-Input Multi-Output) is an important new wireless technology to increase data throughput in the wireless channel by adding multiple antennas. In theory, more antennas will lead to higher throughput gain, but in practice we seldom see more than four antennas in consumer products or in commercial uses. In fact, there haven't been many reported studies or trials to build MIMO system with more than 10 antennas.
One reason is the complexity of signal processing in large MIMO system. It will be tremendously difficult to build custom hardware and develop FPGA codes. However, software radio may have the advantage of being scalable and easy to program. Indeed, we put together 3 Sora 4x4 MIMO kits and a dozen server PCs to build a big software radio with 12 antennas -- to achieve close to 7 times throughput gain!
The Sora Academic Kit
When Microsoft Research first demonstrated the capability of Sora technology in 2009, there was a lot of excitement in the research community about its potentials. Microsoft Research then decided to share this discovery and the technology with academics, aiming to encourage the use of software radio in wireless networking research. An academic program was created and a team formed in Beijing, China to build and maintain the Sora Academic Kit. Today, Sora has more than 50 institution users and it has driven many wireless research projects around the world.
|Sora WiFi Demo
History: the Sora Project
The Microsoft Research Software Radio (Sora) project started as a "blue-sky" research project in the Wireless and Networking Group at Microsoft Research Asia (Beijing, China) around 2007. The goal was to advance the state-of-the-art in software radio and build a platform that can achieve wireless performance orders of magnitude better than existing systems.
In 2009, it surprised the world when it first demonstrated the ability to run a full-rate 802.11 entirely in PC software, which was never thought possible before. In 2010, Microsoft Research created an academic program and release the Sora Academic Kit to share this technology with the research community. Today, Sora has facilitated many wireless R&D around the world.
- 2007 Project started.
- 2008 First internal demo of 802.11b.
- 2009 First public demo of 802.11a/b/g, NSDI best paper.
- 2010 Sora Academic Program started.
- 2011 Sora Academic Kit v1 released.
- 2013 Sora Academic Kit v2 (MIMO) released.