LegUp: An Open-Source High-Level Synthesis Tool for FPGA-Based Processor/Accelerator Systems

被引:189
|
作者
Canis, Andrew [1 ]
Choi, Jongsok [1 ]
Aldham, Mark [1 ]
Zhang, Victor [1 ]
Kammoona, Ahmed [1 ]
Czajkowski, Tomasz [2 ]
Brown, Stephen D. [1 ]
Anderson, Jason H. [1 ]
机构
[1] Univ Toronto, Dept Elect & Comp Engn, Toronto, ON M5S 3G4, Canada
[2] Altera Toronto Technol Ctr, Toronto, ON M5S 1S4, Canada
基金
加拿大自然科学与工程研究理事会;
关键词
Design; Algorithms; High-level synthesis; field-programmable gate arrays; FPGAs; synthesis; performance; power; hardware/software codesign;
D O I
10.1145/2514740
中图分类号
TP3 [计算技术、计算机技术];
学科分类号
0812 ;
摘要
It is generally accepted that a custom hardware implementation of a set of computations will provide superior speed and energy efficiency relative to a software implementation. However, the cost and difficulty of hardware design is often prohibitive, and consequently, a software approach is used for most applications. In this article, we introduce a new high-level synthesis tool called LegUp that allows software techniques to be used for hardware design. LegUp accepts a standard C program as input and automatically compiles the program to a hybrid architecture containing an FPGA-based MIPS soft processor and custom hardware accelerators that communicate through a standard bus interface. In the hybrid processor/accelerator architecture, program segments that are unsuitable for hardware implementation can execute in software on the processor. LegUp can synthesize most of the C language to hardware, including fixed-sized multidimensional arrays, structs, global variables, and pointer arithmetic. Results show that the tool produces hardware solutions of comparable quality to a commercial high-level synthesis tool. We also give results demonstrating the ability of the tool to explore the hardware/software codesign space by varying the amount of a program that runs in software versus hardware. LegUp, along with a set of benchmark C programs, is open source and freely downloadable, providing a powerful platform that can be leveraged for new research on a wide range of high-level synthesis topics.
引用
收藏
页数:27
相关论文
共 50 条
  • [1] LegUp: High-Level Synthesis for FPGA-Based Processor/Accelerator Systems
    Canis, Andrew
    Choi, Jongsok
    Aldham, Mark
    Zhang, Victor
    Kammoona, Ahmed
    Anderson, Jason
    Brown, Stephen
    Czajkowski, Tomasz
    [J]. FPGA 11: PROCEEDINGS OF THE 2011 ACM/SIGDA INTERNATIONAL SYMPOSIUM ON FIELD PROGRAMMABLE GATE ARRAYS, 2011, : 33 - 36
  • [2] Automating the Design of Processor/Accelerator Embedded Systems with LegUp High-Level Synthesis
    Fort, Blair
    Canis, Andrew
    Choi, Jongsok
    Calagar, Nazanin
    Lian, Ruolong
    Hadjis, Stefan
    Chen, Yu Ting
    Hall, Mathew
    Syrowik, Bain
    Czajkowski, Tomasz
    Brown, Stephen
    Anderson, Jason
    [J]. 2014 12TH IEEE INTERNATIONAL CONFERENCE ON EMBEDDED AND UBIQUITOUS COMPUTING (EUC 2014), 2014, : 120 - 129
  • [3] Open-Source SpMV Multiplication Hardware Accelerator for FPGA-Based HPC Systems
    Mpakos, Panagiotis
    Tasou, Ioanna
    Alverti, Chloe
    Miliadis, Panagiotis
    Malakonakis, Pavlos
    Theodoropoulos, Dimitris
    Goumas, Georgios
    Pnevmatikatos, Dionisios N.
    Koziris, Nectarios
    [J]. APPLIED RECONFIGURABLE COMPUTING. ARCHITECTURES, TOOLS, AND APPLICATIONS, ARC 2024, 2024, 14553 : 19 - 32
  • [4] High-Level Synthesis for the Design of FPGA-based Signal Processing Systems
    Casseau, Emmanuel
    Le Gal, Bertrand
    [J]. 2009 INTERNATIONAL CONFERENCE ON EMBEDDED COMPUTER SYSTEMS: ARCHITECTURES, MODELING AND SIMULATION, PROCEEDINGS, 2009, : 25 - +
  • [5] Leveraging Open Source Platforms and High-Level Synthesis for the Design of FPGA-Based 10 GbE Active Network Probes
    Ruiz, M.
    Sutter, G.
    Lopez-Buedo, S.
    Ramos, J.
    Lopez de Vergara, J. E.
    Aracil, J.
    [J]. 2015 INTERNATIONAL CONFERENCE ON RECONFIGURABLE COMPUTING AND FPGAS (RECONFIG), 2015,
  • [6] POWER/AREA ANALYSIS OF A FPGA-BASED OPEN-SOURCE PROCESSOR USING PARTIAL DYNAMIC RECONFIGURATION
    Zaidi, Izhar
    Nabina, Atukem
    Canagarajah, C. N.
    Nunez-Yanez, Jose
    [J]. 11TH EUROMICRO CONFERENCE ON DIGITAL SYSTEM DESIGN - ARCHITECTURES, METHODS AND TOOLS : DSD 2008, PROCEEDINGS, 2008, : 592 - 598
  • [7] Bit-Level Optimization for High-Level Synthesis and FPGA-Based Acceleration
    Zhang, Jiyu
    Zhang, Zhiru
    Zhou, Sheng
    Tan, Mingxing
    Liu, Xianhua
    Cheng, Xu
    Gong, Jason
    [J]. FPGA 10, 2010, : 59 - 68
  • [8] A High-Level Tool for Enhancing the Performance and Scalability of Open-Source Relational Databases
    Sukhija, Nitin
    Miller, Zachariah
    Arora, Ritu
    [J]. 9TH INTERNATIONAL CONFERENCE ON MANAGEMENT OF EMERGENT DIGITAL ECOSYSTEMS (MEDES 2017), 2017, : 73 - 80
  • [9] Optimization of FPGA-based LDPC decoder using high-level synthesis
    Choi, Geon
    Park, Kyeong-Bin
    Chung, Ki-Seok
    [J]. PROCEEDINGS OF THE 4TH INTERNATIONAL CONFERENCE ON COMMUNICATION AND INFORMATION PROCESSING (ICCIP 2018), 2018, : 256 - 259
  • [10] From Pthreads to Multicore Hardware Systems in LegUp High-Level Synthesis for FPGAs
    Choi, Jongsok
    Brown, Stephen D.
    Anderson, Jason H.
    [J]. IEEE TRANSACTIONS ON VERY LARGE SCALE INTEGRATION (VLSI) SYSTEMS, 2017, 25 (10) : 2867 - 2880