Courses
FPGA and ASIC Design
Overview of Computer Aided Design tool flow for ASIC and FPGA Design. Synthesis from hardware description languages and creation of finite state machines. Differences between FPGA and ASIC design flows. Exploration of concepts in several projects.
Advanced Computer Architecture
This course examines computer design trade-offs. The topics covered include: advanced processor designs, such as superscalar and out-of-order execution, advanced memory systems, such as non-blocking caches, and multiporting/banking and alternative virtual memory implementations, I/O systems, interconnects, introduction to multiprocessor architectures, performance and cost metrics, and benchmarking
Communications Networks
Basic techniques for modeling and analyzing communication networks. Topics include overview telephone and cellular, and computer networks, layered network architectures and models, protocol specification and correctness, queuing models, loss networks, multi-class queues and scheduling, graph-based and flow-based routing, and congestion control.
Communications Design Lab
Lab activities that complement the ECEN 331 and ECEN 462 courses. The lab covers the fundamental elements of communications systems hardware; use of measurement instruments typically encountered in communication systems, analog and digital communication systems including; Amplitude Modulation types and demodulation, angle modulation and demodulation, sampling and quantization, and Pulse code
Digital Signal Processing
The course addresses the mathematics, implementation, design and application of the digital signal processing algorithms used in areas such as multimedia telecommunications and speech and image processing. Topics include discrete-time signals and systems, discrete-time Fourier transforms, Z- transforms and fast Fourier transform, digital filter design and implementation, and multi-rate signal
Embedded & Discrete Control Systems
The course introduces principles for design of embedded controllers and emphasizes the tools for modeling and simulating dynamic systems and designing the real-time control software for embedded computers. Relevant theory and background from real-time systems and control engineering are covered, including event-based and clock-based sampling, switching control, pulse-width modulation, PID design
Selected Topics in Computer Engineering
This course is tailored to introduce students to the latest advances in the various fields in computer engineering, and/or to focus on a specific area of particular interest to the discipline.
Introduction To Computer Architecture
This course introduces the basic hardware structure of a programmable computer and the basic laws underlying performance evaluation. The student learns how to design the control and data path hardware for a processor, how to make machine instructions execute simultaneously through pipelining and simple superscalar execution, and how to design fast memory and storage systems. The principles
Embedded Real-Time Systems
This practical hands-on course introduces the various building blocks and principles behind embedded real-time systems. The course covers the integrated hardware and sotware aspects of embedded processor architectures, along with topics such as real-time, resource/device and memory management, interaction with devices (buses, memory architectures, memory management, device drivers), concurrency
Numerical Methods and Mathematical
Precision of Floating Numbers
Introduction to numerical methods; numerical differentiation, numerical integration, solution of ordinary and partial differential equations. Consequences of limited precision computing. Students write programs in C++, C, or Matlab using methods presented in class.
Compiler Construction
Overview of compilers and context-free languages, top-down parsing, LL(1) parser construcTon, translation grammars, implementation of lexical analyzer, parser and translator, compiler optimization, error handling, and recovery.
Analog Integrated Circuit Design
The Course teaches methods used in the design and analysis of analog integrated circuits, illustrating how to approach design problems in general, and exposing the students to a broad cross-section of analog circuit topologies. The course focuses on learning design through carrying out design projects. Design and implementation details of wide-band amplifiers, operational amplifiers, continuous
Digital Integrated Circuit Design
This course is intended to provide the student with IC design experience. The emphasis is on the IC design process as a whole. The aim is to reach an optimal design through oprimization of a number of variables ranging from the choice of architecture to the details of the IC layout. Typical performance criteria of the design are: throughput, power, signal-to-noise ratio, clock frequency, and
Micro and Nano Systems Fabrication
This course introduces students to the process flow and design methodology for integrated systems fabrication. The course highlights the basic unit processes of micro and nano systems fabrication: deposition, paderning, and etching. Students are exposed to examples from: Semiconductor device fabrication; MicroElectroMechanical systems (MEMS) fabrication; MagneTc device fabrication, and optical
Antenna and Propagation
Radio Frequency Integrated Circuit Design
and Implementation
The course covers the design and analysis of radio frequency integrated circuits at the transistor level using CMOS and bipolar technologies. It focuses on system-level trade-offs in transceiver design, practical RF circuit techniques, and physical understanding of device parasitics. Models for active devices, passive components and interconnect parasitics are examined. The course also covers