电子计算机组成原理课程设计---模拟机的设计与实现.doc_第1页
电子计算机组成原理课程设计---模拟机的设计与实现.doc_第2页
电子计算机组成原理课程设计---模拟机的设计与实现.doc_第3页
电子计算机组成原理课程设计---模拟机的设计与实现.doc_第4页
电子计算机组成原理课程设计---模拟机的设计与实现.doc_第5页
已阅读5页,还剩6页未读 继续免费阅读

下载本文档

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

文档简介

模拟机的设计与实现课 程 设 计 课程名称电子计算机组成原理题目名称模拟机的设计与实现专业班级08计算机科学本(1)学生姓名张志强学 号50802011012指导教师李长旺二一年六月二十二日 目录一 程序设计概述21.1 课程设计目的21.2课程设计任务和基本要求2二 模型机的具体设计32.1.设计目标32.2.设计原理32.2.2控制台命令流程图32.2.3内存映象42.2.4微程序5三 课程设计具体实现步骤73.1按照图2连线73.2.微指令代码73.3分析83.4联机实现83.5结果分析8四设计心得8五. 参考文献91 程序设计概述1.1 课程设计目的通过对一个简单计算机的设计,对计算机的基本组成、部件的设计、部件间的连接、微程序控制器的设计、微指令和微程序的编制与调试等过程有更深的了解,加深对理论课程的理解。为今后的科研打下扎实的基础。1.2课程设计任务和基本要求 (1)按给定的数据格式和指令系统,理解为程序控制器的设计原理。(2)设计给定机器指令系统遗迹微程序流程图,安慰指令格式写出微程序的微指令代码。(3)连接逻辑电路,完成启动、测试、编程、校验和运行,并观测运行过程及结果。(4)将微程序控制器模块与运算器模块、存储器模块联机,组成一台模拟计算机。(5)用微程序控制器控制模型机的数据通路。(6)通过在模型机上运行由机器指令组成的简单程序,掌握机器指令与微指令的关系,建立计算机的整机概念,掌握计算机的控制机制。按指定应用项目进行汇编指令格式及功能设计,并设计相应的机器指令代码,按照模型及数据通路设计实现机器指令功能的微程序。2 模型机的具体设计2.1.设计目标 设计一台模型机实现IN(输入)、ADD(加法)、STA(存数)、OUT(输出)、JMP(无条件转移)指令系统。并通过给定的工作程序验证上述指令系统。2.2.设计原理2.2.1机器指令本设计实现的模型机共包含五条机器指令:IN(输入)、ADD(加法)、STA(存数)、OUT(输出)、JMP(无条件转移),其指令格式如下(前4位为操作码): 助记符机器指令码(二进制)说明微程序的入口地址(八进制)IN00000000“INPUT DEVICE”中的开关状态R010(取指令后续微指令默认地址为10)ADD addr00010000 XXXXXXXXRO+addrR011STA addr00100000 XXXXXXXXROaddr12OUT addr00110000 XXXXXXXXaddrLED13JMP addr01000000 XXXXXXXXaddrPC14其中IN为单字长(8位),其余为双字长指令,XXXXXXXX为addr对应的二进制地址码。2.2.2控制台命令流程图在测试程序装入内存后,机器自动执行控存中00号的微指令,产生控制台命令,其流程如下(01为取指微指令的地址): 图12.2.3内存映象本设计的工作程序的内存映象(装入起始地址00H)如下:地址(二进制)内容(二进制)助记符说 明十六进制代码0000 00000000 0000IN将输入数据送R0寄存器00000000 00010001 0000ADD OAH01100000 00100000 1010RO+0AHR0020A0000 00110010 0000STA 0BH03200000 01000000 1011R00BH040B0000 01010011 0000OUT 0BH05300000 01100000 10110BHLED060B0000 01110100 0000JMP 0107400000 10000000 000101HPC08010000 10100000 0001输入自定的数据0A012.2.4微程序微程序(主要ADD部分)微地址S3 S2 S1 S0 M CN WE A9 A8ABCUA5UA0(后续地址)十六进制代码0 30 0 0 0 0 0 0 0 11 1 00 0 00 0 00 0 0 1 0 00300E0040 40 0 0 0 0 0 0 0 10 1 10 0 00 0 00 0 0 1 0 10400B0050 50 0 0 0 0 0 0 1 10 1 00 0 10 0 00 0 0 1 1 00501A2060 61 0 0 1 0 1 0 1 10 0 11 0 10 0 00 0 0 0 0 106959A010 90 0 0 0 0 0 0 1 11 1 01 1 01 1 00 0 0 0 1 10901ED832.3设计流程图 3 课程设计具体实现步骤3.1按照图2连线 图23.2.微指令代码联机写入程序(微指令),按照实验要求的规定格式,将机器指令及微指令二进制代码表编辑成十六进制的文件。微指令代码如下:$M00018110$M0700E00D$M0E00E00F$M15070A01$M0101ED82$M08001001$M0F00A015$M1600D181$M0200C048$M0901ED83$M1001ED92$M17070A10$M0300E004$M0A01ED87$M1101ED94$M18068A11$M0400B005$M0B01ED8E$M1200A017$M0501A206$M0C01ED96$M13018001$M06959A01$M0D028201$M140020183.3分析程序思想如下:首先将输入数据送R0寄存器,然后送到ALU单元执行ADD操作,加法完成后将结果再送到R0寄存器,然后STA跳转,将R0寄存器的数据送到0BH,然后送显示器显示,送显后立即JMP指令回到微程序的01步,即继续执行ADD加法,一直循环。微程序中,当A9=0,A8=0时,选中Y0; 当A9=0,A8=1时,选中Y1; 当A9=1,A8=0时,选中Y2; 当A9=1,A8=1时,选中Y3 微指令解释:指令中S3CN为全0表示不执行任何运算操作,A9,A8如开始解释的表示选择外设,均为1表示选中扩展单元(EX UNIT)的Y3,而根据实验接线图可知,Y3表示不做任何操作,A,B,C字段为根据实验线路图中起作用的单元,从09开始A,B,C分别为110,110,110表示LDAR,PC-B,LDPC有效(附录图3),根据数据通路图,即是PC-AR,PC并自动+1,UA5UA0为000011,即下址为下一条微指令地址03H。09执行完后根据下址到达03,其中 A9,A8为01即是选中Y1,Y1与WE相连表示存储器工作,即RAM-BUS-AR,后续地址为04H。04指令中,A,B,C字段分别为011,000,000表示LDDR2有效,即表示将内存中的数据传送到DR2寄存器中,RAM-BUS-DR2,后续地址为05H。05这条指令的A,B,C字段为010,001,000,即是LDDR1,RS-B有效,表示叫R0的数据传送到DR1寄存器中,R0-DR1,后续地址为06H。06指令既为ADD运算,S3CN为100101,A,B,C字段为001,101,000,即LDRi,ALU-B逻辑运算单元有效,执行运算操作,将DR1和DR2中的数据相加,完成后将结果传送到R0,(DR1)+(DR2)-R0。即完成了一次加法操作。ADD指定完成后有JMP跳转到01H。一直循环进行加法运算。3.4联机实现测试数据:FEH结果为:FE-FF-00-01-FE-FF-00- 一直循环,每次加1。3.5结果分析ADD执行的是不产生进位的加法,所以实验结果只是每次在原来的数据上加01H。不产生进位加。四设计心得通过这次课程设计,对计算机的基本组成、部件的设计、部件间的连接、微程序控制器的设计、微指令和微程序的编制与调试等过程有更深的了解,加深了对组成原理理论课程的理解。通过自己对一系列微程序的编写,对程序执行的流程以及指令之间的跳转有了更深的理解,能够根据流程图和机器指令写出相应微程序,对简单模型机里的数据流向图也有了一定的理解,能看懂根据自己编写的微程序在模型机上的一步步流向,对ADD,ADC,BZC,RLC等指令的运用更加熟悉,对它们微程序的一步步流程也有了清晰的认识,通过对机器指令和微指令的分析和编写,理解了指令代码所对应的功能。本次实验中,在微程序的调试中花费不少时间,但通过观察模型机上的操作流向来检查错误收获较大,模型机能比较准确的看出自己出错的地方(即数据没有向题目要求的地方流动),通过对程序进行多次调试修改以及老师的帮助指导下得到正确结果。在这次课程设计中,很多计算机组成原理的知识在实际中得到运用,对组成原理的很多内容有了一个直观的认识,自身理论知识和动手能力得到很大提高。有很大的收获。主要结论本文主要是关于设计一台模型计算机,并且对计算机的基本组成、部件的设计、部件间的连接、模型机的硬件结构进行更深入的了解。掌握微程序控制器的设计、微指令和微程序的编制和微程序设计过程做了进一步的了解。4.2 对课程设计的认识通过本次课程设计,我更进一步了解了计算机的组成,线路的连接与模型机的各个硬件的结构,同时初步掌握了微程序微指令的一些编制与设计。从一种微观的角度更加了解计算机模型机,这样我对于计算机的了解更加深入。对于计算机的工作原理也有部分更深入的认识。这次课程设计使我从中获益匪浅。对计算机组成原理的理论知识有了更深刻的理解,对于以前一知半解的东西也有了充分的理解。因为课程设计是要求将以前在课堂上学的理论知识运用到实际的设计当中去,但是在设计过程中,我们一定会碰到各种各样的问题。但是为了解决这些问题,我们一定会更加仔细认真的去翻阅自己以前学过但是以为已经了解熟悉的东西。这在无形中帮助我们加深对所学知识的了解及运用能力,并且让我们明白什么地方是我们真正需要去关注的。而且这样我们对课本以及以前学过的知识有了一个更好的总结与理解。而课程设计需要我们不但通过翻阅复习以前学过的知识而且需要查阅更多的相关信息,如去图书馆查阅相关的书籍,去网上搜索相关的材料,最终确立了设计方案。在模型机设计过程中我碰到了许多问题,而这些问题都是需要我认真仔细才能检查出来,而且,这些设计是要通过系统的设计才能完成的,不能想到哪里就做到哪里,必须在设计之前有个系统的分析,在详细设计时更加要仔细对待,因为对于各个代码都不能出错,一些细微的错误就会导致所有的错误。所以这一周下来,是对我考虑问题及细致处理的一种考验。但是通过这次的设计我对于CPU指令系统和模型机的认识很大的提高,而且通过此次课程设计,对我们以后的工作和学习的帮助都很有用处。这是我们踏入社会前的一次模拟工作。给了我们很好的一次实践的机会。通过这次课设让我明白了理论和实际操作之间差距,而且也让我明确得意识到自己在学习上有很多的知识漏洞,应努力弥补,并且给了我努力的明确方向,知识只有会运用了才是真正的了解掌握了这些知识。而这些不了解的差距在以后的工作中将是致命的。所有又一次给我的提点。给我不断完善自己的机会。给了我实际工作的一点有用的经验,这是所有的理论都比不过实践的地方,而我在今后的学习中,也将向着这些方面去完善。3.4微程序控制器3.4.1微程序控制器的定义 微程序控制器的结构与微指令的格式密切相关。微程序控制器由控制存储器、微地址寄存器、微命令寄存器和地址转移逻辑几部分组成。微地址寄存器和微命令寄存器两者的总长度即为一条微指令的长度,二者合在一起称为微指令寄存器。控制存储器(ROM) ROM中存放微程序,也就是全部的微指令。ROM的容量取决于微指令的总数。假如控制器需要128条微指令,则微地址寄存器长度为7位。ROM的字长取决于微指令长度。如果微指令为32位,则ROM的字长就是32位。实际应用中ROM可采用EPROM或E2PROM、EAROM,用户写入和修改微程序比较方便。微命令寄存器 微命令寄存器暂存由控制存储器中读出的当前微指令中控制字段与测试判别字段信息,可由8D寄存器组成。微地址寄存器 微地址寄存器暂存由控制存储器读出的当前微指令的下址

温馨提示

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

评论

0/150

提交评论