Upload
others
View
3
Download
0
Embed Size (px)
Citation preview
A MIMO Modeling Framework Using a Software Defined Radio Paradigm
Angel Camelo VasquezAdvisor: Dr. Domingo Rodriguez
University of Puerto RicoUniversity of Puerto RicoJuly 2012
Edited by D. Rodriguez – Sept. 2012
OutlineOutline
• MotivationMotivation• Objectives• Background• Background• MethodologyD i• Design
• Implementation• Testing• Conclusions
MotivationMotivation
Message Message
Sender ReceiverChannel
MotivationMotivation
• Multiple Input Multiple Output (MIMO): useMultiple Input Multiple Output (MIMO): use of multiple antennas, both, at transmitter and receiver.– MIMO is a trending technology into the signal communications realm.
– Actual implementations with 3GPP, WiMAX, WiFi.
• Software Defined Radio– Radio implemented by means of software.
• Time‐frequency Representations
ObjectivesObjectives
• Design implement and test a framework forDesign, implement, and test a framework for MIMO channel monitoring and simulation– Redesign the existent SIgnal Representation– Redesign the existent SIgnal RepresentationLABoratory application software named SIRLAB.
– Implement time‐frequency RepresentationsImplement time frequency Representations.
– Provide a MIMO simulation.
BackgroundBackground
• CommunicationsCommunications
• Software Defined Radio
i i• Time‐Frequency Representations
CommunicationsCommunications
• CommunicationsCommunications– Send multiple symbols with different antennas.
The signal is modified by the channel and possibly– The signal is modified by the channel and possibly reflected by several scatterers.
– Multiple copies of the signal may be received and– Multiple copies of the signal may be received and processed.
Communications ChannelCommunications ChannelAnten
nas
Anten
nas
nsmission
ecep
tion A
Tra R
Software Defined RadioSoftware Defined Radio
• Like traditional radioLike traditional radio– It does what a typical radio does.
• Unlike traditional radio• Unlike traditional radio– Several components have been implemented computationallycomputationally.
• Software can perform jobs that before were d b h ddone by hardware.
• Extending the software towards the antenna
Traditional RadioTraditional Radio
Source Coding
Channel Coding
Baseband Modulation
Upconverter
lCh
anne
Source Decoding
Channel Decoding
Baseband Demodulation
Downconverter
Software Hardware
Traditional Radio Paradigm
Software Defined RadioSoftware Defined Radio
Source Coding
Channel Coding
Baseband Modulation
Upconverter
lCh
anne
Source Decoding
Channel Decoding
Baseband Demodulation
Downconverter
Software Hardware
SDR Paradigm
Software Defined Radio ToolsSoftware Defined Radio Tools
• SoRa by MicrosoftSoRa, by Microsoft
• Simulink, by MATLAB
G di O S• GNUradio, as an Open Source
Software Defined Radio ImplementationSoftware Defined Radio Implementation
FPGA
Personal ComputerASIC
Software Defined Radio lImplementation
USB
Personal Computer
Time‐Frequency RepresentationsTime Frequency Representations
• Techniques and methodsTechniques and methods
• Signals whose characteristics are changing with timewith time
• Allow to extract additional information
• High computational requirements
Time‐Frequency RepresentationsTime Frequency Representations
NO DISCRIMINATIONDISCRIMINATION
DISCRIMINATION
©AIP Lab UPRM
MethodologyMethodology
• Available tools– SIRLAB, by the AIP Lab– GNUradio, as an Open Source
• Preliminary Results• Preliminary Results– SIRLAB Parallelization– User Integration: webSIRLAB, SIRDroid
• Framework for MIMO channel monitoring and simulation– Designg– Implementation– Testing
SIRLAB on a NetSig Node ProcessorSIRLAB on a NetSig Node Processor
©AIP Lab UPRM
SIRLABSIRLAB: A Tool for Research and Education
SIRLAB SI l R t ti LAB t• SIRLAB: SIgnal Representation LABoratory
• Open‐Source Framework Developed at the AIP Lab
R h T l f Ti F A l i• Research Tool for Time‐Frequency Analysis
• Educational Tool for Signal Representation
• Based on OpenCV and FFTW Software Libraries
• Uses R. Tolimieri’s Theory on Time‐Freq. Repres.
• Input Format: WAV File
• Language Written: C/C++
• Speed Up Time: 20+ Times Faster than Most Known MATLAB‐based Time‐Frequency Tools
• Known Time Frequency (T F) Toolboxes• Known Time‐Frequency (T‐F) Toolboxes– http://tftb.nongnu.org (TFTB)
• Developed by Rice Univ.: http://dsp rice edu/ &Developed by Rice Univ.: http://dsp.rice.edu/ & CN Recherche Scientifique: http://www.cnrs.fr/
– http://espace.library.uq.edu.au/view/UQ:211321• T‐F Signal Analysis (TFSA) Matlab Toolbox v.5.5• Developed by Univ of Queensland: uq edu au/• Developed by Univ. of Queensland: uq.edu.au/
– http://www.mathworks.com/matlabcentral• DiscreteTFDs – T‐F Signal Analysis Software• Developed by Jeff O'Neill: [email protected]
SIRLAB: Running on a NetSig Node IW
ring
Network
WITD
ro
1
2
3
4
5
1
2
3
4
5
NetSig: on a Linux‐based node
Mon
itor
oid
1
2
3
4
5
1
2
3
4
5processor with WSN access
Spectrog
rk
11
2
3
4
5
1
2
3
4
5
gram Displays
AB Fram
ewor
00.02 0.04 0.06 0.08 0.1 0.12 0.14 0.16 0.18 0.2
−0.25
−0.2
−0.15
−0.1
−0.05
0
0.05
0.1
0.15
0.2
0.25
Time (Secs)
Am
pli
tud
e
1
2
3
4
5
1
2
3
4
5
SIRLA
SIRLAB ArchitectureSIRLAB Architecture
©AIP Lab UPRM
SIRLAB Frame ExampleSIRLAB Frame Example
©AIP Lab UPRM
SIRLAB’s Standard Output
Sea waves…
Frame Magnification: Time
Frame Magnification: Frequency
Frame Magnification: Time & Frequency
SIRLAB ChallengesSIRLAB Challenges
• Parallelization Into Multiple CoresParallelization Into Multiple Cores
• Improve the User ExperienceMi i I t ll ti Eff t– Minimum Installation Effort
– User Friendly Interaction
• Client – Server Architecture
• Integration with Mobile Devices
webSIRLABwebSIRLAB
• Web Interface for SIRLABWeb Interface for SIRLAB
• Client Server Architecture
l ibl S l i• Flexible Parameter Selection
• Easy Signal Submission for Processing at Server
• Friendly Display for Results
• Minimum Installation EffortMinimum Installation Effort– Modern html5 web browser is required.
Research contribution
webSIRLAB’s User InterfacewebSIRLAB s User Interface
Research contribution
webSIRLABwebSIRLAB
Research contribution
webSIRLAB ArchitecturewebSIRLAB Architecture
User
Web Browser
HTML5
webSIRLAB
PHP
Javascript
1 2
Research contribution
SIRDroidSIRDroid
• Android interface for SIRLABAndroid interface for SIRLAB– Android is the leading mobile operating system
• Client Server Architecture• Client Server Architecture
• Can record data on real environment and get results in a few seconds
Research contribution
SIRDroidSIRDroid
Research contribution
SIRDroid ArchitectureSIRDroid Architecture
Client Server
Mic
AndroidMobile Device
1
2
3
4
Research contribution
GNUradioGNUradio
• Open Source SoftwareOpen Source Software
• Provides a library of signal processing blocks
S d d i i l• Sends and receives signals
• Audio, USRP, Network (TCP, UDP), File, Wav File
• USRP makes GNUradio wireless capablep
• Software Defined Radio
GNUradio ArchitectureGNUradio Architecture
Python SWIG C++ Module C++ BlockPython SWIG C++ Module C++ Block
GNUradioCompanion
*SWIG: Simplified Wrapper Interface Generator
GNUradio CompanionGNUradio Companion
• Graphical Interface to GNUradioGraphical Interface to GNUradio
• Iconic Programming Language
f l di• Powerful Editor– Place the Required Blocks
– Configure Each Block
– Connect them Together
– Build and Run
GNUradio CompanionGNUradio Companion
GNUradio ChallengesGNUradio Challenges
• Build Time‐frequency RepresentationsBuild Time frequency Representations– Short Time Fourier Transform
Ambiguity Function– Ambiguity Function
– Wigner Distribution
Ch i Willi Di t ib ti– Choi – Williams Distribution
DESIGNThe theory behind the solution
DESIGN
Design OutlineDesign Outline
• Time‐Frequency RepresentationsTime Frequency Representations– Algorithms, complexity and parallelization
• MIMO Channel• MIMO Channel– MIMO System Modeling
– Proposed Channel Modeling• Modulation‐Convolution‐Delay
D l C l ti M d l ti• Delay‐Convolution‐Modulation
Time‐Frequency RepresentationsTime Frequency Representations
Short Time FourierShort Time Fourier Transform
Ambiguity Function
Wigner Distribution
Choi‐Williams Distribution
Short Time Fourier TransformShort Time Fourier Transform
Research contribution
Computational Time Complexity:
Ambiguity FunctionAmbiguity Function
Research contribution
Computational Time Complexity:
Wigner DistributionWigner Distribution
Research contribution
Computational Time Complexity:
Choi‐Williams DistributionChoi Williams Distribution
Research contributionComputational Time Complexity:
MIMO SystemMIMO System
The channel is seen as aThe channel is seen as a linear system
H then is decomposed
Finally
The symbols are preprocessed at the t itt d t d t th itransmitter and post‐processed at the receiver
MIMO SystemMIMO System
• The channel must be estimatedThe channel must be estimated– Several mechanisms have been proposed and implementedimplemented
– Subject to errors
• The Shannon capacity increases linearly with• The Shannon capacity increases linearly with every pair of antennas at the transmitter and receiverreceiver.
Formulated MIMO ChannelFormulated MIMO Channel
• A “MxN” MIMO channel can be seen as a collection of C=MxN Single Input Single Output (SISO) Channels.
• Every SISO Channel is then modeled like a channel with 3 t3 operators:– Delay: The signal has a latency while is propagating– Convolution: The medium acts like a FIR FilterConvolution: The medium acts like a FIR Filter– Modulation: The medium inserts a Doppler shift
• The order is important, this yields two approximations: – Delay‐Convolution‐Modulation (DCM)– Modulation‐Convolution‐Delay (MCD)
Research contribution
DCMDCM
OperatorsOperators
CompositionComposition
MIMOResearch contribution
MCDMCD
OperatorsOperators
CompositionComposition
MIMOResearch contribution
IMPLEMENTATIONThe code behind the solution
IMPLEMENTATION
Time Frequency RepresentationsTime Frequency Representations
• The main implementation is done in C++The main implementation is done in C++
• Object oriented programming
h i f i i l• Each time‐frequency representation is a class– Implements from gr_block interface
– The method general_work is implemented
– A constructor sets the initial properties of each time frequency representation
Time‐Frequency RepresentationsTime Frequency Representations
Block InterfaceInterface
Constructor, destructor and general work aregeneral_work are implemented
ParallelizationParallelization
• Each running block is a thread into the wholeEach running block is a thread into the whole system
• Our time‐frequency representation blocks areOur time frequency representation blocks are executed in parallel as an option– Data parallelismp– OpenMP was selected for parallelization
• API for automatic parallelization, include compiler di i lib i d f idirectives, libraries and functions
• Cross compatibility, great support and meets the project requirement
MIMO ChannelMIMO Channel
• Development of each block MCD and DCMDevelopment of each block, MCD and DCM internally with GNUradio Companion
• Iconic Programming• Iconic Programming
MCD and DCM BlocksMCD and DCM Blocks
Research contribution
4x4 MIMO4x4 MIMO
Research contribution
TESTINGThe results behind the solution
TESTING
Acoustic Channel SurveillanceAcoustic Channel Surveillance
• The STFT can be used to monitor theThe STFT can be used to monitor the environment – Species characterization in bioacoustics– Species characterization in bioacoustics
– Sonar
Acoustic Channel SurveillanceAcoustic Channel Surveillance
Research contribution
Channel SurveillanceChannel Surveillance
Research contribution
Ambiguity FunctionAmbiguity Function
• Used for SonarsUsed for Sonars
• Design of Signals
i f l d l Shif• Detection of Delay and Doppler Shifts
• Testing With Well Known Signals– Sine
– Square
SineSine
Research contribution
SineSine
Research contribution
SquareSquare
Research contribution
2x2 MIMO2x2 MIMO
Research contribution
2x2 MIMO2x2 MIMO
Research contribution
Parallelization MetricsParallelization Metrics
• Dell 1520 • Samsung RC512Dell 1520
• Intel Core2 T5850– 2.16 GHz
Samsung RC512
• Intel Core i7 2630QM– 2.0 ‐> 2.9 GHz2.16 GHz
– 4MB Cache
– 2 Cores, 2 Threads
2.0 2.9 GHz
– 6MB Cache
– 4Cores, 8 Threads
• 4GB@667MHz
• Linux 2.32
• 6GB@1333MHz
• Linux 3.2
Dell 1520Dell 1520100000
10000
1000
illisecon
ds
STFT
Ambfunc
100
M Ambfunc
Wigner
1
10
1256 512 1024 2048 4096 8192
Size
Research contribution
Dell 1520Dell 1520
3500
4000
STFT
3500
4000
AmbFunc
1000
1500
2000
2500
3000
3500
Milisecond
s
1 Thread
2 Threads 1000
1500
2000
2500
3000
3500
Milisecond
s
1 Thread
2 Threads
0
500
1000
256 1024 4096
SIze
0
500
1000
256 1024 4096
SIze
25000
30000
Wigner
5000
10000
15000
20000
Milisecond
s
1 Thread
2 Threads
0256 1024 4096
SIze Research contribution
Samsung RC512Samsung RC512100000
Time‐Frequency Representations
10000
1000
Millisecon
ds
STFT
Ambfunc
10
100
M Wigner
ChoiWill
1
10
256 512 1024 2048 4096 8192
Research contribution
256 512 1024 2048 4096 8192
Size
Samsung RC512Samsung RC512
1400
1600
STFT2000
AmbFunc
400
600
800
1000
1200
1400
Milisecond
s 1 Thread
2 Threads
4 Threads
8 Th d 500
1000
1500
Milisecond
s 1 Thread
2 Threads
4 Threads
8 Th d
0
200
400
256 2048
SIze
8 Threads
16 Threads0
500
256 2048
SIze
8 Threads
16 Threads
10000
12000
Wigner
15000
20000
s
ChoiWill
2000
4000
6000
8000
Milisecond
s 1 Thread
2 Threads
4 Threads
8 Threads0
5000
10000
Milisecond
s 1 Thread
2 Threads
4 Threads
8 Threads
16 Threads
Research contribution0
2000
256 2048
SIze
16 Threads0256 2048
SIze
16 Threads
Speed UpsSpeed Ups
5
Speed Up STFT5
Speed Up AmbFunc
2
3
4
2
3
4
0
1
1 Thread 2 Threads 4 Threads 8 Threads 16 Threads
512 1024 2048 4096 8192
0
1
1 Thread 2 Threads 4 Threads 8 Threads 16 Threads
512 1024 2048 4096 8192
3
3.5
4
Speed Up Wigner
3.5
4
4.5
Speed Up ChoiWill
1
1.5
2
2.5
3
1
1.5
2
2.5
3
0
0.5
1 Thread 2 Threads 4 Threads 8 Threads 16 Threads
512 1024 2048 4096 8192
0
0.5
1 Thread 2 Threads 4 Threads 8 Threads 16 Threads
512 1024 2048 4096 8192
ConclusionsConclusions
• A MIMO Modeling framework was presentedA MIMO Modeling framework was presented using a software defined radio paradigm into GNUradio.
• Several time‐frequency blocks were designed into GNUradio using the proposed framework.
• A testing workflow was defined using the models and algorithms developed.
• Several works requiring a time‐frequency representation can take advantage of the developed framework.
ContributionsContributions
• MIMO Channel Modelingg• SIRLAB Web Integration• SIRLAB Android Integration• STFT, AmbFunc, Wigner, Choi‐Williams SDR ImplementationMIMO Ch l SDR I l t ti• MIMO Channel SDR Implementation
• Applications: Channel Surveillance• Publications:• Publications:
– IEEE LASCAS– IBERSENSOR
Future workFuture work
• Channel EstimationChannel Estimation
• Develop Input Signals With the Framework
S G i• DSP, FPGA Integration
• NetSig Integration