This is a senior level undergraduate course that covers the fundamentals of analog and digital communication systems. Analog and digital modulation techniques are covered along with optimal receivers, concept of a matched filter, error rate and intersymbol interference. Appropriate mathematical backfround in Fourier transforms, probability and random variables are taught. The student is exposed to software and hardware designs.