Abstract
Current technology allows designers to implement complete embedded computing systems on a single FPGA. Using an FPGA as the implementation platform introduces greater flexibility into the design process and allows a new approach to embedded system design. Since there is no cost to reprogramming an FPGA, system performance can be measured on-chip in the runtime environment and the system's architecture can be altered based on an evaluation of the data to meet design requirements.
In this article, we discuss a new hardware/software codesign methodology tailored to reconfigurable platforms and a design infrastructure created to incorporate on-chip design tools. This methodology utilizes the FPGA's reconfigurability during the design process to profile and verify system performance, thereby reducing system design time. Our current design infrastructure includes: a system specification tool, two on-chip profiling tools, and an on-chip system verification tool.
- Altera. 2011a. Quartus II. http://www.altera.com/products/software/pld/products/q2/qts-index.html.Google Scholar
- Altera. 2011b. SOPC builder. http://www.altera.com/products/software/system/products/sopc/sop-index.html.Google Scholar
- Balarin, F., Chiodo, M., Giusto, P., Hsieh, H., Jurecska, A., Lavagno, L., Passerone, C., Sangiovanni-Vincentelli, A., Sentovich, E., Suzuki, K., and Tabbara, B. 1997. Hardware-Software Co-Design of Embedded Systems: The Polis Approach. Kluwer Academic Press, Dordrecht. Google Scholar
Digital Library
- Baleani, M., Gennari, F., Jiang, Y., Patel, Y., Brayton, R. K., and Sangiovanni-Vincentelli, A. 2002. HW/SW partitioning and code generation of embedded control applications on a reconfigurable architecture platform. In Proceedings of the 10th International Symposium on Hardware/Software Codesign. Google Scholar
Digital Library
- Browne, S., J.Dongarra, Garner, N., Ho, G., and Mucci, P. 2000. A portable programming interface for performance evaluation on modern processors. Int. J. High Perform. Comput. Appl. 14, 3. Google Scholar
Digital Library
- Cai, L. and Gajski, D. 2003. Transaction level modeling: An overview. In Proceedings of the IEEE/ACM/IFIP International Conference on Hardware/Software Codesign and System Synthesis. 19--24. Google Scholar
Digital Library
- Caldari, M., Conti, M., Coppola, M., Curaba, S., Pieralisi, L., and Turchetti, C. 2003. Transaction-Level models for AMBA bus architecture using systemC 2.0. In Proceedings of the Design, Automation and Test in Europe Conference. Google Scholar
Digital Library
- Densmore, D., Donlin, A., and Sangiovanni-Vincentelli, A. 2006. FPGA architecture characterization for system level performance analysis. In Proceedings of the Design, Automation and Test in Europe Conference. Google Scholar
Digital Library
- Ernst, R., Henkel, J., and Benner, T. 1993. Hardware-Software cosynthesis for microcontrollers. IEEE Desi. Test Comput. 10, 4, 64--75. Google Scholar
Digital Library
- Filion, L., Cantin, M.-A., Moss, L., Aboulhamid, E. M., and Bois, G. 2007. Space codesign: A systemC framework for fast exploration of hardware/software systems. In Proceedings of the Design and Verification Conference and Exhibition.Google Scholar
- Finc, M. and Zemva, A. 2005. Profiling soft-core processor applications for hardware/software partitioning. J. Syst. Archit. 51, 5, 315--329. Google Scholar
Digital Library
- First Silicon Solutions. 2009. Home page http://www.fs2.com.Google Scholar
- Fleischmann, J., Buchenrieder, K., and Kress, R. 1999. Codesign of embedded systems based on Java and reconfigurable hardware components. In Proceedings of the Conference and Exhibition on Design, Automation and Test in Europe (DATE). Google Scholar
Digital Library
- GDB. 2009. Home page http://sourceware.org/gdb/.Google Scholar
- GNU. 2011a. gprof manual. http://www.gnu.org/manual/gprof-2.9.1/gprof.html.Google Scholar
- GNU. 2011b. The GNU project and free software foundation (FSF). http://www.gnu.org.Google Scholar
- Hebert, O., K., I. C., and Savaria, Y. 2000. A method to derive application-specific embedded processing cores. In Proceedings of the 8th International Symposium on Hardware/Software Codesign. Google Scholar
Digital Library
- Hemmert, K. S., Tripp, J. L., Hutchings, B., and Jackson, P. A. 2003. Source level debugger for the sea cucumber synthesizing compiler. In IEEE Symposium on Field-Programmable Custom Computing Machines (FCCM). 228--237. Google Scholar
Digital Library
- Hough, R., Jones, P., Friedman, S., Chamberlain, R., Fritts, J., Lockwood, J., and Cytron, R. 2006. Cycle-Accurate microarchitecture performance evaluation. In Proceedings of the Workshop on Introspective Architecture.Google Scholar
- Kahn, G. 1974. The semantics of a simple language for parallel programming. In Proceedings of the IPIF Congress.Google Scholar
- Kimura, S., Itou, Y., and Hirao, M. 1997. A hardware/software codesign method for a general purpose reconfigurable co-processor. In Proceedings of the 5th International Workshop on Hardware/Software Co-Design. Google Scholar
Digital Library
- Korn, W., Teller, P., and Castillo, G. 2001. Just how accurate are performance counters? In Proceedings of the 20th IEEE International Performance, Computing, and Communications Conference.Google Scholar
- Lee, E. and Parks, T. 1995. Dataflow process networks. Proc. IEEE 83, 5, 773--799.Google Scholar
- Li, Y., Callahan, T., Darnell, E., Harr, R., Kurkure, U., and Stockwood, J. 2000. Hardware-Software co-design of embedded reconfigurable architectures. In Proceedings of the 37th IEEE/ACM Design Automation Conference (DAC). Google Scholar
Digital Library
- Lysaght, P., Blodget, B., Mason, J., Young, J., and Bridgford, B. 2006. Invited paper: Enhanced architectures, design methodologies, and CAD tools for dynamic reconfiguration of Xilinx FPGAs. In Proceedings of the IEEE International Conference on Field-Programmable Logic and Applications (FPL). 12--17.Google Scholar
- Magarshack, P. and Paulin, P. G. 2003. System-on-Chip beyond the nanometer wall. In Proceedings of the 40th IEEE/ACM Design Automation Conference (DAC). 419--424. Google Scholar
Digital Library
- MEDEA+. 2003. MEDEA+ EDA roadmap 2003: Executive summary europe. http://www.medea.org/webpublic/publications/publ_relation_eda.htm.Google Scholar
- Mentor Graphics. 2009. Mentor graphics' seamless co-verification simulator. http://www.mentor.com/seamless.Google Scholar
- Model Technology. 2009. Home page http://www.model.com.Google Scholar
- Noguera, J. and Badia, R. M. 2002. Dynamic run-time HW/SW scheduling techniques for reconfigurable architectures. In Proceedings of the 10th International Symposium on Hardware/Software Codesign. Google Scholar
Digital Library
- Ohba, N. and Takano, K. 2004. An SoC design methodology using FPGAs and embedded microprocessors. In Proceedings of the ACM/IEEE Design Automation Conference (DAC). 747--752. Google Scholar
Digital Library
- PAPI. 2009. Home page http://icl.cs.utk.edu/projects/papi/.Google Scholar
- Rakhmatov, D. N. and Vrudhula, S. B. K. 2002. Hardware/Software bipartitioning for dynamically reconfigurable systems. In Proceedings of the 10th International Symposium on Hardware/Software Codesign. Google Scholar
Digital Library
- Rissa, T., Luk, W., and Cheung, P. 2004. Automated combination of simulation and hardware prototyping. In Proceedings of the International Conference on Engineering of Reconfigurable Systems and Algorithms.Google Scholar
- Saldana, M., Shannon, L., and Chow, P. 2006. The routability of multiprocessor network topologies in FPGAs. In Proceedings of the IEEE/ACM SLIP Workshop. Google Scholar
Digital Library
- Shannon, L. and Chow, P. 2004a. Maximizing system performance: Using reconfigurability to monitor system communications. In Proceedings of the IEEE International Conference on Field-Programmable Technology (FPT). 231--238.Google Scholar
- Shannon, L. and Chow, P. 2004b. Using reconfigurability to achieve real-time profiling for hardware/software codesign. In Proceedings of the ACM International Symposium on FPGAs. 190--199. Google Scholar
Digital Library
- Shannon, L. and Chow, P. 2007. SIMPPL: An adaptable soc framework using a progammable IP interface to facilitate design reuse. IEEE Trans. VLSI Syst. 15, 377--390. Google Scholar
Digital Library
- Shannon, L., Fort, B., Parikh, S., Patel, A., Saldana, M., and Chow, P. 2006. A system design methodology for reducing system integration time and facilitating modular design verification. In Proceedings of the IEEE International Conference on Field-Programmable Logic and Applications (FPL).Google Scholar
- Sprunt, B. 2002. Pentium 4 performance-monitoring features. IEEE Micro 22, 4. Google Scholar
Digital Library
- Stitt, G., Lysecky, R., and Vahid, F. 2003. Dynamic hardware/software partitioning: A first approach. In Proceedings of the 40th IEEE/ACM Design Automation Conference (DAC). 250--255. Google Scholar
Digital Library
- Weicker, R. P. 1984. Dhrystone: A synthetic systems programming benchmark. Comm. ACM 27, 10. Google Scholar
Digital Library
- Xilinx. 2011a. ChipScope pro's home page. http://www.xilinx.com/ise/optional_prod/cspro.htm.Google Scholar
- Xilinx. 2011b. EDK design tools. http://www.xilinx.com/ise/embedded_design_prod/platform_studio.htm.Google Scholar
- Xilinx. 2011c. MicroBlaze debug module (MDM) documentation. http://www.xilinx.com/support/documentation/ip_documentation/mdm.pdf.Google Scholar
Index Terms
Leveraging reconfigurability in the hardware/software codesign process
Recommendations
Using reconfigurability to achieve real-time profiling for hardware/software codesign
FPGA '04: Proceedings of the 2004 ACM/SIGDA 12th international symposium on Field programmable gate arraysEmbedded systems combine a processor with dedicated logic to meet design specifications at a reasonable cost. The attempt to amalgamate two distinct design environments introduces many problems, one being how to partition a single design for the two ...
Teaching hardware/software codesign on a reconfigurable computing platform
ARC'12: Proceedings of the 8th international conference on Reconfigurable Computing: architectures, tools and applicationsThis paper reports on a practically oriented undergraduate course in Hardware/Software Codesign which uses an FPGA-based reconfigurable computing platform with a soft processor for analyzing and evaluating hardware/software trade-offs. The Altium ...
Hardware/software codesign for a fuzzy autonomous road-following system
In this research, a fuzzy logic controller is designed for vision-based autonomous road-following. Because of its high-speed response, portability, and flexibility, a field programmable gate array is applied to implement this control system. Furthermore,...






Comments