HCC-Embedded Scheduler
Advanced Embedded Middleware packages are designed to be used in rigorous certification processes such as for IEC 61508 SIL-3, IEC 62304 and FDA 510(K)
| • |
Developed to HCC s Advanced Embedded Middleware standard |
| • |
Efficient task synchronization syste |
| • |
Small footprint - typically less than 2K code and 100 bytes RAM |
| • |
Prioritized Tasks |
| • |
Mutexes |
| • |
Events |
| • |
Fully compliant to HCCs coding standard - MISRA-C+ |
| • |
100% code coverage tested |
| • |
Suitable for use in products requiring high availability or certification |
| • |
Ports available for a wide range of microcontrollers |
HCC-Embedded does not provide its own RTOS; instead it provides a co-operative scheduler, aemSync, for running their middleware product tasks on systems where there is no RTOS. It is a small subset of the functions of a standard RTOS but it greatly simplifies typical "super-loop" implementations. It can also be used by any other application within the design constraints of the scheduling.
aemSync is particularly suited for embedded systems that require certification or a high level of reliability and availability.
Main Features
sync_init initializes aemSync system.
sync_run runs the aemSync system for the specified time period.
sync_task_create () creates and starts a task with the specified parameters
sync_task_delete() deletes the specified task
sync_task_getid() returns current task ID to the caller
sync_task_sleep() puts the task into idle state for the specified time
sync_task_yield() allows system to schedule other equal or higher priority tasks
sync_event_init() initializes an event
sync_event_delete() delete the specified event
sync_event_flags_get() wait for the specified event(s)
sync_event_flags_set () set the specified event(s)
sync_event_flags_set_int() set the specified event(s) from an ISR
sync_mutex_init() initializes a mutex
sync_mutex_delete() deletes a mutex
sync_mutex_get() get a mutex - does not return until available
sync_mutex_put() puts a mutex - releases back to the system.
The available API is designed specifically to those functions required to implement fully functional protocol and communication stacks.
Functions
| • |
Complete system design including hazard and risk analysis |
| • |
Requirements specification |
| • |
High level to low level design in 4-level UML 2.0 |
| • |
Collaboration diagram - of overall system |
| • |
Sequence charts - of important interactions |
| • |
State charts for complete system resolved into activity diagrams, to a level from which code can be derived directly |
| • |
MISRA C-compliant (and more) coding standard |
| • |
Static code analysis - using industry leading software |
| • |
Dynamic analysis - unit test - using industry leading software |
| • |
Full MC/DC coverage |
| • |
Equivalence class and boundary condition analysis |
| • |
Functional test suite (traceable back to the design and requirements) |
| • |
Release procedure |
| • |
Maintenance procedure |