OpenCores
URL https://opencores.org/ocsvn/or1k/or1k/trunk

Subversion Repositories or1k

[/] [or1k/] [branches/] [stable_0_2_x/] [or1ksim/] [README] - Blame information for rev 72

Go to most recent revision | Details | Compare with Previous | View Log

Line No. Rev Author Line
1 2 cvs
 
2
What is this stuff?
3
===================
4
 
5
This is OpenRISC 1000 and DLX architectural simulator. It was written by
6
Damjan Lampret and it is free software. See the file COPYING for copying
7
permission. To contact the author, send mail to .
8
 
9
I use it to define OR1K system architecture. An implementation simulator
10 6 lampret
for OR1K will be also available, probably in Mar/2000 or later.
11 2 cvs
 
12
Initially this software was not meant to be released to public because it
13
was developed just to analyze program flow of GCC generated assembly code.
14
With the time it became bigger and was able to generate statistics about
15
superscalar issuing of multiple instructions. I've used it as a test simulator
16
to test OR1K GCC port. Perhaps some day I will (or perhaps someone else would
17
like to do that ??) clean-up the code and reorganize it.
18
 
19
This simulator loads an assembly file for one of the both architectures
20
and it simulates the operation of instructions. Because it was meant to be used
21
only to test characteristics of various RISC architectures and various GCC
22
optimization methods, it has a bit strange memory model. It is abstract and
23
physical at the same time. I can't really explain, just check the sources if
24
interested. Some other things are strange or incomplete too (like
25 6 lampret
C library emulation, currently supports only printf via simprintf).
26 2 cvs
 
27 18 lampret
MMU directory is not functional. Someday it will be filled with code for
28
virtual memory simulation.
29 2 cvs
 
30
 
31
Installation
32
============
33
 
34 12 jrydberg
To compile, run the configure script and specify the target architecture.
35
Example:
36
 
37 18 lampret
  $ ./configure --target=or32
38 12 jrydberg
 
39
After that, just issue "make all" command. By default there should be no
40 2 cvs
warnings. There is no "make install". Just use it from default location
41
or copy it to your bin directory (usually something like /usr/local/bin
42
or ~/bin).
43
This program hasn't been written with security in mind. It has many static
44
buffers and it does not check the size of input strings (user commands
45
or whatever). So don't setuid it. If it kills your dog, don't blame it on me.
46
 
47 12 jrydberg
To select DLX simulation, change the target to the configure script to 'dlx'
48 2 cvs
and recompile everything (do 'make all' again).
49
 
50 72 lampret
GNU Tools
51
=========
52
 
53
To build GNU tools:
54
 
55
cvs -d :pserver:cvs@cvs.opencores.org:/home/oc/cvs -z9 co -d work or1k
56
mkdir b-b
57
cd b-b
58
../binutils/configure --target=or32-rtems --prefix=/opt/or32-rtems &&
59
make all install
60
export PATH=/opt/or32-rtems/bin:$PATH
61
cd ../gcc
62
./contrib/egcs_update --touch
63
ln -s ../newlib/newlib .
64
cd ..
65
mkdir b-gcc
66
cd b-gcc
67
../gcc/configure --target=or32-rtems \
68
    --with-gnu-as --with-gnu-ld --with-newlib --verbose \
69
    --enable-threads --prefix=/opt/or32-rtems --enable-languages="c" &&
70
\
71
make all install
72
 
73
 
74 2 cvs
Simulator test
75
==============
76
 
77 18 lampret
Issue 'sim testbench/dhry.or32' or 'sim testbench/dhry.dlx' to
78 6 lampret
test simulator. See testbench/README for details about Dhrystone 2.1
79
benchmark.
80 2 cvs
 
81 54 lampret
For microkernel test (exception test) undefine ONLY_VIRTUAL_MACHINE (you want
82
exceptions, right !) in cpu/or1k/except.h and recompile simulator. A compiled
83
and linked version should already exist in testbench/uos. Just issue
84
'sim testbench/uos/uos.or32' from the top level sim directory. Currently only
85
OR32 is supported by UOS.
86
 
87 2 cvs
OpenRISC and open cores
88
=======================
89
 
90 6 lampret
About the same idea as with GNU project except we want free and open source
91
IP (intellectual property) cores. We design open source, synthesizable
92 2 cvs
cores. OpenRISC is one such core. It is a 32-bit RISC microprocessor that
93
will run GNU/Linux.
94
For more information visit us at http://www.opencores.org.
95
 
96
--
97
 
98 6 lampret
29/Feb/2000, Damjan Lampret email:lampret@opencores.org
99 12 jrydberg
03/Mar/2000, Johan Rydberg email:johan.rydberg@netinsight.net
100 21 cmchen
04/May/2000, Jimmy Chen-Min Chen email:jimmy@ee.nctu.edu.tw

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.