Engineering, Computer (ENCE)
ENCE 3231 Embedded Systems Programming (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 3210.
ENCE 3250 HDL Modeling & Synthesis (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.
ENCE 3261 Fault Tolerant Computing (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.
ENCE 3321 Network Design (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.
ENCE 3501 VLSI Design (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. Cross listed with ENCE 4501. Prerequisite: ENCE 3231.
ENCE 3620 Computer Vision (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. Cross listed with ENCE 4620. Prerequisite: ENEE 3311.
ENCE 3630 Pattern Recognition (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. Cross listed with ENCE 4630.
ENCE 3631 Machine Learning (4 Credits)
This class covers topics in machine learning including but not limited to Bayesian decision theory, supervised learning, unsupervised learning and clustering, linear discriminant functions, deep learning, neural networks, linear classification techniques, manifold learning, bag of words, and Support Vector Machines. Cross listed with ENCE-4631.
ENCE 4100 High Speed Digital Design (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. Cross listed with ENCE 3110.
ENCE 4110 Modern Digital Systems Design (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. Cross listed with ENCE 3100.
ENCE 4210 Microprocessor Systems I (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. Cross listed with ENCE 3210.
ENCE 4231 Embedded Systems Programming (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.
ENCE 4250 Advanced Hardware Description Language (HDL) Modeling and Synthesis (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.
ENCE 4501 Advanced VLSI Design (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. Cross listed with ENCE 3501. Prerequisite: ENCE 3501 or permission of instructor.
ENCE 4601 Detection and Estimation Theory (4 Credits)
The subject of the detection and estimation theory course is on signal and information processing for the purpose of making desired inferences. The purpose of this course is to provide the fundamentals of theory and principles underlying the techniques for such processing. The following topics are involved in this course: receiver operating characteristics, hypothesis testing, Neyman-Pearson theorem, detection of deterministic signals with known parameters in Guassian noise, matched filters principles, detection of random signals with known characteristics, estimator-correlator, linear models, estimation bias, variance, Cramer-Rao bounds and Fisher matrix, Bayesian estimation, maximum likelihood estimation, minimum mean-squared estimation, detection of deterministic signals with unknown parameters, signal parameter estimation, Bayesian approach and generalized likelihood ratio test, detection of random signals with unknown characteristics, unknown noise parameters; signal processing applications. Prerequisite: basic understanding of probability theory and statistics, or permission of instructor.
ENCE 4620 Advanced Computer Vision (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. Cross listed with ENCE 3620. Prerequisite: ENEE 3311.
ENCE 4630 Advanced Pattern Recognition (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. Cross listed with.
ENCE 4680 Time-Frequency Signal Analysis (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. Prerequisites: basic knowledge of signal and systems, and digital signal processing, or permission of instructor.
ENCE 4800 Advanced Topics (CPE) (1-5 Credits)
ENCE 4900 Machine Learning (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 systems. The course also discusses recent applications of machine learning. Recommended prerequisite: basic probability theory and statistics.
ENCE 4991 Independent Study (1-10 Credits)
ENCE 4992 Directed Study (1-10 Credits)
ENCE 4995 Independent Research (1-18 Credits)
ENCE 5995 Independent Research (1-18 Credits)