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

Subversion Repositories neorv32

[/] [neorv32/] [trunk/] [docs/] [datasheet/] [soc_imem.adoc] - Diff between revs 61 and 64

Go to most recent revision | Show entire file | Details | Blame | View Log

Rev 61 Rev 64
Line 3... Line 3...
==== Instruction Memory (IMEM)
==== Instruction Memory (IMEM)
 
 
[cols="<3,<3,<4"]
[cols="<3,<3,<4"]
[frame="topbot",grid="none"]
[frame="topbot",grid="none"]
|=======================
|=======================
| Hardware source file(s): | neorv32_imem.vhd |
| Hardware source file(s): | neorv32_imem.entity.vhd      | entity-only definition
 
|                          | mem/neorv32_imem.default.vhd | default _platform-agnostic_ memory architecture
| Software driver file(s): | none             | _implicitly used_
| Software driver file(s): | none             | _implicitly used_
| Top entity port:         | none             |
| Top entity port:         | none             |
| Configuration generics:  | _MEM_INT_IMEM_EN_ | implement processor-internal IMEM when _true_
| Configuration generics:  | _MEM_INT_IMEM_EN_ | implement processor-internal IMEM when _true_
|                          | _MEM_INT_IMEM_SIZE_ | IMEM size in bytes
|                          | _MEM_INT_IMEM_SIZE_ | IMEM size in bytes
|                          | _INT_BOOTLOADER_EN_ | use internal bootlodaer when _true_ (implements IMEM as ROM)
|                          | _INT_BOOTLOADER_EN_          | use internal bootlodaer when _true_ (implements IMEM as _uninitialized_ RAM)
| CPU interrupts:          | none             |
| CPU interrupts:          | none             |
|=======================
|=======================
 
 
[NOTE]
[NOTE]
The default `neorv32_imem.vhd` HDL source file provides a _generic_ memory design that infers embedded
The actual IMEM is split into two design files: a plain entity definition (`neorv32_imem.entity.vhd`) and the actual
memory for _larger_ memory configurations. You might need to replace/modify the source file in order to use
architecture definition (`mem/neorv32_imem.default.vhd`). This **default architecture** provides a _generic_ and
platform-specific features (like advanced memory resources) or to improve technology mapping and/or timing.
_platform independent_ memory design that (should) infers embedded memory block. You can replace/modify the architecture
 
source file in order to use platform-specific features (like advanced memory resources) or to improve technology mapping
 
and/or timing.
 
 
Implementation of the processor-internal instruction memory is enabled via the processor's
Implementation of the processor-internal instruction memory is enabled via the processor's
_MEM_INT_IMEM_EN_ generic. The size in bytes is defined via the _MEM_INT_IMEM_SIZE_ generic. If the
_MEM_INT_IMEM_EN_ generic. The size in bytes is defined via the _MEM_INT_IMEM_SIZE_ generic. If the
IMEM is implemented, the memory is mapped into the instruction memory space and located right at the
IMEM is implemented, the memory is mapped into the instruction memory space and located right at the
beginning of the instruction memory space (default `ispace_base_c` = 0x00000000).
beginning of the instruction memory space (default `ispace_base_c` = 0x00000000).

powered by: WebSVN 2.1.0

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