FPGA Technology Mapping Using Sketch-Guided Program Synthesis

Fuente: arXiv
Guardado en:
Detalles Bibliográficos
Autores principales: Smith, Gus Henry, Kushigian, Ben, Canumalla, Vishal, Cheung, Andrew, Lyubomirsky, Steven, Porncharoenwase, Sorawee, Just, René, Bernstein, Gilbert Louis, Tatlock, Zachary
Formato: Preprint
Publicado: 2024
Materias:
Acceso en línea:
Etiquetas: Agregar Etiqueta
Sin Etiquetas, Sea el primero en etiquetar este registro!
_version_ 1866929228251922432
author Smith, Gus Henry
Kushigian, Ben
Canumalla, Vishal
Cheung, Andrew
Lyubomirsky, Steven
Porncharoenwase, Sorawee
Just, René
Bernstein, Gilbert Louis
Tatlock, Zachary
author_facet Smith, Gus Henry
Kushigian, Ben
Canumalla, Vishal
Cheung, Andrew
Lyubomirsky, Steven
Porncharoenwase, Sorawee
Just, René
Bernstein, Gilbert Louis
Tatlock, Zachary
contents FPGA technology mapping is the process of implementing a hardware design expressed in high-level HDL (hardware design language) code using the low-level, architecture-specific primitives of the target FPGA. As FPGAs become increasingly heterogeneous, achieving high performance requires hardware synthesis tools that better support mapping to complex, highly configurable primitives like digital signal processors (DSPs). Current tools support DSP mapping via handwritten special-case mapping rules, which are laborious to write, error-prone, and often overlook mapping opportunities. We introduce Lakeroad, a principled approach to technology mapping via sketch-guided program synthesis. Lakeroad leverages two techniques -- architecture-independent sketch templates and semantics extraction from HDL -- to provide extensible technology mapping with stronger correctness guarantees and higher coverage of mapping opportunities than state-of-the-art tools. Across representative microbenchmarks, Lakeroad produces 2--3.5$\times$ the number of optimal mappings compared to proprietary state-of-the-art tools and 6--44$\times$ the number of optimal mappings compared to popular open-source tools, while also providing correctness guarantees not given by any other tool.
format Preprint
id arxiv_https___arxiv_org_abs_2401_16526
institution arXiv
publishDate 2024
record_format arxiv
spellingShingle FPGA Technology Mapping Using Sketch-Guided Program Synthesis
Smith, Gus Henry
Kushigian, Ben
Canumalla, Vishal
Cheung, Andrew
Lyubomirsky, Steven
Porncharoenwase, Sorawee
Just, René
Bernstein, Gilbert Louis
Tatlock, Zachary
Hardware Architecture
Programming Languages
FPGA technology mapping is the process of implementing a hardware design expressed in high-level HDL (hardware design language) code using the low-level, architecture-specific primitives of the target FPGA. As FPGAs become increasingly heterogeneous, achieving high performance requires hardware synthesis tools that better support mapping to complex, highly configurable primitives like digital signal processors (DSPs). Current tools support DSP mapping via handwritten special-case mapping rules, which are laborious to write, error-prone, and often overlook mapping opportunities. We introduce Lakeroad, a principled approach to technology mapping via sketch-guided program synthesis. Lakeroad leverages two techniques -- architecture-independent sketch templates and semantics extraction from HDL -- to provide extensible technology mapping with stronger correctness guarantees and higher coverage of mapping opportunities than state-of-the-art tools. Across representative microbenchmarks, Lakeroad produces 2--3.5$\times$ the number of optimal mappings compared to proprietary state-of-the-art tools and 6--44$\times$ the number of optimal mappings compared to popular open-source tools, while also providing correctness guarantees not given by any other tool.
title FPGA Technology Mapping Using Sketch-Guided Program Synthesis
topic Hardware Architecture
Programming Languages
url https://arxiv.org/abs/2401.16526