skip to main content
research-article

Design Assurance Strategy and Toolset for Partially Reconfigurable FPGA Systems

Published:01 December 2010Publication History
Skip Abstract Section

Abstract

The growth of the Reconfigurable Computing (RC) systems community exposes diverse requirements with regard to functionality of Electronic Design Automation (EDA) tools. Low-level design tools are increasingly required for RC bitstream debugging and IP core design assurance, particularly in multiparty Partially Reconfigurable (PR) designs. While tools for low-level analysis of design netlists do exist, there is increasing demand for automated and customisable bitstream analysis tools.

This article discusses the need for low-level IP core verification within PR-enabled FPGA systems and reports FDAT (FPGA Design Analysis Tool), a versatile, modular and open tools framework for low-level analysis and verification of FPGA designs. FDAT provides a set of high-level Application Programming Interfaces (APIs) abstracting the Xilinx FPGA fabric, the implemented design (e.g., placed and routed netlist) and the related bitstream. A lightweight graphic front-end allows custom visualisation of the design within the FPGA fabric. The operation of FDAT is governed by “recipe” scripts which support rapid prototyping of the abstract algorithms for system-level design verification. FDAT recipes, being Python scripts, can be ported to embedded FPGA systems, for example, the previously reported Secure Reconfiguration Controller (SeReCon) which enforces an IP core spatial isolation policy in order to provide run-time protection to the PR system.

The paper illustrates the application of FDAT for bit-pattern analysis of Virtex-II Pro and Virtex-5 inter-tile routing and verification of the spatial isolation between designs.

References

  1. Appiah, K., Hunter, A., Kluge, T., Aiken, P., and Dickinson, P. 2009. FPGA-based anomalous trajectory detection using SOFM. In Proceedings of the 5th International Workshop on Reconfigurable Computing: Architectures, Tools and Applications. Lecture Notes in Computer Science, vol. 5453, Springer, 243--254. Google ScholarGoogle ScholarDigital LibraryDigital Library
  2. Becker, J., Hubner, M., Hettich, G., Constapel, R., Eisenmann, J., and Luka, J. 2007. Dynamic and partial FPGA exploitation. Proc. IEEE 95, 438--452.Google ScholarGoogle ScholarCross RefCross Ref
  3. Bobda, C. 2007. Introduction to Reconfigurable Computing: Architectures, Algorithms and Applications. Springer. Google ScholarGoogle ScholarDigital LibraryDigital Library
  4. Bondhugula, U., Devulapalli, A., Fernando, J., Wyckoff, P., and Sadayappan, P. 2006. Parallel FPGA-based all-pairs shortest-paths in a directed graph. In Proceedings of the 20th International Parallel and Distributed Processing Symposium (IPDPS’06). Google ScholarGoogle ScholarDigital LibraryDigital Library
  5. Claus, C., Zhang, B., Hubner, M., Schmutzler, C., Becker, J., and Stechele, W. 2007. An XDL-based busmacro generator for customizable communication interfaces for dynamically and partially reconfigurable systems. In Proceedings of the Workshop on Reconfigurable Computing Education at the IEEE Computer Society Annual Symposium on VLSI (ISLVSI’07).Google ScholarGoogle Scholar
  6. Drimer, S. and Kuhn, M. G. 2009. A protocol for secure remote updates of FPGA configurations. In Proceedings of the 5th International Workshop on Reconfigurable Computing: Architectures, Tools and Applications. Lecture Notes in Computer Science, vol. 5453, Springer, 50--61. Google ScholarGoogle ScholarDigital LibraryDigital Library
  7. Ehliar, A. and Liu, D. 2007. Thinking outside the flow: Creating customized backend tools for Xilinx-based designs. In Proceedings of 4th Annual FPGA World Conference.Google ScholarGoogle Scholar
  8. Hübner, M., Braun, L., Becker, J., Claus, C. and Stechele W. 2007. Physical configuration on-line visualization of Xilinx Virtex-II FPGAs VLSI. In Proceedings of the IEEE Computer Society Annual Symposium on VLSI. 41--46. Google ScholarGoogle ScholarDigital LibraryDigital Library
  9. Huffmire, T., Brotherton, B., Wang, G., Sherwood, T., Kastner, R., Levin, T., Nguyen, T., and Irvine, C. 2007. Moats and drawbridges: An isolation primitive for reconfigurable hardware based systems. In Proceedings of the IEEE Symposium on Security and Privacy. IEEE Computer Society, 281--295. Google ScholarGoogle ScholarDigital LibraryDigital Library
  10. Huffmire, T., Brotherton, B., Sherwood, T., Kastner, R., Levin, T., Nguyen, T., and Irvine, C. 2008. Managing security in FPGA-based embedded systems. IEEE Des. Test Comput. 25, 590--598. Google ScholarGoogle ScholarDigital LibraryDigital Library
  11. Hutchings, B. L., Franklin, R., and Carver, D. 2002. Assisting network intrusion detection with reconfigurable hardware. In Proceedings of the 10th Annual IEEE Symposium on Field-Programmable Custom Computing Machines. 111--120. Google ScholarGoogle ScholarDigital LibraryDigital Library
  12. Kalte, H. and Porrmann, M. 2006. REPLICA2Pro: Task relocation by bitstream manipulation in Virtex-II1Pro FPGAs. In Proceedings of the 3rd Conference on Computing Frontiers (CF’06). ACM Press, 403--412. Google ScholarGoogle ScholarDigital LibraryDigital Library
  13. Kastner, R. and Huffmire, T. 2008. Threats and challenges in reconfigurable hardware security. In Proceedings of the International Conference on Engineering of Reconfigurable Systems and Algorithms (ERSA’08).Google ScholarGoogle Scholar
  14. Kępa, K., Morgan, F., Kościuszkiewicz, K., and Surmacz, T. 2008. SeReCon: A secure dynamic partial reconfiguration controller. In Proceedings of the IEEE Computer Society Annual Symposium on VLSI (ISLVSI’08). 292--297. Google ScholarGoogle ScholarDigital LibraryDigital Library
  15. Kępa, K., Morgan, F., Kościuszkiewicz, K., and Surmacz, T. 2009. SeReCon: A secure reconfiguration controller for self-reconfigurable systems. Int. J. Crit. Comput.-Based Syst. 1, 1--3, 86--103 Google ScholarGoogle ScholarDigital LibraryDigital Library
  16. King, S. T., Tucek, J., Cozzie, A., Grier, C., Jiang, W., and Zhou, Y. 2008. Designing and implementing malicious hardware. In Proceedings of the 1st Usenix Workshop on Large-Scale Exploits and Emergent Threats (LEET’08). USENIX Association. Google ScholarGoogle ScholarDigital LibraryDigital Library
  17. Krasteva, Y. E., De La Torre, E., Riesgo, T., and Joly, D. 2006. Virtex II FPGA bitstream manipulation: Application to reconfiguration control systems. In Proceedings of the International Conference on Field Programmable Logic and Applications (FPL’06).Google ScholarGoogle Scholar
  18. Lotze, J., Fahmy, S. A., Noguera, J., Doyle, L., and Esser, R. 2008. An FPGA-based cognitive radio framework. In Proceedings of the Irish Signals and Systems Conference (ISSC’08). 138--143.Google ScholarGoogle Scholar
  19. Maslennikow, O. and Soltan, P. 2003. Automated implementation of digital circuits in current-mode FPGA chips. In Proceedings of 7th International Conference on the Experience of Designing and Application of CAD Systems in Microelectronics (CADSM’03). 223--225.Google ScholarGoogle Scholar
  20. McLean, M. and Moore, J. 2007. FPGA-based single chip cryptographic solution. Milit. Embed. Syst.Google ScholarGoogle Scholar
  21. Mühlbauer, F. and Bobda, C. 2006. A dynamic reconfigurable hardware/software architecture for object tracking in video streams. EURASIP J. Embed. Syst. Google ScholarGoogle ScholarDigital LibraryDigital Library
  22. Ngo, H. T., Gottumukkal, R., and Asari, V. K. 2005. A flexible and efficient hardware architecture for realtime face recognition based on eigenface. In Proceedings of the IEEE Computer Society Annual Symposium on VLSI. 280--281. Google ScholarGoogle ScholarDigital LibraryDigital Library
  23. Note, J.-B. and Rannaud, E. 2008. From the bitstream to the netlist. In Proceedings of the 16th International ACM/SIGDA Symposium on Field Programmable Gate Arrays (FPGA’08). ACM. 264--264. Google ScholarGoogle ScholarDigital LibraryDigital Library
  24. Raaijmakers, S. 2007. Run-Time Partial Reconfiguration on the Virtex-II Pro. Masters Science thesis, Delft University of Technology.Google ScholarGoogle Scholar
  25. Salefski, B. and Caglar, L. 2001. Re-configurable computing in wireless. In Proceedings of the Design Automation Conference. 178--183. Google ScholarGoogle ScholarDigital LibraryDigital Library
  26. Sedcole, N. P. 2006. Reconfigurable platform-based design in FPGAs for video image processing. Ph.D. Thesis, Imperial College, London.Google ScholarGoogle Scholar
  27. Steiner, N. and Athanas, P. 2004. An alternate wire database for Xilinx FPGAs. In Proceedings of the 12th Annual IEEE Symposium 011 Field-Programmable Custom Computing Machines (FCCM’04). IEEE Computer Society. Google ScholarGoogle ScholarDigital LibraryDigital Library
  28. Steiner, N. J. 2002. A standalone wire database for routing and tracing in Xilinx Virtex, Virtex-E, and Virtex-II FPGAs. Masters Science thesis, Bradley Department of Electrical and Computer Engineering. Virginia Polytechnic Institute and State University, Blacksburg, VA.Google ScholarGoogle Scholar
  29. Steiner, N. J. 2008. Autonomous Computing Systems. Ph.D. thesis, Bradley Department of Electrical and Computer Engineering. Virginia Polytechnic Institute and State University, Blacksburg, VA.Google ScholarGoogle Scholar
  30. SWIG, 2009, Interface compiler SWIG. http://www.swig.org.Google ScholarGoogle Scholar
  31. Thompson, K. 1984. Reflections on trusting trust. Comm. ACM 27, 761--763. Google ScholarGoogle ScholarDigital LibraryDigital Library
  32. Todorovich, E. 2006. Estimacion Estadfstica de Consumo en FPGAs. Ph.D. thesis, Departamento de Ingenieria Informatica, Universidad Autonoma de Madrid.Google ScholarGoogle Scholar
  33. Xilinx. 2005. Virtex-II Pro User Guide UGOl2 (v4.0) March 23.Google ScholarGoogle Scholar
  34. Xilinx. 2007a. Virtex-5 Configuration User Guide. UGl91 (v2.2) February I.Google ScholarGoogle Scholar
  35. Xilinx. 2007b. Virtex-5 User Guide UGl90 (v3.0) February 2.Google ScholarGoogle Scholar
  36. Xilinx. 2008. Single Chip Crypto. http://www.xilinx.com/esp/aero_def/crypto.htm.Google ScholarGoogle Scholar
  37. Xilinx. 2008. ISE Foundation 10.1. http://www.xilinx.com/ise/logic_designyrod/foundation.htm. XILINX, 2008. JBits 3.0 SDK for Virtex-II, http://www.xilinx.com/labs/projects/jbits/.Google ScholarGoogle Scholar
  38. Xilinx. 2009. Platform Studio and the EDK. http://www.xilinx.com/tools/platform.htm.Google ScholarGoogle Scholar
  39. XILINX ISE 6.1 documentation. XDL: Xilinx Design Language, In ISE 6.}, <INSTDIR>/help/data/xdl/xdl.html.Google ScholarGoogle Scholar

Index Terms

  1. Design Assurance Strategy and Toolset for Partially Reconfigurable FPGA Systems

        Recommendations

        Comments

        Login options

        Check if you have access through your login credentials or your institution to get full access on this article.

        Sign in

        Full Access

        PDF Format

        View or Download as a PDF file.

        PDF

        eReader

        View online with eReader.

        eReader
        About Cookies On This Site

        We use cookies to ensure that we give you the best experience on our website.

        Learn more

        Got it!