Electrical and Computer Engineering

All courses are 3 credits unless otherwise noted.

ECE 502. Analysis of Probabilistic signals and systems
Applications of probability theory and its engineering applications. Random variables, distribution and density functions. Functions of random variables, moments and characteristic functions. Sequences of random variables, stochastic convergence and the central limit theorem. Concept of a stochastic process, stationary processes and ergodicity. Correlation functions, spectral analysis and their application to linear systems. Mean square estimation. (Prerequisite: Undergraduate course in signals and systems.)

ECE 503. Digital Signal Processing

Discrete-time signals and systems, frequency analysis, sampling of continuous time signals, the z-transform, implementation of discrete time systems, the discrete Fourier transform, fast Fourier transform algorithms, filter design techniques. (Prerequisites: Courses in complex variables, basic signals and systems.)

ECE 504. Analysis of Deterministic Signals and Systems

Review of Fourier series and linear algebra. Fourier transforms, Laplace transforms, Z transforms and their interrelationship. State space modeling of continuous-time and discrete-time systems. Canonical forms, solution of state equations, controllability, observability and stability of linear systems. Pole placement via state feedback, observer design, Lyapunov stability analysis. (Prerequisite: Undergraduate course in signals and systems.)

ECE 505. Computer Architecture

This course introduces the fundamentals of computer system architecture and organization. Topics include CPU structure and function, addressing modes, instruction formats, memory system organization, memory mapping and hierarchies, concepts of cache and virtual memories, storage systems, standard local buses, high-performance I/O, computer communication, basic principles of operating systems, multiprogramming, multiprocessing, pipelining and memory management. The architecture principles underlying RISC and CISC processors are presented in detail. The course also includes a number of design projects, including simulating a target machine, architecture using a high-level language (HLL). (Prerequisites: Undergraduate course in logic circuits and microprocessor system design, as well as proficiency in assembly language and a structured high-level language such as C or Pascal.)

ECE 506/CS513. Introduction to Local and Wide Area Networks

This course provides an introduction to the theory and practice of the design of computer and communications networks, including the ISO seven-layer reference model. Analysis of network topologies and protocols, including performance analysis, is treated. Current network types and evolving network technologies are introduced, including local, metropolitan and wide area networks. The theory, design and performance of local area networks are emphasized. The course includes an introduction to queueing analysis and network programming. (Prerequisites: A knowledge of the C programming language is assumed. CS 504 or ECE 502 or equivalent background in probability; may be taken concurrently. NOTE: Students who receive credit for ECE 573 may not receive credit for ECE 506.)

ECE 512. Acoustic and Ultrasound Engineering

Fundamentals of vibration. The acoustic wave equation, transmission phenomena, absorption and attenuation. Radiation from acoustic sources, dipole and line source radiation, planar piston source, radiation patterns, beam width, directivity, fields from pulsed transducers, Green's function, diffraction, reciprocity. Techniques for ultrasound modeling. Acoustic waveguides. Ultrasound transducer types and transducer modeling. Transducer characterization and calibration. Acoustic measurement techniques. (Prerequisites: ECE 502 and ECE 504 or equivalent, undergraduate course in modern signal theory, undergraduate course in E/M field theory, or permission of the instructor.)

ECE 514 Fundamentals of RF and MW Engineering

This introductory course develops a comprehensive understanding of Maxwell's field theory as applied to high-frequency radiation, propagation and circuit phenomena. Topics include radiofrequency (RF) and microwave (MW) propagation modes, transmission line aspects, Smith Chart, scattering parameter analysis, microwave filters, matching networks, power flow relations, unilateral and bilateral amplifier designs, stability analysis, oscillators circuits, mixers and microwave antennas for wireless communication systems. (Prerequisites: ECE 504 or equivalent, undergraduate course in electromagnetic field analysis.)

ECE 523. Power Electronics

The application of electronics to energy conversion and control. Electrical and thermal characteristics of power semiconductor devices—diodes, bipolar transistors and thyristors. Magnetic components. State-space averaging and sampled-data models. Emphasis is placed on circuit techniques. Application examples include dc-dc conversion, controlled rectifiers, high-frequency inverters, resonant converters and excitation of electric machines. (Prerequisites: ECE 3204 and undergraduate courses in modern signal theory and control theory; ECE 504 is recommended.)

ECE 524. Advanced Analog Integrated Circuit Design

This course is an advanced introduction to the design of analog and mixed analog-digital integrated circuits for communication and instrumentation applications. An overview of bipolar and CMOS fabrication processes shows the differences between discrete and integrated circuit design. The bipolar and MOS transistors are reviewed with basic device physics and the development of circuit models in various operating regions. The use of SPICE simulation in the design process will be covered. Integrated amplifier circuits are developed with an emphasis on understanding performance advantages and limitation in such areas as speed, noise and power dissipation. Simple circuits are combined to form the basic functional building blocks such as the op-amp, comparator, voltage reference, etc. These circuit principles will be explored in an IC design project, which may be fabricated in a commercial analog process. Examples of possible topics include sample-andhold (S/H) amplifier, analog-to-digital (A/D) and digital-to-analog (D/A) converters, phase-locked loop (PLL), voltage-controlled oscillator, phase detector, switched capacitor and continuous-time filters, and sampled current techniques. (Prerequisite: Background in analog circuits both at the transistor and functional block [op-amp, comparator, etc.] level. Also familiarity with techniques such as small-signal modeling and analysis in the s-plane using Laplace transforms. Undergraduate course equivalent background ECE 3204; ECE 4902 helpful but not essential.)

ECE 529.Selected Topics in Electronic System Design

Courses in this group are devoted to the study of advanced topics in electronic system design. See the Supplement section of the on-line catalog for descriptions of courses to be offered in this academic year.

ECE 530/CS 530. High Performance Networks

This course is an in-depth study of the theory, design and performance of high-speed networks. Topics include specifi c high-performance network architectures and protocols and emerging technologies including multimedia networks and quality-of- service issues. Topics associated with interconnecting networks such as bridges and routers will also be discussed. Performance analysis of networks will include basic queueing models. (Prerequisite: ECE 506/ CS 513.)

ECE 531. Principles of Detection and Estimation Theory

Detection of signals in noise, optimum receiver principles, M-ary detection, matched filters, orthogonal signals and representations of random processes. MAP and maximum likelihood estimation. Wiener filtering and Kalman filtering. Channel considerations: prewhitening, fading and diversity combining. (Prerequisites: ECE 502 and ECE 504 or equivalent.)

ECE 5311. Information Theory and Coding

This course introduces the fundamentals of information theory and discusses applications in compression and transmission of data. Measures of information, including entropy, and their properties are derived. The limits of lossless data compression are derived and practical coding schemes approaching the theoretical limits are presented. Lossy data compression tradeoffs are discussed in terms of the rate-distortion framework. The concept of reliable communication through noisy channels (channel capacity) is developed. Techniques for practical channel coding, including block and convolutional codes, are also covered. (Prerequisite: background in probability and random processes such as in ECE502 or equivalent).

ECE 535. Telecommunications Transmission Technologies

This course introduces the principle technologies used to implement the physical networking layer. These include high-speed electronic pulse shapers and receivers, optical sources, detectors, fiber media, active optical elements, RF devices and systems, and the related protocols and modulation schemes for reliable and multi-user communications (time, frequency, space and code-division multiplexing, error correction coding, spectral reuse, and so on). The course includes laboratory experiments. (Prerequisites: ECE 502 or CS 504; undergraduate-level understanding of signal and circuit theory.)

ECE 537/CS 577. Advanced Computer and Communications Networks

This course covers advanced topics in the theory, design and performance of computer and communication networks. Topics will be selected from such areas as local area networks, metropolitan area networks, wide area networks, queuing models of networks, routing, flow control, new technologies and protocol standards. The current literature will be used to study new networks concepts and emerging technologies. (Prerequisite: ECE 506/CS 513 and ECE 581/CS 533.)

ECE 538. Wireless Information Networks

Overview of wireless information networks and personal communications systems: digital cellular, wireless PBX, cordless phone, wireless LAN, and mobile data, multimedia wireless and directions of the future. Radio propagation modeling for urban and indoor radio channels, coverage interface and cell size. Modulation techniques for efficient use of bandwidth resources. Methods to increase the data rate: antenna diversity and sectorization, adaptive equalization, multirate transmission and multiamplitude phase modulation. Spread spectrum for digital cellular, personal communications and wireless LAN applications. TDMA, CDMA, ALOHA, and CSMA, DECT, GSM, USDC, JDC, IEEE 802.11, WINForum, and HIPERLAN. (Prerequisite: Background in networks. Familiarity with probability, statistics and signal processing).

ECE 539. Selected Topics in Communication Theory and Signal Processing

Courses in this group are devoted to the study of advanced topics in in Communication Theory and Signal Processing. See the Supplement section of the on-line catalog for descriptions of courses to be offered in this academic year.

ECE 545/CS 545. Digital Image Processing

  See CS 545 course description.

ECE 549. Selected Topics in Control

Courses in this group are devoted to the study of advanced topics in the formulation and solution of theoretical or practical problems in modern control. See the supplement section of the on-line catalog for descriptions of courses to be offered in this academic year.

ECE 559. Selected Topics in Energy Systems

Courses in this group are devoted to the study of advanced topics in energy systems. Typical topics include optimal power flow, probability methods in power systems analysis, surge phenomena, design of electrical apparatus, transient behavior of electric machines and advanced electromechanical energy conversion. See the supplement section of the on-line catalog for descriptions of courses to be offered in this academic year.

ECE 566. VLSI Design

VLSI Design introduces computer engineers and computer scientists to the techniques, methodologies and issues involved in conceptual and physical design of complex digital integrated circuits. The course presupposes knowledge of computer systems and hardware design such as found in ECE 505, but does not assume detailed knowledge of transistor circuits and physical electronics. (Prerequisite: ECE 505 or equivalent.)

ECE 569. Selected Topics in Solid State

Courses in this group are devoted to the study of advanced topics in solid state, for example: degenerate semiconductors, many-body theory, elastic effects and phonon conduction, and solar cells. To reflect changes in faculty research interests, these courses may be modified or new courses may be added. See the supplement section of the on-line catalog for descriptions of courses to be offered in this academic year.

ECE 572/CS 514. Advanced Systems Architecture

This course covers techniques such as caching, hierarchical memory, pipelining and parallelism, that are used to enhance the performance of computer systems. It compares and contrasts different approaches to achieving high performance in machines ranging from advanced microprocessors to vector supercomputers (CRAY, CYBER). It also illustrates how these techniques are applied in massively parallel SIMD machines (DAP, Connection Machine). In each case the focus is on the combined hardware /software performance achieved and the interaction between application demands and hardware/software capabilities. (Prerequisites: This course assumes the material covered in ECE 505. The student should also have a background in computer programming and operating systems (CS 502). Familiarity with basic probability and statistics such as ECE 502 or MA 541 is recommended.)

ECE 574. Modeling and Synthesis of Digital Systems Using Verilog and VHDL

This is an introductory course on Verilog and VHDL, two standard hardware description languages (HDLs), for students with no background or prior experience with HDLs. In this course we will examine some of the important features of Verilog and VHDL. The course will enable students to design, simulate, model and synthesize digital designs. The dataflow, structural, and behavioral modeling techniques will be discussed and related to how they are used to design combinational and sequential circuits. The use of test benches to exercise and verify the correctness of hardware models will also be described. Course Projects: Course projects will involve the modeling and sysntesis and testing of systems using Xilinx tools. We will be targeting Xilinx FPGA and CPLDs. Students will need to purchase a FPGA or CPLD development board for project assignments. (Other VHDL tools may be used if these are available to the student at their place of employment.) Students will have the choice of completing assignments in either Verilog or VHDL. Prerequisites: Logic Circuits and experience with programming in a high-level language (such as C or Pascal) and a computer architecture course such as ECE 505.

ECE 578/CS 578. Cryptography and Data Security

This course gives a comprehensive introduction to the field of cryptography and data security. The course begins with the introduction of the concepts of data security, where classical algorithms serve as an example. Different attacks on cryptographic systems are classified. Some pseudo-random generators are introduced. The concepts of public and private key cryptography are developed. As important representatives for secret key schemes, DES and IDEA are described. The public key schemes RSA and ElGamal, and systems based on elliptic curves are then developed. Signature algorithms, hash functions, key distribution and identification schemes are treated as advanced topics. Some advanced mathematical algorithms for attacking cryptographic schemes are discussed. Application examples will include a protocol for security in a LAN and a secure smart card system for electronic banking. Special consideration will be given to schemes which are relevant for network environments. For all schemes, implementation aspects and up-to-date security estimations will be discussed. (Prerequisites: Working knowledge of C; an interest in discrete mathematics and algorithms is highly desirable. Students interested in a further study of the underlying mathematics may register for MA 4891 [B term], where topics in modern algebra relevant to cryptography will be treated.)

ECE 579. Selected Topics in Computer Engineering

Courses in this group are devoted to the study of advanced topics in computer engineering such as real-time intelligent systems, VLSI design and high-level languages. See the supplement section of the on-line catalog for descriptions of courses to be offered in this academic year.

ECE 581/CS 533. Modeling and Performance Evaluation of Network and Computer Systems

Methods and concepts of computer and communication network modeling and system performance evaluation. Stochastic processes; measurement techniques; monitor tools; statistical analysis of performance experiments; simulation models; analytic modeling and queueing theory; M/M, Erlang, G/M, M/G, batch arrival, bulk service and priority systems; work load characterization; performance evaluation problems. (Prerequisites: CS 504 or ECE 502, or equivalent background in probability.)

ECE 596A and ECE 596B. Graduate Seminars

The presentations in the graduate seminar series will be of tutorial nature and will be presented by recognized experts in various fields of electrical and computer engineering. All full-time graduate students will be required to take both seminar courses, ECE 596A and ECE 596B, once during their graduate studies in the Electrical and Computer Engineering Department. The course will be given Pass/Fail. (Prerequisite: Graduate standing.)

ECE 597. Independent Study
Approved study of a special subject or topics selected by the student to meet his or her particular requirements or interests. Can be technical in nature, or a review of electrical and computer engineering history and literature of importance and permanent value. (Prerequisite: B.S. in ECE or equivalent.)

ECE 598. Directed Research
Each student will work under the direct supervision of a member of the department staff on an experimental or theoretical problem which may involve an extensive literature search, experimental procedures and analysis. A comprehensive report in the style of a technical report or paper and an oral presentation are required. (A maximum of two registrations in ECE 598 is permitted.) (Prerequisite: Graduate standing.)

ECE599. Thesis

ECE 630. Advanced Topics in Signal Processing

The course will cover a set of important topics in signal and image analysis: orthogonal signal decomposition, wavelet transforms, analytic signals, time-frequency estimation, 2D FT, Hankel transform and tomographic reconstruction. In addition, the course will each year have selected current topics in signal processing, e.g., ambiguity functions in RADAR and SONAR, coded waveforms, Fourier based beamforming for 2D arrays and single value decomposition. In place of a final exam, there will be a student project. The course is intended for students working in areas such as image analysis, NDE, ultrasound, audio, speech, RADAR, SONAR and date compression. Signal/image theory and applications will be emphasized over coding; however, Matlab-based modules for self-paced signal/image visualization and manipulation will be part of the course. (Prerequisites: ECE 504 Analysis of Deterministic Signals and Systems, undergraduate course in linear systems theory and vector calculus.)

ECE 673. Advanced Cryptography

This course provides deeper insight into areas of cryptography which are of great practical and theoretical importance. The three areas treated are detailed analysis and the implementation of cryptoalgorithms, advanced protocols, and modern attacks against cryptographic schemes. The first part of the lecture focuses on public key algorithms, in particular ElGamal, elliptic curves and Diffie- Hellman key exchange. The underlying theory of Galois fields will be introduced. Implementation of performance security aspects of the algorithms will be looked at. The second part of the course deals with advanced protocols. New schemes for authentication, identification and zero-knowledge proof will be introduced. Some complex protocols for real-world application— such as key distribution in networks and for smart cards—will be introduced and analyzed. The third part will look into state-of-the-art cryptoanalysis (i.e., ways to break cryptosystems). Brute force attacks based on special purpose machines, the baby-step giant-step and the Pohlig-Hellman algorithms will be discussed. (Prerequisites: ECE 578/ CS 578 or equivalent background.)

ECE699 Ph.D. Dissertation

Maintained by webmaster@wpi.edu