On the hardware-software partitioning problem: system modeling and partitioning techniques
This paper presents an in-depth study of several system partitioning procedures. It is based on the appropriate formulation of a general system model, being therefore independent of either the particular co-design problem or the specific partitioning procedure. The techniques under study are a knowledge-based system and three classical circuit partitioning algorithms ( Simulated Annealing, Kernighan& Lin and Hierarchical Clustering). The former has been entirely proposed by the authors in previous works while the later have been properly extended to deal with system level issues. We will show how the way the problem is solved biases the results obtained, regarding both quality and convergence rate. Consequently it is extremely important to choose the most suitable technique for the particular co-design problem that is being confronted.
hardware-software partitioning system modeling algorithms clustering performance design hardware-software co-design general optimization procedures cost functions expert systems fuzzy logic