Daube Program

From DDCIDeos
Jump to navigationJump to search

Overview

Airbus Helicopters Marseille, France.
Customer's Product: Evaluation
Hardware: P2041RDB
Expected cert: TBD
SOW: TBD.
Baseline: FourPeaks
Technical Contact: Nicolas Valot
Management Contact: Antoine Defieux
Deos Management Contact: Bill Cronk
Deos Technical Contact: Richard Frost

Charge Code: 2120-480-600 - Deos Daube

Current Release

  • \\nx3000.ddci.com\ship\dds\windows\approved\DDS-daube-deos-fourpeaks-20140627


Milestones

Deos Daube Milestones
Program Milestones Type Stable Date Ship Date Cur. Date Status
Daube Deos_Daube_Multicore_Eval_1 Release 2014-06-23 2014-06-30 2014-06-30 In Progress

Projects

Code Name

Daube Daube is a classic Provençal (or more broadly, French) stew made with inexpensive beef braised in wine, vegetables, garlic, and herbes de Provence, and traditionally cooked in a daubière, a braising pan.

Multicore Evaluation

TBD

Single Core Evaluation

  • Evaluation was very thorough with a lot of detail provided. The only thing that was not complete was a study on cache partitioning. We provided an update to the kernel that corrected some bugs but Airbus did not have time to evaluate this update.
  • Provided us a full report on their findings.
  • We provide a response to clarify any perceived short comings.
  • Single core evaluation is complete but they want to evaluate multicore starting in June.

Training June 2 - June 6, 2014

Recap

Key concerns address
Binary Reuse/Isolation of Change Impact
  • Throughout design (BSP, Drivers, IOI, 653) & Tooling
  • Certification Artifacts
    • High Level / Low Level vs. One Derived Level / Software Architecture
  • Partition
    • Different DALS
    • Reusable vs. Aircraft Specific
      • Business Reasons/Work-Flow
  • Configuration parameters
    • Config travels with locality of reference
    • Isolate Executable from Change
  • Testing (e.g., simulate hardware faults)
    • Rerouter
    • Hooks
    • Platform Resource
ARINC 653
  • Compliance
  • IPC
  • Health Management
Performance
  • timemap
  • cache partitioning
  • ctxtime
  • Your Evaluation
Actions for DDC-I
  • Get back: MLD show cache?
  • Cache Partitioning Configuration & Example for P2041 single-core
  • Consider window with specified frequency of scheduling events (show overhead)
  • Consider adding config time check for quotas (do I have enough RAM?)
  • Consider added timeline definition to timemap display (as well as a filter function)
  • Consider 653 config is built up from PD like files
  • Consider measuring wall time for aperiodic processes (i.e., assumes use of replenish)
  • GUI performance with thousands of files
  • Provide ARINC653P1-3 Application Dependencies
  • High Level / Low Level Discussion and lookout
  • Business and licensing model/Executive Visit
Action for Airbus Helicopter
  • Port ARINC653P1-3 Application
  • Implement cache partitioning
  • ElBit Reference
  • Your Evaluation
Airbus Wish List
  • Multiple Schedules (Part 2)
  • IDE: System Integrator GUI and Application Developer GUI
  • DDC-I to Present WINDOW_WAIT() to the 653 committee
  • Multi-core (perhaps for x6)
  • To use Deos ;-)


Concerns Raised by Airbus Helicopter

  1. Relationship between system tick and major frame; affect on Deos supplied apps
  2. persistent bss
  3. stack overflow late notification
  4. hard vs. soft deadline
  5. expected two level of scheduling (i.e., processes scheduled within partition window)
  6. sever interrupt signals a fault and need immediate HM action (we can do this)
  7. delay in exception handling or not (e.g. page fault)? Not. We meet the expectation.
  8. how to port BSP/device driver (answer: as SO hooked via formatting function)
  9. schedule mode change at run-time (switch-off partitions and give other more time during descent/auto-rotate)

Items Noted by Trainers

  1. Consider making intact as an option anyway (default is warmstart/coldstart are the same - per spec.; extension config for difference)
  2. Consider adding module level HM table handling to Boot *may do* slides
  3. Consider adding an example of a user specified HM handler to the HM example
  4. Add "Lots of ways to miss a deadline" RLF HM.cpp (line 137) to quips
  5. HM - chose to ignore if error handler exists (req. by spec.)
  6. Consider adding a check for a compare of pool zero between bootimage.hyp & pi file
  7. AMP, BMP, SMP (what are these defined to be)
  8. consider presenting window wait to the 653 committee
  9. consider measuring wall time for aperiodic processes (i.e., assumes use of replenish)
  10. can MLD help 653 with HM actions on what would be exceptions that were debug suspended
  11. Consider window with specified frequency of scheduling events (show overhead)
  12. Consider added timeline definition to timemap display (as well as a filter function)
  13. Consider adding config time check for quotas (do I have enough RAM?)
  14. Consider FPU attribute at 653 process level
  15. Can chain be extended into 653 config (other than formatting functions) or hacked into the binder after the fact?
  16. Consider way to plug test apps into (via IOI) for testing 653 Partition sample/queue ports (i.e., ioi re-router at 653 level vs. IOI level)
  17. Consider 653 config is built up from PD like files
  18. Consider adding ability to create console in GUI (or use console view) to interact in the workspace (i.e., right-click at some location in project veiw and launch console in that directory)
  19. Get Back - what are the timestamp files in the output folder?
  20. Consider having OS or IDE help with deadlock scenarios when moving to multi-core

Improvements to be Made

  1. No License sent
  2. No admin install
  3. No network cables
  4. read-only desk tree
  5. Slide say system tick will take 8% of the CPU is being used by the system tick...is this right?
  6. Demo653 currentSystemTick is an unsed variable; no warning from compiler?
  7. Multi-core example add *picture* showing cache layout
  8. Add flow-chart (or similar) to show execution flow
  9. Add *picture* to show data in videoStream screen shot
  10. Fix slide 82 (last bullet) see UG 9.4.7.setThreadRestartEntryPoint()
  11. errnum not finding deos653 error
  12. warmstarts cause time map problems with names (ignore upper bit(s)); fixed by editing timemap file
  13. HM - STOP() need to look up requirement and add comment to UG
  14. imported 4000 files for one project; indexing is taking way to long; can build from command line (provide project for us to investigate); potential memory leak with this project in mix (e.g., each time a dependency is added)
  15. provide app dependencies (exe links in lib which links in other lib