Unit LOGIC DESIGN FUNDAMENTALS AND MICROCONTROLLERS WITH LABORATORY

Course
Computer science and electronic engineering
Study-unit Code
70A00077
Curriculum
Ingegneria elettronica
Teacher
Federico Alimenti
Teachers
  • Federico Alimenti
  • Pisana Placidi (Codocenza)
Hours
  • 69 ore - Federico Alimenti
  • 45 ore (Codocenza) - Pisana Placidi
CFU
12
Course Regulation
Coorte 2020
Offered
2022/23
Learning activities
Caratterizzante
Area
Ingegneria elettronica
Academic discipline
ING-INF/01
Type of study-unit
Type of learning activities
Attività formativa monodisciplinare
Language of instruction
ITALIAN
Contents
9 CFU class.

Unit #1 (6CFU). Logic design fundamentals: Figures of merit of logical circuits, numerical systems, codes, Boolean algebra, analysis and synthesis of combinational circuits, arithmetic functions. Analysis and synthesis of sequential circuits. Introduction to microcontrollers.
Unità #2 (3CFU). Basic concepts of digital electronics.

12 CFU class.

Unit #1 (6CFU): same as above.
Unit #2 (3CFU): same as above.
Unit #3 (3 CFU): Digital electronic laboratory based on ATmega328 microntroller and ArduinoUno platform.
Reference texts
RECOMMENDED TEXTBOOKS:
For all units: Lecture Notes by Andrea Scorzoni (see Unistudium, with password).
UNIT #1: M.Morris Mano, C.R. Kime, Reti Logiche (4th or 5th ed.), Pearson-Prentice Hall.
UNIT #1: M.Morris Mano, C.R. Kime, Reti Logiche (2nd ed.), Pearson-Prentice Hall (as an alternative).
UNIT #2: Angelo Geraci, Principi di elettronica dei sistemi digitali, McGraw-Hill http://www.ilovebooks.it/principi-elettronica-p-1652.html (stampa su ordinazione).
UNIT #3: https://www.microchip.com/en-us/product/ATmega328
https://www.arduino.cc/reference/en/


ADDITIONAL TEXTBOOKS:
UNIT #1: J.F. Wakerly, Digital design: principles and practices, Prentice-Hall International Editions.
UNIT #1: R. Laschi, Reti Logiche, Progetto Leonardo (Bologna).
UNIT #1: F. Fummi, M.G.Sami, C. Silvano, Progettazione digitale 2° ed., Mc Graw Hill Italia.
UNIT #3: B. Stroustrup, C++ Guida essenziale per programmatori, Pearson e Hoepli.it, Italia 2014.
UNIT #3: B. Stroustrup, Programming: Principles and Practice Using C+, 2014, Pearson.
UNIT #3: B.W. Kernighan, D.M. Ritchie, Il linguaggio C (2a ed.), Pearson-Prentice Hall.

FOR IN-DEPTH ANALYSIS:
R. C. Jaeger, Elettronica Digitale (ex Microelettronica), Mc Graw-Hill.
B Riccò, F. Fantini, P. Brambilla, Introduzione ai circuiti integrati digitali, Zanichelli-Telettra.
E. Taub, D. Schilling, Elettronica integrata digitale, Gruppo Editoriale Jackson.
J. Rabaey, A. Chandrakasan, B. Nicolic, Digital Integrated Circuits: A Design Perspective, 2017, Pearson-Prentice Hall.
P. Spirito, Elettronica Digitale 3/ed, Mc Graw-Hill Italia.
Zappa, Elettronica Digitale, Esculapio, 2014.
M. Olivieri, Elementi di progettazione dei sistemi VLSI, Vol.1, EdiSES Napoli.
D.A. Hodges, H.G. Jackson, Analysis and design of digital integrated circuits, McGraw-Hill International Editions.
P. Cappelletti, C. Golla, P. Olivo, E. Zanoni, Flash Memories, Kluver Academic Publishers.
Educational objectives
9 CFU class.
Methodological knowledge: elementary knowledge of basic combinational and sequential logic circuits, of the logic circuit design procedure, of the microcontroller and of some programmable logic devices; use of the basic knowledge acquired in this course for continuing education in the field of electronic digital systems.

Professional skills: ability to design simple digital circuits, at logic level; ability to use basic CAD applications for digital systems, requirement analysis.


12 CFU class. Please add:
Professional skills: knowledge of microcontroller elements, design interface (IDE) and C++ language applied to the ArduinoUno platform.
Prerequisites
To undergo the final exam of the class you do NOT NEED formal pre-requirements. However, the student is required to have assimilated all the basic issues taught in “Computer Science Basis and lab”, “Circuit Theory” and “Computer architecture and operating systems”.
Students attending the laboratory should have taken the course on safety in working places.
Teaching methods
The lectures are organized as follows:
- face-to-face lectures on all the issues of the extended program;
- classworks for the preparation of the final exam.
12 CFU class. Please add:
- laboratory activity dedicated to microcontroller programming in C++ language. We foresee that during each laboratory lecture the students are distributed over 10 lab benches equipped with personal computers and laboratory instrumentation. The students will attend about 16 guided lab classes, 2 hours each. Most of the lab classes will be concluded with a team-classwork: each team will be asked to describe the lab work, both in text form and graphically.
Other information
Every modification of the information reported in this syllabus will be communicated to the students and added to the web pages dedicated to this course at the web page https://www.unistudium.unipg.it/ .
Learning verification modality
9 CFU class.

The exam consists of a written assignment, max. score = 32/30max allowed time 120 min. Le classwork is normally made of 2 sections on the Unit #1 (Logic networks) and n.1 section on Unit #2 (Basic concepts of digital electronics)

1) The first exercise (max score=10) asks the student to design a combinational logic circuit such as, for example, the selection (or docoding) logical circuit of a memory system.
2) The second exercise (max score=11) proposes the design of a simple synchronous state machine. It is divided in two sections, the first one proposes the design of a state machine, the second one is dedicated to K maps and the extraction of equations from a K map.
3) Follows a single open question (max score=10), related to the fundamental concepts of digital electronics.

12 CFU class.
* The positive evaluation of the lab assignments requires the students attend at least 75% (60% in 2020-21 due to pandemia and consequent restrictions) of the labs and produce at least the pertaining team lab classworks. Therefore the final score is the same of the 9 CFU exam and will be recorded only after attaining the green light on the laboratory attendance.
The final score can only be registered provided the lab exam is passed.
Extended program
9 CFU class.

Unit #1 (9 CFU, 54 h). Logic Design Fundamentals and introduction to microcontrollers.
- Introduction to digital electronic systems: operating principles and application fields. Models for the study of digital systems.
- Positional representation of numbers (decimal and binary systems). Octal and hexadecimal systems. Conversion among numerical systems. Arithmetic operations. Binary and alphanumerical codes (BCD, Excess 3, Gray, ASCII, 7-segments).
- Exercises on the numerical systems and code conversion.
- Postulates and theorems of the Boolean algebra. Classification of logic circuits. Functionally complete sets of logic operators. Cost criteria. Two-level simplification through Karnaugh maps, cost minimization through algebraic manipulation of expressions (multi-level circuits). Exclusive OR and parity. Classic design methodology of combinational circuits. Hierarchic design. Code converters. Decoder, encoder, multiplexer. Limits of the classic design methodology for combinational circuits: use of standard MSI and LSI components: synthesis with con decoder and OR and through multiplexer. Arithmetic functions. One's and Two's complement representation. Binary adder and subtractor. Overflow. Elements of hardware description language (VHDL).
- Exercises on combinational logic circuits.
- Sequential circuits. SR latch and D, master-slave SR and JK flip-flops, D, JK and T edge triggered flip flops. Mealy and Moore classification. Hints on asynchronous logic circuits and static hazards (glitch). Design methodology for synchronous logic circuits. State diagram and table, state coding and transition table, map of state and output variables, next state and output expressions, logic diagram. Synchronous circuits with synchronous and asynchronous inputs. Elementary modules for sequential elaboration: registers and counters. The SPI serial interface. Exercises on synchronous sequential circuits.
- Semiconductor memories. Architecture and classification (RAM, ROM, EPROM, E2PROM, Flash). ROMs and their architecture. Examples of programmable logic circuits: PLA. Synthesis of combinational logic circuits with PLA. Addressing methodologies for memories, address decoding.
- Exercises on memory address decoding.
- Introduction to microcontrollers. The ATmega328 microcontroller and the ArduinoUno platform.

Unit #2 (3CFU, 27 h). Basic concepts of digital electronics.
- Figures of merit of digital systems (logic levels based on input-output static function, input and output static characteristics, noise margins, dynamic characterization - in terms of transition and propagation delays- static and dynamic power dissipation, bypass capacitor, protection diodes).

12 CFU class.

Unit #1 (9 CFU, 54 h). Logic Design Fundamentals and introduction to microcontrollers. As above.

Unit #2 (3CFU, 27 h). Basic concepts of digital electronics. As above.

Unit #3 (3CFU, 33 h, laboratory). Introduction to the use of basic electronic devices and of the microcontroller.
ArduinoUno board hardware. Integrated Development Environment (IDE) and firmware structure. Setup () and loop () functions. Digital outputs and inputs. Pull-up nets; ArduinoUno functions for digital pin control: digitalRead (); digitalWrite (). Pulse Width Modulation (PWM); use of external transistors (MOSFET, BJT) to control power loads. ADC operation, successive approximation circuit, AREF pin. ArduinoUno functions for controlling the PWM outputs and for reading the ADC. Serial communication protocols (SPI and I2C). First laboratory exercises: PWM generation and waveform measurement with digital oscilloscope. Acquisition of an analog signal (DC voltage) and comparison with the value read by the digital multimeter. Conversion factor between integer returned by ADC and voltage; averages over time. Charge transient of a capacitor and graphic representation by serial plotter. Characteristic of the pn diode obtained by exploiting the PWM generator (variable voltage) and 2 analog inputs, one for voltage and one for current. Determination of the impulse response: case of the RC circuit; comparison with the theory. Use of transistors for the management of high currents; MOSFET and BJT with PWM on a resistive load. Driving inductive loads and free-wheeling diode: case of the relay. The bounce problem in mechanical switches: debouncing methods. Internal and external interruptions. Interruptions associated with external pins; interrupt mode: LOW, HIGH, CHANGE, RISING, FALLING. Outage Service Routine (ISR). The TC0 8-bit timer / counter: use of the timer, prescaler and control registers. Interrupt Mask and Interrupt Flag registers. Accurate time measurements; example: generation of an interrupt every 1 ms.
Condividi su