• DocumentCode
    1665068
  • Title

    Designing a dataflow processor using CλaSH

  • Author

    Niedermeier, Anja ; Wester, Rinse ; Rovers, Kenneth ; Baaij, Christiaan ; Kuper, Jan ; Smit, Gerard

  • Author_Institution
    Dept. of Comput. Sci., Univ. of Twente, Enschede, Netherlands
  • fYear
    2010
  • Firstpage
    1
  • Lastpage
    4
  • Abstract
    In this paper we show how a simple dataflow processor can be fully implemented using CλaSH, a high level HDL based on the functional programming language Haskell. The processor was described using Haskell, the CλaSH compiler was then used to translate the design into a fully synthesisable VHDL code. The VHDL code was synthesised with 90 nm TSMC libraries and placed and routed. Simulation of the final netlist showed correct behaviour. We conclude that Haskell and CλaSH are well-suited to define hardware on a very high level of abstraction which is close to the mathematical description of the desired architecture. By using CλaSH, the designer does not have to care about internal implementation details like when designing with VHDL. The complete processor was described in 300 lines of code, some snippets are shown as illustration.
  • Keywords
    hardware description languages; program compilers; CaSH compiler; Haskell programming language; VHDL code; dataflow processor; very high level description language; Clocks; Computer architecture; Embedded systems; Functional programming; Hardware; Mathematical model; Process control;
  • fLanguage
    English
  • Publisher
    ieee
  • Conference_Titel
    NORCHIP, 2010
  • Conference_Location
    Tampere
  • Print_ISBN
    978-1-4244-8972-5
  • Electronic_ISBN
    978-1-4244-8971-8
  • Type

    conf

  • DOI
    10.1109/NORCHIP.2010.5669445
  • Filename
    5669445