HTCC: Haskell to Handel-C Compiler

07/10/2019
by   Ahmed Ablak, et al.
0

Functional programming languages, such as Haskell, enable simple, concise, and correct-by-construction hardware development. HTCC compiles a subset of Haskell to Handel-C language with hardware output. Moreover, HTCC generates VHDL, Verilog, EDIF, and SystemC programs. The design of HTCC compiler includes lexical, syntax and semantic analyzers. HTCC automates a transformational derivation methodology to rapidly produce hardware that maps onto Field Programmable Gate Arrays (FPGAs) . HTCC is generated using ANTLR compiler-compiler tool and supports an effective integrated development environment. This paper presents the design rationale and the implementation of HTCC. Several sample generations of first-class and higher-order functions are presented. In-addition, a compilation case-study is presented for the XTEA cipher. The investigation comprises a thorough evaluation and performance analysis. The targeted FPGAs include Cyclone II, Stratix IV, and Virtex-6 from Altera and Xilinx.

READ FULL TEXT

page 1

page 2

page 3

page 4

research
11/10/2019

Gemini: A Functional Programming Language for Hardware Description

This paper presents Gemini, a functional programming language for hardwa...
research
10/20/2017

A software framework for pipelined arithmetic algorithms in field programmable gate arrays

Pipelined algorithms implemented in field programmable gate arrays are b...
research
05/05/2020

Testing Compilers for Programmable Switches Through Switch Hardware Simulation

Programmable switches have emerged as powerful and flexible alternatives...
research
04/07/2019

Parallel Algorithms Development for Programmable Devices with Application from Cryptography

Reconfigurable devices, such as Field Programmable Gate Arrays (FPGAs), ...
research
04/09/2019

Parallel Hardware for Faster Morphological Analysis

Morphological analysis in the Arabic language is computationally intensi...
research
09/17/2022

langcc: A Next-Generation Compiler Compiler

Traditionally, parsing has been a laborious and error-prone component of...
research
04/07/2019

Higher-Level Hardware Synthesis of The KASUMI Algorithm

Programmable Logic Devices (PLDs) continue to grow in size and currently...

Please sign up or login with your details

Forgot password? Click here to reset