This course provides in-depth discussions of the design and implementation issues of multiprocessor system architecture. Topics include cache coherence, memory consistency, interconnect, their interplay and impact on the design of high-performance micro-architectures.

Students develop an advanced project for the GPU platform. A GPU compute-cluster can be employed, as well as a single GPU computer. Students meet with the instructor twice a week to report the progress and the new direction is determined based on the results and the ongoing progress. Project options include: Protein folding (BLAST algorithm), Face recognition (using Open CV), 3D Image reconstruction of biomedical images, and other sophisticated image processing algorithms.

An emphasis on the wide variety of phenomena that form the basis for modern solid state devices. Topics include crystals; lattice vibrations; quantum mechanics of electrons in solids; energy band structure; semiconductors; superconductors; dielectrics; and magnets

We will describe how the principal sources of energy - coal, natural gas, impounded water (hydroelectric), and fissile materials - are exploited to create electric power, how it is transmitted and distributed through the grid and finally the patterns of its consumption. To assure that students gain a proper appreciation for the factors that determine the real cost of electricity per kilowatt-hour, the subject will be treated in a highly quantitative way. The goal will be to provide students with the information and tools they need for informed analysis of the true prospects and technological challenges involved in integration of new energy sources, such as solar, wind, geothermal, and tidal power, with the existing grid. There will be weekly homework and a midterm. Two projects with oral presentations, including a major one at the end of the semester, are required. There is no final exam. Several required field trips to local power facilities occur during the semester.

Prerequisites: Enrollment will be restricted to seniors and graduate students who possess some background in either thermodynamics or AC circuits.Last Offered: Spring 2016

The devices, circuits, and techniques of audio electronics are covered in this course. Included is a survey of small signal amplifier designs and small-signal analysis and characterization, operational amplifiers and audio applications of opamps, large-signal design and analysis methods including an overview of linear and switching power amplifiers. The course also covers the design of vacuum tube circuits, nonlinearity and distortion. Other important audio devices are also covered including microphones, loudspeakers, analog to digital and digital to analog converters, and low-noise audio equipment design principles.

Computational Methods covers basic computational techniques for the numerical solution of these problems on computers. This process involves the conversion of physical problems into mathematical boundary-value problems, the approximation of continuous problems as discrete problems, and numerical inversion of systems of equations. Applications in acoustic and electromagnetic wave propagation and scattering will be presented as motivation. Students are encouraged to adapt the techniques to their own research interests and will be expected to develop basic computer programs implementing the discussed algorithms. Applications in acoustic and electromagnetic wave propagation and scattering will be presented as motivation for the development of methods. Students are encouraged to adapt the techniques to their own research interests and will be expected to develop basic computer programs implementing the discussed algorithms.

Introduction to fundamentals of wave propagation in materials, waveguides and fibers, generation, modulation and detection of light using semiconductor devices, and elements of optocommunication systems.

Various types of typical nanophotonic structures and nanomechanical structures, fundamental optical and mechanical properties: micro/nano-resonators, photonic crystals, plasmonic structures, metamaterials, nano-optomechanical structures. Cavity nonlinearoptics, cavity quantum optics, and cavity optomechanics. Fundamental physics and applications, state-of-art devices and current research trends. This class is designed primarily for graduate students. It may be suitable for senior undergraduates if they have required basic knowledge.

The goal of this course is to learn how to model, analyze and simulate stochastic systems, found at the core of a number of disciplines in engineering, for example communication systems, stock options pricing and machine learning. This course is divided into five thematic blocks: Introduction, Probability review, Markov chains, Continuous-time Markov chains, and Gaussian, Markov and stationary random processes.

The science of networks is an emerging discipline of great importance that combines graph theory, probability and statistics, and facets of engineering and the social sciences. This course will provide students with the mathematical tools and computational training to understand large-scale networks in the current era of Big Data. It will introduce basic network models and structural descriptors, network dynamics and prediction of processes evolving on graphs, modern algorithms for topology inference, community and anomaly detection, as well as fundamentals of social network analysis. All concepts and theories will be illustrated with numerous applications and case studies from technological, social, biological, and information networks.

Prerequisites: Some mathematical maturity, comfortable with linear algebra, probability, and analysis (e.g., MTH164-165). Exposure to programming and Matlab useful, but not required.
Last Offered: Spring 2019

This course teaches the underlying concepts behind traditional cellular radio and wireless data networks as well as design trade-offs among RF bandwidth, transmitter and receiver power and cost, and system performance. Topics include channel modeling, digital modulation, channel coding, network architectures, medium access control, routing, cellular networks, WiFi/IEEE 802.11 networks, mobile ad hoc networks, sensor networks and smart grids. Issues such as quality of service (QoS), energy conservation, reliability and mobility management are discussed. Students are required to complete a semester-long research project in order to obtain in-depth experience with a specific area of wireless communication and networking.

This course will introduce the students to the basic concepts of digital image processing, and establish a good foundation for further study and research in this field. The theoretical components of this course will be presented at a level that seniors and first year graduate students who have taken introductory courses in vectors, matrices, probability, statistics, linear systems, and computer programming should be comfortable with. Topics cover in this course will include intensity transformation and spatial filtering, filtering in the frequency domain, image restoration, morphological image processing, image segmentation, image registration, and image compression. The course will also provide a brief introduction to python (ipython), the primary programming language that will be used for solving problems in class as well as take-home assignments.

Prerequisites: ECE242 and ECE440 & 446 are recommended or permission of instructor Last Offered: Spring 2019

This course will cover the latest research in the area of Wireless Sensor Networks. We will cover all aspects of these unique and important systems, from the hardware and radio architecture through protocols and software to applications. Topics will include sensor network architectures, hardware platforms, physical layer techniques, medium access control, routing, topology control, quality of service (QoS) management, localization, time synchronization, security, storage, and other advanced topics. Each student must complete a semester-long course project related to wireless sensor networks.

Introduction to the principles and implementation of diagnostic ultrasound imaging. Topics include linear wave propagation and reflection, fields from pistons and arrays, beamforming, B-mode image formation, Doppler, and elastography. Project and final report

Programming is the automation of information processing. Program analysis and transformation is the automation of programming itself---how much a program can understand and improve other programs. Because of the diversity and complexity of computer hardware, programmers increasingly depend on automation in compilers and other tools to deliver efficient and reliable software. This course combines fundamental principles and (hands-on) practical applications. Specific topics include data flow and dependence theories; static and dynamic program transformation including parallelization; memory and cache management; type checking and program verification; and performance analysis and modeling. The knowledge and practice will help students to become experts in software performance and correctness. Students taking the graduate level will have additional course requirements and a more difficult project.

Introduction to high performance integrated circuit design. Semiconductor technologies. CMOS inverter. General background on CMOS circuits, ranging from the inverter to more complex logical and sequential circuits. The focus is to provide background and insight into some of the most active high performance related issues in the field of high performance integrated circuit design methodologies, such as CMOS delay and modeling, timing and signal delay analysis, low power CMOS design and analysis, optimal transistor sizing and buffer tapering, pipelining and register allocation, synchronization and clock distribution, retiming, interconnect delay, dynamic CMOS design techniques, power delivery, on-chip regulators, 3-D technology and circuit design, asynchronous vs. synchronous tradeoffs, clock distribution networks, low power design, and CMOS power dissipation.

This course reviews the reliability challenges introduced by the multi-core billion-transistor integration era, and discusses circuit, architectural, and algorithm level solutions to address these challenges. After a brief review of IC design and layout concepts, students are introduced to the tradeoffs in continued CMOS scaling. Lectures, assigned readings, discussions, student presentations, review reports of the research literature, computer simulations and modeling, design projects of varying complexity.

This course involves the analysis and design of radio-frequency (RF) and microwave integrated circuits at the transistor level. We begin with a review of electromagnetics and transmission line theory. Several design concepts and techniques are then introduced, including Smith chart, s-parameters, and EM simulation. After the discussion of RLC circuits, high-frequency narrow-band amplifiers are studied, followed by broadband amplifiers. Then we examine the important issue of noise with the design example of low-noise amplifiers (LNA). Nonlinear circuits are studied next with the examples of mixers. A study of oscillators and phase noise follows. Afterwards we introduce phase-locked loops (PLL) and frequency synthesizers. The course concludes with an overview of transceivers architectures. The course emphasizes the development of both circuit design intuition and analytical skills. There are bi-weekly design labs and a term project using industry-standard EDA tools (ADS, Asitic, etc.).

MOSFET and bipolar device structures and models. Analysis and design of analog CMOS integrated circuits. Modern opamp design with noise, offset and distortion analysis, feedback, frequency compensation, and stability. Current mirrors and bandgap references. Sampling devices and structures. More advanced design projects and use of design aids and CAD tools (including simulation and synthesis) are included.

We begin with an overview of high speed semiconductor technologies (CMOS, SiGe, SOI, GaAs, InP, etc) and devices (MOSFET, MESFET, HEMT, HBT, and tunneling diodes), followed by discussion of device characterization and technology optimization for circuit performance. We focus on the design of wideband and high power amplifiers, which includes discussions on feedback, impedance matching, distributed amplifiers, power combining, and switching power amplifiers. The third part of the course involves the design of high speed phase locked and delay-locked loops (PLL and DLL). After a review of PLL basics, we discuss its building blocks: VCO, frequency divider, phase detector, and loop filter. We also analyze its performance, in particular phase noise, jitter, and dynamic performance, and how to improve them. Two important applications, frequency synthesis and clock recovery, serve as the examples in our discussion. Each part of the course also includes related simulation methods and measurement techniques.

Fundamentals of computational music including selected topics in modern music theory and music representation, encoding of music information by computers, musical sound representation and compression, automated music transcription, human-computer music interfaces and music informatics.

This course is a survey of audio digital signal processing fundamentals and applications. Topics include sampling and quantization, analog to digital converters, time and frequency domains, spectral analysis, vocoding, digital filters, audio effects, music audio analysis and synthesis, and other advanced topics in audio signal processing. Implementation of algorithms using Matlab and on dedicated DSP platforms is emphasized.

We will explore various computational approaches to musical problems (rule-based approaches, connectionism, dynamic systems, and probabilistic models), focusing on two main areas: 1) models of musical processing and information retrieval; 2) models of musical styles. Our focus will be on the symbolic level of music representation rather than on the signal level (there will be no signal processing in this course). Most assignments will consist of reading articles and answering questions about them. There will be some programming assignments, with other options for students without programming ability.

In this course, students will develop the ability to design programs in C, Python, Max, and Pure Data for audio/music research, computer music, and interactive performance. We will begin with an introduction to computer music and audio programming. After a quick review of C, we will use the PortSF library to generate and process basic envelopes and waveforms, and to explore the development of the table-lookup oscillator and other DSP tools. Max and Pure Data are similar visual programming languages for music and multimedia. We will use Max to explore topics in sound synthesis, signal processing, and sound analysis, as well as computer music. Python is a general-purpose programming language used in many application domains. We will use JythonMusic, a special version of Python, for music making, building graphical user interfaces, and for connecting external human interface devices. Students will practice their programming techniques through a series of programming assignments and a final project.

This course is a sequel to AME262/ECE475/TEE475 Audio Software Design I. The first part of the course will explore designing audio plug-ins with Faust (Function AUdio STream), which is a high-level functional programming language designed for real-time audio digital signal processing (DSP) and sound synthesis. Students will learn how to design plug-ins for Pro Tools, Logic and other digital audio workstations (DAWs). The second part of the course will focus on audio programming for iOS apps in Swift, which is the new programming language for iOS and OS X. Students will learn how to make musical apps with the sound engine libpd, which turns Pure Data (Pd) into an embeddable library. A special topic will introduce audio programming for video games with Wwise and FMod.

Computer audition is the study of how to design a computational system that can analyze and process auditory scenes. Problems in this field include source separation (splitting audio mixtures into individual source tracks), pitch estimation (estimating the pitches played by each instrument), streaming (finding which sounds belong to a single event/source), source localization (finding where the sound comes from) and source identification (labeling a sound source).

Prerequisites: ECE 246/446 or ECE 272/472 or other equivalent signal processing courses, and Matlab programming. Knowledge of machine learning techniques such as Markov models, support vector machines is also helpful, but not required.Last Offered: Fall 2018

This course will provide a multifaceted account of the evolution of sound technologies, starting with Edison’s invention of the phonograph in 1877 through the development of microphones, radio, magnetic tape recording, vinyl records, multitrack recording, digital audio, compact discs, the MP3 format, and online music streaming. We will discuss how technology has shaped the musical experience, and, conversely, how the performance of various genres of music, including classical, rock, jazz, hip-hop, and country, has influenced the development of audio technologies. We will also investigate, drawing from a variety of primary and secondary sources, how certain legendary recordings were produced, including those of Enrico Caruso, Bessie Smith, Les Paul, Louis Armstrong, Elvis Presley, The Beatles, Michael Jackson, and Madonna. A special topic will focus on the digital preservation and restoration of historic audio recordings.

This course covers the acoustical and psychoacoustic fundamentals of audio recording including the nature of sound, sound pressure level, frequency and pitch, hearing and sound perception, reflection, absorption and diffusion of sound, sound diffraction, room acoustics, reverberation, and studio design principles. The course also provides practical experience in audio recording including an introduction to recording studio equipment, microphones and microphone placement techniques, signal flow, amplification, analog and digital recording, analog to digital conversion, digital processing of sound, multi-track recording and an introduction to mixing and mastering. Each student is required to complete a substantive recording project at the end of the course.

This course will provide students with the tools and training to recognize convex optimization problems that arise in engineering. It will introduce basic convex optimization models (linear programming, second-order cone programming and semi-definite programming), duality theory, modern algorithms for non-smooth optimization, as well as interior point methods and robust optimization techniques. All concepts and theories will be illustrated with numerous applications from signal processing, statistical learning for data analytics, digital communication (e.g., wireless communication system design), control, circuit design, and computational geometry.

Course will cover basic topics in semiconductor device physics, electronic band structure, materials science, and magnetism with a focus on applications to new and emerging electronic device technologies. Base level knowledge will be provided to both understand existing devices and design improvements using new physics and materials. This background will serve as a jumping off point to discuss potential future electronic devices with novel properties beyond the current status quo. Topics covered: 2D electronic materials/devices, magnetic memory, spintronics, multiferroic memory, topological matter/devices.

Up until now CMOS scaling has given us a remarkable ride with little concern for fundamental limits. It has scaled multiple generations in feature size and in speed while keeping the same power densities. However,CMOS finally encounters fundamental limits. The course is intended for students interested in research frontiers of future electronics technologies. The course begins with introduction to the basic physics of magnetism and of quantum mechanical spin. Then it covers aspects of spin transport with emphasis on spin-diffusion in semiconductors. The second part of the course is comprised of student and lecturer presentations of selected spintronics topics which may include: spin transistors, magnetic random access memories, spin-based logic paradigms, spin-based lasers and light emitting diodes, magnetic semiconductors, spin-torque devices for memory applications and the spin Hall effect.

Primary and recent research in the fields of high performance digital and analog VLSI design and analysis. Provides background and insight into some of the more active performance related research topics of the field such as CMOS deisign techniques, speed/area/power tradeoffs in CMOS circuits, low power design, RLC interconnect, synchronization and clock distribution, pipelining/retiming, and many other areas.

Introduction to the scientific foundations of nanoscience and the materials science that makes it possible, and to focus on developments in three major domains of applications, electronics, photonics, and biosensing.

Prerequisites: Graduate students from other departments or qualified undergraduate students may enroll with permission of the instructor.Last Offered: Spring 2011

This course is intended for advanced graduate students (and post-docs) interested in pursuing a career as science or engineering professors. Topics to be covered include: the academic enterprise (the new challenges in the 21st century), securing a faculty position, (how to interview and negotiate), the juggling act of the assistant professor (teaching, research, service; academic freedom vs. academic duty; professional development; grant writing; achieving tenure).

Prerequisites: Restricted to advanced graduate students in engineering and the sciences who have completed at least two years of full-time study toward the Ph.D.Last Offered: Spring 2012