Presentation is loading. Please wait.

Presentation is loading. Please wait.

Implementing a MATLAB-based Self-Configurable Software Defined Radio Transceiver Presenter: Kaushik Chowdhury Next GEneration NEtworks and SYStems Lab.

Similar presentations


Presentation on theme: "Implementing a MATLAB-based Self-Configurable Software Defined Radio Transceiver Presenter: Kaushik Chowdhury Next GEneration NEtworks and SYStems Lab."— Presentation transcript:

1 Implementing a MATLAB-based Self-Configurable Software Defined Radio Transceiver Presenter: Kaushik Chowdhury Next GEneration NEtworks and SYStems Lab Authors: Benjamin Drozdenko Ramanathan Subramanian Kaushik Chowdhury Miriam Leeser

2 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.

3 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?

4 4 SYSTEM ARCHITECTURE

5 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

6 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

7 7 ParamBlockDescription Value/ Range Fixed/ Tunable R i, R d USRP USRP Interpolation / Decimation Factor 500Fixed LfLf USRPUSRP Frame Length64 bitsFixed LpLp Frame #Octets per 802.11b Frame Payload 2012 octets Fixed KRFFEAGC Step Size0.1 – 10Tunable NRFFEAGC Update Period 128 – 1408 Tunable ΔfRFFE Frequency Resolution 1 – 16 Hz Tunable SYSTEM BLOCKS RFFERadio Frequency Front End: Automatic Gain Control (AGC), Frequency Offset Estimation & Compensation, and Raised Cosine Receive Filter (RCRF) PDPreamble Detection DDDDespreading, Demodulation, and Descrambling SMS RCTF Scrambling, Modulation, and Spreading Raised Cosine Transmit Filter PARAMETER CHOICES

8 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)

9 9 EXPERIMENTAL SETUP

10 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 1.Hard to keep functional and implementation specs separate 2.Coding errors 3.Not time-efficient or cost-effective

11 11 MATLAB to C using MEX Advantages of Automatic Translation of MATLAB to C using MATLAB Coder: 1.Spend more time improving algorithms 2.Test quickly and more thoroughly Comprehensive Code Generation Report 3.Saves a lot of time and money Implementation Considerations: 1.Data Type 2.Memory Allocation 3.Built-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.

12 12 MATLAB to C using MEX Advantages of Automatic Translation of MATLAB to C using MATLAB Coder: 1.Spend more time improving algorithms 2.Test quickly and more thoroughly Comprehensive Code Generation Report 3.Saves a lot of time and money Implementation Considerations: 1.Data Type 2.Memory Allocation 3.Built-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.

13 13 MATLAB to C using MEX Advantages of Automatic Translation of MATLAB to C using MATLAB Coder: 1.Spend more time improving algorithms 2.Test quickly and more thoroughly Comprehensive Code Generation Report 3.Saves a lot of time and money Implementation Considerations: 1.Data Type 2.Memory Allocation 3.Built-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.

14 14 MATLAB to C using MEX Advantages of Automatic Translation of MATLAB to C using MATLAB Coder: 1.Spend more time improving algorithms 2.Test quickly and more thoroughly Comprehensive Code Generation Report 3.Saves a lot of time and money Implementation Considerations: 1.Data Type 2.Memory Allocation 3.Built-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.

15 15 EXPERIMENTS AND RESULTS Closer adherence to fixed inter-frame time Tighter standard deviation using MEX

16 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.” 4MathWorks Documentation. [Online]. “Communications System Toolbox Documentation.” “USRP Support Package from Communications System Toolbox.” 5Travis Collins, “Multi-Node Software Defined Radio TestBed”, NEWSDR 2014. 6J. 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. 7M. 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.


Download ppt "Implementing a MATLAB-based Self-Configurable Software Defined Radio Transceiver Presenter: Kaushik Chowdhury Next GEneration NEtworks and SYStems Lab."

Similar presentations


Ads by Google