University of Denver

Directed StudyENCE 1992 (1 to 10 credits)

Digital DesignENCE 2101 (0 to 3 credits)

Basic logic concepts. Boolean algebra, truth tables and logic diagrams. Karnaugh maps; programmable devices including ROM's, PLA's and PAL's; data selectors and multiplexors; flip-flops, and memory design of sequential logic circuits. State diagrams, counters, latches and registers; realization of sequential and arbitrary counters; monostable multivibrators. Course includes engineering ethics. Laboratory. Prerequisite: ENEE 2021 or permission of instructor.

Directed StudyENCE 2992 (1 to 10 credits)

Advanced Digital System DesignENCE 3100 (0 or 4 credits)

Design of logic machines. Finite state machines, gate array designs, ALU and control unit designs, microprogrammed systems. Hardware design of digital circuits using SSI and MSI chips. Introduction to probability and statistics. Application of probability and stochastic processes for cache and paging performance. Laboratories incorporate specification, top-down design, modeling, implementation and testing of actual digital design systems hardware. Simulation of circuits using VHDL before actual hardware implementation. Laboratory. Prerequisite: ENCE 2101.

Intro Hi Speed Digital DesignENCE 3110 (4 credits)

Fundamental topics related to the development of high speed digital systems. Topics include signal integrity and reliability related to crosstalk, parasitic, and electromagnetic interference caused by device clocking speed and system complexity. At least junior standing required. Must be a computer or electrical engineering student.

Microprocessor Systems IENCE 3210 (4 credits)

Introduction to microprocessors and to the design and operation of computer systems. A study of the microprocessor and its basic support components. Analysis of CPU architectures of modern computers. Assembly language programming. Use of an assembler and other development tools for programming and developing microprocessor-based systems. Laboratory. Prerequisite: ENCE 2101.

Microprocessor Systems IIENCE 3220 (4 credits)

Introduction to microprocessors and to the design and operation of computer systems. A study of the microprocessor and its basic support components. Analysis CPU architectures of modern computers. Assembly language programming. Use of an assembler and other development tools for programming and developing microprocessor-based systems. Laboratory. Prerequisite: ENCE 3210.

Embedded Systems ProgrammingENCE 3231 (4 credits)

Design, construction and testing of microprocessor systems. Hardware limitations of the single-chip system. Includes micro-controllers, programming for small systems, interfacing, communications, validating hardware and software, microprogramming of controller chips, design methods and testing of embedded systems. Prerequisite: ENCE 3220.

Computer OrganizationENCE 3241 (3 credits)

Organization of digital computers; memory, register transfer and datapath; Arithmetic Logic Unit; computer architecture; control unit; I/O systems. Prerequisite: ENCE 2101.

HDL Modeling & SynthesisENCE 3250 (3 credits)

Introduction to Hardware Design Language (HDL). Language syntax and synthesis. Applications related to digital system implementation are developed. Project. Prerequisite: ENCE 2101 or instructor's permission.

Fault Tolerant ComputingENCE 3261 (3 credits)

Basic concepts of dependable computing. Reliability of nonredundant and redundant systems. Dealing with circuit-level defects. Logic-level fault testing and tolerance. Error detection and correction. Diagnosis and reconfiguration for system-level malfunctions. Degradation management. Failure modeling and risk assessment.

Network DesignENCE 3321 (4 credits)

Introduction to network components. Layering of network architecture. Analysis of Local Area Network (LAN) concepts and architecture based on IEEE standards. Design principles including switching and multiplexing techniques, physical link, signal propagation, synchronization, framing and error control. Application of probability and statistics in error detecting and control. Ethernet, Token-ring, FDDI (Fiber Distributed Data Interface), ATM (Asynchronous Transfer Mode), ISDN (Integrated Service Data Networks). Prerequisite: ENEE 3111, ENCE 2101 or permission of instructor.

VLSI DesignENCE 3501 (3 credits)

Design of Very Large Scale Integration systems. Examination of layout and simulation of digital VLSI circuits using a comprehensive set of CAD tools in a laboratory setting. Studies of layouts of CMOS combinational and sequential circuits using automatic layout generators. Fundamental structures of the layout of registers, adders, decoders, ROM, PLA's, counters, RAM and ALU. Application of statistics and probability to chip performance. CAD tools allow logic verification and timing simulation of the circuits designed. Prerequisite: ENCE 3220.

Multimedia SystemsENCE 3610 (3 credits)

Interactive multimedia technologies include hardware, software, standards, concepts and issues, compression, decompression, user interface design, query by content, multimedia indexing, and distributed multimedia.

Computer VisionENCE 3620 (4 credits)

This course is an introduction to the basic concepts in image processing and computer vision. First, an introduction to low-level image analysis methods, including radiometry and geometric image formation, edge detection, feature detection, and image segmentation are presented. Then, geometric-based image transformations (e.g., image warping and morphing) for image synthesis will be presented in the course. Furthermore, methods for reconstructing three-dimensional scenes including camera calibration, Epipolar geometry, and stereo feature matching are introduced. Other important topics include optical flow, shape from shading, and three-dimensional object recognition. In conclusion, students learn and practice image processing and computer vision techniques that can be used in other areas such as robotics, pattern recognition, and sensor networks. Prerequisite: ENEE 3311.

Pattern RecognitionENCE 3630 (4 credits)

This class provides an introduction to classical pattern recognition. Pattern recognition is the assignment of a physical object or event to one of several prescribed categories. Applications includes automated object recognition in image and videos, face identification, and optical character recognition. Major topics include Bayesian decision theory, Parametric estimation and supervised learning, Linear discriminant functions, Nonparametric methods, Feature extraction for representation and classification, Support Vector Machines.

Topics in Computer EngineeringENCE 3830 (1 to 5 credits)

Special topics in computer engineering as announced. May be taken more than once. Prerequisite: varies with offering.

Independent StudyENCE 3991 (1 to 5 credits)

Topics in computer engineering investigated under faculty supervision. May be taken more than once. Students must obtain and complete an Independent Study form from the Office of the Registrar. Prerequisite: permission of instructor.

Directed StudyENCE 3992 (1 to 10 credits)

Independent ResearchENCE 3995 (1 to 10 credits)

High Speed Digital DesignENCE 4100 (4 credits)

Fundamental topics related to the development of high speed digital systems. Topics include signal integrity and reliability related to crosstalk, parasitic, and electromagnetic interference caused by device clocking speed and system complexity. Project.

Modern Digital Systems DesignENCE 4110 (4 credits)

This course focuses on the design of digital systems using combinational, sequential, and programmable logic devices and Hardware Description Languages (HDL). Techniques for logic design including asynchronous logic, physical world interfaces to digital systems, and system performance analysis methods are studied. Students also learn HDL-Verilog to program CPLD devices and FPGA systems.

Embedded Systems ProgrammingENCE 4231 (4 credits)

Design, construction and testing of microprocessor systems. Hardware limitations of the single-chip system. Includes micro-controllers, programming for small systems, interfacing, communications, validating hardware and software, microprogramming of controller chips, design methods and testing of embedded systems.

Adv HDL Modeling & SynthesisENCE 4250 (4 credits)

This course covers advanced concepts in Hardware Description and Language (HDl) modeling and Synthesis. It covers topics including but not limited to digital system design, simulation, and synthesis using Verilog HDL and VHDL. The course also covers RTL design, behavioral description, system Verilog, and timing analysis using CAD tools.

Advanced VLSI DesignENCE 4501 (4 credits)

Advanced techniques in the fabrication and design of VLSI circuits and systems. Modeling of parasitic components. Floor-planning, clock distribution, routing, and low power design. Prerequisite: ENCE 3501 or permission of instructor.

Advanced Computer VisionENCE 4620 (4 credits)

This course covers advanced concepts in image processing and computer vision including but not limited to image radiometry and geometric formation, edge detection, geometric based transformations (e.g., image warping and morphing), camera calibration, Epipolar geometry, and stereo feature matching. Other advanced topics include optical flow, shape from shading, and three-dimensional object recognition. In conclusion, students learn and practice advanced topics in image processing and computer vision techniques that can be used in other areas such as robotics, pattern recognition, and sensor networks. Prerequisite: ENEE 3311.

Advanced Pattern RecognitionENCE 4630 (4 credits)

This class covers advanced topics in pattern recognition including but not limited to Bayesian decision theory, parametric estimation and supervised learning, linear discriminant functions, nonparametric methods, feature extraction for representation and classification, manifold learning, bag of words, and Support Vector Machines.

Time-Frequency Signal AnalysisENCE 4680 (4 credits)

This course focuses on time-frequency signal processing methods. Many TFRs and their usefulness in many applications is covered. Course topics include: signals and signal properties; uncertainty principle. Review of 1-D transforms: Fourier transform (FT), group delay, instantaneous frequency. Desirable properties: linear vs. quadratic TFRs. Linear TFRs: Short-timer Fourier transform (STFT); Wavelet transform; filter banks. Spectrogram: relation to STFT; tradeoff between TF resolution and cross-term attenuation; application examples. Wignor distribution (WD): definition; properties; signal examples; relation to narrowband ambiguity function; cross-term geometry; applications; Smoothed WDs. Scalogram: relation to wavelet transform; properties; TF resolution' applications. Adaptive TRFs: adaptive spectrogram; positive TRFs; short-time techniques; time-frequency distribution series. Reassignment method; matching pursuit algorithms. TFRs in real-world applications: wireless communications, biomedicine, radar, sonar, detection, estimation, classification, speech processing, image processing, structural health monitoring, and many more. Prerequisite: basic knowledge of signal and systems, and digital signal processing, or permission of instructor.

Advanced Topics (CPE)ENCE 4800 (1 to 5 credits)

Various topics in computer engineering as announced. May be taken more than once.

Machine LearningENCE 4900 (4 credits)

This course provides a broad introduction to machine learning. Topics include: supervised learning (linear regression, logistic regression, parametric/non-parametric, neural networks, support vector machines); unsupervised learning (clustering, dimensionality reduction, kernel methods); anomaly detection and recommender systms. The course also discusses recent applications of machine learning. Recommended prerequisite: basic probability theory and statistics.

Independent StudyENCE 4991 (1 to 10 credits)

Directed StudyENCE 4992 (1 to 10 credits)

Independent ResearchENCE 4995 (1 to 18 credits)