基于边界控制的安全基于边界控制的安全SoC芯片硬件结构设计芯片硬件结构设计
为满足大批量数据处理和信息安全的需要,基于通用处理器与专用密码协处理器设计了一款异构多核安全SoC
芯片。在分析了高性能SoC主要结构和安全问题的基础上,融合安全硬件结构及边界控制思想,设计了密码服
务区和应用开发区分离的多层安全SoC芯片硬件架构。对比不同权限电路设计方案后,采用真值表方法设计专
用安全控制单元来实现两个区域的硬件隔离,并根据SoC芯片受到的安全威胁设定安全拦截规则。采用EDA工
具进行仿真实验,结果表明安全控制单元能够有效拦截应用开发区对密码服务区的非法访问,保护芯片的安全
而且产生的延迟较小。
随着通信技术的发展,信息安全问题愈发突出。安全
通过数据加密、在操作系统中植入安全特性等软件方法,在有限的嵌入式资源环境下大大增加了系统的复杂性和成本。由
于其数据交互的实时性和开放性,使之无法从根本上实现真正的安全系统。增加安全硬件模块的方法灵活性较差,需要重新进
行硬件设计才能满足新的安全功能,同时新增的硬件IP加重了设计开销,增加了系统功耗。
本文针对计算密集型任务和信息安全的系统问题,基于安全SoC芯片设计技术[3-4]和安全硬件结构思想,从系统、整体的
角度来解决安全问题。
1 体系结构体系结构
1.1 总体结构总体结构
为了满足高性能密码处理需要,在SoC系统中集成更多的处理器核等硬件资源,MPSoC(MultiProcessor SoC)己成为片
上系统发展的主流,越来越多面向特定应用的系统采用多核的方式来提升系统的计算能力[5]。多核系统中原来的软件工作量
分到了多片处理器上,对单个处理器性能要求大大降低。而且可以灵活选择处理器以适应不同系统任务的需要,从而提高软件
执行效率[6-7]。
本文设计的多核SoC采用精简指令处理器+协处理器结构。如图1所示,通用RISC处理器负责数据流控制和数据分配,专用
密码协处理器负责密码处理,两种类型处理器通过高带宽的多层系统总线连接,通过共享存储器的缓存区进行数据交互。整个
芯片分为
1.2 应用开发区应用开发区
应用开发区连接各种通信接口,提供给用户进行开发。整个区域构成主处理器系统,在任务执行过程中,用户通过主处理
器系统运行的操作系统对整个安全SoC芯片进行控制。主处理器系统负责整个应用开发区的设备管理、通信管理及控制任务的
处理,并对应用程序进行调度和划分,是整个SoC系统的控制核心[8]。
如图2所示,主处理器系统包括通用处理器、DMA控制器、高速系统总线、USB控制器、存储器控制器、低速外设总线与外
部设备接口。DMA控制器接受通用处理器的配置控制,负责大批量数据的传输。存储控制器管理SRAM和Flash存储器,为提
高存储控制器效率和工作频率,采用独立的通用存储控制器。USB控制器管理USB接口,负责与外部进行数据快速交换。
1.3 密码服务区密码服务区
密码服务区提供密码处理服务,并存储密码算法、密钥等敏感信息。密码服务区构成协处理器系统,在应用开发区的请求
下自动完成密码处理服务。
如图3所示,协处理器系统包括微控制器、局部总线、专用密码协处理器、随机数发生器、存储控制器和UART控制器。微
控制器是密码服务区的控制核心,具有上电信息加载控制、数据调度控制等功能。随机数发生器提供协处理器加解密所需要的
密钥。存储控制器主要存储密码算法、密钥和明文等敏感信息。协处理器系统通过UART接口注入算法配置信息、密钥、用户
信息、设备信息等关键数据,并以密文的形式存放,主要完成主处理器系统划分好的加解密等计算任务,是整个SoC系统的计
算核心。
评论0
最新资源