GNAT Pro for ARM processors

4,546 views

Published on

An overview of GNAT Pro Ada development environment support for ARM processors

Published in: Technology, Education
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
4,546
On SlideShare
0
From Embeds
0
Number of Embeds
2,678
Actions
Shares
0
Downloads
25
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

GNAT Pro for ARM processors

  1. 1. Slide: 1Copyright © 2013 AdaCore Quentin Ochem Technical Account Manager GNAT Pro for ARM
  2. 2. Slide: 2Copyright © 2013 AdaCore AdaCore product categorization Native Safety Critical Cross Windows Linux Solaris Mac VMS HP-UX Embedded Linux PPC Embedded Linux x86 VxWorks 5 PPC VxWorks 6 PPC VxWorks 6 x86 LynxOS PPC Bareboard PPC Bareboard LEON VxWorks 653 PPC VxWorks 6 Cert PPC PikeOS X86
  3. 3. Slide: 3Copyright © 2013 AdaCore AdaCore product categorization Native Safety Critical Cross Windows Linux Solaris Mac VMS HP-UX Embedded Linux PPC Embedded Linux x86 Embedded Linux ARM Android ARM VxWorks 5 PPC VxWorks 6 PPC VxWorks 6 ARM VxWorks 6 x86 LynxOS PPC Bareboard PPC Bareboard LEON Bareboard ARM VxWorks 653 PPC VxWorks 6 Cert PPC PikeOS X86
  4. 4. Slide: 4Copyright © 2013 AdaCore Classification of Processors ARM Legacy ARM7 ARM9 ARM11 Cortex A A8 A9 A15 R R4F M M3 M4F
  5. 5. Slide: 5Copyright © 2013 AdaCore • No Product on Legacy platforms • 4 GNAT Pro 7.2 products will be released on a number of ARM Cortex platform depending on the processor • ARM Cortex R and ARM Cortex M (bare board) – GNAT Pro Safety Critical for ARM Cortex – ZFP, Ravenscar-SFP, Ravenscar-Extended run-times • ARM Cortex A (OS-based) – GNAT Pro for ARM Android – GNAT Pro for ARM Linux – GNAT Pro for ARM VxWorks 6 AdaCore Products
  6. 6. Slide: 6Copyright © 2013 AdaCore • Usable out of the box • No adherence on the underlying system • A few Ada.* GNAT.* System.* or Interfaces.* packages (not generating code) • No support for Tasking • Exception limited to local handling or last chance handler • No support for features requiring run-time support (e.g. secondary stack) • Possibility to add units to create a custom ZFP (e.g. GNATemulator-based versions implement GNAT.IO) Bare board Run-Times – Zero Footprint
  7. 7. Slide: 7Copyright © 2013 AdaCore • Ravenscar is a "simple" Ada tasking – Simple to implement (e.g. small run-time footprint) – Simple to use (e.g. small amount of functionalities) – Efficient • Ravenscar provides some static guarantees – Absence of deadlock – Schedulability – Determinism • Based on task "stereotypes" (cyclic, periodic) and priorities • Ravenscar requires some target-specific configuration – Interruption controller – Context switching • Default implementations (BSP) are provided, but needs to be adapted – Either by the customer or through a few days of on-site consulting Bare board Run-Times – Ravenscar Family
  8. 8. Slide: 8Copyright © 2013 AdaCore • Ravenscar Small Footprint (SFP) – ZFP – Ravenscar – Certifiable • Ravenscar Extended – ZFP – Ravenscar – Exceptions – All standard packages (except I/O) – Not certifiable Bare board Run-Times – Small Footprint vs. Extended
  9. 9. Slide: 9Copyright © 2013 AdaCore • IDE – GPS – GNATbench (with specific Android Development Toolkit integration) • Language interfacing – Ada / C Interfacing tools – (Android only) GNAT Ada-Java Interfacing Suite • Basic Static Analysis Tools – GNATcheck – GNATmetrics – (Bare board only) GNATstack • Basic Dynamic Analysis Tools – GNATtest / Aunit – GDB Included in the product
  10. 10. Slide: 10Copyright © 2013 AdaCore

×