带移位的简单模型机实验报告_第1页
带移位的简单模型机实验报告_第2页
带移位的简单模型机实验报告_第3页
带移位的简单模型机实验报告_第4页
带移位的简单模型机实验报告_第5页
已阅读5页,还剩12页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

计计算算机机组组成成原原理理 课课程程设设计计报报告告 设计题目设计题目 基本模型机的 设计与实现 专业班级专业班级 计算机科学与技术 1221 姓姓 名名 学学 号号 时时 间间 2012. 指导教师指导教师 李松涛 课程设计成绩评定表课程设计成绩评定表 指导教师评语: 成绩: 指导教师: 年 月 日 1 1设计背景设计背景 .1 1 2 2设计目标设计目标 .1 1 3 3概要设计概要设计 .2 2 31 设计目的.2 3.2 设计内容.2 4 4详细设计详细设计 .4 4 41 系统需求分析.4 42 系统目标.4 43 功能分析.5 44 详细步骤.5 4.4.1 根据实验原理设计数据通路框图。.5 4.4.2 根据机器指令画出对应的微程序流程图.5 4.4.3 根据微程序流程图设计微指令并转换成 16 进制代码文件。.6 4.4.4 写程序.7 4.4.5 实验接线.8 4.4.6 仔细查线无误后接通电源.9 4.4.7 读写微程序和程序.9 4.4.8 运行程序.10 5 5调试与分析调试与分析 .1111 5.1 调试步骤.11 5.5.1 初始状态.11 5.5.2 从实验电路中装入第一个加数到 R0 中。.11 5.5.3 将 RAM 中另外一个加数 13H 送入 DR2 中.12 5.5.4 经过运算最终结果.12 5.2 验证分析.13 6 6总结总结 .1313 参考文献(资料)参考文献(资料) .1414 1 1设计背景 通过计算机组成原理理论课和几次实验的学习,尝试设计六条机器指令,并编写 相应的微程序,完成由基本单元电路构成一台基本模型机,再经过调试指令和模型机 使其在微程序的控制下自动产生各部件单元的正常工作控制信号。 在设计基本模型机 4 的实验过程中,个别部件单元的控制信号是人为模拟产生的, 而本课程设计将能在微程序控制下自动产生各部件单元控制信号,实现特定指令的功 能。这里,计算机数据通路的控制将由微程序控制器来完成,CPU 从内存中取出一条机 器指令到指令执行结束的一个指令周期,全部由微指令组成的序列来完成,即一条机 器指令对应一条微程序。 本课程设计要求实现六条机器指令:IN(输入),与 ADD(逻辑加),STA(存数), OUT(输出),JMP(跳转),RL(左移)。 2设计目标 在“微程序控制器的组成与微程序设计实验”的基础上,将第一部分中的各单元 组成系统,构造一台基本模型计算机。 本次课程设计主要是为其定义六条机器指令,编写相应的微程序,并上机调试运 行,形成整机概念。 用微程序控制器实现以下指令功能,设计各指令格式以及编码,并实现各机器指 令微代码,根据定义的机器指令,自拟编写加 ADD,循环左移 RLC 的应用程序。 全部微指令设计完毕后,编写二进制代码,即使每条指令代码化。连接线路在计 算机组成原理教学实验箱上运行,并显示输出实验结果。 2 3概要设计 31 设计目的 1. 在掌握部件单元电路实验的基础上,进一步将其组成系统构造一台稍微复杂 的模型计算机。 2. 为其定义六条机器指令,并编写相应的微程序,具体上机调试掌握整机概念。 3.2 设计内容 部件实验过程中,各部件单元的控制信号是人为模拟产生的,而本次实验将能在 微程序控制下自动产生各部件单元控制信号,实现特定指令的功能,这里,计算机数 据通路的控制将由微程序控制器来完成,CPU 从内存中取出一条机器指令到指令执行结 束的一个指令周期全部由微指令组成的序列来完成,即一条机器指令对应一个微程序。 本实验采用六条机器指令:IN,OUT,STA,加 ADD,左移 RL,JMP 其指格式如下: 地址 内容 助记符 说明 IN ; “输入开关量”R0 ADD0DH ; R00DHR0 RL STA0BH ; R00BH OUT0BH ; 0BHBUS JMP 00H ;00HPC ;自定义数据 ;结果存放 3 单为了向 RAM 中装入程序和数据,检查写入是否正确,并能启动程序执行,还必须设 计三个控制台操作微程序. 存储器读操作:拨动总清开关 CLR 后,控制台开关 SWB,SWA 为”0 0”时,按 START 微动开关,可对 RAM 连续手动读操作. 存储器写操作:拨动总清开关 CLR 后,控制台开关 SWB SWA 置为”0 1”时,按 START 微动开关可对 RAM 进行连续手动写入. 启动程序:拨动总清开关 CLR 后,控制台开关 SWB SWA 置为“1 1”时,按 START 微动开关,既可转入到第 01 号“取址”微指令,启动程序运行. 上述三条控制台指令用两个开关 SWB SWA 的状态来设置,其定义如下表3-1 表 3-1 读写变化 SWBSWA 控制台指令 0 0 1 0 1 1 读内存(KRD) 写内存(KWE) 启动程序(RP) 根据以上要素设计数据通路框图,如图 3-1: 图 3-1 数据通路框图 4 下面介绍指令寄存器(IR):指令寄存器用来保存当前正在执行的一条指令。当 执行一条指令时,先把他从内存取到缓冲寄存器中,然后再传送至指令寄存器。指令 划分为操作码和地址码字段,由二进制数构成,为了执行任何给定的指令,必须对操 作码进行测试P (1),通过节拍脉冲 T4 的控制以便识别所要求的操作。“指令译码 器:”(实验板上标有“INS DECODE”的芯片)根据指令中的操作码译码强置微控器 单元的微地址,使下一条微指令指向相应的微程序首地址。 本系统有两种外部 I/O 设备,一种是二进制代码开关,它作为输入设备(INPUT DEVICE);另一种是数码块,它作为输出设备(OUT DEVICE)。例如:输入时,二进 制开关数据直接经过三态门送到总线上,只要开关状态不变,输入的信息也不变。输 出时,将输出数据送到数据总线上,当写信号(W/E)有效时,将数据打入输出锁存器, 驱动数码块显示。 4详细设计 41 系统需求分析 一台计算机所能执行的各种指令集合称为指令系统或指令集。一台特定的计算机 只能执行自己指令系统中的指令。因此,指令系统就是计算机的机器语言。指令系统 表征着计算机的基本功能和使用属性,它是计算机系统设计中的核心问题。指令系统 的设计主要括指令功能、操作类型的设计,寻址方式和指令格式的设计。 计算机的性能与它所设置的指令系统有很大的关系,指令系统反映了计算机的主 要属性,而指令系统的设置又与机器的硬件结构密切相关。指令是计算机执行某种操 作的命令,而指令系统是一台计算机中所有机器指令的集合。通常性能较好的计算机 都设置有功能齐全、通用性强、指令丰富的指令系统,而指令功能的实现需要复杂的 硬件结构来支持。 5 42 系统目标 在基本模型机的基础上改进并实现 IN,OUT,STA, ADD, RL,JMP 六条指令。 43 功能分析 该系统实现的功能是对输入的数据可以和内存中的数据进行连续的加左移运算, 并对其结果进行存储,显示等功能,从而得到一个简易的复杂模型机所实现的功能。 44 详细步骤 4.4.1 根据实验原理设计数据通路框图。 4.4.2 根据机器指令画出对应的微程序流程图 本实验的微程序流程见图 4-1、4-2,当拟定“取指”微指令时,该微指令的判别 测试字段为 P(1)测试。由于“取指”微指令是所有微程序都使用的公用微指令,因 此 P(1)的测试结果出现多路分支。本机用指令寄存器的前 4 位 I7I4 作为测试 条件,出现 5 路分支,占用 5 个固定微地址单元。 实验机控制操作为 P(4)测试, 它以控制开关 SWC、SWA 作为测试条件,出现了 3 路分支,占用 3 个固定微地址单 元。当分支微地址单元固定后,剩下的其它地方就可以一条微指令占用控存一个微地 址单元随意填写。 注意:微程序流程图上的单元地址为 16 进制。 图 4-1 微程序流程图 6 图 4-2 微程序流程图 4.4.3 根据微程序流程图设计微指令并转换成 16 进制代码文件。 当全部微程序设计完毕后,应将每条微指令代码化,即按微指令格式将 4-1 和 4-2 微程序流程图转化成二进制微代码表,如表 4-1 所示,再转换成 16 进制代码文件。 微地址S3 S2 S1 S0 M Cn WE A9 A8 ABCuA5 -uA0 0 00 0 0 0 0 0 0 1 10000001000 1 0 0 0 0 0 10 0 0 0 0 0 0 1 11101101100 0 0 0 1 0 0 20 0 0 0 0 0 0 0 11000000010 0 1 0 0 0 7 0 30 0 0 0 0 0 0 0 11100000000 0 0 1 0 0 0 40 0 0 0 0 0 0 0 10110000000 0 0 1 0 1 0 50 0 0 0 0 0 0 1 10100010000 0 0 1 1 0 0 61 0 0 1 0 1 0 1 10011010000 0 0 0 0 1 0 70 0 0 0 0 0 0 0 11101101100 0 1 1 0 1 1 00 0 0 0 0 0 0 0 01101101100 0 0 0 0 1 1 10 0 0 0 0 0 0 1 11101101100 0 0 0 1 1 1 20 0 0 0 0 0 0 1 11101101100 0 0 1 1 1 1 30 0 0 0 0 0 0 1 11101101100 0 1 1 1 0 1 40 0 0 0 0 0 0 1 11101101100 1 0 1 1 0 1 50 0 0 0 0 0 1 0 10000010000 0 0 0 0 1 1 60 0 0 0 0 0 0 0 11100000000 0 1 1 1 1 1 70 0 0 0 0 0 0 0 10100000000 1 0 1 0 1 2 00 0 0 0 0 0 0 1 11101101100 1 0 0 1 0 2 10 0 0 0 0 0 0 1 11101101100 1 0 1 0 0 2 20 0 0 0 0 0 0 0 10100000000 1 0 1 1 1 2 30 0 0 0 0 0 0 1 10000000000 0 0 0 0 1 2 40 0 0 0 0 0 0 0 00100000000 1 1 0 0 0 2 50 0 0 0 0 1 1 1 00001010000 0 0 0 0 1 2 60 0 0 0 0 0 0 0 11010001100 0 0 0 0 1 2 70 0 0 0 0 1 1 1 00001010000 1 0 0 0 0 3 00 0 0 0 0 1 1 0 10001010000 1 0 0 0 1 表 4-1 二进制微代码表 4.4.4 写程序 联机读/写程序 按照规定格式,将机器指令及表 52 微指令二进制表成十六进制的如下格式文件。 微指令格式中的微指令代码微 将表 52 中的 24 位微代码按从左到右分成 3 个 8 位, 将此三个 8 位二进制代码化为相应的十六进制数即可。 程 序 $P0000 $P0110 $P020A $P0370 $P0420 $P050B $P0630 $P070B 8 $P0840 $P0900 $P0A13 微程序 $M $M0182ED05 $M0250C004 $M0304E004 $M0405B004 $M0506A205 $M06019A95 $M070FE004 $M088AED05 $M098CED05 $M0A0EA004 $M0B $M0C0D2004 $M0D098A06 $M0E080A07 $M0F $M $M1183ED01 $M1287ED05 $M1399ED05 $M149CED05 $M151D8235 $M161F8235 $M $M $M191AE004 $M1A1BA004 $M1B010A07 $M1C81D104 $M1D1E8825 $M1E $M1F20882D $M $M $M $MD $M $M393A881D $M3A $M3B080A07 9 $M3C098A06 4.4.5 实验接线 在实验 4.1 的基础上,将 ALUO2 连 BUS4,ak 与实验 4.1 相同,详细如下: a、跳线器 J1J12 全部拨在右边(自动工作方式) ; b、跳线器 J16、J18、J23、J24 全部拨在左边; c、跳线器 J13J15、J19、J25 全部拨在右边; d、跳线器 J20J22、J26、J27 连上短路片; e、UJ1 连 UJ2,JSE1 连 JSE2,SJ1 连 SJ2; f、MBUS 连 BUS2; g、REGBUS 连 BUS5; h、PCBUS 连 EXJ2; i、 ALUBUS 连 EXJ3; j、 ALUO1 连 BUS1; k、EXJ1 连 BUS3; l、 ALUO2 连 BUS4。 4.4.6 仔细查线无误后接通电源 4.4.7 读写微程序和程序 手动方法写微程序参看实验三。 手动方法写代码程序(机器指令)步骤如下: 通过上一步将机器指令对应的微代码正确地写入 E2ROM 2816 芯片后,再进行机 器指令程序的装入和检查。 A. 将“编程开关”置“运行”位置, “运行方式”开关置“单步”位置。 B. 拨动总清开关(01) ,微地址寄存器清零,程序计数器清零。然后使控制开 关 SWC、SWA 开关置为“0 1” ,按动一次“启动运行”开关,微地址显示灯 LUA0LUA5 显示“” ,再按动一次“启动运行”开关,微地址显示灯 LUA0LUA5 显示“” ,此时数据开关的内容置为要写入的机器指令,再按动一次“启动运行”开 关,即完成该条指令的写入。若仔细阅读微程序流程,就不难发现,机器指令的首地 址只要第一次给入即可,PC 会自动加 1,所以,每次按动“启动运行”开关,只有在 微地址灯显示“”时,才设置内容,直到所有机器指令写完。 C. 写完程序后须进行检验。拨动总清开关(01)后,微地址清零,PC 程序计数器 10 清零,然后使控制开关 SWC、SWA 为“0 0” ,按动“启动运行”开关,微地址灯将 显示“” ,再按“启动运行”开关,微地址灯显示为“” ,再按动“启动运行”开 关,微地址灯显示为“” ,此时总线数据显示灯 LZD0LZD7 显示为该首地址的内容, 再按动一次“启动运行”开关,微地址灯显示为“” ,2 位数码管即显示 RAM 中的 程序。不断按动“启动运行”开关,可检查后续单元内容。 注意:每次仅在微地址灯显示为“”时,2 位数码管显示的内容才是相应地址中的 机器指令内容。 联机读/写微程序和程序 用联机软件的装载功能将 16 进制格式文件(文件名为 C8JHE2)装入实验机即可 (详细操作见随机软件的 README) 。 4.4.8 运行程序 单步运行程序 A. “编程开关”置“运行”状态, “运行方式”开关置为“单步”状态,“运行 控制”开关置为“运行”状态。 B. 拨动总清开关(01),微地址清零,PC 计数器清零,程序首地址为 OOH。 C. 按动“启动运行”开关,即单步运行一条微指令。对照微程序流程图,观察微 地址显示灯是否和流程一致。 连续运行程序 A. “编程开关”置“运行”状态, “运行方式”开关置为“连续”状态,“运行 控制”开关置为“运行”状态。 B. 拨动总清开关,清微地址及 PC 计数器,按动“启动运行”开关,系统连续行 程序。如果要停止程序的运行,只需将“运行控制”开关置为“停止”状态,系统就 停机。 C. 本实验的运行结果最终显示在输出设备 2 位数码管上。 11 5 调试与分析 5.1 调试步骤 5.5.1 初始状态 下图 5-1 为初始状态 图 5-1 初始状态 5.5.2 从实验电路中装入第一个加数到 R0 中。 如下图 5-2 装数 12 图 5-2 装数 5.5.3 将 RAM 中另外一个加数 13H 送入 DR2 中 如下图 5-3 存另一个数 图 5-3 存另一个数 5.5.4 经过运算最终结果 运算结果

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论