工具/软件:
OptiFlash、XIP、OTFA、电子保险丝
- 是否可以对 OSPI 闪存进行分区、例如其中的一部分可通过 OptiFlash /XIP 访问、另一部分可由软件免费使用? 理想情况下、我们希望使用相同的 OSPI 闪存来存储固件和文件系统、我们假设 OptiFlash(由 RL2)对闪存执行的缓存如果其作用于存储文件系统的闪存、可能会产生不利影响。 最多情况下、这会降低闪存中代码执行的质量、因为缓存将包含文件系统中的扇区;最糟糕的是、除非我们在访问文件系统时仔细执行 RL2 上的缓存维护操作、否则这会导致使用文件系统出现问题。
- 在 TRM 的“13.3.2.2.7.1.2 不支持的功能“部分下、提到“OTFA 不允许并发活动读取和写入、在切换时间 (sic) 之前必须处于空闲状态“。 在上述讨论的场景中、在同一 OSPI 闪存中使用文件系统时、这对性能有什么影响?
- 当对 MAC(例如 AES-GCM)使用任何加密模式来加密外部闪存时、都会使用一些存储器来存储 MAC。 相反、OTFA 会执行自动存储器地址转换(如“13.3.2.2.8.5 存储器地址转换“中所述)来获取数据。 结果是数据的实际地址远低于 CPU 请求的地址。 我们假设、对于闪存擦除操作、软件必须自行执行地址转换、以确保写入的数据将在擦除的扇区内。 该假设是否正确?
- OTFA 使用的 AES 内核是否专用于 OptiFlash? 我们想知道是否可以同时使用 HSM 安全服务和 OTFA、而不出现性能问题、或者存在任何相关问题。
- 从存储器映射中、我们可以看到 eFuse 区域位于 0x53600000、大小为 1KB。 不过、大概可以使用其中的一些位来配置多个引导设置、例如 dual_core_boot_enable、dual_core_switch_disable、软件版本、电源正常模块的修整值等 硬件和 RBL/HSM 使用多少个位? 软件是否可以利用 eFuse 区域的某些部分来存储密钥和其他不可更改的数据?
ROM 引导加载程序
- 在“5.5 冗余引导支持“部分中、有一条注释指出“[成功【成功】引导的闪存映像偏移地址在地址 0000x84100 (sic) 中可用“。 我们推断、从 OSPI(位于 R5SS0_CORE0_TCMB_RAM 中)成功引导后、我们可以读取四个字节 、即[00 00 00]、[00 00 02 00]、[00 04 00]或[00 00 06 00](小端字节序值 0、0x20000、0x40000、0x60000)、具体取决于用于引导的区域。 这种理解是否准确?
- 在同一节中、注释还说明 SBL 的最大映像大小为 256KB(支持冗余映像)。 但是、上表中列出的地址 (5-11) 相隔 128KB。 由此、我们了解到、当使用 128K 及以下的 SBL 映像时、可以使用 4 个副本、但当使用>128KB 的映像时、只有两个副本可用。 这个结论正确吗?
此致