The BRADLEY DEPARTMENT of ELECTRICAL and COMPUTER ENGINEERING

Graduate PROGRAMS

Course Information

Description

This course introduces graduate students to the various electronic design automation artifacts, algorithms, and methodologies. It includes system level design languages, abstractions, models of computation, high level synthesis, modeling and model transformations, simulation based validation, etc. The course deals with state-of-the-art design practices, algorithms, and methodologies. It requires a solid background in computer architecture, digital design, and proficiency in programming and modeling.

Why take this course?

Pressure on reducing a productís time-to-market is placing increasing demands on the preparation of correct specifications and the synthesis of designs meeting the requirements of the specifications. Because specifications occur in every design project, engineers must understand the capabilities and limitations of various notational systems used to express design requirements, and must know how the notations are related as well as how they should be interpreted. This course is essential for students who will develop systems to automate design methodologies and synthesis of designs from high-level specifications. The course also significantly benefits the students who will be responsible for the preparation of specifications, as well as, the students that will manually synthesize designs from initial specifications. Also, the material of this course is essential for graduate students planning on doing a thesis or dissertation in the area of electronic design automation.

Prerequisites

4514

ECE 4514 will provide an understanding of digital design and computer systems architecture.

Major Measurable Learning Objectives

  • Design hardware/software system models in a suitable system-level modeling language, such as SystemC.
  • Use suitable heuristics to partition functional models into hardware and software components.
  • Construct models for expressing functionalities of a system with appropriate models of computation and optimize such models for efficient simulation.
  • Compare the complexity and efficiency of various algorithms for high-level synthesis from system models and design programs to implement such algorithms.
  • Express semantics of various modeling languages using formal notations and techniques for expressing models of computation.

Course Topics

Topic

Percentage of Course

Mathematical Foundations 10 %
Introduction to System Level Modeling Language 20 %
Semantics and Models of Computation 20 %
Reuse Principles and Component Platform Based Design Ideas 10 %
High Level Synthesis Algorithms 15 %
Dynamic Validation and Simulation 10 %
Methodology Issues and their Relation to Automation 5 %
Advanced and Current Topics in EDA 10 %