摘要:本文介绍了瑞萨芯片的器件生命周期管理(DeviceLifecycleManagement)中OEM状态与保护级别(PL)的关系。芯片出厂时为CM状态,通过初始化可切换至OEM状态进行开发调试。PL级别(PL2/PL1/PL0)决定了调试接口和Flash操作的权限开放程度,其中PL2权限最高,PL0最严格。文章详细对比了三者的调试权限、Flash操作权限及适用场景,并阐述了PL级别转换的规则:高到低无限制,低到高需满足临时验证级别要求。最后提供了使用RFP工具或RDPM将设备初始化为OEM_PL2状态的具体操作步骤。
目录
一、OEM 状态与 PL 的核心关系
(1)OEM 状态:
(2)PL(Protection Level):
二、OEM_PL2/PL1/PL0 的具体含义与差异
三、三者的核心区别与关键规则
1. 核心区别:权限与适用阶段
2. 关键规则:PL 级别的转换条件
初始化方法
方法一:使用RFP工具的"设备初始化"功能
方法二:通过RDPM和板载J-Link调试器恢复出厂设置
方法二操作步骤
Device Lifecycle Management(器件生命周期管理)的简称
一、OEM 状态与 PL 的核心关系
(1)OEM 状态:
瑞萨芯片在用户开发阶段的核心状态(从出厂 “CM(Chip Manufacturing) 状态” 切换而来,通过 RFP 工具初始化或串行编程擦除实现),是开发者编写、调试、验证代码的主要阶段。
每个芯片在出厂时都是CM状态。CM状态下可以调试Secure和Non-Secure资源,访问权限最高。但此时Serial Programming(SCI Boot,USB Boot和SWD)无法访问code flash和data flash。
(2)PL(Protection Level):
存储在芯片非易失性存储器中的 “永久保护级别”,决定芯片调试接口(SWD/JTAG 等)、Flash(代码 / 数据闪存)的操作开放程度;同时搭配 “AL(Authentication Level,初易失性临时验证级别,上电始化为 PL 值)” 控制 PL 级别的转换条件。
二、OEM_PL2/PL1/PL0 的具体含义与差异
三者的核心区别在于权限开放程度(从高到低:PL2→PL1→PL0),分别对应开发的不同阶段,具体如下表所示:
| OEM_PL2 | 最高开放度的开发状态 | DBG1(开放非安全区调试,安全区可通过授权访问) | 允许操作全部 Flash(代码 Flash + 数据 Flash) | 开发初期:硬件功能验证、底层驱动编写、安全区代码调试(如医疗数据加密算法开发) | 权限最开放,支持全功能开发;初始化操作(全擦芯片)无额外限制(除非主动禁止) |
| OEM_PL1 | 中度限制的开发状态 | DBG1(仅开放非安全区调试,安全区完全锁定) | 允许操作非安全区 Flash,安全区 Flash 受限 | 开发中期:应用层功能调试(如传感器数据采集、AI 模型部署)、非安全区代码优化 | 平衡 “开发灵活性” 与 “安全防护”,防止安全区核心代码被误修改 |
| OEM_PL0 | 最高安全级的锁定状态 | DBG0(完全禁用调试接口,无法读取 / 修改任何代码) | 禁止所有串行编程 / 擦除操作(Flash 完全锁定) | 开发后期:量产前准备(如最终代码烧录后)、防止核心代码泄露或恶意篡改 | 权限最严格,芯片进入 “准量产状态”;仅能通过 RMA 流程(故障分析)解锁,普通开发无法操作 |
在OEM_PL1状态下进行开发时的开发流程

以下为翻译版

三、三者的核心区别与关键规则
1. 核心区别:权限与适用阶段
权限开放度:PL2(全开放)>PL1(半限制)>PL0(全锁定),核心差异体现在 “安全区访问”“调试接口开放”“Flash 操作” 三个维度(PL0 完全禁止调试与 Flash 操作,PL2 无限制)。
适用开发阶段: (1)PL2:初期硬件验证、安全算法开发(需访问安全区); (2)PL1:中期应用功能调试(仅需非安全区); (3)PL0:后期量产前锁定(代码最终固化,防止篡改)
2. 关键规则:PL 级别的转换条件
PL 级别可根据开发需求切换,但需遵循 “权限兼容” 原则:
- 从高到低转换(PL2→PL1→PL0):无任何限制,可直接通过 RFP 工具或寄存器配置完成(例:PL2 调试完成后,直接切换到 PL1 限制安全区访问)。
- 从低到高转换(PL0→PL1、PL0→PL2、PL1→PL2):需满足 “当前 AL(临时验证级别)≥目标 PL 值”(AL 上电初始化为当前 PL 值,需通过授权操作提升 AL,如输入 AL2_KEY)。例:从 PL0(AL=0)切换到 PL2,需先将 AL 提升至 2,再执行转换。
四、如何切换到OEM_PL2(基于e2stdio EK-RA8M1)
将设备初始化为OEM_PL2状态。此操作会清除所有未锁定的闪存内容。您可以使用RDPM或RFP工具完成初始化。该步骤特别适用于设备当前处于OEM_PL1状态或存在暂时锁定的闪存区块的情况。
初始化方法
方法一:使用RFP工具的"设备初始化"功能
方法二:通过RDPM和板载J-Link调试器恢复出厂设置
注意:两种初始化方法效果相同,以下重点说明方法二。
方法二操作步骤
连接准备
- EK-RA8M1跳线设置:
- 闭合J6
- 打开J9
- 保持其他跳线为出厂默认状态
- 使用USB数据线连接J10与开发电脑
开发环境注意事项
- IAR EWARM和Keil MDK没有"构建变量"机制
- 需要手动将头文件共享给非安全项目
- 此操作已在随附的示例项目中实现
2.打开Renesas Device Partition Manager

3.配置初始化(Initialize device back to factory default)和连接类型(Connection Type:)

在MCU初始化完成后,根据所选择的IDE进行项目的导入与验证工作
注意:如果使用 J-Link 作为连接接口,在进行调试之后要使用 RDPM 功能的话,必须先对开发板进行重启操作。
