Skip to main content

A Prolog-Based Hardware Development Environment

  • Conference paper
  • First Online:

Part of the book series: Lecture Notes in Computer Science ((LNCS,volume 2438))

Abstract

This paper presents a Hardware Development Environment based on the logic programming language Prolog. Central to this environment are a hardware description notation called HIDE, and a high level generator, which takes an application specific, high level algorithm description, and translates it into a HIDE description. The latter describes scaleable and parameterised architectures using a small set of Prolog constructors. EDIF netlists can be automatically generated from HIDE descriptions. The high-level algorithm descriptions are based on a library of reusable Hardware Skeletons. A hardware skeleton is a parameterised description of a task-specific architecture, to which the user can supply parameters such as values, functions or even other skeletons. A skeleton contains built-in rules, written in Prolog that will apply optimisations specific to the target hardware at the implementation phase. This is the key towards the satisfaction of the dual requirement of high-level abstract hardware design and hardware efficiency.

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

Buying options

Chapter
USD   29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD   39.99
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD   54.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Learn about institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. Synopsys Inc., ‘Behavioural Compiler’, Software documentation, 1998. http://www.synopsys.com/products/beh_syn/

  2. Celoxica Limited, ‘Handel C information sheets’, 1999 http://www.celoxica.com/

  3. Hutchings, B., Bellows, P., Hawkins, J., Hemmert, S., Nelson, B. and Rytting, M., ‘A CAD suite for High-Performance FPGA design’, FCCM’99, Preliminary Proceedings.

    Google Scholar 

  4. Benkrid, K., ‘Design and Implementation of a High Level FPGA Based Coprocessor for Image and Video Processing’, PhD Thesis, Department of Computer Science, The Queen’s University of Belfast, 2000. http://www.cs.qub.ac.uk/~K.Benkrid/MyThesis.html

  5. Bjesse, P., Claessen, K., Sheeran, M. and Singh, S., ‘Lava: Hardware Design in Haskell’, International Conference on Lisp and Functional Programming 98. Springer-Verlag 1998.

    Google Scholar 

  6. The Xilinx Lava HDL Homepage, http://www.xilinx.com/labs/lava/index.htm

  7. Clocksin, W. F., and Melish, C. S., ‘Programming in Prolog’, Springer-Verlag, 1994.

    Google Scholar 

  8. Benkrid, K., Crookes, D., Smith J. and Benkrid, A., "High Level Programming for FPGA Based Image and Video Processing using Hardware Skeletons", FCCM’2001, April 2001, Preliminary Proceedings.

    Google Scholar 

  9. Crookes, D., Alotaibi, K., Bouridane, A., Donachy, P., and Benkrid, A., ‘An Environment for Generating FPGA Architectures for Image Algebra-based Algorithms’, ICIP98, Vol.3, pp. 990–994, 1998.

    Google Scholar 

  10. Crookes, D., Benkrid, K., Bouridane, A., Alotaibi, K. and Benkrid, A., "Design and Implementation of a High Level Programming Environment for FPGA Based Image Processing", IEE proceedings: Vision, Image and Signal Processing, Vol. 147, No. 7, pp. 377–384.

    Google Scholar 

  11. Benkrid, K., Crookes, D., Smith, J. and Benkrid, A., "High Level Programming for Real Time FPGA Based Video Programming", Proceedings of ICASSP’2000, Istanbul, June 2000. Volume VI, pp. 3227–3231.

    Google Scholar 

  12. Ritter, G., X., Wilson, J., N. and Davidson, J., L., lsImage Algebra: an overview’, Computer Vision, Graphics and Image Processing, No 49, pp 297–331, 1990.

    Article  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2002 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Benkrid, K., Crookes, D., Benkrid, A., Belkacemi, S. (2002). A Prolog-Based Hardware Development Environment. In: Glesner, M., Zipf, P., Renovell, M. (eds) Field-Programmable Logic and Applications: Reconfigurable Computing Is Going Mainstream. FPL 2002. Lecture Notes in Computer Science, vol 2438. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-46117-5_39

Download citation

  • DOI: https://doi.org/10.1007/3-540-46117-5_39

  • Published:

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-44108-3

  • Online ISBN: 978-3-540-46117-3

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics