计算机组成原理课程设计_第1页
计算机组成原理课程设计_第2页
计算机组成原理课程设计_第3页
计算机组成原理课程设计_第4页
计算机组成原理课程设计_第5页
已阅读5页,还剩7页未读 继续免费阅读

下载本文档

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

文档简介

1、计算机信息工程学院计算机组成原理课 程 设 计 报 告题目: 模型机的设计与实现 专 业: 计算机科学与技术(网络方向)班 级: 学 号: 姓 名: 指导教师: 完成日期: 目 录一、 设计概述21.1设计目的2二、设计原理及内容32.1设计基本原理32.2需执行的机器指令32.3数据通路图42.4微指令格式52.5微程序地址的转移52.6机器指令的写入、读出和执行6三、 设计步骤83.1编写机器指令83.2绘制微程序流程图83.3绘制微指令93.4连接实验线路103.5写指令103.5.1写微指令103.5.2写机器指令11四、运行结果11参考文献12一、 设计概述1.1设计目的随着社会科技

2、的发展,计算机被应用到各行各业,人们步入自动化、智能化的生活阶段。本次课程设计课题是基本模型机的设计与实现,它正体现了这一点。利用CPU与简单模型机来实现计算机组成原理课程及实验中所学到的实验原理和编程思想,硬件设备自拟,编写指令的应用程序,用微程序控制器实现了一系列的指令功能,最终达到将理论与实践相联系。本次设计完成了各指令的格式以及编码的设计,实现了各机器指令微代码,形成具有一定功能的完整的应用程序。在“微程序控制器的组成与微程序设计实验”的基础上,将第一部分中的各单元组成系统,构造一台基本模型计算机。1.掌握机器指令与微程序的对应关系。2.掌握机器指令的执行流程。3.掌握机器指令的微程序

3、的编制、写入。4.在掌握部件单元电路实验的基础上,进一步将组成系统,构成一台基本模型计算机。5.为其定义五条机器指令,并编写相应的微程序,上机调试,掌握整机概念。二、设计原理及内容2.1设计基本原理部件实验过程中,各部件单元的控制信号是人为模拟产生的,如运算器实验中对74LS181芯片的控制,存储器实验中对存储器芯片的控制信号,以及几个实验中对输入设备的控制。而本次实验将能在微程序控制下自动产生各部件单元控制信号,实现特定指令的功能。这里,计算机数据通路的控制将由微程序控制器来完成,CPU从内存中取出一条机器指令到指令执行结束的一个指令周期全部由微指令组成的序列来完成,即一条机器指令对应一段微

4、程序。本系统使用两种外部设备,一种是二进制代码开关(DATA UNIT),它作为输入设备;另一种是发光二极管(BUS UNIT上的一组发光二极管),它作为输出设备。例如:输入时,二进制开关数据直接经过三态门送到总线上,只要开关状态不变,输入的信息也不变。输出时,将输出数据送到数据总线BUS上,驱动发光二极管显示。2.2需执行的机器指令本次设计采用五条机器指令;IN(输入)、ADD(加)、OR(或)、OUT(输出)、NOT(加3取反)、JMP(无条件转移),其指令格式如表2-1所示。助记符机器指令码说明IN0000 0000“DATA UNIT”中的开关状态R0ADD addr0001 0000

5、 XXXXXXXXR0+addraddrOR addr0010 0000 XXXXXXXXR0 OR addr-R0NOR addr0011 0000 XXXXXXXXOUT addr0100 0000 XXXXXXXXaddrBUSJMP addr0101 0000 XXXXXXXXaddrPC表2-1 机器指令格式表其中机器指令码的最高8位为操作码。IN为单字长(8位),其余为双字长指令,XXXXXXXX为addr对应的二进制地址码。2.3数据通路图实验系统的数据通路图,如图2.1所示。图2.1 数据通路图注意:片选信号CE=0为有效电平,CE=1为无效电平。WE=1为写入,WE=0为读出

6、。LOAD和LDPC同时为“1”时,可将总线上的数据装入到PC中;LDPC为“1”,同时LOAD为“0”时,将PC中内容加1。M=0为算术运算,M=1为逻辑运算。CN=0表示运算开始时低位有进位,否则低位无进位。图2.1中包括运算器、存储器、微控器、输入设备、输出设备以及寄存器。这些部件的动作控制信号都有微控器根据微指令产生。需要特别说明的是由机器指令构成的程序存放在存储器中,而每条机器指令对应的微程序存储在微控器中的存储器中。2.4微指令格式微指令字长共24位,其控制位顺序如图2.2所示。242322212019181716987654321S3S2S1S0MCnwECeLDPCABCuA5

7、uA4uA3uA2uA1uA0B字段121110选择000001RS-B010RD-B011RI-B100299-B101ALU-B110SW-B111PC-BC字段987选择000001P(1)010P(2)011P(3)100P(4)101ARA字段151413选择000001LDRi010LDDR1011LDDR2100LDIR101LOAD110LDAR图2.2 微指令格式图其中UA5UA0为下一条微指令微地址,A、B、C为三个译码字段,分别由三个控制位译码出多种不同控制信号。A字段中的LDRi为打入工作寄存器信号的译码器使能控制位。B字段中的RS-B、RD-B、RI-B分别为源寄存器

8、选通信号、目的寄存器选通信号及变址寄存器选通信号,其功能是根据机器指令来进行三个工作寄存器R0、R1及R2的选通译码。C字段中的P(1)P(4)是四个测试字位。其功能是根据机器指令及相应微代码进行译码,使微程序转入相应的微地址入口,从而实现微程序的顺序、分支、循环运行,其原理如图2.3所示。AR为算术运算是否影响进位及判零标志控制位,其为零有效。注意:根据后面的实验接线图,A字段的LDRi与数据通路图中的LDR0为同一个信号。B字段的RS-B与数据通路图中的R0-B为同一个信号。2.5微程序地址的转移本实验系统的指令寄存器(IR)用来保存当前正在执行的一条指令。当执行一条指令时,先把该指令从内

9、存取到缓冲寄存器中,然后再传送至指令寄存器。指令划分为操作码和地址码字段,由二进制数构成,为了执行任何给定的指令,必须对操作码进行测试P(1),通过节拍脉冲T4的控制以便识别所要求的操作。“指令译码器”(实验板上标有“INS DECODE”的芯片)根据指令中的操作码译码后的结果,将微控器单元的微地址修改为下一条微指令的地址。SWB地址修改要依靠实验系统的微程序地址转移电路来完成,该电路如图2.3所示。图2.3 微程序地址转移电路注意:FC:进位标志FZ:0标志SWA、SWB存储器读写控制标志P(1)P(4):微指令C字段译码输出结果I2I7:机器指令第2位第7位。2.6机器指令的写入、读出和执

10、行为了向RAM中装入机器指令程序和数据,检查写入是否正确,并能启动机器指令程序执行,还必须设计三个控制台操作微程序。存储器读操作(KRD):拨动总清开关CLR(使CLR从101)后,控制台开关SWB、SWA置为“0 0”时,按START微动开关,可对RAM连续手动读操作。存储器写操作(KWE):拨动总清开关CLR后,控制台开关SWB、SWA置为“0 1”时,按START微动开关可对RAM进行连续手动写入。启动程序:拨动总清开关CLR后,控制台开关SWB、SWA置为“1 1”时,按START微动开关,即可转入到第25号“取指”微指令,启动程序运行。上述三条控制台指令用两个开关SWB、SWA的状态

11、来设置,其定义如表2-3所示。SWBSWA控制台指令00读内存(KRD)01写内存(KWE)ll启动程序(RP)表2-3 控制台指令三个控制台操作微程序的流程如图2.4所示。PC-ARPC+1PC-ARPC+1图2.4 控制台操作微程序流程图控制台操作为P(4)测试,它以控制台开关SWB、SWA作为测试条件,出现了3路分支,占用3个固定微地址单元。当分支微地址单元固定后,余下的微指令可以存放在控制存储器的其他任意单元中。当设计“取指”微指令时,该微指令的判别测试字段为P(1)测试。由于“取指”微指令是所有微程序都使用的公用微指令,因此P(1)的测试结果出现多路分支。本机用指令寄存器的前6位(I

12、R7IR2)作为测试条件,出5路分支,占用5个固定微地址单元。三、 设计步骤3.1编写机器指令设计各条机器指令代码及数据,并为指令和数据分配存储地址。本次设计机器指令程序如表3-1所示。地址内容助记符说明0100 00000000 0000IN“DATA UNIT”中的开关状态R00100 00010001 0000ADD4BHR0+4BH4BH0100 00100100 10110100 00110010 0000OR4CHR0 or 4CHR00100 01000100 11000100 01010011 0000NOR4DH R0 or 4DH R00100 01100100 11010

13、100 01110100 0000OUT4DHBUS0100 10000100 11010100 10010101 0000JMP40H40HPC0100 10100100 00000100 10110011 0001内容自定义0100 11000011 0010内容自定义0100 11010011 0011内容自定义表3-1 本次设计机器指令程序3.2绘制微程序流程图根据每条机器指令的功能,为每条机器指令画出微程序流程图,并为其中的每条微指令分配地址。总体微程序流程图如图3.1所示。图3.1 总体微程序流程图3.3绘制微指令根据控制位顺序图,可绘制下列微指令表3-2。地址S3S0MCnWEC

14、ELDPCABCuA5uA0KRD000000011101110100000000011110111000000000000000000000KWE000000011110111000000000100000110000RP000000011110111000000000000100000001100101100000101000NOR000000011110111000000000000110000000000000000011000000000000000010000000000110010001101000OUT00000001111011100000000000011000000000

15、0000000000000000表3-2 微指令表3.4连接实验线路按图3.2连接实验线路,仔细查线路无误后接通电源。图3.2 实验接线图3.5写指令3.5.1写微指令将编程开关置为PROM(编程)状态。将实验板上“STATE UNIT”中的“STEP”置为“STEP”,“STOP”置为“RUN”状态。用二进制模拟开关UA0UA5置微地址MA0MA5。在MK23MK0开关上置微指令代码,24位开关对应24位显示灯,开关置为“0”时灯亮,开关置为“l”时灯灭。启动时序电路(按动启动按钮“START”),即将微代码写入到E2PROM 2816的相应地址对应的单元中。重复步骤,将表3-2中的微代码写

16、入E2PROM 2816。写完微指令后须进行校验。将编程开关设置为READ(校验)状态。将实验板的“STEP”开关置为“STEP”状态。“STOP”开关置为“RUN”状态。用二进制模拟开关UA0UA5置好微地址MA0MA5。按动“START”键,启动时序电路,读出微代码。观察显示灯MD23MD0的状态(灯亮为“0”,灭为“1”),检查读出的微代码是否与写入的相同。如果不同,则将开关置于PROM编程状态,重新写入微指令即可。3.5.2写机器指令使用图2.4所示的控制台KWE和KRD微程序进行机器指令程序的装入和检查。使编程开关处于“RUN”,STEP为“STEP”状态,STOP为“RUN”状态。

17、拨动总清开关CLR(101),微地址寄存器清零。此时用“DATA UNIT”单元的8位二进制开关给出要写入RAM区的首地址,控制台SWB、SWA开关置为“0 1”,按动一次启动开关START,微地址显示灯显示“”,再按动一次START,微地址灯显示“”,此时数据开关的内容置为要写入的机器指令,按动一次START键,即完成该条指令的写入。若仔细阅读KWE的流程,就不难发现,机器指令的首地址只要第一次给入即可,PC会自动加1,所以,每次按动START,只有在微地址灯显示“时,才设置内容,直到所有机器指令写完。写完机器指令后须进行校验。拨动总清开关CLR(101)后,微地址清零。此时用“DATA U

18、NIT单元的8位二进制开关置要读的RAM区的首地址,控制台开关SWB、 SWA为“0 0”,按动启动START,微地址灯将显示“,再按START,微地址灯显示为“,第三次按START,微地址灯显示为“”,此时总线单元的显示灯显示为该首地址的内容。不断按动START,可检查后续单元内容,注意:每次仅在微地址灯显示为“”时,显示灯的内容才是相应地址中的机器指令内容。四、运行结果使编程开关处于“RUN”状态,STEP为“STEP”状态,STOP为“RUN”。拨动总清开关CLR(101),微地址清零。将“DATA UNIT”的8位数据开关(D7D0)设置为机器指令首地址。按动START启动键,单步运行一条微指令,每按动一次START键,即单步运行一条微指令。对照微程序流程图,观察微地址显示灯是否和流程一致。当运行结束后,可检查存数单元中的结果是否和理论值一致。使“STATE UNIT”中的STEP开关置为“EXEC”状态。STOP开关置为“RUN”状态。将“DATA UNIT”的8位二进制开关设置为机器指令程序首地址,然后按动START,系统连续运行程序,稍后将STOP拨至“STOP”时,系统停机。停机后,可检查存数单元结果是否正确。参考文献1王健,王德君.计算机组成原理实验指导书M.沈阳工程学院,20082白中英.计算机组成

温馨提示

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

评论

0/150

提交评论