Installation Guide » History » Revision 83

« Previous | Revision 83/106 (diff) | Next »
Andrei Tatarnikov, 05/23/2015 09:23 AM

Installation Guide

System Requirements

MicroTESK is a set of Java-based utilities that are run from the command line. It can be used on Windows, Linux and OS X machines that have JDK 1.7 or later installed. To build MicroTESK from source code or to build generated Java models, Apache Ant version 1.8 or later is required. To generate test data based on constraints, MicroTESK needs Microsoft Research Z3 that can work under the corresponding operating system.

Installation Steps

  1. Download from and unpack the MicroTESK installation package (the .tar.gz file, latest release) to your computer. The folder to which it was unpacked will be further referred to as the installation directory (<installation dir>).
  2. [Not required for MicroTESK 2.1 beta] Download and install constraint solver tools to the <installation dir>/tools directory (see the Installing Constraint Solvers section).
  3. Declare the MICROTESK_HOME environment variable and set its value to the path to the installation directory (see the Setting Environment Variables section).
  4. Set the <installation dir>/bin as the working directory (add the path to the PATH environment variable) to be able to run MicroTESK utilities from any path.
  5. Now you can run the (or .bat) script to create a microprocessor model and the (or .bat) script to generate test for this model.

Setting Environment Variables


  1. Open the "System Properties" window.
  2. Switch to the "Advanced" tab.
  3. Click on Environment Variables.
  4. Click "New.." under "System Variables".
  5. In the "New System Variable" dialog specify variable name as MICROTESK_HOME and variable value as <installation dir>.
  6. Click "OK" on all open windows.
  7. Reopen the command prompt window.

Linux and OS X

Add the command below to the ~.bash_profile file (Linux) or the ~/.profile file (OS X):

export MICROTESK_HOME=<installation dir>
To start editing the file, type vi ~/.bash_profile (or vi ~/.profile). Changes will be applied after restarting the command-line terminal or reboot. You can also execute the command in your command-line terminal to make temporary changes.

Installing Constraint Solvers

To generate test data based on constraints, MicroTESK requires external constraint solvers. The current version supports the Z3 and CVC4 constraint solvers. Constraint executables should be downloaded and placed to the <installation dir>/tools directory.

Installing Z3

  • Windows users should download Z3 (32 or 64-bit version) from the following page: and unpack the archive to the <installation dir>/tools/z3/windows directory. Note: the executable file path is <windows>/z3/bin/z3.exe.

Installing CVC4

  • OS X users should download the latest version of CVC4 distribution package from and install it.
    The CVC4 binary should be copied to <installation dir>/tools/cvc4/osx as cvc4 or linked to this file name via a symbolic link.

Installation Directory Structure

The MicroTESK installation directory contains the following subdirectories:

arch Examples of microprocessor specifications and test templates for the described designs
bin Scripts to run features of MicroTESK (modelling and test generation)
doc Documentation on MicroTESK
etc MicroTESK configuration files
gen Generated Java models of the specified microprocessor designs
lib JAR files and Ruby scripts to perform modelling and test generation tasks
src Source code of MicroTESK

Running MicroTESK

To generate a Java model of a microprocessor from its nML specification, a user needs to run the script (Unix, Linux, OS X) or the compile.bat script (Windows). For example, the following command generates a model for the miniMIPS specification:

sh bin/ arch/minimips/model/minimips.nml

NOTE: Models for all demo specifications are already built and included in the MicroTESK distribution package. So a user can start working with MicroTESK from generating test programs for these models.

To generate a test program, a user needs to use the script (Unix, Linux, OS X) or the generate.bat script (Windows). The scripts require the following parameters:

  1. model name;
  2. test template file;
  3. target test program source code file.

For example, the following command runs the euclid.rb test template for the miniMIPS model generated by the command from the previous example and saves the generated test program to the test.asm file:

sh bin/ minimips arch/minimips/templates/euclid.rb test.asm

To specify whether Z3 or CVC4 should be used to solve constraints, a user needs to specify the -s or --solver command-line option as z3 or cvc4 respectively. By default, Z3 will be used. Here is an example:

sh bin/ -s cvc4 minimips arch/minimips/templates/constraint.rb

More information on command-line options can be found on the Command-Line Options page.

Updated by Andrei Tatarnikov about 5 years ago · 83 revisions