EECS � ELECTRICAL ENGINEERING AND COMPUTER SCIENCE

EECS - 1000   ORIENTATION TO EECS
[1 hour]  Orientation to the facilities and procedures available to the student in the University, college and department plus an introduction to the fields of Electrical Engineering and Computer Science and Engineering.

EECS - 1020   INTRODUCTION TO MODERN COMPUTING
[3 hours]  This course provides an introduction to various fundamental areas in Computer Science: hardware, software, computer programming, communications, application programs, theoretical limitations of computers and artificial intelligence,  The course features a series of  computer projects and use of the Internet.

EECS - 1050   INTRODUCTION TO COMPUTING IN C/C++
[2 hours]  Covers the concept and properties of an algorithm, analysis and decomposition of computational problems, use of modern programming practices and application of the C/C++ language to problem solving.

EECS - 1100   DIGITAL LOGIC DESIGN
[4 hours]  Number representation and Boolean Algebra.  Combinational circuit analysis and design.  K-map and tabulation methods.  Multipexers, decoders, adders/subtracters and PLD devices.  Sequential circuit analysis and design.  Registers, counters and recognizers.

EECS - 1500   DATA STRUCTURES I
[4 hours]  Covers the concept and properties of an algorithm, analysis and decomposition of computational problems, use of modern programming practices.  Introduction of linear data structures (stacks, queues, lists, strings) and objects.

EECS - 1510   DATA STRUCTURES II
[4 hours]  The study of data organization and data handling operations for dynamic implementation of linear and non-linear structures.  Sort/search algorithms and techniques for determining efficiency of algorithms are also addressed.  Prerequisite: EECS 1500

EECS - 1530 INTRODUCTION TO PROGRAMMING
[3 hours]  Covers the concept and properties of an algorithm, analysis and decomposition of computational problems, use of modern programming practices.  Introduction to arrays and classes.  Uses the C++ language.

EECS - 1540 DISCRETE AND LINEAR STRUCTURES
[4 hours]  Theory of discrete structures including logic, proofs, relations.  Theory and implementations (array and dynamic based) of linear data structures for lists, stacks, and queues.  Prerequisite: EECS 1530.

EECS - 1550 NONLINEAR DATA STRUCTURES
[4 hours]  Introduces nonlinear data structures for binary trees, B+ trees, search trees, and graphs.  Investigates applications of the above topics.  Also discusses the order of algorithms and sorting techniques.  Prerequisite:  EECS 1540.

EECS - 2000 EECS PROFESSIONAL DEVELOPMENT
[1 hour] Preparation for entry to the professions of Electrical Engineering and Computer Science and Engineering, including ethics and social responsibilities, employment practices, continuing education, and professional registration.  One hour lecture.

EECS - 2100   COMPUTER ORGANIZATION AND ASSEMBLY LANGUAGE
[4 hours]  Design of CPU, memory, I/O and arithmetic units.  Assembly language programming: symbolic coding, macros and program segmentation.  Use of interactive debuggers, utility programs and system I/O facilities.  Prerequisite: EECS 1100, either 1500 or 1530

EECS - 2300   ELECTRIC CIRCUITS
[4 hours]  An introduction to electrical circuit components and laws, resistive circuit analysis, AC circuit analysis, three-phase circuits, transient analysis of RLC circuits, series and parallel resonance and computer-aided circuit analysis.  Prerequisite: PHYS 2140

EECS - 2340   ELECTRIC CIRCUITS FOR NONMAJORS
[3 hours]  For students not majoring in EECS.  An introduction to electrical circuit components and laws, resistive circuit analysis, AC circuit analysis, phasors, three-phase circuits and computer-aided circuit analysis.  Prerequisite: PHYS 2140

EECS - 2550   OPERATING SYSTEMS AND SYSTEMS PROGRAMMING
[3 hours]  Examines the external and internal characteristics of computer operating systems and related software.  Details of at least one operating system and comparison with other operating systems.  An introduction to systems level programming.  Prerequisite: EECS 1510 or 1530, 2100

EECS - 3100   MICROSYSTEMS DESIGN
[4 hours]  Introduction to microprocessors, memory and I/O interfacing, interrupt structure, serial I/O and DMA operations.  Development of microprocessor based digital systems, testing techniques, use of modern development tools for debugging hardware and software.  Prerequisite: EECS 2100, 3400

EECS - 3150   DATA COMMUNICATIONS
[3 hours]  Analog and digital data transmission, transmission media, Modulation techniques.  Data encoding, asynchronous and synchronous transmissions, USART, RS232-C, RS-449 standards.  Data link configuration and control, error control, multiplexing and demultiplexing.  Prerequisite: EECS 1100, 3400; Corequisite MIME 4000

EECS - 3200   SIGNALS AND SYSTEMS
[4 hours]  Signals and system representation.  Convolution and impulse response.  Fourier series, Fourier transform and Laplace transform.  State variable analysis of continuous and discrete systems.  Digital computer simulation using MATLAB.  Prerequisite: EECS 1500, 2300

EECS - 3300   PROBABILISTIC METHODS IN ENGINEERING
[3 hours]  Techniques for modeling and analysis of random phenomena in EECS, including communication, control and computer systems.  Distribution, density and characteristic functions.  Computer generation.  Functions of random variables.  Prerequisite: EECS 3200

EECS - 3400   ELECTRONICS I
[4 hours]  Characteristics of the pn diode, BJT, MOSEFET and JFET.  Large signal analysis and computer simulation of devices and digital  circuits.  Logic families. Laboratory experiments and projects.  Prerequisite: EECS 2300

EECS - 3420   ELECTRONICS II
[3 hours]  Analog transistor, diode and integrated circuit analysis and design.  Incremental analysis techniques, frequency response and feedback techniques.  Prerequisite: EECS 3200, 3400

EECS - 3440   ELECTRONICS LABORATORY
[1 hour]  Laboratory experiments and projects in the testing and design of analog and mixed-signal electronic circuits.  Corequisite: EECS 3420

EECS - 3450   ELECTRICAL AND ELECTRONIC DEVICES
[3 hours]  For students not majoring in EECS.  An introduction to electrical engineering devices and techniques with an emphasis on applications.  Topics include solid-state devices, amplifiers, digital logic circuits, transformers and AC and DC machines.  Prerequisite: EECS 2340

EECS - 3460   ELECTRICAL ENERGY CONVERSION
[3 hours]  Traditional and renewable electrical energy sources, principles of electromechanical energy conversion, magnetic circuits and transformers, steady state performance of synchronous machines, dc machines, single phase and three phase induction motors.  Corequisite: EECS 3700

EECS - 3480   ENERGY CONVERSION LABORATORY
[1 hour]  Laboratory studies of power transformers, synchronous machines, DC machines, single and three phase induction motors.  Corequisite: EECS 3460

EECS - 3500   AUTOMATA AND LANGUAGE TRANSLATION SYSTEMS
[3 hours]  Examines formal models of computing (automata and grammars), computability and undecidability, and language translation systems.  Prerequisite: EECS 1510 or 1550

EECS - 3550   SOFTWARE ENGINEERING
[3 hours]  An introduction to the Software Engineering process.  Includes: the software lifecycle, user requirements, human-computer interaction, functional specification, software design, software tools, testing and modification.  A major term project is assigned.  Prerequisite: EECS 1510 or 1550; ENGL 2950 or 2960

EECS - 3700   ELECTROMAGNETICS
[4 hours]  Analysis of static electric and magnetic fields and steady currents, Faraday�s law and time-varying fields.  Maxwell�s equations, propagation of electromagnetic waves in free space, lossy media and conductors.  Transmission line theory.  Prerequisite: MATH 3860; PHYS 2140

EECS - 3940   CO-OP EXPERIENCE
[1 hour]  Approved co-op work experience.  Course may be repeated.  Prerequisite: EECS 2100

EECS - 4000   SENIOR DESIGN PROJECT
[4 hours]  Student teams select and research a design project and propose a design which is implemented, tested and evaluated. Progress reports, a written final report and an oral presentation are required. One hour lecture, one-hour recitation, 5 hours lab.  Prerequisite: Senior standing and EECS 3100 or EECS 3420

EECS - 4110   SIMULATION OF COMPUTER SYSTEMS
[4 hours]  Workload model, hardware and software monitors.  Modeling and simulation of central server model with multiple disks, cyclic models, multiprogrammed interactive virtual memory model, product form solution.  Case studies.  Prerequisite: EECS 2100; MIME 4000

EECS - 4130   DIGITAL DESIGN
[4 hours]  The design of digital systems, design methodologies, hardware description language such as VHDL: behavioral-, data flow-, and structural-level description of digital systems.  Implementation technologies including PLDs and FPGAs.  Prerequisite: EECS 2100

EECS - 4140   FAULT-TOLERANT DIGITAL SYSTEMS
[3 hours]  Faults testing in combinational and sequential circuits.  Design techniques for fault tolerance in digital systems.  Evaluation techniques.  Fault masking and self-checking systems.  Prerequisite: EECS 2100; MIME 4000

EECS - 4150   AUTOMOTIVE ELECTRONICS
[4 hours]  Introduction to automotive electronics and its various subsystems.  Sensors and actuators, design of engine control unit, body control unit and vehicle control unit.  Display and multiplexing systems.  Prerequisite: EECS 3100, 3200

EECS - 4160   ADVANCED MICROSYSTEMS DESIGN
[4 hours]  Design of microcomputers at the system level.  Buses for varying types of microcomputers in real-time and parallel processing.  Software and hardware requirements for interprocessor communications.  IEEE 488 and CAMAC standards buses.  Prerequisite: EECS 3100

EECS - 4170   REAL-TIME EMBEDDED SYSTEMS DESIGN
[3 hours]  Programming applications in a real-time environment.  Attention is given to the design of applications programs in a multitasking environment.  Examples are considered from such areas as process control, robotics, signal analysis, networking and multiwindow workstation software.  Prerequisite: EECS 2550, 3200

EECS - 4180   COMPUTER NETWORKS
[4 hours]  ISO/OSI layer models of computer networks.  Review of the first two layers.  Discussion of network, transport, session, presentation and application layers.  Study of LANs and standards.  Internetworking, routers and bridges.  Prerequisite: EECS 3150 OR 2100

EECS - 4200   FEEDBACK CONTROL SYSTEMS
[3 hours]  Feedback methods for the control of dynamic systems.  Topics include: modeling, characteristics and performance of feedback systems, stability, root locus and frequency response methods and computer simulation.  Prerequisite: EECS 3200

EECS - 4220   PROGRAMMABLE LOGIC CONTROLLERS
[3 hours]  An introduction to programmable logic controllers (PLCs), process control algorithms, interfacing of sensors and other I/O devices, simulation and networking.  Prerequisite: EECS 1100, 3200

EECS - 4240   POWER SYSTEMS OPERATION
[3 hours]  Single line diagrams and per unit calculations, network matrices and Y-bus, load flow techniques, large system loss formula, real and reactive power dispatch, power system relays and protection.  Prerequisite: EECS 3460

EECS - 4250   ROBOTICS
[4 hours]  The concepts, theory and application of robotics.  Topics include: arm geometry, kinematics and transformation matrices, motion kinematics, dynamics of industrial robots, trajectory planning and execution and control robotic systems.  Prerequisite: EECS 3200

EECS - 4260   CONTROL SYSTEMS DESIGN
[3 hours]  A general study of computer-aided design of control systems.  Topics include: stability, compensation, pole placement, nonlinear systems and digital systems.  Prerequisite: EECS 4200

EECS - 4290   ELECTRICAL MACHINES MODELING AND CONTROL
[3 hours]  Coupled rotating coils, primitive machines, machine winding transformations, state space modeling of dc, synchronous and three phase induction machines.  Control schemes for dc, synchronous and three phase induction machines.  Prerequisite: EECS 3460

EECS - 4320   INDUSTRIAL IMAGING SYSTEMS
[3 hours]  Systems (cameras and other components) and techniques for machine vision (surface imaging).  Nondestructive evaluation (internal inspection) of industrial materials and products, using ultrasound and radiographic systems.  Contemporary applications.  Prerequisite: PHYS 2140; EECS 3400

EECS - 4330   IMAGE ANALYSIS AND COMPUTER VISION
[3 hours]  Imaging geometry, image filtering, segmentation techniques, image representation and description, stereo vision and depth measurements, texture analysis, dynamic vision and motion analysis, matching and recognition.  Prerequisite: EECS 3300

EECS - 4340   IMAGING ARCHITECTURES AND HARDWARE
[3 hours]  Video work station components and display hardware; pyramid, pipeline, cellular logic and artificial neural net architectures for vision and image processing; real-time imaging; systolic implementation of image processing algorithms; current advances.  Prerequisite: EECS 3100, 4330

EECS - 4360   COMMUNICATION SYSTEMS
[3 hours]  Fourier transform applications in signal analysis and communication.  Signals spectra, filtering, AM and FM modulation, noise and optimum receiver, sampling theorem, multiplexing, PCM, introduction to digital modulators and demodulators.  Prerequisite: EECS 3200

EECS - 4370   INFORMATION THEORY AND CODING
[3 hours]  Coding concepts, Huffman code, entropy analysis, channel and mutual information, channel capacity and Shannon�s theorem, algebraic coding theory and application to blockcode and cyclic code, introduction to convolutional code.  Prerequisite: EECS 3300

EECS - 4380   DIGITAL SIGNAL PROCESSING
[3 hours]  Discrete Fourier Transform (DFT), discrete convolution and correlation, Fast Fourier Transform (FFT) and its applications, design of IIR and FIR digital filters, multirate/channel digital systems, decimation and interpolation.  Prerequisite: EECS 3200

EECS - 4400   SOLID STATE ELECTRONICS
[3 hours]  A comprehensive treatment of the theory and operation of physical electronic devices emphasizing electrical transport in metals and semiconductors and various models of BJT�s and FET�s.  Prerequisite: EECS 3400; PHYS 3070

EECS - 4410   ELECTRO-OPTICS
[3 hours]  Introduction to laser physics, optics, optical waveguides, optical communication systems and electro-optics. Design of light processing and communication systems will be considered with emphasis on optics and optical communication.  Prerequisite: EECS 3700

EECS - 4420 MICROWAVE ELECTRONICS
[3 hours]  Analysis and design of active and passive microwave components and systems. Theory and design of transmission lines, solid state and electron beam devices will be considered.  Prerequisite: EECS 3700, 3420

EECS - 4430   MICROWAVE LABORATORY
[1 hour]  Laboratory introduction to microwave and millimeter wave hardware and high frequency measurement techniques.  Corequisite: EECS 4420

EECS - 4440   ANTENNA THEORY AND DESIGN
[3 hours]  Introduction to antenna theory and design emphasizing engineering aspects of antenna systems. Dipole, loop and biconical antennas, arrays, broadband and aperture antennas will be considered.  Prerequisite: EECS 3700

EECS - 4450   ELECTROMAGNETICS LABORATORY
[2 hours]  A general laboratory that provides experiences in several areas of electromagnetics and includes a special student project.  Prerequisite: EECS 3700

EECS - 4460   POWER SYSTEM ANALYSIS
[3 hours]  Power system symmetrical components, fault analysis, transient stability analysis, transmission system modeling, distribution networks.  Prerequisite: EECS 3460

EECS - 4470   ELECTRONIC DESIGN
[3 hours]  Principles and techniques of analog active circuit design.  Selected design problems are given and circuits using standard parts are designed and laboratory tested.  A design notebook is kept.  Prerequisite: EECS 3200, 3420

EECS - 4480   ELECTRONIC ENERGY PROCESSING I
[3 hours]  Electronic power switching circuits.  Half-wave and full-wave rectification.  Characteristics of power semiconductors.  Phase-controlled rectifiers and inverters.  Isolated and non-isolated dc-dc converters.  Prerequisite: EECS 3400, 3460

EECS - 4490   ELECTRONIC ENERGY PROCESSING II
[3 hours]  Resonant dc-dc converters.  DC-AC inverters and harmonic analysis.  Variable-speed motor drives.  Laboratory design and analysis of various electronic energy processing circuits.  Prerequisite: EECS 4480

EECS - 4500   PROGRAMMING LANGUAGE PARADIGMS
[3 hours]  Fundamental concepts of modern programming languages.  Differences and similarities between procedural, functional, object-oriented and rule-based languages are examined as well as their impact on the programming process.  Prerequisite: EECS 1510, 3500

EECS - 4510   TRANSLATION SYSTEMS
[4 hours]  Design of translation systems including compilers and interpreters, grammars and parsing methods, error detection and correction schemes, and optimization techniques.  Prerequisite: EECS 3500, 2100, 1510

EECS - 4520   ADVANCED SYSTEMS PROGRAMMING
[4 hours]  Pertinent concepts of systems programming.  Topics covered include: synchronization, distributed programming models, kernel design, peripheral handling, file systems and security history and methods.  Prerequisite: EECS 2550

EECS - 4530   COMPUTER GRAPHICS I
[4 hours]  An introduction to typical computer graphics systems and their operation.  Interactive techniques will be introduced as well as representations and projections of three-dimensional images.  Exercises using graphics equipment are assigned.  Prerequisite: EECS 1050 or 1500

EECS - 4540   COMPUTER GRAPHICS II
[4 hours]  Examines current topics related to realistic and representative 3D computer graphics.  Topics include curve and surface geometry, solid modeling, ray tracing, radiosity and real-time computer graphics.  Prerequisite: EECS 1510, 4530

EECS - 4550   CREATING MULTIMEDIA SOFTWARE
[4 hours]  An audio-visual experience in the design and production of multimedia products.  Investigates computer-human interfaces, performance measurement and analysis, storage/retrieval of data, compression/decompression techniques.  Prerequisite: EECS 1510, 3520

EECS - 4560   DATABASE SYSTEMS I
[3 hours]  The following topics are covered: relational database modeling, query languages, design issues, and implementation issues of databases.  An appropriate database language is introduced and used to demonstrate principles.  Prerequisite: EECS 1510

EECS - 4570   DATABASE SYSTEMS II
[3 hours]  The emphasis of this course is on database recovery techniques, integrity constraints and concurrency control.  The similarities and differences between distributed, networked, client/server, and object-oriented database systems are also investigated.  Prerequisite: EECS 4560

EECS - 4580   SURVEY OF ARTIFICIAL INTELLIGENCE
[4 hours]  This course covers, more in breadth than in depth, the areas that artificial intelligence currently encompasses.  Topics cover: history, reasoning, search techniques, knowledge representation, uncertainty and learning.  Prerequisite: EECS 1510

EECS - 4610   DIGITAL VLSI DESIGN I: BASIC SUBSYSTEMS
[4 hours]  CMOS process technologies, CMOS logic families, custom and semi-custom design.  Subsystem design of adders, counters and multipliers.  System design methods and VLSI design tools.  Prerequisite: EECS 3400

EECS - 4620   DIGITAL VLSI DESIGN II: MEMORY AND STRUCTURED LOGIC
[3 hours]  Memory categories, functions, architectures, cells, and peripheral circuitry in CMOS/BiCMOS.  Overview and technology trends in SRAMs, DRAMs, EPROMs, EEPROMs, FPGAs...Class exercises in selected small system circuit and layout design.  Prerequisite: Senior standing or consent of the instructor

EECS - 4630   PHYSICAL DESIGN OF VLSI CIRCUITS
[4 hours]  VLSI design process automation and tools, mask level design, compaction, module placement, routing area partitioning, loose routing, channel routing and P/G and clock routing.  Prerequisite: EECS 4610

EECS - 4710   ADVANCED ELECTROMAGNETICS
[3 hours]  Advanced topics in electromagnetic wave propagation in metals and dielectric waveguides, free space propagation in lossless and lossy media and good conductors, antennas and wave scattering will be considered.  Prerequisite: EECS 3700

EECS - 4980   SPECIAL TOPICS IN EECS
[1 - 4 hours]  Pilot offerings of new courses involving emerging topics of interest are introduced using this number.  Prerequisites vary with the course offering.  One credit per lecture/recitation hour and/or 2.5 lab hours per week.

EECS - 4990   INDEPENDENT STUDY IN EECS
[1 - 4 hours]  Selected topics in electrical engineering or computer science and engineering.  The instructor will specify the scope of the investigation and will meet regularly with the student(s). The study is expected to require an average of 3 hours student effort per week per credit.  Prerequisite: consent of instructor

EECS - 5110   SIMULATION OF COMPUTER SYSTEMS
[4 hours]  Workload model, hardware and software monitors.  Modeling and simulation of central server model with multiple disks, cyclic models, multiprogrammed interactive virtual memory model, product form solution.  Case studies.  Prerequisite: EECS 2100; MIME 3600

EECS - 5130   DIGITAL DESIGN
[4 hours]  The design of digital systems, design methodologies, hardware description language such as VHDL, behavioral-, dataflow-, and structural-level description of digital systems.  Implementation technologies including PLDs and FPGAs.  Prerequisite: EECS 2100

EECS - 5140   FAULT-TOLERANT DIGITAL SYSTEMS
[3 hours]  Faults testing in combinational and sequential circuits.  Design techniques for fault tolerance in digital systems.  Evaluation techniques.  Fault masking and self checking systems.  Prerequisite: EECS 1100

EECS - 5150   AUTOMOTIVE ELECTRONICS
[4 hours]  Introduction of automotive electronics and its various subsystems.  Sensors and actuators, design of engine control unit, body control unit and vehicle control unit.  Display and multiplexing systems.  Prerequisite: EECS 3100, 3200

EECS - 5160   ADVANCED MICROCOMPUTER SYSTEMS
[4 hours]  Design of microcomputers at the system level.  Buses for varying types of microcomputers in real-time and parallel processing.  Software and hardware requirements for interprocessor communications.  IEEE 488 and CAMAC standards buses.  Prerequisite: EECS 4100

EECS - 5170   REAL-TIME EMBEDDED SYSTEMS DESIGN
[3 hours]  Programming applications in a real-time environment.  Applications programs in a multitasking environment.  Examples from process control, robotics, signal analysis and multiwindow software.  Prerequisite: EECS 2550, 3200; Consent of instructor

EECS - 5180   COMPUTER NETWORKS
[4 hours]  ISO/OSI layer models of computer networks.  Review of the first two layers.   Discussion of network, transport, session, presentation and application layers.  Study of LANs and standards.  Internetworking, routers and bridges.  Prerequisite: EECS 2100 or 3150

EECS - 5220   PROGRAMMABLE LOGIC CONTROLLERS
[3 hours]  Programmable Logic Controllers (PLCs), programming, sensors, process control algorithms, interfacing of sensors and other I/O devices, simulation and networking.  Prerequisite: EECS 1100, 3200

EECS - 5240   POWER SYSTEMS OPERATION
[3 hours]  Single Line Diagrams & Per Unit calculations, Network Matrices & Ybus for systems with uncoupled lines, Load Flow Techniques, Large system Loss Formula using Zbus, Real and Reactive Power Dispatch programming, Power systems relays & protection schemes.  Prerequisite: EECS 3460

EECS - 5250   ROBOTICS
[4 hours]  The concepts, theory and application of robotics.  Topics include: arm geometry, kinematics and transformation matrices, motion kinematics, dynamics of industrial robots, trajectory planning and execution, and control of robotic systems.  Prerequisite: EECS 3200

EECS - 5260   CONTROL SYSTEMS DESIGN
[3 hours]  A general study of computer-aided design of control systems.  Topics include: stability, compensation, pole placement, nonlinear systems and digital systems.  Prerequisite: EECS 4200

EECS - 5290   ELECTRIC MACHINES MODELING AND CONTROL
[3 hours]  Coupled rotating coils, Primitive machines, machine winding transformations, State space modeling of dc, synchronous and 3-phase induction machines.  Control schemes for dc motors, synchronous machines and 3-phase induction motors.  Prerequisite: EECS 3460

EECS - 5320   INDUSTRIAL IMAGING SYSTEMS
[3 hours]  Systems (cameras and other components) and techniques for machine vision (surface imaging). Nondestructive evaluation (internal inspection) of industrial materials and products, using ultrasound and radiographic systems.  Contemporary applications.  Prerequisite: PHYS 2140; EECS 3400

EECS - 5330   IMAGE ANALYSIS AND COMPUTER VISION
[3 hours]  Imaging geometry, image filtering, segmentation techniques, image representation and description, stereovision and depth measurements, texture analysis, dynamic vision and motion analysis, matching and recognition.  Prerequisite: EECS 3200, 3300

EECS - 5340   IMAGING ARCHITECTURES AND HARDWARE
[3 hours]  Study of the hardware and parallel implementation of various image processing and vision algorithms.  Topics include components of a video work station; video display hardware; pyramid, pipeline, cellular logic and artificial neural net architectures for vision and image processing; real-time imaging; systolic implementations of image processing algorithms; current advances.  Prerequisite: EECS 3100, 4330

EECS - 5360   COMMUNICATION SYSTEMS
[3 hours]  Fourier transform applications in signal analysis and communication. Signals spectra, Filtering, AM and FM modulations, Noise and optimum receiver, Sampling theorem, Multiplexing, PCM Introduction to digital modulators and demodulators.  Prerequisite: EECS 3300

EECS - 5370   INFORMATION THEORY AND CODING
[3 hours]  Coding concepts, Huffman code, Entropy analysis, Channel and mutual information, Channel capacity and Shannon�s theorems, Algebraic coding theory and application to block code and cyclic code, Introduction to convolutional code.  Prerequisite: EECS 3300

EECS - 5380   DIGITAL SIGNAL PROCESSING
[3 hours]  Discrete Fourier Transform (DFT), Discrete convolution and correlation, Fast Fourier Transform (FFT) and its applications.  Design of IIR and FIR digital filters, Multi-rate/channel digital systems, Decimation and Interpolation.  Prerequisite: EECS 3200

EECS - 5400   SOLID STATE ELECTRONICS
[3 hours]  A comprehensive treatment of the theory and operation of physical electronic devices emphasizing electrical transport in metals and semiconductors and various models of BJT�s and FET�s.  Prerequisite: EECS 3400; PHYS 3070

EECS - 5410   ELECTRO-OPTICS
[3 hours]  Course dual listed as EECS 4410.  Laser physics, optics, optical waveguides, optical communication systems and electro-optics. Design of light processing and communication systems will be considered with emphasis on optics and optical communication.  Prerequisite: EECS 3700

EECS - 5420  MICROWAVE ELECTRONICS
[3 hours]  Analysis and design of active and passive microwave components and systems. Theory and design of transmission lines, solid state and electron beam devices.  Prerequisite: EECS 3700, 3420

EECS - 5430   MICROWAVE LABORATORY
[1 hour]  Laboratory introduction to microwave and millimeter wave hardware and high frequency measurement techniques.  Corequisite: EECS 5420/7420

EECS - 5440   ANTENNA THEORY AND DESIGN
[3 hours]  Introduction to antenna theory and design emphasizing engineering aspects of antenna systems. Dipole, loop and biconical antennas, arrays, broadband and aperture antennas will be considered.  Prerequisite: EECS 3700

EECS - 5460   POWER SYSTEMS ANALYSIS
[3 hours]  Fault analysis, Transient Stability Analysis, Transmission System modeling, Distribution Networks.  Prerequisite: EECS 3460
EECS - 5470   ELECTRONIC DESIGN
[3 hours]  Principles and techniques of analog active circuit design.  Selected design problems are given; working circuits using standard parts are designed and laboratory tested.  A design notebook is kept.  Prerequisite: EECS 3200, 3420

EECS - 5480   ELECTRONIC ENERGY PROCESSING I
[3 hours]  Basic electronic power switching circuits.  Half-wave and full-wave rectification.  Characteristics of power semiconductors.  Phase-controlled reactifiers and inverters.  Isolated and non-isolated dc-dc converters.  Prerequisite: EECS 3400, 3460

EECS - 5490   ELECTRONIC ENERGY PROCESSING II
[3 hours]  Resonant dc-dc converts.  DC-AC inverters and harmonic analysis.  Variable-speed motor drives.  Laboratory design and analysis of various electronic energy processing circuits.  Prerequisite: EECS 5480

EECS - 5500   PROGRAMMING LANGUAGE PARADIGMS
[3 hours]  The course investigates the fundamentals of modern programming languages.  Differences and similarities between procedural, functional, object-oriented and rule-based languages are examined along with their impact on the programming process.  Prerequisite: EECS 1510, 2500

EECS - 5510   TRANSLATION SYSTEMS
[4 hours]  The course includes:  the design of translation systems including compilers and interpreters, grammars and parsing methods, error detection and correction schemes, and optimization techniques.  Prerequisite: EECS 3500, 1510

EECS - 5520   ADVANCED SYSTEMS PROGRAMMING
[4 hours]  This course examines pertinent concepts of systems programming.  Topics covered include:  synchronization, distributed programming models, kernel design, peripheral handling, file systems and security history and methods.  Prerequisite: EECS 2550

EECS - 5530   COMPUTER GRAPHICS I
[4 hours]  An introduction to typical computer graphics systems and their operation.  Interactive techniques will be introduced as well as representations and projections of three-dimensional images.  Exercises using graphics equipment are assigned.  Prerequisite: EECS 1050 or 1500

EECS - 5540  COMPUTER GRAPHICS II
[4 hours]  Examines current topics related to realistic and representative 3D computer graphics.  Topics include curve and surface geometry, solid modelling, raytracing, radiosity and real-time computer graphics.  Prerequisite: EECS 1510, 4530

EECS - 5550   CREATING MULTIMEDIA SOFTWARE
[4 hours]  An audio-visual experience in the design and production of multimedia products.  Investigates computer-human interfaces, performance measurement and analysis, storage/retrieval of data, and compression/decompression techniques.  Prerequisite: EECS 1510, 2550

EECS - 5560   DATABASE SYSTEMS I
[3 hours]  The following topics are covered:  relational database modelling, query languages, design issues and implementation issued of databases.  An appropriate database language is introduced and used to demonstrate principles.  Prerequisite: EECS 1510

EECS - 5570   DATABASE SYSTEMS II
[3 hours]  The emphasis of this course is on database recovery techniques, integrity constraints, and concurrency control.  The similarities and differences between distributed, networked, client/server and object-oriented database systems are also investigated.  Prerequisite: EECS 5560

EECS - 5580   SURVEY OF ARTIFICIAL INTELLIGENCE
[4 hours]  This course covers, more in breadth than in depth, the areas that artificial intelligence currently encompasses.  Topics examines:  history, reasoning, search techniques, knowledge representation, uncertainty and learning.  Prerequisite: EECS 1510

EECS - 5610   DIGITAL VLSI DESIGN I: BASIC SUBSYSTEMS
[4 hours]  CMOS process technologies.  CMOS logic families.  Custom and semicustom design.  Subsystem design; adders, counters, multipliers.  System design methods.  VLSI design tools.  Prerequisite: EECS 3400

EECS - 5620   DIGITAL VLSI DESIGN II: MEMORY AND STRUCTURED LOGIC
[3 hours]  Memory categories, functions, architectures, cells and peripheral circuitry in CMOS/BiCMOS.  Overview and technology trends in SRAMs, DRAMs, EPROMs, EEPROMs, FPGAs. Class exercises in selected small system circuit and layout design.  Prerequisite: EECS 5610/7610 or BSEE degree and consent of the instructor

EECS - 5630   PHYSICAL DESIGN OF VLSI CIRCUITS
[4 hours]  VLSI design process automation and tools.  Mask level design.  Compaction.  Module placement.  Routing area partitioning.  Loose routing, channel routing, P/G and clock routing.  Prerequisite: Graduate standing

EECS - 5920   PROJECTS
[1 - 6 hours]  Independent research project with intensive investigation into an area of practical interest to the student and the instructor.  Prerequisite: Instructor�s consent

EECS - 5930  ELECTRICAL ENGINEERING & COMPUTER SCIENCE SEMINAR
[1 hour]  All graduate students are expected to attend the seminars and to prepare a report summarizing their experiences, questions, and the impact of the seminar series. Students will also present their thesis and dissertation results.  Prerequisite: Graduate standing

EECS - 6110/8110   ADVANCED COMPUTER ARCHITECTURE
[3 hours]  Architectural development in computer systems and scability.  Processors and arithmetic algorithms.  Memory hierarchy, shared memory and cache architecture.  Pipeline, superscaler and vector organization.  Prerequisite: EECS 2100

EECS - 6120/8120   COMPUTER SYSTEMS PERFORMANCE AND RELIABILITY
[4 hours]  Relative importance of performance and reliability.  Fault-tolerance in computer systems.  Techniques for reliability modeling and analysis.  Markov and semi-Markov models.  Queueing network models of computer systems.  Performability modeling and analysis.  Prerequisite: EECS 2100; MIME 3600

EECS - 6130/8130   PARALLEL COMPUTING
[4 hours]  Survey of computer architectures and languages that support parallelism.  Analysis of algorithms for inherent parallelism.  Issues surrounding the granularity of the parallelism.  Mapping of parallel program structures to architectural topologies.  Prerequisite: EECS 2100

EECS - 6140/8140   LOGIC SYNTHESIS AND OPTIMIZATION
[3 hours]  Architectural synthesis, scheduling algorithms, resource sharing and binding, multiple-level combinational logic optimization, and sequential logic optimization.  Prerequisite: EECS 2100

EECS - 6150/8150   ADVANCED COMPUTER NETWORKS
[3 hours]  High speed LANs and MANs.  Performance analysis of Ethernet, token ring, token bus, FDDI, FDDI-II and DQDB protocols.  WANS and their routing protocols.  Flow control techniques in WANs.  Prerequisite: EECS 4180/5180

EECS - 6160/8160   B-ISDN AND ATM NETWORKS
[3 hours]  ATM overview and B-ISDN networks.  ATM adaptation layer and ATM LANs.  Issues in traffic management.  Admission control and policing.  Flow control, priority control and self-learning strategies.  Prerequisite: EECS 4180/5180

EECS - 6170/8170   PETRI NETS AND SOFTWARE RELIABILITY
[3 hours]  Petri Net structure, graphs and analysis.  Modeling with Petri Nets.  Software reliability modeling using Petri Nets and Markov chains.  Comparison of software reliability models.  Prerequisite: EECS 1510; MIME 4000

EECS - 6200/8200   DIGITAL CONTROL SYSTEMS
[3 hours]  Analysis and design of digital control systems by classical and state methods. Topics include: stability, pole placement, polynomial manipulation, quadratic optimal control and introduction to digital control system implementation.  Prerequisite: EECS 4200

EECS - 6210/8210   ADAPTIVE CONTROL SYSTEMS
[3 hours]  Schemes of adaptive control systems, MIT rule for Model Reference Adaptive Control, self Tuning regulator systems, Recursive Least Squares for system identification, Minimum Variance, PID and other controller design techniques for STR systems.  Prerequisite: EECS 6200

EECS - 6220/8220   NONLINEAR CONTROL SYSTEMS
[3 hours]  The multiple input describing function.  Random signals in nonlinear systems.  The phase plane, equilibrium points, limit cycles and linearization methods.  Liapunov stability theorems.  Optimum switching systems.  Selected applications.  Prerequisite: EECS 4200, 3300

EECS - 6230/8230   OPTIMAL CONTROL THEORY
[3 hours]  Optimization of dynamic systems by the calculus of variations and Pontryagin�s Maximum Principle.  Solution of optimal control problems using direct and indirect computational methods. Applications include constrained state and/or control parameters.  Prerequisite: EECS 4200 or permission of instructor

EECS - 6300/8300   RANDOM SIGNALS AND OPTIMAL FILTERS
[3 hours]  Description and properties of random signals and their processing by optimal filters.  Correlation and power spectra.  GRP.  Narrowband noise.  Signal detection (matched filter) and estimation (Wiener and Kalman filters).  Prerequisite: EECS 3200, 3300

EECS - 6310/8310   DIGITAL IMAGE PROCESSING
[3 hours]  Image digitization, image transforms, image enhancement, spatial and frequency domain filtering, image restoration techniques, inverse filtering, least square filtering, image interpolation and motion estimation, video filtering, superresolution.  Prerequisite: EECS 4380

EECS - 6320/8320   IMAGE DATA COMPRESSION AND CODING
[3 hours]  Mathematical preliminaries, lossless compression, Huffman and run-length coding of images, arithmetic coding, bit-place coding; lossy compression, predictive, transform, pyramid coding; vector quantization and subband coding; image compression standards, JPEG, MPEG coding.  Prerequisite: EECS 4370

EECS - 6340/8340   MODERN COMMUNICATIONS ENGINEERING I
[3 hours]  Introduction to detection and estimation and applications to the bandpass signals, Bibary and M-ary digital modulation techniques, Error-control convolutional coding, Trellis Coded Modulation (TCM), Spread Spectrum (SS) communication techniques.  Prerequisite: EECS 4360  Corequisite: EECS 6300

EECS - 6350/8350   MODERN COMMUNICATIONS ENGINEERING II
[3 hours]  Digital transmission over Gaussian/non-Faussian channels, Satellite systems (GEO and LEO) and multiple accesses, Cellular and satellite communication network, Mobile/wireless Personal communication services (PCS) and its networking.  Prerequisite: EECS 6340

EECS - 6360/8360   KNOWLEDGE BASED SYSTEMS
[3 hours]  Knowledge representation, dealing with uncertainty in knowledge-based systems.  Machine learning techniques for rule extraction.  Prerequisite: EECS 4580

EECS - 6370/8370   PATTERN RECOGNITION AND NEURAL NETWORKS
[3 hours]  Bayes decision theory, parameter estimation and supervised learning, nonparametric techniques, linear discriminant funstions, pattern recognition with neural networks, feed-forward networks, Hopfield and Kohonen networks, unsupervised learning and clustering. Prerequisite: MATH 4680

EECS - 6380  ADVANCED COMPUTATIONAL METHODS
[3 hours]  MATLAB is used to solve mathematical engineering. Reviews fundamental structural code elements, followed by case study solutions that illustrate MATLAB functionality. Individual/group projects reinforce understanding principles and methodologies. Prerequisite: Graduate standing

EECS - 6400/8400   ELECTROMAGNETIC FIELDS AND WAVES
[3 hours]  An advanced study of electostatic and magnetostatic fields and associated boundary-value problems.  Time varying fields, wave propagation, wave scattering and electromagnetic radiation will be considered.  Prerequisite: Consent of instructor

EECS - 6450/8450   DYNAMIC ANALYSIS OF SWITCHING CONVERTERS
[3 hours]  Cyclic steady-state analysis of the switching power converter using switching functions.  Dynamic modeling of the switching converter as a discrete-time system, and as a switching-period-averaged system.  Prerequisite: EECS 5490

EECS - 6500/8500   COMPUTATION, COMPUTABILITY AND COMPLEXITY
[3 hours]  Covers:  context-free languages and pushdown automata and their relationship with computer language implementation.  Turing machines and U-recursive functions are examined.  Uncomputability, the halting problem, computational complexity and NP-completeness are covered.  Prerequisite: EECS 3500

EECS - 6520/8520   OPERATING SYSTEMS DESIGN
[4 hours]  This course investigates past and present trends in the design and implementation of operating systems.  The unique requirements of real-time, highly reliable and distributed systems are addressed.  Prerequisite: EECS 2550

EECS - 6530/8530   CONCURRENT PROGRAMMING
[3 hours]  This course studies theoretical and practical issues in concurrent programming.  Topics include:  mutual exclusion, the producer-consumer problem, the dining philosophers problem, semaphores, monitors, threads and the Ada model for multi-tasking.  Prerequisite: EECS 2550

EECS - 6550/8550   SOFTWARE SPECIFICATION AND DESIGN
[3 hours]  This course covers the software development steps of specification, requirements analysis and design in depth.  Computer-human interfaces are also discussed.

EECS - 6560/8560   TOPICS IN SOFTWARE AND HUMAN ENGINEERING
[3 hours]  This course investigates issues in software engineering and human aspects of software engineering.  Topics user interfaces, programming practices, documentation, programming environments, applications, empirical methods and physical aspects.  Prerequisite: EECS 6550/8550

EECS - 6600/8600   ANALOG INTEGRATED CIRCUITS
[3 hours]  Review of SPICE-based device models and analysis techniques.  Bias and small signal design techniques in modern, low-voltage CMOS/BiCMOS.  Op-amps, comparators, and PLLs are emphasized; other topics as time permits.  Prerequisite: BSEE degree or consent of the instructor

EECS - 6620/8620   DIGITAL VLSI CMOS/BICMOS CIRCUIT DESIGN
[3 hours]  Design styles; static, dynamic, T-gate intensive; optimization of speed and robustness of selected CMOS/BiCMOS examples using SPICE-high fan in/fan out, I/O buffers, other Hi-C loads, sense amps, programming drivers, other examples as time permits.  Prerequisite: BSEE degree or consent of the instructor

EECS - 6640/8640   VLSI CHANNEL ROUTING
[4 hours]  Wiring models.  Lower bounds on routing quakity metrics.  Theory of locally optimal braking of cyclic vertical constraints.  Genetic, neural and other advanced channel routing algorithms.  Prerequisite: EECS 5640

EECS - 6660/8660   FIELD PROGRAMMABLE GATE ARRAYS
[3 hours]  Introduction to FPGA�s.  Programming technology.  Logic block architectures.  Routing architectures.  FPGA based VLSI design.  Design tools.  Prerequisite: EECS 5610/7610

EECS - 6810/8810   SOLID STATE ELECTRONICS WITH BIOENGINEERING APPLICATIONS
[3 hours]  Course is crosslisted as BIOE 6810. A comprehensive treatment of the theory and operation of physical electronic devices emphasizing electrical transport in metals and semiconductors, various models of BJT�s and FET�s, and applications to biochemical and biomechanical sensing will be considered. Prerequisite: Graduate standing

EECS - 6820/8820   MICROELECTRONIC AND MICROMECHANICAL FABRICATION
[3 hours]  Course is crosslisted as BIOE 6820. A comprehensive treatment of the theory, principles and techniques associated with microfabrication of electronic circuits and biosensors. Prerequisite: Graduate standing

EECS - 6900/8900   INDEPENDENT RESEARCH
[1 - 6 hours]  Selected topics from current EE and CSE research with intensive investigation into recent literature in an area of mutual interest to the student and the instructor.  Prerequisite: Instructor�s consent

EECS - 6960   MASTER�S GRADUATE RESEARCH AND THESIS
[1 - 9 hours]  Graduate research towards the completion of a Master�s degree.  Prerequisite: Instructor�s Consent

EECS - 6980   SPECIAL TOPICS IN ELECTRICAL ENGINEERING  & COMPUTER SCIENCE
[1 - 5 hours]  Selected topics in the field of Electrical Engineering and Computer Science in areas of special interest to the class and the professor.  Prerequisite: Consent of instructor

EECS - 6990/8990   INDEPENDENT STUDY
[1 - 3 hours]  In depth study of a selected topic of mutual interest to the student and the instructor.   Prerequisite: Instructor�s consent

EECS - 8960   DISSERTATION
[1 - 15 hours]  Graduate research towards completion of a doctoral degree.  Prerequisite: Department�s consent

EECS - 8980   CURRENT TOPICS IN ELECTRICAL ENGINEERING  & COMPUTER SCIENCE
[1 - 5 hours]  Current topics in the field of Electrical Engineering and Computer Science in areas of special interest to the class and the professor.  Students will be expected to complete a written project based on a review of the research literature of the area covered in this course. Prerequisite: Consent of instructor

Error processing SSI file

Last Updated: 6/27/22