README.md 1.38 KB
Newer Older
Yunsup Lee's avatar
Yunsup Lee committed
1
2
3
4
5
6
Rocket Chip Generator
=====================

This repository contains the Rocket chip generator necessary to instantiate
the RISC-V Rocket Core.

Yunsup Lee's avatar
Yunsup Lee committed
7

Yunsup Lee's avatar
Yunsup Lee committed
8
9
10
Contributors
------------

Yunsup Lee's avatar
Yunsup Lee committed
11
12
13
14
15
16
- Scott Beamer
- Henry Cook
- Yunsup Lee
- Stephen Twigg
- Huy Vo
- Andrew Waterman
Yunsup Lee's avatar
Yunsup Lee committed
17

Scott Beamer's avatar
Scott Beamer committed
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44

Checkout The Code
-----------------

    $ git submodule update --init --recursive


Building The Toolchain
----------------------

To build RISC-V ISA simulator, frontend server, proxy kernel and newlib based GNU toolchain:

    $ export RISCV=/path/to/riscv/toolchain/installation
    $ cd riscv-tools
    $ ./build.sh


Building The Project
--------------------

To build the C simulator:

    $ cd emulator
    $ make

To build the VCS simulator:

Yunsup Lee's avatar
Yunsup Lee committed
45
    $ cd vsim
Scott Beamer's avatar
Scott Beamer committed
46
47
48
49
50
51
52
53
54
55
    $ make

in either case, you can run a set of assembly tests or simple benchmarks:

    $ make run-asm-tests
    $ make run-bmarks-test

To build a C simulator that is capable of VCD waveform generation:

    $ cd emulator
Yunsup Lee's avatar
Yunsup Lee committed
56
    $ make debug
Scott Beamer's avatar
Scott Beamer committed
57
58
59
60
61
62

And to run the assembly tests on the C simulator and generate waveforms:

    $ make run-asm-tests-debug
    $ make run-bmarks-test-debug

Yunsup Lee's avatar
Yunsup Lee committed
63
To get FPGA-synthesizable verilog (output will be in `fsim/generated-src`):
64

Yunsup Lee's avatar
Yunsup Lee committed
65
    $ cd fsim
Yunsup Lee's avatar
Yunsup Lee committed
66
    $ make verilog
67

Scott Beamer's avatar
Scott Beamer committed
68
69
70
71
72
73
74
75
76

Updating To A Newer Version Of Chisel
-------------------------------------

To grab a newer version of chisel:

    $ git submodule update --init
    $ cd chisel
    $ git pull origin master