Welcome to 02205 VLSI Design

This is a course for graduate students (MS students), and it is lectured in English. It is offered during the spring term by DTU Compute at the Technical University of Denmark.

Nowadays, chips like the nVIDIA GTX285 (shown in the picture) contain more than a billion of devices and are capable of computing more than a million of a million (1012) of operations per second. On the other hand, the GTX285 chip can dissipate up to 160 Watts. Think of the heat generated by a 150 W light-bulb, in the GTX285 chip, it is concentrated in an area of about 4 square cm!

This example shows the challenges engineers face in designing such chips.

In this course, we will address a number of these challenges: from the technology which enabled the microelectronics revolution, to the design methodology and tools necessary to build such complex systems, to the strategies to keep the power dissipation - and the heat - to a reasonable level, to the reliability issues deriving by the aggressive device miniaturization.

The course includes some practical exercises, run in the lab, to learn to use state-of-the-art design tools and to apply the methodologies to design a System-on-Chip.

The topics covered in the course can be categorized as belonging to three tracks:

Technology Design Methodology System Perspective
CMOS TECHNOLOGY
  • CMOS process
  • Static CMOS gates
  • Timing and power dissipation
  • Variations and reliability

TECHNOLOGY SCALING

  • Device and wire scaling

MEMORY

  • Static and Dynamic RAM
  • Flash memory

DESIGN FLOW
  • Levels of abstraction
  • Design flow for ASICs and FPGAs
  • Design tasks:
    • Simulation
    • Synthesis
    • Place&Route

DESIGN FOR LOW-POWER

  • High-level (algorithm) techniques
  • RT-level techniques
  • Gate-level techniques
WIRE ENGINEERING
  • Clock
    • Synchronization
    • Clock distribution
  • Power network
    • Power distribution
    • Power domains

CHIPS AND BOARDS

  • Packaging
  • Heat removal
  • Signal integrity

To better follow this course, you should be familiar with the fundamentals of design of digital systems and know a hardware description language, such as VHDL.