解锁 PSP 的双核架构
Unlocking the PSP's Dual Core Setup

原始链接: https://wololo.net/2026/06/16/unlocking-the-psps-dual-core-setup/

尽管索尼官方将 PSP 宣传为单核系统,但开发者 m-cid 近期揭示了其隐藏的双核架构。该掌机配备了一个媒体引擎(ME)以及一个被称为虚拟移动引擎(VME)的神秘协处理器。 此前,索尼将 ME 的访问权限仅限于内核,主要用于多媒体解码。这种硬件锁定策略很可能是为了方便未来的硬件迭代,但也严重限制了开发者。通过开发易于访问的新库,m-cid 现在让自制软件社区能够绕过这些限制。 事实证明,ME 和 VME 是性能优化的强大工具。值得注意的是,VME 提供了硬件加速的 64 位整数运算,这比 PSP 原生的 32 位 CPU 有了显著提升。这些突破目前已被应用于《完美黑暗》(Perfect Dark)移植版等项目中,释放了提升模拟器性能和增强自制程序的潜力。目前,相关文档和工具已向开发者开放,供他们将这些曾经鲜为人知的硬件集成到自己的项目中。

Hacker News 新闻 | 过往 | 评论 | 提问 | 展示 | 招聘 | 提交 登录 解锁 PSP 的双核架构 (wololo.net) 20 分点 由 msephton 2 小时前发布 | 隐藏 | 过往 | 收藏 | 讨论 帮助 考虑申请 YC 2026 年秋季批次!申请截止日期为 7 月 27 日。 准则 | 常见问题 | 列表 | API | 安全 | 法律 | 申请 YC | 联系 搜索:
相关文章

原文

Contrary to what Sony wanted everyone to believe, the PSP is not actually a single core setup, it is in fact a dual core setup, and PSP Guru m-cid is here to break it open.

Creator of PSP True Overclocking (one of the best features ever made in my not-so-humble opinion) and VSHGU (which still has untapped potential), m-cid has been restless unlocking the mysteries of the PSP’s Second Core, known as ME (short for Media Engine), and its incredibly rare co-processor VME (short for Virtual Mobile Engine), and what’s most important is the creation of new libraries that developers can make use of to enhance and boost the their homebrew with easy and enough abstraction to allow for seemless coding.

Knowledge of the PSP’s second MIPS core, ME, wasn’t exactly 100% a secret, ancient devs of the PSP scene (such as crazyc from ps2dev forums) had already done much tinkering, enough to execute code, but with several limitations due to lack of new discoveries such as a hardware spinlock. These new discoveries have been converted into convenient libraries and lots of very technical documentation that I will be linking at the end of the article for those curious enough.

In the world of Official Firmware (non-modified Sony’s original code), the Media Engine was inaccessible from user-mode, only the kernel could talk to and execute code on the ME, which was used mainly (as its name implies) for multimedia (audio and video) decoding (such as MP3, AT3, JPEG, MPEG, and other formats the PSP supports). Retail games could only ever issue system calls (such as “decode this mp3 audio packet”) and Sony’s kernel was the one who handled everything related to the ME. It was clear from the start that Sony’s decision for hiding the ME behind kernel and only exposing pre-built functionality was to allow for further PSP revisions to drop the hardware in favor of a different one (similar to what they did to the PS2 IOP, but in that case it made later PS2s have less compatibility with PS1 and some PS2 games due to the IOP being fully accessible and usable by any retail game). While this never happened on the PSP itself, it did happen on the PS Vita, notorious for lacking the Media Engine, which makes it incompatible with PSP homebrew that make use of the ME (such as emulators).

An even weirder and much less documented piece of hardware that’s also been investigated is the VME, or Virtual Mobile Engine. The VME acts as a co-processor for the ME, and it’s what grants it the necessary power for real-time decoding of audio and video data. The VME is composed of various Processing Elements (PEs) connected by a data path, working as a microscopic network of PEs, all of which is configurable. This co-processor also seems to be useful for hardware-accelerated 64-bit integer math (which the main PSP CPU can’t do, as it’s a 32 bit MIPS core). Technical details about this co-processor is still being discovered and documented and real use-cases (such as helping get that extra few FPS on an emulator or port) are still being worked on.

Meanwhile, not everything are words and complex technical details, actual use cases for the ME (and most importantly, the easy-to-use libraries developed) have been successfully integrated into projects such as the Perfect Dark port (which we will talk about on another post). I will leave you with a bunch of very important and interesting links if you want to dig deeper into this topic:

https://github.com/mcidclan/psp-media-engine-custom-core/

https://github.com/mcidclan/psp-media-engine-safe-task

https://github.com/mcidclan/psp-media-engine-cracking-the-unknown/blob/main/the-vme-bitstream-and-datapath.md

联系我们 contact @ memedata.com