Computer Engineering Classes that were scheduled 2002-2007
Instructor | Course Name | F02 | Sp03 | F03 | Sp04 | F04 | Sp05 | F05 | Sp06 | F06 | Sp07 |
Ghosh | EE380L Pract Data Min | XXX | |||||||||
Ghosh | EE380L-10 Data Mining | XXX | XXX | XXX | XXX | ||||||
Chase | EE380L-5 Eng Prog Lan | XXX | XXX | XXX | XXX | XXX | |||||
Aggarwal | EE380L-7 Pattern Rec | XXX | XXX | XXX | XXX | ||||||
Aggarwal | EE380L-8 Adv Comp. Vis | XXX | XXX | XXX | XXX | ||||||
Perry | EE382C-10 Emp Studies | XXX | XXX | XXX | XXX | ||||||
Khurshid | EE382C-3 Val/Ver Soft. | XXX | XXX | XXX | XXX | XXX | |||||
Barber | EE382C-7 Soft Arch | XXX | |||||||||
Jacome | EE382C-8 HW/SW Codes | XXX | XXX | ||||||||
Evans | EE382C-9 Emb SW Sys | XXX | |||||||||
Touba | EE382M-1 VLSI Testing | XXX | XXX | ||||||||
Aziz | EE382M-10 Syn Dig Sys | XXX | XXX | ||||||||
Aziz | EE382M-11 Verification | XXX | |||||||||
Ambler | EE382M-12 Sys Des Met | XXX | |||||||||
Touba | EE382M-13 Digital IC | XXX | XXX | XXX | XXX | XXX | |||||
Yan | EE382M-14 Analog IC | XXX | XXX | XXX | XXX | XXX | |||||
John | EE382M-15 Comp Perf | XXX | XXX | XXX | |||||||
Swanson | EE382M-19 Mix-Sig Des | XXX | XXX | XXX | XXX | XXX | |||||
Touba | EE382M-2 Depend Comp | XXX | XXX | ||||||||
Abraham | EE382M-7 VLSI I | XXX | XXX | XXX | XXX | ||||||
Aziz | EE382M-7 VLSI I | XXX | XXX | XXX | |||||||
Pan | EE382M-7 VLSI I | XXX | |||||||||
Tupuri | EE382M-7 VLSI I | XXX | |||||||||
McDermott | EE382M-8 VLSI II | XXX | XXX | XXX | XXX | XXX | XXX | ||||
Devgan | EE382M-9 Sim Met VLSI | XXX | |||||||||
Chase | EE382N-10 PaCompArch | XXX | XXX | ||||||||
Chiou | EE382N-10 PaCompArch | XXX | XXX | XXX | |||||||
Garg | EE382N-11 Dist. Sys I | XXX | XXX | XXX | XXX | XXX | |||||
Swartzlander | EE382N-14 High-Speed I | XXX | XXX | XXX | XXX | XXX | |||||
Swartzlander | EE382N-15 High-Speed II | XXX | XXX | ||||||||
Bard | EE382N-16 Net Security | XXX | XXX | ||||||||
John | EE382N-17 Superscalar | XXX | XXX | XXX | |||||||
Garg | EE382N-18 Dist. Sys II | XXX | |||||||||
Patt | EE382N-19 Microarch | XXX | XXX | ||||||||
Lipovski | EE382N-4 Adv Emb Mic | XXX | XXX | ||||||||
Nettles | EE382N-5 Net Protocols | XXX | XXX | XXX | XXX | XXX | |||||
Ghosh | EE382V Adv Data Min | XXX | |||||||||
Gharpurey | EE382V Analog/RF Wireless | XXX | |||||||||
Orshansky | EE382V CAD Deep Sub | XXX | XXX | ||||||||
Erez | EE382V Comp Arch: User-Sys | XXX | |||||||||
Yan | EE382V Data Converters | XXX | |||||||||
Swartzlander | EE382V Floating-Point Arith | XXX | |||||||||
Julien | EE382V Form Meth Dist | XXX | XXX | XXX | |||||||
Hassibi | EE382V Integrated Sensors | XXX | |||||||||
Garg | EE382V Lattice Theory | XXX | |||||||||
Julien | EE382V Mobile Comp | XXX | XXX | XXX | |||||||
Nettles | EE382V Mobile Net | XXX | XXX | XXX | XXX | ||||||
Orshansky | EE382V Nano Scale Des | XXX | XXX | XXX | |||||||
Pan | EE382V Opt VLSI Des | XXX | XXX | XXX | |||||||
Gharpurey | EE382V RF IC Design | XXX | XXX | ||||||||
Perry | EE382V SW Arch & Des Int | XXX | |||||||||
Chase | EE382V SW High Perf Comp | XXX | |||||||||
Abraham | EE382V System on Chip | XXX | XXX | XXX | |||||||
Aziz | EE382V VLSI Comm Sys | XXX | XXX | ||||||||
Pan | EE382V VLSI Phy Des | XXX | XXX | XXX |
EE380L Topic 5: Engineering Programming Languages
Higher-level languages for engineering design and problem solving;
object-oriented programming in C++ and UNIX systems programming.
EE380L Topic 7: Intro Pattern
Recog/Computer Vision
Image formation, early vision, image segmentation, two-dimensional and
three-dimensional representations.
EE380L Topic 8: Computer Vision Systems
Discussion of current research results and exploration of new directions in
computer vision research; emphasis varies each semester.
EE380L Topic 10: Data Mining
Discover and extract pieces of information useful for making smart business
decisions, understanding of concepts from exploratory data analysis, pattern
recognition, machine learning, heterogeneous data bases, parallel processing and
data visualization, in addition to knowing the problem domain.
EE380L Practicum In Data Mining
Analyzing the World Wide Web and for extracting useful information out of it
by mining its hyperlink structure, content of web pages and usage patterns.
Topics covered will include (i) hyperlink analysis of the internet, (ii)
information retrieval --- query retrieval, clustering and classification of
hypertext, (iii) web-log analysis to determine website usage patterns and (iv)
personalization.
EE382C Topic 3: Verification and Validation of Software
Evaluation of software for correctness, efficiency, performance, and
reliability.
EE382C Topic 7: Domain-Specific Software Architecture
Software engineering approaches; scenario-based engineering processes to
analyze problem domain; domain modeling and representations; creation of
component-based reference architecture providing an object-oriented
representation of system requirements.
EE382C Topic 8: Methodologies for Hardware/Software Codesign
Techniques used to design complex hardware/software systems; emphasis on
specification, modeling, estimation, partitioning, verification/validation, and
synthesis.
EE382C Topic 9: Embedded Software Systems
Dataflow models, uniprocessor and multiprocessor scheduling,
hardware/software codesign, hierarchical finite state machines, synchronous
languages, reactive systems, synchronous/reactive languages, heterogeneous
systems.
EE382C Topic 10: Empirical Studies In Software Engineering
Software Engineering is of necessity an empirical enterprise. We will look
at different kinds of empirical evaluation from related fields such as
behavioral sciences and see how we can adapt those techniques to the service of
software engineering. We will then evaluate current empirical studies in
software engineering to see where there are strengths and weaknesses in the
current state of the art.
EE382M Topic 1: VLSI Testing
Hardware and software reliability analysis of digital systems; testing,
design for testability, self-diagnosis, fault-tolerant logic design,
error-detecting and error-correcting codes.
EE382M Topic 2: Dependable Computing
Design techniques for reliable, fault-tolerant, fail-safe and fail-soft
systems; fault diagnosis and fault avoidance methods at program and system
levels; experimental and commercial fault-tolerant computer systems.
EE382M Topic 7: VLSI I
CMOS technology; structured digital circuits; VLSI systems; computer-aided
design tools and theory for design automation; chip design.
EE382M Topic 8: VLSI II
Microelectronic systems architecture; VLSI circuit testing methods;
integration of heterogeneous computer-aided design tools; wafer scale
integration; advanced high-speed circuit design and integration.
EE382M Topic 9: Simulation Methods in CAD/VLSI
Techniques and algorithms for simulating large-scale digital and analog
circuits.
EE382M Topic 10: Synthesis of Digital Systems
Automatic generation of gate-level implementations from HDL specifications;
optimization of two-level, multilevel, and sequential circuits for area, speed,
and testability.
EE382M Topic 11: Verification of Digital Systems
Automatic verification of digital systems; formal models and specifications,
equivalence checking, design verification, temporal logic, BDDs, logical
foundations, automata theory, recent developments.
EE382M Topic 12: System Design Metrics
Analysis of design at chip, board, and system levels; life cycle
implications of design decisions, including design for testability effects on
production and field service; economic and customer-driven factors.
EE382M Topic 13: Analysis/Design Digital Integrated Circuits
Circuit-level aspects of metal oxide silicon (MOS) and bipolar integrated
circuit technologies; logic gates and latches; propagation delays; circuit
simulation models. (same as EE382V Analysis/Design Of Digit Integ Circs)
EE382M Topic 14: Analog Integrated Circuit Design
This course presents the design of analog integrated circuits in CMOS
technology. The course begins with a review of CMOS technology and MOS
transistor operation principles. Basic CMOS analog building blocks, including
current mirrors, inverting amplifiers, differential pairs, and cascade
amplifiers, are then introduced. Frequency response, stability, and frequency
compensation are explained, followed by the design of one-stage and two-stage
operational amplifiers. The students will do design, simulation, and layout of
analog circuits in Cadence design environment during the semester, and will
complete a final project at the end of the semester.
EE382M Topic 15: Computer Performance Evaluation/Benchmarking
Benchmarking processor and computer system architectures have become
extremely difficult due to the complexity of the processors and the complexity
of the applications that run on the computers. This course will focus on
quantitative and analytical characterization of processors and applications from
general purpose and scientific computing. Several papers from the recent
computer architecture, performance evaluation, and workload characterization
related conferences will be used as supplemental material.
EE382M Topic 19: Mixed-Signal Sys Design/Model
EE382M Topic 4: Advanced Embedded Systems
EE382N Topic 5: Communication Networks: Tech, Arch, and Protocols.
Network services and techniques, layered architectures, circuit and
packet-switching networks, internetworking, switch architectures, control
mechanisms, and economic issues.
EE382N Topic 10: Parallel Computer Architecture.
Study of parallel computing, including models, algorithms, languages,
compilers, interconnection networks, and architectures.
EE382N Topic 11: Distributed Systems.
This will be an introductory graduate level course in distributed systems.
It will expose students to theoretical as well as practical aspects of designing
such systems. The course assumes that the student has some familiarity with
programming.
Models of Distributed Computation: Happened before relation, posets,
lattices
Time: Logical clocks, vector clocks, direct dependency clocks, matrix
clocks.
Resource Allocation: Mutual Exclusion, Drinking Philosophers, Election
Global Property Evaluation: Chandy and Lamport's algorithm, termination
detection, unstable properties.
Ordering of Messages: causal, synchronous, multi-cast protocols.
Global Computation: Diffusing computation, supervised computation.
Consensus: FLP Result, Synchronous systems, Byzantine Agreement
Fault-tolerance: Failure Detectors, Checkpointing, optimistic and
pessimistic recovery, Self-stabilizing algorithms.
EE382N Topic 14: High-Speed Computer Arithmetic I.
Design of computer arithmetic units: fast adders, fast multipliers,
dividers, and floating-point arithmetic units.
EE382N Topic 15: High-Speed Computer Arithmetic II.
Advanced topics in computer arithmetic, including error correcting coding,
residue number systems, CORDIC arithmetic, and VLSI implementation. Additional
prerequisite: Electrical Engineering 382N (Topic 14).
EE382N Topic 16: Distributed Information System Security.
EE382N Topic 17: Superscalar Microprocessor Architectures.
Superscalar processor architectures, comparison with VLIW processors,
program parallelism, performance evaluation, trace generation, memory systems,
branch prediction.
EE382N Topic 18: Distributed Systems II
The course will cover some current topics in distributed systems. Much of
the course will be based on recent papers in the area. Students will be expected
to read and present papers assigned by the instructor. In addition, the students
are expected to write a term paper based on their term project. The course is
likely to cover a subset of the following topics. The set of topics covered
significantly depends upon the interests of the students enrolled in the course.
EE382N Topic 19: Microarchitecture
Basic concepts in architecture and microarchitecture. Critical path, Bread
and Butter Design, Partitioning, Timing, Pipelining. Data Path, state machine,
microsequencer, microinstruction definition, and microcode. Microprogramming
(horizontal, vertical, two-level, dynamic microprogramming, bit steering).
Extension to pipelining and pipelined control. Effective use of short pipelines,
with some digressions into more effective use of long pipelines without
blocking. The structure of a modern pipeline. Functions at each stage. CAD
tools. The x86 ISA, and some implementation issues.
Pipelining in the year 2004. Branch
Prediction. The Trace Cache.
The Block-structured ISA. Simultaneous
Multithreading. Clustering and its
implications. Data Flow; HPS. Pentium Pro and Pentium 4 implementations.
Importance of Compiler technology to Future Microarchitectures.
RISC, a Retrospective. Cache
Coherency. Memory consistency.
IEEE Floating Point arithmetic, The IEEE Standard. Formats. Gradual
underflow, NaNs, Exceptions, Round-off, Guard Digits and Sticky bits, Wobble.
Measurement methodology and abuses.
The IBM Power 5 microarchitecture
EE382V Advanced Topics In Comp Architecture
EE382V Cad For Deep Submicron VLSI
This course reviews the major components of the modern computer-aided
circuit design flow, concentrating on models and algorithms for physical design
and timing analysis. An important motivation for the course is to explore the
directions in which computer-aided circuit design evolves as it copes with the
challenges brought about by the increased complexity of deep submicron silicon
technology. The course will survey the major disruptive technological trends,
and study their impact on timing analysis and physical design. It will also
explore the techniques in computer-aided design for testability, reliability,
and manufacturability. The course will build the links between solid-state
technology, circuit design, and CAD, and will be of interest to students in all
these areas.
EE382V System On A Chip Design
EE382V VLSI Physical Design Automation
This course studies the fundamental of physical design, a key design
implementation stage for VLSI systems. Physical design is the process of
transforming structural representation of a VLSI system into layout
representation. The objective of physical design automation is to carry out such
transformation efficiently using computers so that the resulting layout
satisfies topological, geometric, timing and power-consumption constraints of
the design. This course focuses on various design automation problems in the
physical design process of VLSI circuits, including: logic partitioning, floor
planning, placement, global routing, detailed routing, clock and power routing,
and new trends in physical synthesis. We shall also discuss the applications of
a number of important optimization techniques, such as graph theory, network
flow, Steiner tree, simulated annealing, generic algorithm, and linear/convex
programming. Guest lecture(s) given by industry experts will further broaden the
view of students.
EE382V Analysis/Design Of Digital Integrated Circs
Circuit-level aspects of metal oxide silicon (MOS) and bipolar integrated
circuit technologies; logic gates and latches; propagation delays; circuit
simulation models. (same as EE382M 13 Analysis/Design Digital Integrated
Circuits)
EE382V Lattice Theory with Applications
Partial order and lattice theory now play an important role in many
disciplines of computer science and engineering. For example, they have
applications in distributed computing (vector clocks, global predicate
detection), concurrency theory (pomsets, occurrence nets), programming language
semantics (fixed-point semantics), and data mining (concept analysis). They are
also useful in other disciplines of mathematics such as combinatorics, number
theory and group theory. In this course, I will introduce important results in
this theory along with their applications in computer engineering. The bias of
the course will be on computational aspects of lattice theory (algorithms) and
on applications (esp. distributed systems).
Posets: Basics Calculating height and width of a poset, Dilworth's
theorem, decomposition of a poset
Lattices: Distributive and Modular Lattices, Lattices as algebraic
structures, M3-N5 theorem.
Ideals Ideals and Filters, Birkhoff's Theorem, Join and Meet
Irreducible Elements, Applications to Global Predicate Detection
Fixed Point Theorems: Complete Lattices, monotone and continuous
functions, Knaster-Tarski theorem, Application to semantics of CSP
Sperner Property: Ranked Posets, Erdos-Szekeres Theorem, Sperner
property, Hall's Theorem
Enumeration: Enumerating ideals in BFS, DFS, Lexical and Gray Code;
enumerating level sets, enumeration of linear extensions.
Dimension Theory: Encoding posets, applications to encoding distributed
computations, Hiraguchi's conjecture
Special Classes of Posets: 2-dimensional posets, series-parallel posets,
interval posets.
Mobius Inversion: Mobius function and applications to number theory
Slicing: Slicing with applications to distributed computing and
combinatorics
EE382V Advanced Topics In Mobile Networking
EE382V Optimization Issues in VLSI CAD
As CMOS scales into nanometer dimensions, VLSI designs are more and more
interconnect dominated for the overall chip performance, cost, and reliability.
The resulting design closure problem has been the central problem for electronic
design automation, as seen by enormous efforts from both academia and industry.
Meanwhile, as CMOS scaling continues, power is emerging as a key design limiter,
together with other deep submicron effects such as signal integrity.
All these make modern VLSI designs extremely complex and CAD tools are
essential to optimize the overall system performance, power and reliability.
This course will study key optimization techniques with underlying
modeling issues to deal with the nanometer design challenges. Guest
lecture(s) given by industry experts will further broaden the view of students.
EE382V Nanometer Scale IC Design
This course explores the challenges of digital integrated circuit design in
advanced CMOS technologies. The students will learn about the impact of new
physical effects on the traditional circuit design solutions and methods, and on
ways they need to adopt to enable successful integrated circuit design. The
primary themes of the course will be the challenges of ensuring high yield,
reliability, manufacturability, and robustness of advanced integrated circuits,
including mixed-signal circuits.
Jonathan Valvano 9/10/08