ELECTRONICS OF EMBEDDED SYSTEMS
Learning outcomes of the course unit
1. Knowledge and understanding
The course 'Electronics of Embedded Systems' (72h-9CFU) offers a wide knowledge on the ES which represent the most common application area for modern electronic devices. During the course, students will study the main characteristics of ES, the architectures of ES, and the main hardware components used in ES.
In particular, the content offered are:
- Understanding the context of SE
- Split into sub-systems of the parts of an SE
- Knowledge of the specific design flow and the allocation of the main functions between dedicated circuits and firmware for microprocessor
- Knowledge of the major communication protocols used in the SE
2. Applying knowledge and understanding
The aim of the course is to provide the tools for the design of the SE. For this reason, a large space will be devoted to laboratory.
In addition, a fundamental part of the final test consists of a SE project and its implementation, which will then be tested through the use of a board for prototypes based on FPGA programmable logic.
In particular, the skills that the student will acquire are the following:
- Ability to define the technical specifications needed to build a given project (definition of I/O, identification of the most appropriate processing elements, HW/SW partitioning, ...)
- Ability to implement the circuit in Verilog needed to develop the project
- Ability to write in C language firmware necessary for the performance of the project
- Simulation capabilities, implementation and testing of the design of SE through the use of an electronic board based on FPGA
3. Soft Skills and cross competencies.
During the lab activities, students are encouraged to work in small groups.
This facilitates the development of "soft skills".
They must learn to confront each other, to solve problems in a collaboratively way and to help each other in complex debugging tasks.
They must also cooperate in the writing of the report dedicated to the final project.
Course contents summary
The contents of the course are:- Introduction to Embedded Systems (ES)- Characteristics of an ES: project specifications, market and architecture- Design flow, partitioning and HW and SW co-design - Notions on the design of the ES- Typical components of ES- Examples of wired communication protocols:RS232/RS485, SPI, I2C, JTAG, CANbus, Ethernet, TCP/IP- Circuit solutions for powering ES- Circuit solutions for interfacing ES- Introduction to the HW Verilog description language:basic constructs and circuits, arithmetic circuits, finite state machines.- Introduction to programmable FPGA logics- Hints of Matlab as an aid to the design and simulation of SEs- ES design laboratory activities
- Introduction to the course, lab activities and Embedded Systems (2h)
- Key HW components of the ES (2h)
- The theme of HW/SW partitioning (2h)
- Circuits for I/O and introduction to the JTAG (2h)
- Introduction to SoC and SoC BUS (2h)
- Solutions for the supply of a ES (2h)
- Communication protocols SPI and I2C (2h)
- The serial port UART - protocols RS232, RS422, RS485 (2h)
- The Fieldbus: CAN bus protocol (2h)
- Introduction to network and IP protocols (2h)
- Introduction to FPGA and Digital Design Flow (2h)
- The Programmable Logic FPGA from Altera Cyclone2: Analysis of characteristics (2h)
- Mixed Architecture FPGA-Micro (2h)
- Introduction to cryptography and HW implementation (2h)
- The Verilog Hardware Description Language (2h)
- Examples of circuits realized in Verilog: FFD, Registers, Counters, SHR, FSM (10h)
- Description of the ALTERA DE2 DEMO BOARD (2h)
- The flow of project Quartus2 (2h)
- Design and implementation of a counter-Hex that displays the output on a 7-segment display (4h)
- Design and implementation of a VGA Interface (6h)
- Description of the main Verilog arithmetic circuits (2h)
- Introduction to 32-bit RISC processor NIOS2 or ARM (2h)
- Exercises based on NIOS2 or ARM (10h)
- Laboratory activities relating to the development of the exam project (14h)
For the theoretical topics:
- Designing Embedded Hardware, 2nd edition; John Catsoulis; O'Reilly Media
- Sistemi Embedded, Sviluppo Hardware e Software per sistemi dedicati; Carlo Brandolese, William Fornaciari; PEARSON Prentice Hall
For support to laboratory activities:
- Progetto di sistemi elettronici digitali basati su dispositivi FPGA; Ettore Napoli; Progetto Leonardo; Esculapio Bologna
- Embedded SOPC Design with NIOS II Processor and Verilog examples, Embedded Systems & Smart Cards; Pong P. Chu; Wiley
The course is divided into lectures and laboratory activities.
The lectures will examine issues related to the theoretical knowledge of embedded systems.
In the laboratory will develop knowledge on:
- the development of dedicated circuits realized by Verilog hardware description language
- the writing of firmware code in C language for microprocessor
- Lab activities are aimed at the implementation of a practical project
- Students can work on the assigned project individually or in small groups
- Each project must be described by a written relation
Assessment methods and criteria
The final examination consists of an oral test.
In this test will be discussed and evaluated in detail:
1. The theoretical knowledge of the topics studied in class
2. The design of a real embedded system designed and implemented by the student (alone or with a group of work) during the course
The final valuation depend on the average of the two partial valuations.
A report, with the description of the implemented project, must be submitted at the teacher at least one week before the date of the oral exam.
Teaching material and further information can be found in the official educational portal: ELLY