ferasbusiness666/ps3winlayer-architecture

GitHub: ferasbusiness666/ps3winlayer-architecture

PS3WinLayer 是一个 PS3-to-Windows 混合模拟器的架构与研究文档库,在模拟器核心实现之前先行定义子系统设计、模块契约和验证策略。

Stars: 1 | Forks: 0

# PS3WinLayer 架构 PS3WinLayer 是一个面向未来混合 PlayStation 3 模拟器与 Windows 转译层的架构和研究代码库。 该代码库目前不模拟 PS3 软件、不运行 PS3 游戏,也不提供固件、密钥、游戏文件或绕过说明。其目的是在模拟器核心存在之前,定义所需的技术模型、子系统边界、验证策略和实现契约。 ## 项目范围 PS3 软件无法像普通的 Windows 兼容性层那样进行转译。一款 PS3 游戏期望运行在具有 PowerPC PPU 的 Cell 处理器上,并拥有 SPE/SPU 向量处理器、显式 MFC DMA、分离的 XDR/RSX 内存、LV2 内核服务、Cell 库以及 RSX 命令流。Windows 并不直接提供任何这些 ABI 或硬件契约。 正确的长期模型是混合模拟与高级模拟的结合: ``` PS3 content or homebrew input -> loader, module manager, and virtual file system -> PPU PowerPC frontend: interpreter first, JIT later -> SPU/SPE execution layer with local store and MFC/DMA -> PS3 memory domains, endian helpers, MMIO, and protection model -> LV2 syscall HLE and Cell library HLE -> RSX command translation to Vulkan first, D3D12 later -> Windows platform services for display, audio, input, files, timers, and threads -> tracing, deterministic replay, compatibility reporting, and debugging tools ``` ## 本代码库不包含的内容 - 它不是一个可运行的模拟器。 - 它不宣称具备商业游戏兼容性。 - 它不是一个固件或 SDK 发行版。 - 它不是绕过 DRM、提取密钥、盗版或冒充 PSN 的项目。 - 它不是用于获取受版权保护内容的指南。 ## 首个可执行里程碑 开发应从合法自制软件和净室测试程序开始: 1. 核心结果类型、日志记录、配置和 VM 生命周期。 2. 带有测试的大端内存域。 3. 合法自制 ELF 加载。 4. 最小化的 PPU 解码器和解释器路径。 5. 简单自制程序所需的 LV2 syscall 存根。 6. SPU 本地存储和基础 SPU 解释器。 7. MFC get/put/tag 行为。 8. 基础的 `cellGcm`/`cellVideoOut` 路径。 9. 第一个渲染里程碑:通过 Vulkan 进行清屏和三角形绘制。 商业游戏支持仅为长期的兼容性目标,必须在合法途径下进行,使用用户自有的输入内容,且不附带任何受版权保护的捆绑材料。 ## 仓库结构图 | 路径 | 用途 | |---|---| | `docs/README.md` | 文档索引和阅读顺序 | | `docs/architecture/` | 跨子系统架构和模块所有权 | | `docs/cpu/` | PPU 解码器、解释器、未来 JIT、异常和验证 | | `docs/spu/` | SPE/SPU 执行、本地存储、MFC 通道、DMA 和时序控制 | | `docs/memory/` | XDR、RSX 内存、地址转译、字节序辅助工具、DMA 视图 | | `docs/graphics/` | RSX FIFO、`cellGcm`、着色器、纹理、渲染目标、Vulkan/D3D12 | | `docs/os-hle/` | LV2 syscall 和 Cell 库的 HLE 设计 | | `docs/audio-input-io/` | 音频、输入、虚拟文件系统和 Windows 平台抽象 | | `docs/scheduler/` | 线程、同步、时序、回放和保存状态协调 | | `docs/testing/` | 测试和验证策略 | | `docs/performance/` | 帧、调度器、DMA 和命令缓冲预算 | | `docs/research/` | 来源映射和安全研究过程 | | `docs/roadmap/` | 基于依赖关系的实现路线图 | | `diagrams/` | 所需架构流程的 Mermaid 图表 | | `assets/` | 原创生成的图表和参考资产策略 | | `references/` | 研究参考索引,不包含复制的文章文本或图像 | | `calculations/` | 详细的数值计算示例和预算说明 | | `src-contracts/` | 未来 C++ 实现的接口契约 | | `src/contracts/` | 为保持连续性而保留的早期头文件契约 | | `tests/spec-tests/` | 未来可执行架构和契约测试 | | `tools/` | 仓库验证工具 | ## 核心设计文档 - [系统架构](docs/architecture/SYSTEM_ARCHITECTURE.md) - [模块契约](docs/architecture/MODULE_CONTRACTS.md) - [PPU 设计](docs/cpu/PPU_DESIGN.md) - [SPU/SPE 设计](docs/spu/SPU_SPE_DESIGN.md) - [内存设计](docs/memory/MEMORY_DESIGN.md) - [RSX 图形设计](docs/graphics/RSX_GRAPHICS_DESIGN.md) - [OS/HLE 设计](docs/os-hle/OS_HLE_DESIGN.md) - [调度器与同步](docs/scheduler/SCHEDULER_SYNC_TIMING.md) - [性能预算](docs/performance/PERFORMANCE_BUDGETS.md) - [验证策略](docs/testing/VALIDATION_STRATEGY.md) - [术语表](docs/GLOSSARY.md) - [Codex 交接](docs/CODEX_HANDOFF.md) ## 法律与研究边界 研究必须使用公开文档、净室测试、合法的自制软件以及在法律允许范围内的用户提供内容。请勿将受版权保护的文章文本、书籍摘录、SDK 材料、游戏资产、固件文件、私钥或专有图表复制到本代码库中。 参见 [法律边界](docs/legal/LEGAL_BOUNDARIES.md)、[研究准则](docs/research/RESEARCH_GUIDELINES.md) 和 [来源映射](docs/research/SOURCE_MAP.md)。
标签:Cell处理器, D3D12, DMA, DNS解析, ELF加载, JIT编译, PowerPC, PPU, PS3模拟器, RSX, SPU, Vulkan, Windows平台, 云资产清单, 图形渲染, 开源项目, 指令集架构, 混合模拟, 游戏机模拟, 生成式AI安全, 系统架构, 翻译层, 虚拟文件系统, 虚拟机, 解释器, 逆向工程, 高层模拟