Electrical & Computer Engineering - Computers

Courses

ECEC 301 Advanced Programming for Engineers 3.0 Credits

An advanced introduction to classes and objects; inheritance and polymorphism; abstract classes and interfaces; exception handling; files and streams; garbage collection and dynamic memory allocation; recursion; using linked lists, stacks, queues, and trees; search and sorting algorithms; generic methods and classes; a comparative introduction to dominant programming languages; engineering examples.

College/Department: College of Engineering
Repeat Status: Not repeatable for credit
Prerequisites: ECE 203 [Min Grade: D] or CS 203 [Min Grade: D]

ECEC 302 Digital Systems Projects 4.0 Credits

Offers hands-on experiences in digital system design with automation tools. Uses field programmable gate arrays in the projects. Some or all pre-requisites may be taken as either a pre-requisite or co-requisite. Please see the department for more information.

College/Department: College of Engineering
Repeat Status: Not repeatable for credit
Restrictions: Cannot enroll if classification is Freshman
Prerequisites: CS 171 [Min Grade: D] (Can be taken Concurrently) or ECE 203 [Min Grade: D] or CS 203 [Min Grade: D]) and ECE 200 [Min Grade: D]

ECEC 304 Design with Microcontrollers 4.0 Credits

Offers hands-on experience in the design of controllers that incorporate microcontrollers as an embedded component in a larger system. The microcomputer topics to be studied will include architecture, software, programming and interfaces.

College/Department: College of Engineering
Repeat Status: Not repeatable for credit
Restrictions: Cannot enroll if classification is Freshman
Prerequisites: ECE 200 [Min Grade: D] and (CS 171 [Min Grade: D] or ECE 203 [Min Grade: D] or CS 203 [Min Grade: D])

ECEC 352 Secure Computer Systems: Design Concepts 4.0 Credits

Covers concepts of secure computation, including economics vs. faults, errors, and hidden messages; mathematical foundations of secure computing; design issues in fault-tolerant computing; and testability and cryptography.

College/Department: College of Engineering
Repeat Status: Not repeatable for credit
Restrictions: Cannot enroll if classification is Freshman
Prerequisites: ECEC 302 [Min Grade: D] and MATH 221 [Min Grade: D]

ECEC 353 Systems Programming 3.0 Credits

This course introduces computer systems, including interaction of hardware and software through the operating system, from the programmer's perspective. Three fundamental abstractions are emphasized: processes, virtual memory, and files. These abstractions provide programmers a common interface to a wide variety of hardware devices. Topics covered include linking, system level I/O, concurrent programming, and network programming.

College/Department: College of Engineering
Repeat Status: Not repeatable for credit
Prerequisites: CS 265 [Min Grade: D]

ECEC 355 Computer Organization & Architecture 4.0 Credits

This course will cover the principles of designing microprocessors using solid engineering fundamentals and quantitative cost/performance trade-offs. Topics will cover instruction set architectures, arithmetic for computers, assessing and understanding processor performance, processor datapath and control, pipelining, cache design, and virtual-memory design.

College/Department: College of Engineering
Repeat Status: Not repeatable for credit
Prerequisites: (ECE 200 [Min Grade: D] or CS 270 [Min Grade: D]) and ECEC 302 [Min Grade: D]

ECEC 356 Embedded Systems 4.0 Credits

Lectures will cover theoretical concepts of embedded and cyber‐physical systems including discrete and continuous dynamics, hybrid systems, state machines, concurrent computation, embedded systems architecture and scheduling. Lab involves programming embedded applications for the decentralized software services architecture using C# and the Microsoft Robotics Software Development Kit (SDK) together with the hardware image processing and tracking capabilities of the Kinect sensor.

College/Department: College of Engineering
Repeat Status: Not repeatable for credit
Prerequisites: ECEC 304 [Min Grade: D]

ECEC 357 Introduction to Computer Networks 4.0 Credits

History of the Internet; introduction to packet switching, circuit switching and virtual circuit switching; statistical multiplexing; protocol layering; metrics of network performance including bandwidth, delay and loss; medium access protocols and Ethernet; routing algorithms; end-to-end issues; flow and congestion control; an overview of application layer protocols.

College/Department: College of Engineering
Repeat Status: Not repeatable for credit
Prerequisites: ECE 203 [Min Grade: D] or CS 171 [Min Grade: D]

ECEC 390 Special Topics 1.0-4.0 Credit

Provides special courses offered because of particular student or faculty interest.

College/Department: College of Engineering
Repeat Status: Can be repeated multiple times for credit

ECEC 411 Computer Hardware 3.0 Credits

Covers the design and performance of computer hardware devices, including direct memory access, priority arbitration, double buffering, and bus standards. Fall.

College/Department: College of Engineering
Repeat Status: Not repeatable for credit
Restrictions: Can enroll if classification is Senior.
Prerequisites: ECEC 355 [Min Grade: D]

ECEC 412 Modern Processor Design 3.0 Credits

This course introduces modern processor design in a systematic manner. It discusses dynamically scheduled superscalar techniques including multi-issue, dynamic instruction scheduling, speculative execution, and branch prediction; advanced cache designs, and new techniques including SMT and VLIW. The course provides a comprehensive coverage of modern processor architectures.

College/Department: College of Engineering
Repeat Status: Not repeatable for credit
Prerequisites: ECEC 355 [Min Grade: D] or CS 281 [Min Grade: D]

ECEC 413 Introduction to Parallel Computer Architecture 3.0 Credits

This course provides an introduction to the fundamental principles and engineering trade-offs involved in designing modern parallel computers (multi-processors). Topics covered include, but are not limited to, shared-memory and message-passing programming, cache-coherence, synchronization, scalable distributed memory multi-processors, and interconnection techniques.

College/Department: College of Engineering
Repeat Status: Not repeatable for credit
Prerequisites: ECEC 355 [Min Grade: D] or CS 281 [Min Grade: D]

ECEC 414 High Performance Computing 3.0 Credits

This course is an introduction to high performance computing, including both concepts and applications. Course contents will include discussions of different types of high performance computer architectures (multi-core/multi-threaded processors, parallel computers, etc.), the design, implementation, optimization and analysis of efficient algorithms for uni-processors, multi-threaded processors, and parallel computers, and high performance programming.

College/Department: College of Engineering
Repeat Status: Not repeatable for credit
Prerequisites: ECEC 355 [Min Grade: D] or (CS 281 [Min Grade: D] and CS 282 [Min Grade: D])

ECEC 421 Introduction to Operating Systems I 3.0 Credits

Covers basic concepts of computer operating systems, including multiprocessing and multiprogramming systems, lock operations, synchronization, and file structures. Winter.

College/Department: College of Engineering
Repeat Status: Not repeatable for credit
Restrictions: Can enroll if classification is Senior.
Prerequisites: ECEC 355 [Min Grade: D] and CS 260 [Min Grade: D]

ECEC 422 Introduction to Operating Systems I 3.0 Credits

Further develops the topics of ECEC 421. Spring.

College/Department: College of Engineering
Repeat Status: Not repeatable for credit
Restrictions: Cannot enroll if classification is Freshman
Prerequisites: ECEC 421 [Min Grade: D]

ECEC 431 Introduction to Computer Networks 3.0 Credits

Covers topics in computer and telecommunications network design.

College/Department: College of Engineering
Repeat Status: Not repeatable for credit
Restrictions: Cannot enroll if classification is Freshman
Prerequisites: ECE 200 [Min Grade: D] and CS 260 [Min Grade: D]

ECEC 432 Internet Architecture and Protocols 3.0 Credits

Covers architecture, protocols, and services of the Internet with an analytical approach focused on design principles; Internet architecture and topology; architecture of web and mail servers; router architectures; routing protocols; multicasting; multimedia over IP and associated protocols; Quality-of-Service issues in the Internet.

College/Department: College of Engineering
Repeat Status: Not repeatable for credit
Prerequisites: ECEC 357 [Min Grade: D] or CS 472 [Min Grade: D]

ECEC 433 Network Programming 3.0 Credits

Covers application layer protocol and how applications use the transport layer; principles and practice of network programming; the client-server model; concurrent processing; introduction to sockets and related functions client and server software design with examples; principles, issues and challenges in e-mail and web application protocols; security protocols; and network life system concepts.

College/Department: College of Engineering
Repeat Status: Not repeatable for credit
Prerequisites: ECEC 357 [Min Grade: D]

ECEC 441 Robotic Computer Interface & Control I 3.0 Credits

Covers fundamentals of robotics systems, including mechanics, actuators, sensors, kinematics, and inverse kinematics. Fall.

College/Department: College of Engineering
Repeat Status: Not repeatable for credit
Restrictions: Can enroll if classification is Senior.
Prerequisites: ECES 356 [Min Grade: D]

ECEC 442 Robotic Computer Interface & Control II 3.0 Credits

Covers robot dynamics, Lagrangian and Newton Euler methods, linear control of robots, path planning, and computer implementation. Winter.

College/Department: College of Engineering
Repeat Status: Not repeatable for credit
Restrictions: Cannot enroll if classification is Freshman
Prerequisites: ECEC 441 [Min Grade: D]

ECEC 443 Robotic Computer Interface & Control III 3.0 Credits

Covers robot-computer interface methods, including redundancy, optimal control, robustness, nonlinear control, adaptive control, and multiprocessor control. Spring.

College/Department: College of Engineering
Repeat Status: Not repeatable for credit
Restrictions: Cannot enroll if classification is Freshman
Prerequisites: ECEC 442 [Min Grade: D]

ECEC 451 Computer Arithmetic 3.0 Credits

This course provides an introduction to number representations used in computer arithmetic, issues of complexity in arithmetic operations, fixed point arithmetic, floating point arithmetic, and residue number systems.

College/Department: College of Engineering
Repeat Status: Not repeatable for credit
Prerequisites: ECE 200 [Min Grade: D] and ECEC 355 [Min Grade: D]

ECEC 453 Image Processing Architecture 3.0 Credits

This course covers applications of computing techniques and hardware in image (still and video) processing. Methods of compression (lossless, lossy), video compression, JPEG standards, MPEG standards, processing requirements, and implementations for multimedia.

College/Department: College of Engineering
Repeat Status: Not repeatable for credit
Prerequisites: ECE 200 [Min Grade: D] and ECES 301 [Min Grade: D] and ECES 303 [Min Grade: D]

ECEC 455 Intelligent System Architectures 3.0 Credits

This course outlines the principles of designing the architectures for intelligent systems. Methods of knowledge representation are compared for a variety of engineering problems. Methods of sensing and behavior generation are demonstrated for applications in large engineering and information systems including autonomous robots. Principles of goal-oriented computers are discussed, and modules of intelligent systems architectures are described. Theoretical fundamentals and practical techniques for learning are also covered.

College/Department: College of Engineering
Repeat Status: Not repeatable for credit
Restrictions: Can enroll if classification is Senior.
Prerequisites: MATH 221 [Min Grade: D] and ECEC 355 [Min Grade: D]

ECEC 457 Security in Computing 3.0 Credits

The course introduces ideas from Cryptography and Fault Tolerant Computing. Cryptography studies how to artificially create distortions that being interwoven with computations mask them from eavesdropping. Fault Tolerance studies techniques of suppressing effects of natural noises that operate in computation channels. The course deals with both some introductory issues in Public Key Cryptography and some important aspects of designing Fault Tolerant Systems.

College/Department: College of Engineering
Repeat Status: Not repeatable for credit
Prerequisites: ECEC 355 [Min Grade: D]

ECEC 459 Testing of Hardware 3.0 Credits

Testing has become the largest expense item in the semiconductor industry. There is rapidly being developed new techniques in testing, design for test and built-in self-test because no existing set of techniques can satisfy the existing and future needs. The course reviews, in a unified way, important issues in testing and diagnosis of hardware. Together with the "Security in Computing" course, it brings a design engineer student to the state of the art level in the field.

College/Department: College of Engineering
Repeat Status: Not repeatable for credit
Prerequisites: ECEC 355 [Min Grade: D]

ECEC 471 Introduction to VLSI Design 3.0 Credits

This is an introductory course where systematic understanding, design and analysis of digital VLSI integrated circuits will be covered. The course will begin with a review of CMOS transistor operation and semiconductor processes. Logic design with CMOS transistor and circuit families will be described. Specifically, layout, design rules, and circuit simulation will be addressed. Performance metrics will be analyzed in design and simulation.

College/Department: College of Engineering
Repeat Status: Not repeatable for credit
Prerequisites: (ECE 200 [Min Grade: D] or CS 270 [Min Grade: D]) and (ECEL 301 [Min Grade: D] and ECEL 302 [Min Grade: D])

ECEC 472 VLSI Design & Automation 3.0 Credits

Design and analysis of VLSI integrated circuits will be covered from circuits and systems design perspectives. First, system timing and arithmetic building blocks will be presented. Then, design automation will be presented by hierarchical design examples using hardware description languages (HDL) and physical design with VLSI CAD tools.

College/Department: College of Engineering
Repeat Status: Not repeatable for credit
Prerequisites: ECEC 355 [Min Grade: D] and (ECE 200 [Min Grade: D] or CS 270 [Min Grade: D])

ECEC 473 Modern VLSI IC Design 3.0 Credits

This is a project-oriented course where a high-complexity VLSI design project will be assigned to student teams. Team-work, task assignment and team communication will be mediated in an industry setting. Design tasks will cover the entire IC design flow range, from system specification to TRL description to timing and power analysis.

College/Department: College of Engineering
Repeat Status: Not repeatable for credit
Prerequisites: ECEC 472 [Min Grade: D]

ECEC 474 ASIC Design I 3.0 Credits

This course will focus exclusively on digital CMOS Application Specific Integrated Circuit (ASIC) systems design and automation. The ASIC physical design flow, including logic synthesis, floorplanning, placement, clock tree synthesis, routing and verification will be presented. These back-end physical design flow steps will also be covered through hands-on practice using industrial VLSI CAD tools. Contemporary design practices will be reviewed and presented in experiments.

College/Department: College of Engineering
Repeat Status: Not repeatable for credit
Prerequisites: ECE 200 [Min Grade: D] and ECEC 355 [Min Grade: D]

ECEC 475 ASIC Design II 3.0 Credits

Design and analysis of Application Specific Integrated Circuits (ASICs) will be covered from a systems design perspective. System timing, arithmetic building block and memory block design processes will be presented. Design tasks in a quarter-long, small-complexity processor design project will cover the back-end of the IC design flow range, from RTL synthesis to timing and power analysis. Projects will be performed in a hierarchical group, similar to an industrial setting, with other graduate and undergraduate students.

College/Department: College of Engineering
Repeat Status: Not repeatable for credit
Prerequisites: ECEC 474 [Min Grade: D]

ECEC 490 Special Topics in Computer Engineering 12.0 Credits

Provides special courses offered because of particular student or faculty interest.

College/Department: College of Engineering
Repeat Status: Can be repeated multiple times for credit
Restrictions: Cannot enroll if classification is Freshman

ECEC 497 Research In Computer Engineering 0.5-12.0 Credits

Computer engineering students only. Requires independent research in a field approved by the faculty.

College/Department: College of Engineering
Repeat Status: Can be repeated multiple times for credit
Restrictions: Can enroll if major is CE.

ECEC 499 Independent Study in Computer Engineering 0.5-12.0 Credits

Computer engineering students only. Requires independent study or research in a field approved by the faculty.

College/Department: College of Engineering
Repeat Status: Can be repeated multiple times for credit
Restrictions: Can enroll if major is CE.
Cannot enroll if classification is Freshman or Sophomore

  • Schedule of Classes
  • All Course Descriptions
  • Co-op
  • Academic Advising
  • Admissions
  • Tuition & Fees
LEARN MORE