WinMIPS64 - Pipeline Tool
Download the WinMIPS64 from here. You will find the documentation and examples along with the zip file.
WinMIPS64 Manual

Sample Example code

Dinero - Cache Simulator

Installation Steps:            

Step 1

Download Dinero IV (d4-7.tar.gz) from the following website and place the file in a directory of choice:

OR from here


Step 2

Unzip and untar the downloaded file by using either the graphic interface extractor or by running the following command in the terminal window:   

> gunzip d4-7.tar.gz

(The file name changes to d4-7.tar)

> tar -xvf d4-7.tar

(A new folder is created called d4-7)


Note: You will need to cd to the folder where d4-7.tar.gz is located for the above commands to work.


Step 3

Inside a terminal window, cd to the d4-7 folder that was created in Step 2 and create dinero with the following commands:

> cd d4-7 

> ./configure 

(this setups dinero installation)

> make 

(this creates the executable dineroIV ) 


Step 4 (Traces)

You will not have to generate your own trace files, that has been done for you. Traces for three programs, cc1 (C compiler), spice (a circuit simulator) ,

and tex (a document formatter)are available in compressed form. To use them, put them into a directory you have created for this project.


The names are cc1.din, spice.din, and tex.din respectively if your browser uncompresses them before saving, otherwise .Z should be appended to the

end of each of these names. If your files are still compressed, type "gunzip *.Z " when you are ready to use them, where * should be the name of

the trace file. For example,


> gunzip cc1.din.Z

(you will find cc1.din)


When you stop work, delete the traces before you logout. Some of these files are big (10 MB) in size (which isn't very large for trace files), but they

still waste a lot of disk space if everybody keeps uncompressed copies of them in their directory. Also, when you have finished the project, please

remember to delete these files (you can always retrieve them again from the web page if you need to), you don't need to tie up all this disk space



Step 5 (Testing)

Return back to the terminal and cd to the d4-7 folder. Inside the folder is a dineroIV executable, which is the dinero program.

To run the program you will need to give the following command:


> ./dineroIV (options) < trace_file_name


Here options specifies the cache size, cache block size, and cache layout options and trace_file_name is the name of the trace file.

To understand what options are available:


> ./dineroIV -help

Valid options:
 -help             Print this help message
 -copyright        Give details on copyright and lack of warranty
 -contact          Where to get the latest version or contact the authors
 -dineroIII        Explain replacements for Dinero III options
 -custom F         Generate and run custom simulator named F
 -lN-Tsize P       Size
 -lN-Tbsize P      Block size
 -lN-Tsbsize P     Sub-block size (default same as block size)
 -lN-Tassoc U      Associativity (default 1)
 -lN-Trepl C       Replacement policy
                   (l=LRU, f=FIFO, r=random) (default l)
 -lN-Tfetch C      Fetch policy
                   (d=demand, a=always, m=miss, t=tagged,
                    l=load forward, s=subblock) (default d)
 -lN-Tpfdist U     Prefetch distance (in sub-blocks) (default 1)
 -lN-Tpfabort U    Prefetch abort percentage (0-100) (default 0)
 -lN-Twalloc C     Write allocate policy
                   (a=always, n=never, f=nofetch) (default a)
 -lN-Twback C      Write back policy
                   (a=always, n=never, f=nofetch) (default a)
 -lN-Tccc          Compulsory/Capacity/Conflict miss statistics
 -skipcount U      Skip initial U references
 -flushcount U     Flush cache every U references bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb3332233AAABHA2 vc111VVCvc1c
 -maxcount U       Stop simulation after U references
 -stat-interval U  Show statistics after every U references
 -informat C       Input trace format
                   (D=extended din, d=traditional din, p=pixie32, P=pixie64,
                   b=binary) (default D)
 -on-trigger A     Trigger address to start simulation
 -off-trigger A    Trigger address to stop simulation
 -stat-idcombine   Combine I&D cache stats
 U unsigned decimal integer
 S like U but with optional [kKmMgG] scaling suffix
 P like S but must be a power of 2
 C single character
 A hexadecimal address
 F string
 N cache level (1 <= N <= 5)
 T cache type (u=unified, i=instruction, d=data)


An example Dinero command to be used:
> ./dineroIV -l1-isize 16384 -l1-iassoc 4 -l1-ibsize 32 -l1-irepl l -l1-dsize 32768 -l1-dassoc 2 -l1-dbsize 16 -l1-drepl f -l1-dwalloc a -l1-dwback a -informat d < cc1.din > sample.out

Please make sure that you use the proper re-directions (shown in red below),  
>./dineroIV -l1-isize...This is the command prompt after which you type the options.
-informat d < cc1.din... This is the input to the command line which is a trace file, this trace file should be available in the same folder.
cc1.din > sample.out... This is the redirected output to be stored in a file called sample.out

When you cut and paste from above, it may not be possible to paste everything. Please make sure you don't miss something. The above "executable batch file", run dinero with all the necessary design parameters with input (lisp.din) and redirect the output to lisp.out (in your account). Use pico, vi editors to view the results of your output.

> pico sample.out

---Dinero IV cache simulator, version 7
---Written by Jan Edler and Mark D. Hill
---Copyright (C) 1997 NEC Research Institute, Inc. and Mark D. Hill.
---All rights reserved.
---Copyright (C) 1985, 1989 Mark D. Hill.  All rights reserved.
---See -copyright option for details
---Summary of options (-help option gives usage information).
-l1-isize 16384
-l1-dsize 32768
-l1-ibsize 32
-l1-dbsize 16
-l1-isbsize 32
-l1-dsbsize 16
-l1-iassoc 4
-l1-dassoc 2
-l1-irepl l
-l1-drepl f
-l1-ifetch d
-l1-dfetch d
-l1-dwalloc a
-l1-dwback a
-skipcount 0
-flushcount 0
-maxcount 0
-stat-interval 0
-informat d
-on-trigger 0x0
-off-trigger 0x0
---Simulation begins.
---Simulation complete.
 Metrics                      Total           Instrn           Data            Read           Write            Misc
 -----------------            ------          ------          ------          ------          ------          ------
 Demand Fetches               757341          757341               0               0               0               0
  Fraction of total           1.0000          1.0000          0.0000          0.0000          0.0000          0.0000
 Demand Misses                 13743           13743               0               0               0               0
  Demand miss rate            0.0181          0.0181          0.0000          0.0000          0.0000          0.0000
 Multi-block refs                 0
 Bytes From Memory            439776
 ( / Demand Fetches)          0.5807
 Bytes To Memory                   0
 ( / Demand Writes)           0.0000
 Total Bytes r/w Mem          439776
 ( / Demand Fetches)          0.5807
 Metrics                      Total           Instrn           Data            Read           Write            Misc
 -----------------            ------          ------          ------          ------          ------          ------
 Demand Fetches               242661               0          242661          159631           83030               0
  Fraction of total           1.0000          0.0000          1.0000          0.6578          0.3422          0.0000
 Demand Misses                  4248               0            4248            2095            2153               0
  Demand miss rate            0.0175          0.0000          0.0175          0.0131          0.0259          0.0000
 Multi-block refs                 0
 Bytes From Memory             67968
 ( / Demand Fetches)          0.2801
 Bytes To Memory               40784
 ( / Demand Writes)           0.4912
 Total Bytes r/w Mem          108752
 ( / Demand Fetches)          0.4482
---Execution complete.