计算机组成原理课程设计--基本模型机的实现.docx_第1页
计算机组成原理课程设计--基本模型机的实现.docx_第2页
计算机组成原理课程设计--基本模型机的实现.docx_第3页
计算机组成原理课程设计--基本模型机的实现.docx_第4页
计算机组成原理课程设计--基本模型机的实现.docx_第5页
已阅读5页,还剩8页未读 继续免费阅读

下载本文档

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

文档简介

计算机组成原理课程设计总结报告学生姓名:系 别:计算机与通信工程学院专 业:计算机科学与技术班 级:092班学 号:指导教师: 时间:2011年12月26日至2011年12月28日 课程设计任务书一、题目:基本模型机的实现二、实验准备1. 模型机的结构以及各个部件的输入输出以及其他控制信号。2. 了解该模型机的微指令的格式:包括控制字段对应的控制信号、后续直接地址字段确 定下一条微指令的方式、p测试字段的修改后续直接地址字段的规则3. 指令存储器和数据存储器的读写4. 控制存储器的读写三、实验目的1. 在掌握部件单元电路实验的基础上,构造一台基本模型计算机。2. 为其定义5条机器指令,并编写相应的微程序,上机调试掌握整机概念。四、实验设备1dais-cmx16+ 计算器组成原理教学实验系统一台。五、实验内容计算机是在读取指令、分析指令、执行指令的循环中完成程序的自动运行。读取指令是将内存中的指令读取到指令寄存器ir,同时程序计数器pc自加操作指向下一条指令;分析指令是将指令的操作码op做p1测试,找到解释该指令执行的第一条微指令的入口地址;执行指令是从控制存储器中依次读取该指令对应的多条微指令向全机各个部件发送微命令,完成指令要求的动作。实验模型机没有指令系统,不能执行任何指令。六、实验综合在模型机上设计和实现简单的指令系统,要求如下: 每组实现2条新的不同类型的指令(同类型算一条,例如减法和异或运算都是运算类指令),指令的助记符和编码自己设定。 设计方案应该包括:指令系统及指令格式、指令对应的程序、指令流程图、微指令代码表 利用含有新指令的指令系统编写简单的程序,程序甚至可以没有意义,在模型机上运行。 能够实现的简单指令提示如下:求补指令(nreq)清零指令(clr)自增、自减指令(inc,dec)交换指令(xche)寄存器间接寻址指令(jjxz)相对寻址指令(xdxz)暂停指令(stop)入栈、出栈指令(push、pop)左、右移位指令(shl、shr)中断指令(int)计算机组成原理课程设计总结报告1模型机结构dais-cmx16+硬件组成结构如图1.1所示。该十六位原理计算机体系结构与原理组成由实验平台、开关电源、软件三大部分组成。实验平台上有16位运算源寄存器ax和bx、16位通用寄存器cx和dx、16位运算器alu、12位地址寄存器ar、12位程序计数器pc、16位双向i/o单元、16位主存、16位指令寄存器ir、8位指令译码寄存器id、16位堆栈指示器sp、单级中断源、11位微程序计数器upc,拥有一个35位字长的微控制器和24位字长的组合逻辑控制器,并设置了一组24位字长的二进制模拟开关,系统提供逻辑笔和24个按键操作环境。配有字符式lcd、usb通信口、rs232通信口及外设扩展区。图1.1系统体系结构图注意:本机中的16位寄存器均可以当作2个8位寄存器来使用,高字节用h命名,低字节用l命名,ax的高字节记作ah,低字节记作al;cx的高字节记作ch,低字节记作cl。16位i/o单元可以作为2个8位i/o单元使用,高字节记作ioh,低字节记作iol。其硬件组成如下表所示。部件名称部件主要电路十六位运算器单元由4片574组成ax、bx运算源寄存器,由5256ve构成运算器,其内核有十六位暂存器和累加器,支持算术运算、逻辑运算、移位运算、进位与零标志控制、支持字与字节的运算操作十六位通用寄存器由4片574组成cx(r1 r0)、dx(r3 r2)十六位通用寄存器组,支持字与字节操作十六位双向i/o口由2片574和2片245缓冲组成双向输入/输出i/o,内置16位数据开关,16只状态灯,支持字与字节操作十六位堆栈寄存器由2片574组成十六位sp指针,支持字与字节操作十二位程序计数器由3片161组成12位pc指针,驱动指令存储器地址总线,寻址范围4k(00fff),按字方式寻址十一位微程序计数器由3片161组成11位upc指针,驱动控制存储器地址总线,寻址范围2k(07ff),只写不可读,按字方式寻址十二位地址寄存器由2片574组成12位ar指针,驱动数据存储器地址总线,寻址范围4k(00fff),只写不可读,按字方式寻址十六位主存由两片6116组成主存,构成单独的指令存储器和数据存储器,容量4kb(寻址范围00fff),支持字与字节操作十六位指令寄存器由2片574组成十六位指令寄存器ir,只写不可读,按字方式寻址指令译码器由cpld组成八位指令译码器id,不可读按字节写入中断源由d触发器组成中断允许、中断请求及中断响应标志微程序控制器由两片6264、1片6116组成微程序控制器,微控制位字长35位,其中微命令段24位,下址段11位。硬布线控制器由cpld器件9572独立构成组合逻辑控制器,微控制位字长24位,内核含有四个机器周期的状态触发器二十四位二进制模拟开关及灯由24只拨动开关及24个发光管组成二进制模拟控制电路,在微控制状态该24位通常用于指示当前微逻辑,在外设扩展实验中亦可定义为外设的i/o口外设扩展区提供ic-40芯通用型锁紧式扩展插座,用于外设扩展逻辑笔内置逻辑笔,提供一路高低电平及脉冲测试中央控制单元由时序发生器、逻辑合成器、中断逻辑、目态管理器、lcd显示窗及usb、rs232等组成电源内置高性能带短路保护、具过流、过压、静电隔离等功能的开关电源,输出电压为dc+5v/5a2微指令结构和名字段含义2.1 微程序控制器的组成结构(1)控制存储器cm控制存储器用来存放解析指令的微程序,由2片6264和1片6116共三片静态存储器平行组成。它们的地址通路由11位微程序计数器pc供给,其寻址范围为2k(07ffh)。实验模型机对应的40位微指令格式如下,其中操作控制位19位,p测试位5位,后续直接地址位11位,保留位5位。微指令采用了重叠结构定义,控制存储器分时输出24位微控位(操作控制位19位和p测试位5位)和11位后续直接地址位。微指令的重叠结构定义m39m35m34m24操作控制字段p测试字段后续直接地址字段保留段m4m0m23m524个微控制位如图2-10所示:直控字段目标字段运算字段源字段p测试字段m23m22m21m20m19m18m17m16m15m14m13m12m11m10m9m8m7m6m5m4m3m2m1m0e/mipmwrr/m目的编码opmcns2s1s0源编码xpwaluiuieiriczids图2-10微指令格式(2)微程序计数器pc图2-11所示的微程序计数器pc由3片161构成,输出11微地址驱动控制存储器,从控存对应单元读取微指令,微指令的19位操作控制位直接输出或译码输出各种微命令信号,11位直接后续地址位和5位p测试位通过微地址转移逻辑共同决定下一条微指令的微地址。本模型机中微指令的地址可以由后续直接地址采用链式存储方式确定,也可以由现行微程序计数器微址加1采用顺序存储方式确定。微控制位后续直接地址译码微命令u10 u0 m23 m0控制存储器pcar主存指令译码器状态寄存器中断请求微地址转移逻辑upc微程序计数器p测试图2-11微程序控制器原理图2.2 微程序的执行过程图2-11所标示的字号表示微程序控制的全部工作过程。1)启动取指微指令或微程序,根据程序计数器pc所提供的指令地址,从指令存储器中取出所要执行的机器指令,送入指令寄存器ir中,并且完成pc+1,指向机器指令的下址单元。2)根据id译码器中的指令码,把微地址转移逻辑产生的解释机器指令第一条微指令的微地址打入pc。3)从pc所指定的控制存储器单元分时输出微操作控制字段与下续微地址控制字段。4)微指令的操作控制字段经译码或直接产生一组微命令,控制有关功能部件完成微程序所规定的微操作。 5)微指令的直接地址字段和p测试字段及当前的状态标记、中断请求标志送往微地址形成电路,产生下条微指令的地址,进入读取与执行下条微指令。如此循环,直到一条机器指令的微程序全部执行完毕。2.3 微指令格式及编码如图2-10所示,本系统微指令综合采用了字段的直接控制法和编码表示法,把微指令操作控制字段划分为若干个子字段,每个子字段的所有微命令进行统一编码。本控制器微指令字长35位,其中24个微控位分别由p测试字段、源寻址字段、运算控制字段、目的寻址字段及直接控制字段组成; 11位后续直接地址位m34m24输出下一条微指令的十一位的后续微地址。(1)p测试字段五位p测试位决定是否需要对微指令给出的11位后续直接地址进行修改以及如何修改来确定下一条微指令在控存的地址。m0定义为ids,微程序结束测试位。微程序的最后一条微指令该位为0,否则为1。m1定义为icz,进位标志测试位。当icz为“0”时,利用进位标志cy修改微总线ubus的11位直接后续地址最后一位ud0,形成2路分支。微总线ubusud10ud9ud8ud7ud6ud5ud4ud3ud2ud1ud0微程序计数器upcud10ud9ud8ud7ud6ud5ud4ud3ud2ud1cym2定义为ir,指令操作码的测试位,当ir为“0”时,利用8位操作码op修改微总线ubus的11位直接后续地址的ud8ud1,形成256路分支。微总线ubusud10ud9ud8ud7ud6ud5ud4ud3ud2ud1ud0微程序计数器upcud10ud9id7id6id5id4id3id2id1id0ud0m3定义为中断控位ie,中断请求测试位。每条指令执行末尾进入公操作,通过检查该位判断外设是否有中断请求,如果有中断请求转入中断处理过程;否则转入取值的微指令从指存取下一条指令执行。m4定义为iu,微指令寻址方式测试位,当iu为“0”时,以微指令的11位后续直接地址作为下一条微指令的地址;该方式是微指令的链式存储;当iu为“1”时,以upc+1,即当前微指令地址加1作为下一条微指令的地址,该方式是微指令的顺序存储。(2)源编码字段m5定义为运算源控位alu,当alu=“1”时运算器以ax、bx寄存器为源,若alu=“0”运算器以当前源编码的定义为源。m6定义为字长控位w,当w=“0”时当前总线宽度为十六位字总线;当w=“1”时当前总线宽度为八位字节总线。m7定义为源奇偶特性控位xp,当xp=“0”时工作寄存器源为偶字节,;当xp=“1”时工作寄存器源为奇字节。m10m8分别定义x2、x1、x0,组成源寻址的编码段;(3)运算字段m13m11分别定义s2、s1、s0,组成运算方式选择字段。m14定义了cn,是运算的最低位有效进位。m15定义了m,当m=“0”时,alu做算数运算;当m=“1”时,alu做逻辑运算。(4)目标编码字段m16定义为目的奇偶控位op,当op=“0”时为工作寄存器的以偶字节为操作目标,当op=“1”时工作寄存器以奇字节为操作目标。m19m17分别定义o2、o1、o0,组成目的寻址的编码段。(5)直接控制字段m20定义为寄存器与cache选择控位r/m,当r/m=“1”时,选择寄存器组为alu的工作区;当r/m=“0”时,选择cache为alu的工作区,本实验设备无cahce,所以该位衡“1”。m21定义为主存及指令寄存器ir写命令mwr,当mwr=“0”、ir=“1”时执行主存的写入操作。当mwr=“0”、ir=“0”时执行指令寄存器写入操作。2.4 m22定义为程序计数器使能控位ip,当ip=“0”时,执行pc+1;当ip=“0”、e/m=“0”时执行pc地址的装载。m23定义为指存与数存的地址选择控位e/m,当e/m=“1”时主存以当前程序指针pc驱动指令地址总线;当e/m=“0”时主存以当前ar驱动数据地址总线。(6)下址段由m34m24组成pcpc共11位后续直接地址。3 指令格式说明定义指令格式以及对应的操作码本实验实现的机器指令为:in(输入)、inc(自增)、clr(清零),其指令格式如下:助记符机器指令码说明in r000100000i/o r0inc r0 01000000r0alal自增r0clr r0 addr01100000 ramal ramblal-blram4 程序清单地址指令代码助记符功能00020 ini/or000140 incr0al al自增r000260 00 01clr 0100ramal ramblal-blram指令存储器000h002h单元内容依次为:20 40 60 00 01数据存储器:0100h单元为操作数(预置)5 指令流程图romirpc+1 001p1测试600inincclr6406806c0romblpc+1r0busbusali/obusbusr06816c1rombhpc+1al自增r0 0016c2bxbusbusar0016c3rombl6c4romalal-blrom6 微指令代码表根据微指令流程图每条微指令的功能写出微代码表2 微指令代码表微址00002)1)111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111m23m22m21m20m19m18m17m16代码m15m14m13m12m11m10m9m8代码m7m6m5m4m3m2m1m0代码后续微址说明e/mipmwrr/mo2o1o0opmcns2s2s0x2x1x0xpwaluiuieiriczids00011111111ff11111111ff11111111ff+1空操作00110111111bf11111011fb11111011fb可变romir64011110001f111111100fc011011016d001i/or068011111000f811111001f911011111df+1r0al68111110001f111110110f6001011014d001al自增ro6c011111010fa11111011fb11011111df+1rombl6c110111011bb11111011fb11011111df+1rombh6c210111100bc11000110c6000111111f+1bxar6c3011110107a11111011fb000111111f+1ramax6c4011110007811111011fb000111111f+1rambx6c5010111105e011011106e10101101ad001ax-bxram7 心得体会通过此次课程设计,使我更加扎实的掌握了有关计算机组成原理方面的知识,在设计过程中虽然遇到了一些问题,但经过一次又一次的思考,一遍又一遍的检查终

温馨提示

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

评论

0/150

提交评论