Jump to content

User:Uglybear/sandbox

From Wikipedia, the free encyclopedia

OpenAMP (Open Asymmetric Multi Processing) is an open-source software framework which provides software components that simplify the development of software applications for AMP systems, and ease porting of those applications on different hardware environment. This is achieved by relying on the Linux remoteproc and rpmsg frameworks, allowing easy OS interaction between Linux and RTOS / bare-metal environments.

The framework provides the following key capabilities:[1]

  1. Provides Life Cycle Management (loading, boot, shut-down) of remote compute resources and their associated software contexts, compatible with Linux remoteproc framework
  2. Inter OS/ Inter Processor Communication capabilities, compatible with Linux rpmsg framework
  3. Stand alone library usable with RTOS and bare-metal software environments, to communicate with Linux remote processor subsystem (remoteproc / rpmsg)
  4. Rely on shared memory protocol – Virtio/rpmsg
  5. Proxy technologies emulate Linux processes IOs on a remote processor

OpenAMP can be used to connect processors as well as to connect separate Virtualized environmen via their Trustzone[2].

Major solution and RTOS vendors such as Mentor[3][4] or Micrium[5] as well as major hardware vendors NXP and Xilinx[6] are actively contributing to the project[1] and/or providing their own customized implementation.

The Multicore Association (MCA) announced[7] in January 2016 the formation of a group[8] to help guide and standardize OpenAMP, supported by MCA members Express Logic, Mentor Graphics, Micrium, NXP, Wind River, and Xilinx.

Supported Hardware

[edit]

System-On-Chip (SoC) with AMP architecture can take advantage of OpenAMP, e.g:

  1. NXP i.MX 6 SoloX processor [9]
  2. Xilinx Zynq and ZynqMP Ultrascale MPSoC[10]

History

[edit]

Computer magazine LWN.net described the first generic AMP framework for Linux[11] in October 2011

The GitHUB OpenAMP project[1] initial commit seems to originate around October 2014

The Multicore Association (MCA) announced[7] in January 2016 the formation of a group[8] to help guide and standardize OpenAMP.

License

[edit]

The OpenAMP project is released as open-source software and is available under BSD license.

References

[edit]
  1. ^ a b c https://github.com/OpenAMP/open-amp OpenAMP project
  2. ^ Gonzales, Javier. "Operating System Support for Run-Time Security with a Trusted Execution Environment". IT University of Copenhagen. Retrieved 20 April 2016.
  3. ^ "Mentor AMP solutions". Mentor.
  4. ^ "Making Full use of Emerging ARM-based Heterogeneous Multicore SoCs". Mentor.
  5. ^ "Micrium OpenAMP Tutorial". Micrium.
  6. ^ "Xilinx OpenAMP". Xilinx.
  7. ^ a b "MCA announcement". MCA.
  8. ^ a b "MCA OpenAMP working group". MCA.
  9. ^ "NXP i.MX 6SoloX". NXP.
  10. ^ "Xilinx Zynq Ultrascale MPSoC".
  11. ^ Ben-Cohen, Ohad (25 October 2011). "Introducing a generic AMP framework". LWN.net.
[edit]

Category:Computing platforms Category:Cross-platform software