ACM Home Page
Please provide us with feedback. Feedback
Algorithmic aspects of hardware/software partitioning
Full text PdfPdf (254 KB)
Source ACM Transactions on Design Automation of Electronic Systems (TODAES) archive
Volume 10 ,  Issue 1  (January 2005) table of contents
Pages: 136 - 156  
Year of Publication: 2005
ISSN:1084-4309
Authors
Péter Arató  Budapest University of Technology and Economics, Hungary
Zoltán Ádám Mann  Budapest University of Technology and Economics, Hungary
András Orbán  Budapest University of Technology and Economics, Hungary
Publisher
ACM  New York, NY, USA
Bibliometrics
Downloads (6 Weeks): 6,   Downloads (12 Months): 107,   Citation Count: 5
Additional Information:

abstract   references   cited by   index terms   collaborative colleagues  

Tools and Actions: Request Permissions Request Permissions    Review this Article  
DOI Bookmark: Use this link to bookmark this Article: http://doi.acm.org/10.1145/1044111.1044119
What is a DOI?

ABSTRACT

One of the most crucial steps in the design of embedded systems is hardware/software partitioning, that is, deciding which components of the system should be implemented in hardware and which ones in software. Most formulations of the hardware/software partitioning problem are NP-hard, so the majority of research efforts on hardware/software partitioning has focused on developing efficient heuristics.This article considers the combinatorial structure behind hardware/software partitioning. Two similar versions of the partitioning problem are defined, one of which turns out to be NP-hard, whereas the other one can be solved in polynomial time. This helps in understanding the real cause of complexity in hardware/software partitioning. Moreover, the polynomial-time algorithm serves as the basis for a highly efficient novel heuristic for the NP-hard version of the problem. Unlike general-purpose heuristics such as genetic algorithms or simulated annealing, this heuristic makes use of problem-specific knowledge, and can thus find high-quality solutions rapidly. Moreover, it has the unique characteristic that it also calculates lower bounds on the optimum solution. It is demonstrated on several benchmarks and also large random examples that the new algorithm clearly outperforms other heuristics that are generally applied to hardware/software partitioning.


REFERENCES

Note: OCR errors may be found in this Reference List extracted from the full text article. ACM has opted to expose the complete List rather than only correct and linked references.

 
1
 
2
 
3
Arató, P., Juhász, S., Mann, Z. Á., Orbán, A., and Papp, D. 2003a. Hardware/software partitioning in embedded system design. In Proceedings of the IEEE International Symposium on Intelligent Signal Processing.
 
4
Arató, P., Mann, Z. Á., and Orbán, A. 2003b. Hardware-software co-design for Kohonen's self-organizing map. In Proceedings of the IEEE 7th International Conference on Intelligent Engineering Systems.
 
5
Barros, E., Rosenstiel, W., and Xiong, X. 1993. Hardware/software partitioning with UNITY. In Proceedings of the 2nd International Workshop on Hardware-Software Codesign.
6
7
 
8
Cherkassky, B. V. and Goldberg, A. V. 1997. On implementing push-relabel method for the maximum flow problem. Algorithmica 19, 4, 390--410.
 
9
Dasdan, A. and Aykanat, C. 1997. Two novel multiway circuit partitioning algorithms using relaxed locking. IEEE Trans. Comput.-Aid. Des. Integr. Circ. Syst. 16, 2 (Feb.), 169--177.
 
10
Dick, R. P. and Jha, N. K. 1998. MOGAC: A multiobjective genetic algorithm for hardware-software co-synthesis of hierarchical heterogeneous distributed embedded systems. IEEE Trans. Comput.-Aid. Des. Integr. Circ. Syst. 17, 10, 920--935.
 
11
 
12
Eles, P., Peng, Z., Kuchcinski, K., and Doboli, A. 1997. System level hardware/software partitioning based on simulated annealing and tabu search. Des. Automat. Embedd. Syst. 2, 1 (Jan.), 5--32.
 
13
 
14
 
15
16
 
17
 
18
 
19
Guthaus, M. R., Ringenberg, J. S., Ernst, D., Austin, T. M., Mudge, T., and Brown, R. B. 1997. MiBench: A free, commercially representative embedded benchmark suite. In Proceedings of the IEEE 4th Annual Workshop on Workload Characterization.
 
20
 
21
 
22
Kalavade, A. and Lee, E. A. 1997. The extended partitioning problem: Hardware/Software mapping, scheduling and implementation-bin selection. Des. Automat. Embedd. Syst. 2, 2, 125--164.
 
23
Kalavade, A. and Subrahmanyam, P. A. 1998. Hardware/software partitioning for multifunction systems. IEEE Trans. Comput.-Aid. Des. Integr. Circ. Syst. 17, 9 (Sept.), 819--837.
 
24
Kernighan, B. W. and Lin, S. 1970. An efficient heuristic procedure for partitioning graphs. Bell Syst. Techn. J. 49, 2, 291--307.
25
 
26
27
 
28
Madsen, J., Grode, J., Knudsen, P. V., Petersen, M. E., and Haxthausen, A. 1997. LYCOS: The Lyngby co-synthesis system. Des. Automat. Embedd. Syst. 2, 2, 195--236.
 
29
Mann, Z. Á. and Orbán, A. 2003. Optimization problems in system-level synthesis. In Proceedings of the 3rd Hungarian-Japanese Symposium on Discrete Mathematics and Its Applications.
 
30
Mei, B., Schaumont, P., and Vernalde, S. 2000. A hardware/software partitioning and scheduling algorithm for dynamically reconfigurable embedded systems. In Proceedings of ProRISC.
 
31
 
32
Niemann, R. and Marwedel, P. 1997. An algorithm for hardware/software partitioning using mixed integer linear programming. Des. Automat. Embedd. Syst. Special Issue: Partitioning Methods for Embedded Systems 2, 165--193.
 
33
O'Nils, M., Jantsch, A., Hemani, A., and Tenhunen, H. 1995. Interactive hardware-software partitioning and memory allocation based on data transfer profiling. In Proceedings of the International Conference on Recent Advances in Mechatronics.
 
34
Qin, S. and He, J. 2000. An algebraic approach to hardware/software partitioning. Tech. rep. 206, UNU/IIST.
 
35
 
36
 
37
38
 
39
Stone, H. 1977. Multiprocessor scheduling with the aid of network flow algorithms. IEEE Trans. Softw. Eng. 3, 1 (Jan.), 85--93.
 
40
41
42
 
43
Vahid, F. and Le, T. D. 1997. Extending the Kernighan/Lin heuristic for hardware and software functional partitioning. Des. Automat. Embedd. Syst. 2, 237--261.
 
44


Collaborative Colleagues:
Péter Arató: colleagues
Zoltán Ádám Mann: colleagues
András Orbán: colleagues