VOOZH about

URL: https://www.coursera.org/learn/real-time-mission-critical-systems-design

⇱ Real-Time Mission-Critical Systems Design | Coursera


Real-Time Mission-Critical Systems Design

Keep adding new skills with 10,000+ programs for $239 (usually $399). Save now.

Real-Time Mission-Critical Systems Design

4,979 already enrolled

Included with

β€’

Learn more

Ask Coursera

Gain insight into a topic and learn the fundamentals.
4.3

19 reviews

Intermediate level

Recommended experience

Flexible schedule
5 weeks at 10 hours a week
Learn at your own pace
Build toward a degree

Gain insight into a topic and learn the fundamentals.
4.3

19 reviews

Intermediate level

Recommended experience

Flexible schedule
5 weeks at 10 hours a week
Learn at your own pace
Build toward a degree

What you'll learn

  • Use of SECDED (Single Error Correction, Double Error Detection) codes for ECC (Error Correction Code) memories

  • How flash file systems work, along with wear leveling and the write amplification metric

  • Differences and common characteristics of high availability and high reliability

  • Methods and design for redundant hardware with cross strapping and recovery

Details to know

Shareable certificate

Add to your LinkedIn profile

Assessments

4 assignments

Taught in English

Build your subject-matter expertise

This course is part of the Real-Time Embedded Systems Specialization
When you enroll in this course, you'll also be enrolled in this Specialization.
  • Learn new concepts from industry experts
  • Gain a foundational understanding of a subject or tool
  • Develop job-relevant skills with hands-on projects
  • Earn a shareable career certificate

There are 4 modules in this course

This course can also be taken for academic credit as ECEA 5317, part of CU Boulder’s Master of Science in Electrical Engineering degree.

Upon completion of this course the learner will know the difference between systems you can bet your life on (mission critical) and those which provide predictable response and quality of service (reliable). This will be achieved not only by study of design methods and patterns for mission critical systems, but also through implementation of soft real-time systems and comparison to hard real-time. Methods of verification to determine ability to meet mission critical as well as soft real-time requirements will be learned so that the learner can properly assess risk, reliability and impact of failure in real-time systems. At the end of this course learners will be able to apply an architectural style (cyclic executive, RTOS, or embedded Linux) to more detailed design of a mission critical system, a soft real-time system, or a mixed hard and soft real-time system, including: ● Thorough understanding of hardware/software device interfaces and resource view for hardware abstraction layers (HAL, BSP) ● Design trade-offs with different real-time hardware architectures including single core, multi-core, hybrid-FPGA, GP-GPU, and DSP systems, with emphasis on multi-core ● Mission critical embedded systems architecture and key design elements ● Fault tolerant processing, memory, and I/O concepts This course includes specific hardware and software requirements. Please review the FAQ below for complete details.

This module covers RTES software to hardware interface using device abstraction and driver interfaces as well as system scaling.

What's included

11 videos13 readings1 assignment2 peer reviews1 discussion prompt

11 videosβ€’Total 224 minutes
  • Course Goals and Learning Objectivesβ€’6 minutes
  • Detailed Overview - with Course Assumed Prior Knowledgeβ€’39 minutes
  • Scalable Embedded I/O Bus Architecturesβ€’25 minutes
  • Demonstration: I/O, CPU, or Memory Bound?β€’14 minutes
  • Drivers and Device Interfacesβ€’23 minutes
  • Using Linux UVC Driver to Acquire Video Frames with OpenCV and V4L2β€’23 minutes
  • Digging Deeper into V4L2 API and UVC Driver (Camorama, V4L2-Ctl, etc.)β€’21 minutes
  • Code Walkthrough: Bt878 VxWorks RTOS Device Interfaceβ€’20 minutes
  • Key Differences between Linux and RTOS Driversβ€’10 minutes
  • RT Services Communication and Synchronizationβ€’28 minutes
  • Using Point-to-point Serial and TCP/IP for Embedded Systemsβ€’15 minutes
13 readingsβ€’Total 121 minutes
  • Course Updates and Accessibility Supportβ€’1 minute
  • Non-Credit Students: Welcome and Where to Find Helpβ€’10 minutes
  • Hardware & Software Requirementsβ€’10 minutes
  • EXTRA HELP: Home Lab Set Upβ€’10 minutes
  • Textbook: RTECS with Linux and RTOSβ€’10 minutes
  • CODE: CU Boulder Linux Example Code - Publicβ€’10 minutes
  • Guidelines for Code Quality Peer Reviewsβ€’10 minutes
  • Code Walkthrough for Peer Reviewsβ€’10 minutes
  • Basic Makefile Skills by Exampleβ€’10 minutes
  • Raspberry Pi Linux Driver Helpβ€’10 minutes
  • Example Linux Drivers from Jerry Coopersteinβ€’10 minutes
  • Advanced Unix/Linux and Network Programmingβ€’10 minutes
  • Video for Linux 2 (V4L2) API & UVC Driverβ€’10 minutes
1 assignmentβ€’Total 30 minutes
  • Quiz 1 - Device Interfaces and Software Driversβ€’30 minutes
2 peer reviewsβ€’Total 600 minutes
  • Using Message Queues or Ring Buffers with Video Dataβ€’420 minutes
  • Host Client Data Acquisition from an Embedded TCP/IP Serverβ€’180 minutes
1 discussion promptβ€’Total 10 minutes
  • Introduce Yourselfβ€’10 minutes

This module covers use of key algorithms such as error correct codes, redundant arrays of devices, and use of flash file systems with persistent memory.

What's included

11 videos2 readings1 assignment2 peer reviews

11 videosβ€’Total 224 minutes
  • Why We Need ECC? - Single Event Upset Fault Toleranceβ€’16 minutes
  • SECDED Approach to Memory Protectionβ€’22 minutes
  • Hamming SECDED Formulation Walk-throughβ€’24 minutes
  • Analysis: SECDED ECC Using a Model (Excel)β€’7 minutes
  • SECDED ECC Software Emulatorβ€’30 minutes
  • Flash memory Hardware Device Overviewβ€’25 minutes
  • Flash file systems - Sector Erase Wear Leveling - Introductionβ€’23 minutes
  • Flash Wear Leveling Example - Conclusionβ€’32 minutes
  • RAID for RT Embedded Systems Mission Critical Dataβ€’19 minutes
  • Code Demonstration: XOR RAID for Data Loss Fault Toleranceβ€’18 minutes
  • Code Walkthrough: File Based RAID 5 for RTESβ€’9 minutes
2 readingsβ€’Total 20 minutes
  • Error Correction Code - Hamming Examplesβ€’10 minutes
  • Example File RAID SRS (Software Req'ts Spec)β€’10 minutes
1 assignmentβ€’Total 30 minutes
  • Quiz 2 - Safe Working and Persistent Memoryβ€’30 minutes
2 peer reviewsβ€’Total 600 minutes
  • Testing the SECDED ECC Emulatorβ€’420 minutes
  • Linux Software RAID for Data Protection - by Experimentβ€’180 minutes

Service software implementation efficiency and optimization methods are covered so that computations can be completed by deadlines. Methods of profiling and tracing applications as well as the whole system are covered.

What's included

9 videos1 reading1 assignment1 peer review

9 videosβ€’Total 128 minutes
  • Optimizing Single-Threaded Code with the Compilerβ€’9 minutes
  • Optimizing Code – Thread Level (Sequential and Parallel)β€’21 minutes
  • Tracing and Profiling Tools Overviewβ€’27 minutes
  • Tracing and Profiling Application Code (gcov, syslog, and gprof)β€’13 minutes
  • Profiling and Tracing Your Platform and Application with Sysprof and KernelSharkβ€’9 minutes
  • Tracing Linux Kernel and Network Stack Eventsβ€’4 minutes
  • Overview of Top Linux Programming Errorsβ€’14 minutes
  • Note on Linux Methods of Synchronization Compared to RTOSβ€’17 minutes
  • Best Practices for RTES Programmingβ€’14 minutes
1 readingβ€’Total 10 minutes
  • Top 30 Linux and RTES Mistakes - How To Fixβ€’10 minutes
1 assignmentβ€’Total 30 minutes
  • Quiz 3 - Methods of Tracing and Debuggingβ€’30 minutes
1 peer reviewβ€’Total 480 minutes
  • Embedded File Based RAID Optimization and Co-processingβ€’480 minutes

This module integrates fault tolerant and recovery methods with overall strategies for system level fault detection, isolation and recovery. Design with consideration of failure modes and effects analysis is covered along with redundancy management for high availability.

What's included

5 videos1 assignment1 peer review

5 videosβ€’Total 121 minutes
  • FDIR - Fault Detection, Isolation, and Recovery - Theoryβ€’32 minutes
  • High Availability: Definition in Terms of Five Nine's Uptime or Better β€’35 minutes
  • System Integration Testing (Hardware, Firmware, and Software)β€’21 minutes
  • Making Software Reliable with SQAβ€’19 minutes
  • Infamous Mission Critical System Failures - Root Cause Analysisβ€’14 minutes
1 assignmentβ€’Total 30 minutes
  • Quiz 4 - High Availability and High Reliabilityβ€’30 minutes
1 peer reviewβ€’Total 480 minutes
  • Choose the Worst Real-Time Design Failure, Investigate the Root Cause and Presentβ€’480 minutes

Earn a career certificate

Add this credential to your LinkedIn profile, resume, or CV. Share it on social media and in your performance review.

Build toward a degree

This course is part of the following degree program(s) offered by University of Colorado Boulder. If you are admitted and enroll, your completed coursework may count toward your degree learning and your progress can transfer with you.ΒΉ

Instructor

Instructor ratings
4.9 (9 ratings)
University of Colorado Boulder
4 Coursesβ€’25,839 learners

Explore more from Electrical Engineering

Why people choose Coursera for their career

πŸ‘ Image

Felipe M.

Learner since 2018
"To be able to take courses at my own pace and rhythm has been an amazing experience. I can learn whenever it fits my schedule and mood."
πŸ‘ Image

Jennifer J.

Learner since 2020
"I directly applied the concepts and skills I learned from my courses to an exciting new project at work."
πŸ‘ Image

Larry W.

Learner since 2021
"When I need courses on topics that my university doesn't offer, Coursera is one of the best places to go."
πŸ‘ Image

Chaitanya A.

"Learning isn't just about being better at your job: it's so much more than that. Coursera allows me to learn without limits."

Frequently asked questions

System Requirements

● A Windows or Mac computer for remote access to the Raspberry Pi

● Home network with internet access and a router that allows the Raspberry Pi to be reached on the local network (Wi-Fi or Ethernet)

● SSH enabled on the Raspberry Pi (required)

● VNC enabled on the Raspberry Pi (optional, for remote desktop access)

Hardware Requirements

To complete this specialization, you will need a home lab setup based on a supported embedded Linux platform. The following configuration is required and tested for all course activities.

Required Hardware

● Embedded Linux hardware platform - Recommended: Raspberry Pi 3B+ (Raspberry Pi family or equivalent)

● MicroSD card (16 GB minimum; 32 GB recommended)

● 5V / 2.5A power supply with switch

● UVC-compatible USB camera (USB 2.0 or better)

● HDMI cable

● HDMI monitor + keyboard + mouse (for initial setup only)

● Network connection between the Raspberry Pi and your home router (Wi-Fi or Ethernet)

Recommended Hardware Configuration

Raspberry Pi 3B+, which may be sourced from:

● SparkFun(~$44, board only) or

● CanaKit Raspberry Pi 3 Model B+ Starter Kit(~$125, includes board) plus:

● MicroSD card (preloaded with NOOBS or Raspberry Pi OS)

● Heat sinks

● Case

● 5V / 2.5A power supply with switch

● HDMI cable

● UVC-compatible USB Camera (USB 2.0 or better)

Alternative Hardware Configurations

While the Raspberry Pi 3B+ is the officially supported platform, you may use other Linux-capable embedded platforms at your own risk:

● Raspberry Pi 4 (offers USB 3.0, 2+ GB RAM, and Gigabit Ethernet)

● Jetson Nano, DE10-SoC, or similar boards (advanced users only; self-support required)

Note: All starter code provided in this specialization is tested and verified on the Raspberry Pi 3B+ with Raspberry Pi OS (formerly Raspbian).

Software Requirements

Ability to install and use one of the following remote-access tools on your computer:

● MobaXterm (recommended for Windows)

● PuTTY

● VNC Viewer

To access the course materials, assignments and to earn a Certificate, you will need to purchase the Certificate experience when you enroll in a course. You can try a Free Trial instead, or apply for Financial Aid. The course may offer 'Full Course, No Certificate' instead. This option lets you see all course materials, submit required assessments, and get a final grade. This also means that you will not be able to purchase a Certificate experience.

When you enroll in the course, you get access to all of the courses in the Specialization, and you earn a certificate when you complete the work. Your electronic Certificate will be added to your Accomplishments page - from there, you can print your Certificate or add it to your LinkedIn profile.

Yes. In select learning programs, you can apply for financial aid or a scholarship if you can’t afford the enrollment fee. If fin aid or scholarship is available for your learning program selection, you’ll find a link to apply on the description page.

Financial aid available,