ARM7/9, Rowley

embOS for ARM7 / ARM9 / XScale was developed for and with Rowley compiler and supports all memory models offered by this compiler. It comes with an easy to use start workspace and start project for Rowley's CrossStudio V1.2. Software development with J-Link ARM is possible.

Resources and performance data

Memory usage
Kernel size (ROM) approx. 1500 bytes
Kernel RAM usage 51 bytes
RAM usage per task control block 36 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 LH79531 CPU running at 48MHz.

embOSView offers system analysis during runtime

embOSView with ARM7 target CPU


Available Emulators

Additional information

Rowley Web site for additional compiler info / support

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 AT91SAM7S64 Atmel AT91SAM7S64-EK
Atmel AT91SAM7S256 Atmel AT91SAM7S256-EK
Atmel AT91SAM7SE512 Atmel AT91SAM7SE-EK
Atmel AT91SAM7X256 Atmel AT91SAM7X256-EK
Atmel AT91SAM9263 Atmel AT91SAM9263-EK
NXP LPC2468 Embedded Artists LPC2468

 


Release notes

  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:  GNU CC
Assembler: GNU AS
Librarian: GNU AR
Workbench: CrossWorks Release 2.07 

New features

Version 3.82i

  1. Update to latest embOS generic sources.
  2. BSP for Atmel AT91SAM9263 CPU
    embOS for ARM and Crossworks comes with a start project for the ATMEL AT91SAM9263 CPU.
    The start project is prepared to run on the AT91SAM9263-EK eval board but may be used for other hardware platforms as well.

Version 3.82d

  1. Update to latest embOS generic sources.

Version 3.82a1

  1. Thread safe system libray support added.

Version 3.82a

  1. Update to latest generic sources V3.82a
  2. BSP for Atmel AT91SAM764 CPU
    embOS for ARM and Crossworks comes with a start project for the ATMEL AT91SAM764 CPU.
    The start project is prepared to run on the AT91SAM764-EK eval board but may be used for other hardware platforms as well.
  3. BSP for Atmel AT91SAM7256 CPU
    embOS for ARM and Crossworks comes with a start project for the ATMEL AT91SAM7256 CPU.
    The start project is prepared to run on the AT91SAM7256-EK eval board but may be used for other hardware platforms as well.

Version 3.62a

  1. Initial release for Crossworks
    embOS for ARM, based on embOS generic sources V3.62a now comes for Rowley CrossWorks for ARM.
    It is prepared for debugging using J-Link or other debuugers supported by CrossWorks.
  2. embOSView can be used with J-Link
    embOS for ARM now comes with a new version of embOSView which allows profiling, task, stack and system analyzis during runtime using J-Link.
    All embOS start projects are prepared to use the DCC channel and JTAG as default communication channel for embOSView.
    By modification of the OS_USE_DCC definition, a UART as it was used in previous versions, can be selected for communication.
    To use embOSView with JLink, the JLINKARM.dll which comes with embOSView has to be located in the same directory as the embOSView executable.
    embOSView has to be set up to use DCC instead of a COM-port.
  3. BSP for Atmel AT91SAM7X CPU
    embOS for ARM and Crossworks comes with a start project for the ATMEL AT91SAM7X CPU.
    The start project is prepared to run on the AT91SAM9X-EK eval board but may be used for other hardware platforms as well.
  4. BSP for Atmel AT91SAM7SE CPU
    embOS for ARM and Crossworks comes with a start project for the ATMEL AT91SAM7SE CPU.
    The start project is prepared to run on the AT91SAM7SE-EK eval board but may be used for other hardware platforms as well.
  5. BSP for LPC2468 CPU
    embOS for ARM and Crossworks comes with a start project for the NXP LPC2468 CPU.
    The start project is prepared to run on the Embedded Artists LPC2468-16 OEM board but may be used for other hardware platforms as well.

Improvements

Version 3.62a1

  1. embOSView communication
    Communication with embOSView over DCC now also in Release Configuration possible.

Version 3.62a

  1. Automatic stack address alignment
    The stackpointer for task stacks is automatically aligned to an 8 byte boundary, regardless the definition of the task stack area and stack size.
  2. Initial version for Rowley CrossWorks.

Program corrections

Version 3.82d

  1. Debug information from embOS libraries removed.

Version 3.62a

  1. NONE
    Initial version for Rowley CrossWorks.

Known problems/limitations

Version 3.62a

  1. NONE
    Initial version for Rowley CrossWorks.

Release history

Version Release date Short explanation
V3.82i 16. Aug 2010 Update to latest embOS generic sources.
BSP for AT91SAM9263 added.
V3.82d 16. Dec 2009 Update to latest embOS generic sources.
Debug information from embOS libraries removed.
V3.82a1 01. Oct 2009 Thread safe system libray support added.
V3.82a 30. Sept 2009 Update to latest embOS generic sources.
BSP AT91SAM7-64 and AT91SAM7-256 added.
V3.62a1 21. Oct 2008 embOSView communication
V3.62a 20. Oct 2008 Initial version for CrossWorks.

Miscellaneous

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