gpt4 book ai didi

memory - 如何在 N64 仿真器中构建内存映射?

转载 作者:行者123 更新时间:2023-12-04 15:37:57 24 4
gpt4 key购买 nike

根据维基百科,N64 只有 4 MB 的 RDRAM(扩展包为 8 MB),其他数量同样小(4 KB 左右的 L1 缓存)。但是,我在 Google 上找到的技术文档指出,它的内存地址范围从 $0000:0000 到 $FFFF:FFFF —— 即 4 GB!由于像 Project64 这样的现有 N64 模拟器不使用 4 GB 的 RAM,模拟内存映射是如何工作的?我曾尝试查看各种文件等,但所有文件似乎都至少略有不同。有人对这个问题有什么建议吗?

具体来说,这是我找到的内存映射:

0x0000 0000 to 0x03EF FFFF RDRAM Memory
0x03F0 0000 to 0x03FF FFFF RDRAM Registers
0x0400 0000 to 0x040F FFFF SP Registers
0x0410 0000 to 0x041F FFFF DP Command Registers
0x0420 0000 to 0x042F FFFF DP Span Registers
0x0430 0000 to 0x043F FFFF MIPS Interface (MI) Registers
0x0440 0000 to 0x044F FFFF Video Interface (VI) Registers
0x0450 0000 to 0x045F FFFF Audio Interface (AI) Registers
0x0460 0000 to 0x046F FFFF Peripheral Interface (PI) Registers
0x0470 0000 to 0x047F FFFF RDRAM Interface (RI) Registers
0x0480 0000 to 0x048F FFFF Serial Interface (SI) Registers
0x0490 0000 to 0x04FF FFFF Unused
0x0500 0000 to 0x05FF FFFF Cartridge Domain 2 Address 1
0x0600 0000 to 0x07FF FFFF Cartridge Domain 1 Address 1
0x0800 0000 to 0x0FFF FFFF Cartridge Domain 2 Address 2
0x1000 0000 to 0x1FBF FFFF Cartridge Domain 1 Address 2
0x1FC0 0000 to 0x1FC0 07BF PIF Boot ROM
0x1FC0 07C0 to 0x1FC0 07FF PIF RAM
0x1FC0 0800 to 0x1FCF FFFF Reserved
0x1FD0 0000 to 0x7FFF FFFF Cartridge Domain 1 Address 3
0x8000 0000 to 0xFFFF FFFF External SysAD Device

最佳答案

如果您查看 more detailed memory map,您拥有的 map 是抽象的。 ,您会注意到未映射内存的巨大差距。不包括映射的外部盒式ROM(等),将可用内存的每一部分加起来。您最终将分配超过 4MB 的空间,包括 RDRAM。另请注意,超过 0x80000000 的地址实际上是低地址的镜像,区别在于有些是直接映射的(物理内存),有些是 TLB 映射的(虚拟内存)。

0x00000000 - 0x7fffffff  KUSEG  TLB mapping
0x80000000 - 0x9fffffff KSEG0 Direct map, cache
0xa0000000 - 0xbfffffff KSEG1 Direct map, non-cache
0xc0000000 - 0xdfffffff KSSEG TLB mapping
0xe0000000 - 0xffffffff KSEG3 TLB mapping

另请注意,盒式内存映射到 0xb0000000。这在内存映射中没有明确显示。

关于memory - 如何在 N64 仿真器中构建内存映射?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1830146/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com