arXiv · 2504.07585
High-Level Synthesis of Digital Circuits from Template Haskell and SDF-AP
Abstract
Functional languages as input specifications for High-Level Synthesis (HLS) tools allow to specify data dependencies but do not contain a notion of time nor execution order. In this paper, we propose a method to add this notion to the functional description using the dataflow model SDF-AP. SDF-AP consists of patterns that express consumption and production that we can use to enforce resource usage. We created an HLS-tool that can synthesize parallel hardware, both data and control path, based on the repetition, expressed in Higher-Order Functions, combined with specified SDF-AP patterns. Our HLS-tool, based on Template Haskell, generates an Abstract Syntax Tree based on the given patterns and the functional description uses the Clash-compiler to generate VHDL/Verilog. Case studies show consistent resource consumption and temporal behavior for our HLS. A comparison with a commercially available HLS-tool shows that our HLS tool outperforms in terms of latency and sometimes in resource consumption. The method and tool presented in this paper offer more transparency to the developer and allow to specify more accurately the synthesized hardware compared to what is possible with pragmas of the Vitis HLS-tool.
Explore related subjects
Keep this discovery
Hendrik Folmer, Robert de Groote, Marco Bekooij. 2025-04-10. High-Level Synthesis of Digital Circuits from Template Haskell and SDF-AP. https://doi.org/10.1007/978-3-031-15074-6_1
Cite the original work for its findings. Save a collection to share your selection of sources.