logo资料库

微机原理与接口技术课程设计(加密卡).doc

第1页 / 共11页
第2页 / 共11页
第3页 / 共11页
第4页 / 共11页
第5页 / 共11页
第6页 / 共11页
第7页 / 共11页
第8页 / 共11页
资料共11页,剩余部分请下载后查看
课程设计说明书 课程设计名称: 微机原理与接口技术课程设计 课程设计题目: 加密卡 学 院 名 称: 信息工程学院 专业:计算机科学与技术 班级: 070612 学号: 07061213 姓名: 何沛浓 评分: 教师: 20 10 年 7 月 8 日 1
一、课设选题及功能说明 1.1 课程设计题目:加密卡 1.2 课程设计任务 (1) 通过微机 ASI 总线,对设计的“机密卡”进行软件加密信号比较, 实现对软件使用权的保护。 二、原理图设计 2.1 原理设计 首先在 2732 中,主要有 8 根数据线和 12 根片内地址线,这些线要接到 ISA 插槽 中的 相应 的数 据线 和地 址线 上。 对于 2732 的控 制线 ,OE#和 CE#接到 74LS138 的 Y0#,用来实现芯片选择。低电平有效。 芯片译码部分。根据要求,这里地址范围选择的是 E8000H-EFFFFH, 根据所选的 2732 芯片为 4K*8 位的,因此需要 12 根地址线作为片内地址, 即 A0-A11。而根据地址范围,A19、A18、A17、A15 为高电平,A16 为低 电平,故使 A19、A18、A17、A15 四根地址线通过 3 片与门和一片非门连 接到译码器的 E1 使能端上。因为 A16 为低电平,则把它通过一片非门接到 译码器的 E2 使能端。因为 SMEMW 为低电平,ANE 为高电平,则通过一 片非门和一片与门接到译码器的 E3 使能端。对于剩下的 A14、A13、A12 三根地址线连接到 74LS138 译码器的 A、B、C 端,通过这三根地址线的变 化来选中相应的芯片。 2.2 原理图如下: 本设计要求通过 ISA 总线设计加密卡,电路原理图如图 1 所示: 1
图 1 三、印刷电路图设计 3.1 印刷电路图设计 根据电路原理图设计印刷电路板图,设计中涉及:ISA 总线,译码器 74LS138,EPROM 芯片 2732。在确定了电路和元件之后,就可以开始设计印 刷电路图了。设计的基本方法和步骤如下: (1) 确定印刷电路板尺寸大小。根据 ISA 总线的尺寸、元器件的数量和 预计布线的复杂度等初步确定印刷电路板尺寸。 (2) 确定印刷电路层次。由于 ISA 设计插卡,ISA 插座信号分为 A、B 两面,所以采用双面板。 (3) 印刷电路板和外部信号连接。一是严格按照 ISA 总线连接,二是从 2732 中的数据流出。 (4) 元器件布局。各组件排列,分布要均匀和合理。不仅要从美观,整 齐和结构严谨的工艺要求,而且要从抗干扰的角度仔细考虑磁场兼 2
容性、走线短、交叉少和取耦等方面处理。 (5) 信号连接。由于本次实验元器件很少,故采用的是手动布线方法设 计。布线中应该注意以下原则: ○1 同一层面信号线不能短路。如果会出现交叉的情况,可用穿孔的办 法解决。 ○2 两个层面布线纵横相交。在顶层用竖线,底层就尽力选择横线,这 样便于检查。 ○3 线条宽窄和线条间距要适中。孔与线。。线与线要有一定的距离。 3.2 印刷电路图如下: 经过多次设计修改,本加密卡的 PCB 图如图 2 所示: 图 2 四、调试分析 4.1 硬件测试 3
(1)问题:在实现芯片译码时,A19、A18、A17、A15 为高电平,与 E1# 连 接 , 但 是 用 了 三 个 与 门后 , 直 接 与 E1#连 接 了 , 导 致 地 址 范 围 不是 E8000H-EFFFFH。 解决:加一个非门,这样地址范围就是实验所要求范围了。在 74LS138 的 E2#也是低电平有效,故与此连接的地址线也应该是低电平。 (2)问题:在设计 PCB 板的时候,由于芯片的位置摆放不合理,故在布局 之后的布线不是很整齐和结构也不是很严谨。 解决:重新按照印刷电路图设计要求,合理布局。 4.2 软件测试 (1)问题:在 ADD SI,2 指令中,由于 2732 是只有 8 位数据线,一次读出 的是一个字节,而不是一个字(16 位)。 解决:修改为 ADD SI,1。每一次从 2732 读出数据均为 8 位。 (2)问题:设计 2732 中存储的数据时候,从 E8000H 开始的空间存储的 是"0BYEBYE$",但在 MOV CX,7.少计算了$. 解决:用将其改为 MOV CX,8.循环的次数为 8 次。这样用 9 号功能 的时候才正确能显示出从 2732 中读出的数据。 五、用户使用说明 该加密卡设定其目的是为保护软件版权。用户在购买软件时,会附带对 应的加密卡。在运行该软件的时候,只需将其加密卡插入电脑主板的空余 ISA 插槽,软件即可正常运行。 六、小结 在过本次课程设计中,通过一个实际的 ISA 总线插卡设计和调试, 对课本知识进行了实际的运用。例如 2732,74LS138,,ISA 总线等。在最初 拿到题目的时候,因为从来没有做过软件和硬件结合的课设,感到有点无从 下手。最后在老师的知道下,通过查阅资料,独立完成了电路原理图,PCB 4
图,验证程序的设计。本次课设的主要收获有: 1、 通过自学,熟悉和掌握了 Protel 99se 的是用; 2、 对 ISA 总线有了更深入的理解; 3、 理解了汇编语言编程和硬件结合的基本方法; 虽然是一次简单的加密卡电路设计,也没有遇见很多复杂的问题,但是通过 小组合作,独立完成了一次较为完整的软件和硬件的设计,很有成就感。 附录一: 加密卡电路原理图 3: 图 3 附录二: 加密卡 PCB 图 5
图 4 附录三: 图 5 6
附录四: 源程序 加密卡验证程序 DATA SEGMENT ;定义菜单选项 MENV DB "1. 欢迎光临 2.谢谢再次光临" DB “3.您好,老朋友,0 再见!” DB " 请选择:$" ERRMSG DB "选择有误,请重新选择!$" ;定义出错时候的显示 信息 SEL SEL0 SEL1 SEL2 SEL3 DB DB DB DB DB 100dup(?) 100dup(?) ;保存从 2732 中 E8000H 读出对应数据 100dup(?) ;保存从 E8008H 读出的对应数据 100dup(?) ;保存从 E8011H 读出的对应数据 100dup(?) ;保存从 E8019H 读出的对应数据 DATA CODE ENDS SEGMENT ASSUME DS:DATA,CS:CODE START MOV AX,DATA MOV DX,AX AGAIN LEA DX,MENV ;显示菜单 MOVE AH,9 INT 21H MOV AH,1 INT 21H CMP AL,'0' ;用户非法输入,在 0-3 以外的数 JB ERROR 7
分享到:
收藏