Head office Germany
US office
                   


ARM7/9/XScale & Cortex-A/R, GNU

embOS for ARM7/9/XScale & Cortex-A/R was developed for and with GNU tools. It comes with easy to use make files for GNU tools and batch files for the GDB debugger.
You can use any GNU toolchain, but we recommend the Yagarto toolchain (www.yagarto.de).
Software development with a JTAG debugger like J-Link is also possible.

Resources and performance data

Memory usage
Kernel size (ROM) approx. 3000 bytes
Kernel RAM usage 51 bytes
RAM usage per task control block 48 bytes
RAM usage per resource semaphore 16 bytes
RAM usage per counting semaphore 8 bytes
RAM usage per mailbox 24 bytes
RAM usage per software timer 20 bytes
RAM usage event 0 bytes
Min. stack-size per task (RAM) 56 bytes
Timing
Context switch time max. 8 µs, independent of number of tasks
Interrupt latency time zero
Kernel CPU usage/TICK less than .2% of total calculation time at 1000 Interrupts/second (1ms TICK)
Basic time unit (TICK) typ. 1 ms, min. 20 µs (50 kHz interrupt frequency)
Features
Max. no. of tasks unlimited (by available RAM only)
Max. no. of mailboxes unlimited (by available RAM only)
Max. no. of semaphores (resource/binary/counting) unlimited (by available RAM only)
Max. no. of software timers unlimited (by available RAM only)
Max. no. of priorities 255
Stack size idle task (RAM) 0(no memory needed)
Nested interrupts permitted
Task switches from within ISR possible

Absolute values given above were measured with embOS release build on an ATMEL AT91SAM7S256 CPU running at 48MHz.

embOSView offers system analysis during runtime

embOSView with Atmel AT91SAM7S256 CPU serves as sample

 

Available Emulators

Board support packages

embOS comes with lots of ready to go start projects and support packages for various ARM7/9 CPUs and starterboards.

CPU Eval board
Atmel AT91SAM7A3 Atmel AT91SAM7A3-EK
Atmel AT91SAM7S64 Atmel AT91SAM7S64-EK
Atmel AT91SAM7S256 Atmel AT91SAM7S256-EK
Atmel AT91SAM7SE512 Atmel AT91SAM7SE-EK
Atmel AT91SAM7X256 Atmel AT91SAM7X-EK
Atmel AT91SAM9G45 Atmel AT91SAM9G45-EK
Atmel AT91SAM9260 Atmel AT91SAM9260-EK
NXP LPC2106 IAR LPC2106 KS
NXP LPC2148 IAR LPC2148 KS
NXP LPC2378 KEIL MCB2300
NXP LPC2468 Embedded Artists LPC2468
ST STR912 ST STR912-SK

 


Release notes for embOS Version 3.88 for ARM and GNU tools

 

  1. Tool chain used for build
  2. New features
  3. Improvements
  4. Program corrections
  5. Known problems/limitations
  6. Release history
  7. Miscellaneous

Tool chain used for build

The following tools have been used:

Compiler:  Yagarto arm-none-eabi-gcc 4.7.1
Assembler: Yagarto arm-none-eabi-as  2.22
Librarian: Yagarto arm-none-eabi-ld  2.22
Workbench: Eclipse Juno Build id: 20120614-1722 
CDT:       Eclipse CDT V6.0.0.201206111645
GDB:       Eclipse GDB Hardware Debugging V7.0.0.201202111925

New features

Version 3.88

  1. Update to latest embOS generic sources V3.88.

Version 3.82m

  1. BSP for ATMEL AT91SAM9G45 added.
    embOS for ARM GNU now comes with a start project and BSP for the ATMEL AT91SAM9G45 which runs on the ATMEL AT91SAM9M10G45-EK eval board but may be used on other hardware as well.
  2. Update to latest embOS generic sources V3.82m which elimiate a "strict-aliasing rules violation" warning.
  3. Makefiles in Start projects corrected.

Version 3.82g

  1. Update to latest embOS generic sources V3.82g.

Version 3.82e

  1. LPC 2378 CPU support
    Start project and board support package for NXP LPC2378 CPU added.
    The project was tested on the KEIL MCB2300 board, but may be used on other boards as well.
  2. Update to latest embOS generic sources V3.82e.

Version 3.60d

  1. LPC 2468 CPU support
    Start project and board support package for NXP LPC2468 CPU added.
    The project was tested on the Embedded Artists LPC2468-16-OEM Board, but may be used on other boards as well.

Version 3.60a

  1. TI TMS470R1B1M CPU support
    Start project and board support package for TI TMS470R1B1M CPU added.

Version 3.52e2

  1. NXP LPC 2106 CPU support
    Start project and board support package for NXP LPC2106 CPU added.
  2. NXP LPC 2148 CPU support
    Start project and board support package for NXP LPC2148 CPU added.

Version 3.52e1

  1. ATMEL AT91SAM7 CPU support
    Start projects and board support packages for ATMEL AT91SAM7 CPUs added.
  2. ST STR912 CPU support
    Start project and board support package for ST STR912 CPUs added.

Version 3.52d

  1. NONE.
    Initial version for ARM GNU, based on embOS sources 3.52d.

Improvements

Version 3.52d

  1. NONE.
    Initial version for ARM GNU, based on embOS sources 3.52d.

Program corrections

Version 3.82i

  1. Makefiles corrected
    The makefiles in the start project folders passed a wrong paramter to the assembler which destroyed some assembly sources. A re-make after a make clean therefore failed in the start project folders.
    This problem existed in all previous versions of embOS_ARM_GNU and is fixed with version 3.82i

Version 3.60a

  1. Big endian libraries were not built correctly.
    The assembler files were always assemblied in little-endian.

Version 3.52e

  1. Wrong RAM start address in linker command file.
    There was a wrong RAM start address in the linker command file.

Version 3.52d

  1. NONE.
    Initial version for ARM GNU, based on embOS sources 3.52d.

Known problems/limitations

Version 3.52d

  1. NONE.

Release history

Version Release date Short explanation
V3.88 18 Apr 2013 Update to latest embOS generic sources V3.88.
V3.82m 25 Nov 2010 BSP for ATMEL AT91SAM9G45 added.
Update to latest embOS generic sources V3.82m.
Makefiles in Start projects corrected.
V3.82g 12 May 2010 Update to latest embOS generic sources V3.82g.
V3.82e 16 April 2010 LPC2378 supported added.
Update to latest embOS generic sources V3.82e.
V3.60d 21 Jul 2008 LPC2468 supported.
V3.60a 12. Feb 2008 Fixed big endian libraries.
V3.52e2 14. Dec 2007 NXP LPC2106/2148 supported.
V3.52e1 10. Dec 2007 AT91SAM7 series / STR912 supported.
V3.52e 30. Nov 2007 Wrong RAM start address in linker command file.
V3.52d 21. Nov 2007 Initial version for ARM GNU, based on embOS sources 3.52d

Miscellaneous

This document was first released with version 3.52 of the software.
Software released earlier is documented internally. This information is available at request.