About   Announcements   Lectures   Labs   Project  

Wireless Communication Systems

Lab 1: 1x1 OFDM transmission

Introduction 

In this lab, you will learn how to impelement a simple OFDM layer chain. You don't need to implement everything from scratch. Instead, there is a very easy-to-follow example code provided by WARPLab (https://warpproject.org/trac/wiki/WARPLab/Examples/OFDM). You only need to read and understand this example code, and then port it to the USRP platform. Through code review and porting, you will know how to generate time-domain signals, transmit signals over the air using USRP, record the received signals, and offline decode the signals and analyze the performance. 

You can download the example code for USRP here: lab1_example.zip (10/05 17:05 updated)

Default parameters: the same with WARPLab example code.

Files to submit

Figures to show

See details in lab1_info.pdf.

Demo

File Submission

Grading

Lab 2: 1x1 OFDM Tx in UHD

Introduction 

In this lab, you will learn how to generate time-domain samples in UHD. The main task is similar to Lab1. The only difference is that now you need to read the frequency-domain samples into your UHD single_tx_f.cpp file, convert them to time-domain samples, and transmit them to the receiver. The receiver still receives and record time-domain samples for Matlab offline decoding.

Gnuradio does not support FFT/IFFT library by default. Hence, you will need to install FFT library (FFTW3) before implementing this lab. Please see the slide to check how to install the FFT library. Here is an example code teaching you how to call the fft library: fft_sample.cpp. You might need to do some small modification since what you need is IFFT, instead of FFT.

Default parameters: the same with Lab1.

Files to submit

Figures to show in demo

See details in lab2_info.pdf.

Demo

File Submission

Grading

Lab 3: 2x2 MIMO OFDM Transmission

Introduction 

In this lab, you will learn how to build a MIMO node using USRPs and perform MIMO transmissions. This lab extends the OFDM chain implemented in Lab 1 to a 2x2 system. The 2-antenna transmitter sends two data streams simultaneously. The 2-antenna receiver dumps the raw received signals, which are then decoded using the zero-forcing equalizer offline in Matlab. Similar to Lab 1, you can read the 2x2 example code provided by WARPLab (https://warpproject.org/trac/wiki/WARPLab/Examples/MIMO_OFDM), and port it to the USRP platform.

You can download the example code for USRP here: lab3_example.zip lab3_cpp.zip

Default parameters: the same with Lab1.

Files to submit

Figures to show in demo

See details in lab3_info.pdf.

Demo

File Submission

Grading