Installation Guide » History » Version 49
Andrei Tatarnikov, 03/23/2014 03:57 PM
1 | 1 | Andrei Tatarnikov | h1. Installation Guide |
---|---|---|---|
2 | |||
3 | 22 | Andrei Tatarnikov | _~By Andrei Tatarnikov~_ |
4 | |||
5 | 36 | Alexander Kamkin | {{toc}} |
6 | |||
7 | 17 | Andrei Tatarnikov | h3. System Requirements |
8 | 1 | Andrei Tatarnikov | |
9 | 44 | 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. |
10 | 1 | Andrei Tatarnikov | |
11 | 17 | Andrei Tatarnikov | h3. Installation Steps |
12 | 1 | Andrei Tatarnikov | |
13 | 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. |
14 | 1 | Andrei Tatarnikov | # Download and install constraint solver tools to the @<installation dir>/tools@ directory (see the *Installing Constraint Solvers* section). |
15 | 46 | Andrei Tatarnikov | # Declare the *MICROTESK_HOME* environment variable and set its value to the path to the installation directory (see the *Setting Environment Variables* section). |
16 | 40 | Alexander Kamkin | # Set the @<installation dir>/bin@ as the working directory (add the path to the @PATH@ environment variable). |
17 | 33 | Alexander Kamkin | # 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. |
18 | 13 | Andrei Tatarnikov | |
19 | 47 | Andrei Tatarnikov | h3. Setting Environment Variables |
20 | |||
21 | 48 | Andrei Tatarnikov | h4. _Windows_ |
22 | 47 | Andrei Tatarnikov | |
23 | TODO |
||
24 | |||
25 | 49 | Andrei Tatarnikov | h4. _Linux and OS X_ |
26 | 48 | Andrei Tatarnikov | |
27 | 49 | Andrei Tatarnikov | Add the command below to the @~.bash_profile@ file (Linux) or the @~/.profile@ file (OS X): |
28 | <pre>export MICROTESK_HOME=<installation dir></pre> To start editing the file, type @vi ~/.bash_profile@ (or @vi ~/.profile@). Changes will be applied after reboot. You can also execute the command in your command-line terminal to make temporary changes. |
||
29 | 47 | Andrei Tatarnikov | |
30 | 32 | Alexander Kamkin | h3. Installing Constraint Solvers |
31 | 15 | Andrei Tatarnikov | |
32 | 40 | 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 dir>/tools@ directory. |
33 | 18 | Andrei Tatarnikov | |
34 | 40 | 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 dir>/tools/z3/windows@ directory. |
35 | 1 | Andrei Tatarnikov | |
36 | 40 | Alexander Kamkin | * UNIX and Linux users should use one of the links below and place the @z3@ executable file to the @<installation dir>/tools/z3/unix/z3@ directory. |
37 | 34 | Alexander Kamkin | | Debian x64 | http://z3.codeplex.com/releases/view/101916 | |
38 | | Ubuntu x86 | http://z3.codeplex.com/releases/view/101913 | |
||
39 | | Ubuntu x64 | http://z3.codeplex.com/releases/view/101911 | |
||
40 | | FreeBSD x64 | http://z3.codeplex.com/releases/view/101907 | |
||
41 | 21 | Andrei Tatarnikov | |
42 | 40 | 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 dir>/z3/osx/z3@ directory. |
43 | 15 | Andrei Tatarnikov | |
44 | 40 | Alexander Kamkin | h3. Installation Directory Structure |
45 | 13 | Andrei Tatarnikov | |
46 | 40 | Alexander Kamkin | The MicroTESK installation directory contains the following subdirectories: |
47 | 13 | Andrei Tatarnikov | |
48 | 33 | Alexander Kamkin | | @arch@ | Examples of microprocessor specifications and test templates for the described designs | |
49 | | @bin@ | Scripts to run features of MicroTESK (modelling and test generation) | |
||
50 | | @doc@ | Documentation on MicroTESK and nML/Sim-nML | |
||
51 | 43 | Andrei Tatarnikov | | @gen@ | Generated Java models of the specified microprocessor designs | |
52 | | @lib@ | JAR files and Ruby scripts to perform modelling and test generation tasks | |
||
53 | 14 | Andrei Tatarnikov | |
54 | h3. Running MicroTESK |
||
55 | 26 | Andrei Tatarnikov | |
56 | 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: |
57 | 26 | Andrei Tatarnikov | |
58 | <pre> |
||
59 | 42 | Andrei Tatarnikov | sh compile.sh ../arch/mips/model/mips.nml |
60 | 27 | Andrei Tatarnikov | </pre> |
61 | |||
62 | 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: |
63 | 27 | Andrei Tatarnikov | |
64 | <pre> |
||
65 | 42 | Andrei Tatarnikov | sh generate.sh mips ../arch/mips/templates/mips_demo.rb test.asm |
66 | 26 | Andrei Tatarnikov | </pre> |