Go2async: A high-level synthesis tool for asynchronous circuits

From F-Si wiki
Revision as of 18:29, 5 July 2022 by Wiede (talk | contribs) (Created page with "* Speaker: Sebastian Wiedemannn * email: sebastian.wiede5335'at'gmail.com ==Downloads== Will be made available after talk. ==Abstract== High-level synthesis tools generally...")
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search
  • Speaker: Sebastian Wiedemannn
  • email: sebastian.wiede5335'at'gmail.com

Downloads

Will be made available after talk.

Abstract

High-level synthesis tools generally follow the goal to ease the design flow around hardware creation. Click-elements can be used to create asynchronous pipelines. Contrary to other methods click-elements use standard-cell library components only (most importantly they use no C-elements). This property makes them a good candidate for FPGAs. The generated circuits use static data-flow components. They operate on the two-phase bundled data protocol. This presentation focuses on creating asynchronous circuits based on click-elements derived from go functions.

Go2async is such a program written in go that parses go code. The tool supports a subset of go and uses the built-in go parser and AST. The tool creates synthesizable VHDL code which represents circuits using click-elements pipeline. The hardware creation is based on syntax directed translation. The resulting hardware semantically mimics the behaviour of the input go functions. Examples will also be provided

Software

General information

Roadmap

  • More go support
  • Ability to integrate external interfaces
  • Dataflow analysis

References