Memory Map: Difference between revisions
| Revision as of 01:40, 23 October 2026 RemmyLee (CONTEXT.md: route images and backups) | Revision as of 02:22, 23 October 2026 RemmyLee (Hardware and system software pages from the Sony manuals) | ||
| Line 1: | Line 1: | ||
| + | --- | ||
| + | title: Memory Map | ||
| + | type: component | ||
| + | summary: Logical and physical address spaces of the PlayStation CPU. | ||
| + | category: Hardware | ||
| + | --- | ||
| + | |||
| + | ## Overview | ||
| + | |||
| + | The space a program handles is the logical space. A logical address is 32 bits.[^hw24] | ||
| + | |||
| + | Logical space maps onto physical space several times over. A physical address is an address in the installed memory device.[^hw24] | ||
| + | |||
| + | Access to a logical address with no physical memory behind it raises a Bus Error exception.[^hw24] | ||
| + | |||
| + | The R3000 TLB is not present, so the mapping is fixed.[^hw23] | ||
| + | |||
| + | ## Physical Memory | ||
| + | |||
| + | Physical memory has a 64MB system area. Main memory ends at 0x1FFFFF on the PlayStation and at 0x7FFFFF on the developer system.[^hw23] | ||
| + | |||
| + | ## Segments | ||
| + | |||
| + | Logical space is divided into the following segments: | ||
| + | |||
| + | Table: Memory maps | ||
| + | |||
| + | | Logic Space | Segment title | Cache | | ||
| + | | --- | --- | --- | | ||
| + | | 0x00000000 to physical space MAX | A | Effective | | ||
| + | | 0x1F800000 to 0x1F8003FF | S | Not effective | | ||
| + | | 0x1F801000 to 0x1FBFFFFF | X | Not effective | | ||
| + | | 0x1FC00000 to 0x1FC7FFFF | P | Effective | | ||
| + | | 0x80000000 to 0x80000000 + physical space MAX | B | Effective | | ||
| + | | 0x9FC00000 to 0x9FC7FFFF | Q | Effective | | ||
| + | | 0xA0000000 to 0xA0000000 + physical space MAX | C | Not effective | | ||
| + | | 0xBFC00000 to 0xBFC7FFFF | R | Not effective | | ||
| + | |||
| + | The Cache column refers to the I-cache. A segment is a block of the R3000 memory space and differs from a segment of the 8086 series.[^hw24] | ||
| + | |||
| + | ## Devices | ||
| + | |||
| + | The segments map onto the following devices: | ||
| + | |||
| + | Table: Segments and devices | ||
| + | |||
| + | | Logic Space | Corresponding Logic Memory Segment | Device | | ||
| + | | --- | --- | --- | | ||
| + | | 0x00000000 to MAX | A+B+C | Main Memory (RAM) | | ||
| + | | 0x1F800000 to 0x1F8003FF | S | Scratchpad (D-cache) | | ||
| + | | 0x1F801000 to 0x1FBFFFFF | X | Hardware Register | | ||
| + | | 0x1FC00000 to 0x1FC7FFFF | P+Q+R | Boot ROM | | ||
| + | |||
| + | Sony does not disclose the addresses inside the OS ROM. Access to the ROM is prohibited.[^hw23] | ||
| + | |||
| + | The [CPU](/hardware/cpu/) page describes the caches and the scratchpad. | ||
| + | |||
| + | ## References | ||
| + | |||
| + | [^hw23]: Sony Computer Entertainment Inc. PlayStation Hardware. August 1998. Page 2-3, Figure 2-1. | ||
| + | [^hw24]: Sony Computer Entertainment Inc. PlayStation Hardware. August 1998. Page 2-4, Figure 2-2, Table 2-2. | ||