Data And Instruction Address Extension - Xilinx MicroBlaze Reference Manual

Hide thumbs Also See for MicroBlaze:
Table of Contents

Advertisement

Data and Instruction Address Extension

MicroBlaze has the ability to address up to 16EB of data controlled by the parameter
, and also supports a physical instruction address up to 16EB when the MMU
C_ADDR_SIZE
Physical Address Extension (PAE) is enabled by setting
The parameter
NONE
4 * 1024
°
64GB
64 * 1024
°
1TB
1024
°
16TB
16 * 1024
°
256TB
256 * 1024
°
4PB
4 * 1024
°
16EB
16 * 1024
°
There are a number of software limitations with extended addressing:
The GNU tools only generate ELF files with 32-bit addresses, which means that program
instruction and data memory must be located in the first 4GB of the address space. This
is also the reason the instruction address space does not provide an extended address
unless PAE is enabled.
With PAE enabled, the majority of the program instruction and data can be located at
any physical address, but all software running in real mode must be located in the first
4GB of the address space. The MMU UTLB must also be initialized to set up the virtual
to physical address translation by software running in real mode, before virtual mode is
activated.
Because all software drivers use address pointers that are 32-bit unsigned integers, it is
not possible to access physical extended addresses above 4GB without modifying the
driver code, and consequently all AXI peripherals should be located in the first 4GB of
the address space.
With PAE enabled, AXI peripherals can be located at any physical address, provided that
the virtual address remains in the first 4GB of the address space.
The extended address is only treated as a physical address, and the MMU cannot be
used to translate from an extended virtual address to a physical address.
This also means that without PAE support, Linux can only use the data address extension
through a dedicated driver operating in real mode.
MicroBlaze Processor Reference Guide
UG984 (v2018.2) June 21, 2018
can be set to the following values:
C_ADDR_SIZE
3
bytes
3
bytes
4
bytes
4
bytes
4
bytes
5
bytes
6
bytes
www.xilinx.com
Chapter 2: MicroBlaze Architecture
C_USE_MMU
32-bit address, no extended address instructions or PAE
36-bit address
40-bit address
44-bit address
48-bit address
52-bit address
64-bit address
= 3 (Virtual).
132
Send Feedback

Advertisement

Table of Contents
loading

Table of Contents