Home Company Products Sales Visit our partners Press Center Contact Us
 

Products:

Fusion Router Gateway from Unicoi Systems part of the VoIP Reference Design solution for embedded developers!
Check out the latest innovation in VoIP reference designs
Embedded TCP/IP and more!
And end-to-end solution from Unicoi...now with security features!
RTOS for Blackfin, StarCore and ARM
The complete Fusion line for the Web
Get your development boards here!
 
 

Documentation:



Concerned about security for your embedded device? Check out the newest additions to the Fusion Product Line: Use the Fusion Secure link (above).

Working on a VoIP-enabled device? Then you want to check out the SIP product profile included as a part of our Fusion Net product line and our Fusion VoIP Reference Designs.

Check this site thoroughly and realize why Unicoi Systems, Inc. products are a must for ALL of your embedded development projects!

 

   

Related Links:

Unicoi Sales

Fusion RTOS Product Brief

Fusion RTOS User's Guide

For Your Embedded Development Needs:
Fusion Embedded RTOS Features

The Fusion Embedded RTOS is a full featured Embedded OS that provides the following general capabilities:

Tasks
Tasks are individual units of software with a dedicated purpose that share common system resources. The Embedded RTOS grants access to the shared system resource based upon their request for them compared to other pending requests. Each individual task is assigned a priority level according to its importance within the system. Each task has its own dedicated stack.

Stack Sharing
To reduce total memory usage, the Fusion Embedded RTOS is designed to share a common stack for the Hardware Interrupts, the Software Interrupts and the Background Task.

Communications & Synchronization
Each task is created independently from any other task, however it may need to share information or otherwise communicate with other tasks. Fusion Embedded RTOS provides the following methods to accomplish this.

  • Suspend/Resume
  • Semaphores
  • Mutexes
  • Events
  • Mailboxes
  • Queues
  • Packet Handlers

Time Management
Almost every embedded system will require some form of time management. Fusion Embedded OS provides an extensive set of time management capabilities. All Fusion Embedded RTOS objects that have the capability of task suspension have an optional time value to limit the suspension time. This time value is based upon the Fusion RTOS Tick timer. There is also a complete suite of software timers to handle events. These timers can be configured to for one shot or as a periodic timer. Fusion RTOS tracks system time in seconds. Using this with Time section of the Fusion Standard C library provides for a complete time management solution.

Memory Management
Fusion's memory management capability is fully dynamic. The user can specify any number of independent memory pools. These pools provide variable memory allocation capabilities. Any task may suspend on a memory pool when memory is not available. Memory pools have statistical tracking capabilities to determine current and worst case memory usage. To reduce/eliminate memory fragmentation, Fusion memory manager uses a method of contiguous memory recombination.

Packet Management
Many of today's embedded designs require the processing of some form of streaming data. Fusion Embedded RTOS provides several methods to handle streaming data while minimizing processor loading. Since most streaming data use packets of a fixed size, Fusion RTOS has packet pools. These are preallocated packets that are all the same size managed in a pool. The time to allocate/deallocate a packet is deterministic and an order of magnitude faster than a memory pool. To synchronize between interrupts and the tasks processing the data, packet handlers are used. These fusion objects only pass the pointer to the packet not the actual packet to the waiting task. This greatly reduces processor loading by creating systems that utilize zero data copies.

Interrupt Control
Fusion Embedded RTOS provides a flexible interrupt control mechanism that is fast and deterministic. It allows the user to create their interrupt handler in C or Assembly. It allows all interrupts to call any Fusion RTOS object that does not suspend. Thus task synchronization can occur directly from a Fusion RTOS managed interrupt.

  • Optional Interrupt logging
  • Support for nested interrupts
  • Dedicated interrupt stack shared with SWIs and Backgroud task.
  • Supports delayed task rescheduling
  • Provides a method to bypass Fusion Interrupt Dispatcher

Driver Model I/O Management
The Fusion Driver Model, FDM, is an extensible and portable, Ansi-C compatible model that provides a framework of organizing peripheral devices into a common subsystem. It's architecture is simple to use, easy to adapt and reusable across any platform, since it is not directly tied to any hardware. It abstracts this mechanism through objects which allows the user to tie a front and backend specific to their operating environment.

System Diagnostics
Fusion Embedded RTOS provides extensive internal diagnostic capabilities, including:

  • Statistical tracking for all memory usage (current and worst case usage)
    – All Stacks
    – Memory Pools
    – Packet Pools
    – Queues
    – Packet Handlers
    – Circular Buffers
  • Provides Data logging capabilities for:
    – Interrupts
    – Task Switches
    – RTOS Object calls
    – Error Conditions
    – User specific data logging

Standard C Library
Fusion Embedded RTOS Provides an extensive, reentrant, Thread safe, small footprint, integer, Fusion Standard C library. The capabilities are listed below in categories.

  • Time
  • Stdio
  • Stddir
  • Stdlib
  • String
  • Character

XML SAX Parser
Fusion RTOS includes the Fusion Embedded XML SAX Parser. This is a small, fast, intuitive XML parser that decodes XML documents into C language structures that are easy for designers to integrate into their embedded applications.

Command Line Debug SHELL
Fusion Embedded RTOS includes the Fusion Command Line Debug Shell. This is a uart driven interface from the PC to the embedded product running Fusion RTOS. Fusion SHELL provides general commands such as reading and writing to memory. It also provide mechanisms for the user to add additional commands. Fusion SHELL is also used when additional Fusion products are integrated with Fusion RTOS. Each product has command list useful for debugging the specific Fusion Software Product.

Name Server
Fusion RTOS includes the name server. This is an RTOS object that translates between Fusion Object pointers and Character names. However, it is not limited to Fusion RTOS Objects. It can be used for any user specified function. Pass in a name to any previously installed pointer and the Name server will return that pointer.

Copyright © 2004 Unicoi Systems, Inc.
Email webmaster@unicoi.com with your site questions/comments.

   Unicoi Systems | info@unicoi.com | 678.208.2250 | Embedded Software Development