Alessia SAGGESE | REAL TIME SYSTEMS AND APPLICATIONS
Alessia SAGGESE REAL TIME SYSTEMS AND APPLICATIONS
cod. 0622700097
REAL TIME SYSTEMS AND APPLICATIONS
0622700097 | |
DEPARTMENT OF INFORMATION AND ELECTRICAL ENGINEERING AND APPLIED MATHEMATICS | |
EQF7 | |
COMPUTER ENGINEERING | |
2023/2024 |
OBBLIGATORIO | |
YEAR OF COURSE 2 | |
YEAR OF DIDACTIC SYSTEM 2022 | |
AUTUMN SEMESTER |
SSD | CFU | HOURS | ACTIVITY | |
---|---|---|---|---|
ING-INF/05 | 3 | 24 | LESSONS | |
ING-INF/05 | 3 | 24 | EXERCISES | |
ING-INF/05 | 3 | 24 | LAB |
Objectives | |
---|---|
KNOWLEDGE AND UNDERSTANDING: THE COURSE AIMS TO PROVIDE KNOWLEDGE FOR THE DESIGN AND IMPLEMENTATION OF FIRMWARE FOR ARM MICROCONTROLLERS BASED ON REAL-TIME OPERATING SYSTEMS. IN PARTICULAR, THE COURSE WILL PROVIDE THE THEORETICAL FOUNDATIONS NECESSARY TO UNDERSTAND THE MAIN ISSUES INHERENT TO THE SCHEDULING OF REAL-TIME TASKS. APPLIED KNOWLEDGE AND UNDERSTANDING: PRACTICAL EXAMPLES FOCUSED ON FREERTOS SYSTEMS WILL BE AIMED AT SHOWING HOW TO IMPLEMENT TASK-BASED FIRMWARE, SCHEDULING, MEMORY MANAGEMENT, COMMUNICATION AND CONCURRENCY BETWEEN TASKS AS WELL AS HOW TO STRUCTURE SIMPLE DRIVERS TO INTERFACE WITH PERIPHERALS BASED ON SERIAL INTERFACES. THE COURSE CONCLUDES WITH A PROJECT ACTIVITY THAT HAS THE OBJECTIVE OF DESIGNING, CREATING AND VALIDATING THE FIRMWARE FOR CONTROLLING A ROVER. |
Prerequisites | |
---|---|
FOR THE SUCCESSFUL ACHIEVEMENT OF THE OBJECTIVES OF THE COURSE, KNOWLEDGE OF THE C LANGUAGE, OF THE STM32CUBEIDE ENVIRONMENT FOR PROGRAMMING MICROCONTROLLERS PRODUCED BY STMICROELECTRONICS AND BASIC KNOWLEDGE OF OPERATING SYSTEMS IS REQUIRED. |
Contents | |
---|---|
TEACHING UNIT 1: REAL-TIME OPERATING SYSTEMS AND SCHEDULING (LESSON/EXERCISE/WORKSHOP HOURS 14/4/0) - 1 (2 HOURS LESSON): INTRODUCTION TO THE COURSE, RECALL TO THE CONCEPTS OF REAL-TIME SYSTEMS AND INTRODUCTION TO REAL-TIME OPERATING SYSTEMS - 2 (2 HOURS LESSON): INTRODUCTION TO BASIC CONCEPTS: TIME CONSTRAINTS, PRECEDENCE CONSTRAINTS, RESOURCE CONSTRAINTS, THE CONCEPT OF SCHEDULING AND PERFORMANCE METRICS - 3 (2 HOURS LESSON): SCHEDULING OF APERIODIC TASKS - 4 (2 HOURS LESSON): SCHEDULING OF PERIODIC TASKS - 5 (2 HOURS EXERCISE): EXERCISES ON THE SCHEDULING OF APERIODIC AND PERIODIC TASKS - 6 (2 HOURS LESSON): SPORADIC SERVERS, FIXED-PRIORITY SERVERS, DYNAMIC-PRIORITY SERVERS - 7 (2 HOURS LESSON): PROTOCOLS FOR ACCESSING RESOURCES - 8 (2 HOURS LESSON): DESIGN ISSUES AT THE KERNEL LEVEL AND AT THE APPLICATION LEVEL - 9 (2 HOURS EXERCISE): EXERCISES ON FIXED-PRIORITY SERVERS AND ACCESS TO RESOURCES KNOWLEDGE AND UNDERSTANDING: KNOWLEDGE OF THE BASIC CONCEPTS OF REAL-TIME TASK SCHEDULING, UNDERSTANDING OF THE MAIN DESIGN ISSUES OF HARD REAL-TIME SYSTEMS APPLIED KNOWLEDGE AND UNDERSTANDING: ABILITY TO DESIGN AND ANALYZE THE SCHEDULING OF REAL-TIME TASKS DIDACTIC UNIT 2: RTOS PROGRAMMING BASICS (LESSON/EXERCISE/LABORATORY HOURS 4/6/4) - 1 (2 HOURS) LESSON: INTRODUCTION TO FREERTOS, CMSIS AND THE MAIN DEVELOPMENT ENVIRONMENTS - 2 (2 HOURS TUTORIAL): CONFIGURATION OF THE DEVELOPMENT ENVIRONMENT AND DEBUGGING TOOLS - 3 (2 HOURS PRACTICE): HELLO WORLD WITH FREERTOS (USING THE HAL WITH FREERTOS TO LIGHT UP LEDS) - 4 (2 HOURS PRACTICE): HELLO WORLD WITH FREERTOS (USING MULTIPLE TASKS FOR FLASHING LEDS AT DIFFERENT FREQUENCIES VIA LOOP) - 5 (2 HOURS LESSON): SYNCHRONIZATION AND COMMUNICATION BETWEEN TASKS (QUEUES AND SIGNALS) - 6 (2 HOURS LABORATORY): EXERCISE ON SYNCHRONIZATION AND COMMUNICATION BETWEEN TASKS (COORDINATION BETWEEN TWO BUTTON READING TASKS AND LED SWITCHING ON IN LOOP) - 7 (2 HOURS LABORATORY): EXERCISE ON SYNCHRONIZATION AND COMMUNICATION BETWEEN TASKS (EXERCISE AS ABOVE BUT WITH MORE LEDS) KNOWLEDGE AND UNDERSTANDING: UNDERSTANDING OF THE BASIC CONCEPTS OF THE FREERTOS OPERATING SYSTEM APPLIED KNOWLEDGE AND UNDERSTANDING: DESIGN, BUILD AND TEST A FIRMWARE BASED ON FREERTOS. TEACHING UNIT 3: I/O WITH FREERTOS (LESSON/EXERCISE/WORKSHOP HOURS 02/0/22) - 1 (2 HOURS LESSON): BASIC STRUCTURE OF A DRIVER ON FREERTOS - 2 (2 HOURS LAB): WRITING A UART DRIVER WITH POLLING - 3 (2 HOURS LAB): WRITING A UART DRIVER WITH POLLING - 4 (2 HOURS LAB): WRITING A UART DRIVER WITH INTERRUPTS - 5 (2 HOURS LAB): WRITING A UART DRIVER WITH INTERRUPTS - 6 (2 HOURS LAB): WRITING A UART DRIVER WITH DMA (BASIC) - 7 (2 HOURS LAB): WRITING A UART DRIVER WITH DMA (BUFFERING) - 8 (2 HOURS LAB): WRITING A UART DRIVER WITH DMA (BUFFERING) - 9 (2 HOURS LAB): WRITING A UART DRIVER WITH DMA (STREAM BUFFER) - 10 (2 HOURS LAB): WRITING A UART DRIVER WITH DMA (STREAM BUFFER) - 11 (2 HOURS WORKSHOP): ADVANCED USE OF QUEUES TO IMPROVE THE DECOUPLING BETWEEN TASKS - 12(2 HOURS WORKSHOP): ADVANCED USE OF QUEUES TO IMPROVE THE DECOUPLING BETWEEN TASKS KNOWLEDGE AND UNDERSTANDING: UNDERSTANDING OF THE MAIN WAYS OF CREATING A DRIVER FOR THE FREERTOS SYSTEM. APPLIED KNOWLEDGE AND UNDERSTANDING: TO DESIGN, BUILD, AND TEST A UART-BASED DEVICE DRIVER FOR THE FREERTOS SYSTEM. DIDACTIC UNIT 4: PROJECT WORK (16 HOURS) PROJECT WORK HYPOTHESIS: DESIGN, IMPLEMENTATION AND VALIDATION OF THE REAL-TIME FIRMWARE STRUCTURE WITHIN WHICH THE ROVER TASKS WILL BE INTEGRATED. KNOWLEDGE AND UNDERSTANDING: UNDERSTAND THE MAIN ISSUES IN THE DESIGN, IMPLEMENTATION AND VALIDATION OF A GENERIC FIRMWARE FOR ROVER CONTROL. APPLIED KNOWLEDGE AND UNDERSTANDING: DESIGN AND IMPLEMENT THE STRUCTURE OF A REAL-TIME FIRMWARE FOR ROVER CONTROL. |
Teaching Methods | |
---|---|
THE COURSE IS DIVIDED INTO A SET OF THEORETICAL LESSONS AND EXERCISES, WITH A PART OF THE COURSE DEDICATED TO THE APPLICATION PROJECT. IN THE EXERCISES SOME EXAMPLES WILL BE PRESENTED ABLE TO CONCRETELY EXPLAIN WHAT HAS BEEN ILLUSTRATED FROM THE THEORETICAL POINT OF VIEW. |
Verification of learning | |
---|---|
THE EVALUATION OF THE STUDENTS WILL BE DECLINED THROUGH THE FOLLOWING PHASES: - EVALUATION OF THE STUDENT'S ABILITY TO KNOW HOW TO DESIGN SIGNATURE FOR ARMS BASED ON REAL TIME SYSTEMS: THE STUDENTS WILL BE DIVIDED INTO WORKING GROUPS, AND WILL HAVE TO DOCUMENT AND DEVELOP, IN ALL ITS PHASES, THE DESIGN AND CREATION OF A SIGNATURE APPLICATION SYSTEM AND DEVICE DRIVERS FOR REAL TIME APPLICATIONS. - ASSESSMENT OF THE STUDENT'S ACQUISITION OF THEORETICAL TOPICS: AFTER THE DELIVERY OF THE PROJECT, THE STUDENT WILL HAVE TO SHOW THAT THEY HAVE ACQUIRED SKILLS ON THE THEORETICAL TOPICS THROUGH AN ORAL EXAMINATION IN WHICH THE DEVELOPED PROJECT WILL BE DISCUSSED. |
Texts | |
---|---|
HANDS-ON RTOS WITH MICROCONTROLLERS BOOK AND SOURCE CODE OF THE EXERCISES INCLUDED IN THE BOOK BOOK HARD REAL-TIME COMPUTING SYSTEMS - PREDICTABLE SCHEDULING ALGORITHMS AND APPLICATIONS (BUTTAZZO) COURSE SLIDES AND EXERCISES |
More Information | |
---|---|
THE COURSE IS HELD IN ITALIAN |
BETA VERSION Data source ESSE3 [Ultima Sincronizzazione: 2024-11-05]