Real-Time Embedded Systems Theory and Analysis

所在平台: Coursera

课程主页: https://www.coursera.org/learn/real-time-embedded-theory-analysis

课程评论:没有评论

第一个写评论        关注课程

课程简介

课程名称:实时嵌入式系统理论与分析 概述:本课程为本科生提供学分,也可以作为科罗拉多大学博尔德分校电气工程硕士学位课程ECEA 5316的一部分。课程深入探讨调度策略和可行性判定模型的数学推导与复习,包括通过手动和利用速率单调工具进行比较,分析在本地Linux系统上运行的实时调度线程的实际性能。经过本课程学习,学员将能够完整推导固定优先级速率单调的可行性上界,并为速率单调政策提供正当理由,能够与动态优先级调度(包括最早截止时间优先和最小宽松性政策)进行比较。 学习结束后,学员将能够完整推导并解释速率单调可行性最上界的数学模型,此外能够进行固定与动态优先级软件服务的时序图分析。学员还将学习使用分析工具(如Cheddar)来自动化进行时序分析,并与实际性能进行比较。 具体学习目标包括: - 完整的速率单调理论(数学模型) - 固定优先级速率单调政策与动态优先级(最早截止时间优先和最小宽松性政策)之间的区别 - 多频率主控程序、优先级抢占的实时操作系统服务及传统操作系统(Linux)上的实时线程服务的调度理论与实践编程 - 使用Raspberry Pi 3b基于POSIX实时扩展构建简单的Linux多服务系统,包括序列处理及验证理论与实践之间的一致性的方法 - 使用Cheddar进行时序图生成与分析 课程大纲: 1. **实时调度与速率单调最上界推导** - 学习速率单调最上界条件的数学分析及其挑战和替代方案。模块将扩展至RM调度政策,即截止时间单调调度政策,包括确定速率单调调度政策精确可行性的完成测试的实现。 2. **服务设计可行性分析实践与实施方法** - 描述实时服务的设计模式以及实现中的挑战,如无限制阻塞,并描述正常操作——在ISR与每个线程或任务之间的服务同步请求,初始化,保持活动发布,错误处理和终止。 3. **动态优先级最早截止时间优先与最小宽松性优先** - 学习动态优先级政策的使用时机,柔性实时的优点,及其在错误检测和恢复中的缺点,与固定优先级的可行性判定和效率进行比较的挑战。 4. **同步与有界阻塞与无界阻塞** - 描述超出CPU使用的资源(内存、I/O和存储)的问题,以及如何避免或从中恢复的问题。

课程大纲

Name:Real-Time Scheduling and Rate Monotonic Least Upper Bound Derivation

Description:At the end of this module, you will be able to analyze the mathematics involved in Rate Monotonic Least Upper Bound Condition along with its challenges and alternatives to it. An extension to RM scheduling policy i.e. Deadline Monotonic Scheduling Policy along with implementation of completion test for determining exact feasibility for Rate Monotonic Scheduling policy is also in scope of this module. Working on Programming assignments will give system level implementation of real time services and determining the best scheduling policies for meeting the deadlines for the designed real-time systems along with their trade offs.

Name:Service Design Feasibility Analysis Practice and Methods of Implementation

Description:At the end of this module learners will be able to describe the design pattern for real-time services, describe implementation challenges such as unbounded blocking and describe normal operation - request for service synchronization between an ISR and each thread or task, initialization, keep-alive posting, error handling, and termination.

Name:Dynamic priority Earliest Deadline First and Least Laxity First

Description:At the end of this Module learners will know when to use dynamic priority policies, advantages of them for soft real-time, disadvantages for error detection and recovery, challenges of feasibility determination and efficiency compared to fixed priority.

Name:Synchronization and Bounded vs. Unbounded Blocking

Description:At the end of this Module learners will be able to describe issues with resources used beyond CPU (memory, I/O, and storage) and how to avoid problems or recover from them

课程评论(0条)

课程详情

This course can also be taken for academic credit as ECEA 5316, part of CU Boulder’s Master of Science in Electrical Engineering degree. This course provides an in-depth and full mathematical derivation and review of models for scheduling policies and feasibility determination by hand and with rate monotonic tools along with comparison to actual performance for real-time scheduled threads running on a native Linux system. By the end of this course the learner will be able to full derive the fixed priority rate monotonic least upper bound for feasibility as well as justifying the rate monotonic policy and will be able to compare to dynamic priority scheduling including earliest deadline first and least laxity policies. At the end of this course learners will be able to fully derive and explain the math model for the rate monotonic least upper bound as well as performing timing diagram analysis for fixed and dynamic priority software services. Tools to provide analysis will be learned (Cheddar) to automate timing analysis and to compare to actual performance. Specific objectives include: ● Rate monotonic theory (complete math models) ● Differences between fixed priority rate monotonic policy and dynamic priority earliest deadline first and least laxity policies ● Scheduling theory and practice writing code for multi-frequency executives, priority preemptive RTOS services, and real-time threaded services on traditional operating systems (Linux) ● Building a simple Linux multi-service system using POSIX real-time extensions on Raspberry Pi 3b using sequencing and methods to log and verify agreement between theory and practice ● Timing diagram generation and analysis using Cheddar

课程标签

0人关注该课程

主题相关的课程