RX, IAR
embOS for RENESAS RX IAR was developed for and with the IAR embedded workbench and compiler and supports all data memory models offered by this compiler.
embOS for RX IAR comes with easy to use start projects for RX CPUs which may be used with the IAR embedded workbench.
Software development and debugging with E20 emulator as well as using the simulator is supported.
Resources and performance data
| Memory usage | |
|---|---|
| Kernel size (ROM) | approx. 1500 bytes |
| Kernel RAM usage | 63 bytes |
| RAM usage per task control block | 20 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 | 226 clock cycles (2.2 µs), independent of number of tasks |
| Interrupt latency time | max. 80 clock cycles (0.8 µs) |
| Kernel CPU usage/TICK | less than .1% of total calculation time at 1000 Interrupts/second (1ms TICK) |
| Basic time unit (TICK) | typ. 1 ms, min. 10 µs (100 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 data given above were measured with embOS x-release build on an RX610 CPU running at 100MHz.
embOSView offers system analysis during runtime

Available Emulators
- RENESAS E20
- J-Link RX
Additional information
RENESAS Web site for additional CPU info / support
Board support packages
embOS comes with lots of ready to go start projects and support packages for various Renesas RX CPUs and starterboards.
| CPU | Eval board |
|---|---|
| Renesas RX210 | Renesas RPBRX210 |
| Renesas RX210 | Renesas RSKRX210 |
| Renesas RX62N | Renesas RPBRX62N |
| Renesas RX62N | Future Designs YRDKRX62N |
| Renesas RX62N | Renesas RSKRX62N |
| Renesas RX610 | Renesas RSKRX610 |
| Renesas RX62T | Renesas RSKRX62T |
| Renesas RX630 | Renesas RSKRX630 |
| Renesas RX63N | Future Designs YRDKRX63N |
Release notes V3.86a for IAR
- Tool chain used for build
- New features
- Improvements
- Program corrections
- Known problems/limitations
- Release history
- Miscellaneous
Tool chain used for build
The following tools have been used:
Compiler: IAR ICCRX V2.30.1.50273 Assembler: IAR IASMRX V2.30.1.50273 Librarian: IAR IARCHIVE V9.10.10.43 Workbench: IAR EWIDE V6.3.1.1950
Performance
- Task switch time
Near memory model: 2.2us = 226 CPU cycles
Huge memory model: 2.3us = 230 CPU cycles - Interrupt latency, low priority interrupt
Near memory model: 0.8us = 80 CPU cycles
Huge memory model: 0.8us = 80 CPU cycles - Interrupt latency, high priority (zero latency) interrupt
zero, no additional latency introduced by embOS.
Timings were taken on an R5F56108 CPU running at 100 MHz using the embOS XR library.
New features
Version 3.86
- Update to latest embOS generic sources.
- BSP for RSKRX62T, RPBRX210, RSKRX210 and YRDKRX63N added.
Version 3.82x
- Update to latest embOS generic sources.
- BSP for RSKRX630 added.
Version 3.82n1
- Update to new IAR compiler V2.20
The new EWRX and IAR compiler V2.20 require new librarries because of modified run time models.
The embOS librarries V3.82n1 are compiled with the new IAR compiler. - Thread safe system locking supported.
The new IAR runtime libraries come with built in hook functions for thread safe system library support.The new embOS version V3.82n1 comes with additional functions which allow usage of the new thread safe system library support. - Thread local storage.
The new IAR runtime libraries come with built functianllyty to support thread local storage for those functions that need thread local staes and variables.The new embOS version V3.82n1 comes with additional functions which allow usage of thread local storage.
Version 3.82n
- Support for RPBRX62N eval board added.
embOS now comes with a start project for the Renesas Promotion Board RPBRX62N which is prepared to be debugged using the on board J-Link. - Update to latest embOS generic sources.
Additional new functions are described in the generic release notes and manual.
Version 3.82k
- Support for RSK+RX62N eval board added.
embOS now comes with a start project for an RX62N CPU which is prepared to run on the RSK+RX62N eval board. - Update to compiler V2.10B
- Update to latest embOS generic sources.
Version 3.82i
- Support for RX62N added.
embOS now comes with a start project for an RX62N CPU which is prepared to run on the YRDKRX62N eval board.
Version 3.82h
- embOS plugin V6.0.4
The new embOS plugin V6.0.4 now supports the big endian mode of the RX CPU.
Version 3.82g
- Update to the new EW-RX V2.10
The new IAR Embedded Workbench required modification and recompilation of embOS for RX because of modified calling convention and code models.
- Support for J-Link RX added.
embOS now comes with start projects which can be downloaded to target using J-Link RX.
Version 3.82b1
- Support of the RSKRX610 starter kit added.
embOS now comes with start projects for the RSKRX610 starter kit which can be downloaded to target using the E20 emulator.
- Support for E20 emulator added.
The new IAR workbench for RX CPUs comes with support for the Renesas E20 emulator.
embOS now comes with start projects which can be downloaded to target using the E20 emulator.
- Support for new compiler V1.12A
The final implementation of RX CPUs required some modifications of the IAR compiler because of modified register usage for some opcodes.
These modificatons are implemeted in the compiler version 1.12A.
To run on real hardware, embOS version 3.82b1 or newer, which is compiled with the new IAR compiler version 1.1.2A, is required.
Version 3.82b
- Support for 16 interrupt priority levels added.
Future devices of the RX600 familiy will support 16 interrupt priority levels.
The initial version was built for RX610 devices which support 8 interrupt priority levels.
The version 3.82b of embOS will support interrupt priority levels from 0 to 15 and can be used for all RX devices.
- Update to embOS sources V3.82b.
embOS version 3.82b comes with a modified scheduler which allows faster contest switches.
All ne features of embOS version 3.82b are described in the embOS generic release notes.
Version 3.80d2
- BIG endian targets supported
The initial release came with support for little endian ony.
Version 3.80d1 comes with libraries and a start project configuration for big endian targets.
Version 3.80d1
- New calling convention implemented
The initial release came with support for an IAR specific calling convention.
The new compiler since V1.01 supports the RENESAS ABI calling convention which required a new build of embOS for RX.
Version 3.80d
- NONE
Initial release based on embOS sources version 3.80d
Improvements
Version 3.80d
- NONE
Initial version based on embOS sources version 3.80d
Program corrections
Version 3.86a
- Queue handling corrected.
Version 3.86
- Assembler code segment directive to every assembler module added.
Additional code segment directive avoids that assembler functions are stored as RAM functions.
Version 3.82x1
- Modified startup code to every start project added.
Modified startup code initializes the user stack and switches to user stack.
This is necessary for C++ initilization before OS_InitKern().
Version 3.82n
- Queue handling corrected.
The previous version V3.82k of the embOS did not handle queues correctly.
A problem description can be found in the generic release notes.
The problems are fixed with version 3.82n of embOS.
Version 3.82i
- embOS plugin V6.0.5 fixes display errors under Win7
The previous versions of the embOS plugin did not show the about dialog and the settings dialog correctly when running under Windows 7.
This problem is fixed with version 6.0.5 of the plugin.
Version 3.80d
- NONE
Initial version based on embOS sources version 3.80d
Known problems/limitations
Version 3.82g
- NONE
The new "16bit integer" option of EW-RX V2.10 is not supported by embOS.
Release history
| Version | Release date | Short explanation | |
| V3.86a | 30. Apr 2012 | Queue handling corrected. | |
| V3.86 | 03. Apr 2012 | Update to latest embOS generic sources. RSKRX62T, RPBRX210, RSKRX210 and YRDKRX63N BSP added. Assembler modules modified to avoid RAM functions. | |
| V3.82x1 | 21. Sep 2011 | Modified startup code to every start project added. | |
| V3.82x | 13. Sep 2011 | Update to latest embOS generic sources and BSP added. | |
| V3.82n1 | 10. Dec 2010 | Update to new compiler V2.20. | |
| V3.82n | 09. Dec 2010 | RPBRX62N BSP added Queue handling corrected. | |
| V3.82k | 29. Sep 2010 | RSK+RX62N BSP added Update to compiler V2.10B Update to latest embOS generic sources. | |
| V3.82i | 16. Aug 2010 | RX62N BSP added. | |
| V3.82h | 28. May 2010 | New embOS plugin. | |
| V3.82g | 27. May 2010 | Update to compiler V2.10A. | |
| V3.82b1 | 30. Nov 2009 | Update to compiler V1.12A. | |
| V3.82b | 2. Nov 2009 | Update to embOS V3.82. | |
| V3.80d2 | 30. Apr 2009 | Big endian supported. | |
| V3.80d1 | 28. Apr 2009 | Update to new compiler. | |
| V3.80d | 22. Apr 2009 | Initial version |
Miscellaneous
This document was first released with version 3.80d of the software.
Software released earlier is documented internally. This information is available at request.
RX, IAR
