从负载选择平台:先比较能承担的系统责任¶
“换一颗更快的芯片”常出现在吞吐不足或内存吃紧以后。要判断它是否有效,先画出业务的数据路径,分清当前限制来自计算、总线、队列、设备等待还是软件支持。主频与接口标称速率只能提供候选方向。
本章讨论选型方法,不指定实际芯片型号。可运行的例子采用异步 SDK,完整额度计算见资源预算。
先说明本次能改变什么¶
系统方案可能包含主控 SoC/MCU、无线芯片或模组、RAM/Flash、总线、OS、BSP、SDK,以及单芯片或双芯片协同。现有产品可能已经锁定一部分器件、板形或协议,把可变项和固定项写出来,候选才具有可比性。
例如“主控有限 RAM,连接独立无线芯片”仍缺少几个重要输入:包长分布、同时工作的功能、持续与突发吞吐、总线时延、待机要求、恢复预算和交付时间。仅有“支持 Wi-Fi”无法推导内存或控制器需求。
把需求写成能测量的约束¶
| 约束 | 写清什么 | 常见遗漏 |
|---|---|---|
| 功能 | 工作模式、并发组合和可降级功能 | 单项 demo 通过,被当成混合负载支持 |
| 吞吐 | 业务有效字节、方向、包长、持续时长 | 用 PHY 或总线标称速率替代业务吞吐 |
| 时延 | 起终点、分位/最坏值、异常范围 | 把局部执行时间当端到端时延 |
| 内存 | 可用 RAM/Flash、峰值、预留与 DMA 区 | 忽略 OS、栈、队列和对齐 |
| 功耗与热 | 测量点、状态占比、温度和持续负载 | 用芯片睡眠电流推整机续航 |
| 工程与维护 | 工期、工具、许可、支持周期、替代成本 | 只比较芯片单价 |
每项附单位、来源、负责人和验证方法。没有依据的数字保留为未知,并安排确认日期;未知值填成零会让总账看起来成立,却使后续决策失去约束。
先淘汰不满足硬约束的方案¶
考虑两种候选结构:较小 MCU 加独立无线芯片,以及 Linux SoC 加独立无线芯片。下表列比较内容,空白需要真实型号、需求和测量填入。
| 比较项 | MCU + 无线芯片 | Linux SoC + 无线芯片 |
|---|---|---|
| 软件路径 | RTOS、BSP、明确裁剪的协议和功能 | Linux 驱动、网络栈、用户态服务 |
| 内存账 | 任务栈、固定池、算法与 BSP | 内核、服务、进程、驱动与页表 |
| 设备边界 | MCU port、ISR、cache/DMA 与总线完成 | 驱动、控制器、DMA、进程与设备恢复 |
| 功耗验证 | 实际睡眠、唤醒和任务占比 | 服务常驻、设备 PM、唤醒和热稳态 |
| 开发与维护 | port/BSP、资源配置和支持组合 | 镜像、依赖修复、驱动版本与升级 |
| 替代成本 | 改板、port、驱动和时序再验证 | BSP/驱动、镜像和功能回归 |
两种结构都有成立条件。必须运行的功能、RAM 上限或真实总线吞吐违反硬约束时先淘汰;剩余方案再比较余量、功耗、成本和交付风险。加权结果不能掩盖关键未知项。
用最小 PoC 验证最危险假设¶
PoC 直接针对会推翻方案的假设。例如:
- 目标工具链运行实际算法和最坏输入,记录周期、栈与内存。
- 用目标总线、驱动和包长测持续有效吞吐,并加入其他业务竞争。
- 复现断连、缓慢完成和 reset,核对借用 buffer、晚到完成和恢复时长。
- 按产品温度与负载运行到热稳态,核对降频以后的性能与功耗。
每次保留板修订、SDK、编译选项、输入和原始输出。容器里的 SDK 回显和 QEMU 软件设备实验可验证部分软件契约;真实总线、无线、供电与热需要板上证据。硬件边界
把选择写成可撤销的决定¶
一页结论包含:选定方案、备选、淘汰理由、关键证据、剩余未知、确认日期和切换成本。写清哪些结果会触发回退,例如持续吞吐不足、峰值 RAM 越界、供应承诺失败或恢复无法达到要求。
冻结以后新增功能或替换器件,要重新评估对应约束、软件改动和回归范围。对同一可运行 SDK,逻辑在途额度 4 与 16 就能形成一次小型方案比较;该例见资源预算。