论文部分内容阅读
密码是确保信息安全的重要手段之一。随着信息技术的发展,数据存储、网络通信等应用都对数据加解密提出了不同的要求。随着计算系统性能的提高,用户对数据安全要求也不断提高,新的密码算法不断出现,算法标准也在更新。单一安全系统或安全协议中通常采用多种密码算法来满足不同级别的安全需求,这要求密码处理系统在满足性能的同时又能支持多种密码的处理。 密码算法在微处理器上以指令形式实现,通过运行不同软件实现不同密码算法的处理,灵活性好但性能较低。专用ASIC在一定程度上弥补了性能缺陷,但固化了算法实现,灵活性差。可重构处理在微处理器和专用ASIC之间对性能和灵活性进行折衷,但这种技术未达到可以成熟应用的水平。 向量处理是加速数据密集计算的一种成熟技术。通过引入向量机制,微处理器能够针对密码算法开发出更多的数据并行性,提高密码处理性能。本文以向量微处理器结构作为研究方向,结合密码的应用特点,研究能够高效灵活实现各类密码处理的通用密码处理器。课题的主要工作和研究成果如下: 1.根据密码算法结构特点,结合向量处理机制,提出了并行向量处理模型(PVCPM)。PVCPM以向量处理模块(VPM)为基本构件,通过控制管理模块(CMM)、互连模块(ICM)和访存模块(MAM)实现多个VPM协作或并发处理。PVCPM采用分布的同名寄存器文件和隐式寄存器传输机制,支持有限深度向量链接;采用集中指令分派,分布指令发射、执行机制,实现指令乱序执行;设置多路存储器满足密码算法不同类型数据的访存要求。PVCPM的提出为研究具体结构设计、指令集设计和指令执行机制提供了依据。 2.在PVCPM的基础上,结合密码操作特点,提出了并行向量密码操作集(PVCOS),PVCOS反映了密码算法要素的特征,表达了PVCPM的重要机制。根据PVCPM和PVCOS,提出了具体的并行向量密码处理器(PVCP)结构并设计了其上的指令集。 3.研究并设计了PVCP各个组成单元的结构,对控制机制等关键技术进行了深入探讨。提出了PVCP控制管理单元CMU中的分派单元控制算法,对指令进行快速转换和处理。混合分派算法综合考虑PVCP寄存器分配和向量处理单元(VPU)忙闲状态,在一定程度上减少了互连指令的使用,同时避免了出现某个VPU忙而其它VPU闲的情况。互连单元(ICU)利用三步握手协议以较小的代价完成多路通道的数据传送,并可对数据进行简单处理。提出了VPU中基于功能单元