Keywords : architecture synthesis, CAD, ASIC, functional programming, data parallelism.
Participants : Patrice Quinton [ contact ] , Tanguy Risset [ CompSys, INRIA Rhône-Alpes ] .
mma lpha implements transformations on the Alpha language. The Alpha language was proposed by Christophe Mauras  . The implementation is carried out in the Mathematica language (from where the name mma lpha) and is built on the Polylib library.
Alpha program transformations are implemented by combining the Mathematica language and the Polylib library. The principle is to derive either an architecture, a sequential or a parallel code starting from an algorithmic specification of a problem. These transformations are semi-automatic, i.e. the actions to be performed are indicated by the user but the transformation itself is carried out by mma lpha. Automatic transformations are also available, and provide in some cases satisfactory results.
The design methodology is inherited from the method of systolic array synthesis. This field is studied from the theoretical point of view, and results of these research are implemented and experimented in the mma lpha software. This software makes it possible to test various existing synthesis strategies, to study various possibilities of parallelization and to generate an architectural description of a circuit thanks to the AlpHard format (subset of the Alpha language). The interface between mma lpha and logic synthesis tools is done thanks to a translation towards VHDL.
The software was the implementation support of many theses carried out at Irisa. It is used by several research teams within the framework of collaborations with R2D2. It is one of the only tools making it possible to describe an algorithm and its hardware implementation in the same language and to deduce this implementation with proven transformations.
To know some more, contact Patrice Quinton.