githubs 上的 Arm Software 项目介绍

1.CMSIS Version 5

https://github.com/ARM-software/CMSIS_5

introduction

https://arm-software.github.io/CMSIS_5/General/html/index.html

The CMSIS is a set of tools, APIs, frameworks, and work flows that help to simplify software re-use, reduce the learning curve for microcontroller developers, speed-up project build and debug, and thus reduce the time to market for new applications.

CMSIS started as a vendor-independent hardware abstraction layer Arm® Cortex®-M based processors and was later extended to support entry-level Arm Cortex-A based processors. To simplify access, CMSIS defines generic tool interfaces and enables consistent device support by providing simple software interfaces to the processor and the peripherals.

CMSIS is defined in close cooperation with various silicon and software vendors and provides a common approach to interface to peripherals, real-time operating systems, and middleware components. It is intended to enable the combination of software components from multiple vendors.

CMSIS is open-source and collaboratively developed on GitHub.

2.lisa

https://github.com/ARM-software/lisa

The LISA project provides a toolkit that supports regression testing and interactive analysis of Linux kernel behavior. LISA stands for Linux Integrated/Interactive System Analysis. LISA's goal is to help Linux kernel developers to measure the impact of modifications in core parts of the kernel. The focus is on the scheduler (e.g. EAS), power management and thermal frameworks. However LISA is generic and can be used for other purposes too.

3.Tarmac Trace Utilities

https://github.com/ARM-software/tarmac-trace-utilities

Some Arm products -- usually software models of CPUs -- are able to run in a mode where they generate a detailed trace of a program's execution. These traces are often written to a text file, in a format called 'Tarmac'.

Tarmac Trace Utilities is a suite of tools that can process trace files in Tarmac format.

4.SCP-firmware - version 2.8

https://github.com/ARM-software/SCP-firmware

There is a strong trend in the industry to provide microcontrollers in systems to abstract various power, or other system management tasks, away from Application Processors (APs). The Power Control System Architecture (PCSA) [1] describes how systems can be built following this approach.

The PCSA defines the concept of the System Control Processor (SCP), a dedicated processor that is used to abstract power and system management tasks away from application processors.

Similar to the SCP, the Manageability Control Processor (MCP) follows the same approach with the goal of providing a management entry-point to the System on Chip (SoC) where manageability is required, such as on a SoC targeting servers.

SCP-firmware provides a software reference implementation for the System Control Processor (SCP) and Manageability Control Processor (MCP) components found in several Arm Compute Sub-Systems.

5.Arm NN 

https://github.com/ARM-software/armnn

Arm NN is a key component of the machine learning platform, which is part of the Linaro Machine Intelligence Initiative.

The Arm NN SDK is a set of open-source software and tools that enables machine learning workloads on power-efficient devices. It provides a bridge between existing neural network frameworks and power-efficient Cortex-A CPUs, Arm Mali GPUs and Arm Ethos NPUs.

6.Bob Build System

https://github.com/ARM-software/bob-build

Bob is a declarative build system intended to build C/C++ software for both Linux and Android.

Bob has a configuration system that works in a similar way to the Linux Kernel's Kconfig.

Build definitions use a JSON-like syntax to describe the modules to build.

Bob uses Google's Blueprint to do the heavy lifting. As such it has similarities with Soong.

7.devlib

https://github.com/ARM-software/devlib

devlib exposes an interface for interacting with and collecting measurements from a variety of devices (such as mobile phones, tablets and development boards) running a Linux-based operating system.

8.Architecture Compliance Suite for Arm Firmware Framework for Armv8-A

https://github.com/ARM-software/ff-a-acs

Arm Firmware Framework for Armv8-A (FF-A) describes a software architecture that achieves the following goals:

9.Trusted Firmware-A

https://github.com/ARM-software/arm-trusted-firmware

Trusted Firmware-A (TF-A) is a reference implementation of secure world software for Arm A-Profile architectures (Armv8-A and Armv7-A), including an Exception Level 3 (EL3) Secure Monitor. It provides a suitable starting point for productization of secure world boot and runtime firmware, in either the AArch32 or AArch64 execution states.

10.EndpointAI

https://github.com/ARM-software/EndpointAI

这个比较复杂,内部包含多个项目

11.Arm SystemReady ACS

https://github.com/ARM-software/arm-systemready

Arm SystemReady is a compliance certification program based on a set of hardware and firmware standards. These standards include the Base System Architecture (BSA) and Base Boot Requirements (BBR) specifications, and market-specific supplements.

12.ML Examples

https://github.com/ARM-software/ML-examples

Arm provides a range of software solutions which seamlessly plug into existing ML frameworks, allowing developers get the very best performance from their underlying Arm hardware.

Arm NN MNIST

Arm NN Quantised Mobilenet

Yeah, World

Multi-Gesture Recognition

CMSIS-NN CIFAR10 model

13.Arm NN Android Neural Networks driver

https://github.com/ARM-software/android-nn-driver

This directory contains the Arm NN driver for the Android Neural Networks API, implementing the android.hardware.neuralnetworks@1.0, android.hardware.neuralnetworks@1.1, android.hardware.neuralnetworks@1.2 and android.hardware.neuralnetworks@1.3 HALs.

14.Model Zoo

https://github.com/ARM-software/ML-zoo

A collection of machine learning models optimized for Arm IP.

Anomaly Detection

Image Classification

Keyword Spotting

Object Detection

Speech Recognition

Visual Wake Words

15.Arm Platform Security Architecture : Test Suite

https://github.com/ARM-software/psa-arch-tests

The Platform Security Architecture (PSA) is a holistic set of threat models, security analyses, hardware and firmware architecture specifications, and an open source firmware reference implementation. PSA provides a recipe, based on industry best practice, that allows security to be consistently designed in, at both a hardware and firmware level.

15.abi-aa

https://github.com/ARM-software/abi-aa

Application Binary Interface for the Arm® Architecture

This is the official place for the latest documents of the Application Binary Interface for the Arm® Architecture, both for source files and officially released documents.

16.Tool Solutions

https://github.com/ARM-software/Tool-Solutions

This repository is home to various examples and tutorials made to improve your efficiency working with development tools. From system design to software development, we provide material to better utilize tools from Arm and the Arm ecosystem.

hello-world_fast-models

fast-models-examples

ml-tool-examples

acet-developer

mathworks-support-packages

17. CoreSight Access Library (CSAL)

https://github.com/ARM-software/CSAL

The CoreSight Access Library (CSAL) provides an API which enables user code to interact directly with CoreSight devices on a target. This allows, for example, program execution trace to be captured in a production system without the need to have an external debugger connected. The saved trace can be retrieved later and loaded into a debugger for analysis. CSAL can be run on application core or a management core.

coresight是ARM公司提出的,用于对复杂的SOC,实现debug和trace的架构。该架构,包含了多个coresight组件。众多的coresight组件,构成了一个coresight系统。我们也可以根据coresight架构,实现自己的coresight组件。
每个coresight的组件(component),都要遵循coresight架构的要求
https://blog.csdn.net/nuoweishizi/article/details/108034161

18.Mango: A parallel black-box optimization library

https://github.com/ARM-software/mango

Mango is a python library for parallel optimization over complex search spaces. Currently, Mango is intended to find the optimal hyperparameters for machine learning algorithms.

19.Embedded Base Boot Requirements (EBBR) specification

https://github.com/ARM-software/ebbr

The Embedded Base Boot Requirements specification defines requirements for embedded systems to enable inter-operability between SoCs, hardware platforms, firmware implementations, and operating system distributions. The aim is to establish consistent boot ABIs and behaviour so that supporting new hardware platforms does not require custom engineering work.

20.LLVM Embedded Toolchain for Arm

https://github.com/ARM-software/LLVM-embedded-toolchain-for-Arm

LLVM项目是模块化、可重用的编译器以及工具链技术的集合。

The goal is to provide an LLVM based bare-metal toolchain that can target the Arm architecture family from Armv6-M and newer. The toolchain follows the ABI for the Arm Architecture and attempts to provide typical features needed for embedded and realtime operating systems.

21.Fast Probabilistic Models

https://github.com/ARM-software/fast-probabilistic-models

This repository introduces Axolotl, an Arm-developed framework that can generate probabilistic models from, virtually, any DNN model.

Axolotl provides use cases for:

  • Building a model
  • Adding uncertainty to a model by inserting Dropout on user-specified layers
    • Dropout used during both training and inference
  • Train a model
  • Run inference on a model
  • Benchmark a model
  • Quantize a mode

22.Patrace

https://github.com/ARM-software/patrace

PATrace is software for capturing GLES calls of an application and replaying them on a different device, keeping the GPU workload the same. It's similar to the open source Apitrace project, but optimised for performance measurements.

23.Base Boot Requirements - Architecture Compliance Suite

https://github.com/ARM-software/bbr-acs

BBR specification complements the BSA specification by defining the base firmware requirements required for out-of-box support of any BSA compatible operating system or hypervisor. These requirements are comprehensive enough to enable booting multi-core Arm platforms while remaining minimal enough to allow for OEM and ODM innovation, and market differentiation.

24.astc-encoder

https://github.com/ARM-software/astc-encoder

his is the official repository for the Arm® Adaptive Scalable Texture Compression (ASTC) Encoder, astcenc, a command-line tool for compressing and decompressing images using the ASTC texture compression standard.

The ASTC compressed data format, developed by Arm® and AMD, has been adopted as an official extension to the Open GL®, OpenGL ES, and Vulkan® graphics APIs. It provides a major step forward in terms of both the image quality at a given bitrate, and the format and bitrate flexibility available to content creators. This allows more assets to use compression, often at a reduced bitrate compared to other formats, reducing memory storage and bandwidth requirements.

25.vktrace-arm

https://github.com/ARM-software/vktrace-arm

Branches within this repository include the Vulkan loader, validation layers, header files, and associated tests. 

26.Arm's MRAM Simulation/Characterization Framework

https://github.com/ARM-software/mram_simulation_framework

This repository contains a framework for the characterization and analysis of MRAM behavior including stochasticity, and a compact model and framework for the efficient and scalable simulation of circuits with MRAMs.

27.Base System Architecture - Architecture Compliance Suite

https://github.com/ARM-software/bsa-acs

Base System Architecture (BSA) specification describes a hardware system architecture based on the Arm 64-bit architecture. System software such as operating systems, hypervisors, and firmware rely on this. It addresses PE features and key aspects of system architecture.

28.Server Base System Architecture - Architecture Compliance Suite

https://github.com/ARM-software/sbsa-acs

Server Base System Architecture (SBSA) specification specifies a hardware system architecture based on the Arm 64-bit architecture. Server system software such as operating systems, hypervisors, and firmware rely on this. It addresses processing element features and key aspects of system architecture.

29.Arm C Language Extensions

https://github.com/ARM-software/acle

This repository contains the source material form which the specifications for the Arm C Language Extensions (ACLE) is derived. 

30.DAQ Server

https://github.com/ARM-software/daq-server

This a server that provides remote access to a National Instruments DAQ (data acquisition device) for power measurement. National Instruments provide DAQ drivers only for Windows and for very specific (old) Linux kernels. This package allows DAQs to be usable from other operating systems.

31.Arm® Ethos™-N Driver Stack

https://github.com/ARM-software/ethos-n-driver-stack

The Arm Ethos-N NPUs improve the inference performance of neural networks. The NPUs target 8-bit integer quantized Convolutional Neural Networks (CNN). However, the NPUs also improve the performance of 16-bit integer CNNs and Recurrent Neural Networks (RNN). P

32.Arm Enterprise ACS - Architecture Compliance Suite

https://github.com/ARM-software/arm-enterprise-acs

Architecture Compliance Suite (ACS) is used to ensure architectural compliance across different implementations of the architecture. Arm Enterprise ACS includes a set of examples of the invariant behaviors that are provided by a set of specifications for enterprise systems (For example: SBSA, SBBR, etc.), so that implementers can verify if these behaviours have been interpreted correctly. ACS is delivered with tests in source form along with a build script, the output of the build being a bootable Linux UEFI Validation (LUV) OS image that can run all tests required by these specifications.

33.Workload Automation

https://github.com/ARM-software/workload-automation

Workload Automation (WA) is a framework for executing workloads and collecting measurements on Android and Linux devices. 


版权声明:本文为qq_35451217原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。