图3:设计生态系统创建一个特殊的知识产权保护挑战。 (Microchip的技术提供)
Microchip Technology的解决方案是其CodeGuard安全技术,它允许多个企业能够安全地共享单个MCU的资源。多个安全处理器可以被集成到一个单一的16位Microchip MCU或数字信号控制器(DSC)。
章CodeGuard适用于所有的Microchip Technology的16位产品。向其中可以启用初级,中级,或高级安全功能的程度主要取决于闪存嵌入在MCU的量。所有PIC24F器件,如PIC24FJ16GA002-I / SS,例如,可以实现基本安全功能。 64 KB的片上闪存和更大的PIC24H器件,如PIC24HJ12GP202-I / SS,可实现先进的安全功能。中间级安全可以在DSPIC30F1010设备诸如DSPIC30F1010-30I / SP来实现。
章CodeGuard是一种多用途和强大的技术,可实现以下功能和流程:
内存分割和访问权限
支持安全引导加载程序/内核段擦除/编程选项
安全中断处理
安全开发和调试
每个应用程序都有自己的定义和实现。一个主要特点,但是,是存储器分割和访问特权,如图4。
将Microchip技术的CodeGuard内存分割图片
图4:章CodeGuard存储器分段和访问权限。 (Microchip的技术提供)
闪存程序存储器,RAM和EEPROM可以分为闪存三级保护段:
引导段具有最高的访问权限,可以在许多大小进行配置。一个小的内存空间是所有需要一个简单而高度安全的引导装载程序,而复杂的操作系统将需要更大的空间。引导段可以给予读或写权限(如在Flash更新)。它可以调用一个子程序或跳转到其他段不论其他段是否被代码保护。它也可以改写自己的位置,这一特点给它来存储和更新加密密钥的能力。如果误写是一个问题的开发团队,所有的Flash写入引导段可以完全禁用。从其他段访问引导段可能会严重限制或留下相对开放。引导段还可以在芯片上的数据闪存的安全部分,以禁止从其他部分的访问。
安全段主要是用于存储应用为导向的IP地址,如电机控制软件,声学算法和噪声抑制算法创建的。它有许多大小选项,并获得与其他两个部分(引导和普通)可以被限制。安全段可保护片上RAM区和片上数据EEPROM。当安全段被配置为“标准安全”的引导段可以给予不受限制地访问安全段。然而,安全段和引导段具有相同的权限,当安全段被配置为“高安全性”。
一般段为例如外围驱动器,中断服务程序(ISR),和大的查找表的用户的应用程序的指定区域。它的大小基本上是片上闪存减去引导和安全段和256 KB的大小。