Abstract: In this tutorial we present a compilation framework for automatically translating ANSI C programs into pipelined asynchronous circuits. The framework is embodied in the CASH compiler, a Compiler for Application-Specific Hardware. CASH generates dataflow machines implemented as asynchronous circuits that directly implement the source program, without using any interpretative structures. |
A description of the asynchronous circuits compiler back-end and the synthesis methodology. |
A comprehensive description of the high-level part of the compiler and the intermediate representation. |
The new scalar replacement algorithm used to eliminate memory accesses. |
A methodology to hand-annotate programs to help the pointer analysis perform better disambiguation. |
Optimizations removing redundant memory operations and pipelining memory accesses. |
A brief description of the compilation and intermediate representation. |
Description of the hardware-software partitioning mechanism. |
An extended version of the FPL 02 paper. |
The high-level algorithm used to discover narrow bitwidth values in C programs. |