General Avionics Software Specification Paper by: C. Douglass Locke, David R. Vogel, Lee Lucas, John B. Goodenough Presented by: Jeremy Erickson August.

Slides:



Advertisements
Similar presentations
FatMax Licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 2.5 LicenseCreative Commons Attribution-NonCommercial-ShareAlike 2.5.
Advertisements

Understanding an Apps Architecture ASFA Computer Science: Principles Fall 2013.
Executional Architecture
Ch 11 Distributed Scheduling –Resource management component of a system which moves jobs around the processors to balance load and maximize overall performance.
Work Breakdown Structures. Purpose The WBS shows different levels within the product hierarchy. For Government program managers levels 1-3 are of prime.
Lecture 9: Ground Proximity Warning System (GPWS)
Events and Interrupts. Overview  What is an Event?  Examples of Events  Polling  Interrupts  Sample Timer Interrupt example.
Input-output and Communication Prof. Sin-Min Lee Department of Computer Science.
Process Description and Control
Process Description and Control Module 1.0. Major Requirements of an Operating System Interleave the execution of several processes to maximize processor.
1 Soft Timers: Efficient Microsecond Software Timer Support For Network Processing Mohit Aron and Peter Druschel Rice University Presented By Jonathan.
Page 1 Processes and Threads Chapter Processes 2.2 Threads 2.3 Interprocess communication 2.4 Classical IPC problems 2.5 Scheduling.
Chapter 14 Chapter 14: Server Monitoring and Optimization.
Transaction Processing IS698 Min Song. 2 What is a Transaction?  When an event in the real world changes the state of the enterprise, a transaction is.
REAL-TIME SOFTWARE SYSTEMS DEVELOPMENT Instructor: Dr. Hany H. Ammar Dept. of Computer Science and Electrical Engineering, WVU.
Chapter 1 and 2 Computer System and Operating System Overview
Chapter 1 and 2 Computer System and Operating System Overview
Instructor: Tasneem Darwish1 University of Palestine Faculty of Applied Engineering and Urban Planning Software Engineering Department Software Systems.
Testing - an Overview September 10, What is it, Why do it? Testing is a set of activities aimed at validating that an attribute or capability.
Data Processing Equipment
Software. Task Time (minutes)  1. Complete self assessment sheet Read through the chapter on software Work through the questions on the.
Hands-On Microsoft Windows Server 2008 Chapter 11 Server and Network Monitoring.
Windows Server 2008 Chapter 11 Last Update
Release & Deployment ITIL Version 3
The Design and Performance of A Real-Time CORBA Scheduling Service Christopher Gill, David Levine, Douglas Schmidt.
System Resources INFO1119 (Fall 2012).
System Testing There are several steps in testing the system: –Function testing –Performance testing –Acceptance testing –Installation testing.
Introduction to Embedded Systems
REAL-TIME SOFTWARE SYSTEMS DEVELOPMENT Instructor: Dr. Hany H. Ammar Dept. of Computer Science and Electrical Engineering, WVU.
Unit B065 – Coding a solution PREP WORK 1)Make sure you keep a work log / diary. Use the table on page 16 of the hand book as a template 2)Keep a bibliography.
Objectives Understand the basic concepts and definitions relating to testing, like error, fault, failure, test case, test suite, test harness. Explore.
Software Testing Life Cycle
Acceleration Based Pedometer
Copyright © 2008 Pearson Education, Inc. Publishing as Pearson Addison-Wesley Chapter 3: Operating Systems Computer Science: An Overview Tenth Edition.
Introduction to Embedded Systems Rabie A. Ramadan 6.
Event Management & ITIL V3
(More) Interfacing concepts. Introduction Overview of I/O operations Programmed I/O – Standard I/O – Memory Mapped I/O Device synchronization Readings:
The Functions of Operating Systems Interrupts. Learning Objectives Explain how interrupts are used to obtain processor time. Explain how processing of.
Triggers A Quick Reference and Summary BIT 275. Triggers SQL code permits you to access only one table for an INSERT, UPDATE, or DELETE statement. The.
Siebel 8.0 Module 5: EIM Processing Integrating Siebel Applications.
REAL-TIME SOFTWARE SYSTEMS DEVELOPMENT Instructor: Dr. Hany H. Ammar Dept. of Computer Science and Electrical Engineering, WVU.
System Engineering Experiences Harold Sasnowitz, IEEE Life Senior Member.
Time Management.  Time management is concerned with OS facilities and services which measure real time, and is essential to the operation of timesharing.
Apply Quality Management Techniques Project Quality Processes Certificate IV in Project Management Qualification Code BSB41507 Unit Code BSBPMG404A.
Meeting Management/Planning. Today Go over basics of meeting management Introduce key elements of creating a plan.
Lecture 11 Page 1 CS 111 Online Virtual Memory A generalization of what demand paging allows A form of memory where the system provides a useful abstraction.
1 Soft Timers: Efficient Microsecond Software Timer Support For Network Processing Mohit Aron and Peter Druschel Rice University Presented By Oindrila.
Operating Systems 1 K. Salah Module 1.2: Fundamental Concepts Interrupts System Calls.
Software Engineering1  Verification: The software should conform to its specification  Validation: The software should do what the user really requires.
Intermediate 2 Computing Unit 2 - Software Development.
Organizational Project Management Maturity Organizational Project Management Maturity Model (OPM3) PMI-MN Breakfast sessions Improvement Planning.
A presentation for Brian Evans’ Embedded Software Class By Nate Forman Liaison Technology Inc. 3/30/2000 For Real-Time Scheduling.
Chapter 3 Operating Systems. © 2005 Pearson Addison-Wesley. All rights reserved 3-2 Chapter 3 Operating Systems 3.1 The Evolution of Operating Systems.
Windows Operating System Internals - by David A. Solomon and Mark E. Russinovich with Andreas Polze Unit OS3: Concurrency 3.3. Advanced Windows Synchronization.
Peter W. PhillipsATLAS SCT Week, CERN, September/October 2002 Electrical Tests of SCT modules using RODs Peter W Phillips Rutherford Appleton Laboratory.
Interrupt driven I/O Computer Organization and Assembly Language: Module 12.
Lecture 12 Page 1 CS 111 Online Using Devices and Their Drivers Practical use issues Achieving good performance in driver use.
1 Process Description and Control Chapter 3. 2 Process A program in execution An instance of a program running on a computer The entity that can be assigned.
Embedded Computer - Definition When a microcomputer is part of a larger product, it is said to be an embedded computer. The embedded computer retrieves.
DICOMwebTM 2015 Conference & Hands-on Workshop University of Pennsylvania, Philadelphia, PA September 10-11, 2015 DICOMweb Workflow API (UPS-RS) Jonathan.
Embedded Real-Time Systems Processing interrupts Lecturer Department University.
Memory management The main purpose of a computer system is to execute programs. These programs, together with the data they access, must be in main memory.
The F-35 Cockpit: Enabling the Pilot as a Tactical Decision Maker
Processes and Threads Chapter 3 and 4 Operating Systems: Internals and Design Principles, 6/E William Stallings Patricia Roy Manatee Community College,
Processes and threads.
FAULT TOLERANCE TECHNIQUE USED IN SEAWOLF SUBMARINE
Process Description and Control
CSE 153 Design of Operating Systems Winter 2019
Chapter 13: I/O Systems.
Chapter 13: I/O Systems “The two main jobs of a computer are I/O and [CPU] processing. In many cases, the main job is I/O, and the [CPU] processing is.
Presentation transcript:

General Avionics Software Specification Paper by: C. Douglass Locke, David R. Vogel, Lee Lucas, John B. Goodenough Presented by: Jeremy Erickson August 27, 2010

System Structure - Overview Main focus of paper

Head-Up Display The Head-Up Display (HUD) is imposed on the pilot's view out the cockpit. “Reticles” are crosshairs for potential targets Image source: Wikipedia

Multi-Purpose Display (MPD) Shows anything else needed Normally a map of tactical situation, but has other modes as well.

Keyset This is just the set of keys the aircrew uses to interact with the computer for things like target selection.

Hands-On Throttle and Stick These are actual hardware controls used to maneuver the plane, which could function even if the mission computer fails.

Stores Stores are “items fastened to racks underneath the aircraft” In practice, stores we care about are weapons such as bombs. We have to keep track of how many are left.

Display Processor This processor does low-level stuff to interact with various display hardware. It's not the focus of this paper, so we don't really know what its tasks look like.

Inertial Navigation System Sensor system that provides information about position and velocity Also provides reference data for attitude and heading May have RT tasks, but they're not talked about in this paper.

Air Data Computer (ADC) Barometric altimeter and dynamic and static pressure data Again, outside the scope of this paper

Stores Management System (SMS) This computer does all the low-level interaction with the weapons and senses the status. Once again out of scope of the paper

Mission Control Computer (MCC) Main focus of paper that does “navigation, sensor control, weapons targeting and release, controls and displays management, and fault isolation test.” More on this later...

Radar The main radar component is used to track targets the plane may attack.

Radar Altimeter (RALT) The radar altimeter indicates height above the ground

Radar Warning Receiver (RWR) This component warns when we are scanned by an enemy radar

Communication All systems communicate over a single serial bus. Communication with the MCC is done entirely using polling, not interrupts. Interrupts may exist within the MCC, however.

Timing All tasks are executed periodically. Aperiodic work can happen, but is executed by a periodic task (we would call this a server or a container). Some tasks may not always run. The plane will have different modes of operation based on what it is doing (e.g. takeoff vs. combat), but the paper only considers one mode. Where do timing requirements come from?

Three Types of Timing Requirements Hardware requirements e.g. communication with sensors Algorithmic requirements e.g. numerical stability for weapon delivery computations Human factors e.g. making display updates appear “instantaneous”

Specific Tasks Next the paper gets into a “deep dive” with specific tasks in the MCC. We don't have time to discuss all the details, but we'll discuss the basic categories of tasks.

Navigation These tasks update aircraft position and motion information based on sensors or aircrew input, and provide steering cues to the aircrew. This category has two periodic tasks which always run.

Radar Control Radar can can operate in ground map, ground search, or single-target track modes, and radar control behaves appropriately. Different tasks are operative in each mode, and the paper ignores ground map mode since it's not used during attack. A periodic task for each of tracking and searching, and a user-triggered task for initiating tracking.

Targeting Targeting must be done in several stages: A target must be designated and then confirmed. Later, the target must be tracked and in some cases “sweetened” (improved). Several tasks take care of these functions. Only tracking is periodic; the others are triggered by the user or by previous task completion.

Weapon Control Weapon control involves several stages. The aircrew selects which weapon(s) to fire, how many, and at what intervals. These are implemented with user-trigggered tasks. Weapon trajectory is computed with a periodic task but can be reinitiated with an aperiodic task (not sure on trigger). The weapons are released by a set of scheduled tasks that could be periodic with varying periods

Controls and Displays Both the HUD and the MPD displays need to be updated. The relevant tasks are typically periodic. Various components must accept user input. These are generally user-trigged tasks.

RWR Control The Radar Warning Receiver must be programmed with specific frequencies it is supposed to care about. I'm not clear why the task to accept input would be periodic – I'm suspecting a typo in the page 29 table. I believe both tasks are user-triggered, with the RWR programming done once the input has been processed by the input task.

RWR Threat Response The MCC must poll the RWR to determine if there are any relevant threats. This is done with a periodic task. When there is a threat, a one-shot job does the actual response, which is just updating the display.

Built-In-Test (BIT) The Built-In-Test is the functionality of testing the hardware components. One task periodically performs standard tests. When a failure happens, a warning must be produced. The “Initiated BIT” test is when the operator requests a specific, non-standard test.

Utilization Exceeds 1 The total utilization of the system exceeds 1, so the system is not schedulable! However, there are two reasons this isn't actually a problem: It isn't actually possible for all the tasks to run at once. Priorities are given which specify what work can be shed if the utilization ever does exceed 1.