VLSI Circuit and System Design – (block B)

3 YEAR 2 semester 9 CREDITS
Prof. Marco Re 2019-20 to 2020-21

Luca DI NUNZIO (5 cfu) – di.nunzio@ing.uniroma2.it

Vittorio MELINI (2 cfu)

Sergio SPANO’ (2 cfu)

from 2021-22
 

Code: 8039166
SSD: ING-INF/01

from Mechatronics Engineering

PREREQUISITES:

It is strictly suggested to take the “Digital Electronics” exam before attending this course. You can contact Prof. Luca DI NUNZIO for any doubts regarding the topic.

OBJECTIVES

LEARNING OUTCOMES:

The VLSI CIRCUIT AND SYSTEM DESIGN course aims to teach the basic of combinational and sequential circuits that represent the basic blocks of any modern digital system. In addition, the course will provide the basic concepts of the VHDL language. Moreover, the course aim is to teach the basic notions to study and design a microprocessor. The elements necessary for the analysis of the architecture of microprocessors and their peripherals are provided. The course also covers various types of buses, data synchronization and types of memories.

KNOWLEDGE AND UNDERSTANDING:

At the end of the course, the student will learn the basic concepts of combinational and sequential circuits that are the basis of any system and the basic concepts of the VHDL language useful for the design of digital systems. Moreover, the student will have acquired the fundamental concepts of microprocessor architecture and analyze all its peripherals.

APPLYING KNOWLEDGE AND UNDERSTANDING:

Ability to analyze the characteristics of digital circuits with particular emphasis on timing and power consumption. Moreover, the student will be able to design the architecture of a microprocessor and the interconnections between its peripherals.

MAKING JUDGEMENTS:

The student will understand and the acquired knowledge independently and critically, in order to be able to connect and integrate the various aspects related to the design of digital systems. Moreover, the student will be able to independently analyze the fundamental characteristics of a microprocessor and its peripherals.
COMMUNICATION SKILLS: The student must be able to communicate their knowledge acquired during the course in a clear, correct, and technical language.

LEARNING SKILLS:

Ability to critically approach a digital circuit design problem, know how to manage it, and find implementation solutions using the VHDL language. Moreover, the student will have acquired the ability to independently undertake further in-depth studies on topics related to the course program, and to use the knowledge and methodologies learned to face new problems.

SYLLABUS

(L. DI NUNZIO)
Digital electronics basic concepts
Floating-point and fixed-point numeric representation formats
Combinatorial circuits: encoders, decoders, multiplexers
Sequential circuits: flip flops, latch registers, counters, memories
Introduction to VHDL: entity and architecture, levels of abstraction, HDL design flow, combinatorial and sequential processes, objects in VHDL test bench
Practical activities of circuit design in VHDL
(S. SPANÒ)
Central unit
ALU
System registers
Address logic
System buses
Scheduler
Branching of instructions
Interrupts
Bus synchronization
RAM memories
ROM memories
Flash memories
CAM memories
(V. MELINI)
Introduction to the IC Digital Design Phases
ASIC & FPGA Design flows and their differences
Static Time Analysis, how, why and when to use it
Analysis of the timing paths and delays calculation
Definitions of the timing checks and delay calculations
Set-Up and hold violations and methodologies to resolve them
Metastability
Introduction to the Clock Domains Crossing (CDC) and the main methodologies to deal with it
Introduction to the Reset Domain Crossing (RDC) and the main methodologies to avoid the issue

TEXTS

Notes from lectures. Slides employed for lectures.

INTRODUCTION TO DIGITAL SYSTEMS
Ercegovac, Milos D.; Lang, Tom?s; Moreno, Jaime H
ISBN 10: 0471527998 / ISBN 13: 9780471527992

Static Timing Analysis for
Nanometer Designs
A Practical Approach
ISBN 978-0-387-93819-6 e-ISBN 978-0-387-93820-2