Title :
Compiling Higher Order Functional Programs to Composable Digital Hardware
Author :
Aguilar-Pelaez, Eduardo ; Bayliss, Samuel ; Smith, Alex ; Winterstein, Felix ; Ghica, Dan R. ; Thomas, David ; Constantinides, George A.
Author_Institution :
Dept. of Electr. & Electron. Eng., Imperial Coll. London, London, UK
Abstract :
This work demonstrates the capabilities of a high-level synthesis tool-chain that allows the compilation of higher order functional programs to gate-level hardware descriptions. Higher order programming allows functions to take functions as parameters. In a hardware context, the latency-insensitive interfaces generated between compiled modules enable late-binding with libraries of pre-existing functions at the place-and-route compilation stage. We demonstrate the completeness and utility of our approach using a case study; a recursive k-means clustering algorithm. The algorithm features complex data-dependent control flow and opportunities to exploit both coarse and fine-grained parallelism.
Keywords :
functional programming; pattern clustering; program compilers; composable digital hardware; data-dependent control flow; fine-grained parallelism; gate-level hardware descriptions; high-level synthesis tool-chain; higher order functional program compiling; latency-insensitive interfaces; place-and-route compilation stage; recursive k-means clustering algorithm; Clustering algorithms; Educational institutions; Field programmable gate arrays; Hardware; Parallel processing; Program processors; Programming; compiler; fpga; functional programming;
Conference_Titel :
Field-Programmable Custom Computing Machines (FCCM), 2014 IEEE 22nd Annual International Symposium on
Conference_Location :
Boston, MA
Print_ISBN :
978-1-4799-5110-9
DOI :
10.1109/FCCM.2014.69