欢迎来到天天文库
浏览记录
ID:24956723
大小:50.50 KB
页数:4页
时间:2018-11-17
《基于usb和eda的硬件加密系统》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、基于USB和EDA的硬件加密系统
2、第1摘要:通用串行总线(USB)具有传输速度快、可靠性高、使用灵活等优点,作为通信接口规范他被广泛地应用在PC外设和便携式系统中。介绍了一种基于USB和EDA的硬件加密系统的设计方案,使用EDA技术,将USB控制器和加密算法的硬件集成到FPGA芯片中,实现了结构简单,实时性好的硬件加密系统。实际使用情况表明该系统,达到了设计要求。硬件加密,就必须要考虑计算机接口的问题。计算机的接口有许多种,如传统的串口和并口。串口的出现是在1980年前后,数据传输率是115~23
3、0kb/s,一般用来连接鼠标和外置Modem;并口的数据传输率比串口快8倍,标准并口的数据传输率为IMb/s左右,一般用来连接打印机、扫描仪等。早期的软件狗类加密硬件基本上都是使用并口的,不但极易与打印机冲突,而且容易被破解。要想设计出更可靠更完善的加密硬件,必须采用新的计算机接口。而近年来发展快速的USB接口技术为硬件加密提供了一条很好的道路。1总体方案的提出设计系统原则是在实用、可靠、经济的原则基础上,保证系统不仅能满足应用需要,而且要有灵活性、可扩展性和通用性。该系统有EDA技术、USB总线
4、协议、加密算法优化组合而成,系统的构成如图1所示。FPGA的作用之一是和PDIUSBD12进行通信,实现USB协议,从PDIUSBD12中获取数据并根据主机的要求发送数据。第二个作用就是加密算法的实现,完成传送数据的加密。2USB协议的实现2.1PDIUSBD12简介PDIUSBD12是Philips公司的一款较新型的专用USB通信控制芯片,符合USBI.1规范,是一款高性能USB接口器件,集成了SIE,FIFO存储器,收发器以及电压调整器。可与任何外部微控制器/微处理器实现高速并行接口(2MB/
5、5),在批量模式和同步模式下均可实现IMB/5的数据传输速率以及完全自治的直接内存存取DMA操作。2.2USB控制器的设计从硬件实现的角度出发,将PDIUSBD12控制器划分为分频器模块、沿控制器模块、输人/输出切换模块、设备收发器模块和请求处理模块。当系统的结构设计确定后,对于每个模块的设计首先要使用硬件描述语言(VHDL)完成系统的描述,然后使用语言级系统仿真及调试工具进行语言级功能仿真与调试。系统用VHDL语言来描述。VHDL语言是一种结构化语言,他支持结构化设计。结构化设计就是将一个系统划
6、分为多个子模块,而每个子模块又可以继续划分为更多的模块。首先根据系统的功能描述,将系统划分为接口清晰、相互关系简单的子系统,从而得到系统级的描述。之后,依次对各个子系统(或功能模块)进行结构设计和描述。逐级细化,最后完成设计。这实际上给出了模块划分的方法。在对系统进行划分时,并不是一次就把系统的所有模块划分得非常细致,而是按照层次化的思想自顶向下逐步细化。图2描述了本处理器的硬件模块结构框图,各模块的功能定义如下:(1)分频器模块由于PDUSBD12在读写时序上有时间限制,例如每次些操作之间的间隔
7、不能小于50ns,而FPGA的系统时钟频率一般都比较高,所以不能直接使用系统时钟控制PDIUSB12,必须进行分频。分频器模块的功能也就是按照要求有系统时钟生成所需频率的时钟信号。(2)沿控制器模块PDIUSBD12的读写操作都各自有一个读写控制信号WR-N和RD-N,每次读写操作都在对应的控制信号的下降沿触发,沿控制模块的功能就是可控的产生一个下降沿信号,用于控制读写操作。(3)输入/输出切换模块输入/输出切换模块在整个系统中非常重要,因为FPGA芯片和PDIUSBD12芯片之间的数据总线是双向
8、的总线,所以当读写操作之一在进行的时候另一个操作的信号源必须关闭,否则就会造成双驱动,这不但不能得到正确的数据还会损害芯片。输人/输出切换模块的功能就是根据当前的读写状况控制信号源,保证在一个时刻只有一个信号源驱动总线。(4)设备收发器模块这个模块是整个固件的核心模块,他完成的工作包括配置PDIUSBD12芯片、处理PDIUSBD12产生的中断、完成从缓存读取数据,并且根据需要将数据通过PDIUSBD12发送。设备收发器模块完成对每个主机请求的解析工作,此外,还要将解析完成的请求数据传递给请求处理
9、模块。(5)请求处理模块请求处理模块的作用是接收设备收发器模块解析完成的主机请求,并且决定如何处理此请求。
此文档下载收益归作者所有