CN102347833B - 一种基于ram共享技术的可重构s盒电路结构 - Google Patents

一种基于ram共享技术的可重构s盒电路结构 Download PDF

Info

Publication number
CN102347833B
CN102347833B CN201110284750.2A CN201110284750A CN102347833B CN 102347833 B CN102347833 B CN 102347833B CN 201110284750 A CN201110284750 A CN 201110284750A CN 102347833 B CN102347833 B CN 102347833B
Authority
CN
China
Prior art keywords
data
primitive
ram
box
input
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
CN201110284750.2A
Other languages
English (en)
Other versions
CN102347833A (zh
Inventor
单伟伟
朱佳梁
陆寅超
田朝轩
余云帆
时龙兴
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Southeast University
Original Assignee
Southeast University
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Southeast University filed Critical Southeast University
Priority to CN201110284750.2A priority Critical patent/CN102347833B/zh
Publication of CN102347833A publication Critical patent/CN102347833A/zh
Application granted granted Critical
Publication of CN102347833B publication Critical patent/CN102347833B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Storage Device Security (AREA)
  • Logic Circuits (AREA)

Abstract

本发明公开了一种基于RAM共享技术的可重构S盒电路结构,可以实现多种分组密码算法中的S盒替换操作,适用于各种分组密码处理器。该S盒电路结构由配置单元电路和替换单元电路构成。其中:配置单元,用于接收输入的控制信号,进行存储,配置并控制替换单元的运算状态;所述替换单元包括n个替换基元和一块RAM,各个替换基元并行工作共享一个RAM;本发明具有运算速度快,配置灵活,可并行处理数据,占用存储单元少,电路实现面积小的优点。

Description

一种基于RAM共享技术的可重构S盒电路结构
技术领域
本发明涉及信息安全技术和集成电路技术领域,具体地,涉及一种基于RAM共享技术的可重构S盒电路结构,用于实现分组密码算法中的S盒替换操作。 
背景技术
随着现代社会的日益信息化、数字化与网络化,人们对信息安全技术的需求越来越广泛和深入。信息安全技术的应用领域,已从传统的军事、政治部门,逐步扩展到社会经济生活的各个角落;信息安全产品成为整个社会良性运转的重要保障,保护信息的安全也已经成为科学技术领域的重要课题。信息安全体系中,密码算法是信息安全的基础和核心技术,在密码算法中分组密码占有重要的地位,并广泛的被应用于各个领域。 
通过对大量的分组密码算法进行分析和研究,发现分组密码算法具有一个显著的特征:很多不同的分组密码算法具有相同或相近的基本操作,对DES、AES、RC6等27种典型的分组密码算法的基本操作及其使用频度做了统计,发现S盒变换的使用频度达到50%。S盒是许多分组密码算法的核心组成部分,提供分组密码算法所必需的混淆作用。在不同的分组密码算法中,S盒的内部结构和构建方式也有所不同。S盒是许多分组密码算法中的唯一非线性模块,因此它的密码强度对整个分组密码算法的安全强度产生直接影响。 
现有技术中的密码处理器中,S盒的实现方式主要有2种:(1)基于逻辑电路的实现方式,即用硬件逻辑电路来实现S盒操作所包含的布尔函数,其占用资源较少,但运算速度较慢,而对于多种不同类型的S盒操作来说,不具可配置性,不能并行处理数据;(2)基于查找表(Look Up Table,LUT)的实现方式,将S盒替换表存储在存储器(如RAM或ROM)中,S盒的输入作为存储器的地址输入,对应的地址空间中存放的数据就是S盒的输出值,这种方法占用较多存储单元,电路实现面积大,但运算速度快,并且具有可配置性,能实现多种分组密码运算的S盒操作,并且当处理器不工作时,存储器不带有任何算法信息,使得处理器具有更好的安全性。 
另一方面,目前许多的密码处理器中采用流水线技术,可以大幅提升处理器的运行速度。 但由于通用S盒模块不具备并行处理数据的能力,所以在n级流水线结构的密码处理器中,每1级的运算模块中都需要包含一个通用S盒和其他相应运算单元,此时处理器速度增加n倍,同时面积也增加n倍,处理器的效率并没有得到改善。 
综上所述,现有技术中,基于逻辑电路实现的S盒存在运算速度慢,不具有可配置性的缺陷;基于查找表实现的S盒存在占用存储单元多,电路实现面积大,不具备并行处理数据能力的缺陷。 
发明内容
本发明的目的在于,针对上述问题,提出一种基于RAM共享技术的可重构S盒电路结构,以实现运算速度快,配置灵活,可并行处理数据,占用存储单元少,电路实现面积小的优点。 
为实现上述目的,本发明采用的技术方案如下: 
一种基于RAM共享技术的可重构S盒电路结构,包括配置单元和替换单元,其特征是所述替换单元包括n个替换基元和一块RAM,各个替换基元并行工作共享一个RAM; 
本S盒的工作模式包括配置模式和运算模式两种: 
在配置模式下,配置单元首先接收输入的控制信号,存储配置信息,然后根据配置信息对RAM进行初始化配置;替换单元不工作,RAM在配置单元的控制下进行初始化; 
在运算模式下,根据存储的配置信息控制替换单元的运算状态;替换单元接收输入数据,完成S盒的替换操作,输出处理后数据; 
所述替换单元采用基于查找表的方法实现S盒; 
替换单元有对应n组输入数据,分别对应n个替换基元;每个替换基元和RAM组合都实现S盒的替换功能,并行实现n个S盒的流水线操作;RAM包括m个相同的单元RAMm; 
每个替换基元包括输入数据控制电路和输出数据选择电路; 
输入信号DATA_INm输入给输入数据控制电路,输入信号处理电路处理得到内部信号Ainm,Ainm输出给RAM作为RAM的输入地址信号,分别对应输出给相应的单元RAMm,由单元RAMm把相应的输出数据信号Aoutm返回输入到替换基元中,输出数据选择电路对返回的数据信号进行处理,输出最终的数据信号,即完成S盒替换的数据信号。 
由运算状态控制信号MODE_IN控制替换基元的运算状态,由配置状态控制信号CONFIG_IN对替换基元的配置状态进行控制,MODE_IN和CONFIG_IN来控制由输入数据控制电路以及输出数据选择电路的工作状态。 
所述的替换单元,由16个替换基元和一块RAM构成,用于接收输入数据信号,完成S盒 的替换操作,输出处理后数据信号。替换单元采用RAM共享技术,使16个替换基元共享一个RAM,能够并行工作,实现16个S盒的流水线操作。所述的替换基元包括输入数据控制电路和输出数据选择电路构成。 
替换基元有三种运算状态:(1)4×4替换 (2)6×4替换 (3)8×8替换。替换基元和RAM组合使用可以实现S盒的功能,配置单元中存储的配置信息控制替换基元的工作状态,输入数据控制电路对输入替换基元的数据信号做相应的处理,输出到RAM,作为RAM的输入地址信号。RAM输出对应地址的数据信号返回到替换基元,输出数据选择电路对返回的数据信号进行处理,输出最终的数据信号,即完成S盒替换的数据信号。 
在配置模式下,替换单元不工作,RAM在配置单元的控制下进行初始化。在运算模式下,替换单元接收输入数据信号,完成S盒的替换操作,输出处理后数据信号。替换单元采用基于查找表的方法实现S盒。根据配置的不同,能够实现多种分组密码算法中的S盒替换操作。 
所述的RAM由8个大小为64×4位的RAM0,RAM1,……,RAM7组成。输入为6位的地址信号,输出为4位的数据信号。RAM能同时被16个替换基元驱动,实现16个替换基元的并行工作。 
本发明的原理说明如下: 
S盒本质上可以被看做映射:S(X)=(f1(X),…,fm(X)): n为S盒输入X的位数,m为S盒输出的S(X)位数,f1(X),f2(X),...,fm(X)为输出S(X)的第1,2,…m位。f1,f2,...,fm为输入X对应的输出S(X)各个位的映射函数,通常简称S是一个n×m的S盒。S盒通常采用查找表的方式实现,表的存储量为m×2n位。本发明的S盒在4×4替换、6×4替换、8×8替换三种运算状态中,最多需要8×28位的RAM,所以本发明中采用由8个64×4位的RAM0,RAM1,……,RAM7组成的总大小为8×28位的RAM。 
本发明的有益效果是:本发明具有运算速度快,配置灵活,可并行处理数据,占用存储单元少,电路实现面积小的优点。 
附图说明
图1为本发明的基于RAM共享技术的可重构S盒电路结构示意图; 
图2为本发明的基于RAM共享技术的可重构S盒电路结构的替换单元的结构示意图; 
图3为本发明的基于RAM共享技术的可重构S盒电路结构的替换单元的替换基元的结构示意图;
图4(a)为本发明的基于RAM共享技术的可重构S盒电路结构在流水线结构的DES密码 处理器中的使用说明图; 
图4(b)为流水线结构的DES密码处理器中轮运算的结构图。 
表1为本发明的基于RAM共享技术的可重构S盒电路结构的替换单元的替换基元的信号定义: 
表1 
具体实施方式
下面结合附图和具体实施例对本发明作进一步说明。 
如图1所示,本例的基于RAM共享技术的可重构S盒电路结构由配置单元电路和替换单元电路构成,有两种工作模式:(1)配置模式(2)运算模式。其中:配置单元,用于接收输入的控制信号,进行存储,配置并控制替换单元的运算状态。在配置模式下,配置单元首先接收输入的控制信号,存储配置信息,然后根据配置信息对RAM进行初始化配置;在运算模式下,根据存储的配置信息控制替换单元的运算状态。替换单元,用于接收输入数据,完成S盒的替换操作,输出处理后数据,由16个替换基元和一块RAM构成。替换单元采用基于查找表的方法实现S盒。16个替换基元可以并行工作,共享一个RAM。在配置模式下,替换单元不工作,RAM在配置单元的控制下进行初始化。在运算模式下,替换单元接收输入数据,完成S盒的替换操作,输出处理后数据。 
如图2所示,替换单元由16个替换基元和一块RAM构成。替换单元采用基于查找表的方法实现S盒。替换单元有16组输入数据,分别对应16个替换基元。替换单元采用RAM共享技术,16个替换基元共享一个RAM,每一个替换基元和RAM组合都可以实现S盒的替换功能,最终能够实现16个S盒的流水线操作。配置单元输入的配置信号控制替换单元的运算状态,实现适应不同分组密码算法的S盒。RAM由8个大小为64×4位的RAM0,RAM1,……,RAM7组成,由配置单元在配置模式下,通过RAM初始化信号,对RAM进行初始化,存入数据。 
如图3和表1所示,替换基元,由输入数据控制电路和输出数据选择电路构成,包含8个8位输入信号DATA_IN0,DATA_IN1,DATA_IN2,DATA_IN3,DATA_IN4,DATA_IN5,DATA_IN6,DATA_IN7,1个时钟信号CLK,1个1位的控制信号CONFIG_IN,1个2位的控制信号MODE_IN,控制替换基元的运算状态。8个6位的内部信号Ain0,Ain1,Ain2,Ain3,Ain4,Ain5,Ain6,Ain7,8个4位输出信号Aout0,Aout1,Aout2,Aout3,Aout4,Aout5,Aout6,Aout7,1个8位输出信号Bout。 
CLK为替换基元提供时钟信号。 
CONFIG_IN对替换基元的配置状态进行控制: 
1:配置状态;0:模块工作状态 
替换基元在配置模式下不工作,在运算模式下有三种运算状态: 
(1)4×4替换     (2)6×4替换      (3)8×8替换; 
(1)当MODE_IN=00时,替换基元执行4×4替换,输入信号DATA_IN0,DATA_IN1,DATA_IN2,DATA_IN3,DATA_IN4,DATA_IN5,DATA_IN6,DATA_IN7经过输入信号处理电路处理,得: 
Ain0[5:0]={2’b00,DATA IN0[3:0]}; 
(即Ain0的高2位为00,低4位为DATA_IN0的低4位) 
Ain1[5:0]={2’b00,DATA_IN1[3:0]}; 
Ain2[5:0]={2’b00,DATA_IN2[3:0]}; 
Ain3[5:0]={2’b00,DATA_IN3[3:0]}; 
Ain4[5:0]={2’b00,DATA_IN4[3:0]}; 
Ain5[5:0]={2’b00,DATA_IN5[3:0]}; 
Ain6[5:0]={2’b00,DATA_IN6[3:0]}; 
Ain7[5:0]={2’b00,DATA_IN7[3:0]}; 
则:RAM0,RAM1,RAM2,RAM3,RAM4,RAM5,RAM6,RAM7的输入地址分别为Ain0,Ain1,Ain2,Ain3,Ain4,Ain5,Ain6,Ain7; 
RAM0,RAM1,RAM2,RAM3,RAM4,RAM5,RAM6,RAM7的输出分别为Aout0,Aout1,Aout2,Aout3,Aout4,Aout5,Aout6,Aout7; 
将Aout0,Aout1,Aout2,Aout3,Aout4,Aout5,Aout6,Aout7返回输入到替换基元中,再输出就得到经过32×32(即8*4×4)的S盒变换的数据。此模式下Bout输出为0。 
(2)当MODE_IN=01时,替换基元执行6×4替换,输入信号DATA_IN0,DATA_IN1,DATA_IN2,DATA_IN3,DATA_IN4,DATA_IN5,DATA_IN6,DATA_IN7经过输入信号处理电路处理,得: 
Ain0[5:0]=DATA_IN0[5:0];(即Ain0为DATA_IN0的低6位) 
Ain1[5:0]=DATA_IN1[5:0]; 
Ain2[5:0]=DATA_IN2[5:0]; 
Ain3[5:0]=DATA_IN3[5:0]; 
Ain4[5:0]=DATA_IN4[5:0]; 
Ain5[5:0]=DATA_IN5[5:0]; 
Ain6[5:0]=DATA_IN6[5:0]; 
Ain7[5:0]=DATA_IN7[5:0]; 
则:RAM0,RAM1,RAM2,RAM3,RAM4,RAM5,RAM6,RAM7的输入地址分别为Ain0,Ain1,Ain2,Ain3,Ain4,Ain5,Ain6,Ain7; 
RAM0,RAM1,RAM2,RAM3,RAM4,RAM5,RAM6,RAM7的输出分别为Aout0,Aout1,Aout2,Aout3,Aout4,Aout5,Aout6,Aout7; 
将Aout0,Aout1,Aout2,Aout3,Aout4,Aout5,Aout6,Aout7返回输入到替换基元中, 再输出就得到经过48×32(即8*6×4)的S盒替换的数据,此模式下Bout输出为0。 
(3)当MODE_IN=10时,替换基元执行8×8替换,在此运算状态下,输入信号DATA_IN0=DATA_IN1=DATA_IN2=DATA_IN3=DATA_IN4=DATA_IN5=DATA_IN6=DATA_IN7, 
经过输入信号处理电路处理,得: 
Ain0[5:0]=DATA_IN0[5:0];(即Ain0为DATA_IN0的低6位) 
Ain1[5:0]=DATA_IN0[5:0]; 
Ain2[5:0]=DATA_IN0[5:0]; 
Ain3[5:0]=DATA_IN0[5:0]; 
Ain4[5:0]=DATA_IN0[5:0]; 
Ain5[5:0]=DATA_IN0[5:0]; 
Ain6[5:0]=DATA_IN0[5:0]; 
Ain7[5:0]=DATA_IN0[5:0]; 
则:RAM0,RAM1,RAM2,RAM3,RAM4,RAM5,RAM6,RAM7的输入地址分别为Ain0,Ain1,Ain2,Ain3,Ain4,Ain5,Ain6,Ain7; 
RAM0,RAM1,RAM2,RAM3,RAM4,RAM5,RAM6,RAM7的输出分别为Aout0,Aout1,Aout2,Aout3,Aout4,Aout5,Aout6,Aout7; 
将Aout0,Aout1,Aout2,Aout3,Aout4,Aout5,Aout6,Aout7返回输入到替换基元中,将它们分为四组:{Aout0,Aout1},{Aout2,Aout3},{Aout4,Aout5},{Aout6,Aout7},将这四组信号输入4选1数据选择器(输出数据选择电路),DATA_IN0[7:6]为控制信号: 
DATA_IN0[7:6]=00时,          Bout={Aout0,Aout1}; 
DATA_IN0[7:6]=01时,          Bout={Aout2,Aout3}; 
DATA_IN0[7:6]=10时,          Bout={Aout4,Aout5}; 
DATA_IN0[7:6]=11时,          Bout={Aout6,Aout7}; 
输出Bout,即为经过8×8的S盒替换的数据。 
如图4(a)和图4(b)所示,采用流水线结构的DES密码处理器,需要执行16轮的加密运算,即需要16级的轮运算模块,每1级的轮运算模块中都包含扩展置换,异或,S盒替换,P盒置换等操作。如果使用通用设计的S盒,需要16个通用S盒才能完成DES算法流水线操作,每一个通用S盒都包含一512×4位的RAM。但是使用所述的基于RAM共享技术的可 重构S盒,如图4(a)所示,只需要一个S盒就可以实现16条流水线的S盒替换操作,每1级轮运算模块中都包含一个替换基元,16个替换基元共享一块512×4位的RAM,实现16个S盒的并行替换操作,节省了15个512×4位的RAM的面积。 

Claims (3)

1.一种基于RAM共享技术的可重构S盒电路结构,包括配置单元和替换单元,其特征是所述替换单元包括n个替换基元和一块RAM,各个替换基元并行工作共享一个RAM;
本S盒的工作模式包括配置模式和运算模式两种:
在配置模式下,配置单元首先接收输入的控制信号,存储配置信息,然后根据配置信息对RAM进行初始化配置;替换单元不工作,RAM在配置单元的控制下进行初始化;
在运算模式下,根据存储的配置信息控制替换单元的运算状态;替换单元接收输入数据,完成S盒的替换操作,输出处理后数据;
所述替换单元采用基于查找表的方法实现S盒;
替换单元有对应n组输入数据,分别对应n个替换基元;每个替换基元和RAM组合都实现S盒的替换功能,并行实现n个S盒的流水线操作;RAM包括m个相同的单元RAMm;
每个替换基元包括输入数据控制电路和输出数据选择电路;
输入信号DATA_INm输入给输入数据控制电路,输入信号处理电路处理得到内部信号Ainm,Ainm输出给RAM作为RAM的输入地址信号,分别对应输出给相应的单元RAMm,由单元RAMm把相应的输出数据信号Aoutm返回输入到替换基元中,输出数据选择电路对返回的数据信号进行处理,输出最终的数据信号,即完成S盒替换的数据信号;
由运算状态控制信号MODE_IN控制替换基元的运算状态,由配置状态控制信号CONFIG_IN对替换基元的配置状态进行控制,MODE_IN和CONFIG_IN来控制由输入数据控制电路以及输出数据选择电路的工作状态。
2.根据权利要求1所述的S盒电路结构,其特征是所述替换单元由16个替换基元和一块RAM构成;所述RAM由8个大小为64×4位的单元RAM单元组成;RAM能同时被16个替换基元驱动,实现16个替换基元的并行工作。
3.根据权利要求2所述的S盒电路结构,其特征是替换基元在配置模式下不工作,在运算模式下有三种运算状态:4×4替换、6×4替换、8×8替换;
表1为替换单元的替换基元的信号定义:
表1所示,替换基元的8个8位输入信号DATA_IN0,DATA_IN1,DATA_IN2,DATA_IN3,DATA_IN4,DATA_IN5,DATA_IN6,DATA_IN7,1个时钟信号CLK,1个1位的控制信号CONFIG_IN,1个2位的控制信号MODE_IN,控制替换基元的运算状态;
8个6位的内部信号Ain0,Ain1,Ain2,Ain3,Ain4,Ain5,Ain6,Ain7,8个4位输出信号Aout0,Aout1,Aout2,Aout3,Aout4,Aout5,Aout6,Aout7,1个8位输出信号Bout;
CLK为替换基元提供时钟信号;
CONFIG_IN对替换基元的配置状态进行控制:
1:配置状态;0:模块工作状态
替换基元在配置模式下不工作,在运算模式下有三种运算状态:
(1)4×4替换,当MODE_IN=00时,替换基元执行4×4替换,输入信号DATA_IN0,DATA_IN1,DATA_IN2,DATA_IN3,DATA_IN4,DATA_IN5,DATA_IN6,DATA_IN7经过输入信号处理电路处理,得:
Ain0[5:0]={2’b00,DATA_IN0[3:0]};即Ain0的高2位为00,低4位为DATA_IN0的低4位
Ain1[5:0]={2’b00,DATA_IN1[3:0]};
Ain2[5:0]={2’b00,DATA_IN2[3:0]};
Ain3[5:0]={2’b00,DATA_IN3[3:0]};
Ain4[5:0]={2’b00,DATA_IN4[3:0]};
Ain5[5:0]={2’b00,DATA_IN5[3:0]};
Ain6[5:0]={2’b00,DATA_IN6[3:0]};
Ain7[5:0]={2’b00,DATA_IN7[3:0]};
则:RAM0,RAM1,RAM2,RAM3,RAM4,RAM5,RAM6,RAM7的输入地址分别为Ain0,Ain1,Ain2,Ain3,Ain4,Ain5,Ain6,Ain7;
RAM0,RAM1,RAM2,RAM3,RAM4,RAM5,RAM6,RAM7的输出分别为Aout0,Aout1,Aout2,Aout3,Aout4,Aout5,Aout6,Aout7;
将Aout0,Aout1,Aout2,Aout3,Aout4,Aout5,Aout6,Aout7返回输入到替换基元中,再输出就得到经过32×32即8*4×4的S盒变换的数据,此模式下Bout输出为0;
(2)6×4替换,当MODE_IN=01时,替换基元执行6×4替换,输入信号DATA_IN0,DATA_IN1,DATA_IN2,DATA_IN3,DATA_IN4,DATA_IN5,DATA_IN6,DATA_IN7经过输入信号处理电路处理,得:
Ain0[5:0]=DATA_IN0[5:0];即Ain0为DATA_IN0的低6位
Ain1[5:0]=DATA_IN1[5:0];
Ain2[5:0]=DATA_IN2[5:0];
Ain3[5:0]=DATA_IN3[5:0];
Ain4[5:0]=DATA_IN4[5:0];
Ain5[5:0]=DATA_IN5[5:0];
Ain6[5:0]=DATA_IN6[5:0];
Ain7[5:0]=DATA_IN7[5:0];
则:RAM0,RAM1,RAM2,RAM3,RAM4,RAM5,RAM6,RAM7的输入地址分别为Ain0,Ain1,Ain2,Ain3,Ain4,Ain5,Ain6,Ain7;
RAM0,RAM1,RAM2,RAM3,RAM4,RAM5,RAM6,RAM7的输出分别为Aout0,Aout1,Aout2,Aout3,Aout4,Aout5,Aout6,Aout7;
将Aout0,Aout1,Aout2,Aout3,Aout4,Aout5,Aout6,Aout7返回输入到替换基元中,再输出就得到经过48×32即8*6×4的S盒替换的数据,此模式下Bout输出为0;
(3)8×8替换,当MODE_IN=10时,替换基元执行8×8替换,在此运算状态下,输入信号DATA_IN0=DATA_IN1=DATA_IN2=DATA_IN3=DATA_IN4=DATA_IN5=DATA_IN6=DATA_IN7,
经过输入信号处理电路处理,得:
Ain0[5:0]=DATA_IN0[5:0];即Ain0为DATA_IN0的低6位
Ain1[5:0]=DATA_IN0[5:0];
Ain2[5:0]=DATA_IN0[5:0];
Ain3[5:0]=DATA_IN0[5:0];
Ain4[5:0]=DATA_IN0[5:0];
Ain5[5:0]=DATA_IN0[5:0];
Ain6[5:0]=DATA_IN0[5:0];
Ain7[5:0]=DATA_IN0[5:0];
则:RAM0,RAM1,RAM2,RAM3,RAM4,RAM5,RAM6,RAM7的输入地址分别为Ain0,Ain1,Ain2,Ain3,Ain4,Ain5,Ain6,Ain7;
RAM0,RAM1,RAM2,RAM3,RAM4,RAM5,RAM6,RAM7的输出分别为Aout0,Aout1,Aout2,Aout3,Aout4,Aout5,Aout6,Aout7;
将Aout0,Aout1,Aout2,Aout3,Aout4,Aout5,Aout6,Aout7返回输入到替换基元中,将它们分为四组:{Aout0,Aout1},{Aout2,Aout3},{Aout4,Aout5},{Aout6,Aout7},将这四组信号输入4选1输出数据选择电路,DATA_IN0[7:6]为控制信号:
DATA_IN0[7:6]=00时,Bout={Aout0,Aout1};
DATA_IN0[7:6]=01时,Bout={Aout2,Aout3};
DATA_IN0[7:6]=10时,Bout={Aout4,Aout5};
DATA_IN0[7:6]=11时,Bout={Aout6,Aout7};
输出Bout,即为经过8×8的S盒替换的数据。
CN201110284750.2A 2011-09-22 2011-09-22 一种基于ram共享技术的可重构s盒电路结构 Expired - Fee Related CN102347833B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201110284750.2A CN102347833B (zh) 2011-09-22 2011-09-22 一种基于ram共享技术的可重构s盒电路结构

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201110284750.2A CN102347833B (zh) 2011-09-22 2011-09-22 一种基于ram共享技术的可重构s盒电路结构

Publications (2)

Publication Number Publication Date
CN102347833A CN102347833A (zh) 2012-02-08
CN102347833B true CN102347833B (zh) 2014-07-09

Family

ID=45546147

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201110284750.2A Expired - Fee Related CN102347833B (zh) 2011-09-22 2011-09-22 一种基于ram共享技术的可重构s盒电路结构

Country Status (1)

Country Link
CN (1) CN102347833B (zh)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104615439A (zh) * 2015-02-13 2015-05-13 东南大学 一种可重构系统的配置控制器
CN105553646B (zh) * 2015-12-31 2018-09-18 清华大学无锡应用技术研究院 面向分组密码算法并行计算的可重构s盒电路结构
CN107066900A (zh) * 2017-04-18 2017-08-18 东南大学 面向分组密码算法的可重构s盒、可重构计算阵列及门控方法
CN107222304B (zh) * 2017-06-06 2020-06-26 河南大学 一种多体并行s盒的电路结构

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
刘政林 等.复合域算法的AES S盒电路实现.《应用科学学报》.2008,第26卷(第6期),全文.
复合域算法的AES S盒电路实现;刘政林 等;《应用科学学报》;20081130;第26卷(第6期);全文 *

Also Published As

Publication number Publication date
CN102347833A (zh) 2012-02-08

Similar Documents

Publication Publication Date Title
CN102347833B (zh) 一种基于ram共享技术的可重构s盒电路结构
CN109740754B (zh) 神经网络计算装置、神经网络计算方法及相关产品
US20080031454A1 (en) High throughput AES architecture
JP4527571B2 (ja) 再構成可能演算処理装置
CN104933008A (zh) 可重构系统和可重构阵列结构及其应用
CN108206736B (zh) 一种轻量级密码算法HBcipher实现方法与装置
CN101847137B (zh) 一种实现基2fft计算的fft处理器
CN103853524B (zh) 一种乘法器装置和实现乘法运算的方法
JP2005539293A (ja) 部分的にグローバルなコンフィギュレーションバスを用いたプログラマブルパイプラインファブリック
Abbas et al. Implementation of PRINCE algorithm in FPGA
CN105553646B (zh) 面向分组密码算法并行计算的可重构s盒电路结构
CN103777896A (zh) 基于3d存储器的地址生成器
CN107133194B (zh) 基于混合基底的可配置fft/ifft协处理器
CN101136070A (zh) 基于可重构架构的多协议射频标签读写器基带处理器
CN202475451U (zh) 一种基于ram共享技术的可重构s盒电路结构
CN103176766B (zh) 基于增强型lut5结构的二进制加减法器
CN116561819A (zh) 一种基于Toom-Cook环上多项式乘法的加解密方法及环上多项式乘法器
CN111258541B (zh) 乘法器、数据处理方法、芯片及电子设备
CN107203487B (zh) 一种抗功耗攻击的安全可重构架构
Nemati et al. A low-cost and flexible FPGA implementation for SPECK block cipher
CN104252560A (zh) 基于现场可编程门阵列的集中缓存式装置及设计方法
CN204203956U (zh) 数据总线宽度不相等的双口ram读写与仲裁控制器
CN106649905A (zh) 一种利用进位链的工艺映射方法
Dasalukunte et al. Hardware implementation of mapper for faster-than-Nyquist signaling transmitter
Zhang et al. Cube‐Based Synthesis of ESOPs for Large Functions

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20140709

Termination date: 20170922

CF01 Termination of patent right due to non-payment of annual fee