(18) -系统设计之DCSM 双代码安全模块

+荐课 提问/讨论 评论 收藏
  • 本课程为精品课,您可以登录eeworld继续观看:
  • (18) -系统设计之DCSM 双代码安全模块
  • 登录
最后我们来看看2837X 它独有的双代码安全模块 DCSM 它的保护性能更好 它能够有效阻止 其他的一些黑客手段 来获取我芯片内部保护区域的数据和代码 也就是说 flash和RAM这些受保护区域的 数据不能通过[听不清]或者黑客程序 来访问到 那么针对F2837X有两个 安全区域 区域1和2 针对2837XD的话 每个CPU有一个区域 针对2837XS的话 有两个区域 每个区域有自己的专属的OTP OTP里面保存我的安全设置 编译地址啊 我的密码啊等等 这两个区域都能给线上的flash RAM CLA等等提供保护 也就是我的Flash或者RAM区块 可以自由分配到区域1和2保护 只有在同一个区域里面的代码或者数据可以互相访问 针对受保护存储器里面的代码 只能从保护区域中读取数据 也就是说 如果我的Flash A分配到RAM1里面 我的LS0分配到RAM2里面 从FLASH1访问LS0 这个RAM空间的数据是不可以的 只有LS0也位于区块里面 那就可以访问该数据 我们看看两个区块如何选择 针对刚才说的flash RAM 等等都可以自由分配到 区域1和2里面 我们可以通过这些区域的控制寄存器 来设置放在哪个区域 还是强调一点就是说 只有本区块的中的代码 或者数据才能互相访问 外部未加密的区域 或者区域2是不能访问区域1里面的东西的 我们看看密码保护 传统的C2000芯片都有128字节的加密 针对2837X 我们有两个password 就是两个16位的 每个区域都有自己128位的保护制 而且这个保护制是放在专用的OTK里面的 密码保护有三种权限 一种是数据和程序的读取 假如有这密码保护的话 只能是同一个区块 能够进行数据或程序的读取 第二个是CSM的权限 如果有了这个密码保护的话 CSM是不能访问这些加密区域的 还有我们的程序取址 是不受密码影响的 它是从芯片内部取址 因此不受密码保护的影响 在设置128字节的密码制的时候 需要注意一点 不能设置为全零 如果四个字都是全0的话 这个芯片会永久消失 比如四个字都是1的话 那就是芯片没有加密 一个芯片最开始 拿到手的话 是[听不清]的话 可以随意使用烧结程序 在程序里面 我们可以设置这个加密制 比如第一次烧完程序后 有这个加密密码的话 再次烧结程序的时候 第一步要把密码匹配上 进行解密 然后才能进行拆除烧结等工作 因此 建议在程序开发过程中 这个密码制是不需要设置的 程序开发完成 转到生产的时候 必须设置这个密码制 我们再来看看每个区块自己对应的OTP 在这个OTP里面 主要是存放我们的安全设置 以及我们的128字节的字 前面的这些安全设置 就是我们的分配 flash RAM这些东西分配到本区块还是另外一个区块 的设置 那么这个表格我们怎么看 首先我们看左边这些 最左侧的zx-link链接 链接的指针 由于我们所有的东西都是放在OTP里面的 OTP只能一次编程 所以我们要做到多次修改的话 必须要放多个保存地址 这个zxlink的话 是指向我每次保存的地址 比如说 我所有的字 第一个是放在第一个链接地址 也就是ox020的地址 这里设置完之后 我们要重新设置一次的话 我们不能放在同一个区域里面 我只能放在下一个区 0x030 我把link地址的最后一位改成0 因为在OTP里面 所有的最开始的全是1的话 编写一次 把1改成0 所以我们是通过最后面的这个0 来表示我的link地址不一样的 那么我们这个怎么看呢 前面是我的链接地址 中间是我的偏移量 最后是针对这个地址的偏移 举个例子 我这个password 第一次烧结 这个固定的话 就是0x020 是RAM的配置值 0x0202的话 是我的flash选择的配置值 0x0204是我的另外一个RAM的配置值 等等 这个是一个偏移量 这个地址 是另外一个总体的偏移量 我们在下个表格中看到 我们看这个表 前面这个表是通过Link 指针来表示它指向的地址 比如第一个 我三个连接地址是一样的话 比如这个地方是0x78010 然后加上偏移量 0200 0202 0204等等 如果把这个零往前移动一位 我就是0x78030 然后加上偏移量 比如0300 0302 也就是这两个表格要统一起来 这个地方 我们必须保证地址有效的话 123这三个链接地址必须是一样的 这个地方的020 还是030 一直到UF0 具体的指向由这三个来确定 我们来看看芯片的加密和解密 如果我的128字节 密码已经上锁的话 芯片复位后 我们立即进入加密状态 也就是保护状态 这个时刻 我们使用M1M0 访问权限 那需要重新对FLASH操作 读取数据的时候 必须要先解密 解密的过程 我首先要 虚拟去读我的password 就是我的密码区 四个字节 然后将正确密码写入CSMKEY 这个寄存器 写入正确的字节后 我们把这个密码打开 就能进行正常的操作 在加密时 我们要注意几点 不要把所有密码写成0 这样会永久锁死 第二 不要将所有密码设成1 这样就相当于没有加密 空的芯片的状态 还要记住一点 不受保护的RAM代码是无法访问受保护区域的数据的 还有最后给大家一个建议 不要将密码放到代码中 在我们的CCS里面可以进行加密和解密操作 是在我们的烧结插件上 进行操作 最后 我们看看解密的过程 解密匹配的过程是非常简单 在开始的时候 我们在复位后对CSM的密码区域 进行虚拟读入 如果读取这个字都是零的话 就永久锁死 如果不为零的话 芯片是加密的 把正确的字节写入CSMKEY寄存器里面 假如正确的话 就解开密码 假如password全部是1的话 芯片没有加密 就进行正常的操作 这个是CSM密码区解密的过程 那么综上所述 我们的双代码安全模块 其实是两个区域模块 两个128字节的保护 然后每个区块用OTP来配置 设置它的密码区 以及它的密码等等 记住一点在程序开发过程中 可以不加密 在程序开发完到生产时 必须加上密码保护 有效保护芯片内部的程序代码以及数据 最后一个LAB10主要是将数据放到我的FLASH 中 可以调到我的RAM中运行 然后用CLA来读取代码等等 这个试验大家可以参考我们的 试验的教材 好 谢谢大家
课程介绍 共计28课时,4小时27分22秒

C2837x入门指南

TI C2000 MCU PWM F2837xD ADC DAC DMA CLA C2837x CMP SDFM CAP QEP c28x

F2837x系列的最新 C2000™ Delfino™ 32 位 F2837xD 微控制器 (MCU),为工业实时控制实现最新创新,并设定了全新性能标准。这些最新 MCU 支持双核 C28x 处理功能与双实时控制加速器(也称为控制律加速器或 CLA),可提供 800 MIPS 浮点性能,从而可帮助设计人员为计算要求严格的控制应用开发低时延系统。此外,设计人员还可通过将多个嵌入式处理器整合在单个 MCU 中以降低复杂性,充分满足高级伺服驱动器、太阳能中央逆变器以及工业不间断电源 (UPS) 等需要实时信号分析的应用需求。

推荐帖子

【MSP430共享】MSP430的视频教程
觉得讲得还可以,基本上从入门到中级都有了。。。       SOSO有没有办法上传大点的附件啊。。。。。这个视频教程每个都有100来兆。。。。...
youki12345 微控制器 MCU
关于rom.h文件的问题
我在写初始化的一些函数,但是编译的时候提示ROM_XXXXX这些函数未声明。Error[Li005]: no definition for "ROM_GPIOPinTypeUART" [referenced from E:\Projects\ARM M3 Test\Debug\Obj\main.o]   rom.h文件已经加进去了,但是后来发现好像是条件编译的问题。文件里有这样的语...
ultrabenz 微控制器 MCU
ADS1298的常见问题
本帖最后由 dontium 于 2015-1-23 11:21 编辑 ADS1298 的常见问题1、 问:我想使用不带 MMB0 的 ADS1298ECGFE EVM,这是否可能?答:是的,完全没问题!不过应首先考虑到以下几个方面:- 电路板电源ADS1298ECGFE 板的电源来自 10 引脚双排插座 J4。通过 MMB0 连接头 J5,可将 +5V、+3.3V 以及 +1.8V 交付给ADS...
模拟IC 模拟与混合信号
omapl138环境搭建
大家好,本人正在搭建omapl138的开发环境。 现在搭建的环境是WIN7 32位操作系统,CCS5.1,仿真器用的是北京瑞泰科技的ICETEK-XDS560U-PLUS。ARM端要跑裸机,DSP做算法。 我已经实现了DSP端控制开发板上LED,想实现ARM和DSP之间的通信,ARM去访问外设。安装了OMAPL138_StarterWare_1_10_04_01-Setup.exe。 Sta...
twli DSP 与 ARM 处理器
分享到X
微博
QQ
QQ空间
微信

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

 
机器人开发圈

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新文章 手机版

站点相关: EEWORLD首页 EE大学堂 论坛 下载中心 Datasheet 活动专区 博客

北京市海淀区中关村大街18号B座15层1530室 电话:(010)82350740 邮编:100190

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2025 EEWORLD.com.cn, Inc. All rights reserved