
COURSES IN ELECTRICAL ENGINEERING AND COMPUTER SCIENCE
LOWER-DIVISION
NOTE: The undergraduate courses listed below are open only to students in The Henry Samueli School of Engineering. All other majors must petition for permission to enroll.
EECS10 Computational Methods in Electrical and Computer Engineering (4) F, W, Summer. An introduction to computers and structured programming. Binary Data Representation. Hands-on experience with a high-level structured programming language. Introduction to algorithm efficiency. Applications of structured programming in solving engineering problems. Prerequisite or corequisite: Mathematics 2A. Only one course from EECS10, EECS12, CEE10, ENGR10, and MAE10 may be taken for credit. Formerly ECE10. (Design units: 0)
EECS12 Introduction to Programming (4) W. An introduction to computers and programming. Python programming syntax/style, types. Numbers and sequences. Control flow. I/O and errors/exceptions. Function calling, parameter passing, formal arguments, return values. Variable scoping. Corequisite: Mathematics 2A. Only one course from EECS10, EECS12, CEE10, ENGR10, and MAE10 may be taken for credit. Formerly ECE12. (Design units: 0)
EECS20 Computer Systems and Programming in C (4) S, Summer. Introduction to computer systems. Data representation and operations. Simple logic design. Basic computer organization. Instruction set architecture and assembly language programming, Introduction to C. Functions and recursion. Data structures, pointers, and linked lists. Prerequisite: EECS12. Formerly ECE20. (Design units: 1)
EECS31 Introduction to Digital Systems (4) F, Summer. Digital representation of information. Specifications of combinational and sequential systems. Analysis and design of networks of gates and flip flops. Standard modules and their use. Introduction to algorithmic systems: datapath and control. Prerequisite: EECS10, MAE10, or CSE21/ICS 21. Same as CSE31. Formerly ECE31. (Design units: 2)
EECS31L Introduction to Digital Logic Laboratory (3) W. Introduction to common digital building blocks: gates, memory circuits, MSI components. Operating characteristics, specifications, and applications. Design of simple combinational and sequential digital systems (processors and state machines). Construction and debugging techniques using hardware description languages and CAD tools. Prerequisites: EECS31/CSE31; EECS10 or EECS12 or CSE22/ICS 22. Same as CSE31L. Formerly EECS31LB. (Design units: 3)
EECS40 Object-Oriented Systems and Programming (4) S, Summer. Primitive types and expressions. The class and method definition. Information hiding and encapsulation. Objects and reference. Overloading. Constructors. Inheritance basics. Programming with inheritance. Dynamic binding and polymorphism. Exception handling. An overview of streams and file input/ output. Prerequisite: EECS20. Formerly ECE40. (Design units: 2)
EECS70A Network Analysis I (4) W, S, Summer. Modeling and analysis of electronic networks. Basic network theorems. Sinusoidal steady state and transient analysis of RLC networks and the impedance concept. Corequisite: Mathematics 2J or 3D. Prerequisites: Physics 7D; EECS10, MAE10, or CSE21/ICS 21. Same as CSE70A. Formerly ECE70A. (Design units: 1)
EECS70B Network Analysis II (4) S, Summer. Laplace transforms, complex frequency, and the s-plane. Network functions and frequency response, including resonance. Bode plots. Two-port network characterization. Corequisite: EECS70LB. Prerequisites: EECS10, CEE10, or MAE10; EECS70A. Formerly ECE70B. (Design units: 1)
EECS70LB Networks Analysis II Laboratory (1) S. Laboratory to accompany EECS70B. Corequisite: EECS70B. Prerequisites: EECS10, CEE10, or MAE10; EECS70A. Formerly ECE70LB. (Design units: 1)
UPPER-DIVISION
EECS101 Introduction to Machine Vision (3) W. The use of digital computers for the analysis of visual scenes; image formation and sensing, color, segmentation, shape estimation, motion, stereo, pattern classification, computer architectures, applications. Computer experiments are used to illustrate fundamental principles. Prerequisite: EECS150A or consent of instructor. Formerly ECE136. (Design units: 2)
EECS104 Fundamentals of Computer Graphics (4) F. Instruction in the fundamental algorithms and data structures used in computer image generation and manipulation including: output primitives, linear transformations, windowing, hidden-line removal, and shading. Prerequisite: EECS40. Formerly ECE104. (Design units: 2)
EECS105 Fundamentals of Scientific Visualization (4) W. Introduces visualization techniques for various types of measured or computer-simulated data. Typical applications for these visualization techniques include the study of airflows around car bodies, medical data, and molecular structures. Prerequisite: EECS104 or consent of instructor. Formerly ECE105. (Design units: 2)
EECS106 Fundamentals of Computer-Aided Geometric Design (4) W. Interactive graphics techniques for defining and manipulating geometrical shapes used in computer animation, car body design, aircraft design, and architectural design. Prerequisite: EECS104 or consent of instructor. Formerly ECE106. (Design units: 2)
EECS107 Fundamentals of Digital Image Processing (4) S. Introduces theory and practice of digital image processing. Topics presented include two-dimensional signal processing theory, image acquisition, representation, elementary operations, enhancement, filtering, coding, compressing, restoration, and analysis, as well as image processing hardware. Prerequisite: EECS152A or consent of instructor. EECS107 and Computer Science 111 may not both be taken for credit. Formerly ECE107. (Design units: 2)
EECS111 System Software (4) F. Multiprogramming, interrupt, processes, kernel, parallelism, critical sections, deadlocks, communication, multiprocessing, multilevel memory management, binding, name management, file systems, protection, resource allocation, scheduling. Experience with concurrent programming, synchronization mechanisms, interprocess communication. Prerequisites: EECS112; ICS 23 or EECS114. Only one course from EECS111 and CSE104/Computer Science 143A may be taken for credit. Formerly ECE142. (Design units: 2)
EECS112 Organization of Digital Computers (4) W. Building blocks and organization of digital computers, the arithmetic, control, and memory units, and input/out devices and interfaces. Microprogramming and microprocessors. Prerequisite: EECS31L/CSE31L. Same as CSE132. Only one course from EECS112/CSE132, EECSH112/CSEH132, and Computer Science 152 may be taken for credit. Formerly ECE132. (Design units: 4)
EECS112L Organization of Digital Computers Laboratory (3) S. Companion laboratory to EECS112. Specification and implementation of a processor-based system using a hardware description language such as VHDL. Hands-on experience with design tools including simulation, synthesis, and evaluation using testbenches. Prerequisite: EECS112. Formerly ECE132L. (Design units: 3)
EECSH112 Honors Organization of Digital Computers (4) W. Building blocks and organization of digital computers, the arithmetic, control, and memory units, and input/out devices and interfaces, including advanced microarchitecture topics such as: pipelining, superscalar, multithreading, reconfigurable and microprocessor design. Prerequisite: EECS31L/CSE31L. Same as CSEH132. Only one course from EECSH112/CSEH132, EECS112/CSE132, and Computer Science 152 may be taken for credit. (Design units: 4)
EECS113 Microprocessor Interface Techniques (3) S. Concepts and techniques for using microprocessor-based systems to gather data and control peripheral devices. Relationship between microprocessor hardware and software, including input/output operations. Experience with a microprocessor system is provided. Functional requirements are realized through software and I/O hardware design. Prerequisite: EECS112L. Formerly ECE143. (Design units: 3)
EECS114 Engineering
Data Structures and Algorithms (4). Introduces abstract behavior of classic
data structures, alternative implementations, informal analysis of time and space
efficiency. Also introduces classic algorithms and efficient algorithm design techniques
(recursion, divide-and-conquer, branch-and-bound, dynamic programming). EECS114
and EECSH114 may not both be taken for credit. Formerly ECE144. (Design units: 2) EECSH114 Honors Engineering Data
Structures and Algorithms (4). Covers the same material as EECS114 but in greater
depth. Prerequisite: EECS40. EECSH114 and EECS114 may not both be taken for credit.
(Design units: 2)
EECS115 Introduction to VLSI (4) F. A first course in the design of Very Large Scale Integrated (VLSI) systems and chips. Review of CMOS VLSI technology. Analysis and synthesis of basic and complex CMOS gates. Introduction to CAD methodology and usage of CAD Tools. Prerequisite: EECS112/CSE132. Same as CSE151. Formerly ECE151. (Design units: 4)
EECS116 Introduction to Data Management (4) S. Introduction to the design of databases and the use of database management systems (DBMS) for applications. Topics include entity-relationship modeling for design, relational data model, relational algebra, relational design theory, and Structured Query Language (SQL) programming. Prerequisite: either ICS 52 or Informatics 43 with a grade of C or better (for ICS or Informatics majors); either ICS 23/ICS H23 or EECS114 with a grade of C or better (for Computer Engineering majors). Same as Computer Science 122A. Formerly ECE146. (Design units: 1)
EECS117 Parallel Computer Systems (3). General introduction to parallel computing focusing on parallel algorithms and architectures. Parallel models: Flynn's taxonomy, dataflow models. Parallel architectures: systolic arrays, hypercube architecture, shared memory machines, dataflow machines, reconfigurable architectures. Parallel algorithms appropriate to each machine type area also discussed. Prerequisites: EECS20 and EECS112. Formerly ECE137. (Design units: 1)
EECS118 Introduction to Knowledge Management for Software and Engineering (4). Introduction of basic concepts in knowledge engineering and software engineering and applications of these concepts for building intelligent engineering systems such as computer-aided circuit design and computer-aided manufacturing. Knowledge representation and reasoning, planning, modeling of engineering objects, declarative and automatic programming, maintenance, case studies. Prerequisite: EECS40 or equivalent. Formerly ECE148. (Design units: 2)
EECS123 Introduction to Real-Time Distributed Programming (4) W. Introduction to the techniques for programming applications involving timing-sensitive actions. Hands-on experiences with object-oriented programming styles. Timing requirements, timing specification, response times, deadlines, application programming interfaces to real-time operating systems and middleware, remote procedure call, and distributed objects. Prerequisites: EECS111, EECS112. Formerly ECE147. (Design units: 2)
EECS129A-B Computer Engineering Senior Design Project (2-2) F, W. Conception, planning, implementation, programming, testing of an approved project. Options include: parallel processing, VLSI design, microprocessor-based design, among others. Prerequisite: senior standing. In-progress grading. Formerly EECS129. (Design units: 2-2)
EECS140 Engineering Probability (4) F, S. Sets and set operations; nature of probability, sample spaces, fields of events, probability measures; conditional probability, independence, random variables, distribution functions, density functions, conditional distributions and densities; moments, characteristic functions, random sequences, independent and Markov sequences. Prerequisite: Mathematics 2D. Formerly ECE186. (Design units: 0)
EECS141A Communication Systems I (3) S. Introduction to analog communication systems including effects of noise. Modulation-demodulation for AM, DSB-SC, SSB, VSB, QAM, FM, PM, and PCM with application to radio, television, and telephony. Signal processing as applied to communication systems. Prerequisites: EECS150A and EECS140. Formerly EECS141. (Design units: 1)
EECS141B Communication Systems II (3). Signal space analysis. Optimum receivers for digital communication. Maximum a posteriori and maximum likelihood detection. Matched filter and correlation receiver. PAM, QAM, PSK, FSK and MSK and their performance. Introduction to equalization, synchronization, information theory, and error control codes. Prerequisite: EECS141A. (Design units: 1)
EECS144 Antenna Design for Wireless Communication Links (4). Analysis and synthesis of antennas and antenna arrays. Adaptive arrays and digital beam forming for advanced wireless links. Friis transmission formula. Wireless communication equations for cell-site and mobile antennas, interference, slow and fast fading in mobile communication. Prerequisite: EECS180 or consent of instructor. Formerly ECE134. (Design units: 0)
EECS145 Electrical Engineering Analysis (4) F. Vector calculus, complex functions, and linear algebra with applications to electrical engineering problems. Prerequisites: Mathematics 2J and 3D; EECS70B. EECS145 and Mathematics 114A may not both be taken for credit. Formerly ECE180. (Design units: 0)
EECS148 Introduction to Computer Networks (4) S. Network architectures, models, protocols, routing, flow control, and services. Queuing models for network performance analysis. Prerequisites: EECS40 or consent of instructor, EECS112 or consent of instructor, and EECS140 or Mathematics 67. Formerly ECE161. (Design units: 2)
EECS150A Continuous-Time Signals and Systems (4) W. Characteristics and properties of continuous-time (analog) signals and systems. Analysis of linear time-invariant continuous-time systems using differential equation and convolutional models. Analysis of these systems using Laplace transforms, Fourier series, and Fourier transforms. Examples from applications to telecommunications. Prerequisites: EECS70A/CSE70A; EECS145 or Mathematics 114A. Formerly ECE120B. (Design units: 0)
EECS150B Discrete-Time Signals and Systems (4) S. Analysis of discrete-time linear-time-invariant (DTLTI) systems in the time domain and using z-transforms. Introduction to techniques based on Discrete-Time, Discrete, and Fast Fourier Transforms. Examples of their application to digital signal processing and digital communications. Prerequisite: EECS70A/CSE70A. Same as CSE120A. EECS150B/CSE120A and EECSH150B may not both be taken for credit. Formerly ECE120A. (Design units: 0)
EECSH150B Discrete-Time Signals and Systems (4) S. Foundations of discrete-time linear-time-invariant (DTLTI) systems for analysis and design of digital signal processors. Introduction to time-domain techniques based on z-transforms, and Discrete-Time-, Discrete-, and Fast-Fourier Transforms. Unification of concepts achieved by filter design example. Prerequisite: EECS70A/CSE70A. EECSH150B and EECS150B/CSE120A may not both be taken for credit. (Design units: 1)
EECS152A Digital Signal Processing (3) F. Nature of sampled data, sampling theorem, difference equations, data holds, z-transform, w-transform, digital filters, Butterworth and Chebychev filters, quantization effects. Prerequisite: EECS150B/CSE120A. Same as CSE135A. Formerly ECE135A. (Design units: 2)
EECS152B Digital Signal Processing Design and Laboratory (3). Students plan and perform 10 core laboratory exercises covering signal synthesis and analysis with various filter and frequency transform processes. Models of radio and radar/sonar signal processing are included. Prerequisite: EECS152A/ CSE135A. Same as CSE135B. Formerly ECE135B. (Design units: 3)
EECS160A Introduction to Control Systems (4) F. Modeling, stability, and specifications of feedback control systems. Root locus, Bode plots, Nyquist criteria, and state-space methods for dynamic analysis and design. Corequisite: EECS160LA. Prerequisites: EECS10, CEE10, or MAE10; EECS170B, EECS170LB; EECS150A. Formerly ECE140A. (Design units: 2)
EECS160LA Control Systems I Laboratory (1) F. Laboratory accompanying EECS160A. Corequisite: EECS160A. Formerly ECE140LA. (Design units: 1)
EECS160B Sampled-Data and Digital Control Systems (3). Sampled-data and digital control systems. Sampling process and theory of digital signals; z-transform and modeling; stability; z-plane, frequency response, state-space techniques of digital control system synthesis. Prerequisites: EECS31; EECS160A, EECS160LA. Formerly ECE140B. (Design units: 2)
EECS161 Electric Machines and Drives (3) S. Magnetic circuits and transformers. Fundamentals of energy conversion. Application to synchronous, induction, commutator, and special purpose machines. Electric drives. Corequisite: EECS161L. Prerequisite: EECS70B or consent of instructor. Formerly ECE160. (Design units: 2)
EECS161L Electric Machines and Drives Laboratory (1) S. Laboratory exercises supplementing the content of EECS161. Corequisite: EECS161. Formerly ECE160L. (Design units: 0)
EECS163 Power Systems (4) F. Generation, transmission, and use of electrical energy. Fault calculation, protection, stability, and power flow. Corequisite: EECS163L. Prerequisite: EECS70B. Formerly ECE163. (Design units: 1)
EECS163L Power Systems Laboratory (1) F. Experiments and field trips relevant to studies in power systems. Corequisite: EECS163. Formerly ECE163L. (Design units: 0)
EECS166A Industrial and Power Electronics (4) W. Power switching devices, pulse width modulation (PWM) methods, switching converter topologies, control, and magnetics. Prerequisites: EECS170C; EECS160A or consent of instructor. Concurrent with EECS267A. Formerly ECE166A. (Design units: 2)
EECS166B Advanced Topics in Industrial and Power Electronics (3). Practical design of switching converters, electromagnetic compatibility, thermal management, and/or control methods. Prerequisite: EECS166A or consent of instructor. Formerly ECE166B. (Design units: 1)
EECS170A Electronics I (4) F. The properties of semiconductors, electronic conduction in solids, the physics and operation principles of semiconductor devices such as diodes and transistors, transistor equivalent circuits, and transistor amplifiers. Corequisite: Physics 7E. Prerequisites: EECS70A, Physics 7D. Formerly ECE113A. (Design units: 1)
EECS170LA Electronics I Laboratory (1) F. For CpE and EE majors. Laboratory accompanying EECS170A to perform experiments on semiconductor material properties, semiconductor device physics and operation principles, and transistor amplifiers to improve experimental skills and to enhance the understanding of lecture materials. Corequisites: EECS170A, Physics 7E. Prerequisites: EECS70A, EECS70B, Physics 7D. Formerly ECE113LA. (Design units: 1)
EECS170B Electronics II (4) W. Design and analysis of single-stage amplifiers, biasing circuits, inverters, logic gates, and memory elements based on CMOS and bipolar transistors. Corequisite: EECS170LB. Prerequisites: EECS70B, EECS170A, EECS170LA. EECS170B and EECSH170B may not both be taken for credit. Formerly ECE113B. (Design units: 2)
EECSH170B Honors Electronics II (4). Covers the same material as EECS170B but in greater depth. Corequisite: EECS170LB. Prerequisites: EECS70B, EECS170A, EECS170LA. EECSH170B and EECS170B may not both be taken for credit. (Design units: 2)
EECS170LB Electronics II Laboratory (1) W. Laboratory accompanying EECS170B. Corequisites: EECS170B. Prerequisites: EECS170A, EECS170LA. Formerly ECE113LB. (Design units: 1)
EECS170C Electronics III (4) S. Principles of operation, design, and utilization of integrated circuit modules, including multi-stage amplifiers, operational amplifiers, and logic circuits. Corequisites: EECS170LC. Prerequisites: EECS170B, EECS170LB. Formerly ECE113C. (Design units: 2)
EECS170LC Electronics III Laboratory (1) S. Laboratory accompanying EECS170C to provide hands-on training in design of digital/analog circuits/subsystems. Corequisites: EECS170C. Prerequisites: EECS170B, EECS170LB. Formerly ECE113LC. (Design units: 1)
EECS170D Integrated Electronic Circuit Design (4) F. Overview of design and fabrication of modern digital integrated circuits. Fabrication of CMOS process; transistor-level design simulation, functional characteristics of basic digital integrated circuits, different logic families including static and dynamic logic, layout and extraction of digital circuits; automated design tools. Prerequisites: EECS170C and EECS170LC. Formerly ECE113D. (Design units: 4)
EECS170E Analog and Communications IC Design (4) S. Advanced topics in design of analog and communications integrated circuits. Topics include: implementation of passive components in integrated circuits; overview of frequency response of amplifiers, bandwidth estimation techniques, high-frequency amplifier design; design of radio-frequency oscillators. Prerequisite: EECS170D. Formerly ECE113E. (Design units: 3)
EECS174 Fundamentals of Semiconductor Devices (4) F. Operation principle and characteristics of a broad range of semiconductor devices including bipolar junction device, field-effect transistors, quantum and nanodevices. Prerequisite: EECS170A. Formerly ECE114A. (Design units: 1)
EECS175A Very Large Scale Integration (VLSI) Project (4) S. Students create VLSI design projects from conception through architecture, floor planning, detailed design, simulation, verification, and submission for project fabrication. Emphasis on practical experience in robust VLSI design techniques. Prerequisites: EECS170D; EECS115 or consent of instructor. Concurrent with EECS275A. Formerly ECE115A. (Design units: 4)
EECS175B Very Large Scale Integration (VLSI) Project Testing (4) F. Test and document student-created Complementary Metal Oxide Semiconductor (CMOS) Very Large Scale Integration (VLSI) projects designed in EECS175A. Emphasis on practical laboratory experience in VLSI testing techniques. Prerequisite: EECS175A or consent of instructor. Concurrent with EECS275B. Formerly 115B. (Design units: 0)
EECS176 Fundamentals of Solid-State Electronics and Materials (4). Physical properties of semiconductors and the roles materials play in device operation. Topics include: crystal structure, phonon vibrations, energy band, transport phenomenon, optical properties and quantum confinement effect essential to the understanding of electronic, optoelectronic, and nanodevices. Prerequisites: EECS170A, EECS170LA. EECS176 and ECE116 may not both be taken for credit. (Design units: 1)
EECS179 Microelectromechanical Systems (MEMS) (4) F. Small-scale machines, small-scale phenomena, MEMS fabrication, MEMS CAD tools, MEMS devices and packaging, MEMS testing. Prerequisite: Physics 51A or consent of instructor. Formerly ECE119. (Design units: 2)
EECS180 Engineering Electromagnetics (4) F. Electromagnetic fields and solutions to problems in engineering applications; Maxwell's equations and plane wave propagation, reflection, and transmission. Corequisites: Mathematics 2D and 3D. Prerequisite: Physics 7E. Formerly ECE170. (Design units: 1)
EECS182 Monolithic Microwave Integrated Circuit (MMIC) Analysis and Design (4) W. Design of microwave amplifiers including low-noise amplifier, multiple stage amplifiers, power amplifiers, and introduction to broadband amplifiers. The goal is to provide the basic knowledge for the design of microwave amplifiers ranging from wireless system to radar system. Prerequisite: EECS180 or consent of instructor. Formerly ECE172. (Design units: 3)
EECS187 Engineering Electrodynamics (4) S. Time-varying electromagnetic fields including waveguides, resonant cavities, radiating systems. Motion of charged particles in electromagnetic fields, radiation by moving charges. Scattering and dispersion. Prerequisite: EECS180. Formerly ECE177. (Design units: 1)
EECS188 Optical Electronics (4) W. Photodiodes and optical detection, photometry and radiometry, geometric optics, lens theory, imaging system, EM wave propagation, optical waveguides and fibers, heterojunction structures, laser theory, semiconductor lasers, and optical transmission system. Prerequisite: consent of instructor. Formerly ECE178. (Design units: 1)
EECS189A-B Electrical Engineering Senior Design Project (2-2) F, W. Design projects for seniors in the Electrical Engineering program. Each project is supervised by a faculty member. Prerequisites: EECS170C, EECS150A, EECS180, and senior standing. EECS189A: In-Progress grading. Formerly ECE189A-B. (Design units: 2-2)
EECS195 Special Topics in Electrical and Computer Engineering (1 to 4) F, W, S, Summer. Prerequisites vary. May be repeated for credit as topics vary. Formerly ECE195. (Design units: varies)
EECS198 Group Study (1 to 4) F, W, S. Group study of selected topics in engineering. Prerequisites vary. Formerly ECE198. (Design units: varies)
EECS198L Group Laboratory (1 to 4) F, W, S. Group laboratory for experimentation or design in connection with special projects or EECS198 courses. Corequisite: EECS198. Formerly ECE198L. (Design units: varies)
EECS199 Individual Study (1 to 4) F, W, S. For undergraduate Engineering majors in supervised but independent reading, research, or design. Students taking individual study for design credit are to submit a written paper to the instructor and to the Undergraduate Student Affairs Office in the School of Engineering. May be taken for credit for a total of six units. Formerly ECE199. (Design units: varies)
EECS199P Individual Study (1 to 4) F, W, S. Same description as EECS199. Pass/Not Pass grading only. May be repeated for credit as topics vary. Formerly ECE199P. (Design units: varies)
EECSH199 Individual Study for Honors Students (1 to 5) F, W, S. For undergraduate honor students majoring in Electrical Engineering. Independent reading, research, or design under the direction of a faculty member or group of faculty members in Electrical and Computer Engineering. Students taking individual study for design credit are to submit a written paper to the instructor and to the Undergraduate Student Affairs Office in the School of Engineering. Prerequisite: consent of instructor; open only to Campuswide Honors students. May be taken for credit four times. Formerly ECEH199. (Design units: varies)
GRADUATE
EECS202A Principles of Imaging (4) F. Linear systems, probability and random processes, image processing, projection imaging, tomographic imaging. Prerequisite: Physics 51B or 61B or equivalent. Same as Physics 233A. Concurrent with Physics 147A. Formerly ECE237A-B.
EECS202B Techniques in Medical Imaging I: X-ray, Nuclear, and NMR Imaging (4) W. Ionizing radiation, planar and tomographic radiographic and nuclear imaging, magnetism, NMR, MRI imaging. Prerequisite: EECS202A. Same as Physics 233B. Concurrent with Physics 147B.
EECS202C Techniques in Medical Imaging II: Ultrasound, Electrophysiological, Optical (4) S. Sound and ultrasound, ultrasonic imaging, physiological electromagnetism, EEG, MEG, ECG, MCG, optical properties of tissues, fluorescence and bioluminescence, MR impedance imaging, MR spectroscopy, electron spin resonance and ESR imaging. Prerequisite: EECS202C. Same as Physics 233C. Concurrent with Physics 147C.
EECS203A Digital Image Processing (3). Pixel-level digital image representation and elementary operations; Fourier and other unitary transforms; compression, enhancement, filtering, and restoration; laboratory experience is provided. Prerequisite: EECS152A. Formerly ECE234A.
EECS204 Advanced Computer Graphics (4). Provides the fundamental understanding of mathematical and physical models used in computer graphics applications: physics of color image formation, polygon approximations, ray tracing, radiosity and image-based modeling and rendering, visualization and geometric modeling. Prerequisite: EECS104 and ICS 183, or consent of instructor. Formerly ECE204.
EECS205 Advanced Scientific Visualization (4). Introduces advanced visualization techniques for various types of measured or computer-simulated data. Typical applications for these visualization techniques include the study of airflows around car bodies, medical data, and molecular structures. Prerequisite: EECS105 or consent of instructor. Formerly ECE205.
EECS206 Advanced Computer-Aided Geometric Design (4). Mathematical background for three-dimensional realistic graphics, CAD/CAM, and geometric modeling. Polynomials, vector spaces, divided differences, techniques for the definition and manipulation of curves and surfaces, Coon's patches, Bezier curves and surfaces, B-spline curves and surfaces, beta-splines, box-splines. Prerequisite: EECS106 or consent of instructor. Formerly ECE206.
EECS207 Modeling and Rendering for Image Synthesis (3) S. Provides the fundamental understanding of mathematical and physical models used in image synthesis applications: geometric models, physics of color image formation, polygon approximations, ray tracing, and radiosity. Formerly ECE207.
EECS207A Advanced Digital Image Processing (4). Introduces image and texture segmentation and symbolic representation, three-dimensional modeling, relational structures, three-dimensional object recognition, three-dimensional scene analysis and interpretation. An application area of particular interest is biomedical imaging. Prerequisite: EECS107 or consent of instructor. Formerly ECE207A.
EECS208 Principles of Virtual Reality (4). Introduces cutting-edge virtual reality technology. Provides an introduction to the physical principles, technological challenges, possibilities, and limitations for the creation of virtual environments. Programming projects emphasize the visualization, exploration, and modification of scientific data in virtual environments. Prerequisite: EECS104 or consent of instructor. Formerly ECE208.
EECS209A Rendering Techniques for Biomedical Imaging (4). Image acquisition techniques (overview), combining different modalities (CT/MRI/ fMRI/PET), 2-D image enhancement techniques, image storage (wavelet compression), feature detection, 3-D surface reconstruction, volume rendering, scalability, final project (hands-on experience). Formerly ECE209A.
EECS211 Advanced System Software (3) W. Study of operating systems including interprocess communication, scheduling, resource management, concurrency, reliability, validation, protection and security, and distributed computing support. System software design languages and modeling analysis. Prerequisite: EECS112 and EECS111; or consent of instructor. Formerly ECE231.
EECS213 Computer Architecture (3). Problems in hardware, firmware (microprogram), and software. Computer architecture for resource sharing, real-time applications, parallelism, microprogramming, and fault tolerance. Various architectures based on cost/performance and current technology. Prerequisites: EECS112, EECS112L. Formerly ECE233.
EECS215 Design and Analysis of Algorithms (3). Computer algorithms from a practical standpoint. Algorithms for symbolic and numeric problems such as sorting, searching, graphs, network flow, and FFT considered. Analysis includes algorithm time and space complexity. Formerly ECE235.
EECS217 VLSI System Design (4) S. Overview of integrated fabrication, circuit simulation, basic device physics, device layout, timing; MOS logic design; layout generation, module generation, techniques for very large scale integrated circuit design. Prerequisite: EECS112. Formerly ECE251.
EECS218 Distributed Computer Systems (3) S. Design and analysis techniques for decentralized computer architectures, communication protocols, and hardware-software interface. Performance and reliability considerations. Design tools. Prerequisites: EECS211 and EECS213. Formerly ECE252. Same as Networked Systems 261.
EECS219 Distributed Software Architecture and Design (3). Practical issues for reducing the software complexity, lowering cost, and designing and implementing distributed software applications. Topics include the distributed object model distributed environment, platform-independent software agents and components, the middleware architecture for distributed real-time and secure services. Prerequisite: EECS211. Formerly ECE255.
EECS220 Advanced Digital Signal Processing Architecture (3). Studies the latest DSP architectures for applications in communication (wired and wireless) and multimedia processing. Emphasis given to understanding the current design techniques and to evaluate the performance, power, and application domain of the latest DSP processors. Prerequisite: EECS 213 or consent of instructor.
EECS221 Topics in Computer Engineering (3). New research results in computer engineering. May be repeated for credit. Formerly ECE238.
EECS223 Real-Time Computer Systems (3). Time bases, clock synchronization, real-time communication protocols, specification of requirements, task scheduling. Validation of timelines, real-time configuration management. Prerequisites: EECS211 and EECS213. Formerly ECE253.
EECS224 Fault-Tolerant Computing (4). Various aspects of fault-tolerant computing systems. Includes hardware and software failures, reliability, and mechanism to recover from failures. Prerequisite: EECS211. Formerly ECE254.
EECS225 Advanced Data Engineering (3). Advanced data models, data analysis, intelligence and integration, distributed database management systems, parallel databases, multimedia and visual databases, Web database management, advanced database applications. Prerequisite: EECS116 or Computer Science 122A. Formerly ECE257.
EECS228 Numerical Processors (3). Number representations. Fast algorithms and implementations for addition, multiplication, division, and square root. Floating-point processors. On-line arithmetic. Function evaluation. CORDIC processors. Residue arithmetic. Prerequisite: EECS112. Formerly ECE258.
EECS229 Microarchitecture and Compilation Techniques for Parallel Processing (3). New advances in microarchitecture and compilation techniques for microprocessors. Static and dynamic instruction-level parallelism (ILP) techniques. Superscalar processors, VLIW processors, multithreaded processors. Code analysis, scheduling, and optimization. Interaction of compiler and architecture. Prerequisites: EECS111 and EECS213. Formerly ECE259.
EECS240 Random Processes (3). Extensions of probability theory to random variables varying with time. General properties of stochastic processes. Convergence. Estimation, including nonlinear and linear minimum mean square error and maximum likelihood. Spectral density and linear filters. Poisson processes and discrete-time Markov chains. Prerequisite: EECS140. Formerly ECE287A.
EECS241A Digital Communications I (3). Concepts and applications of digital communication systems. Baseband digital transmission of binary, multiamplitude, and multidimensional signals. Introduction to and performance analysis of different modulation schemes. Formerly ECE228A.
EECS241B Digital Communications II (3). Concepts and applications of equalization, multicarrier modulation, spread spectrum, and CDMA. Digital communications through fading memory channels. Prerequisite: EECS241A. Formerly ECE228B.
EECS242 Information Theory (3). Fundamental capabilities and limitations of information sources and information transmission systems. An analytical framework for modeling and evaluating communication systems: entropy, mutual information asymptotic equipartition property, entropy rates of a stochastic process, data compression, channel capacity, differential entropy, the Gaussian channel. Prerequisite: EECS240. Formerly ECE225.
EECS243 Error Correcting Codes (3) S. Different techniques for error correcting codes and analyzing their performance. Linear block codes; cyclic codes; convolutional codes. Minimum distance; optimal decoding; Viterbi decoding; bit error probability. Coding gain; trellis coded modulation. Prerequisite: EECS240. Formerly ECE226.
EECS244 Wireless Communications (3). Introduction to wireless communications systems. Wireless channel modeling. Single carrier, spread spectrum, and multi-carrier wireless modulation schemes. Diversity techniques. Multiple-access schemes. Transceiver design and system level tradeoffs. Brief overview of GSM, CDMA (IS-95) and 2.5, 3G cellular schemes. Prerequisite: EECS241B. Formerly ECE224.
EECS245 Space-Time Coding (3). A fundamental study of: capacity of MIMO channels, space-time code design criteria, space-time block codes, space-time trellis codes, differential detection for multiple antennas, spatial multiplexing, BLAST. Prerequisite: EECS242.
EECS248A Internet (4) F. A broad overview of basic Internet concepts. Internet architecture and protocols, including addressing, routing, TCP/IP, quality of service, and streaming. Prerequisite: EECS148, Computer Science 132, or consent of instructor. Same as Computer Science 232 and Networked Systems 201.
EECS248B Performance Analysis of Computer Communication Networks (3) W. Mathematical modeling and optimization of network performance and design. Data link layer and media access protocols. Queuing models for communication networks. Routing and congestion control. Prerequisite: EECS248A. Same as Networked Systems 250. Formerly ECE229B.
EECS250 Digital Signal Processing I (3). Fundamental principles of digital signal processing, sampling, decimation and interpolation, discrete Fourier transforms and FFT algorithms, transversal and recursive filters, discrete random processes, and finite-word effects in digital filters. Prerequisites: EECS152A or equivalent. Formerly ECE230A.
EECS251A-B Detection, Estimation, and Demodulation Theory (3-3). Fundamentals of hypothesis testing and Bayes and Maximum Likelihood Estimation. ARMA and state variable models for random time series analysis. Wiener and Kalman filtering and prediction. Adaptive algorithms for identification and tracking of parameters of time-varying models. Prerequisite: EECS240. Formerly ECE227A-B.
EECS252 Adaptive Signal Processing (3). Introduction to adaptive signal processing. Eigenanalysis. Wiener Filters. Linear Prediction. Kalman Filtering. LMS Algorithm. Method of Least Squares. Recursive Least Squares. Prerequisite: EECS250.
EECS260A Linear Systems I (3). State-space representation of continuous-time and discrete-time linear systems. Controllability, observability, stability. Realization of rational transfer functions. Prerequisite: EECS160A. Formerly ECE240A.
EECS260B Linear Systems II (3). Continuation of deterministic linear multivariable systems. Linear state feedback and observers in continuous-time and discrete-time system control. Introduction to stochastic systems. Prerequisite: EECS260A. Formerly ECE240B.
EECS261A Linear Optimization Methods (3). Formulation, solution, and analysis of linear programming and linear network flow problems. Simplex methods, dual ascent methods, interior point algorithms and auction algorithms. Duality theory and sensitivity analysis. Shortest path, max-flow, assignment, and minimum cost flow problems. Prerequisite: Mathematics 2J or consent of instructor. Same as Networked Systems 253. Formerly ECE281A.
EECS261B Nonlinear Optimization Methods (3). Formulation, solution, and analysis of nonlinear programming problems. Unconstrained optimization, optimization over a convex set, Lagrange multiplier theory, Lagrange multiplier algorithms, duality theory, convex programming, dual methods, and multi-objective optimization theory. Emphasizes mathematical analysis. Prerequisite: Mathematics 2J or consent of instructor. Same as Networked Systems 254. Formerly ECE281B.
EECS262 Network Congestion and Flow Control Theory (3). Congestion and flow control theory for network traffic engineering. Path control, flow assignment, and network management. Fundamental laws of network congestion, controllability, observability, manageability, and maximin theories, and time-optimal queue control theory. Same as Networked Systems 255. Formerly ECE242.
EECS266 Advanced Topics in Power Systems (3). Economic dispatch, unit commitment, power system planning and operation, and power production. Power system problems of current interest. Prerequisite: EECS163 or consent of instructor. Formerly ECE263. Offered upon sufficient demand.
EECS267A Industrial and Power Electronics (4) W. Power switching devices, pulse width modulation (PWM) methods, switching converter topologies, control, and magnetics. Prerequisite: EECS170C, EECS160A, or consent of instructor. Concurrent with EECS166A. Formerly ECE266A.
EECS267B Topics in Industrial and Power Electronics (3). Practical design of switching converters, electromagnetic compatibility, thermal management, and/or control methods. Prerequisite: EECS267A or consent of instructor. Formerly ECE266B.
EECS270A Advanced Analog Integrated Circuit Design I (3). Basic transistor configurations; differential pairs; active load/current sources; supply/ temperature-independent biasing; op-amp gain and output stages; amplifier frequency response and stability compensation; nonidealities in op-amps; noise and dynamic range in analog circuits. Prerequisites: EECS170C and 170LC, or equivalent; or consent of instructor. Formerly ECE213A.
EECS270B Advanced Analog Integrated Circuit Design II (3) W. Advanced transistor modeling issues; discrete-time and continuous-time analog Integrated Circuit (IC) filters; phase-locked loops; design of ICs operating at radio frequencies; low-voltage/low-power design techniques; A/D and D/A converters; AGC circuits. Prerequisite: EECS270A or consent of instructor. Formerly ECE213B.
EECS270C Design of Integrated Circuits for Broadband Applications (3) S. Topics include: broadband standards and protocols; high-frequency circuit design techniques; PLL theory and design; design of transceivers; electrical/ optical interfaces. Prerequisite: EECS 270A or consent of instructor. Formerly ECE213C.
EECS270D Complementary Metal-Oxide Semiconductor (CMOS) Radio-Frequency Integrated Circuit Design (3) S. Topics include: CMOS RF component modeling; matching network design; transmission line theory/ modeling; Smith chart and S-parameters; noise modeling of active and passive components; high-frequency amplifier design; low-noise amplifier (LNA) design; mixer design; RF power amplifier. Prerequisite: EECS270A or consent of instructor. Formerly ECE213D.
EECS272 Topics in Electronic System Design (3). New research results in electronic system design. May be repeated for credit. Formerly ECE212.
EECS274 Biomedical Microdevices (MEMOS) (3). Construction, lithographic patterning and etching, sealing and connecting, molding, and testing of microdevices. Prerequisite: EECS179 or consent of instructor. Formerly ECE219.
EECS275A Very Large Scale Integration (VLSI) Project (4) S. Students create VLSI design projects from conception through architecture, floor planning, detailed design, simulation, verification, and submission for project fabrication. Emphasis on practical experience in robust VLSI design techniques. (Successful students are expected to take EECS275B.) Prerequisite: EECS170D, EECS115, or consent of instructor. Concurrent with EECS175A. Formerly ECE215A.
EECS275B Very Large Scale Integration (VLSI) Project Testing (4) F. Test and document student-created Complementary Metal Oxide Semiconductor (CMOS) Very Large Scale Integration (VLSI) projects designed in EECS275A. Emphasis on practical laboratory experience in VLSI testing techniques. Prerequisite: EECS275A or consent of instructor. Concurrent with EECS175B. Formerly ECE215B.
EECS276 Solid-State Electronics (3). Covers the fundamentals of solid-state electronics which govern the operating principles of semiconductor devices. Specific topics include crystal structure, energy band, carrier transport, carrier generation and recombination, optical properties, heterostructure, quantum confinement effect, and nanostructures. Prerequisites: EECS170A, EECS180, or consent of instructor. Formerly ECE216. Offered alternate years.
EECS277A Advanced Semiconductor Devices I (3) W. Advanced complementary metal-oxide-semiconductor field-effect transistors (CMOSFET), device scaling, device modeling and fabrication, equivalent circuits, and their applications for digital, analog, RF. Prerequisite: EECS174. Formerly ECE217A.
EECS277B Advanced Semiconductor Devices II (3) S. Metal-semiconductor field-effect transistors (MESFET), heterojunction bipolar transistors (HBT), microwave semiconductor devices, equivalent circuits, device modeling and fabrication, microwave amplifiers, transmitters, and receivers. Prerequisite: EECS174. Formerly ECE217B.
EECS277C Nanotechnology (3). Fabrication and characterization techniques of electrical circuit elements at the nanometer scale. Quantized conductance, semiconductor quantum dots, single electron transistors, molecular wires, carbon nanotubes, self-assembly of nano-circuit elements, quantum methods of information processing. Prerequisites: EECS170A and Physics 51A; or consent of instructor. Formerly ECE217C.
EECS278 Micro-System Design (3) W. Covers the fundamentals of the many disciplines needed for design of Micro-Electro-Mechanical Systems (MEMS): microfabrication technology, structural mechanics on micro-scale, electrostatics, circuit interface, control, computer-aided design, and system integration. Same as MAE247. Formerly ECE247.
EECS279 Micro-Sensors and Actuators (4) S. Introduction to the technology of Micro-Electro-Mechanical Systems (MEMS). Fundamental principles and applications of important microsensors, actuation principles on micro-scale. Introduction to the elements of signal processing; processing of materials for micro sensor/actuator fabrication; smart sensors and microsensor/ microactuator array devices. Same as MAE249. Formerly ECE249.
EECS280A Advanced Engineering Electromagnetics I (3). Stationary electromagnetic fields, Maxwell's equations, circuits and transmission lines, plane waves, guided waves, and radiation. Prerequisite: EECS180 or equivalent. Formerly ECE279A.
EECS280B Advanced Engineering Electromagnetics II (3) W. Two- and three-dimensional boundary value problems, dielectric waveguides and other special waveguides, microwave networks and antenna arrays, electromagnetic properties of materials, and electromagnetic optics. Prerequisite: EECS280A or equivalent. Formerly ECE279B.
EECS282 Monolithic Microwave Integrated Circuit (MMIC) Analysis and Design II (3) S. Design of microwave amplifiers using computer-aided design tools. Covers low-noise amplifiers, multiple stage amplifiers, broadband amplifiers, and power amplifiers. Hybrid circuit design techniques including filters and baluns. Theory and design rules for microwave oscillator design. Prerequisite: EECS 180, EECS182, or consent of instructor. Formerly ECE272.
EECS285A Optical Communications (3). Introduction to fiber optic communication systems, optical and electro-optic materials, and high-speed optical modulation and switching devices. Prerequisite: EECS180 or consent of instructor. Formerly ECE275A.
EECS285B Lasers and Photonics (3) W. Covers the fundamentals of lasers and applications, including Gaussian beam propagation, interaction of optical radiation with matters, and concepts of optical gain and feedback. Applications are drawn from diverse fields of optical communication, signal processing, and material diagnosis. Prerequisite: undergraduate course work in electromagnetic theory and atomic physics. Formerly ECE275B.
EECS285C Integrated and Fiber Optics (3) S. Propagation in dielectric waveguides and in optical fiber, grating structures and their applications in wavelength filtering and multiplexing, dynamic tunable passive components, signal dispersion and compensation, polarization effects, optical switching. Prerequisite: EECS285B or consent of instructor. Formerly ECE275C.
EECS292 Preparation for M.S. Comprehensive Examination (1 to 3) F, W, S. Individual reading and preparation for the M.S. comprehensive examination. Satisfactory/Unsatisfactory only. May be repeated for credit. Formerly ECE292.
EECS293 Preparation for Ph.D. Preliminary Examination (1 to 6) F, W, S. Individual reading and preparation for the Ph.D. preliminary examination. Satisfactory/Unsatisfactory only. May be repeated for credit. Formerly ECE293.
EECS294 Electrical Engineering and Computer Science Colloquium (1 to 4) F, W, S. Guest speakers discuss their latest research results in electrical engineering. Prerequisite: consent of instructor. May be repeated for credit. Formerly ECE294.
EECS295 Seminars in Engineering (1 to 4) F, W, S. Scheduled each year by individual faculty in major field of interest. Prerequisite: consent of instructor. May be repeated for credit. Formerly ECE295.
EECS296 Master of Science Thesis Research (4 to 12) F, W, S. Individual research or investigation conducted in the pursuit of preparing and completing the thesis required for the M.S. degree in Engineering. Prerequisite: consent of instructor. May be repeated for credit. Formerly ECE296.
EECS297 Doctor of Philosophy Dissertation Research (4 to 12) F, W, S. Individual research or investigation conducted in preparing and completing the dissertation required for the Ph.D. degree in Engineering. Prerequisite: consent of instructor. May be repeated for credit. Formerly ECE297.
EECS298 Topics in Electrical Engineering and Computer Science (3) F, W, S. Study of Electrical and Computer Engineering concepts. Prerequisite: consent of instructor. May be repeated for credit as topics vary. Formerly ECE298.
EECS299 Individual Research (1 to 12) F, W, S. Individual research or investigation under the direction of an individual faculty member. Prerequisite: consent of instructor. May be repeated for credit. Formerly ECE299.