Software Defined Radio

Download as pdf or txt
Download as pdf or txt
You are on page 1of 74

SOFTWARE DEFINED RADIO

By
MARWA MAMOUN ABDELGADIR ABDELRAHMAN
INDEX NO. 074083

Supervisor
Dr. Tahani Abdalla Attia

A REPORT SUBMITTED TO
University of Khartoum
In partial fulfillment of the requirements for the degree of
B.Sc. (HONS) Electrical and Electronics Engineering
(COMMUNICATION ENGINEERING)
Faculty of Engineering
Department of Electrical and Electronics Engineering
September 2012
DECLARATION OF ORIGINALITY
I declare that this report entitled “Software Defined Radio for Cubesat” is my own work except
as cited in the references. The report has not been accepted for any degree and is not being
submitted concurrently in candidature for any degree or other award.

Signature: _________________________

Name: ____________________________

Date: _____________________________

II
ACKNOWLEDGEMENTS

From the very beginning to the end, I thank Allah who provided me with health and strength and
through whom a number of relatives, friends and many others helped me throughout this project.
I would like to express my sincere appreciation and gratitude to my supervisor Dr.Tahani Abdallah
for her support, help and guidance throughout this project.
I would like to thank also Dr. Nadir Omer, whose vision and constructive criticism over the last year
have been my privilege.
Special gratitude to my project partner Nibras Sirag, for her support, hard work, team spirit and
patience.
I am as ever, indebted to my family, especially my mother for supporting me throughout my life.

III
ABSTRACT

Software defined radio (SDR) has emerged from obscurity to be heralded in recent years as offering
a potential solution to our historical and continued inability to achieve common global
communication standards. Software defined radio offers a highly flexible system that can work with
different communication standards. Moreover, it allows new features to be added to the system
without requiring the underlying architecture to be changed.
This project aims to develop a simple software defined radio transceiver for University of Khartoum
educational ground station that provides users with basic capabilities of changing the filtering
parameters, tuning frequency and modulation/demodulation scheme. The system is based on
software in which most of the transceiver functions are implemented with as minimum hardware as
possible.
The system was developed and implemented successfully using a PC and an RF front end. The
software program was written using C++ to cope with real time processing requirement. The
software operation for baseband processing was tested. Transmission and reception of baseband
signals were performed successfully.
Although the results obtained from testing the system are satisfactory, a software improvement is
still required in order to increase the signal quality. System integration was not completed due to
time constraints.

IV
.

. RF
. C++

V
TABLE OF CONTENTS

TITLE.................................................................................................................................................. I
DECLARATION OF ORIGINALITY …....................................................................................... II
ACKNOWLEDGMENT.................................................................................................................. III
ABSTRACT...................................................................................................................................... IV
…..…………………………………………………………………………….……………..V
TABLE OF CONTENTS................................................................................................................. VI
LIST OF FIGURES......................................................................................................................... IX
LIST OF TABLES........................................................................................................................... XI
LIST OF ABBREVIATIONS .........................................................................................................XII
1. Chapter One................................................................................................................................ 1

1.1 Overview ............................................................................................................................... 1

1.2 Problem Statement ................................................................................................................. 1

1.3 Background and Motivation .................................................................................................. 2

1.4 Objectives .............................................................................................................................. 2

1.5 Methodology .......................................................................................................................... 3

1.6 Report Layout ........................................................................................................................ 3

2. Chapter Two ............................................................................................................................... 5

2.1 Overview ............................................................................................................................... 5

2.2 Ground Station Overview ...................................................................................................... 5

2.3 Software Defined Radio ........................................................................................................ 6

2.3.1 Software Defined Radio Ideal Architecture ....................................................................... 6

2.3.2 Ideal Transceiver Operation ............................................................................................... 8

2.4 Software Defined Radio Platforms ........................................................................................ 9

2.4.1 FPGA Based Software Defined Radio ............................................................................... 9

2.4.2 DSP Based Software Defined Radio.................................................................................. 9

2.4.3 PC Based Software Defined Radio .................................................................................. 11

VI
2.5 Software Defined Radio Projects Review ........................................................................... 13

3. Chapter Three .......................................................................................................................... 15

3.1 Introduction ......................................................................................................................... 15

3.2 Design Considerations ......................................................................................................... 15

3.3 Development Methodology ................................................................................................. 16

3.4 Project Scope ....................................................................................................................... 16

3.5 System Requirements .......................................................................................................... 17

3.6 System Design ..................................................................................................................... 18

3.6.1 PC Sound Card ................................................................................................................. 18

3.6.2 Hardware Design ............................................................................................................. 19

3.6.2.1 Receiver RF Front End ................................................................................................. 19

3.6.2.2 Transmitter RF Front End ............................................................................................ 22

3.6.3 Software Design ............................................................................................................... 23

3.6.3.1 Sound Card Access ....................................................................................................... 23

3.6.3.2 The Object-Oriented Programming (OOP) .................................................................. 24

3.6.3.3 C++ Programming Language ....................................................................................... 25

3.7 System Implementation ....................................................................................................... 25

3.7.1 Hardware .......................................................................................................................... 25

3.7.2 Software ........................................................................................................................... 25

3.7.2.1 Audio Class .................................................................................................................. 27

3.7.2.2 Modulation Class.......................................................................................................... 28

3.7.2.3 Demodulation Class ..................................................................................................... 29

3.7.2.4 Filter Class.................................................................................................................... 29

3.7.2.5 GUI Implementation .................................................................................................... 30

4. Chapter Four ............................................................................................................................ 33

4.1 Introduction ......................................................................................................................... 33

VII
4.2 Software Modules Testing ................................................................................................... 33

4.2.1 Audio Class Testing ......................................................................................................... 33

4.2.2 Filter Class Testing .......................................................................................................... 36

4.2.3 Modulation Class ............................................................................................................. 37

4.2.3.1 AM ............................................................................................................................... 37

4.2.3.2 DSB .............................................................................................................................. 37

4.2.3.3 ASK .............................................................................................................................. 38

4.2.3.4 FM ................................................................................................................................ 39

4.2.3.5 BFSK ............................................................................................................................ 40

4.2.3.6 BPSK ............................................................................................................................ 40

4.2.4 Demodulation Class ......................................................................................................... 41

4.2.4.1 AM ............................................................................................................................... 41

4.2.4.2 DSB .............................................................................................................................. 41

4.2.4.3 ASK .............................................................................................................................. 42

4.2.4.4 FM ................................................................................................................................ 43

4.2.4.5 BFSK ............................................................................................................................ 44

4.2.4.6 BPSK ............................................................................................................................ 44

4.3 Hardware Testing ................................................................................................................ 45

5. Chapter Five ............................................................................................................................. 46

5.1 Project Preview .................................................................................................................... 46

5.2 Future Work ......................................................................................................................... 46

REFERENCES .......................................................................................................................... 48

APPENDIX A…………………….…..…...………………………………………………….A-1

APPENDIX B……………………...…………………………………………………….........B-1
APPENDIX C………………………………………………………………………………....C-1

VIII
LIST OF FIGURES

Figure Page
Figure 2.1 Ideal transceiver architecture .............................................................................................. 8
Figure 2.2 FPGA based software defined radio ................................................................................. 10
Figure 2.3 Xilinix SpartanIIE FPGA kit ............................................................................................ 10
Figure 2.4 DSP based software defined radio .................................................................................... 11
Figure 2.5 Altera-Cyclone II DSP kit................................................................................................. 11
Figure 2.6 PC Based Software Defined Radio ................................................................................... 12
Figure 3.1 Spiral model ...................................................................................................................... 16
Figure 3.2 Typical transceiver system ................................................................................................ 17
Figure 3.3 Receiver Subsystem .......................................................................................................... 18
Figure 3.4 Transmitter Subsystem ..................................................................................................... 18
Figure 3.5 Receiver RF front end block diagram ............................................................................... 19
Figure 3.6 Pre-selector filter............................................................................................................... 20
Figure 3.7 Mixer ................................................................................................................................. 20
Figure 3.8 Phase transformer.............................................................................................................. 21
Figure 3.9 Transmitter RF front end block diagram .......................................................................... 22
Figure 3.10 Typical computer architecture ........................................................................................ 24
Figure 3.11 Receiver RF front end circuit schematic......................................................................... 26
Figure 3.12 Transmitter RF front end circuit schematic .................................................................... 26
Figure 3.13 A photo of the system RF front end ................................................................................ 27
Figure 3.14 Audio stream flow .......................................................................................................... 28
Figure 3.15 GUI window ................................................................................................................... 30
Figure 3.16 Modulation mode operations .......................................................................................... 31
Figure 3.17 Demodulation mode operations ...................................................................................... 32
Figure 4.1 Sound card output at input of constant amplitude ........................................................... 35
Figure 4.2 Sound card output at input of constant frequency ............................................................ 35
Figure 4.3 Lowpass filter at 10KHz cutoff frequency Bode plot ....................................................... 36
Figure 4.4 AM modulated signal ........................................................................................................ 37
Figure 4.5 DSB modulated signal ...................................................................................................... 38
Figure 4.6 ASK modulated signal ...................................................................................................... 39

IX
Figure 4.7 FM modulated signal ........................................................................................................ 39
Figure 4.8 BFSK modulated signal .................................................................................................... 40
Figure 4.9 BPSK modulated signal .................................................................................................... 41
Figure 4.10 AM demodulation ........................................................................................................... 42
Figure 4.11 DSB demodulation .......................................................................................................... 42
Figure 4.12 ASK demodulation ......................................................................................................... 43
Figure 4.13 FM demodulation ............................................................................................................ 43
Figure 4.14 BFSK demodulation ....................................................................................................... 44
Figure 4.15 BPSK demodulation ....................................................................................................... 44
Figure 4.16 Received signal using RF front end ................................................................................ 45

X
LIST OF TABLES

Table Page
Table 4.1 Sound card output at 0.3Vp-p input ................................................................................... 34
Table 4.2 Sound card output at input of 12KHz ................................................................................ 34
Table 4.3 Lowpass filter of 10KHz cutoff frequency behavior ......................................................... 36

XI
LIST OF ABBREVIATIONS

A/D Analog To Digital Converter


AM Amplitude Modulation
API Application Programing Interface
ASK Amplitude Shift Keying
BFSK Binary Frequency Shift Keying
BPF Bandpass Filter
BPSK Binary Phase Shift Keying
BRF Bandreject Filter
BTS Base Transceiver Station
CR Cognitive Radio
D/A Digital To Analog Converter
DLL Dynamic Link Library
DSB Double Side Band
DSP Digital Signal Processer
FIR Finite Impulse Response
FM Frequency Modulation
FPGA Field Programmable Gate Array
GPL General Public License
GPP General Purpose Processor
GUI Graphical User Interface
HDL Hardware Description Language
HPF High Pass Filter
LPF Lowpass Filter
OOP Object Oriented Programming
OS Operating System
PC Personal Computer
RF Radio Frequency
SDR Software Defined Radio
SNR Signal To Noise Ratio

XII
1. Chapter One

INTRODUCTION

1.1 Overview

Traditionally, radio communication systems required specialized hardware to implement


their functionality. In order to keep production costs low, these systems contained only
the hardware necessary to perform the tasks that they were designed for. Therefore these
hardware defined systems were often difficult to modify and upgrade.
Software based systems emerged offering a potential solution of higher flexibility and
comparatively lower cost. Software defined radio is defined as "Radio in which some or
the entire physical layer functions are software defined" [1]. Software defined radio
allows engineers to implement any number of different signal processing elements
without altering the underlying system hardware. This is done by simply upgrading
system software.

1.2 Problem Statement

2. The conventional hardware defined radios have little flexibility and mostly doesn't
support multiple wireless communication protocols because of the limitation of hardware.
Also, development of radio that involves new services is very difficult because it requires
hardware changes, which means more power consumption, long development time and
high production cost.
3. Performing the baseband signal processing in the software domain allows for much
greater re-configurability than traditional radios provide. In addition, the cost of a
software defined radio platforms are often lower than those of a more traditional
platforms because the software is reusable and often available at relatively low cost.

1
Introduction Chapter One

1.3 Background and Motivation

4. The costs incurred in evolving a communication system to a new standard, by means of


hardware replacement, is enormous. Therefore software defined radio must be employed.
Software defined radio decreases the cost dramatically because any system upgrade
requires only software update.
Moreover, software defined radio increases system flexibility. With software defined
radio, system becomes adaptable to the continuously changing requirements of
scrambling or encryption codes, modulation format, channel bandwidth, data rate, and
voice codec type. Therefore the system becomes able to operate with different equipment
standards.
Software defined radio evolved from pure academically concept to be implemented in the
defense sector in both U.S. and Europe [2]. The United States Military developed a
software defined radio system in the early 1990s that required four of the most powerful
digital signal processors (DSP) available and some FPGAs to glue them together. This
system, known as SpeakEasy, filled the back of a truck. By the time the engineers
finished writing the software for SpeakEasy, three years had passed and the hardware in
the system was already obsolete [3].
Then software defined radio broke out and revolutionized the communication world.
Nowadays most mobile handsets and base transceiver station (BTS) systems include
software defined radio system. Different manufacturing companies are developing
software defined radio systems for reception of RF signals such as FlexRadio and
SoftRock.
Software defined radio is future of radio, maximum flexibility a lot of possibility from
the same hardware, what was very hard to achieve with hardware realization now is very
easy by software.

1.4 Objectives

The main objective of this project is to develop a software defined radio of high
flexibility and minimum cost for University of Khartoum KNSAT educational ground

2
Introduction Chapter One

station. This is done with the aim of making the system available for usage and/or
modification by students, graduates and researchers.

1.5 Methodology

In order to implement a software defined radio consists of software that used for different
type of modulation and RF front end receiver, a small set of requirements is considered
and goes through each development phase for those set of requirements, design,
implementing and testing is done at each phase, based on that, functionality for additional
requirements is added in ever-increasing until the application is ready for integration,
installation and maintenance phase.
The system is divided into modules, so that each module is independent from the others,
to be reused for other implementation where ever it needed. For the hardware part, the
components with low cost are selected. On the other hand, free and open source software
is implemented.

1.6 Report Layout

This report is organized as follows:

Chapter 2 (Literature Review): This chapter presents an overview to software


defined radio and its projects. It begins by describing the software defined radio
architecture and the various platforms that are used to implement it and their
capabilities.
Chapter 3 (Design and Implementation): This chapter details the project
requirements and scope. Also, it presents the design methodology, components
description, in addition to the methods, and tools used to implement the system.
Chapter 4 (Testing and Results): Presents a description of how the system was
tested followed by the results of tests and their discussion.
Chapter 5 (Conclusion): The project is reviewed in this chapter, discussing the
achieved objectives and not achieved ones; in addition to the further
developments that can be made to the resulting system.

3
Introduction Chapter One

Appendix A: represents the GNU License of PortAudio


Appendix B: describes the audio I/O code.
Appendix C: Presents the software modules used.

4
2. Chapter Two

LITERATURE REVIEW

2.1 Overview
This chapter aims to examine the possible architectures for a software defined radio. This
is done with the aim of providing guidance to certain design decisions that will be made
later throughout the project. This chapter begins a brief overview of ground stations
which is provided to show the importance of software defined radio. Following that, the
various tools and techniques that can be used for software-defined radio are introduced
and discussed. The chapter ends by presenting some of the software defined radio
existing implemented projects.

2.2 Ground Station Overview


A ground station is a terrestrial terminal station designed for
telecommunication with spacecraft, or reception of radio waves from an astronomical
radio source. Ground stations are located either on the surface of the Earth, or within the
atmosphere [4]. Earth stations communicate with spacecraft by transmitting and receiving
radio waves using transceivers. Both the transmitter and receiver of the transceiver must
be customized to the signaling format used such as encryption, modulation/demodulation
and frequency used by the spacecraft or the astronomical radio source. This places high
burden in the choice of ground station equipment. When ground station is to be used to
receive signals from different radio sources, the equipment purchased must match the
wide range of signaling format used by each source and to be able to differentiate
between sources too. Therefore more equipment is purchased to cope with all inquiries
which increase the cost dramatically.

1
Literature Review Chapter Two

A potential solution is to use software defined radio transceivers to increase flexibility


and to decrease cost.

2.3 Software Defined Radio


A software defined radio is defined as a form of transceiver in which ideally all aspects of
its operation are determined using versatile, general-purpose hardware whose
configuration is under software control. This is often thought of in terms of base-band
digital signal processers (DSPs). The following section describes how software defined
radio can be implemented in a transceiver system.

2.3.1 Software Defined Radio Ideal Architecture


A software defined radio consists of, for the most part, the same basic functional blocks
as any digital communication system [5]. Software defined radio lays new demands on
many of these blocks in order to provide multiple bands, multiple service operation and
re-configurability needed for supporting various air interface standards. To achieve the
required flexibility, the boundary of digital processing should be moved as close as
possible to the antenna, and application specific integrated circuits, which are used for
baseband signal processing, should be replaced with programmable implementations [6].
An ideal software defined radio would have a very minimal analog front end as illustrated
by Figure 2.1 Ideal transceiver architecture, note that the A/D converter is assumed to
have a built-in anti-alias filter and that the D/A is assumed to have a built-in
reconstruction filter [7]. The system consists of the following:
Digital signal processor: the modulation scheme, channelization,
protocols, and equalization for transmit and receive are all determined in
software within the digital processing subsystem. This is shown containing
a DSP in Figure 2.1 Ideal transceiver architecture.
Circulator: is used to isolate the transmit and receive path signals to
allow using a single antenna for both transmitter and receiver.
Amplifier: two amplifiers are used. One of which is responsible for
including enough power in the signal for transmission after the D/A

6
Literature Review Chapter Two

conversion. The other one magnifies the incoming signal from the antenna
before passing it to A/D. The amplifier must have linear characteristics to
prevent signal distortion.
Anti-Aliasing and Reconstruction Filter: anti-aliasing filter is included
before the A/D converter to prevent generation of image signals. Because
once an aliased image is created in the sampling process, no amount of
further processing can distinguish between a true signal and an aliased
signal.
The filter must be a lowpass filter tuned to a frequency that is less or equal
half the sampling frequency of the A/D converter. The filter must have
also linear characteristics in order to protect signal properties.
For the same reason, the output of a D/A converter requires a lowpass
analog filter, called a reconstruction filter, as the output signal must be
band limited, to prevent aliasing (here meaning Fourier coefficients being
reconstructed as low frequency waves, not as higher frequency aliases).
Ideally, both filters should be brick wall filters, constant phase delay in the
passband with constant flat frequency response, and zero response from
the Nyquist frequency.
Antenna: it is used to radiate and receive signals.
A/D converter: it is used to convert the incoming analog signal into
digital in order to perform digital signal processing techniques to it. The
converter must have a sampling rate that is twice maximum incoming
signal frequency according to sampling theorem. A/D converters of high
sampling rate for high frequency signals are quiet expensive and are not
usually available in the local markets. A potential solution is to down
convert the incoming signal frequency into a suitable frequency range
using a mixer stage before the converter.
D/A converter: it is used to convert digital signal into analog in order to
transmit it by the antenna. This component is chosen depending on the
required frequency band of the output signals. Its sampling rate must also
follow the sampling theorem.

7
Literature Review Chapter Two

Transmit/Receive
Antenna

Power
RF-output DAC Amplifier Circulator

D/A

DSP

RF-input ADC

A/D

Digital
Processing

Figure 2.1 Ideal transceiver architecture

2.3.2 Ideal Transceiver Operation


The signal is received by the antenna through the circulator which is then amplified. This
is because received signals power is very low due to attenuation encountered in the
propagation path. The signal is passed to an anti-aliasing filter then to A/D converter. The
signal is then passed to the final stage which is digital signal processing.
When the signal is to be transmitted, the data generated by the processor are passed to
D/A converter. The signal is then amplified and radiated by the antenna through the
circulator to space. The reason behind amplification here is to include enough power in
the signal that helps it to propagate to the required destination and to be detected by the
receiver.

8
Literature Review Chapter Two

2.4 Software Defined Radio Platforms


There exist a large number of available platforms for software defined radio, each with its
own features and capabilities. The choice between them depends on the particular
application area, the cost and power consumption. In the following section, the potential
digital hardware platforms are viewed.

2.4.1 FPGA Based Software Defined Radio


A field-programmable gate array (FPGA) is an integrated circuit that contains an array of
programmable logic components called "logic blocks" which can be configured by a
customer or a designer after manufacturing hence the name "field-programmable".
The FPGA kits contain many features. The most important for the transceiver
architecture are A/D converter, D/A converter, power amplifier, RF input pins, and a
processor. Therefore the kit along with an antenna and a circulator can be used as a
transceiver as shown in Figure 2.2.
FPGA processor is programmed using a hardware description language (HDL) such as
VHDL and Verilog. The DSP program is written in one of these languages on PC
compiler and then loaded into the FPGA using a USB port.
Different kits of different processing capabilities and sampling frequencies are available
which can be used depending on application and cost. Usually, the FPGA processor is
capable of performing high speed calculations but its operation is limited by the small
memory contained in the FPGA kit. Therefore optimization between memory and certain
operations (for example making a filter program) is needed. Moreover FPGA size is large
compared to other platforms discussed below.
FPGA is used with applications that require high processing requirements at high
frequencies such as military communication systems.

2.4.2 DSP Based Software Defined Radio


A digital signal processor (DSP) is a microprocessor that has an architecture specialized
for fast operational needs of digital signal processing. They are best suited to the less

9
Literature Review Chapter Two

computationally intensive forms of signal processing, rather than very high-speed front-
end applications.
The DSP kit - like the FPGA kit- contains many features that can be utilized for the
transceiver, such as A/D and D/A converters, anti-aliasing and reconstruction filters, RF
inputs pins and the processor. Figure 2.4 DSP based software defined radio describes a
possible architecture for the transceiver.

Transmit/Receive
Antenna

Diplexer

FPGA Kit

Figure 2.2 FPGA based software defined radio

Figure 2.3 Xilinx SpartanIIE FPGA kit

The DSP based software-defined radio contains features that ease the DSP operations
more than the FPGA based architecture, but still not as much as the PC based one.

10
Literature Review Chapter Two

Moreover, DSP based architecture is built to perform DSP operations; any other
operation type is not applicable, therefore decreasing the system flexibility.
Different aspects must be considered for purchasing the DSP kit for software-defined
radio; most important are the memory, sampling rate and clock speed.

Transmit/Receive
Antenna

Diplexer

DSP Kit

Figure 2.4 DSP based software defined radio

Figure 2.5 Altera-Cyclone II DSP kit

2.4.3 PC Based Software Defined Radio


The PC based software defined radio depends on the PC processor. Each PC utilizes a
general purpose processor (GPP) to perform its functions. GPP is not restricted to a

11
Literature Review Chapter Two

specific language or software. GPP has high processing capabilities therefore it can be
used in different application by simply programming it by any high level language such
as C and Java.
Today PCs can contain more than one processor and very large memory. Consequently,
implementing DSP operations on PC is simple, efficient and cost effective. Therefore
there is no need to buy an FPGA or DSP kit. Anyone with sufficient knowledge can
create his own transceiver using his PC. Figure 2.6 PC Based Software Defined Radio
illustrates the PC based software defined radio. The signal is input to the processor using
any one of the external ports. A/D and D/A converters are required in the system
preceding the ports as shown in the figure (the figure assumes that all input signals are of
frequency below half the sampling rate). To eliminate the need for an external A/D and
D/A converters, the PC sound card can be utilized. This is by passing the incoming signal
through the microphone jack and then taking the output signal after processing from the
speakers jack. This method limits the signal frequency band that can be received
depending on the sound card sampling rate.

Transmit/Receive
Antenna

Diplexer

D/A

A/D

Figure 2.6 PC Based Software Defined Radio

12
Literature Review Chapter Two

2.5 Software Defined Radio Projects Review


Software defined radio was first termed 'software radio' which was first introduced in
1984 by a team at the Garland Texas Division of E-Systems Inc. (now Raytheon). A new
digital signal processing laboratory was developed in which sellable software radio
products were produced and popularized within various government agencies. This 1984
software radio was a digital baseband receiver that provided programmable interference
cancellation and demodulation for broadband signals, typically with thousands
of adaptive filter taps, using multiple array processors accessing shared memory [8].
Perhaps the first software defined radio transceiver was designed and implemented by
Peter Hoeher and Helmuth Lang at the German Aerospace Research Establishment
(DLR, formerly DFVLR) in Oberpfaffenhofen, Germany, in 1988 [9]. Both transmitter
and receiver of an adaptive digital satellite modem were implemented according to the
principles of software defined radio, and a flexible hardware periphery was proposed.
Latter, in 1991, term "Software Defined Radio" was introduced by Joseph Mitola, who
published the first paper on the topic in 1992, though the concept was first proposed in
1991[2].
In the defense sector, software-defined radios have been known since the late 1970s in
both the U.S. and Europe [3]. The first military application that used software-defined
radio was SpeakEasy program that was initiated by the U.S. military. The program aimed
to use programmable processing to emulate multiple existing radios and to be able easily
incorporate new coding and modulation standards in future so that military
communications can keep pace with advances in coding and modulation techniques [4].
Another program by the U.S. military is the Joint Tactical radio system (JTRS) which
produces a family of interoperable, modular, software-defined radios that operate as
nodes in a network that provides secure wireless communication and networking services
for mobile and fixed forces, consisting of U.S. Allies, joint and coalition partners, and in
time, disaster response personnel [10].
Software defined radio was then spread from military to a wide variety of applications
making the platform itself a commodity that is available in everyone hand. Software
defined radio is used extensively in mobile communication systems, both in the handset

13
Literature Review Chapter Two

and the base transceiver station. Nowadays there is no mobile that does not use software
defined radio.
Moreover, there are several companies that develop the hardware and/or the software
products to be used for different applications such as FlexRadio systems. Open source
hardware and software are also available for software-defined radio. GNU Radio is a free
and open source software development toolkit that provides signal processing blocks to
implement software radios upon which several open source hardware can be used [11].
Universal software radio peripheral (USRP) is an open source hardware which is
designed and sold by Ettus Research, LLC and its parent company, National Instruments.
The USRP is commonly used with the GNU Radio software suite to create complex
software-defined radio systems. HPSDR (high performance software defined radio) is
open source hardware and software project intended for use by Radio Amateurs ("hams")
and Short Wave Listeners (SWLs) [12].
Another SDR hardware that has recently become available in small numbers and which
has been bought by amateur radio enthusiasts around the world is the Fun Cube Dongle
or „FCD‟ [13]. FCD can be used with any of the software defined radio programs
available such as Rocky developed by Alex VE3NRA and WINRAD developed by
Alberto IPHD [14].

14
3. Chapter Three

DESIGN AND IMPLEMENTATION

3.1 Introduction
The project is designed based on a straightforward methodology using PC components, to
help use and development of the project. The aim of this chapter is to describe the tools
and designs that were employed to implement the project and achieve its objectives. The
chapter begins by listing some considerations that were taken into account while
designing the system. Then the development methodology, project scope and system
requirements are discussed. The chapter continues by discussing system design in details
for both hardware and software and ends by discussing system implementation.

3.2 Design Considerations


Low cost: the system is to be designed and implemented using available
components, while at the same time perform its functions with high efficiency.
Re-configurability: The system should be easily reconfigurable and flexible so
that it can be used to support any number modulation, demodulation, or other
signal processing schemes.
Extensibility: The system must be designed such that new capabilities can be
added to it without major changes to the underlying architecture.
Modularity: The components of the resulting system should be well defined and
independent which leads to better maintainability. The components could then be
implemented and tested in isolation before being integrated to form the system.
Open Source: such that the source code is available for modification or
customization. Also the hardware is designed using simple components of low
cost such that hardware becomes available in anyone‟s hands.

1
Design and Implementation Chapter Three

Compatibility: The project target is to design a software-defined radio


transceiver that is compatible and operable on any PC.
Convenience: the system is to be designed such that it is convenient to use by all
users of all levels.
Simplicity: the system is designed based on a simple approach to help system
development.

3.3 Development Methodology


The system was developed under spiral model approach, according to which the
development starts with a small set of requirements and goes through each development
phase for those set of requirements. Based on that, functionality for additional
requirements is added in ever-increasing "spirals" until the application is ready for the
Installation and Maintenance phase. With the spiral model no need for full understanding
of the requirements and their implementation from the beginning.

Analysis Evaluation

Planning Development

Figure 3.1 Spiral model

3.4 Project Scope


The scope of the project is to develop a software defined radio that can be used for
reception and transmission of radio signals. This is by implementing the RF front end
part and the digital modulation and demodulation part of the transceiver system shown in
Figure 3.2 Typical transceiver system. The system is designed to be an educational
transceiver targeting different users such as students, graduates and researchers.

16
Design and Implementation Chapter Three

Figure 3.2 Typical transceiver system

3.5 System Requirements


In order to fulfill the project objectives and design considerations, certain system
requirements arise. Figure 3.3 Receiver Subsystemand Figure 3.4 Transmitter Subsystem
illustrate the general structure of receiver and transmitter subsystems. The soundcard will
be used to perform the conversion operation from analog to digital and from digital to
analog, and all processing is carried out by PC. Consequently, the system must contain
and perform the following:
i. A RF front end must be included in order to perform all analog operations and to
generate an in-phase and quadrature projection of the received signal and passing
them to the microphone jack.
ii. Getting the signals directly from the sound card.
iii. Modulation or demodulation on the input signals.
iv. Delivering the modulated or demodulated signal to the sound card at which the signal
can be taken from speakers jack.
v. Giving the user the ability to change the settings of the software and specify the mode
of operation (modulation, demodulation, others …) and the type of each.

17
Design and Implementation Chapter Three

A/D Digital
Analog converter
Input From Signal
Radio Front
Antenna (Sound Processing
End
Card) on GPP

Figure 3.3 Receiver Subsystem

Digital D/A
Signal Converter RF Front Output to
Processing (Sound End Antenna
on GPP Card)

Figure 3.4 Transmitter Subsystem

3.6 System Design


The system design is divided into hardware and software design. Both designs require the
knowledge of PC sound card accessing. Therefore sound card is first discussed then
hardware and software designs are presented.

3.6.1 PC Sound Card


Nowadays every PC nowadays comes with a sound card; they vary immensely in sound
quality, features and input/output options. Most standard PC soundcards allow the
incoming signal to be sampled at rates up to 44.1 kHz per channel. High end professional
soundcards allow higher sampling rates, typically 96 kHz and above. Most common
soundcards operate using 16 bit A/D converters. High end soundcards use 24 bit A/D
converters allowing a greater range of output values. This is because sound card is
intended to process only audio signals. Sound cards also contain a built in anti-aliasing
and reconstruction filter for their A/D and D/A converters respectively.
The sound card inputs audio signals from the microphone jack and outputs it to the
speakers through its A/D and D/A converters.

18
Design and Implementation Chapter Three

3.6.2 Hardware Design


The hardware design consists of designing a RF front end for receiver and transmitter
subsystems. These are discussed in the following.

3.6.2.1 Receiver RF Front End


In this section all the analog operations are performed to get the signal ready for the next
section in which the signal is transformed into digital. The RF front end constitutes of the
following components:
i. Antenna
For reception of radio frequency an antenna is used.

Antenna

I L

Pre-selector Phase
Filter Transformer
Q R

VFO

Figure 3.5 Receiver RF front end block diagram

ii. Pre-Selector Filter


A simple bandpass filter is used to select the frequency band required for reception of
radio signals. A tank circuit is used with a variable inductor along with a variable
capacitor to change the frequency range. The circuit designed is shown in Figure 3.6.
The center frequency of the circuit is determined by the following equation:

19
Design and Implementation Chapter Three

(Eqn. 3.1)

Figure 3.6 Pre-selector filter


iii. Mixer
An external analog mixer is required to down convert the signal frequency into low
frequencies depending on the sound card sampling rate.
Simple double diode mixer is used as shown in Figure 3.7 Mixer. The mixer has two
inputs. One of which is taken from the RF input signal, the other is taken from a
variable frequency oscillator.

Figure 3.7 Mixer


The mixer produces two frequency components. One of which with frequency equals
the sum of the two input signals frequencies and the other is the difference. Only the
lower frequency signal will be passed through the anti-aliasing filter. This is what is
referred to as frequency down conversion. It is described by the following equations:
(Eqn. 3.2)
(Eqn. 3.3)

(Eqn. 3.4)
And after filtering:

20
Design and Implementation Chapter Three

(Eqn. 3.5)

iv. Variable Frequency Oscillator

The variable frequency oscillator used is the laboratory signal generator. The signal
generator can generate a signal from dc up to a frequency of 1GHz. It can also
generate a signal of different forms. That is square, triangular and sinusoidal wave.
The signal form used here is the sinusoidal.
v. Phase Transformer

To make the 90° phase shift, the circuit shown in


Figure 3.8 was used. The circuit must be tuned to a specific frequency in order to
give the required phase shift. Therefore a potentiometer is used. By varying the
potentiometer the phase shift is varied until phase shift required is obtained at a
particular frequency. The capacitor and potentiometer values depend on the following
equation.

(Eqn. 3.6)

where f is the VFO frequency.

Q I

Figure 3.8 Phase transformer

21
Design and Implementation Chapter Three

3.6.2.2 Transmitter RF Front End


The transmitter RF front end contains most of the components used for the receiver part.
The signal is taken from the speaker jack that consists of the left and right components.
The transmitter RF front end (shown in Figure 3.9 Transmitter RF front end block
diagram) consists of the following:

Antenna

VCO

Figure 3.9 Transmitter RF front end block diagram

i. Mixer
Here the mixer is used to up convert the signal from baseband to higher frequencies
suitable for transmission as described by (Eqn. 3.2)
(Eqn. 3.3)

ii. Variable Frequency Oscillator


The variable frequency oscillator is also needed here to generate the carrier. The
device used here is the laboratory function generator.
iii. Antenna:
The same reception antenna is used for the transmitter.

22
Design and Implementation Chapter Three

3.6.3 Software Design


When talking about the software part of the system, there are three important issues to be
determined; how the software program will interact with the sound card for audio I/O, the
programming language and approach. Both are discussed in the following two sections.

3.6.3.1 Sound Card Access


To develop a real time audio application it is necessary to obtain the audio data directly
from the sound card using the operating system (OS). Since there are different types of
operating systems and much hardware each with their own driver, there are a wide
variety of possibilities to access the audio data. These access points are commonly called
application programming interface (API).The software access to the sound card is guided
by varies application programming interfaces (API), which differs within and from
platform to platform.
For a cross platform application, one that works on different platforms or OS, it is
necessary to be able to use all these different API‟s. In this case an additional API which
is a fully software orientated API is used to create one access point to interface a number
of different system API‟s such as: CLAM, OpenAL,pureData, STK and PortAudio. Most
of these APIs are licensed under the General Public License (GPL) (see Appendix A) so
they are free to use within these regulations.
The API used for software design is Port Audio Library because it causes the smallest
overhead for this application and is easy to use.
PortAudio is a free, audio I/O library, it is meant to have cross platform abilities
(including Windows, Macintosh (8, 9, X), Unix (OSS), SGI, and BeOS) and a very easy
to use API for recording and/or playing. It is a simple API and does not bring any
functions like mixing, filtering or analyzing.
PortAudio Library was chosen among other API's that are used for audio data because it
causes the smallest overhead for this application and is easy to use.

23
Design and Implementation Chapter Three

Figure 3.10 Typical computer architecture

3.6.3.2 The Object-Oriented Programming (OOP)


The fundamental idea behind object-oriented languages is to combine into a single unit
both data and the functions that operate on that data. Such a unit is called an object. OOP
is not primarily concerned with the details of program operation. Instead, it deals with the
overall organization of the
Next are the major elements of object-oriented that are important to this project:
Objects: When you approach a programming problem in an object-oriented
language, you no longer ask how the problem will be divided into functions, but
how it will be divided into objects. The match between programming objects and
real-world objects is the happy result of combining data and functions: The
resulting objects offer a revolution in program design. No such close match
between programming constructs and the items being modeled exists in a
procedural language.

24
Design and Implementation Chapter Three

Classes: In OOP we say that objects are members of classes. A class is thus a
description of a number of similar objects. An object is often called an “instance”
of a class.
Reusability: Once a class has been written, created, and debugged, it can be
distributed to other programmers for use in their own programs.

3.6.3.3 C++ Programming Language


C++ is derived from the C language. The most important elements added to C to create
C++ are classes and objects, therefore it has been chosen as the programming language.
For this project it is preferred over the C language. C++ is also chosen over java although
it is also OOP language, because of the need for fast processing since real time signal is
applied, and the virtual machine that is used by Java or C# and its.NET environment
could be speed waster.

3.7 System Implementation


After designing the system hardware and software to fulfill the project objectives, the
system was implemented.

3.7.1 Hardware
The receiver RF front end components described in section Receiver RF Front End3.6.2.1
were connected together. The complete circuit schematic is shown in Figure 3.11. Also,
the Transmitter RF front end components described in section 3.6.2.2 were also
connected. The complete circuit schematic is shown in Figure 3.12. Since the two
circuits have components in common, the two circuits were combined into one circuit
that can operate as a transmitter or receiver, depending on the user requirements. The
created circuit is shown in Figure 3.13.

3.7.2 Software
The system software could was divided into five modules, each module represent a C++
class that consist of its own data and functions, the functions operate on these data to

25
Design and Implementation Chapter Three

perform a specific task. These classes are Audio class, Modulation class, Demodulation
class, Filter class and GUI class. See Appendix C for description about the classes found
in the header files.

Figure 3.11 Receiver RF front end circuit schematic

Figure 3.12 Transmitter RF front end circuit schematic

26
Design and Implementation Chapter Three

Figure 3.13 A photo of the system RF front end

3.7.2.1 Audio Class


This class is responsible for Audio I/O operations using PortAudio library functions as
illustrated by Figure 3.14 Audio stream flow Using PortAudio is quiet easy; the software
comes as pure code, therefore it was compiled as a dynamic link library (DLL). After
this, the header was included and the DLL was linked to the project. The two channels
(stereo) function of the soundcard was used. The first recorded block is the right channel
the next one the left and so on. In order to run PortAudio, the following steps were taken:
i. PortAudio was initialized
ii. The stream was managed.
iii. The manipulation of the audio data was performed depending on the mode
that the user selects.
iv. The stream was then terminated terminate.

27
Design and Implementation Chapter Three

The main part of initialization is to set the basic parameters for the audio, like input
channels, output channels, data type, sample rate, frames per buffer then the callback
function performs the audio manipulation. However, PortAudio delivers the audio data
always in blocks of sizes which must be chosen as minimum as possible.
The actual signal processing is done in the manipulation part. The task that has to be
performed by callback function is to call the sub-routines that will do the desired
processing by the user.

Figure 3.14 Audio stream flow

3.7.2.2 Modulation Class


An instance of this class (object) is created when the user choose to start a modulation
process. Then the carrier frequency, modulation type and the sampling rate values are
collected from the GUI and sent to the constructor to be initialized. According to the
modulation type that is chosen by the user, one of the following modulation techniques is
applied: AM, DSB, ASK, FM,BFSK or BPSK. For each type there is a function that
implements operations that needed by specific modulation type. Since C++ is a high level
language, the represention of the operations which are just mathmetical equatuions are
streightforward.
One important issue that was taken into account, is phase incrementation control, such
that it does not exceed the float number range. Since π) is same as ,
whenever the angle becomes more than 2π, 2π is subtracted from the angle. This ensures
that the phase incrementation is always within float range.
Another thing that should be considered, is that the values of the samples are represented
by float values in the range from -1 to 1, hence whenever the output of the modulation is
expected to be more than 1 or less than -1, it should be normalized to 1.

28
Design and Implementation Chapter Three

3.7.2.3 Demodulation Class


An instance of this class (object) is created when the user choose to start a demodulation
process. Then the filter bandwidth, modulation type and the sampling rate values are
collected from the GUI, this is used to initialize the data of the created object. According
to the modulation type that is chosen by the user, one of the following demodulation
techniques is applied: AM, ASK, FM, BFSK or BPSK. For each type there is a function
that implements operations that needed by specific demodulation type. Since C++ is a
high level language, the represention of the operations which are just mathmetical
equatuions are striegt forward.
Using I/Q represenation of the modulated signal, any signal can be demodulated, for an
AM , ASK , and BPSK it is just . For FM and BFSK quadricorrelator method is
used.
For digital demodulation, multi levels decision is used to determine the received digital
data if it is 0 or 1.

3.7.2.4 Filter Class


An instance of this class (object) is created when the user choose to start a filtering
process. Then the filter bandwidth, filter type and the sampling rate values are collected
from the GUI, which is used to initialize the data of the created object. According to the
filter type LPF, HPF, BPF or BRF will be performed for the samples. The filter chosen to
be implemented is FIR with Blackman window. Blackman filters are excruciatingly slow,
because they must use convolution but they have high selectivity.
When using filter in a real-time environment there is one problem occurring. The
resulting signal is going to contain a periodic clipping noise. This is because of the nature
of the filters and their tendency to settlement. To avoid this problem, the values of the
delay lines after every filtering are saved, so they can be used as the filter initialization of
the next block. With this, a smooth crossover from one to the next block is guaranteed
and the settlement takes only place during the first initialization of the filter, which is
negligible.

29
Design and Implementation Chapter Three

3.7.2.5 GUI Implementation


Through the GUI the user is able to select different modulation, demodulation and filter
types in addition to setting other parameters. Moreover, the GUI allows user to save and
play back signals to or from file, and display these signals as in oscilloscopes. User
Interface window made is shown in Figure 3.15.
The Two Important modes for the program are modulation and demodulation. When the
user checks the button Mod Enable on the window enters the requested values and then
presses the Start button, the program will run on the modulation mode. This process is
described by the flow chart shown Figure 3.16. On the other hand, when user checks
Demod Enable, the program will run on the demodulation mode as described by the flow
chart will in Figure 3.17.

Figure 3.15 GUI window

30
Design and Implementation Chapter Three

Figure 3.16 Modulation mode operations

31
Design and Implementation Chapter Three

Figure 3.17 Demodulation mode operations

32
4. Chapter Four

TESTING AND RESULTS

4.1 Introduction
As a consequence of using the spiral model for the system development, the design
procedure is carried out for each module separately. Then the modules were
implemented, tested, debugged and improved by adding more features. Any PC running
windows 98 SE or better has Microsoft Visual C++ 2008 Express with PortAudio V 19
audio library installed in it can be used. Since the software has not been integrated yet, a
special test code for each module was written. The hardware was also tested separately
for performing its function.

4.2 Software Modules Testing


The testing was performed by passing a sine wave signal from the function generator to
the microphone jack. The signal parameters were changed depending on the test
performed.

4.2.1 Audio Class Testing


The main purpose of this test is to examine the sound card behavior with signals. This
was done by varying the signal frequency at constant amplitude then varying the
amplitude at constant frequency. The results obtained are shown in Table 4.1 Table 4.2.
It was realized that, and during varying the frequency at constant input voltage, the signal
starts to exhibit distortion at frequency of 15 KHz. This is due to the built in anti-aliasing
filter in the sound card. On the other hand, when the input voltage was varied at constant
frequency, it was realized that signal exhibits clipping at voltages greater than 0.3Vp-p
such that the output voltage stays constant at 2.5Vp-p. This is because the sound card has

1
Testing and Results Chapter Four

the limitation that maximum input voltage that can be applied to it is 0.3Vp-p and
maximum output voltage is 3Vp-p. It worth noting here that the results were taken at
speakers volume of 100%, that‟s why the output results are amplified by almost ten times
the input voltage.

Table 4.1 Sound card output at 0.3Vp-p input

Frequency (kHz) Output voltage (Vp-p)


1 1.3
5 2.2
10 3
15 2.8
20 2.4
25 1
30 0

Table 4.2 Sound card output at input of 12 KHz

Input voltage (Vp-p) Output voltage (Vp-p)


0 0.02
0.1 2.2
0.15 2.5
0.2 2.58
0.3 3
0.4 2.5
0.5 2.5
2.5 2.5

34
Testing and Results Chapter Four

Output (Vp-p)
3.5

2.5

1.5

0.5

0
1 5 10 15 20 25 30
Frequency (KHz)

Figure 4.1 Sound card output at input of constant amplitude

Output (Vp-p)
3.5

2.5

1.5

0.5

0
0 0.1 0.15 0.2 0.3 0.4 0.5 2.5 3 4
Input (Vp-p)

Figure 4.2 Sound card output at input of constant frequency

35
Testing and Results Chapter Four

4.2.2 Filter Class Testing


This test is used to examine the low pass filter designed. Table describes a filter of 10
KHz cutoff frequency behavior at different input signal frequencies.

Table 4.3 Lowpass filter of 10 KHz cutoff frequency behavior

Frequency (kHz) Amplitude (Vp-p)


0.5 3
1 3
2 3
4 3
5 3
6 3
10 3
10.5 2
10.8 0.5
11 0.1
11.5 0
15 0
20 0

Amplitude (Vp-p)
100%
90%
80%
70%
60%
50%
40%
30%
20%
10%
0%
0.5 1 2 4 5 6 10 10.5 10.8 11 11.5 15 20
Frequency (KHz)

Figure 4.3 Lowpass filter at 10 KHz cutoff frequency Bode plot

36
Testing and Results Chapter Four

4.2.3 Modulation Class


Here all modulation types implemented are tested. Note that the speakers output volume
was 100% and the function generator signal frequency was 1.9 KHz.

4.2.3.1 AM
Here the program modulates the incoming signal through the microphone jack and
outputs the result through the speakers jack. The message signal voltage used was 0.3Vp-
p. Then signal from the speakers jack was measured using an oscilloscope. The signal is
shown in Figure 4.4.

Figure 4.4 AM modulated signal


As shown in Figure 4.4, the AM modulation is perfect. And the message and AM signal
are in phase.

4.2.3.2 DSB
For DSB modulation, the program modulates the incoming signal through the
microphone jack and outputs the result through the speakers jack. The program also asks
for the modulation index required. This option is limited by the maximum output voltage
that the sound card can deliver, for example if the speakers volume is 100% and the
maximum modulated signal amplitude is greater than 0.3 the output signal will suffer

37
Testing and Results Chapter Four

from clipping. Therefore it is important to carefully calculate the modulation index and to
put under consideration the speakers volume. By performing a DSB modulation on the
message signal, the output was displayed on the oscilloscope and it is shown in Figure
4.5.

Figure 4.5 DSB modulated signal


Figure 4.5 illustrates DSB modulation with a modulation index of 40%. The results were
taken at speakers volume of 100% and carrier amplitude=0.5Vp-p.

4.2.3.3 ASK
For ASK modulation, the ASK option must be chosen. The program modulates the
incoming signal through the microphone jack, which was 0.2Vp-p, and outputs the result
through the speakers jack. The signal from the Speakers jack was is displayed on an
oscilloscope. The signal is shown in Figure 4.6.
As shown in Figure 4.6, we realize that the ASK signal in not smooth. This is because the
sound card D/A converter cannot represent a smooth square signal, because the sound
card has a limited bandwidth, while a perfect square wave would require infinite (or at
least very large) bandwidth.

38
Testing and Results Chapter Four

Figure 4.6 ASK modulated signal

4.2.3.4 FM
Here the incoming signal is FM modulated. The results is then taken from the speakers
jack and displayed on the oscilloscope. The results are shown in Figure 4.7.

Figure 4.7 FM modulated signal

39
Testing and Results Chapter Four

From Figure 4.7, the FM modulated signal is perfect; having the frequency of the carrier
varies in accordance with the message signal amplitude. The results were taken with
input signal voltage of 0.2Vp-p.

4.2.3.5 BFSK
Here then program will BFSK modulate the incoming signal. The results were pictured as
they were displayed on its screen. The results are shown in Figure 4.8.

Figure 4.8 BFSK modulated signal


From Figure 4.8, we can realize that the frequency is high during the logic one and low
during the logic zero.

4.2.3.6 BPSK
For BPSK, the program performs the modulation. Figure 4.9 describes the BPSK
modulation. The signal is inverted at inversion points from positive to negative and from
positive to negative. The results were for a message signal of 0.2Vp-p and speakers
output volume of 100%.

40
Testing and Results Chapter Four

Figure 4.9 BPSK modulated signal

4.2.4 Demodulation Class


The testing was performed by passing the earlier generated modulated signals to the
microphone jack of another PC with the program installed in it. The demodulated signal
was measured from the new PC speakers jack. The signal parameters were changed
depending on the test performed.

4.2.4.1 AM
For AM demodulation option, any AM signal that is passed to the microphone jack is
demodulated and the message signal is extracted from it. Figure 4.10 shows the AM
demodulation performed on the AM modulated signal that was previously generated in
section 4.2.3.1.

4.2.4.2 DSB
As in section 4.2.4.1, the DSB demodulation will take the generated DSB modulated
signal and demodulate it. Figure 4.11 shows the results of the demodulation operation
that is performed on the DSB modulated signal generated previously.

41
Testing and Results Chapter Four

4.2.4.3 ASK
Here the demodulation is also performed on the ASK signal that was generated
previously to have the output results are shown in Figure 4.6. We can realize that the
generated signal is not smooth. This is for the same reason mentioned in section 4.2.3.3.

Figure 4.10 AM demodulation

Figure 4.11 DSB demodulation

42
Testing and Results Chapter Four

4.2.4.4 FM
FM demodulation was performed on the generated FM signal that was generated in
section 4.2.3.4; the generated output is shown in Figure 4.13.

Figure 4.12 ASK demodulation

Figure 4.13 FM demodulation

43
Testing and Results Chapter Four

4.2.4.5 BFSK
Here too the BFSK demodulation was tested on the BFSK signal generated previously in
section 4.2.3.5. The generated output is shown in Figure 4.14.

Figure 4.14 BFSK demodulation

4.2.4.6 BPSK
As done previously, the BPSK demodulation is performed on the signal generated in
section 4.2.3.6 is used to test the demodulator. The results are shown in Figure 4.15.

Figure 4.15 BPSK demodulation

44
Testing and Results Chapter Four

4.3 Hardware Testing


The RF front end circuit (shown in Figure 3.13) operation was tested for reception. HF
dipole antenna and the function generator. A free licensed program that performs
spectrum analyzing was used. The function generator frequency was changed until a
radio signal was received at 0.95475MHz. The variable resistors, capacitor and inductor
were varied for maximum signal reception. The results obtained from the program are
shown in Figure 4.16.

Figure 4.16 Received signal using RF front end

45
5. Chapter Five

CONCLUSION

5.1 Project Preview


The project has met its deign considerations and requirements and has successfully
implemented many of the software defined radio features. These features include the
ability to change the filtering parameter, tuning frequency and modulation/demodulation
scheme.
On the other hand, further research and developments for the software implementation of
the radio functionality and the RF frond end is still required. For the current
implementation, further work is needed software modules integration and testing the
overall system behavior.

5.2 Future Work


For future work many features can be added to the system. These features include:
Matched filter must be implemented in order to increase the SNR.
Reading and writing the signal to and from the file feature should be added.
The software defined radio needs to be migrated to other platforms. At present the
software is only available for Windows platform.
Making it multi terminal, so it could read the signal from USB or serial port other
than sound card.
Control the RF front end using the software. This is also a major area where work
is to be done, i.e. adding software modules that responsible for controlling the
hardware and designing the hardware in order to make that possible.
Including more blocks of the digital transmitter and receiver, that shown in Figure
2.1, like encryption and decryption, to be implemented on software,

1
Conclusion Chapter Five

A web based software defined radio.


Some other modern techniques that to be applied to software defined radio, such
as Artificial Neural Networks which will provide a number of fascinating features
such as automatic modulation recognition.
Looking even beyond software defined radio, software defined radio technology
is an enabler for Cognitive Radio (CR). Whereas software defined radio
represents the implementation of a radio in software, cognitive radio represents a
model-based representation for a radio, one which allows a radio to further
configure itself to meet application needs and demands which utilizes the artificial
intelligence algorithms.
It is important to note here almost all of these feature are to be performed in software,
therefore higher flexibility and lower cost are always achievable.

47
6. REFERENCES
[1] “What is Software Defined Radio” The Wireless Innovation Forum and IEEE
p1900.1 Group [online]. Available:
http://www.wirelessinnovation.org/introduction_to_sdr, accessed in Jan 14, 2012.
[2] “Software Defined Radio” Wikipedia [online].
Available: http://en.wikipedia.org/wiki/Software-defined_radio, accessed in Dec
21, 2011.
[3] RJ Lackey and DW Upmal, "Speakeasy: The Military Software Radio," IEEE
Communications Magazine, May 1995
[4] "Earth station" , Federal Standard 1037C, General Services Administration, 1996
[5] P. G. Cook,W. Bonser, “Architectural Overview of the SPEAKeasy System”,
IEEE Communications Magazine, April 1999
[6] Z. Salcic, C. F. Mecklenbrauker, “Software Radio - Architectural Requirements,
Research and Development Challenges”, The 8th International Conference on
Communication Systems, Volume 2, November 2002
[7] Peter B. Kenington, RF Baseband Techniques for Software Defined Radio.
London: Artech House, 2005.
[8] P. Johnson, "New Research Lab Leads to Unique Radio Receiver," by space
systems technology group, garland division May 1985, Vol. 5, No. 4, pp 6-7.
Available: http://chordite.com/team.pdf
[9] P. Hoeher and H. Lang, "Coded-8PSK modem for fixed and mobile satellite
services based on DSP," in Proc. First Int. Workshop on Digital Signal Processing
Techniques Applied to Space Communications, ESA/ ESTEC, Noordwijk,
Netherlands, Nov. 1988; ESA WPP-006, Jan. 1990, pp. 117-123.
[10] “JTRS” [online] Available: http://jpeojtrs.mil/Pages/about.aspx. Accessed in Apr
9, 2012
[11] “GNU Radio” [online]. Available:
http://gnuradio.org/redmine/projects/gnuradio/wiki. Accessed in Apr 9,2012
[12] “HPSDR” [online]. Available: http://openhpsdr.org/. Accessed in Apr 11, 2012.

1
[13] “Fun Cube Dongle” [online]. Available:
http://www.funcubedongle.com/?page_id=2.Accessed in Mar 29,2012
[14] “SoftRock” [online]. Available: http://softrocksdr.wikispaces.com/Software.
Accessed in Mar 30, 2012.

49
A. APPENDIX A: GNU License

PortAudio is free to use software where even the source code is free and users are
allowed to change the code. To ensure that it is used in the way the primary developer
wanted it, it is published under the “The GNU General Public License (GNU GPL or
simply GPL) is a widely used free software license, originally written by Richard
Stallman for the GNU project. It is the license used by the Linux kernel. The GPL is the
most popular and well-known example of the type of strong copy left license that requires
derived works to be available under the same copy left. Under this philosophy, the GPL
is said to grant the recipients of a computer program the rights of the free software
definition and uses copy left to ensure the freedoms are preserved, even when the work is
changed or added to. This is in distinction to permissive free software licensees, of which
the BSD licenses are the standard examples.
The GNU Lesser General Public License (LGPL) is a modified, more permissive, version
of the GPL, intended for some software libraries. There is also a GNU Free
Documentation License, which was originally intended for use with documentation for
GNU software, but has also been adopted for other uses, such as the Wikipedia project.”
[http://en.wikipedia.org/wiki/GNU_General_Public_License]

A-1
B. APPENDIX B: Audio.cpp

B-1
B-2
B-3
B-4
B-5
B-6
B-7
C. APPENDIX C: Software Modules

C.1 Audio.h

C-1
C-2
C.2 Modulation.h

C-3
C.3 Demodulation.h

C-4
C.4 Filter.h

C-5

You might also like

pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy