Project

General

Profile

Actions

MicroTESK Installation Guide » History » Revision 15

« Previous | Revision 15/22 (diff) | Next »
Andrei Tatarnikov, 07/26/2018 06:55 PM


MicroTESK for RISC-V Installation Guide

Installation and User Guide

Installation

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 be able to recompile the RISC-V ISA specifications, Apache Ant version 1.8 or later is required.

Installation Steps

  1. Download from https://forge.ispras.ru/projects/microtesk-riscv/files 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. Declare the MICROTESK_HOME environment variable and set its value to the path to the installation directory (see the Setting Environment Variables section).
  3. 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.

Setting Environment Variables

Windows

  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.

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

Using MicroTESK

Compiling ISA specifications

NOTE: This information is required only if the user is going to modify the RISC-V ISA specifications since the distribution package already contains compiled specifications.

The description of the RISC-V ISA is provided in formal specifications in the nML language. They can be found in the <installation dir>/arch/riscv/model folder. They need to be compiled to be used by MicroTESK.
To compile them, a user needs to run the Make file stored in the <installation dir>/arch/riscv/model folder:

cd $MICROTESK_HOME/arch/riscv/model
make

Generating test programs

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

  1. model name;
  2. test template file.

For example, the command below 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 an assembler file. The file name is based on values of the --code-file-prefix and --code-file-extension options.

sh bin/generate.sh minimips arch/demo/minimips/templates/euclid.rb

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/generate.sh -s cvc4 minimips arch/demo/minimips/templates/constraint.rb

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

Updated by Andrei Tatarnikov over 6 years ago · 22 revisions