Aim & Objective

freeSP - platform-independent solutions
for online-signal-processing applications


The developers of signal-processing systems often face the dilemma of an early decision requirement, determining the hardware or operating system for their project, in order to be able to make a reasonable calculation. Usually, performance requirements are estimated prior, and the actual selection happens under cost-minimizing pressure. In case the original estimation lies a bit aside, and the chosen hardware is insufficient, the calculation wavers.

The cost risk of working in new development systems tendencially results in development with dated, but well known hardware. Manufacturers of microcontrollers and digital signal processors (DSPs) are navigating against by offering development tools for their products which have a high abstraction degree and a low work-in-time. Alas these tools are bound to a narrow product pallet, and the applications built with them are almost not portable to other platforms.

Tools like MatLab and LabVIEW take a line over the simulation of the target-application, followed by a step of code generation. Although most solutions created this way are widely platform-independent, they suffer from a large system overhead that makes the produces code inefficient for use in final products. Not finally, these tools are very expensive.

In order to develop tailor-made solutions with few overhead, the programming in C, C++ or assembler is required. The biggest obstacle porting finalized programs or parts of programs is the fact, that the platform-differences condense at many places in the source code. Developers have to explicitly respond to I/O interfaces, organize memory allocations and develop a strategy for program scheduling.

With freeSP ("free signal-processing"), a new way is chosen. On the one hand, one can develop platform-independently at source-code level, on the other hand, development of signal-processing systems itself is vitally simplified. In the center there is an instant concept for processing "flowing" signals: the freeSP core. Flowing signals are designated as sensor data and derived informations that appear equi-distantly in time and that can be modelled as data streams. To the freeSP core belongs a workframe for declarative formulation of applications as well as an extensible stock of elementary signal-processing algorithms. These components are completely platform-independent and rely on a module "system" that contains all platform specific reliences and that is simply exchanged on demand. Tools for signal visualization and test signal generation are completing freeSP to a handy infrastructure for development of signal-processing systems.