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

Subversion Repositories neorv32

[/] [neorv32/] [trunk/] [docs/] [datasheet/] [soc_bootrom.adoc] - Blame information for rev 60

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

Line No. Rev Author Line
1 60 zero_gravi
<<<
2
:sectnums:
3
==== Bootloader ROM (BOOTROM)
4
 
5
[cols="<3,<3,<4"]
6
[frame="topbot",grid="none"]
7
|=======================
8
| Hardware source file(s): | neorv32_boot_rom.vhd |
9
| Software driver file(s): | none             | _implicitly used_
10
| Top entity port:         | none             |
11
| Configuration generics:  | _BOOTLOADER_EN_ | implement processor-internal bootloader when _true_
12
| CPU interrupts:          | none             |
13
|=======================
14
 
15
As the name already suggests, the boot ROM contains the read-only bootloader image. When the bootloader
16
is enabled via the _BOOTLOADER_EN_ generic it is directly executed after system reset.
17
 
18
The bootloader ROM is located at address 0xFFFF0000. This location is fixed and the bootloader ROM size
19
must not exceed 32kB. The bootloader read-only memory is automatically initialized during synthesis via the
20
`rtl/core/neorv32_bootloader_image.vhd` file, which is generated when compiling and installing the
21
bootloader sources.
22
 
23
The bootloader ROM address space cannot be used for other applications even when the bootloader is not
24
implemented.
25
 
26
**Boot Configuration**
27
 
28
If the bootloader is implemented, the CPU starts execution after reset right at the beginning of the boot
29
ROM. If the bootloader is not implemented, the CPU starts execution at the beginning of the instruction
30
memory space (defined via `ispace_base_c` constant in the `neorv32_package.vhd` VHDL package file,
31
default `ispace_base_c` = 0x00000000). In this case, the instruction memory has to contain a valid
32
executable – either by using the internal IMEM with an initialization during synthesis or by a user-defined
33
initialization process.
34
 
35
[TIP]
36
See section <<_bootloader>> for more information regarding the bootloader's boot process and configuration options.

powered by: WebSVN 2.1.0

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