Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
skip to main content
10.1145/581630.581659acmconferencesArticle/Chapter ViewAbstractPublication PagesesweekConference Proceedingsconference-collections
Article

PACT HDL: a C compiler targeting ASICs and FPGAs with power and performance optimizations

Published: 08 October 2002 Publication History
  • Get Citation Alerts
  • Abstract

    Chip fabrication technology continues to plunge deeper into sub-micron levels requiring hardware designers to utilize ever-increasing amounts of logic and shorten design time. Toward that end, high-level languages such as C/C++ are becoming popular for hardware description and synthesis in order to more quickly leverage complex algorithms. Similarly, as logic density increases due to technology, power dissipation becomes a progressively more important metric of hardware design. PACT HDL, a C to HDL compiler, merges automated hardware synthesis of high-level algorithms with power and performance optimizations and targets arbitrary hardware architectures, particularly in a System on a Chip (SoC) setting that incorporates reprogrammable and application-specific hardware. PACT HDL is intended for applications well suited to custom hardware implementation such as image and signal processing codes. By making the compiler modular and flexible, optimizations may be executed in any order and at different levels in the compilation process. PACT HDL generates industry standard HDL codes, such as RTL Verilog and VHDL, which may be synthesized and profiled for power using commercial tools. This is the first paper on the PACT compiler project in a series. The compiler framework and introductory optimizations are presented. Later papers will focus on these and other optimizations in detail.

    References

    [1]
    Adelante Technologies, A|RT Builder, www.adelantetechnologies.com
    [2]
    Allan, V. H. Jones, R. B. Lee, R. M. Allan, S. J. Software Pipelining. ACM Computing Surveys, Vol. 27, No. 3, Sep 1995.
    [3]
    Annapolis Micro Systems. WILDSTAR. Xilinx Virtex Based Multi-FPGA Board. www.annapmicro.com.
    [4]
    Arnout, G. C for System Level Design. Design, Automation, and Test in Europe Conference and Exhibitions 1999.
    [5]
    Ashenden, P. The Designeres Guide to VHDL. Morgan Kaufmann. 1995.
    [6]
    Bagchi, D. Jones, A. Pal, S. Choudhary, A. Banerjee, P., Pipelining Memory Accesses on FPGAs for Image Processing Algorithms Technical Report: Center for Parallel and Distributed Computing, Northwestern University, CPDC-TR-2001-12-002, December, 2001.
    [7]
    Banerjee, P. Shenoy, N. Choudhary, A. Hauck, S. MATCH: A Matlab Compilation Environment for Configurable Computing Systems. Submitted to IEEE Computer 1999.
    [8]
    Celoxica Inc., Handle C compiler, www.celoxica.com.
    [9]
    Chandrakasan, A. P. Potkonjak, M. Mehra, R. Rabaey, J. Brodersen R. W. Optimizing Power Using Transformations. IEEE Transactions on Computer Aided Design of Integrated Circuits and Systems 1995.
    [10]
    Chandrakasan, A. P. Sheng, S. Brodersen, R. W. Low Power CMOS Digital Design. IEEE Journal of Solid-State Circuits 1992.
    [11]
    Co-Design Automation, Inc. Superlog Website. www.superlog.org.
    [12]
    CynApps Suite. Cynthesis Applications for Higher Level Design. www.cynapps.com.
    [13]
    Davis, D. Edwards S. Harris J. Forge: High Performance Hardware from Java. Xilinx Whitepaper, www.xilinx.com.
    [14]
    De Micheli, G. Ku D. Mailhot, F. Truong T. The Olympus Synthesis System for Digital Design. IEEE Design & Test of Computers 1990.
    [15]
    Esterel-C Language (ECL). Cadence website. www.cadence.com.
    [16]
    Fraser, C. W. Hanson, D. R. A Retargetable Compiler for ANSI C. SIGPLAN Notices 1991.
    [17]
    Free Software Foundation GNU C Compiler. www.gnu.org/software/gcc.
    [18]
    Galloway, G. The Transmogrifier C Hardware Description Language and Compiler for FPGAs. IEEE Symposium on FPGAs for Custom Computing Machines (FCCM) 1995.
    [19]
    Jones, A., Bagchi, D., Pal, S., Banerjee, P., Choudhary, A. PACT HDL appears in Power Aware Computing. Graybill, R., Melhelm, R. Kluwer, Boston.
    [20]
    Jones, A. Banerjee, P. An Automated and Power-Aware Framework for Utilization of IP Cores in Hardware Generated from C Descriptions, Technical Report: Center for Parallel and Distributed Computing, Northwestern University, CPDC-TR-2002-04-002, April 2002.
    [21]
    Lakshminarayana, G. Jha, N. K. Technical Report No. CE-J97-003: Synthesis of Power-Optimized Circuits from Hierarchal Behavioral Descriptions. IEEE Design Automation Conference (DAC) 1998.
    [22]
    Lakshminarayana, G. Raghunathan, A. Khouri, K. S. Jha, N. K. Dey, S. Common-Case Computation: A High-Level Technique for Power and Performance Optimization. Proceedings of the Design Automation Conference (DAC) 1999.
    [23]
    Lam, M. Software Pipelining: An Effective Scheduling Technique for VLIW Machines. Proceedings of the SIGPLAN e88 Conference on Programming Language Design and Implementation, June 1988.
    [24]
    Leda Systems. .25 um Process Standard Cell Libraries. www.ledasystems.com.
    [25]
    Maruyama, T. Hoshino, T. A C to HDL compiler for pipeline processing on FPGAs, IEEE Symposium on Field-Programmable Custom Computing Machines (FCCM), 2002.
    [26]
    Model Technology. ModelSim. HDL Simulator. www.model.com.
    [27]
    Musoll, E. Cortadella, J. High-level Techniques for Reducing the Activity of Functional Units. Proceedings of the International Symposium on Low Power Design 1995.
    [28]
    Muchnick, S. S. Compiler Design and Implementation. Morgan Kaufmann. 1997.
    [29]
    Overview of the Open SystemC Initiative. SystemC website. www.systemc.org.
    [30]
    Pitas, I. Digital Image Processing Algorithms and Applications. John Wiley & Sons. 2000.
    [31]
    Rabacy, I. Digital Integrated Circuits: A Design Perspective. Prentice Hall Electronics and VLSI Design Series, 1996.
    [32]
    Séméria, L. De Micheli, G. SpC: Synthesis of Pointers in C: Application of Pointer Analysis to the Behavioral Synthesis from C. IEEE/ACM International Conference on Computer-Aided Design (ICCAD) 1998.
    [33]
    Synopsys. Design Compiler. Synthesis and Power Estimation Toolset. www.synposys.com
    [34]
    Synplicity. Synplify. Synthesis Toolset. www.synplicity.com.
    [35]
    System Compiler: Compiling ANSI C/C++ to Synthesis-ready HDL. Whitepaper. C Level Design Incorporated. www.cleveldesign.com.
    [36]
    Thomas, D. E. Moorby, P. R. The Verilog¿ Hardware Description Language: Fourth Edition. Kluwer Academic. 1998.
    [37]
    Wilson, R. P. French, R. S. Wilson, C. S. Amarasinghe, S. P. Anderson, J. M. Tjiang, S. W. K. Liao, S. W. Tseng, C. W. Hall, M. W. Lam, M. S. Hennessy, J. L. SUIF: An Infrastructure for Research on Parallelizing and Optimizing Compilers. SIGPLAN Notices 1994.
    [38]
    Xilinx. Foundation Tools. Place and route tools for Xilinx FPGAs. www.xilinx.com.
    [39]
    Zeidman, B. Verilog Designeres Library. Prentice Hall. 1999.

    Cited By

    View all
    • (2013)An Improved FPGAs-Based Loop Pipeline Scheduling Algorithm for Reconfigurable CompilerRevised Selected Papers of the 10th International Symposium on Advanced Parallel Processing Technologies - Volume 829910.1007/978-3-642-45293-2_23(307-318)Online publication date: 27-Aug-2013
    • (2009)A design automation and power estimation flow for RFID systemsACM Transactions on Design Automation of Electronic Systems10.1145/1455229.145523614:1(1-31)Online publication date: 23-Jan-2009
    • (2007)A model-based extensible framework for efficient application design using FPGAACM Transactions on Design Automation of Electronic Systems10.1145/1230800.123080512:2(13-es)Online publication date: 1-Apr-2007
    • Show More Cited By

    Recommendations

    Comments

    Information & Contributors

    Information

    Published In

    cover image ACM Conferences
    CASES '02: Proceedings of the 2002 international conference on Compilers, architecture, and synthesis for embedded systems
    October 2002
    324 pages
    ISBN:1581135750
    DOI:10.1145/581630
    Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

    Sponsors

    Publisher

    Association for Computing Machinery

    New York, NY, United States

    Publication History

    Published: 08 October 2002

    Permissions

    Request permissions for this article.

    Check for updates

    Author Tags

    1. ASIC
    2. FPGA
    3. FSM
    4. HDL
    5. IP
    6. SoC
    7. VHDL
    8. Verilog
    9. compiler
    10. high-performance
    11. levelization
    12. low-power
    13. pipelining
    14. synthesis

    Qualifiers

    • Article

    Acceptance Rates

    Overall Acceptance Rate 52 of 230 submissions, 23%

    Upcoming Conference

    ESWEEK '24
    Twentieth Embedded Systems Week
    September 29 - October 4, 2024
    Raleigh , NC , USA

    Contributors

    Other Metrics

    Bibliometrics & Citations

    Bibliometrics

    Article Metrics

    • Downloads (Last 12 months)2
    • Downloads (Last 6 weeks)1
    Reflects downloads up to 27 Jul 2024

    Other Metrics

    Citations

    Cited By

    View all
    • (2013)An Improved FPGAs-Based Loop Pipeline Scheduling Algorithm for Reconfigurable CompilerRevised Selected Papers of the 10th International Symposium on Advanced Parallel Processing Technologies - Volume 829910.1007/978-3-642-45293-2_23(307-318)Online publication date: 27-Aug-2013
    • (2009)A design automation and power estimation flow for RFID systemsACM Transactions on Design Automation of Electronic Systems10.1145/1455229.145523614:1(1-31)Online publication date: 23-Jan-2009
    • (2007)A model-based extensible framework for efficient application design using FPGAACM Transactions on Design Automation of Electronic Systems10.1145/1230800.123080512:2(13-es)Online publication date: 1-Apr-2007
    • (2007)An overview of a compiler for mapping software binaries to hardwareIEEE Transactions on Very Large Scale Integration (VLSI) Systems10.1109/TVLSI.2007.90409515:11(1177-1190)Online publication date: 1-Nov-2007
    • (2006)Exploring power reduction options for a single-chip multiprocessor through system-level modelingJournal of Embedded Computing10.5555/1370998.13710012:2(235-247)Online publication date: 1-Apr-2006
    • (2006)Reducing power while increasing performance with superciscACM Transactions on Embedded Computing Systems10.1145/1165780.11657855:3(658-686)Online publication date: Aug-2006
    • (2005)Leakage power optimization with dual-Vth library in high-level synthesisProceedings of the 42nd annual Design Automation Conference10.1145/1065579.1065634(202-207)Online publication date: 13-Jun-2005
    • (2005)Behavioral Synthesis of Data-Dominated Circuits for Minimal Energy ImplementationProceedings of the 18th International Conference on VLSI Design held jointly with 4th International Conference on Embedded Systems Design10.1109/ICVD.2005.62(267-273)Online publication date: 3-Jan-2005
    • (2005)Leakage power optimization with dual-V/sub th/ library in high-level synthesisProceedings. 42nd Design Automation Conference, 2005.10.1109/DAC.2005.193801(202-207)Online publication date: 2005
    • (2004)Automatic translation of software binaries onto FPGAsProceedings of the 41st annual Design Automation Conference10.1145/996566.996678(389-394)Online publication date: 7-Jun-2004
    • Show More Cited By

    View Options

    Get Access

    Login options

    View options

    PDF

    View or Download as a PDF file.

    PDF

    eReader

    View online with eReader.

    eReader

    Media

    Figures

    Other

    Tables

    Share

    Share

    Share this Publication link

    Share on social media