论文部分内容阅读
在SoC(Systemon Chip)芯片设计过程中,通常会包含很多第三方IP核,并需要利用从前端到后端的各种EDA工具进行设计,在使用的第三方IP核或设计工具中都可能被植入硬件木马,给芯片带来安全隐患。因此,近年来硬件木马的设计技术与检测技术受到高度关注。由于SoC芯片越来越复杂,通用的硬件木马设计方法已经逐渐不能适用,因而针对SoC的硬件木马设计与检测需要以特定类型的SoC硬件载体为基础进行研究,且不同类型的SoC载体电路具有不相同的电路特征及其潜在的漏洞,其特定的潜在漏洞需要进行专门研究,因此针对特定SoC载体电路的硬件木马设计进行研究具有重要意义。本文对基于神经网络的SoC硬件载体系统及其硬件木马进行研究。SoC硬件载体系统主要应用于室内场景分类,用于辅助盲人室内导航,其能够有效地帮助盲人进行日常活动。为了使卷积神经网络(CNN)适合于嵌入式SoC平台,论文首先对Alexnet模型进行了改进:把其中较大的卷积核改为较小的卷积核;全连接层改为参数量较小卷积层。改进的网络模型的参数量与计算量显著减小能够适应于嵌入式SoC。在本文设计的SoC系统中,软件处理器部分进行部分图像预处理以及控制FPGA的各个硬件模块的运行,硬件逻辑部分进行CNN神经网络的硬件加速。整个系统采用AXI标准总线互连,最终使用Xilinx Zynq-7020 SoC平台实现了硬件加速系统。在完成神经网络SoC系统设计的基础上,论文对SoC硬件木马进行了研究。在对系统潜在漏洞进行分析后,本文总结了神经网络SoC系统的漏洞:AXI_ACP总线、L2缓存和BRAM存储器。根据以上的系统漏洞,本文设计了 2类SoC硬件木马:BRAM硬件木马和ACP(Accelerator Coherency Port,加速器一致性接口)硬件木马。BRAM硬件木马的原理是ARM首先将木马启动数据写入BRAM中,其次IP核对BRAM中木马激活数据进行处理激活木马并对硬件加速IP的输出进行恶意篡改。ACP硬件木马的原理是通过在SoC系统中的可编程逻辑ACP端口植入后门对共享缓存进行读写,可达到减慢系统运行速度的目的。最后在上述的神经网络SoC硬件载体电路中实现了这两种硬件木马,实验结果表明,在给定有效触发条件之后,硬件木马能够达到有效的攻击,且硬件木马占用的硬件资源较少,能够很好地隐藏于硬件系统。本文的研究为以后的嵌入式神经网络SoC硬件木马检测的研究奠定了基础。