预览加载中,请您耐心等待几秒...
1/10
2/10
3/10
4/10
5/10
6/10
7/10
8/10
9/10
10/10

亲,该文档总共15页,到这已经超出免费预览范围,如果喜欢就直接下载吧~

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

(19)中华人民共和国国家知识产权局(12)发明专利申请(10)申请公布号CN105912501A(43)申请公布日2016.08.31(21)申请号201610299248.1(22)申请日2016.05.06(71)申请人东南大学—无锡集成电路技术研究所地址214135江苏省无锡市新区菱湖大道99号(72)发明人杨锦江闵婧尹玲申艾麟李兆奇赵利锋葛伟(74)专利代理机构南京瑞弘专利商标事务所(普通合伙)32249代理人陈国强(51)Int.Cl.G06F15/78(2006.01)G06F21/72(2013.01)权利要求书3页说明书6页附图5页(54)发明名称一种基于大规模粗粒度可重构处理器的SM4-128加密算法实现方法及系统(57)摘要本发明公开了一种基于大规模粗粒度可重构处理器的SM4-128加密算法实现方法及系统,该系统包括可重构处理器、微处理器、系统总线;所述可重构计算阵列包括可重构计算阵列块,可重构计算阵列块包括可重构阵列运算行、写端口运算行选择器、读端口运算行选择器;所述微处理器通过系统总线分别与配置控制模块的配置与控制接口,可重构处理器的输入先入先出寄存器组连接,所述输入先入先出寄存器组连接可重构计算阵列,可重构计算阵列连接输出端连接可重构处理器,输出端连接可重构处理器通过系统总线与微处理器连接。该系统及方法针对SM4-128加密算法,通过将多轮迭代在可重构处理器中部分展开和中间结果数据缓存的方式进行优化和加速。CN105912501ACN105912501A权利要求书1/3页1.一种基于大规模粗粒度可重构处理器的SM4-128加密算法系统,其特征在于:包括可重构处理器、微处理器、系统总线;其中,所述可重构处理器包括配置控制模块、输入先入先出寄存器组、输出先入先出寄存器组、通用寄存器堆、可重构计算阵列;所述配置控制模块包括依次连接的配置与控制接口、配置存储器、配置解析模块,配置控制模块的输出端连接可重构处理器;所述可重构计算阵列包括可重构计算阵列块,可重构计算阵列块包括可重构阵列运算行、写端口运算行选择器、读端口运算行选择器;所述可重构阵列运算行的输出端连接写端口运算行选择器的输入端,写端口运算行选择器的输出端连接通用寄存器堆;所述读端口运算行选择器的输入端接入通用寄存器堆,读端口运算行选择器的输出端连接可重构阵列运算行;其中,所述可重构阵列运算行包括算术逻辑单元、查找表单元、比特置换网络、字节置换网络以及数据输入单元和数据输出单元;所述微处理器通过系统总线分别与配置控制模块的配置与控制接口,可重构处理器的输入先入先出寄存器组连接,所述输入先入先出寄存器组连接可重构计算阵列,可重构计算阵列连接输出端连接可重构处理器,输出端连接可重构处理器通过系统总线与微处理器连接;其中,通过分析SM4-128加密算法的特征来确定SM4-128加密算法的运算流程,将多轮的SM4-128加密算法运算展开成一幅数据流图映射到可重构处理器中,通过多幅数据流图最终完成SM4-128加密算法的整个运算;微处理器通过系统总线发送明文数据给可重构处理器,可重构处理器将明文数据存入输入先入先出寄存器组,并在最终计算完成后输出密文数据到输出先入先出寄存器组,并发送中断信号,最终由微处理器读出输出至输出先入先出寄存器组中的数据。2.如权利要求1所述的基于大规模粗粒度可重构处理器的SM4-128加密算法系统,其特征在于:所述的可重构处理器有M个可重构计算阵列块、1个通用寄存器堆、1个输入先入先出寄存器组和1个输出先入先出寄存器组,其中M取整数;其中M个可重构计算阵列块通过一个1个通用寄存器堆互相进行数据的储存、读取和传递;且多个可重构计算阵列块中相邻的两个可重构计算阵列块通过数据输入单元和数据输出单元连接;第一个可重构计算阵列块通过第一个可重构阵列运算行的数据输入单元与输入先入先出寄存器组相连,同时第M个可重构计算阵列块通过最后一个可重构阵列运算行的数据输出单元与输出先入先出寄存器组相连。3.如权利要求2所述的基于大规模粗粒度可重构处理器的SM4-128加密算法系统,其特征在于:所述的每个可重构计算阵列块包括N个可重构阵列运算行和1个读端口运算行选择器和1个写端口运算行选择器,其中N取整数;其每N个可重构阵列运算行共享1个通用寄存器堆的读端口和写端口。4.如权利要求3所述的基于大规模粗粒度可重构处理器的SM4-128加密算法系统,其特征在于:所述的可重构阵列运算行包括X1个数据输入单元,X2个数据输出单元,X3个字节置换网络,X4个比特置换网络和X5个8位算术逻辑单元,X6个查找表单元,其中X1,X2,X3,X4,X5和X6均取整数;数据经过数据输入单元,由选择器通过读取并解析不同的配置信息来选择数2CN105912501A权利要求书2/3页据