首页 | 新闻 | 新品 | 文库 | 方案 | 视频 | 下载 | 商城 | 开发板 | 数据中心 | 座谈新版 | 培训 | 工具 | 博客 | 论坛 | 百科 | GEC | 活动 | 主题月 | 电子展
返回列表 回复 发帖

基于SOC的FPSLIC硬件实现分组加密算法

基于SOC的FPSLIC硬件实现分组加密算法

关键字:SOC   硬件   分组加密  

1  引言:


       美国Atmel公司生产的AT94K系列芯片是以Atmel 0.35 的5层金属CMOS工艺制造。它基于SRAM的FPGA、高性能准外设的Atmel 8位RISC AVR单片机。另外器件中还包括扩展数据和程序SRAM及器件控制和管理逻辑。图1-1是Atmel公司的FPSLIC内部结构图。


                  图1-1 FPSLIC内部结构图

       AT94K内嵌AVR内核,Atmel公司的FPSLIC可编程SOC内嵌高性能和低功耗的8位AVR单片机,最多还带有36KB的SRAM,2个UART、1个双线串行接口,3个定时/计数器、1个8 8乘法器以及一个实时时钟。通过采用单周期指令,运算速度高达1MPS/MHz,这样用户可以充分优化系统功耗和处理速度。AVR内核基于增强型RISC结构,拥有丰富的指令系统以及32个通用工作寄存器。而且所有通用寄存器都与算术逻辑单元ALU相连;另外,在一个时钟周期内,执行单条指令时允许存取2个独立的寄存器,这种结构使得代码效率更高,并且在相同的时钟频率下,可以获得比传统的CISC微处理器高10倍的数据吞吐量。AVR从片内SRAM执行程序,由于AVR运行代码存储在SRAM中,因此它可以提供比较大的吞吐量,这样可以使其工作在突发模式上。在这种模式上,AVR大多时间都是处于低功耗待机状态,并能在很短的时间里进行高性能的处理。微处理器在突发模式运行模式下的平均功耗要比长时间低频率运行时的功耗低得多。FPSLIC的待机电流小于100 ,典型的工作电流为2-3mA/MHz。在系统上电时,FPGA配置SRAM和AVR程序SRAM都能自动地通过Atmel在系统可编程串行存贮器AT17来装载。

       2    FPSLIC硬件的设计实现:

       2.1 硬件实现框图



                                                             图2-1系统硬件实现框图

       图2-1是为了实现加密算法的硬件框图。计算机通过它的串口和FPSLIC的通信端口UART0相连,用来进行数据的传送和接收。FPSLIC通过AVR的通信端口等待接收主机传来的信息,通过内部的下载程序将数据进行处理,最后再传回到主机上。图2-1中FPGA是一个计数器,此计数器一上电就从0计数,并用进位输出信号产生一个AVR中断,即进位输出信号RCO连接到AVR的中断信号INTA0。当AVR接收到由计数器的进位信号产生的中断时,则执行INTA0的中断服务程序(ISR)。在此期间,AVR就给INTA0产生的次数计数,并把它放到8位的AVR-FPGA数据总线上,这时就会触发AVR的写使能信号(FPGA的aWE信号端)和FPGA的I/O SELECT0信号(FPGA的LOAD信号端),同时从AVR——FPGA数据总线上将数据载入计数器。数码管的各极连接在实验板上的可编程端口,通过引脚配置用来显示数据。LED指示灯在AVR I/O输出的D口,直接将数据通过命令PORTD来显示。FPGA的时钟通过GCLK5选自AVR单片机的时钟。我们以DES数据加密为例,由仿真试验可以得出DES加密的速率为57.024 kbit/s,它大于串口的最大速率19.2kbit/s,因此可以实时进行数据的加密操作。
返回列表