Multicore architectures have become ubiquitous in the recent years. Yet, traditional serial programming techniques cannot exploit their potential because they do not express the dependencies of the tasks clearly rendering them unsuitable for any system which can execute tasks in parallel.   We present a methodology which enables designers to explicitly and separately express function, communication and platform aspects. The approach allows to explore all aspects of a system without even building virtual prototypes or platform-dependent code. A bottleneck analysis and resolution leads to a well matched hardware/software partitioning as a basis for subsequent HW and SW design.
['Enno Wein']
HW/SW co-design of parallel systems