Curriculum

Academics

Undergraduate Program

Computer
EE.20017

This course allows students to learn and practice basic programming tools (e.g., Emacs, GCC, GDB, Git, and UNIX commands) in a Linux programming environment. It serves as a companion course to EE209, offering essential knowledge to successfully complete the programming assignments.

Recommend

Prerequisite

Circuit
EE.30003

This goal of this course is to understand the basic principles of digital logic circuit, and the fundamental concepts, components and operations of digital system.

Recommend

Prerequisite

The objective of this course is to understand the basic principles and hardware structures of computer systems including personal computers and workstations, and to learn how to design computers. This course covers data representation, CPU organization, instruction classification, language processing of assemblers and compilers, pipelining for performance enhancement, memory hierarchy, cache memory, and IO peripheral devices. In addition, high-performance computer systems are to be introduced.

Communication
EE.30021

This course is a brief introduction to random processes. Topics include Basic operating principles and circuits of AM, FM, and SSB modulation/demodulation, PLLs, mixers, and ADCs; Noise performance of communication systems; Introduction to digital communication techniques such as BPSK, FSK and QAM keying/detections. Issues related to multiple access techniques are covered. (Prerequisite: EE202)

Computer ∣ Communication
EE.30023

This course will help the students learn how to design and implement computer networks, and their protocols, services, and applications. This course will include both principles and practice, but more importantly, is designed to let the students have hands-on experience. Most of the topics will be connected to the Internet, i.e., how the Internet works.

This lecture provides a short introduction to essential topics in information theory for communication engineers. The topics include 1) measures of information and source, 2) Data compression, 3) Channel Capacity and Error Control Codes, 4) a very short description of rate-distortion theory.

Introduces the principles, algorithms and application of machine learning from the point of modeling and prediction; learning problem representation.

This course will cover concepts such as representation, over-fitting, regularization, and generalization; topics such as clustering, classification, regression, recommendation problems, probabilistic modeling, reinforcement learning, and various on-line algorithms. It will also introduce a support vector machine and deep learning.

Recommend

Prerequisite