新闻中心

EEPW首页>EDA/PCB>设计应用> 基于FPGA的PCI硬件加解密卡设计

基于FPGA的PCI硬件加解密卡设计

作者: 时间:2010-08-05 来源:网络 收藏

2.4 USB接口模块设计
本系统的USB选用CH375B,工作于USB-HOST主机方式,采用并行接口。在USB主机方式下,CH375B支持各种常用的USB全速设备,外部单片机需要编写固件程序按照相应的USB协议与USB设备通讯。USB接口模块电路图如图7所示。

本文引用地址://m.amcfsurvey.com/article/191636.htm


CH375B并行接口信号线包括:8位双向数据总线D7~DO、读选通输入引脚RD#、写选通输入引脚WR#、片选输入引脚CS#、中断输出引脚INT#以及地址输入引脚A0。CH375B的RD#和WR#可以分别连接到单片机的读选通输出引脚和写选通输出引脚,CS#由地址译码电路驱动,INT#输出的中断请求是低电平有效,可以连接到单片机的中断输入引脚,单片机使用中断方式获知中断请求。当WR#为高电平并且CS#和RD#及A0都为低电平时,CH375B中的数据通过D7~DO输出;当RD#为高电平并且CS#和wR#以及A0都为低电平时,D7~DO上的数据被写入CH375B中;当RD#为高电平并且CS#和WR#都为低电平而AO为高电平时,D7~DO上的数据被作为命令码写入CH375B中。

3 软件的设计与实现
软件主要分为驱动程序和应用程序两部分,分别用DriverStudio和Visual C++开发。驱动程序的设计关键是如何完成操作。基本功能包括设备的初始化、IO端口的读写操作、内存读写操作、中断的设置响应和调用等部分。卡插入主机时,从设备中读出产品ID(PlD)和厂商ID(VID),由这2个值来搜索匹配的inf文件,再由inf文件加载相应的驱动。应用程序通过调用Win32 API函数CreatFile来打开设备,然后使用DeviceloControl与驱动程序通信。在应用程序退出前使用CloseHandle关闭设备。DeviceIoControl使用不同的IOCTL命令来调用驱动程序完成不同的任务。

4 结束语
经测试,本卡数据加密存储速度为612 KByte/s,解密读取速度为630 KByte/s。使用情况:total logicelements 903l/12060(75%),total pin 84/173(49%)。在以后的设计中,应重点解决系统速度较慢的问题,另外,和USB的选型、算法的优化等有待改进。
本设计的创新点在于用加解密方法取代了通常的软件加解密方法,采用更为安全可靠的DESX算法来弥补DES算法的不足,使用了的IP软核设计方法实现DESX加解密模块和接口模块,提高了系统集成度,可移植性好,便于系统升级。在加解密速度方面,用逻辑综合式取代时钟驱动级联式,使加解密一组数据的时间由16个周期缩短为1个周期。本系统在需要高级保密的商业和军事领域,有着较好的应用前景。

超级电容器相关文章:超级电容器原理



上一页 1 2 3 下一页

评论


相关推荐

技术专区

关闭