This repository provides instructional material for digital communications. The material is used for EL-GY 6013: Digital Communications*, a graduate level class at NYU Tandon.
Anyone is free to use and copy this material (at their own risk!). But, please cite the material if you use the material in your own class.
The class assumes graduate probability (stochastic processes) and
undergraduate signals and systems.
Familiarity with MATLAB or equivalent language is preferred.
All the files in this repository are hosted on github. If you are not familiar with github, follow our instructions for accessing the files.
You can also access run the MATLAB Live Scripts from MATLAB online:
Any feedback is welcome. If you find errors, have ideas for improvements, or want to voice any other thoughts, create an issue and we will try to get to it. Even better, fork the repository, make the changes yourself and create a pull request and we will try to merge it in. See the excellent instructions from the former TA Ish Jain.
I am starting to add software-defined radio (SDR) labs. The labs are based on the simple, but powerful ADALM-Pluto boards. The labs are being migrated from a separate SDR github repo.
We will add to this section as the class progresses.
- Introduction
- Course Admin [pdf] [Powerpoint]
- Matlab and SDR Lab: Getting started and transmitting and receiving complex baseband samples
- Unit 1. Passband modulation
- Lecture notes [pdf] [Powerpoint]
- In-Class exercises: [Matlab] [Soln]
- Problems [pdf] [Latex]
- Matlab and SDR Lab 1.1: Complex exponentials, frequency and carrier offset estimation
- Matlab and SDR Lab 1.2: Up- and down-conversion
- Unit 2. Symbol mapping and transmit filtering
- Lecture notes [pdf] [Powerpoint]
- In-Class exercises: [Matlab] [Soln]
- Problems [pdf] [Latex]
- MATLAB and SDR Lab: Symbol Mapping and TX Filter design
- Unit 3. Receive filtering
- Lecture notes [pdf] [Powerpoint]
- In-Class exercises: [Matlab] [Soln]
- Problems [pdf] [Latex]
- MATLAB exercise: Building a 5G channel sounder
- SDR Lab: Building a channel sounder
- Unit 4. Signal space theory
- Lecture notes [pdf] [Powerpoint]
- Problems [pdf] [Latex]
- Unit 5. Random process review
- Lecture notes [pdf] [Powerpoint]
- Problems [pdf] [Latex]
- MATLAB exercise: Simulating Rayleigh fading
- Unit 6. Symbol demodulation and error analysis
- Lecture notes [pdf] [Powerpoint]
- In-Class exercises: [Matlab] [Soln]
- Problems [pdf] [Latex]
- MATLAB exercise: QAM Demodulation
- Unit 7. Synchronization and match filtering
- Lecture notes [pdf] [Powerpoint]
- In-Class exercises: [Matlab] [Soln]
- Problems [pdf] [Latex]
- SDR Lab: Gain control and building a simple AGC.
- MATLAB and SDR lab: 802.11 packet detection and synchronization
- Unit 8. Equalization
- Lecture notes [pdf] [Powerpoint]
- Problems [pdf] [Latex]
- MATLAB and SDR lab: 802.11 channel estimation and equalization
- Unit 9. Linear codes
- Unit 10. Convolutional codes
- Unit 11. Information theory
- Lecture notes [pdf] [Powerpoint]
- Problems: [pdf] [Latex]