RMMixed is a mixed radix synthesis tool based on fixed polarity ReedMuller expansions over Galois field arithmetic [1]. Taking into account the actual values for switching energy and area for arithmetic components the synthesis tool searches for the optimal solution with respect to the gate level characteristics. An example component library for 1ofn encoded logic is included.
List of features
The tool is implemented in two versions: command line tool (rmmixedcmd.jar) and Tcl console (rmmixed.jar).
Both share the same internal structure and algorithms, the different is in the interface.
Command line tool can be used to compute a ReedMuller expansions of one of the predefined radix models,
which include uniform radix binary, ternary, quaternary expansions and the following twolevel radix modes: 2→3, 2→4, 4→2.
The expansion is minimised and mapped into provided library of Galois field arithmetic components.
The circuit optimisation can be made by estimating total energy, area or switching activity of the circuit.
At the moment the only accepted input format is the truth table. Supported output format is structural Verilog.
Tcl version of the tool is designed mainly for reseach purposes, while the command line tool has been made for intensive benchmark runs.
Tcl version has an extended list of features accessible through the Tcl commands:
 the tool supports arithmetic in any Galois field;
 ReedMuller expansions can be computed in any uniform radix (assuming that corresponding GF exists) or a twolevel radix model;
 the tool includes an expression calculator for GF arithmetic.
Supported input and output formats are listed below:
 Input of the tool is a list of truth vectors in a text format.
 Library of components should be specified in Verilog format. Each arithmetic component is defined as a separate module and built using generic cells or runtime library components. In case if the library is implemented using technology independent cells the tool is unable to estimate power and area of the circuit, so the only possible optimisation criterion is the number of switching wires.
 Output of the tool is a Verilog file containing the synthesised circuit as a single module.
Download
TCL console version of the tool can be downloaded here: rmmixed.zip
Command line version can be downloaded here: rmmixedcmd.zip
This is a crossplatform commandline tool. It requires Java runtime environment (JRE) version 1.6 or higher.
Running
java jar rmmixedcmd.jar [program arguments]
or
java jar rmmixed.jar [program arguments]
For the details see readme.html or doc/index.html inside the archive.
References:
 A. Rafiev, J. P. Murphy, and A. Yakovlev, "Quaternary ReedMuller expansions of mixed radix arguments in cryptographic circuits," in Proc. 39th International Symposium on MVL, 2009.
Last modified 16/11/2011 by IGC

