Project

General

Profile

Installation Guide » History » Version 33

Alexander Kamkin, 03/21/2014 07:22 AM

1 1 Andrei Tatarnikov
h1. Installation Guide
2
3 22 Andrei Tatarnikov
_~By Andrei Tatarnikov~_
4
5 17 Andrei Tatarnikov
h3. System Requirements
6 1 Andrei Tatarnikov
7 9 Andrei Tatarnikov
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.6 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. 
8 1 Andrei Tatarnikov
9 17 Andrei Tatarnikov
h3. Installation Steps
10 1 Andrei Tatarnikov
11 33 Alexander Kamkin
# Download from http://forge.ispras.ru/projects/microtesk/files and unpack the MicroTESK installation package (the @.tar.gz@ file, latest release) to your computer.
12
# Download and install constraint solver tools to the @<installation folder>/tools@ folder (see the "Installing Constraint Solvers" section).
13
# Open your console terminal and set the @<installation folder>/bin@ as the working directory.
14
# Now you can run the @compile.sh@ (or @.bat@) script to create a microprocessor model and the @generate.sh@ (or @.bat@) script to generate test for this model.
15 13 Andrei Tatarnikov
16 32 Alexander Kamkin
h3. Installing Constraint Solvers
17 15 Andrei Tatarnikov
18 33 Alexander Kamkin
To generate test data based on constraints, MicroTESK requires external constraint solver engines. The current version uses the Z3 constraint solver by Microsoft Research (http://z3.codeplex.com/). The Z3 executable should be downloaded and placed to the @<installation folder>/tools@ folder.
19 18 Andrei Tatarnikov
20 33 Alexander Kamkin
* Windows users should download Z3 (32 or 64-bit version) from the following page: http://z3.codeplex.com/releases, unpack the archive and place the z3.exe file to the @<installation folder>/tools/z3/windows@ folder.
21 1 Andrei Tatarnikov
22 33 Alexander Kamkin
* UNIX and Linux users should use one of the links below and place the z3 executable file to the @<installation folder>/tools/z3/unix/z3@ folder.
23 24 Andrei Tatarnikov
  Debian  x64: http://z3.codeplex.com/releases/view/101916
24
  Ubuntu  x86: http://z3.codeplex.com/releases/view/101913
25
  Ubuntu  x64: http://z3.codeplex.com/releases/view/101911
26
  FreeBSD x64: http://z3.codeplex.com/releases/view/101907
27 21 Andrei Tatarnikov
28 33 Alexander Kamkin
* OS X users should download Z3 from http://z3.codeplex.com/releases/view/101918 and place the @z3@ executable file to the @<installation folder>/z3/osx/z3@ folder.
29 15 Andrei Tatarnikov
30 17 Andrei Tatarnikov
h3. Installation Folder Structure
31 13 Andrei Tatarnikov
32
The MicroTESK installation folder contains the following subfolders:
33
34 33 Alexander Kamkin
| @arch@   | Examples of microprocessor specifications and test templates for the described designs |
35
| @bin@    | Scripts to run features of MicroTESK (modelling and test generation) |
36
| @doc@    | Documentation on MicroTESK and nML/Sim-nML |
37
| @libs@   | JAR files and Ruby scripts to perform modelling and test generation tasks |
38
| @output@ | Generated Java models of the specified microprocessor designs |
39 14 Andrei Tatarnikov
40
h3. Running MicroTESK
41 26 Andrei Tatarnikov
42 27 Andrei Tatarnikov
To generate a Java model of a microprocessor from its nML specification, a user needs to run the compile.sh script (Unix, Linux, OS X) or the compile.bat script (Windows). For example, the following command generates a model from a MIPS ISA specification:
43 26 Andrei Tatarnikov
44
<pre>
45 1 Andrei Tatarnikov
sh compile.sh ../arch/mips/model/newmips.nml
46 27 Andrei Tatarnikov
</pre>
47
48 33 Alexander Kamkin
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_ and (3) _target test program source code file_. For example, the following command runs the @mips_demo.rb@ test template for the MIPS model generated by the command from the previous example and saves the generated test program to the @test.asm@ file:
49 27 Andrei Tatarnikov
50
<pre>
51 29 Andrei Tatarnikov
sh generate.sh newmips ../arch/mips/templates/mips_demo.rb test.asm
52 26 Andrei Tatarnikov
</pre>