支持平台
RME 面向完整的计算光谱,但项目明确区分已测量、已交付和进行中的部分。 本页保持这条界线清晰可见。
微控制器
微控制器支持要求 MPU(内存保护单元)。在 MCU 上,RME 通过 RVM 使用:RVM 是用户态库和 工程生成器,也可以在同一平台上承载其它裸机应用或 RTOS。
| 要求 | 数值 |
|---|---|
| 绝对最小 | 64 KB ROM / 20 KB RAM(STM32L071CB,Cortex-M0+) |
| 实用起点 | 128 KB ROM / 64 KB RAM |
| 保护 | 必须有 MPU |
| 核心 | 仅单核;多核 MCU 不在范围内 |
| 工具链 | GCC、Keil uVision(ARMCC/ARMCLANG) |
64 KB / 20 KB 是能跑完基准测试的最小概念验证,其中还包括一个虚拟化的 RMP 基准。STM32G0B1CBT6 这类芯片已经远高于门槛;建议从 128 KB / 64 KB 起步做 真正有用的系统。
应用处理器
应用处理器要求 MMU。有意义的系统建议至少 32 MB ROM / 32 MB RAM。 这一侧仍在进行中:各移植处于不同阶段,微处理器性能表仍为 TBD。
| 家族 | 保护 | 示例 | 状态 |
|---|---|---|---|
| ARMv7-A | MMU + GIC | XC7Z020(Cortex-A9) | 有移植;单核;LGPL v3+ |
| RV64 | Sv39 | QEMU-VIRT(RV64GC) | 有移植;需要同级初始化镜像 |
| x86-64 | MMU | 服务器配置 | 进行中;没有可启动镜像 |
| C66x | MMU | TMS320C6678 | 未成熟 |
ARMv7-A 移植及部分头文件标注为 LGPL v3+,与仓库整体的 Unlicense/公有 领域不同。分发 A7A 二进制前请核对该许可证。
架构总览
| 家族 | 目录 | 保护 | 示例芯片 | 工具链 |
|---|---|---|---|---|
| ARMv6-M | A6M | MPU | STM32L071CB、STM32G071RB | GCC、Keil |
| ARMv7-M | A7M | MPU | STM32F405RG、F429ZI、F767IG、H743ZI | GCC、Keil |
| ARMv7-A | A7A | MMU | XC7Z020 | GCC |
| RV32 | RV32P | PMP | CH32V307VC | GCC |
| RV64 | RV64V | Sv39 | QEMU-VIRT | GCC |
| x86-64 | X64 | MMU | 服务器配置 | GCC |
| C66x | Immature/C66X | MMU | TMS320C6678 | CCS |
构建工程
仓库只提供少量工程树,而不是每颗芯片一个工程。微控制器工程通过 RVM 生成, 因为工具链、板卡和客机配置知识都在那里。
| 工程 | 目标 | 说明 |
|---|---|---|
VSCODE-GCC-X64 | x86-64 | 脚手架;当前镜像不可启动 |
GCC-RV64V | QEMU-VIRT RV64 | 需要同级的 M7M03_Anomalocaris 初始化镜像 |
MFGCC-XC7Z020 | Zynq-7020 | ARMv7-A,单核 |
Immature/CCS-TMS320C6678 | C66x DSP | 未成熟 |
Immature/ECLIPSE-* | MCU / x64 / Zynq | 实验性 Eclipse 工程 |
Immature/HIGHTEC-TC275TP | AURIX TC275 | 实验性演示 |
对采用意味着什么
- 今天可用的 MCU 路径: 用 RVM 为带 MPU 的 Cortex-M 或 RV32 生成工程; 64 KB / 20 KB 是下限,128 KB / 64 KB 是推荐值。
- 应用处理器: 把移植当作研究和 bring-up 工作,而不是生产发行版。RMC 容器层仍是概念设计。
- 不支持多核 MCU: 每个核一个 RME 实例是模型,项目不会假装相反。
性能页把已测量的 MCU 数字与仍为 TBD 的微处理器表分开。
