Skip to main content
If you continue browsing this website, you agree to our policies:
  • Condizioni di utilizzo e trattamento dei dati
Continue
x
If you continue browsing this website, you agree to our policies:
  • Condizioni di utilizzo e trattamento dei dati
Continue
x
e-Learning - UNIMIB
  • Home
  • More
Listen to this page using ReadSpeaker
English ‎(en)‎
English ‎(en)‎ Italiano ‎(it)‎
 Log in
e-Learning - UNIMIB
Home
Percorso della pagina
  1. Science
  2. Master Degree
  3. Informatica [F1802Q - F1801Q]
  4. Courses
  5. A.A. 2022-2023
  6. 1st year
  1. Informatics for Industrial Applications
  2. Summary
Insegnamento Course full name
Informatics for Industrial Applications
Course ID number
2223-1-F1801Q139
Course summary SYLLABUS

Course Syllabus

  • Italiano ‎(it)‎
  • English ‎(en)‎
Export

Obiettivi



L’insegnamento ha l’obiettivo di fornire le competenze necessarie a risolvere le problematiche di progettazione di circuiti digitali su hardware programmabile. Al termine del corso gli studenti saranno in grado di sviluppare in autonomia un’applicazione embedded utilizzando un dispositivo logico programmabile (FPGA) e progettando circuiti logico digitali, effettuandone il debugging a livello di simulazione e utilizzando specifici software per la simulazioni di circuiti progettati attraverso Hardware Description Language.



Contenuti sintetici

1 L'algebra di Boole
2 Circuiti digitali combinatori
3 Circuiti digitali sequenziali
4 Progettazione di Circuiti Digitali tramite Macchine a Stati Finiti
5 Introduzione al VHDL (Very High Speed Integrated Circuits Descritpion Language)
6 Circuiti combinatori e Sequenziali in VHDL
7 Progettazione di Circuiti digitali in VHDL
8 Programmazione di FPGA

Programma esteso

Codici Binari
o Introduzione e Notazione Posizionale
o Codici (Octal, Hexadecimal e Hamming Distance)
o Aritmetica Binaria

Operatori e Componenti Logici
o Operatori Logici Elementari, Teoremi di De Morgan e del Consenso
o Sintesi Combinatoria attraverso Sum-of-Products e Product-of-Sums
o Mappe di Karnaugh , Alee Statiche e Dinamiche

Logica Combinatoria
o Encoder, Decoder, Multiplexer, Demultiplexer, Comparatori, Parity Checker e Generatori di Parità
o Sommatori (Half-Adder e Full-Adder)

Logica Sequentiale
o Elementi di Memoria a 1 bit asincroni: Latches: D-Latch, SR-Latch
o Elementi di Memoria a 1 bit sincroni:Flip-Flop: D-Flip-Flop, JK-FLIP-FLOP, T-Flip-Flop
o Registri e Contatori
o Esercizio con il tool LTSPICE

Finite-State-Machines (FSM)
o Macchine di Mealy e Moore
o Esercizi

Il VHDL come Linguaggio di Descrizione Hardware
o Dispositivi Logici Programmabili e Dedicated CMOS Design (ASIC)
o VHDL. Un semplice esempio di progetto
o Dichiarazione di Entity e Architecture. Assegnazioni e Istruzioni concorrenti
o Il process in VHDL

Logica Combinatoria in VHDL
o Bus Slice e Swap, Operazioni logiche elementari, Stadi Logici Funzionali
o Decoder, Encoder, Multiplexer, Demultiplexer
o Stadi Logici Funzionali avanzati
o Sommatori (Half-Adder, Full-Adder)

Metodi di Progetto in VHDL
o Descrizioni VHDL e approcci possibili
o Data Flow (key word ‘<=’), Sequential (key word ‘process’), Structural (key word ‘component’)
o Segnali e Variabili
o Esercizio 1 – Full-adder
o Esercizio 2 – Binary-BCD Converter

Elementi di Memoria
o Latch D, SR
o Flip-Flop D, JK, T
o Master-slave
o Registri (PIPO, SIPO, SISO)
o Esercizio 3 – Latch e Flip-flop
o Esercizio 4 – Registri in VHDL
o Esercizio 5 – Contatori in VHDL
Esempio di Progetto di Macchine a Stati Finiti in VHDL

Serial Interfaces (I2C and SPI)

Esercizio in laboratorio con Opal-Kelly XEM6010 (Xilinx® Spartan 6 FPGA)

Prerequisiti

Programmazione C, programmazione a livello macchina (gestione I/O e interruzioni).

Modalità didattica

Lezioni frontali in cui saranno presentati i concetti fondamentali della progettazione logica digitale.

Esercitazioni in aula con presentazione e discussione di esempi di circuiti digitali descritti in VHDL/Verilog.

Laboratorio per lo sviluppo di componenti e l’utilizzo di FPGA in semplici applicazioni.

La frequenza è fortemente raccomandata ed è essenziale per le attività di laboratorio.

Il corso verrà erogato in Italiano.

Nel periodo di emergenza Covid-19 le lezioni si svolgeranno completamente da remoto sincrono (webconference) con alcuni eventi in presenza fisica.

La videoregistrazione della lezione sarà poi immediatamente online sulla piattaforma elearning.

Materiale didattico

- Appunti e Slide fornite dal docente
- “Circuit Design with VHDL” Volnei A. Pedroni MIT Press

Periodo di erogazione dell'insegnamento

Secondo Semestre

Modalità di verifica del profitto e valutazione

L’esame finale consta di un prova orale divisa in due parti.

Il punteggio assegnato a ogni parte è di 15/30 ciascuna.
Nella prima parte lo studente presenterà la documentazione e il funzionamento di un sistema hardware interamente sviluppato dallo stesso studente e relativo a un testo di progetto assegnato in classe a gruppi formati al massimo da due studenti.
Nella seconda parte dell’’esame si verificherà la preparazione dello studente attraverso due domande relative agli argomenti trattati a lezione, e in particolare una prima domanda riguardante i circuiti combinatori e una seconda domanda sui circuiti sequenziali.

Orario di ricevimento

Lunedi 10-12

Sustainable Development Goals

IMPRESE, INNOVAZIONE E INFRASTRUTTURE
Export

Aims

The course target is giving the knowledge necessary to solve the control and the design of interfaces between external world and internal eleboration unit, analyzing and comparing different hardware and software solutions based on the use of microcontrollers. At the end of the course the students will be able to develop an embedded application using a microcontroller and designing digital logic circuits, debugging them by means of simulations using a specific HDL software
The aim of the course is to provide the skills needed for digital circuits design on programmable hardware. At the end of the course, students will be able to independently develop an embedded application using an FPGA and designing digital logic circuits, performing simulation-level debugging, and using specific software for circuit simulations designed through Hardware Description Languages.

Contents

1 Boole Algebra
2 Combinatory Digital Circuits
3 Sequential Digital Circuits
4 Finite-State-Machine Circuit Design
5 VHDL (Very High Speed Integrated Circuits Descritpion Language) Introduction
6 Combinatory and Sequential Circuits in VHDL
7 Design of Digital Circuits in VHDL
8 FPGA Design

Detailed program

Binary Code
o Introduction and Positional Notation
o Octal and Hexadecimal Code, Hamming Distance
o Binary Arithmetic (sum, difference, product and division)

Logic Operators and Logical Components
o Basic Logical Operators, De Morgan and Consensus theorems
o Combinatory Synthesis by Sum-of-Products or Product-of-Sums
o Karnaugh Maps, Static and Dynamic Hazards

Combinatory Logic
o Encoder and Decoder, Multiplexer and Demultiplexer, Comparator, Parity Checker and Generator
o Half-Adder and Full-Adder

Sequential Logic
o Latches: D-Latch, SR-Latch
o Flip-Flop: D-Flip-Flop, JK-FLIP-FLOP, T-Flip-Flop
o Registers and Counters
o Exercises
o LTSPICE Exercise

Finite-State-Machines (FSM)
o Mealy and Moore FSM
o Exercises

The VHDL as Hardware Description Languages: an Overview
o Programmable Logic Devices, Dedicated CMOS Design (ASIC)
o VHDL. A simple design example
o Entity Declaration. Architecture Declaration, Assignments, Concurrent Statements
o The Process

Combinatory Logic in VHDL
o Bus Slice and Swap, Basic Logical Operations, Functional Logical Stages
o Decoder, Encoder, Multiplexer, Demultiplexer
o Advanced Functional Logical Stages
o Half-Adder, Full-Adder

VHDL Design Methods
o VHDL Descriptions, Three possible approaches
o Data Flow (key word ‘<=’), Sequential (key word ‘process’), Structural (key word ‘component’)
o Signals and Variables
o Exercise 1 – Full-adder
o Exercise 2 – Binary-BCD Converter

Memory Components
o Latch D, SR
o Flip-Flop D, JK, T
o Master-slave
o Registers (PIPO, SIPO, SISO)
o Exercise 3 – Latch e Flip-flop
o Exercise 4 – Registers in VHDL
o Exercise 5 – Counters Design in VHDL
A Design Example of a FSM in VHDL

Serial Interfaces (I2C and SPI)

Lab Exercise with Opal-Kelly XEM6010 (Xilinx® Spartan 6 FPGA)

Prerequisites

C Programming, machine-level programming (I / O management and interrups).

Teaching form

Lectures for basic concepts. Classroom exercises with the presentation and discussion of digital circuits in VHDL/Verilog. Laboratory activity for the development of digital circuits and for the use of FPGAs in simple applications
The course will be held in Italian.

In the Covid-19 emergency period, the lessons will take place completely remotely synchronously (webconference) with some physical presence events.

The video recording of the lesson will then be immediately online on the elearning platform.

Textbook and teaching resource

- Notes and slides
- “Circuit Design with VHDL” Volnei A. Pedroni MIT Press

Semester

Second Semester

Assessment method

The final exam is oral and it is divided into two parts.

The score assigned to each part is 15/30 each.
In the first part the student will present documentation and functionalities of a specific hardware system developed entirely by the same student and related to a project topic assigned in class to groups consisting of at most two students.
In the second part, the examination of the student will take place through two questions related to the topics covered during the course, and in particular the first one concerning the combinatory circuits and a second on the sequential circuits.

Office hours

Monday 10-12

Sustainable Development Goals

INDUSTRY, INNOVATION AND INFRASTRUCTURE
Enter

Key information

Field of research
ING-INF/05
ECTS
6
Term
Second semester
Activity type
Mandatory to be chosen
Course Length (Hours)
48
Degree Course Type
2-year Master Degreee
Language
Italian

Staff

    Teacher

  • Marcello De Matteis
    Marcello De Matteis

Students' opinion

View previous A.Y. opinion

Bibliography

Find the books for this course in the Library

Enrolment methods

Manual enrolments
Self enrolment (Student)

Sustainable Development Goals

INDUSTRY, INNOVATION AND INFRASTRUCTURE - Build resilient infrastructure, promote inclusive and sustainable industrialization and foster innovation
INDUSTRY, INNOVATION AND INFRASTRUCTURE

You are not logged in. (Log in)
Policies
Get the mobile app
Powered by Moodle
© 2025 Università degli Studi di Milano-Bicocca
  • Privacy policy
  • Accessibility
  • Statistics