Direct Sequence
Spread Spectrum DQPSK Mod Symbol Wave Shaping Scramble To RF
DQPSK Demod Despreading Descramble
Samples
@32Mbps
Samples
@352Mbps
Samples
1.4Gbps
Decimation
Samples
@352Mbps
Samples
@32Mbps
Bits
@2Mbps
@2Mbps
Bits
@2Mbps
Bits
@2Mbps
Transmitter:
Samples
1.4Gbps
From RF
To MAC
(a) IEEE 802.11b 2Mbps
Interleaving Convolutional encoder QAM Mod IFFT GI Addition Symbol Wave Shaping Scramble
Bits
@48Mbps
Bits
@48Mbps
Samples
@512Mbps
Samples
1.28Gbps
@640Mbps
@384Mbps
Bits
@24Mbps
Bits
@24Mbps
Transmitter:
Samples
1.28Gbps
To RF
Receiver:
FFT Remove GI Decimation
Samples
@640Mbps
Samples
@512Mbps
Demod +
Interleaving
Viterbi
decoding Descramble
Samples
@384Mbps
Bits
@48Mbps
Bits
@24Mbps
Bits
@24Mbps
From RF
To MAC
(b) IEEE 802.11a/g 24Mbps
From MAC
Samples
Samples
From MAC
These requirements are very demanding for software
processing in GPPs.
2. 2. Wireless mac
The wireless channel is a resource shared by all transceivers operating on the same spectrum. As simultaneously
transmitting neighbors may interfere with each other, various MAC protocols have been developed to coordinate their
transmissions in wireless networks to avoid collisions.
Most modern MAC protocols, such as 802.11, require
timely responses to critical events. For example, 802.11
adopts a carrier sense multiple access (CSMA) MAC protocol to coordinate transmissions. Transmitters are required
to sense the channel before starting their transmission,
and channel access is only allowed when no energy is
sensed, i.e., the channel is free. The latency between sense
and access should be as small as possible. Otherwise, the
sensing result could be outdated and inaccurate. Another
example is the link-layer retransmission mechanisms
in wireless protocols, which may require an immediate
acknowledgement (ACK) to be returned in a limited time
window.
Commercial standards like IEEE 802.11 mandate a response
latency within 16 ms, which is challenging to achieve in software
on a general-purpose PC with a general-purpose OS.
2. 3. software radio requirements
Given the above discussion, we summarize the requirements
for implementing a software radio system on a general PC
platform:
high-system throughput. The interfaces between the radio
front-end and PHY as well as between some PHY processing
blocks must possess sufficiently high throughput to transfer
high-fidelity digital waveforms.
Intensive computation. High-speed wireless protocols
require substantial computational power for their PHY
processing. Such computational requirements also increase
proportionally with communication speed. Unfortunately,
techniques used in conventional PHY hardware or embed-
ded DSPs do not directly carry over to GPP architectures.
Thus, we require new software techniques to accelerate
high-speed signal processing on GPPs. With the advent of
many-core GPP architectures, it is now reasonable to aggre-
gate computational power of multiple CPU cores for signal
processing. But, it is still challenging to build a software
architecture to efficiently exploit the full capability of mul-
tiple cores.
3. aRchitectuRe
We have developed a high-performance software radio
platform called Sora that addresses these challenges. It is
based on a commodity general-purpose PC architecture. For
flexibility and programmability, we push as much communication functionality as possible into software, while keeping hardware additions as simple and generic as possible.
Figure 2 illustrates the overall system architecture.