Presenter Kaushik Chowdhury Next GE neration NE tworks and SYS tems Lab Authors Benjamin Drozdenko Ramanathan Subramanian Kaushik Chowdhury Miriam Leeser 2 AIM OF THE PROJECT ID: 661415
Download Presentation The PPT/PDF document "Implementing a MATLAB-based Self-Configu..." is the property of its rightful owner. Permission is granted to download and print the materials on this web site for personal, non-commercial use only, and to display it on your personal computer provided you do not modify the materials and that you retain all copyright notices contained in the materials. By downloading content from our website, you accept the terms of this agreement.
Slide1
Implementing a MATLAB-based Self-Configurable Software Defined Radio Transceiver
Presenter:
Kaushik Chowdhury
Next
GE
neration NEtworks and SYStems Lab
Authors:
Benjamin Drozdenko
Ramanathan Subramanian
Kaushik Chowdhury
Miriam LeeserSlide2
2
AIM OF THE PROJECT
Build a fully reconfigurable software-defined radio.
Cognitive ability
: Tune dynamically RF center frequency, transmission power, modulation, and algorithm parameters
to adapt to changing environment. Requirement to ensure consistent inter-frame transceive time. Slide3
3
CHALLENGES ADDRESSED
How to
ensure
clocked operations in a system with no interrupts?
How to ensure that the transceive function adheres very closely to expected inter-frame time? How to ensure that the system blocks run between calls to transceive complete within less than one inter-frame time, while maintaining high levels of accuracy? Slide4
4
SYSTEM ARCHITECTURESlide5
5
DETAILED SYSTEM DESIGN
1.1
DTx
waits for a fixed interval of time before
sensing the channel state.1.2
DTx either backs off or transmits depending on whether the channel state is busy or not.
1.3 DTx contends for channel access.
1. Energy Detection
3: Receive ACK Frame
2: Transmit DATA Frame
Designated Transmitter (DTx)
1.1
Wait
DIFS
1.2
Detect Energy
1.3
MAC Contend
Entry: Prepare 802.11b DATA frame
(256 USRP frames)
During: Prepare new USRP frame
(64 bits ≡ 1408 samples)
Exit: Wait SIFS
3
.1
Search SYNC
3.2
Read Header
3
.1
3.2
Machine 1
2 Slide6
6
DETAILED SYSTEM DESIGN
1. Receive DATA Frame
3: Wait DIFS
2: Transmit ACK Frame
Designated Receiver (DRx)
Entry: Prepare 802.11b ACK frame
(4 USRP frames)
During: Prepare new USRP frame
(64 bits
≡ 1408 samples
)
Exit: Wait SIFS
1.1
Search SYNC
1
.2
Read Header
1.3
Read Payload
1.1
1
.2
1.3
Machine 2
DRx waits for DCF Inter-frame Space (DIFS) duration before re-entering DRx State 1
2 Slide7
7
Param
Block
Description
Value/ Range
Fixed/ Tunable
R
i
, R
d
USRP
USRP Interpolation / Decimation Factor
500
Fixed
L
f
USRP
USRP Frame Length
64 bits
Fixed
L
p
Frame
#Octets per 802.11b Frame Payload
2012 octets
Fixed
K
RFFE
AGC Step Size
0.1 – 10
Tunable
N
RFFE
AGC Update Period
128 –1408
Tunable
Δf
RFFE
Frequency Resolution
1 – 16 Hz
Tunable
SYSTEM BLOCKS
RFFE
R
adio
F
requency
F
ront
E
nd: Automatic Gain Control (AGC),
Frequency Offset Estimation & Compensation
, and
Raised Cosine Receive Filter
(RCRF)
PD
P
reamble
D
etection
DDD
D
espreading
,
D
emodulation, and
D
escrambling
SMS
RCTF
S
crambling,
M
odulation,
and
S
preading
R
aised
C
osine
T
ransmit
F
ilter
PARAMETER CHOICESSlide8
8
SYNC DETECTION
1.) Compare Received Signal (complex
samples)
to Expected
Spread Preamble (real samples)
Despread and demodulate to get real bits
2.) Compare Demodulated Signal to Expected Scrambled Preamble (real symbols)
−Window1
+Window1
Descrambled Next USRP
Frame
Expected SFD Sequence
−
Window2
+Window2
3.) Compare Descrambled 2
nd
USRP Frame to
Expected SFD Sequence (real bits
)Slide9
9
EXPERIMENTAL SETUPSlide10
10
Translate MATLAB to C?
Why port/translate MATLAB to C?
Accelerate our MATLAB algorithms that need operate in real-time.
Challenges in manual translation of MATLAB to C
Hard to keep functional and implementation specs separateCoding errors
Not time-efficient or cost-effectiveSlide11
11
MATLAB to C using
MEX
Advantages of
Automatic Translation
of MATLAB to C using MATLAB Coder:Spend more time improving algorithmsTest quickly and more thoroughlyComprehensive Code Generation Report
Saves a lot of time and moneyImplementation Considerations:Data TypeMemory AllocationBuilt-in function’s support for code generation
MATLAB CODEmycode.m file
MATLAB CODER
.c file
MEX function
mycode_mex.mexa64
What is MEX?
MATLAB code, generated into C code, compiled into an executable.Slide12
12
MATLAB to C using
MEX
Advantages of
Automatic Translation
of MATLAB to C using MATLAB Coder:Spend more time improving algorithmsTest quickly and more thoroughlyComprehensive Code Generation Report
Saves a lot of time and moneyImplementation Considerations:Data TypeMemory AllocationBuilt-in function’s support for code generation
MATLAB CODEmycode.m file
MATLAB CODER
.c file
MEX function
mycode_mex.mexa64
What is MEX?
MATLAB code, generated into C code, compiled into an executable.Slide13
13
MATLAB to C using
MEX
Advantages of
Automatic Translation
of MATLAB to C using MATLAB Coder:Spend more time improving algorithmsTest quickly and more thoroughlyComprehensive Code Generation Report
Saves a lot of time and moneyImplementation Considerations:Data TypeMemory AllocationBuilt-in function’s support for code generation
MATLAB CODE
mycode.m file
MATLAB CODER
.c file
MEX function
mycode_mex.mexa64
What is MEX?
MATLAB code, generated into C code, compiled into an executable.Slide14
14
MATLAB to C using
MEX
Advantages of
Automatic Translation
of MATLAB to C using MATLAB Coder:Spend more time improving algorithmsTest quickly and more thoroughlyComprehensive Code Generation Report
Saves a lot of time and moneyImplementation Considerations:Data TypeMemory AllocationBuilt-in function’s support for code generation
MATLAB CODE
mycode.m file
MATLAB CODER
.c file
MEX function
mycode_mex.mexa64
What is MEX?
MATLAB code, generated into C code, compiled into an executable.Slide15
15
EXPERIMENTS AND RESULTS
Closer adherence to fixed inter-frame time
Tighter standard deviation using MEXSlide16
16
REFERENCES & ACKNOWLEDGMENTS
1 I. F.
Akyildiz
, S.
Mohanty, M. C.
Vuran, and V. Won-Yeol, “NeXt generation/dynamic spectrum access/cognitive radio wireless networks: A survey,” Computer Networks, vol. 500, no. 13, Sept. 2006.
2 Ettus Research, Inc. [Online]. “USRP N200/N210 Networked Series.” 3 IEEE Std 802.11-2009, “Part 11: Wireless LAN Medium Access Control (MAC) and Physical Layer (PHY) Specifications.”4 MathWorks Documentation. [Online] . “Communications System Toolbox Documentation.” “USRP Support Package from Communications System Toolbox.” 5 Travis Collins, “Multi-Node Software Defined Radio
TestBed
”, NEWSDR 2014.
6 J.
Mitola
III and G. Q. Maguire, Jr., "Cognitive radio: making software radios more personal," IEEE Personal Communications Magazine, vol. 6, nr. 4, pp. 13–18, Aug. 1999.
M
.
Luise
and R.
Reggiannini
, "Carrier frequency recovery in all-digital modems for burst-mode transmissions",
IEEE Trans.
Commun
.
, vol. 43, no. 3, pp.1169 -1178 1995.
This
work is supported by MathWorks under the Development-Collaboration Research Grant A#: 1-945815398. We would like to thank Mike McLernon and
Ethem
Sozer
for their continued support on this project.