寄存器算术清零逻辑与输入输出等指令实验计算机设计_第1页
寄存器算术清零逻辑与输入输出等指令实验计算机设计_第2页
寄存器算术清零逻辑与输入输出等指令实验计算机设计_第3页
寄存器算术清零逻辑与输入输出等指令实验计算机设计_第4页
寄存器算术清零逻辑与输入输出等指令实验计算机设计_第5页
已阅读5页,还剩20页未读 继续免费阅读

下载本文档

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

文档简介

1、沈阳理工大学课程设计专用纸成绩评定表学生姓名班级学号专业计算机科学与技术课程设计题目多寄存器算术清零逻辑 与输入输出等指令实 验计算机设计评语组长签字:成绩日期2013年 月 日0沈阳理工大学课程设计专用纸课程设计任务书学院信息学院专业计算机科学与技术学生姓名班级学号课程设计题目多寄存器算术清零逻辑与输入输出等指令实验计算机设计实践教学要求与任务:利用el-jy-理计算机组成原理实验仪提供的硬件资源,通过设计(包括整机结构 设计、指令设计、微程序设计、微指令设计、调试程序设计等)、组装、调试三个步骤 完成一台微程序控制的复杂实验计算机的设计。具体要求如下:1、掌握实验计算机的整机结构。熟悉实验

2、计算机的组装和调试方法。2、设计如下几条机器指令的格式,指令格式可以采用单字长或双字长设计。算术清零运算指令:clr rd (功能0 - rd )逻辑与运算指令:and rs , rd (功能rs a rd - rd )输入输出指令:in #data, rd(功能data - rd )out ri(功能ri的值- led输出)转移指令:jmp addr(功能addr - p。3、设计微指令的格式,编写上述每条机器指令所对应的微程序,并上机调试。4、通过如下程序的编写调试,验收机器指令、微指令、微程序的设计结果。in #data , r0in #data , r2and r0 r2out r2c

3、lr r2out r2jmp 00h工作计划与进度安排:第17周:布置课程设计任务,查阅资料,分组设计,实验室组装与调试。第20周:调试,验收,答辩,编写课程设计报告。指导教师:2013年6月 日专业负责人:2013年6月 日学院教学副院长:2013年6月日1 .计算机的设计31.1 设计目的31.2 指令系统的设计31.3 微指令的格式设计及微操作控制部件的组成原理 31.3.1 微指令编码的格式设计 31.3.2 微操作控制信号的功能 41.3.3 微程序顺序控制方式设计 51.4 微程序设计61.4.1 程序控制器的原理61.4.2 每条指令对应的微程序流程图 61.4.3 每段微程序中

4、各微指令的二进制编码、16进制编码121.4.4 微程序在控存中的存放位置 131.5 编写调试程序141.5.1 具体代码141.5.2 地址码和机器码(16进制编码) 152 .课设计算机的组装 153.课设计算机的调试 3.1 调试前准备3.2 调试步骤及调试结果3.3 结果分析3.4 设计和调试中遇到的困难和心得体会3.4.1 课设中遇到的问题困难.3.4.2 心得体会4参考资料2020171719192021141 .计算机的设计1.1 设计目的综合运用所学过的计算机原理知识,设计并实现较为完整的计算机。掌握运用计算机原理知识解决 问题和设计指令程序的能力。通过课程设计的综合训练,培

5、养实际分析问题,编写程序指令和动手 能力、团队协作精神,帮助学生系统掌握计算机组成原理课程的主要内容。1.2 指令系统的设计00000000指令格式、指令编码、指令助记符、指令功能、操作数的寻址方式如下: 表1指令系统的设计框图指令编码指令助记符指令功能式0100 010000hin #data,r0addr r0寄存器寻址1000 011001hin #data,r2addr r寄存器寻址1010 001002hsub r0,r2r0-r2 *r0寄存器寻址1110100003hrrc r2,r0带进位的逻辑右移寄存器寻址r2 rd0000 100004hout r0r0a addr寄存器寻

6、址0000 100005hjmp 00 h无条件跳转addr pc0000 000006h00h停机1.3 微指令的格式设计及微操作控制部件的组成原理1.3.1 微指令编码的格式设计本系统设计的微指令采用水平型微指令格式,字长共24位,其控制位顺序如下:表1.2控制位顺序242322212019181716s3s2s1s0mcnwe1a1b15 14 1312 11 109 8 7654321f1f2f3ua5ua4ua3ua2ua1ua0其中前18位为操作控制字段和测试字段。ua5-ua0为6位的下地址字段微地址。微指令中的控制位的含义如下:s3、s2、s1、sr m cn是控制运算器的逻辑

7、和算术运算的微命令。表1.3微指令中的控制位s3s2s1s0mcn0000000001100101020011110300000104000011w既写内存的微命令,状态1”有效。1a、1b是输入电路选通、内存ramk通、输出led选通控制微命令,分别对应状态“11”、“10”、 “01”。状态“00”为无效。f1、f2、f3为三个译码字段,分别由三个控制位经指令译码电路74138译码输出8种状态,前7种状态分别对应一组互斥性微命令中的一个,状态“111”为无效。f3字段包含p1- p4四个测试字位。其功能是根据机器指令代码及相应微指令代码进行译码测试,使微程序转入相应的微地址 入口,从而实现

8、微程序的顺序、分支、循环运行。f1、f2、f3三个字段的编码方案如表 1.10表1.4 f1,f2,f3 三个字段的编码方案表f1字段f2字段f3字段15 14 13选择12 11 10选择9 8 7选择0 0 0ldri0 0 0rag0 0 0p10 0 1load0 0 1alu-g0 0 1ar0 1 0ldr20 1 0rcg0 1 0p30 1 10 1 10 1 11 0 0ldr11 0 0rbg1 0 0p21 0 1lar1 0 1pc-g1 0 1lpc1 1 0ldir1 1 0299 g1 1 0p41.3.2 微操作控制信号的功能微命令ldri表示写寄存器操作。微命

9、令loada示程序计数器 pc写操作。微命令ldr2表示数据暂存器lt2写操作。微命令ldr1表示数据暂存器lt1写操作。微命令lar表示地址寄存器ar写操作。微命令ldir表示指令寄存器写操作。微命令rag示源寄存器读操作。微命令alu-g表示运算器输出操作。微命令rcgie示目的寄存器读操作。微命令pc-g表示程序计数器 pc读操作。微命令lpc表示程序计数器pc选通操作。微命令299-g表示移位寄存器读写操作。微命令rbgtl示变址寄存器读操作。1.3.3 微程序顺序控制方式设计微程序控制部件组成原理1运算器单元(alu uint)运算器单元由以下部分构成:两片74ls181构成了并串型

10、 8位alu两个8位寄存器dr1和dr2为暂存工作寄存器,保存参数或中间运算结果。alu的s0s3为运算控制端,cn为最低进位输入,m为状态控制端。alu的输出通过三态门 74ls245连到数据总线上,由 alu-b控制该三态门。2 寄存器堆单元(reg unit)该部分由3片8位寄存器rr r1、r2组成,它们用来保存操作数用中间运算结构等。三个寄存 器的输入输出均以连入数据总线,由ldri和rs-b根据机器指令进行选通。3 指令寄存器单元(ins unit)指令寄存器单元中指令寄存器(ir)构成模型机时用它作为指令译码电路的输入,实现程序的 跳转,由ldir控制其选通。4 时序电路单元(s

11、tate unit)用于输出连续或单个方波信号,来控制机器的运行。5 微控器电路单元(micr3 controller unjt微控器主要用来完成接受机器指令译码器送来的代码,使控制转向相应机器指令对应的首条微代码程序,对该条机器指令的功能进行解释或执行的工作。由输入的w/r信号控制微代码的输出锁存。由程序计数器(pq和地址寄存器(ar)实现程序的取指功能。6 逻辑译码单元(log unit)用来根据机器指令及相应微代码进行译码使微程序转入相应的微地址入口,从而实现微程序的顺序、分支、循环运行,及工作寄存器rr r1、r2的选通译码。7 主存储器单元(main mem用于存储实验中的机器指令。

12、8 输入输出单元(input/output device输入单元使用八个拨动开关作为输入设备,sw-b控制选通信号。输出单元将输入数据置入锁存器后由两个数码管显示其值。1.4微程序设计1.4.1 微程序控制器的原理a.微程序控制的基本思想:1 .若干微命令编制成一条微指令,控制实现一步操作;2 .若干微指令组成一段微程序,解释执行一条机器指令;3 .微程序事先存放在控制存储器中,执行机器指令时再取出。b.基本组成:控制存储器,微指令寄存器,微地址寄存器,地址转移逻 辑 框图:图1微程序控制器组成原理框图控制存储器(cm):用来存放实现全部指令系统的微程序,位于 cplo它是一种只读 型存储器,

13、要求速度快,读出周期短微指令寄存器:存放当前由控制存储器读出的一条微指令信息,分为微地址寄存器和微命令寄存器两个部分。其中微地址寄存器决定将要访问的下一条微指令的地址,微命令寄存器则保存一条微指令的操作控制字段和判别 测试字段(p)的信息地址转移逻辑:自动完成修改微地址的任务。微程序才$制器:微程序控制器的基本任务是完成当前指令的翻译和执行,即将当前指令的功能转换成可以控制的硬件逻辑部件工作的微命令序列,完成数 据传送和各种处理操作。它的执行方法就是将控制各部件动作的微命 令的集合进行编码,即将微命令的集合仿照机器指令一样,用数字代 码的形式表示,这种表示称为微指令。这样就可以用一个微指令序列

14、 表示一条机器指令,这种微指令序列称为微程序。微程序存储在一种 专用的存储器中,称为控制存储器,微程序控制器原理框图如图2所 示uir图2微程序控制器原理框图c.微程序控制计算机的工作过程:下面通过计算机启动、执行程序直到停机的过程,来说明微程序是如何控制计算 机工作的:计算机加电以后,首先由复位信号(reset)将开机后执行的第一条指令的地址送 入pc内,同时将一条“取指微指令送入微指令寄存器中,并将其他一些有关的 状态位或寄存器置于初始状态。当电压达到稳定值后,自动启动计算机,产生节 拍电位和工作脉冲。为保证计算机正常工作,电路必须保证开机后第一个机器周 期信号的完整性,在该cpus期末,

15、产生开机后第一个工作脉冲。然后计算机开 始执行程序,不断地取出指令、执行指令。程序可以存放在固定存储器中,也可以利用固化在只读存储器(rom加的一小段引导程序,将要执行的程序和数据从外部设备调入主存。实现各条指令的微程序是存放在微程 序控制器中的。当前正在执行的微指令从微程序控制器中取出后放在微指令寄存器中,由微指令的控制字段中的各位直接控制信息和数据的传送,并进行相应的处理。当遇到 停机指令或外来停机命令后,应该待当前这条指令执行完毕后再停机或至少在本机器周 期结束时停机。要保证停机后,重新启动计算机能继续工作而且不出现任何错误。1.4.2每条指令对应的微程序流程图开始0101(1)输入指令

16、in图1.2 in指令的微程序流程图开始(2)输出指令out01图1.3 in指令的微程序流程图(3)右移位运算指令rrc图1.4 rrc指令的微程序流程图(5)算术减法运算指令 subrd fd_ busd_ bus- lt1.55lt1 一 lt156lt1-lt157wlt1 + b d_ bus lt160wlt1-lt161lt1+lt” d bus rd01图1.5 sub指令的微程序流程图(6)转移指令jmp开始01p8 ar,pc+1ramf d bus lr75p(1)测试00直接pcf ar,pc+1ramfd_ busd bus lt1(7)右移位运算指令rrc图1.6

17、jmp指令的微程序流程图开始图1.7 rrc指令的微程序流程图1.4.3每段微程序中各微指令的二进制编码、16进制编码表1.5据本实验程序流程图设计的二进制微代码表微地址s3s2s1 s0 m cn we 1a 1bf1f2f3ua5-ua000000000000000011111111000100000000100000000010110110100001000001000000001011011111111110100011000000001010111111110010100011100000001010111111110010100100000000000010110110100101

18、000100100000000010110110100110000101000000001010011111111101100101100000000011111111100000100110000000001110011111111110001000000000000010110110110010101001000000000010110110100011101001100000000010110110100011001010000000000011111110001010101010100000010111101011100000101011100000001100011111100000

19、101100000000000000000011100000101100100000000010000011110101001101000000000010000011110110001101100000000010000011111001001110000000000010000011111001101110100000000010000011111011001111000110000011100011111011101111100110000000000011111100110000000000011011110011100000110000100000001000011111100000

20、110001000000001000111110100000110010100000000011111110010000010101000000000001001011110101110101110010100000000111100000110110000000000001010011110110110110101100000000000111100000111001000000000000000111100000111001100000000001001011111010111010110111000000000111100000111011000001100000000111100000

21、1110111001000000111110111111000沈阳理工大学课程设计专用纸1110000000000000001101110000011110010001000001111101111110101110100000000000001101110000011110110000011011110011110010001111001111111101110011110010011111010000000101101110000100001.4.4微程序在控存中的存放位置表1.6二进制代码表微地址(八进制)微地址(二进制)微代码(十六进制)00000000007f880100000100

22、5b4202000010016ffd03000011014fc404000100015f2005000101015fc606000110014fc707000111015f2010001000005b4a11001001005b4c12001010014ffc11400110001cffce160011100025cf170011119453e520010000005b4321010001005b4522010010005b4d23010011005b6624010100018fc12501010102f5c126010110007fd627

23、0101113c03c1300110000001c1310110010041ea320110100021ec330110110041f2340111000041f3350111010041f6360111103001f7370111113001f940100000010fc115沈阳理工大学课程设计专用纸411000010379c142100010011f4143100011007ea444100100007fc14510010184492046100110014fe747100111002be850101009459e951101001944920521010100025eb53101011

24、9403fe541011000049ed551011010449ee561011100c49ef571011110049f0601100000c7f31611100019403c1621100100003c1631100110025f56411010004134165110101b803c1661101100c03c167110111287df870111000000dc171111001187dfa72111010000d3c874111100ff73c975111101016e10761111100041c11.5编写调试程序1.5.1 具体代码设计如下几条机器指

25、令的格式,指令格式可以采用单字长或双字长设计。算术减法运算指令:sub rs , rd (功能rs -rd - rd )输入输出指令:in #data , rd (功能data - rd )out ri (功能ri的值- led 输出)右移位运算指令:rrc rs , rd (功能rs的值带进位循环右移一位 - rd )转移指令: jmp addr(功能 addr - pc)通过如下程序的编写调试,验收机器指令、微指令、微程序的设计结果。in #data , r0in #data , r2sub rq r2rrc r2, r0out r0jmp 00h1.5.2 地址码和机器码(16进制编码)

26、表1.7地址码和机器码(16进制编码)地址(八进制)地址(二进制)机器指令(十六进制)0000000044010000014602000010a203000011e80400010058050001010806000110002 .计算机的组装按照组装图将各接口处用连接线连接起来,连线时应按如下方法:对于横排座,应 使排线插头上的箭头面向自己插在横排座上;对于竖排座,应使排线插头上的箭头面向 左边插在竖排座上。计算机接线图如图2.117沈阳理工大学课程设计专用纸图2.1计算机的接线图19铸 等附性痂霜篝写*者3皿315q 汩 熊鼠兴瑕器占lao-hw泵靠土段客 nsninifl *口二w jg

27、a书-一 ti-i二:一 ;一 :一:一:一一 口 g nu nn- nnu n d 口口 口 nu o 口 _ _ 口 g 5 sb b5 f: 3 :s t .3 ja 3 2与 e 心昌昌 g s:s弟制量明言假 口 沈阳理工大学课程设计专用纸3 .计算机的调试3.1 调试前准备1、按照实验指导说明书连接硬件系统 2、启动实验软件,打开实验课题菜单,选中实验课题打开实验课题参数对话窗口:读写微指令操作时如图3.1jclt喀口国国画i回国亘微指令操彳钉运器1鼻酢确定图3.1 微指令操作1)写:在编辑框中输入实验指导书中的微指令程序(格式:两位八进制微地址+ 空格十六位十六进制微代码),或直

28、接打开随机附带的程序ex6.msm,将实验箱上的k4k3k2k收至“001%状态,然后按“写入按钮,微程序写入控制存储器电路;2)读:将实验箱上的k4k3k2k1拨至“0100卖状态,在犊出微地址”栏中填入两位八进 制地址,按读出按钮,则相应的微代码显示在 馍出微代码”栏中;3)保存:按保存按钮,微程序代码保存在一给定文件(*msm)中;4)打开:按“打开按钮,打开已有的微程序文件,并显示在编辑框中机器指令操作如图3.2图3.2 机器指令操作1)写:在编辑框中输入实验指导书中机器指令程序 (格式:两位十六进制地址+空格+2 位或4位十六进制代码),或直接打开随机附带的程序ex6.asm将实验箱

29、上的k4k3k2k1 拨至“0101运行状态,拨动“cl肝关对地址和微地址清零,然后按写入按钮,机器指令 写入存储器电路;注:对于8位机,十六进制代码为2位;对于16位机,十六进制代码 可以是2位,也可以是4位。2)读:将实验箱上的k4k3k2k1拨至“010喳行状态,在 馍出指令地址”栏中填入两 位十六进制地址,拨动 “cl肝关对地址和微地址清零,然后按读出按钮,则相应的指 令代码显示在 犊出指令代码”栏中3)保存:按保存按钮,机器指令程序保存在一给定文件(*asm)中4)打开:按“打开按钮,打开已有的机器指令程序文件,并显示在编辑框中5)单步:在运行状态下运行程序前,先拨动“ clr1关对地址和微地址清零,然后每按一次“单步按钮,执行一条微指令。可从实验箱的指示灯和显示led观察单步运行的结果。6)连续:在连续运行程序前,先拨动 “cl商关对地址和微地址清零,然后按“连续按 钮,可连续执行程序。可从实验箱的指示灯和显示led观察连续运行的结果。7)停止:在连续运行程序过程中,可按“停止按钮暂停程序的执行。此时地址和微地 址并不复位,仍可以从暂停处单步或连续执行.

温馨提示

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

最新文档

评论

0/150

提交评论