The document outlines the course COSC3026: Real Time and Embedded Systems at Adigrat University, detailing its objectives, structure, and content. It covers essential topics such as real-time operating systems, scheduling algorithms, and embedded system architecture, along with practical lab sessions. The assessment methods and recommended textbooks for the course are also provided.
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0 ratings0% found this document useful (0 votes)
22 views
Course Plan
The document outlines the course COSC3026: Real Time and Embedded Systems at Adigrat University, detailing its objectives, structure, and content. It covers essential topics such as real-time operating systems, scheduling algorithms, and embedded system architecture, along with practical lab sessions. The assessment methods and recommended textbooks for the course are also provided.
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 3
Adigrat University Engineering and technology
Department: computer science
Course title: Real Time and Embedded Systems Course code: COSC3026 Contact hrs: 2 Credit hours: 3 Lab hrs: 3 ECTS: 5 Tutorial hrs: 2 Prerequisite: CoSc 3025- Microprocessor and Assembly Language Programming, CoSc3023/Operating Systems Instructor Name: G/her G. Course Information: Instructor’s Contact Information: Academic Year: 2017 E.C Office: B-55 R-19 Semester: II Phone: Target group: CS III Email: gerizaba@gmail.com Course Description This course provides an overview of the unique concepts and techniques needed to design and implement computer systems with real-time response requirements in an embedded environment. It contrasts the concepts and techniques of real-time and embedded systems with those of traditional computer systems. Topics include basic concepts of real-time and embedded systems, hardware features, sensors and actuators, programming languages, real-time operating systems, cyclic and priority-based scheduling, concurrent multitasking, time-sharing access to resources, real-time applications, fault-tolerance, deterministic behavior, hardware/software integration, embedded systems synchronization techniques, performance optimization, and current trends such as internet connectivity in real-time and embedded systems. Course Objectives The course provides students with opportunities to learn about major issues in real-time and embedded systems. The objectives are: 1. To identify the major differences and design challenges for real-time and embedded systems compared to traditional performance-based computing systems. 2. To understand and apply scheduling algorithms for real-time computing, including techniques to evaluate worst-case delays and utilization bounds. 3. To apply model-driven development approaches to construct target execution environments for simulation analysis and rapid prototyping, and to verify real-time requirements. 4. To evaluate, compare, and contrast different scheduling algorithms and real-time and embedded kernel designs. 5. To apply knowledge of real-time and embedded system concepts to address open research questions in the field. Course Outline Chapter 1: Introduction (6 Hours) 1.1. Definitions, characteristics, and examples of real-time and embedded systems 1.2. Model of real-time systems 1.3. Types of real-time tasks 1.4. Modeling timing constraints 1.5. Computer organization concepts and memory 1.6. Design process Chapter 2: Embedded System Architecture (8 Hours) 2.1.Hardware architectures for embedded systems 2.2 ARM Cortex M0+ Hardware Overview: Ports, Registers, GPIO, Analog I/O, ADC/DAC 2.3 Communication: Parallel, USB/Serial, USART, SPI, TWI, Ethernet, Wireless 2.4 ATmega32 Microcontroller Architecture 2.5 Assembly Language Programming with ATmega32 Instruction Set 2.6 Programming in C to interface peripherals, interrupts, ISR, and timers Chapter 3: Software Frameworks for Real-Time and Embedded Systems (8 Hours) 3.1 Real-time operating systems: definitions, characteristics, functionality, structure, and support for applications 3.2 Features of a real-time operating system 3.3 General and specific microprocessors 3.4 Inter-process communication 3.5 Real-time task scheduling 3.6 Dynamic allocation of tasks 3.7 Scheduling - 3.7.1 Cyclic scheduling - 3.7.2 Priority-based scheduling 3.8 Multi-tasking and concurrency issues 3.9 Handling resource sharing and dependencies - 3.9.1 Priorities and reentrancy - 3.9.2 Resource sharing protocols 3.10 Fault-tolerance 3.11 Synchronization techniques - 3.11.1 Centralized clock synchronization - 3.11.2 Distributed clock synchronization 3.12 Real-time applications 3.13 RTOS support for semaphores, queues, and events Chapter 4: Embedded Systems Design Issues (6 Hours) 4.1 Memory management 4.2 Hardware development 4.3 Software development Chapter 5: Real-Time Communication (4 Hours) 5.1 Basic concepts and examples of real-time communication 5.2 Real-time communication in LAN 5.3 Bounded access protocol 5.4 Real-time communication over the internet 5.5 Internet of Things (IoT) 5.6 Sensors and actuators 5.7 Resource reservation 5.8 Traffic shaping and policing 5.9 Scheduling mechanisms and QoS models Lab Contents Software: Atmel Studio 7.0 or above, Proteus Professional Hardware: ARDUINO328P Kit 1. Lab-1: Assembly language programming with data transfer instructions 2. Lab-2: Assembly language programming with branch, call, delay, and stack instructions 3. Lab-3: Assembly language programming with arithmetic, logic, rotation instructions, BCD, and ASCII conversions 4. Lab-4: C programming for data transfer through ports, LED, and 7-segment display 5. Lab-5: C programming with timers and interrupts 6. Lab-6: C programming for serial and parallel communication 7. Lab-7: C programming for interfacing peripherals 8. Lab-8: Building Arduino from scratch 9. Lab-9: Implementing sensor-actuator systems 10. Lab-10: Developing a sample real-time application Assessment Methods - Assignments/Quizzes: 10% - Mid-Semester Examination: 20% - Project: 20% - Final Examination: 50% Textbooks 1. The AVR Microcontroller and Embedded Systems using Assembly and C by Muhammed Ali Mazidi et al., Prentice Hall, 2011. 2. Hard Real-Time Computing Systems: Predictable Scheduling Algorithms and Applications by Giorgio C. Buttazzo, Springer, Second/Third Edition, 2004/2011. 3. Real-Time Systems by Jane Liu, Prentice Hall, ISBN: 0130996513. References 1. Real-Time Systems by C.M. Krishna and K.G. Shin, McGraw Hill, 1997. 2. High-Embedded Computing: Architectures, Applications, and Methodologies by Wayne Wolf, Morgan-Kaufman, 2007. 3. Embedded C Programming and the Atmel AVR by Richard Barnett, Larry O’Cull, Sarah Cox, 2nd Ed., DELMAR CENGAGE Learning, 2007. 4. Embedded Systems – Architecture, Programming, and Design by Raj Kamal, 2nd Ed., Tata McGraw Hill Publication.
(Ebook) Becoming an Effective Policy Advocate: From Policy Practice to Social Justice by Bruce S. Jansson ISBN 9781285064079, 1285064070 2024 scribd download