EURECA compilation: Automatic optimisation of cycle-reconfigurable circuits
File(s)eurecaCompiler_xn20.pdf (172.19 KB)
Accepted version
Author(s)
Type
Conference Paper
Abstract
EURECA architectures have been proposed as an
enhancement to the existing FPGAs, to enable cycle-by-cycle
reconfiguration. Applications with irregular data accesses, which
previously cannot be efficiently supported in hardware, can
be efficiently mapped into EURECA architectures. One major
challenge to apply the EURECA architectures to practical
applications is the intensive design efforts required to analyse
and optimise cycle-reconfigurable operations, in order to obtain
accurate and high-performance results while underlying circuits
reconfigure cycle by cycle. In this work, we propose compiler
support for EURECA-based designs. The compiler support
adopts techniques based on session types to automatically derive a
runtime reconfiguration scheduler that guarantees design correct-
ness; and a streaming circuit model to ensure high-performance
circuits. Three benchmark applications —large-scale sorting,
Memcached, and SpMV— developed with the proposed compiler
support show up to 11.2 times (21.8 times when architecture
scales) reduction in area-delay product when compared with
conventional architectures, and achieve up to
39%
improvements
compared with manually optimised EURECA designs.
enhancement to the existing FPGAs, to enable cycle-by-cycle
reconfiguration. Applications with irregular data accesses, which
previously cannot be efficiently supported in hardware, can
be efficiently mapped into EURECA architectures. One major
challenge to apply the EURECA architectures to practical
applications is the intensive design efforts required to analyse
and optimise cycle-reconfigurable operations, in order to obtain
accurate and high-performance results while underlying circuits
reconfigure cycle by cycle. In this work, we propose compiler
support for EURECA-based designs. The compiler support
adopts techniques based on session types to automatically derive a
runtime reconfiguration scheduler that guarantees design correct-
ness; and a streaming circuit model to ensure high-performance
circuits. Three benchmark applications —large-scale sorting,
Memcached, and SpMV— developed with the proposed compiler
support show up to 11.2 times (21.8 times when architecture
scales) reduction in area-delay product when compared with
conventional architectures, and achieve up to
39%
improvements
compared with manually optimised EURECA designs.
Date Issued
2016-09-29
Date Acceptance
2016-06-15
Citation
2016
Publisher
IEEE
Copyright Statement
© 2016 IEEE. Personal use of this material is permitted. Permission from IEEE must be obtained for all other uses, in any current or future media, including reprinting/republishing this material for advertising or promotional purposes, creating new collective works, for resale or redistribution to servers or lists, or reuse of any copyrighted component of this work in other works.
Sponsor
Engineering & Physical Science Research Council (E
Commission of the European Communities
Engineering & Physical Science Research Council (E
Engineering & Physical Science Research Council (EPSRC)
Identifier
https://ieeexplore.ieee.org/document/7577359
Grant Number
20104124
671653
EP/K503733/1
EP/I012036/1
Source
26th International Conference on Field-Programmable Logic and Applications
Subjects
Science & Technology
Technology
Computer Science, Software Engineering
Engineering, Electrical & Electronic
Computer Science
Engineering
Publication Status
Published
Start Date
2016-08-29
Finish Date
2016-09-02
Coverage Spatial
Lausanne, Switzerland
Date Publish Online
2016-09-29