Difference between revisions of "Go2async: A high-level synthesis tool for asynchronous circuits"
(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...") |
m |
||
Line 16: | Line 16: | ||
go parser and AST. The tool creates synthesizable VHDL code which represents circuits using click-elements pipeline. | 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 | The hardware creation is based on syntax directed translation. The resulting hardware semantically mimics the | ||
behaviour of the input go functions. | behaviour of the input go functions. | ||
==Software== | ==Software== |
Revision as of 19:57, 5 July 2022
- 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.
Software
General information
- Repository: https://github.com/Wiede5335/go2async
- Main documentation website: https://github.com/Wiede5335/go2async
Roadmap
- More go support
- Ability to integrate external interfaces
- Dataflow analysis