Giter Club home page Giter Club logo

fanghuaqi / embarc_osp Goto Github PK

View Code? Open in Web Editor NEW

This project forked from qiangg/embarc_osp

2.0 2.0 0.0 87.32 MB

embARC Open Software Platform (OSP) - An embedded software distribution for IoT and other embedded applications for ARC

Home Page: https://www.embarc.org/

License: BSD 3-Clause "New" or "Revised" License

Shell 0.03% Python 0.02% Makefile 0.91% C 81.61% Assembly 0.26% C++ 13.55% Objective-C 0.04% HTML 2.12% CSS 0.03% C# 1.35% Batchfile 0.01% Tcl 0.05% Perl 0.01% CMake 0.02%

embarc_osp's Introduction

embARC Open Software Platform (OSP)

Introduction

The embARC Open Software Platform (OSP) is a software distribution aimed at facilitating the development of embedded systems based on ARCv2 Processors.

It is designed to provide a unified platform for ARCv2 users by defining consistent and simple software interfaces to the processor and peripherals, together with ports of several well known FOSS embedded software stacks to ARCv2 Processors.

embARC OSP provides a comprehensive foundation for embedded developers, simplifying development and improving time to market through software reuse.

embARC OSP Architecture

The embARC Open Software Platform general architecture and components is shown in the block diagram below. embARC Open Software Platform Architecture

ARC Hardware Abstraction Layer

This layer provides standard interfaces and definitions for ARCv2 processors.

Device Hardware Abstraction Layer

This layer defines the interfaces and definitions for peripherals such as UART, I2C, GPIO, SPI, and WNIC. This layer simply defines the interfaces of device drivers, but does not contain detailed device driver implementations. Driver implementation is left to the application. A group of driver implementations for supported DesignWare IP peripherals are provided as a reference.

Operating System Layer

This layer contains the support for embedded operating systems.

Common Library Layer

This layer provides stubs for various support library implementations such as C library, Secureshield runtime library for security, math library, Floating Point or other libraries. These libraries can be bare-metal or OS based implementations.

Middleware Layer

This layer integrates different embedded middleware, such as Shell/Command Line Interface (CLI), file systems, networking and IoT communication protocol stacks.

How to Use embARC OSP

The embARC OSP software includes several examples to help the user get up and running quickly with embARC OSP. Please refer to embARC OSP Documentation and embARC OSP Wiki for more information, or you can generate the latest documentation by yourself following this guide.

Contribute to embARC OSP

We welcome community contributions to embARC OSP. Please check out the Contributing to embARC OSP for guidelines on how to proceed. Users participating in the embARC Community and its sub-projects codebases and issue trackers are expected to follow the embARC code of conduct.

embarc_osp's People

Contributors

fanghuaqi avatar fbedard avatar qiangg avatar ruuddw avatar xiangcaihuang avatar yuguowh avatar

Stargazers

 avatar  avatar

Watchers

 avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.