Paper Details

Communicating Process Architectures (CPA)
 Title: N Queens on an FPGA: Mathematics, Programming, or Both?
 Conference: Communicating Process Architectures 2014
 Authors: Jan Kuper, Rinse Wester
Computer Architecture for Embedded Systems, CTIT Institute, University of Twente
 Abstract: This paper presents a design methodology for deriving an FPGA implementation directly from a mathematical specification, thus avoiding the switch in semantic perspective as is present in widely applied methods which include an imperative implementation as an intermediate step. The first step in the method presented in this paper is to transform a mathematical specification into a Haskell program. The next step is to make repetition structures explicit by higher order functions, and after that rewrite the specification in the form of a Mealy Machine. Finally, adaptations have to be made in order to comply to the fixed nature of hardware. The result is then given to CλaSH, a compiler which generates synthesizable VHDL from the resulting Haskell code. An advantage of the approach presented here is that in all phases of the process the design can be directly simulated by executing the defining code in a standard Haskell environment. To illustrate the design process, the N queens problem is chosen as a running example. 

BibTeX Entry

Full paper