你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。

【中文文档】AN4701_STM32F4系列程序读出保护的专有代码

[复制链接]
eefishing 发布时间:2019-5-23 13:00
前言
软件提供商开发了复杂的中间件解决方案(知识产权代码,或IP-Code),保护它们对于微控制器而言至关重要。
为了应对这一重要需求,STM32F4xx MCU具有以下功能:
• 读保护(RDP):防止进行读取操作
• 写保护:防止进行不需要的写入或擦除操作
• 专有代码读取保护(PCROP):防止进行读写操作
本应用笔记对这些闪存保护技术进行了说明,重点是专有代码读取保护(PCROP),并提供了PCROP保护的基本示例。
本文档随附的X-CUBE-PCROP固件封装包包含了PCROP示例的源代码,以及运行示例所需的所有固件模块。
本应用笔记必须与表 1中所列的参考手册一起阅读。这些文档及其对应的数据手册均可在www.st.com上获取。
表1. 参考文档
1.png
1 读保护(RDP)
读取保护是全局闪存读保护,可保护嵌入式固件代码,避免复制、逆向工程、使用调试工具读出或其他方式的入侵攻击。该保护应在二进制代码载入嵌入式闪存后,由用户进行设置。

1.1 读保护级别0
级别0是默认级别,闪存完全打开,可在所有引导配置(调试功能,从RAM、从系统内存引导加载程序或从闪存启动)下进行全部内存操作。这种模式下,没有保护(主要用于开发和调试)。

1.2 读保护级别1
激活读保护级别1时,即使是从SRAM或系统内存引导加载程序来启动,也不能使用调试功能(如串行线路或JTAG)访问(读取,擦除和编程)闪存或备用SRAM。
但是,当从闪存启动时,允许用户代码访问该内存和备用SRAM。
对受保护的闪存进行任何读取请求都会产生一个总线错误。
将RDP选项字节重新编程为级别0,可禁用RDP级别1保护,这会导致整体擦除。

1.3 读保护级别2
激活RDP级别2时,级别1所支持的所有保护均有效,芯片受到全面保护。RDP选项字节和所有其他选项字节都会被冻结,不能再修改。JTAG、SWV(单线查看器)、ETM 和边界扫描被禁用。
从闪存启动时,用户代码可以访问内存内容。但是,不再能从SRAM或从系统内存引导加载程序启动。
这种保护是不可逆的(JTAG熔断),所以不能回到保护级别1或0。
表 2描述了从内部闪存启动,或在调试,或从SRAM或系统内存引导加载程序启动时,对闪存、备用SRAM、选项字节和一次性可编程字节(OTP)的不同访问。
.............

想了解更多,请下载原文阅读
收藏 评论0 发布时间:2019-5-23 13:00

举报

0个回答

所属标签

相似技术帖

关于
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
STM32N6 AI生态系统
STM32MCU,MPU高性能GUI
ST ACEPACK电源模块
意法半导体生物传感器
STM32Cube扩展软件包
关注我们
st-img 微信公众号
st-img 手机版