Electrical Engineering Course Catalogs

EE200/CS111: Introduction to Computer Science (3 credits)

Introduction to the practices and principles of computer science and programming and their impact on and potential to change the world. algorithmic, problem-solving, and programming techniques using high-level languages (Java) and design techniques emphasizing abstraction, encapsulation, problem decomposition. Topics also consists of Intro to object oriented programing.

EE201: Fundamentals of Electrical Engineering (3 credits)

The course starts with the introduction about information-bearing electrical signals and systems; and then discuss about the creation, manipulation, transmission, and reception of those electrical signals. Some main topics include elementary signal theory, time- and frequency-domain analysis, sampling theorem, digital information theory, digital transmission of analog signals and error-correcting codes.
Prerequisite: CPS201. Corequisite: MATH201.

EE202: Introduction to Microelectronic Devices and Circuits (3 credits)

Hands-on, laboratory driven introduction to microelectronic devices, sensors, and integrated circuits. Student teams of 3-4 students/team compete in a design, assembly, testing, characterization and simulation of an electronic system. Projects include microelectronic devices, sensors, and basic analog and digital circuits. Classroom portion designed to answer/explain questions generated in laboratory about understanding operation of devices and sensors, and the performance of electronic circuits. Student evaluation based on project specification, prototyping, integration, testing, simulation and documentation.
Prerequisite: CPS201, EE201, PHYS110.

EE203: Introduction to Digital Systems (3 credits)

Design and implementation of combinational and sequential digital systems with special attention to digital computers. The use of computer-aided design tools, hardware description languages, and programmable logic chips to facilitate larger and higher performance designs will be stressed.
Prerequisite: EE200/CS111.

EE204: Introduction to Electromagnetic Fields (3 credits)

Fundamentals and application of transmission lines and electromagnetic fields and waves, antennas, field sensing, and signal transmission. Transmission line transients and digital signal transmission; transmission lines in sinusoidal steady state, impedance transformation, and impedance matching; electrostatics and magneto statics, including capacitance and inductance; electromagnetic waves in uniform media and their interaction with interfaces; antennas and antenna arrays.
Prerequisite: EE201, PHYS110, MATH110, MATH202, MATH203.

EE205: Introduction to Signals and Systems (3 credits)

The course will cover fundamentals of analog and digital signal processing. Similarities and differences of the two classes of signals and systems will be discussed in depth. More particularly, the course would provide knowledge about continuous and discrete signal representation and classification; system classification and response; transfer functions, Fourier series; Fourier, Laplace, and z transforms.
Prerequisite: EE201.

EE206: Laboratory I – Fundamentals (2 credits)

The first goal of this lab is to familiarize students with basic lab safety, circuit component and especially how to use essential instruments such as oscilloscopes, function generator and multi-meter. More importantly, it also allows students to actually visualize the principles and applications of important DC/AC circuits they have learnt theoretically. Each lab is designed with ready-to-use circuit hardware modules, which means that student can have in-depth practice on a variety of fundamental and useful DC/AC circuits/concepts without the need of spending tremendous amount of lab time on circuit wiring.
Prerequisite: EE201.

EE207: Laboratory II – Microelectronic Devices and Circuits (2 credits)

The students will examine the characteristics of analog devices such as diode, zener diode, transistor and Op-Amp IC in ready-to-use circuit hardware modules. They will also have hand-on experiment with the Design of circuits including rectifier, transistor amplifier and Op-Amp. By the end of the course, the student will have the practical skills that are needed for implementing projects in electronics or repairing electronic equipment.
Prerequisite: EE202.

EE208: Laboratory III – Digital Systems (2 credits)

Laboratory exercises and group design projects will reinforce the various design techniques discussed in EE203.
Prerequisite: EE203.

EE330/CS203: Intro to Computer Architecture (3 credits)

Computer structure, assembly language, instruction execution, addressing techniques, and digital representation of data. Computer system organization, logic design, microprogramming, cache and memory systems, and input/output interfaces.
Prerequisite: EE201, EE200/CS111.

EE331/CS205: Intro to Operating Systems (3 credits)

Basic concepts and principles of multiprogrammed operating systems. Processes, interprocess communication, CPU scheduling, mutual exclusion, deadlocks, memory management, I/O devices, file systems, protection mechanisms.
Prerequisite: EE200/CS111.

EE408: Introduction to Optimization (3 credits)

The course covers basic theories and methods for solving optimization problems, iterative techniques for unconstrained minimization as well as linear and nonlinear programming with engineering applications.
Prerequisite: MATH110, CPS201.

EE410: Digital Signal Processing (3 credits)

The first part of the course provides background (or a review) on the analysis and representation of discrete-time signal systems, including discrete-time convolution, difference equations, the z-transform, and the discrete-time Fourier transform. The second part of the course focuses on the implementation of recursive (infinite impulse response IIR) and non-recursive (finite impulse response FIR) digital filters. Their design to meet given requirements/specifications is also a main focus of the course.
Prerequisite: EE205

EE411: Embedded DSP Laboratory (3 credits)

By including structured labs and an open-ended design group project, the course will equip students with skills to implement and analyze real-time digital signal processing systems. Knowledge of digital signal processing theory and techniques will be consolidated and deepened via real-world observations and applications. Practical skills including the design and implementation of an open-ended real-time DSP system, teamwork, written and oral presentation are all emphasized/sharpened via a group final project assignment.
Prerequisite: EE410

EE413: Introduction to Image and Video Processing (3 credits)

The courses will reveal fundamental ‘behind-the-scene’ techniques in image and video processing. It will start with the basics of gray-scale image formation, compression, enhancement as well as segmentation. The techniques then are extended for color images and video ones. The later part of the course will introduce the concepts and application of more advanced image and video processing techniques such as techniques to remove undesired objects from images/videos or to apply sparse modeling and compressing sensing in image analysis and processing in medical applications.
Prerequisite: EE205, MATH110

EE414: Digital Audio and Acoustic Signal Processing (3 credits)

This course is designed to provide an introduction to the fundamental concepts, theory, and practice of digital audio and acoustic signal processing (DAASP). Digital audio concerns the process of transducing, digitizing, filtering, transforming, coding, storing, manipulating, transmitting, distributing, analyzing, and reproducing high quality music and other acoustic signals. With the advent of multimedia applications, digital audio signal processing has emerged as a field quite distinct from digital speech processing. The field is extremely broad spanning the disciplines of acoustics, hearing, signal processing, music, and psychophysics. This course will focus on those elements of the field with the greatest signal processing and acoustics content. The emphasis will be on providing students with an intuitive understanding of the principles behind DAASP algorithms. In addition, some experience with the most common algorithms will be provided via MATLAB exercises with real digital audio signals.
Prerequisite: EE205, MATH110, STA301

EE415: Digital Image and Multidimensional Signal Processing (3 credits)

The course will introduce students to the theory and methods of digital image and video sampling, denoising, coding, reconstruction, and analysis. Both linear methods (such as 2- and 3-D Fourier analysis) and non-linear methods (such as wavelet analysis) will be discussed. Key topics include segmentation, interpolation, registration, noise removal, edge enhancement, halftoning and inverse halftoning, deblurring, tomographic reconstruction, superresolution, compression, and feature extraction.
Prerequisite: EE205, MATH110, STA301

EE420/CS442: Introduction to Digital Communication Systems (3 credits)

The purpose of this course is to introduce the fundamentals of digital communication to undergraduate students. The course includes three broad topics: channel models, transmission and reception strategies, and resources design and performance analysis. These three topics are discussed in the context of three specific physical media: additive white Gaussian noise (AWGN) channel, telephone channel, and wireless channel.
Prerequisite: EE205, STA301.

EE421/CS443: Wireless Communication Systems (3 credits)

The purpose of this course is to introduce the principles behind the design of modern wireless communication systems to undergraduate students. The course covers the following topics: radio propagation characteristics and wireless channel models, transmission and reception strategies for wireless channels, multiple access techniques, and radio resource management.
Prerequisite: EE420, STA301.

EE424: Introduction to Information and Coding Theory

This course provides an introduction to mathematical measures of information and their connections to practical problems in communication, compression, and inference. Fundamental quantities, such as entropy, mutual information, channel capacity, rate-distortion function, Fisher information, and minimum mean-square estimation error will be defined and their inter-relations will be discussed.
Prerequisite: STA301.

EE425/CS441: Graphs & Networks (3 credits)

A mathematical examination of graphs and their application in the sciences. Families of graphs include social networks, small-world graphs, Internet graphs, planar graphs, well-shaped meshes, power-law graphs, and classic random graphs. Phenomena include connectivity, clustering, communication, ranking and iterative processes.

EE426: Linear Control Systems (3 credits)

Analysis and design of feedback control systems. Block diagram and signal flow graph system models. Servomechanism characteristics, steady-state errors, sensitivity to parameter variations and disturbance signals. Time domain performance specifications. Stability. Root locus, Nyquist, and Bode analysis; design of compensation circuits; closed loop frequency response determination. Introduction to time domain analysis and design.
Prerequisite: EE205.

EE427: Introduction to Robotics and Automation (3 credits)

Fundamental notions in robotics, basic configurations of manipulator arm design, coordinate transformations, control functions, and robot programming. Applications of artificial intelligence, machine vision, force/torque, touch and other sensory subsystems. Design for automatic assembly concepts, tools, and techniques. Application of automated and robotic assembly costs, benefits, and economic justification. Selected laboratory and programming assignments.
Prerequisite: EE205.

EE430: Computer Network Architecture (3 credits)

This course will introduce students to the fundamentals of computer networks. The layered architecture of the network protocol stack will be the focus of discussion. A variety of case studies will be drawn from the Internet, combined with practical programming exercises. At the end of the semester, students will well understand several concepts (including the Internet architecture, HTTP, DNS, P2P, Sockets, TCP/IP, BGP, Routing protocols, and wireless/mobile networking) and use them to answer questions such as how to achieve reliable/secure communications over unreliable/insecure channels, how to find a good path through a network, how to share network resources among competing entities, how to find an object in the network, and how to build network applications.
Prerequisite: EE331/CS205.

EE431: Advanced Computer Architecture (3 credits)

This course covers topics on advanced computer architecture, and is appropriate for both advanced undergraduates and graduate students. Building on introductory classes which showed how a basic computer functions, this course examines techniques for improving computer performance and usability. Topics covered include virtual memory, pipelining, caches (memory hierarchies), and advanced storage systems.
Prerequisite: EE330/CS203, EE200/CS111.

EE432: Introduction to Embedded Systems (3 credits)

An introduction to hardware/software codesign of embedded computer systems. Structured programming techniques for high and low level programs. Hardware interfacing strategies for sensors, actuators, and displays. Detailed study of Motorola 68HC11 and 68HC12 microcomputers as applied to embedded system development. Hardware and simulation laboratory exercises with 68HC11 and 68HC12 development boards. Major design project.

Prerequisite: EE202, EE203, EE204, EE205, EE330/CS203, PHYS110, STA301, MATH203, MATH110.

EE433/CS440: Computer Networks (3 credits)

Networking and distributed systems. Network infrastructure support for distributed applications ranging from email to web browsing to electronic commerce. Principles underlying the design of our network infrastructure and the challenges that lie ahead. The socket API, security, naming network file systems, wireless networks, Internet routing, link layer protocols (such as Ethernet), and transport protocols (TCP). Hands-on programming assignments covering issues in distributed systems and networking.

EE434: Fault-Tolerant and Testable Computer Systems (3 credits)

To provide students with an understanding of fault tolerant computers, including both the theory of how to design and evaluate them and the practical knowledge of real fault tolerant systems. The main themes of this course are: technological reasons for faults, fault models, information redundancy, spatial redundancy, backward and forward error recovery, fault-tolerant hardware and software, modeling and analysis, testing, and design for test.
Prerequisite: EE203.

EE435: Performance and Reliability of Computer Networks (3 credits)

Methods for performance and reliability analysis of local area networks as well as wide area networks. Probabilistic analysis using Markov models, stochastic Petri nets, queuing networks, and hierarchical models. Statistical analysis of measured data and optimization of network structures.
Prerequisite: EE430, STA301

EE436: Computer Networks and Distributed Systems (3 credits)

This course provides a research survey of network architecture and protocols. Broadly speaking, we will survey a handful of "classical" research ideas and approaches. We will also explore the state of the art in select networking technologies, protocols and algorithms. We will delve a lot deeper into software defined networking, content distribution techniques, mobile networks, and infrastructures for supporting and delivering online services such as Facebook, Google, and Bing. In each of those protocols the course will place a particular emphasis on the implications of network management (troubleshooting), network security, traffic engineering, and differences between data centers and backbone networks implementations.

EE437: Synthesis & Verification of VLSI Systems (3 credits)

Algorithms and CAD tools for VLSI synthesis and design verification, logic synthesis, multi-level logic optimization, high-level synthesis, logic simulation, timing analysis, formal verification.
Prerequisite: EE330/CS203.

EE438: VLSI System Testing (3 credits)

This course will examine in depth the theory and practice of fault analysis, test generation, and design for testability for digital VLSI circuits and systems. Testing tools and systematic design-for-test (DFT) methodologies are necessary to handle design complexity, ensure reliable operation, and achieve short time-to-market. The topics to be covered in the course include: fault modeling; fault simulation; test generation algorithms; testability measures; design for testability and scan design; built-in self-test, delay testing; wafer-level burn-in and test; memory testing; system-on-a-chip test; test compression. Grading will be based on homework assignments, two in-class exams, and a term project, which may be either a research survey, testing of a chip from a previous class or research project that has been fabricated using MOSIS, or a software implementation of a test methodology. Students will get a chance to use commercial DFT tools such as EncounterTest from cadence, Fastscan from Mentor Graphics, and Tetramax from Synopsys.
Prerequisite: EE330/CS203.

EE439: CMOS VLSI Design Methodologies (3 credits)

Emphasis on full-custom chip design. Extensive use of CAD tools for IC design, simulation, and layout verification. Techniques for designing high-speed, low-power, and easily-testable circuits. Semester design project: Groups of four students design and simulate a simple custom IC using Mentor Graphics CAD tools. Teams and project scope are multidisciplinary; each team includes students with interests in several of the following areas: analog design, digital design, computer science, computer engineering, signal processing, biomedical engineering, electronics, photonics. A formal project proposal, a written project report, and a formal project presentation are also required. The chip design incorporates considerations such as cost, economic viability, environmental impact, ethical issues, manufacturability, and social and political impact.
Prerequisite: EE330/CS203 and EE441.

EE440: Fundamentals of Microelectronic Devices (3 credits)

Fundamentals of semiconductor physics and modeling (semiconductor doping technology, carrier concentrations, carrier transport by drift and diffusion, temperature effects, semiconductor device models). Principles of semiconductor device analysis (current-voltage and capacitance-voltage characteristics). Static and dynamic operation of semiconductor contacts, PN junction diodes, MOS capacitors, MOS field-effect transistors (MOSFETs), and bipolar-junction transistors (BJTs). SPICE models and parameter extraction.
Prerequisite: EE202.

EE441: Introduction to Electronics: Integrated Circuits (3 credits)

Analysis and design of electronic circuits in bipolar and MOS technologies, with emphasis on both large-signal and small-signal methods. Circuits for logic gates, latches, and memories. Single-stage and multistage amplifiers and op amps. Circuits with feedback, including stability and frequency response considerations. Analog and mixed analog/digital circuit applications. Extensive use of SPICE for circuit simulation.
Prerequisite: EE202.

EE442: Semiconductor Devices for Integrated Circuits (3 credits)

Basic semiconductor properties (energy-band structure, effective density of states, effective masses, carrier statistics, and carrier concentrations). Electron and hole behavior in semiconductors (generation, recombination, drift, diffusion, tunneling, and basic semiconductor equations). Current-voltage, capacitance-voltage, and static and dynamic models of PN Junctions, Schottky barriers, Metal/Semiconductor Contacts, Bipolar-Junction Transistors, MOS Capacitors, MOS-Gated Diodes, and MOS Field-Effect Transistors. SPICE models and model parameters.
Prerequisite: EE440.

EE443: Analog Integrated Circuits (3 credits)

Analysis and design of bipolar and CMOS analog integrated circuits. SPICE device models and circuit macromodels. Classical operational amplifier structures, current feedback amplifiers, and building blocks for analog signal processing, including operational transconductance amplifiers and current conveyors. Biasing issues, gain and bandwidth, compensation, and noise. Influence of technology and device structure on circuit performance. Extensive use of industry-standard CAD tools, such as Analog Workbench.
Prerequisite: EE442.

EE444: Integrated Circuit Engineering (3 credits)

Basic processing techniques and layout technology for integrated circuits. Photolithography, diffusion, oxidation, ion implantation, and metallization. Design, fabrication, and testing of integrated circuits.
Prerequisite: EE440 or EE441.

EE445: Digital Integrated Circuits (3 credits)

Analysis and design of digital integrated circuits. IC technology. Switching characteristics and power consumption in MOS devices, bipolar devices, and interconnects. Analysis of digital circuits implemented in NMOS, CMOS, TTL, ECL, and BiCMOS. Propagation delay modeling. Analysis of logic (inverters, gates) and memory (SRAM, DRAM) circuits. Influence of technology and device structure on performance and reliability of digital ICs. SPICE modeling.
Prerequisite: EE440 and EE441.

EE446: Analog Integrated Circuit Design (3 credits)

Design and layout of CMOS analog integrated circuits. Qualitative review of the theory of pn junctions, bipolar and MOS devices, and large and small signal models. Emphasis on MOS technology. Continuous time operational amplifiers. Frequency response, stability and compensation. Complex analog subsystems including phase-locked loops, A/D and D/A converters, switched capacitor simulation, layout, extraction, verification, and MATLAB modeling. Projects make extensive use of full custom VLSI CAD software.
Prerequisite: EE440 or EE441.

EE447: CAD for Mixed-Signal Circuits (3 credits)

The course focuses on various aspects of design automation for mixed-signal circuits. Circuit simulation methods including graph-based circuit representation, automated derivation and solving of nodal equations, and DC analysis, test automation approaches including test equipment, test generation, fault simulation, and built-in-self-test, and automated circuit synthesis including architecture generation, circuit synthesis, tack generation, placement and routing are the major topics.
Prerequisite: EE441.

EE391: Undergraduate Research/Independent Study I (3 credits)

Students will work with an academic supervisor to study some undergraduate research topics of their choices. Written report or paper are usually expected by the end of the course.
Prerequisites: having consent of academic advisor and being a junior/senior.

EE490: Internship (6 credits)

For seniors only. TTU faculty members together with representatives from companies in electrical engineering field will supervise undergraduate interns in their practical training at the companies. Consents of directors of internship programs at the intern companies are required before students can register for the course.
Prerequisites: having consent of academic advisor and being a senior.

EE491: Undergraduate Research/Independent Study II (4 credits)

For seniors only. Students will work with an academic supervisor to study some undergraduate research topics of their choices. Written report or paper are usually expected by the end of the course.
Prerequisites: having consent of academic advisor and being a senior.