我希望直接在MIPS 32位架构中访问内存位置0x8000 0000
,而不使用TLB
和MMU
。
在MIPS32中,kseg0
是未映射和缓存的内存,是低512MB物理内存的窗口。因此,通过使用此段,我们可以访问最多512 MB的物理内存。但我想访问0x8000 0000
(最多2GB)的物理内存。
有没有办法在MIPS32中使用0x8000 0000
和MMU
来访问内存位置TLB
(2 GB物理内存)?
答案 0 :(得分:1)
您似乎希望访问32位用户空间。
您可以使用kuseg
在MIPS中执行此操作,但由于0x8000.0000
的限制为kuseg
且因为{{{}},您将无法访问0x7FFF.FFFF
1}}映射到kseg0
。
请注意0x8000.0000
映射4 GB内存(32位)。
此链接及其上的图表应提供有关此内容的非常有价值的信息:http://www.johnloomis.org/microchip/pic32/memory/memory.html。
答案 1 :(得分:1)
这实际上取决于你所说的MIPS。
在MIPS32 R3中,您可以通过R3 ISA中的新EVA(增强型虚拟地址)功能执行此操作。