28-11-2012, 01:32 PM
Software Defined Radio
Project Report SDR.pdf (Size: 1.18 MB / Downloads: 79)
Abstract
A software defined radio is a transmitter and receiver system that uses digital signal
processing (DSP) for coding, decoding, modulating, and demodulating data. This project
focused on using the IEEE 802.11a specification to create a software radio. The
feasibility of using Mathworks’ Simulink and Texas Instrument’s Code Composer Studio
to design, test, and prototype an OFDM software radio system on a Texas Instruments
CDSK6713 DSP development board was studied. Among the subjects examined were
communication with the board through real time data exchange (RTDX), quadrature
amplitude modulation (QAM), orthogonal frequency division multiplexing (OFDM),
frame and carrier synchronization, and issues with Simulink DSP code generation for
prototyping.
Introduction
This project focused on the design and implementation of a digital software radio. Digital
signal processing (DSP) was used to implement the transmitter and receiver. This
allowed for greater flexibility and accuracy when designing the radio. The project is a
scaled down version of the IEEE 802.11a standard that uses QAM (Quadrature
Amplitude Modulation) with OFDM (Orthogonal Frequency Division Multiplexing) to
create the coding and modulation scheme. The project also focused on rapid development
and prototyping by using Simulink block diagrams to program the Texas Instruments
TMDSK6713 evaluation board.
Functional Description
A software defined radio is a transmitter and receiver system that uses digital signal
processing (DSP) for coding, decoding, modulation, and demodulation. This allows much
more power and flexibility when choosing and designing modulation and coding
techniques. The Texas Instruments TMDSK6713 evaluation board with the
TMS320C6713 DSP chip was selected to implement the radio. The system functions are
shown in Figure 1.
Inputs and Outputs
An overall block diagram for the software radio project is shown in Figure 1. The
inputs to the system are a digital data source (computer file) and channel noise.
The output of the system is the recovered input data. The recovered data should
be received exactly as transmitted. This can be displayed on an oscilloscope
coming out of the DSP evaluation board and/or stored on a computer file for
further verification and analysis.
Modes of Operation
The input from the digital data source will be sent into the transmitter. There it
will have channel coding applied to provide protection from data corruption
introduced by noise. This part will not be implemented in this project. After that,
the encoded digital signal will then be modulated with an appropriate modulation
technique and transmitted through the channel. An appropriate model and
representation for the channel also needs determined. After this, the receiver
demodulates the signal and applies appropriate channel decoding. From there the
reconstructed digital signal will be available for further analysis.
Demultiplexing & Modulation
The demultiplexing block takes a byte of binary data and then breaks the byte into
four 2-bit streams. These 2-bit streams are each fed into a QAM modulation
channel. Once the QAM channels have modulated the input data, a buffer
collects a group of 20 QAM symbols that represent 5 bytes of data. The group of
symbols is then passed into the OFDM block. The OFDM system multiplexes the
QAM signals together to produce the final modulated output.
Interpolation
Interpolation increases the sampling rate and conditions the signal for
transmission before it is modulated. This is implemented using a combination of
up-sampling and filtering.
Up Mixer
Mixing is done to meet the bandwidth requirements of the channel. The up mixer
increases the frequency of the OFDM signal by multiplying it by a greater carrier frequency. The OFDM signal is imbedded in the carrier signal that the local
oscillator produces. The output of the mixer is contained in bandwidth of the
channel.
QAM encoding
The design QAM encoder is shown in Figure 7. The data comes into the system one byte
at a time. The byte of data is broken up into four pairs using the “extract bits” block.
Once the bits are extracted, they are passed to a lookup table. The lookup table contains
the QAM symbols representing each bit pair on the QAM constellation. The output of
the QAM encoder blocks are complex numbers. The symbols are multiplexed together
and converted into frame data. The buffer on the output of the convert to frame allows
for multiple bytes to be placed into the OFDM spectrum.
Guard Interval
Prasad in OFDM for Wireless Communication Systems [4] states that a guard interval is
needed to compensate for the effects of a multi-path channel. The legnth of the guard
interval should exceed the maximum excess delay of the multi-path echo channels. This
guard interval prevents the effects of the multi-path channel from corrupting the system
due to the properties of cyclic convolution. As long as the guard interval is longer than
the maximum delay of the multi-path channel, the corruption of the channel should be
limited to the guard interval. This guard interval is created by appending a cyclic
repetition of the FFT output to the FFT output’s beginning.
Window and Window Interval
Since each OFDM symbol changes instantly, it can be thought of being windowed by a
rectangular windowing function. A rectangular windowing function has a very large
bandwidth due to the large sidelobes. This also creates problems with inter-symbol
interference with adjacent OFDM symbols. To correct this problem, Prasad [4] and the
IEEE specification [2] recommend using a raised cosine windowing function to reduce
the size of the side lobes.