The goal of this work is the development of an tool for automatically partitioning, mapping and scheduling real-time applications onto heterogenous hardware platforms. Such application consists of functional units, called tasks. The hardware can be composed of multi-DSPs (C4x, C6x), FPGAs and ASICs. The tool uses a heuristic optimization algorithm to solve this NP-hard problem. Different optimization constraints can be obtained by a flexible cost function, like shortest execution time, lowest financial costs and lowest power consumption of the whole system.