Skip to main content
Log in

Design, Debug, Deploy: The Creation of Configurable Computing Applications

  • Published:
Journal of Signal Processing Systems Aims and scope Submit manuscript

Abstract

Configurable Computing Machines (CCMs) are computing machines based on reconfigurable circuit technology such as field programmable gate-arrays. Early researchers recognized CCMs as a new, flexible, and powerful class of computer. The earliest CCMs featured rudimentary but significant integrated design, debug, and deployment (runtime) environments. This paper reviews those environments and the contributions they made and considers the progress made over the past 20 years in providing support for the “3 D’s” of configurable computing application development: design, debug, and deployment. It then introduces an integrated CAD framework for the creation of CCM CAD tools and describes a series of experiments in creating such a CAD tool suite — the JHDL system. The paper reviews lessons learned from that work and concludes by discussing the role integrated design, debug, and runtime environments will play in future CCM-based systems.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Fig. 1
Fig. 2
Fig. 3
Fig. 4

Similar content being viewed by others

References

  1. Bertin, P., Roncin, D., & Vuillemin, J. (1989). Introduction to programmable active memories. Tech. Rep. 3, Digital Equipment Corporation Paris Research Laboratory, June.

  2. Gokhale, M., Holmes, W., Kopser, A., Lucas, S., Minnich, R., Sweely, D., et al. (1991). Building and using a highly parallel programmable logic array. IEEE Computer, 24(1), 81–89, January.

    Google Scholar 

  3. Amerson, R., Carter, R., Culbertson, B., Kuekes, P., & Snider, G. (1995). Teramac–configurable custom computing. In D. A. Buell & K. L. Pocek (Eds.), Proceedings of IEEE Workshop on FPGAs for Custom Computing Machines (pp. 32–38). Napa, CA, April.

  4. Amerson, R., Carter, R., Culbertson, W., Kuekes, P., Snider, G., & Albertson, L. (1996). Plasma: An FPGA for million gate systems. In ACM/SIGDA International Symposium on Field Programmable Gate Arrays. Monterey, CA, February.

  5. Culbertson, W. B., Amerson, R., Carter, R. J., Kuekes, P., & Snider, G. (1997). Defect tolerance on the teramac custom computer. In J. M. Arnold & K. L. Pocek (Eds.), Proceedings of IEEE Workshop on FPGAs for Custom Computing Machines (pp. 116–123). Napa, CA, April.

  6. Vuillemin, J., Bertin, P., Roncin, D., Shand, M., Touati, H., & Boucard, P. (1996). Programmable active memories: Reconfigurable systems come of age. IEEE Transactions on VLSI Systems, 4(1), 56–69.

    Article  Google Scholar 

  7. Arnold, J. M., Buell, D. A., & Davis, E. G. (1992). Splash 2. In Proceedings of the 4th Annual ACM Symposium on Parallel Algorithms and Architectures (pp. 316–324), June.

  8. Arnold, J. M. (1993). The Splash 2 software environment. In D. A. Buell & K. L. Pocek (Eds.), Proceedings of IEEE Workshop on FPGAs for Custom Computing Machines (pp. 88–93). Napa, CA, April.

  9. Wirthlin, M. J., & Hutchings, B. L. (1995). A dynamic instruction set computer. In P. Athanas & K. L. Pocek (Eds.), Proceedings of IEEE Workshop on FPGAs for Custom Computing Machines (pp. 99–107). Napa, CA, April.

  10. Milne, G., Cockshott, P., McCaskill, G., & Barrie, P. (1993). Realising massively concurrent systems on the SPACE machine. In Proceedings of the IEEE Workshop on FPGAs for Custom Computing Machines, April.

  11. Bellows P., & Hutchings, B. L. (1998). JHDL - an HDL for reconfigurable systems. In J. M. Arnold & K. L. Pocek (Eds.), Proceedings of IEEE Workshop on FPGAs for Custom Computing Machines (pp. 175–184). Napa, CA, April.

  12. Hutchings, B., Bellows, P., Hawkins, J., Hemmert, S., Nelson, B., & Rytting, M. (1999). A cad suite for high-performance fpga design. In K. L. Pocek & J. M. Arnold (Eds.), Proceedings of the IEEE Workshop on FPGAs for Custom Computing Machines (p. n/a). Napa, CA: IEEE Computer Society IEEE, April.

    Google Scholar 

  13. Hutchings B., & Nelson, B. (2000). Using general-purpose programming languages for FPGA design. In Proceedings of the 37th Design Automation Conference, (pp. 561-566) June.

  14. Hutchings B., & Nelson, B. (2001). Unifying simulation and execution in a design environment for FPGA systems. IEEE Transactions on Very Large Scale Integration (VLSI) Systems, 9(1), 201–205, February.

    Article  Google Scholar 

  15. Scott Hemmert, K., Tripp, J. L., Hutchings, B. L., & Jackson, P. A. (2003). Source level debugger for the sea cucumber synthesizing compiler. In K. L. Pocek & J. M. Arnold (Eds.), Proceedings of the IEEE Symposium on Field-Programmable Custom Computing Machines (FCCM 03), IEEE Computer Society, (pp. 228–237). IEEE Computer Society Press, April.

  16. Tripp, J. L., Jackson, P. A., & Hutchings, B. L. (2002). Sea cucumber: A synthesizing compiler for FPGAs. In Proceedings of the 12th International Workshop on Field Programmable Logic and Applications. Lecture Notes in Computer Science, vol. 2438 (p. 875). Springer-Verlag, September.

  17. Graham, P. S. (2001). Logical hardware debuggers for FPGA-based systems. Ph.D. thesis, Brigham Young University.

  18. Graham, P., Nelson, B., & Hutchings, B. (2001). Instrumenting bitstreams for Debugging FPGA circuits. In Proceedings of the IEEE Symposium on Field-Programmable Custom Computing Machines (FCCM 2001), April.

  19. Wheeler, T., Graham, P., Nelson, B., & Hutchings, B. (2001). Using design-level scan to improve FPGA design observability and controllability for functional verification. In Proceedings of the 11th International Workshop on Field Programmable Logic and Applications. Lecture Notes in Computer Science, vol. 2147 (pp. 483–492). Springer-Verlag, August/September.

  20. Landaker, W. J., Wirthlin, M. J., & Hutchings, B. L. (2002). Multitasking hardware on the SLAAC1-V reconfigurable computing system. In Proceedings of the 12th International Workshop on Field Programmable Logic and Applications. Lecture Notes in Computer Science, vol. 2438 (p. 806). Springer-Verlag, September.

  21. Slade, A. L. (2003). Designing, debugging, and deploying configurable computing machine-based applications using reconfigurable computing application frameworks. MS Thesis, Brigham Young University.

  22. Hutchings, B. L., Franklin, R., & Carver, D. (2002). Assisting network intrusion detection with reconfigurable hardware. In Proceedings of 10th Annual IEEE Symposium on Field-Programmable Custom Computing Machines (p. 111), April.

  23. Poetter, A., Hunter, J., Patterson, C., Athanas, P., Nelson, B., & Steiner, N. (2004). JHDLBits: The merging of two worlds. In Proceedings of the 14th International Conference on Field Programmable Logic and Applications (FPL’2004), August.

  24. Graham, P., Hutchings, B., & Nelson, B. (2000). Improving the FPGA design process through determining and applying logical-to-physical design mappings. In Proceedings of the IEEE Symposium on Field-Programmable Custom Computing Machines (FCCM’2000), April.

  25. Roesch, M. (1999). Snort — Lightweight intrusion detection for networks. In 13th Systems Administration Conference (LISA ’99), November.

  26. Singh, S., & James-Roxby, P. (2001). Lava and jbits: From hdl to bitstream in seconds. In FCCM ’01: Proceedings of the 9th Annual IEEE Symposium on Field-Programmable Custom Computing Machines (pp. 91–100). Washington, DC, USA: IEEE Computer Society.

    Google Scholar 

  27. Slade, A., & Nelson, B. (2003). Reconfigurable computing application frameworks. In K. L. Pocek & J. M. Arnold (Eds.), Proceedings of the IEEE Symposium on FPGAs for Custom Computing Machines (FCCM ’03), IEEE Computer Society. IEEE Computer Society Press, April.

Download references

Acknowledgements

The authors wish to thank all the students who worked on the JHDL project, many of whose work is cited herein.

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Brent E. Nelson.

Rights and permissions

Reprints and permissions

About this article

Cite this article

Nelson, B.E., Hutchings, B.L. & Wirthlin, M.J. Design, Debug, Deploy: The Creation of Configurable Computing Applications. J Sign Process Syst Sign Image Video Technol 53, 187–196 (2008). https://doi.org/10.1007/s11265-008-0167-9

Download citation

  • Received:

  • Revised:

  • Accepted:

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s11265-008-0167-9

Keywords

Navigation