Master Course Description for EE-420 (ABET sheet)

Title: Design in Communications

Credits: 4

UW Course Catalog Description

Coordinator: Payman Arabshahi, Associate Professor, Electrical and Computer Engineering

Goals: This is the capstone course for the communications concentration. Small student teams apply knowledge of fundamental principles of digital communications towards in-depth open-ended system design and integration projects. They design, build, verify, and validate multiple communication system modules and an end-to-end system using GNU Radio and a software defined radio platform. The work involves systems engineering, project planning and management, budgeting, written and oral technical communication, as well as analysis and consideration of risk and liability, ethics, regulatory compliance, societal impacts, environmental impacts, and cost and economics.

Learning Objectives: At the end of this course, students will be able to:

  1. Simulate performance of assigned digital communication schemes in additive white Gaussian noise environments.
  2. Compare the bit error rates obtained from simulation to analytical results derived in EE-417.
  3. Determine the advantages of error correcting codes on the performance of digital communication systems.
  4. Complete design projects of digital communication systems given desired data rates, power constraints, and required error rate performance.
  5. Write detailed project reports commenting on approach and results obtained.
  6. Design, build, and test a communication system related to an emerging communication problem of interest, write a detailed report on it, and present to class.

Textbook: T. Collins, R. Getz, D. Pu, and A.M. Wyglinski, Software-Defined Radio for Engineers, Artech House, 2018. ISBN #: 978-1630814571.

Software Development Toolkit: GNU Radio, Link.

Programming Language: Python, Link.

Reference Texts:

  1. J. Proakis and M. Salehi, Digital Communications, 5th Ed., McGraw-Hill, 2007. ISBN #: 978-0072957167.
  2. R.G. Gallager, Principles of Digital Communication, Cambridge University Press, 2008. ISBN #: 978-0521879071.
  3. A. Leon-Garcia, Probability, Statistics, and Random Processes For Electrical Engineering, Pearson, 2008. ISBN #: 978-0131471221.
  4. System Engineering Fundamentals, Defense Acquisition University Press, 2001. ISBN #: 978-1537703466.
  5. C.S. Wasson, System Engineering Analysis, Design, and Development: Concepts, Principles, and Practices, Wiley, 2015. ISBN #: 978-1118442265.
  6. H.F. Hoffman, The Engineering Capstone Course: Fundamentals for Students and Instructors, Springer, 2014. ISBN #: 978-3319058962.

Prerequisites by Topic:

  1. Continuous time and discrete time signals and linear systems (EE-235, EE-341).
  2. Differential and integral calculus.
  3. Probability and random processes for communications and signal processing (EE-416).
  4. Principles of digital communication systems (EE-417).
  5. Programming experience.


The course begins with an introduction to Python and the GNU Radio Companion simulation framework.

The students then work on developing the four communication system modules below:

  1. Frequency offset measurement, differential binary phase shift keying, 802.11 WLAN observation.
  2. Differential quadrature phase shift keying, packetization, and frame synchronization.
  3. Matched filtering and duplex communications.
  4. Spectrum sensing using energy detection, cyclostationary detectors, carrier sense multiple access with collision avoidance.
These modules are then followed by an in-depth team-based final system design and integration project (proposed by students or assigned by faculty).

Course Structure: The class meets for two 110 minute sessions a week. For the most part, the students will work on lab projects under the supervision of the instructor. The initial 4 weeks of the course are devoted to development of core communication system modules and functionalities such as modulation, demodulation, and synchronization. After these concepts are established, the students will spend the rest of the quarter on an in-depth team-based final system design and integration project. If the project is proposed by students, each team will be asked to write a proposal detailing the scope of the final comprehensive project, the design approach(s), and the implementation and test plan. If the project is assigned by faculty, the scope and deliverables will be assigned, and students will propose design approach(s), and the implementation and test plan. In both cases student teams execute on the proposed plan, which will typically be subject to a number of performance requirements, constraints and tradeoffs; must consider a variety of engineering design standards; and should provide an analysis and consideration of risk and liability, ethics, regulatory compliance, societal impacts, environmental impacts, and cost and economics where applicable. At the end of the final project student teams deliver a full package of hardware, software, documentation, a final report, and a final presentation.

Computer Resources: Communication system modules and the final project can be carried out on any personal computer running Linux (native, dual-boot, or as a virtual machine), and equipped with USB 3.0 and/or Gigabit Ethernet.

Laboratory Resources: Sieg 118 is the ECE Department's Linux Instructional Laboratory and class sessions are conducted there. Computers in the lab have been equipped with two Gigabit Ethernet cards to allow both network access, and access by the software defined radio platform of choice, for use in this class.


  1. Communication system module projects 1 through 4: 30%
  2. Final project: 70%

ABET Student Outcome Coverage: This course addresses the following outcomes:

H = high relevance, M = medium relevance, L = low relevance to course.

(1) An ability to identify, formulate, and solve complex engineering problems by applying principles of engineering, science, and mathematics (H) The course builds upon analytical skills acquired in EE-416 and EE-417 and seeks to develop significant proficiency in hardware-in-the loop computational/software simulation methods. Engineering judgement is developed through the use of modeling/simulation techniques to validate results from theory. Open-ended problems in each module, and in the final design project, challenge the students to formulate solutions of their own. Students use open-source software tools (GNU Radio and Python) to implement and validate the assigned modules and the final project. The final project presents itself as a series of interconnected engineering problems. These engineering problems are not explicitly stated, but must be identified by the design team before they can be solved.

(2) An ability to apply engineering design to produce solutions that meet specified needs with consideration of public health, safety, and welfare, as well as global, cultural, social, environmental, and economic factors (M) The final project challenges the students to think in terms of "synthesis" as required for design, in contrast to the primarily "analysis" bent of most classroom pedagogy. Most design criteria require tradeoffs (e.g., system performance vs. implementation complexity/hardware cost vs. reliability) and some considerations of social, ethical, and environmental impacts. Engineering design is applied through use of open-source software tools (GNU Radio and Python) and in full consideration of safety issues and engineering standards. Discussion of design goals create awareness of current state-of-the-art and how standardization activities/bodies operate. The impact of design choices on performance specifications is prototypical of real-world engineering experiences.

(3) An ability to communicate effectively with a range of audiences (H) Communication system module labs and the final project as well as class presentations inculcate this important skill. Effectiveness in technical writing and presentation skills has a large impact on the final grade. Best practices of good written and oral communications (progress and final reports, documentation, presentations, posters) are covered in class. Emphasis in any such communication is placed upon clear descriptions of system design, build, and test steps, analysis of tradeoffs, results of verification and validation, illustrative block diagrams, industry acceptable schematic diagrams, a formal bill of materials with full component (software or hardware) sourcing, and proper discussions and references to engineering design standards.

(4) An ability to recognize ethical and professional responsibilities in engineering situations and make informed judgments, which must consider the impact of engineering solutions in global, economic, environmental, and societal contexts (L) Since communication networks form the underpinnings of the information age, ethical issues relating to the Internet (privacy, security, etc.) are discussed in class meetings. Professional responsibility topics are addressed in the context of wireless system design under FCC regulatory constraints. RF emission parameters will be taken into account in making a final choice among several design alternatives.

(5) An ability to function effectively on a team whose members together provide leadership, create a collaborative and inclusive environment, establish goals, plan tasks, and meet objectives (H) The entire class is structured into small teams to address state-of-the-art wireless technologies that form the basis for good collaborative communication system design. Best practices of multi-disciplinary team work, task allocation, work breakdown structure, and Scrum are covered. The students organize themselves and divide up the work among them.

(6) An ability to develop and conduct appropriate experimentation, analyze and interpret data, and use engineering judgment to draw conclusions (H) The entire class focuses on experimentation and analysis and interpretation of data and measurements. For instance, students determine the required sample sizes for statistically reliable Monte Carlo simulations. These techniques are used to solve real-world problems not amenable to analysis and as substitutes for physical experiments. Students also learn about various practical experimental aspects such as compensating for hardware limitations, oscillator drifts, frequency offsets, timing errors, proper sampling strategies, antenna matching, and buffering.

(7) An ability to acquire and apply new knowledge as needed, using appropriate learning strategies (M) The course emphasizes the rapidly evolving nature of wireless technologies. A variety of references will be required for the final report from web sources, journal articles, textbooks, and appropriate interviews. The course material distributed does not contain all of the information necessary to solve the design problem. Students must consult reference sources and inform themselves concerning many aspects of the design problem. This helps students realize that they need to be able to learn material on their own, and gives them some of the necessary skills.

Prepared By: Payman Arabshahi

Last Revised: 03/31/2019