skip to main content
10.1145/3289602.3293965acmconferencesArticle/Chapter ViewAbstractPublication PagesfpgaConference Proceedingsconference-collections
poster

Building FPGA State Machines from Sequential Code

Published:20 February 2019Publication History

ABSTRACT

State machines are commonly used and well understood for hardware. However, in some cases they can introduce complexity as the program can no longer be read sequentially. We propose an extension to the SME model, which retains the sequential program structure, by using a barrier-like 'await' construct to divide a program into states. This is done by awaiting a predicate, ensuring that the sequential program does not progress until the predicate is satisfied. This initial implementation enables the clock signal as a predicate, allowing for easy partitioning of the sequential program, which is a common approach when either pipelining or sequencing a problem. Future implementations will also enable functions or signal values as predicates. The signal values will be a simple to use barrier when waiting for external input. As for the functions, it handles all the communication regarding input/output for and synchronization with the function. As always with the SME model, the problems implemented in the model can be transpiled into VHDL along with a VHDL test bench, which verifies that the generated VHDL matches the SME simulation. Our preliminary results shows that Xilinx Vivado recognises the state machines and that the SME simulation is clock cycle accurate to the simulation of the generated VHDL. Furthermore, we see reduced resource consumption and higher clock rates, as we should by leveraging state machines, without increasing the complexity and readability of the original program.

Index Terms

  1. Building FPGA State Machines from Sequential Code

    Recommendations

    Comments

    Login options

    Check if you have access through your login credentials or your institution to get full access on this article.

    Sign in
    • Published in

      cover image ACM Conferences
      FPGA '19: Proceedings of the 2019 ACM/SIGDA International Symposium on Field-Programmable Gate Arrays
      February 2019
      360 pages
      ISBN:9781450361378
      DOI:10.1145/3289602

      Copyright © 2019 Owner/Author

      Permission to make digital or hard copies of part or all of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for third-party components of this work must be honored. For all other uses, contact the Owner/Author.

      Publisher

      Association for Computing Machinery

      New York, NY, United States

      Publication History

      • Published: 20 February 2019

      Check for updates

      Qualifiers

      • poster

      Acceptance Rates

      Overall Acceptance Rate125of627submissions,20%
    • Article Metrics

      • Downloads (Last 12 months)0
      • Downloads (Last 6 weeks)0

      Other Metrics