昆明理工大学 组成原理课程设计.doc_第1页
昆明理工大学 组成原理课程设计.doc_第2页
昆明理工大学 组成原理课程设计.doc_第3页
昆明理工大学 组成原理课程设计.doc_第4页
昆明理工大学 组成原理课程设计.doc_第5页
已阅读5页,还剩6页未读 继续免费阅读

下载本文档

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

文档简介

设计(论文)专用纸目录一、硬件设计21、 设计目的22、 基本原理2(1)实验模型机CPU结构2(2)机器指令的结构和功能3二、微程序设计51、微程序流程图设计52、二进制微代码表设计63、机器指令程序设计84、指令运行过程9三、总结体会10四、参考文献10一、硬件设计1、 设计目的 (1)在掌握部件单元电路实验的基础上,进一步将其组成系统构造一台基本模型计算机。 (2)为其定义五条机器指令,并编写相应的微程序,具体上机调试掌握整机概念。 (3)掌握微程序控制器的组成原理。 (4)掌握微程序的编写、写入及微程序的运行。 (5)通过课程设计,使学生将掌握的计算机组成基本理论应用于实践中,在实际操作中加深对计算机各部件的组成和工作原理的理解,掌握微程序计算机中指令和微指令的编码方法,深入理解机器指令在计算机中的运行过程。2、 基本原理(1)实验模型机CPU结构 1 运算器单元(ALU UINT)运算器单元由以下部分构成:两片74LS181构成了并串型8位ALU;两个8位寄存器DR1和DR2为暂存工作寄存器,保存参数或中间运算结果。ALU的S0S3为运算控制端,Cn为最低进位输入,M为状态控制端。ALU的输出通过三态门74LS245连到数据总线上,由ALU-B控制该三态门。 2 寄存器堆单元(REG UNIT)该部分由3片8位寄存器R0、R1、R2组成,它们用来保存操作数用中间运算结构等。三个寄存器的输入输出均以连入数据总线,由LDRi和RS-B根据机器指令进行选通。 3 指令寄存器单元(INS UNIT)指令寄存器单元中指令寄存器(IR)构成模型机时用它作为指令译码电路的输入,实现程序的跳转,由LDIR控制其选通。 4 时序电路单元(STATE UNIT)用于输出连续或单个方波信号,来控制机器的运行。 5 微控器电路单元(MICROCONTROLLER UNIT)微控器主要用来完成接受机器指令译码器送来的代码,使控制转向相应机器指令对应的首条微代码程序,对该条机器指令的功能进行解释或执行的工作。由输入的W/R信号控制微代码的输出锁存。由程序计数器(PC)和地址寄存器(AR)实现程序的取指功能。 6 逻辑译码单元(LOG UNIT)用来根据机器指令及相应微代码进行译码使微程序转入相应的微地址入口,从而实现微程序的顺序、分支、循环运行,及工作寄存器R0、R1、R2的选通译码。 7 主存储器单元(MAIN MEM)用于存储实验中的机器指令。 8 输入输出单元(INPUT/OUTPUT DEVICE)输入单元使用八个拨动开关作为输入设备,SW-B控制选通信号。输出单元将输入数据置入锁存器后由两个数码管显示其值。该CPU数据结构通路框图如下:(2)机器指令的结构和功能部件实验过程中,各部件单元的控制信号是人为模拟产生的,而本次课设是在微程序控制下自动产生各部件单元控制信号,实现特定指令的功能。这里,计算机数据通路的控制将由微程序控制器来完成,CPU从内存中取出一条机器指令到指令执行结束的一个指令周期全部由微指令组成的序列来完成,即一条机器指令对应一个微程序。本次课设采用实验四中五条机器指令:IN(输入)、SUB(二进制减法)、STA(存数)、OUT(输出)、JMP(无条件转移),并在其后设计一条新的减法指令(SUB)。其中IN为单字长,其余为双字长指令。为了向RAM中装入程序和数据,检查写入是否正确,并能启动程序执行,还必须设计三个控制台操作微程序。存储器读操作(KRD):拨动总清开关CLR后,控制台开关SWB、SWA为“00”时,按START微动开关,可对RAM连续手动读操作。存储器写操作(KWE):拨动总清开关CLR后,控制台开关SWB、SWA为“01”时,按START微动开关,可对RAM进行连续手动写入。启动程序:拨动总清开关CLR后,控制台开关SWB、SWA置为“11”时,按START微动开关,即可转入到第01号“取址”微指令,启动程序运行。上述三条控制台指令用两个开关SWB、SWA的状态来设置,其定义如下:SWB SWA 控制台指令001 0 1 1读内存(KRD)写内存(KWE)启动程序(RP) 微代码定义如下表所示:24232221201918171615 14 1312 11 109 8 7S3S2S1S0MCnWEA9A8ABC654321uA5uA4uA3uA2uA1uA0 A字段 B字段 C字段 其中UA5-UA0 为6位的后续微地址,A、B、C三个译码字段,分别由三个控制位译码出多位。C字段中的P(1)-P(4)是四个测试字位。其功能是根据机器指令及相应微代码进行译码,使微程序转入相应的微地址入口,从而实现微程序的顺序、分支、循环运行。B 字段中的 RD-B、R0-B、RI-B、分别为源寄存器选通信号、目的寄存器选通信号及变址寄存器选通信号其功能是根据机器指令来进行三个工作寄存R0、R1、R2 的选通译码。A8、A9为控制选通信号,当A8 A9为00时,选通SWB;为01时,选通CE;为10时,选通LEDB;为11时,表示均未选通。S0S3为运算控制控制信号,Cn为进位控制信号,M为状态控制控制信号。原理如下图(图2),图中 I0I3 为指令寄存器的第03位,LDRi打入工作寄存器信号的译码器使能控制位。RI-BI2I3RS-BRD-B2:4译码器2:4译码器2:4译码器Y2Y1Y0Y0Y2Y1Y0R2-BR1-BR0-BBGABBAGABGLDR2LDR1LDR0I1I0LDRi二、微程序设计1、微程序流程图设计系统涉及到的微程序流程见图1-1,当拟定“取址”微指令时,该微指令的判别测试字段为P(1)测试。由于“取址”微指令是所有微程序都使用的公用微指令,因此P(1)的测试结果出现多路分支。本机用指令寄存器的前4位(IR7-IR4)作为测试条件,出现5路分支,占用5个固定微地址单元。控制台操作为P(4)测试,它以控制台开关SWB、SWA作为测试条件,出现了3路分支,占用3个固定微地址单元。当分支微地址单元固定后,剩下的其它地方就可以一条微指令占用一个微地址单元随意填写。注意:微程序流程图上的单元地址为8进制。2、二进制微代码表设计当完成上述全部微程序设计后,对每条微指令进行代码化,即将微程序流程图按微指令格式转化而成的,转化成为如下的“二进制微代码表”。微地址S3 S2 S1 S0 M CN WE A9 A8ABCUA5UA00 00 0 0 0 0 0 0 1 10 0 00 0 01 0 00 1 0 0 0 00 10 0 0 0 0 0 0 1 11 1 01 1 01 1 00 0 0 0 1 00 20 0 0 0 0 0 0 0 11 0 00 0 00 0 10 0 1 0 0 00 30 0 0 0 0 0 0 0 11 1 00 0 00 0 00 0 0 1 0 00 40 0 0 0 0 0 0 0 10 1 10 0 00 0 00 0 0 1 0 10 50 0 0 0 0 0 0 1 10 1 00 0 10 0 00 0 0 1 1 00 61 0 0 1 0 1 0 1 10 0 11 0 10 0 00 0 0 0 0 10 70 0 0 0 0 0 0 0 11 1 00 0 00 0 00 0 1 1 1 11 00 0 0 0 0 0 0 0 00 0 10 0 00 0 00 0 0 0 0 11 10 0 0 0 0 0 0 1 11 1 01 1 01 1 00 0 0 0 1 11 20 0 0 0 0 0 0 1 11 1 01 1 01 1 00 0 0 1 1 11 30 0 0 0 0 0 0 1 11 1 01 1 01 1 00 1 0 1 0 11 40 0 0 0 0 0 0 1 11 1 01 1 01 1 00 1 1 0 1 01 50 0 0 0 0 0 0 1 11 1 00 0 10 0 00 1 1 0 1 11 60 0 0 0 0 0 0 1 11 1 01 1 01 1 00 1 1 1 0 01 7*0 0 0 0 0 0 1 0 10 0 00 0 10 0 00 0 0 0 0 12 00 0 0 0 0 0 0 1 11 1 01 1 01 1 00 1 0 0 1 02 10 0 0 0 0 0 0 1 11 1 01 1 01 1 00 1 0 1 0 02 20 0 0 0 0 0 0 0 10 1 00 0 00 0 00 1 0 1 1 12 30 0 0 0 0 0 0 1 10 0 00 0 00 0 00 0 0 0 0 12 40 0 0 0 0 0 0 0 00 1 00 0 00 0 00 1 1 0 0 02 5*0 0 0 0 0 0 0 0 11 1 00 0 00 0 00 1 0 1 1 02 6*0 0 0 0 0 0 0 0 10 1 00 0 00 0 00 1 1 0 0 12 70 0 0 0 0 1 1 1 00 0 01 0 10 0 00 1 0 0 0 03 00 0 0 0 0 1 1 0 10 0 01 0 10 0 00 1 0 0 0 13 1*0 0 0 0 0 1 1 1 00 0 01 0 10 0 00 0 0 0 0 13 2*0 0 0 0 0 0 0 0 11 0 10 0 01 1 00 0 0 0 0 13 30 0 0 0 0 0 0 0 10 0 10 0 00 0 00 0 0 0 0 13 40 0 0 0 0 0 0 0 11 1 00 0 00 0 00 1 1 1 0 13 50 0 0 0 0 0 0 0 10 1 10 0 00 0 00 1 1 1 1 03 60 0 0 0 0 0 0 1 10 1 00 0 10 0 00 1 1 1 1 13 70 1 1 0 0 0 0 1 10 0 11 0 10 0 00 0 0 0 0 13、机器指令程序设计按照设计任务书,设计减法指令SUB要求如下:功能:1AH-1BH 1CH寻址方式:寄存器间寻址指令执行流程:输入两个数07,03分别送到存储器地址单元1AH,1BH, 07H1AH /IN,STA03H1BH /IN,STA 1AHR0 /IN R0 R0 /自己设计(MOV) R0-1BH R0 /自己设计(SUB) R01CH /(STA) 1CH LED/显示存储单元1CH内容 根据已经设计好的微程序流程图和二进制微代码表,编写机器指令程序如下:地 址(二进制) 内 容(二进制) 助记符 说 明0000 0000 0000 0000 IN “INPUT DEVICE”R00000 0001 0010 0000 STA 0BH R00BH0000 0010 0000 11000000 0011 0000 0000 IN “INPUT DEVICE”R00000 0100 0001 0000 SUB 0BH R0-0BH R00000 0101 0000 1100 0000 0110 0010 0000 STA 0AH R00AH0000 0111 0000 1101 0000 1000 0011 0000OUT 0AH 0AH BUS0000 1001 0000 11010000 1010 0100 0000 JMP 00H 00H PC 0000 1011 0000 0A00 0000 11000000 1101 0000 00010000 1011 4、指令运行过程1、选择01号指令2、执行01条指令pcAR,pc+13、把输入指令传到IR.再进行指令分析。4、把输入的03传到R05、执行01条指令pcAR,pc+16、把存数指令传到IR,再进行分析7、寻找存储地址8、地址传到RAM中9、把03传入地址0B10、执行01条指令pcAR,pc+111、把存数指令传到IR,再进行分析12、把07送入R013、执行01条指令pcAR,pc+114、把存数指令传到IR,再进行分析15、执行01条指令pcAR,pc+116、地址传到RAM中17、03送入DR218、07送入DR119、进行减法,结果送入R020、执行01条指令pcAR,pc+121、把存储指令送入IR,进行分析22、寻找存储地址23、地址传到RAM中24、把04送入地址25、执行01条指令pcAR,pc+126、把输出指令传给IR,进行分析27、执行01条指令pcAR,pc+128、地址传到RAM中29、RAMBUS,BUSDR130、输出结果三、总结体会为期三周的计算机组成原理课程设计结束了,虽然时间很充裕,但对计算机组成原理这门课本学的身就不是很透彻,所以课程设计一开始遇到很大的难题。通过暑假的加强学习,对cpu的组成有了初步的了解与认识,对于计算机整体的组成有了更深刻的认识。通过这次课程设计才了解到计算机严谨的工作过程,在工作过程中,任何一个部件都得正常工作,所执行得微程序必须保证正确无误,这样才能得到正确的结果,这一点在这次课程设计的每一天都能深刻的体会到。还有就是对主存储器的程序代码输入前的准备过程,刚开始觉得挺繁琐的,可后来就应用的游刃有余了。 此次计算机组成原理课程设计,让我懂得了实践的重要性。即使课本知识掌握的很好,如果不会综合运用,也是一些支离破碎的无用的知识,而如果能够运用而实际动手能力很差,理论与实践结合不起来,学得再好也没用。这次课程设计恰好是将课本知识与的巩固与综合运用结合起来,再加上实际动手能力的培养三者结合起来的。一方面,它加深与巩固了所学的各章节的理论,并将其综合运用,提高了我们综合运用知识的能力;另一方面,培养了我们对专业知识学习的趣。 这次课程设计开始时,由于没有好好的预习任务书的内容,准备不充分,再加之课本知道学得不怎么扎实,所以刚开始的时候跟本不知道该怎么去做,甚至我

温馨提示

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

评论

0/150

提交评论