I want to access memory location 0x8000 0000
directly in MIPS 32 bit architecture without using TLB
and MMU
.
In MIPS32, kseg0
is unmapped and cached memory and is a window for the low 512MB of physical memory. So by using this segment we can access up to 512 MB of physical memory. But I want to access 0x8000 0000
(up to 2GB) of physical memory.
Is there is any way to access memory location 0x8000 0000
(2 GB of physical memory) without using MMU
and TLB
in MIPS32?
It seems that you are looking to access 32-bit user space.
You can do this in MIPS by using kuseg
but you will not be able to access 0x8000.0000
with it as the limit with kuseg
is 0x7FFF.FFFF
and because kseg0
maps to 0x8000.0000
.
Note that kuseg, kseg0, kseg1, and kseg2
map 4 GB of memory (32-bit).
This link and the chart on it should provide very valuable information concerning this: http://www.johnloomis.org/microchip/pic32/memory/memory.html.