论文部分内容阅读
物联网领域的泄密隐患是一个亟待解决的安全问题,物联网节点间通信的加密手段多为通用处理器加密和定制算法模块加密两种,但两者分别存在加密性能低和灵活性不足的缺点。RISC-V架构的专用指令密码处理器具有较高的加密性能和对不同应用环境良好的适应性,能很好地满足物联网领域的信息加密需求。本文基于RISC-V架构设计了专用密码指令集,主要工作如下:提出了基于指令流图的扩展指令搜索算法,通过对指令流图和子图进行精确的数学定义,把扩展指令设计转化为子图划分的图论问题;基于模拟退火法设计了子图搜索算法,直接将密码算法处理性能作为优化目标,使求解过程具有子图筛选功能,节省了人工适配筛选的工作量。使用子图搜索算法分析了13种典型分组、序列密码算法,分析筛选出的各类子图的特性,确定子图的指令实现和硬件实现方案;设计了密码指令的格式扩展,通过设置源目的寄存器和寄存器偏移量,增加了单指令吞吐率上限,能有效提升密码指令性能,在此基础上设计出40多条扩展指令,构建了精简高效的专用密码指令集。针对密码算法中换位操作较多的情况设计了组合换位模块,可根据换位网络的迭代特性实现短字移位和级联移位操作;能依据配置信息量将置换操作划分为若干步骤,使置换指令能够实现在单指令吞吐率受限的RISC处理器中。针对分组算法中广泛使用的向量访存操作设计了向量存储结构,将传统的处理器RAM分片,使每片RAM都能独立访存,为密码算法中的S盒操作提供了硬件基础,能以少量的存储空间换取显著的性能提升。基于RISC-V基本指令处理器设计了专用密码处理器,搭建了软硬协同的处理器测试环境,验证了专用密码指令的功能,分析了密码指令对密码算法的加速比;并基于65nm CMOS工艺库实现逻辑综合,分析评估了处理器的性能。实验结果表明,使用本文设计的专用密码指令实现密码算法能获得5到8倍的加速比,专用密码处理器实现分组和序列算法的性能可以达到226.34Mbps和55.55Mbps,能够满足物联网领域的通信加密需求。