首 页 用户登录 | ![]() |
|||
|
|||
按字母检索 | A | B | C | D | E | F | G | H | I | J | K | L | M | N | O | P | Q | R | S | T | U | V | W | X | Y | Z |
按声母检索 | A | B | C | D | E | F | G | H | J | K | L | M | N | O | P | Q | R | S | T | W | X | Y | Z | 数字 | 符号 |
|
![]() |
您的位置: 5VAR论文频道 → 论文中心 → 理工论文 → 电子通信 |
|
|||||
基于PCI总线加密卡硬件设计 | |||||
收集整理:佚名 来源:本站整理 时间:2009-01-10 22:39:22 点击数:[] ![]() |
|||||
[本篇论文由上帝论文网为您收集整理,上帝论文网http://paper.5var.com将为您整理更多优秀的免费论文,谢谢您的支持] 关键词:加密卡 PCI总线 PCI9052 ISP 单片机 加密是对软件进行保护的一种有效手段。从加密技术的发展历程及发展趋势来看,加密可大体划分为软加密和硬加密两种。硬加密的典型产品是使用并口的软件狗,它的缺点是端口地址固定,容易被逻辑分析仪或仿真软件跟踪,并且还占用了有限的并口资源。笔者设计的基于PCI总线的加密卡具有以下几个优点:第一,PCI总线是当今计算机使用的主流标准总线,具有丰富的硬件资源,因此不易受资源环境限制;第二,PCI设备配置空间采用自动配置方式,反跟踪能力强;第三,在PCI扩展卡上易于实现先进的加密算法。 1 总体设计方案 基于PCI总线的加密卡插在计算机的PCI总线插槽上(5V 32Bit连接器),主处理器通过与加密卡通信,获取密钥及其它数据。加密卡的工作过程和工作原理是:系统动态分配给加密卡4字节I/O空间,被加密软件通过驱动程序访问该I/O空间;加密卡收到访问命令后,通过PCI专用接口芯片,把PCI总线访问时序转化为本地总线访问时序;本地总线信号经过转换处理后,与单片机相连,按约定的通信协议与单片机通信。上述过程实现了主处理器对加密卡的访问操作。 加密卡硬件总体设计方案如图1所示。 2 硬件各组成部分说明 2.1 PCI9052部分 PCI9052是PCI总线专用接口芯片,采用CMOS工艺,160引脚PQFP封装,符合PCI总线标准2.1版。其总线接口信号与PCI总线信号位置对应,因此可直接相连,易于PCB实现。PCI9052的最大数据传输速率可达132MB/s;本地时钟最高可至40MHz,且无需与PCI时钟同步;可通过两个本地中断输入或软件设置产生PCI中断。它支持三种本地总线工作模式,实际设计采用地址和数据线非复用、8位本地数据总线、非ISA模式。 PCI9052内部有一个64字节PCI配置空间,一个84字节本地配置寄存器组。对PCI9052的配置可由主机或符合3线协议的串行EEPROM完成(注:ISA模式必须由串行EEPROM完成配置)。实际设计采用Microchip公司的93LC46B存放配置信息。系统初始化时,自动将配置信息装入PCI9052,约需780μs。如果EEPROM不存在或检测到空设备,则PCI9052设置为默认值。 在设计中,EEPROM用到的配置项目有:设备ID:9050;厂商ID:10B5;分类代码:0780;子系统ID:9050;子系统厂商ID:10B5;支持INTA#中断,PCI 3C:0100;分配4字节本地I/O空间:(例LAS0RR)0FFFFFFD;其它本地地址空间未使用:00000000;4字节本地I/O空间基地址(模4对齐):(LAS0BA)01200001(仅为示例);4字节本地I/O空间描述符:(LAS0BRD)00000022(非猝发、LRDYi#输入使能、BTERM#输入不使能、不预取、各内部等待状态数均为0、8位本地数据总线宽度、小Endian模式);中断控制/状态,Local 4C:00000143(LINTi1使能、LINTi1边沿触发中断选择使能、LINTi2不使能、PCI中断使能、非软件中断、ISA接口模式不使能);User I/O、从设备应答、串行EEPROM、初始化控制,Local 50:00024492。有两点要注意:一是设计中采用PLX公司推荐使用的串行EEPROM 93LC46B按字(16 bit)为单位组织;二是EEPROM开发器编辑输入与手工书写的顺序对应关系,以厂商ID:10B5为例,在开发器编辑输入的是b510,而不是10B5。 PCI9052本地信号的含义是:LAD[7..0]:本地8位数据总线;WR#:写有效;RD#:读有效;LW/R#:数据传输方向,高电平为写操作,低电平为读操作;LBE1#和LBE0#:字节使能,表明当前LAD[7..0]上的数据是第几个字节(0到3);BLAST#:PCI9052写数据准备好或读数据已取走;LRDYi#:外部设备(此设计指单片机)已把PCI9052写操作数据取走或读操作数据准备好;LINTi1:外部设备通过LINTi1向主机发送INTA#中断,当单片机验证密钥正确,向主处理器发送请求,表明可以开始从中读取相关数据。 需注意的是,PCI9052在使用时,某些引脚要加阻值为1kΩ~10kΩ的下拉或上拉电阻。因此在实现时,给MODE、LHOLD、LINTi1引脚加下拉电阻,CHRDY、EEDO、LRDYi#引脚加上拉电阻。 Tags: |
提供人:佚名 | |
【返回上一页】【打 印】【关闭窗口】 |
![]() |
5VAR论文频道 |
![]() |
5VAR论文频道 |
![]() |
关于本站 -
网站帮助 -
广告合作 -
下载声明 -
网站地图
Copyright © 2006-2033 5Var.Com. All Rights Reserved . |