The invention relates to a bus management unit and high security system on chip, the bus management unit comprises a memory access control module, storage encryption and decryption module, descrambling module, check module, the memory access control module to control the system for memory chip and register access; the the storage module is used for encryption and decryption of the memory address and data encryption / decryption operation; the descrambling module used for data polarity reversal and bus data filling; the check module is used to write data to memory and / or memory read data is checked, and the corresponding treatment according to the check results.
【技术实现步骤摘要】
本专利技术涉及芯片
,尤其涉及一种总线管理单元及高安全系统级芯片。
技术介绍
芯片的安全技术是一项针对商业用户的数据防护技术,其主要作用是对存储在芯片里的数据进行高可靠性的加密处理,使这些数据很难被非法窃取。现如今,所有芯片设计,凡是涉及到敏感数据存储,都需要进行防护,通过对数据进行加/解密处理以实现对数据进行完整性、防篡改和防抵赖等安全相关进行验证。在系统级芯片(SOC,SystemonChip)中,一般通过存储管理单元(MMU,MemoryManagementUnit)实现对芯片的安全防护,其主要完成的功能如下:1)程序存储器、外部数据存储器和内部数据存储器映射;2)程序存储器和外部数据存储器权限管理;3)程序存储器、外部数据存储器和内部数据存储器的地址扰乱和数据加密。其中前两点属于MMU的基本功能,在安全等级较高的芯片中,为了抵抗外来设备对芯片存储器中核心敏感数据的攻击窃取,MMU需要对数据防护,这种防护主要通过对存储数据进行数据加密及对存储地址进行扰乱实现。图1示出现有技术常用的数据加密的示意图,图2示出了现有技术常用的地址扰乱的示意图。如图1所示,对存储数据加密,即芯片在接收到外部数据并处理完毕后,需要先通过加密模块加密才能存储到相应的存储器中,读出时则需要先经过解密模块解密之后才能被CPU使用。如图2所示,对存储数据地址进行扰乱,即通过一个线性的逻辑映射把CPU要访问的存储器地址变换成不连续及混乱的地址,这样就可以使攻击者不能分辨和分析程序是在顺序执行或跳转执行,也就不能根据地址来猜测数据类型。而CPU在读取这些数据的时候,通过一个线性 ...
【技术保护点】
一种总线管理单元,其特征在于,包括:存储访问控制模块、存储加解密模块、加解扰模块、校验模块,所述存储访问控制模块用于对系统级芯片的存储器和寄存器的访问权限进行控制;所述存储加解密模块用于对所述存储器的地址和数据进行加/解密操作;所述加解扰模块用于对总线数据进行极性反转和总线数据填充;所述校验模块用于对存储器写数据和/或存储器读数据进行校验,并根据校验结果进行相应处理。
【技术特征摘要】
1.一种总线管理单元,其特征在于,包括:存储访问控制模块、存储加解密模块、加解扰模块、校验模块,所述存储访问控制模块用于对系统级芯片的存储器和寄存器的访问权限进行控制;所述存储加解密模块用于对所述存储器的地址和数据进行加/解密操作;所述加解扰模块用于对总线数据进行极性反转和总线数据填充;所述校验模块用于对存储器写数据和/或存储器读数据进行校验,并根据校验结果进行相应处理。2.根据权利要求1所述的总线管理单元,其特征在于,所述对系统级芯片的存储器和寄存器的访问权限进行控制包括:当所述存储访问控制模块检测到总线上发生违反访问权限的操作时,置起访问权限无效指示信号并通知总线管理单元;所述总线管理单元对所述违反访问权限的操作进行屏蔽处理,并向系统级芯片的中央处理器返回错误响应信号。3.根据权利要求1所述的总线管理单元,其特征在于,所述对所述存储器的地址和数据进行加/解密操作包括:所述存储加解密模块对存储器的地址进行加密操作、对存储器写数据进行加密操作和/或对存储器读数据进行解密操作。4.根据权利要求1所述的总线管理单元,其特征在于,对总线数据进行极性反转和总线数据填充包括:所述加解扰模块根据中央处理器写数据极性加扰指示信号hwpol_cpu的输入对中央处理器发送到从站的总线写数据进行解扰操作:当hwpol_cpu为1时,总线写数据按位取反,当hwpol_cpu为0时,总线写数据保持不变;所述加解扰模块根据中央处理器读数据极性加扰指示信号hrpol_cpu的输入对发送到中央处理器的总线读数据进行加扰操作:当hrpol_cpu为1时,从站读数据按位取反,当hrpol_cpu为0时,从站读数据保持不变;所述加解扰模块对无效总线写操作的写数据总线和无效总线读操作的读数据总线进行随机填充,填充数据由32-bit随机数输入经过置换/异或操作处理后得到。5.根据权利要求1所述的总线管理单元,其特征在于,所述对存储器写数据和/或存储器读数据进行校验,并根据校验结果进行相应处理包括:所述校验模块计算存储器写数据的循环冗余检验位或奇偶校验位,并将所述...
【专利技术属性】
技术研发人员:陈奎林,赵东艳,刘亮,冯曦,张济,邵瑾,周翔,
申请(专利权)人:北京智芯微电子科技有限公司,国网信息通信产业集团有限公司,国家电网公司,
类型:发明
国别省市:北京;11
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。