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
- programs used in 3Vs proof of concepts (Kalman filtering on Cortex-M, Voice on ARM, smart-camera)
- hand-optimized assembly kernels
- Arm-2D for acceleration of low-level 2D image processing.
这个比较复杂,内部包含多个项目
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.