一种具有存储器内部数据防篡改机制的SOC芯片及方法技术

技术编号:18350879 阅读:28 留言:0更新日期:2018-07-02 00:24
本发明专利技术提供一种具有存储器内部数据防篡改机制的SOC芯片及方法,所述芯片包括:第一存储单元,用于存储由芯片生产提供者负责维护的敏感系统数据;第二存储单元,用于存储由用户负责维护的用户数据和程序;微处理器,用于访问所述第一、第二存储单元;访问控制单元,连接于所述微处理器与所述第一、第二存储单元之间,用于完成所述微处理器访问所述第一、第二存储单元的时序控制;特征值单元,连接于所述微处理器,用于计算所述第二存储单元中用户代码的特征值,并与预先存储在所述第一存储单元内的特征值进行比较,以判断用户代码是否被非法篡改。本发明专利技术通过上电后特征值校验电路,可以检测NVM存储器是否意外丢失数据,提高芯片的可靠性。

【技术实现步骤摘要】
一种具有存储器内部数据防篡改机制的SOC芯片及方法
本专利技术属于片上系统领域,涉及一种具有存储器内部数据防篡改机制的SOC芯片及方法。
技术介绍
片上系统(SystemonChip,简称SOC),从狭义角度讲,它是信息系统核心的芯片集成,是将系统关键部件集成在一块芯片上;从广义角度讲,SOC是一个微小型系统,其将微处理器、模拟IP核、数字IP核和存储器(或片外存储控制接口)集成在单一芯片上,通常是客户定制的,或是面向特定用途的标准产品。微控制单元(MicrocontrollerUnit;MCU)一般内部都集成了非易失性存储器(Non-VolatileMemory,NVM)用于存放用户程序和数据。随着MCU的使用越来越普及,对于MCU内部数据安全性的要求也越来越高。如何保护NVM非易失性存储器内的数据变得尤为重要。存储于MCU内部NVM存储器内的用户代码往往是非法攻击的重要部件,通过篡改内部的用户代码达到控制用户系统的目的。同样,NVM存储器在某些特定条件下(如:高温/高压等极限状况),也可能发生内部数据丢失或者部分数据比特位被篡改的情况。因此,如何提供一种具有存储器内部数据防篡改机制的SOC芯片及方法,以提高芯片安全性,成为本领域技术人员亟待解决的一个重要技术问题。
技术实现思路
鉴于以上所述现有技术的缺点,本专利技术的目的在于提供一种具有存储器内部数据防篡改机制的SOC芯片及方法,用于解决现有技术中SOC芯片安全风险较高的问题。为实现上述目的及其他相关目的,本专利技术提供一种具有存储器内部数据防篡改机制的SOC芯片,包括:第一存储单元,用于存储由芯片生产提供者负责维护的敏感系统数据;第二存储单元,用于存储由用户负责维护的用户数据和程序;微处理器,用于访问所述第一存储单元或第二存储单元;访问控制单元,连接于所述微处理器与所述第一存储单元、第二存储单元之间,用于完成所述微处理器访问所述第一存储单元、第二存储单元的时序控制;特征值单元,连接于所述微处理器,用于计算所述第二存储单元中用户代码的特征值,并与预先存储在所述第一存储单元内的特征值进行比较,以判断用户代码是否被非法篡改。可选地,所述特征值单元被设置为当判定为非法篡改后,产生一个用户代码被非法篡改的中断给所述微处理器。可选地,所述微处理器被设置为当接收到所述中断后,将所述芯片复位。可选地,所述特征值单元包括特征值计算单元、第一锁存器及比较器;其中:所述特征值计算单元连接于所述微处理器与所述第一锁存器之间,用于接收所述微处理器从所述第二存储单元读出的用户代码,计算所述用户代码的特征值,并将计算所得的特征值输入所述第一锁存器;所述比较器的第一输入端与所述微处理器相连,所述比较器的第二输入端与所述第一锁存器的输出端连接,所述比较器的输出端与所述微处理器连接,用于将所述微处理器从所述第一存储单元读出的特征值与所述特征值计算单元计算得到的特征值进行比较。可选地,所述特征值计算单元的输入端与所述比较器之间还连接有第二锁存器,用于给所述比较器上电。可选地,预先存储在所述第一存储单元内的特征值为128比特,所述特征值单元根据用户代码计算出的特征值为128比特。可选地,所述第二存储单元中用户代码为32比特。可选地,所述第一存储单元及第二存储单元均为非易失性存储器。可选地,所述敏感系统数据包括启动装载(bootloader)、用户密钥、系统存储空间配置信息、校准值及芯片唯一标识码中的一种或多种。本专利技术还提供一种存储器内部数据防篡改机制的方法,应用于如上任意一项所述的具有存储器内部数据防篡改机制的SOC芯片,所述方法包括:芯片上电且完成复位操作后,所述第一存储单元和第二存储单元都可以通过微处理器的地址空间进行访问;程式从所述第一存储单元开始执行,所述微处理器将所述第二存储单元中的用户代码读出到所述特征值单元,所述特征值单元计算出对应的特征值;经过多次迭代计算后,得到最终的128比特特征值;所述特征值单元将计算所得的特征值与存储在所述第一存储单元内的128比特特征值进行比较;若比较结果一致,则跳转到用户程序区执行用户程序;若比较结果不一致,则产生一个中断给微处理器;所述微处理器收到非法篡改的中断后,将所述芯片复位。如上所述,本专利技术的具有存储器内部数据防篡改机制的SOC芯片及方法,具有以下有益效果:本专利技术使用不同的NVM存储器分别存储系统信息和用户代码数据,当系统上电后,先检查用户代码是否被篡改,如果校验正确,则执行用户程序。如果校验失败,则复位芯片。其中,特征值单元可以是采用任何通用或私有的杂凑算法,破解难度高。通过上电后特征值校验电路,可以检测NVM存储器是否意外丢失数据,提高芯片的可靠性。附图说明图1显示为本专利技术的具有存储器内部数据防篡改机制的SOC芯片的结构示意图。图2显示为所述特征值单元的电路结构图。图3显示为本专利技术的存储器内部数据防篡改机制的方法的流程示意图。元件标号说明1第一存储单元2第二存储单元3访问控制单元4微处理器5特征值单元501特征值计算单元502第一锁存器503比较器504第二锁存器S1~S6步骤具体实施方式以下通过特定的具体实例说明本专利技术的实施方式,本领域技术人员可由本说明书所揭露的内容轻易地了解本专利技术的其他优点与功效。本专利技术还可以通过另外不同的具体实施方式加以实施或应用,本说明书中的各项细节也可以基于不同观点与应用,在没有背离本专利技术的精神下进行各种修饰或改变。请参阅图1至图3。需要说明的是,本实施例中所提供的图示仅以示意方式说明本专利技术的基本构想,遂图式中仅显示与本专利技术中有关的组件而非按照实际实施时的组件数目、形状及尺寸绘制,其实际实施时各组件的型态、数量及比例可为一种随意的改变,且其组件布局型态也可能更为复杂。本专利技术提供一种具有存储器内部数据防篡改机制的SOC芯片,请参阅图1,显示为该SOC芯片的结构示意图,包括第一存储单元1、第二存储单元2、访问控制单元3、微处理器4及特征值单元5。具体的,所述第一存储单元1用于存储由芯片生产提供者负责维护的敏感系统数据。作为示例,所述敏感系统数据包括启动装载(bootloader)、用户密钥、系统存储空间配置信息、校准值及芯片唯一标识码中的一种或多种。本实施例中,所述第一存储单元1中存储有128比特特征值。所述第二存储单元2用于存储由用户负责维护的用户数据和程序。本实施例中,所述第二存储单元2中存储有32比特的用户代码。本实施例中,所述第一存储单元1及第二存储单元2均采用非易失性存储器(Non-VolatileMemory,NVM),当电源关掉后,其所存储的数据不会消失。本专利技术将敏感数据和普通数据分别放在不同的存储器内,从物理上隔离,有利于增加芯片的安全性。所述微处理器4用于读/写访问所述第一存储单元1或第二存储单元2。所述访问控制单元3连接于所述微处理器4与所述第一存储单元1、第二存储单元2之间,用于完成所述微处理器4访问所述第一存储单元1、第二存储单元2的时序控制。特别的,所述特征值单元5连接于所述微处理器4,用于计算所述第二存储单元2中用户代码的特征值,并与预先存储在所述第一存储单元内的特征值进行比较,以判断用户代码是否被非法篡改。具体的,所述特征值单元5被设置为当判定为非法篡改后,产生一个用户代码被非本文档来自技高网...
一种具有存储器内部数据防篡改机制的SOC芯片及方法

【技术保护点】
1.一种具有存储器内部数据防篡改机制的SOC芯片,其特征在于,包括:第一存储单元,用于存储由芯片生产提供者负责维护的敏感系统数据;第二存储单元,用于存储由用户负责维护的用户数据和程序;微处理器,用于访问所述第一存储单元或第二存储单元;访问控制单元,连接于所述微处理器与所述第一存储单元、第二存储单元之间,用于完成所述微处理器访问所述第一存储单元、第二存储单元的时序控制;特征值单元,连接于所述微处理器,用于计算所述第二存储单元中用户代码的特征值,并与预先存储在所述第一存储单元内的特征值进行比较,以判断用户代码是否被非法篡改。

【技术特征摘要】
1.一种具有存储器内部数据防篡改机制的SOC芯片,其特征在于,包括:第一存储单元,用于存储由芯片生产提供者负责维护的敏感系统数据;第二存储单元,用于存储由用户负责维护的用户数据和程序;微处理器,用于访问所述第一存储单元或第二存储单元;访问控制单元,连接于所述微处理器与所述第一存储单元、第二存储单元之间,用于完成所述微处理器访问所述第一存储单元、第二存储单元的时序控制;特征值单元,连接于所述微处理器,用于计算所述第二存储单元中用户代码的特征值,并与预先存储在所述第一存储单元内的特征值进行比较,以判断用户代码是否被非法篡改。2.根据权利要求1所述的具有存储器内部数据防篡改机制的SOC芯片,其特征在于:所述特征值单元被设置为当判定为非法篡改后,产生一个用户代码被非法篡改的中断给所述微处理器。3.根据权利要求2所述的具有存储器内部数据防篡改机制的SOC芯片,其特征在于:所述微处理器被设置为当接收到所述中断后,将所述芯片复位。4.根据权利要求1所述的具有存储器内部数据防篡改机制的SOC芯片,其特征在于:所述特征值单元包括特征值计算单元、第一锁存器及比较器;其中:所述特征值计算单元连接于所述微处理器与所述第一锁存器之间,用于接收所述微处理器从所述第二存储单元读出的用户代码,计算所述用户代码的特征值,并将计算所得的特征值输入所述第一锁存器;所述比较器的第一输入端与所述微处理器相连,所述比较器的第二输入端与所述第一锁存器的输出端连接,所述比较器的输出端与所述微处理器连接,用于将所述微处理器从所述第一存储单元读出的特征值与所述特征值计算单元计算得到的特征值进行比较。5.根据权利要求4所述的具有存储...

【专利技术属性】
技术研发人员:王健杨灿华
申请(专利权)人:上海新微技术研发中心有限公司
类型:发明
国别省市:上海,31

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1