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

Subversion Repositories rv01_riscv_core

[/] [rv01_riscv_core/] [trunk/] [VHDL/] [README.txt] - Blame information for rev 2

Details | Compare with Previous | View Log

Line No. Rev Author Line
1 2 madsilicon
-----------------------------------------------------
2
-- RV01: simulation & synthesis VHDL files         --
3
-----------------------------------------------------
4
 
5
This folder includes all VHDL source files required
6
by RV01 core.
7
 
8
VHDL packages (stored in RV01_*_pkg.vhd files) are
9
used to define data types and constants that are not
10
user-modifiable (like, for instance, word width).
11
All parameters that are user-modifiable get passed
12
through top-level module generics, in order to allow
13
every core instance to be configured independently
14
from the other ones.
15
 
16
The files actually needed to perform a simulation or
17
synthesis run depend by the core configuration
18
specified through the top-level module generics.
19
File RV01_jrpu.vhd, for instance, is needed only if
20
generic JRPU_PRESENT is set to '1'.
21
 
22
The modules RV01_ST_CHECKER, RV01_WB_CHECKER and
23
RV01_STATS are referenced by module RV01_CPU_2W_P6
24
but are not actually needed, as their instantiation
25
is disabled by generic SIMULATION_ONLY being set to
26
'0', as required by core documentation.
27
If simulation/synthesis tool complains about these
28
modules to be missing, please check generic
29
SIMULATION_ONLY setting.
30
 
31
The RV01 top-level module is RV01_TOP from file
32
RV01_top.vhd.
33
 
34
An alternative top-level module is RV01_TOP_NOHOST
35
from file RV01_top_nohost.vhd.
36
This module exists mainly as a debugging and
37
simulation aid, it consists of an instance of the
38
top-level module RV01_TOP with the MTOHOST_o output
39
looping back to the MFROMHOST_i and EI_REQ_i inputs.
40
This arrangement allows to simulate the host interface
41
and, to some degree, PLIC module operations without
42
additional logic.
43
 
44
All module and signal names use uppercase letters only,
45
except for the suffixes described below here.
46
Signals input to a module have a "_i" suffix appended
47
to their name, signals output from a module have a "_o"
48
suffix, while signals internal to a module and driven
49
by a register, have a "_q" suffix. Signals names without
50
one of these suffixes are internal to a module and
51
generated by combinatorial logic.

powered by: WebSVN 2.1.0

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