Abstract
To cope with increasing demands for higher computational power and greater system flexibility, dynamically and partially reconfigurable logic has started to play an important role in embedded systems and systems-on-chip (SoC). However, when using traditional design methods and tools, it is difficult to estimate or analyze the performance impact of including such reconfigurable logic devices into a system design. In this work, we present a system-level framework, called Perfecto, which is able to perform rapid exploration of different reconfigurable design alternatives and to detect system performance bottlenecks. This framework is based on the popular IEEE standard system-level design language SystemC, which is supported by most EDA and ESL tools. Given an architecture model and an application model, Perfecto uses SystemC transaction-level models (TLMs) to simulate the system design alternatives automatically. Different hardware-software copartitioning, coscheduling, and placement algorithms can be embedded into the framework for analysis; thus, Perfecto can also be used to design the algorithms to be used in an operating system for reconfigurable systems. Applications to a simple illustration example and a network security system have shown how Perfecto helps a designer make intelligent partition decisions, optimize system performance, and evaluate task placements.
- Baleani, M., Gennari, F., Jiang, Y., Patel, Y., Brayton, R., and Sangiovanni-Vincentelli, A. 2002. Hardware-Software partitioning and code generation of embedded control applications on a reconfigurable architecture platform. In Proceedings of the 10th International Symposium on Hardware-Software Codesign (CODES). ACM Press, New York, 151--156. Google ScholarDigital Library
- Chang, D. and Marek-Sadowska, M. 1998. Partitioning sequential circuits on dynamically reconfigurable FPGAs. In Proceedings of the 6th International Symposium on FPGAs. ACM Press, New York, 161--167. Google ScholarDigital Library
- Chiang, C.-C. 2007. Hardware/Software real-time relocatable task scheduling and placement in dynamically partial reconfigurable systems. M.S. thesis, National Chung Cheng University, Chiayi, Taiwan.Google Scholar
- Compton, K. and Hauck, S. 2002. Reconfigurable computing: A survey of systems and software. ACM Comput. Surv. 34, 2 (Jun.), 171--210. Google ScholarDigital Library
- Desmet, D., Avasare, P., Coene, P., Decneut, S., Hendrickx, F., Marescaux, T., Mignolet, J.-Y., Pasko, R., Schaumont, P., and Verkest, D. 2002. Design of Cam-E-leon, a run-time reconfigurable Web camera. In Proceedings of the Embedded Processor Design Challenges: Systems, Architectures, Modeling, and Simulation (SAMOS). Lecture Notes in Computer Science, vol. 2268. Springer, 274--290. Google ScholarDigital Library
- Dick, R. P., Rhodes, D. L., and Wolf, W. 1998. TGFF: Task graphs for free. In Proceedings of the 6th International Workshop on Hardware/Software Codesign (CODES). IEEE Press, 97--101. Google ScholarDigital Library
- Hsiung, P.-A., Huang, C.-H., and Chen, Y.-H. 2008. Hardware task scheduling and placement in operating systems for dynamically reconfigurable SoC. J. Embed. Comput. (to appear). Google ScholarDigital Library
- Hsiung, P.-A. and Liu, C.-W. 2007. Exploiting hardware and software low power techniques for energy efficient co-scheduling in dynamically reconfigurable systems. In Proceedings of the 17th International Conference on Field Programmable Logic and Applications (FPL). IEEE Computer Society Press, 165--170. Google ScholarDigital Library
- Liao, H.-W. 2007. Multi-Objective placement of reconfigurable hardware tasks in real-time systems. M.S. thesis, National Chung Cheng University, Chiayi, Taiwan.Google Scholar
- Liu, C.-W. 2006. Energy efficient hardware/software co-scheduling in reconfigurable systems. M.S. thesis, National Chung Cheng University, Chiayi, Taiwan.Google Scholar
- Loo, S. and Wells, B. 2006. Task scheduling in a finite resource reconfigurable hardware/software co-design environment. INFORMS J. Comput. 18, 12 (Spring), 151--172. Google ScholarDigital Library
- Mei, B., Schaumont, P., and Vernalde, S. 2000. A hardware-software partitioning and scheduling algorithm for dynamically reconfigurable embedded systems. In Proceedings of the 11th ProRISC Workshop on Circuits, Systems and Signal Processing Veldhoven.Google Scholar
- Noguera, J. and Badia, R. 2003. System-Level power-performance trade-offs in task scheduling for dynamically reconfigurable architectures. In Proceedings of the International Conference on Compilers, Architectures, and Synthesis for Embedded Systems (CASES). ACM Press, New York, 73--83. Google ScholarDigital Library
- (OSCI), O. S. I. 2008. SystemC User's Guide. http://www.systemc.org/.Google Scholar
- Pelkonen, A., Masselos, K., and Cupák, M. 2003. System-Level modeling of dynamically reconfigurable hardware with SystemC. In Proceedings of the 10th Reconfigurable Architectures Workshop, International Parallel and Distributed Processing Symposium, 174--181. Google ScholarDigital Library
- Qu, Y., Tiensyrjä, K., and Masselos, K. 2004. System-Level modeling of dynamically reconfigurable co-processors. In Proceedings of the 14th International Conference on Field Programmable Logic and Application (FPL). Lecture Notes in Computer Science, vol. 3203. Springer, 881--885.Google Scholar
- Rakhmatov, D. and Vrudhula, S. 2002. Hardware-Software bipartitioning for dynamically reconfigurable system. In Proceedings of the 10th International Workshop on Hardware-Software Codesign (CODES), 145--150. Google ScholarDigital Library
- Resano, J. and Mozos, D. 2004. Specific scheduling support to minimize the reconfiguration overhead of dynamically reconfigurable hardware. In Proceedings of the 41th Annual Design Automation Conference (DAC). ACM Press, New York, 119--124. Google ScholarDigital Library
- Rissa, T., Donlin, A., and Luk, W. 2005. Evaluation of SystemC modelling of reconfigurable embedded systems. In Proceedings of the Design, Automation and Test in Europe (DATE), vol. 3, 253--258. Google ScholarDigital Library
- Santambrogio, M. 2008. Hardware-Software codesign methodologies for dynamically reconfigurable systems. Ph.D. thesis, Politecnico Di Milano, Italy.Google Scholar
- Steiger, C., Walder, H., and Platzner, M. 2004. Operating systems for reconfigurable embedded platforms: Online scheduling of real-time tasks. IEEE Trans. Comput. 53, 11 (Nov.), 1393--1407. Google ScholarCross Ref
- Tiensyrjä, K., Qu, Y., Zhang, Y., Cupak, M., Rynders, L., Vanmeerbeeck, G., Masselos, K., Potamianos, K., and Pettissalo, M. 2004. SystemC and OCAPI-xl based system-level design for reconfigurable systems-on-chip. In Proceedings of the International Forum on Specification and Design Languages (FDL), 428--429.Google Scholar
- Trimberger, S. 1998. Scheduling designs into a time-multiplexed FPGA. In Proceedings of the 6th International Symposium on FPGAs. ACM Press, New York, 153--160. Google ScholarDigital Library
- Tseng, C.-C. and Hsiung, P.-A. 2005. UML-Based design flow and partitioning methodology for dynamically reconfigurable computing systems. In Proceedings of the IFIP International Conference on Embedded and Ubiquitous Computing (EUC). Lecture Notes in Computer Science, vol. 3824. Springer, 479--488. Google ScholarDigital Library
Index Terms
- Perfecto: A systemc-based design-space exploration framework for dynamically reconfigurable architectures
Recommendations
Partitioning signal processing applications to different granularity reconfigurable logic
SSIP'05: Proceedings of the 5th WSEAS international conference on Signal, speech and image processingIn this paper, we propose a methodology for partitioning DSP applications between the fine and coarse-grain reconfigurable hardware for improving performance. The fine-grain logic is implemented by an embedded FPGA unit, while for the coarse-grain ...
A method for partitioning applications in hybrid reconfigurable architectures
In this paper, we propose a methodology for accelerating application segments by partitioning them between reconfigurable hardware blocks of different granularity. Critical parts are speeded-up on the coarse-grain reconfigurable hardware for meeting the ...
Partitioning Methodology for Heterogeneous Reconfigurable Functional Units
A partitioning methodology between the reconfigurable hardware blocks of different granularity, which are embedded in a generic heterogeneous architecture, is presented. The fine-grain reconfigurable logic is realized by an FPGA unit, while the coarse-...
Comments