technical Perspective
sora Promises Lasting impact
By Dina Katabi
the teRm SoftwaRe defined radio (SDR)
first appeared in 1992 and referred
to a radio transceiver where the basic
signal processing components (for example, filtering, frame detection, synchronization, and demodulation) are
all done in a general-purpose processor. The goal of an SDR was to enable a
single radio to support multiple wireless technologies (for example, AM,
VHF, FM) and be easily upgradable
with a software patch.
While the concept of SDR has been
around for decades, only recently have
SDRs become common in academic
wireless research. However, research
projects typically employ SDR as a development platform, that is, they use
software radios to develop new physical layer designs with the understanding that if these designs make it to a
product they will be built in ASICs.
The reason why SDR has become a
development platform rather than a
fully functional software radio is that
building high-performance SDRs has
turned out to be very challenging.
Sora has revived the original SDR vision. The objective of Sora is to build an
SDR that combines the performance
and fidelity of hardware platforms
there are many
reasons why
the following paper
about sora stands
out as one of
the most significant
wireless papers
in the past few years.
with the programmability and flexibility of general-purpose processors. To
do so, Sora must overcome the following challenge: How can a radio deliver
high throughput and support real-time
protocols when all signal processing is
done in software on a PC?
Sora’s approach uses various features common in today’s multicore architectures. For example, transferring
the digital waveform samples from the
radio board to the PC requires very high
bus throughput. While alternative SDR
technologies employ USB 2.0 or Gigabit Ethernet, Sora opts for PCI-Express.
This design decision enables Sora to
achieve significantly higher transfer
rates, which are important for high
bandwidth multi-antenna designs.
The choice of PCI-express also enables
Sora to reduce the transfer latency to
sub-microseconds, which is necessary for wireless protocols with timing
constraints (for example, MAC protocols). Further, to accelerate wireless
processing, Sora replaces computation
with memory lookups, exploits single
instruction multiple data (SIMD), and
dedicates certain cores exclusively to
real-time signal processing.
There are many reasons why the
following paper about Sora stands out
as one of the most significant wireless
papers in the past few years. First, it
presents the first SDR platform that
fully implements IEEE 802.11b/g on
standard PCs. Second, the design
choices it makes (for example, the use
of PCIe, SIMD, trading computation
for memory lookups, and core dedication) are highly important if software
radios are ever to meet their original
goal of one-radio-for-all-wireless-technologies. Third, the paper is a
beautiful and impressive piece of engineering that spans signal processing, hardware design, multicore programming, kernel optimization, and
so on. For all these reasons, this paper
will have a lasting impact on wireless
research.
The Sora platform has been used
in multiple research projects and real-
time demos. It has enabled demand-
ing designs, such as LTE and AP virtu-
alization, to be built fully in software.
However, currently most SDR-based
research uses the GNU Radio/USRP
platform. Despite the limitations of
this platform, previous attempts at
replacing it with more capable plat-
forms did not experience significant
success. In fact, history shows that
wide adoption is not necessarily cor-
related with the more capable design.
One of the classic papers we teach our
undergraduate students is “The Rise
of Worse is Better” by Richard Gabriel
that explains why the Lisp language
lost to C and Unix. Gabriel argues that
for wide adoption, a system must be
good enough and as simple as pos-
sible. Such a design (termed worse is
better) tends to appear first because
the implementer did not spend an ex-
cessive amount of time over-optimiz-
ing. Therefore, if good enough, it will
be adopted by developers because of
its simplicity. Once adopted, the sys-
tem will gradually improve until it is
almost the right design. One may ar-
gue that the history of the GNU Radio/
USRP SDR is fairly similar; the plat-
form originally provided just enough
for people to start experimenting with
the wireless physical layer. As a result,
it was simple and cheap, which caused
it to spread. Once it was accepted, it
kept improving just enough to enable
the next step in research.
Dina Katabi ( dina@csail.mit.edu) is an associate
professor in the Electrical Engineering and Computer
Science Department at Massachusetts Institute of
Technology, Cambridge, MA.