2021浙江理工计算机组成原理课程设计实验

一、实验目的:
深入了解计算机各种指令的执行过程,以及控制器的组成,指令系统微程序设计的具体知识,进一步理解和掌握动态微程序设计的概念;完成微程序控制的特定功能计算机的指令系统设计和调试。
二、实验说明: 要进行这项课程设计,必须清楚地懂得: TEC-2机的功能部件及其连接关系; TEC-2机每个功能部件的功能与具体组成;
TEC-2机支持的指令格式; TEC-2机的微指令格式,AM2910芯片的用法;
已实现的典型指令的执行实例,即相应的微指令与其执行次序的安排与衔接; 要实现的新指令的格式与功能。 三、实验内容:
选定指令格式、操作码,设计如下指令:

1.把用绝对地址表示的内存单元ADDR2中的内容与内存单元ADDR1中的内容相减,结果存于内存单元ADDR1中。
指令格式:D8××,ADDR1,ADDR2, 三字指令(控存入口110H)
功能: [ADDR1]=[ADDR2]-[ADDR1]

2.把用绝对地址表示的内存单元ADDR2中的内容传送至地址为ADDR1的内存单元中保存。 指令格式:E0××,ADDR1,ADDR2,三字指令(控存入口130H) 功能: [ADDR1]←[ADDR2]

3.转移指令。判断两个通用寄存器内容是否相等,若相等则转移到指定目的地址,否则顺序执行。 指令格式:E5 DR SR,DISP双字指令(控存入口140H, DISP为相对转移地址偏移量)
功能: if DR=SR goto IP+DISP
else 顺序执行。


相关的资料很多 但是几乎没有完全一致的 我很好奇明年老师又会怎么改?
//请不要把这句话复制到阁下的实验报告里

56位编码如图:
在这里插入图片描述

任务1:
把用绝对地址表示的内存单元ADDR2中的内容与内存单元ADDR1中的内容相减,结果存于内存单元ADDR1中。

指令格式:D8××,ADDR1,ADDR2, 三字指令(控存入口110H) 功能: [ADDR1]=[ADDR2]-[ADDR1]

需要知道的一些基础概念:
指令计数器pc 给出下一个指令的地址
寄存器Q 存放数据
内存MEM 存放数据、地址
如下是一些指令的含义:
PC->AR 把指令地址送往地址寄存器
PC+1->PC 自增1 指向下一个指令地址
MEM->X 把内存中的数据/地址 送到X
PC-1->AR 取上一个地址送往地址寄存器
如果不懂可以看看CPU的工作过程

在这里插入图片描述

PC→AR,PC+1→PC: 0000 0E00 A0B5 5402

MEM→AR: 0000 0E00 10F0 0002

MEM→Q: 0000 0E00 00F0 0000

PC→AR: 0000 0E00 90B0 5002

MEM→AR: 0000 0E00 10F0 0002

MEM-Q→Q: 0000 0E01 02E0 0000

PC-1→AR: 0000 0E00 91B0 5402

PC+1→PC: 0000 0E00 B0B0 5400

MEM→AR: 0000 0E00 10F0 0002

Q→MEM,CC#=0: 0029 0300 1020 0010

首先E指令毫无技术含量地敲进去
在这里插入图片描述

在这里插入图片描述

R1 900是开始的地址
R2 10代表有10条指令
R3 110是控存地址(题目的要求)
在这里插入图片描述
G800加载上面写在800的程序
先给r0,r1寄存器赋值 再把A00和A01单元赋值
指令占四个字节 所以写四次nop (其实少写好像也能正常运行
在这里插入图片描述
第一个空地址是828所以从828开始
结果FFDE 可以看出是33-55的结果
我们把55和33调换位置 结果是22 符合预期
在这里插入图片描述

任务2

2.把用绝对地址表示的内存单元ADDR2中的内容传送至地址为ADDR1的内存单元中保存。 指令格式:E0××,ADDR1,ADDR2,三字指令(控存入口130H)
功能: [ADDR1]←[ADDR2]

基本上跟上一个一样 只是不需要做减法了
在这里插入图片描述

PC→AR,PC+1→PC: 0000 0E00 A0B5 5402

PC→AR: 0000 0E00 90B0 5002

MEM→AR: 0000 0E00 10F0 0002

MEM→Q: 0000 0E00 00F0 0000

PC-1→AR: 0000 0E00 91B0 5402

PC+1→PC: 0000 0E00 B0B0 5400

MEM→AR: 0000 0E00 10F0 0002

Q→MEM,CC#=0: 0029 0300 1020 0010
结果符合预期~
在这里插入图片描述

任务3
转移指令。判断两个通用寄存器内容是否相等,若相等则转移到指定目的地址,否则顺序执行。 指令格式:E5 DR SR,DISP双字指令(控存入口140H, DISP为相对转移地址偏移量)
功能: if DR=SR goto IP+DISP
else 顺序执行。
在这里插入图片描述

需要注意 两个寄存器相减不需要再把结果送到DR
DR-SR 0000 0E01 9190 0088

PC→AR, PC+1→PC,CC#=CND 0029 03E0 A0B5 5402

MEM→AR 0000 0E00 10F0 0002

MEM→Q 0000 0E00 00F0 0000

PC→MEM 0000 0E00 1045 0010

MEM+Q →Q 0000 0E01 00E0 0000

Q→MEM 0000 0E00 1020 0010

MEM->PC,CC#=0 0029 03E0 A0B5 5402

寻常的输入
QAQ

在这里插入图片描述
在这里插入图片描述

r1 r2相等时情
不会执行mov r1,1234
在这里插入图片描述

r1与r2不相同时
在这里插入图片描述

请千万注意 在E5作为开头的若干四位数字中目前只发现E512一定可用 不要在这里浪费时间

  • 12
    点赞
  • 42
    收藏
    觉得还不错? 一键收藏
  • 5
    评论
一. 实验目的 1. 了解存储器的组成结构,原理和读写控制方法 2. 了解主存储器工作过程中各信号的时序关系 3. 了解挂总线的逻辑器件的特征 4. 了解和掌握总线传送的逻辑实现方法 二. 实验原理 1.基本操作:读写操作 读操作是从指定的存储单元读取信息的过程;写操作是将信息写入存储器指定的存储单元的过程 2.读写操作过程 首先要由地址总线给出地址信号,选择要进行读写操作的存储单元,然后,做写操作时,先从数据总线输入要存储在该单元的数据,通过控制总线发出相应的写使能和写控制信号,这时,数据保存在该单元中;做读操作时,只要通过总线发出相应的读控制信号。该数据就出现在总线上了 3. 总线传送 计算机的工作过程,实际上也就是信息的传送和处理过程,而信息的传送在计算机里面频度极高,采用总线传送必不可少,它可减少传输线路、节省器件、提高传送能力和可靠性。总线传送器件中大量使用的是三态门。三态门(ST门)主要用在应用于多个门输出共享数据总线,为避免多个门输出同时占用数据总线,这些门的使能信号(EN)中只允许有一个为有效电平(如低电平),由于三态门的输出是推拉式的低阻输出,且不需接上拉(负载)电阻,所以开关速度比OC门快,常用三态门作为输出缓冲器。其中74LS244是专用做挂总线用的三态门器件之一。
计算机组成原理 课程设计报告 实验项目:1、设计一个具有带进位加法和立即数寻址方式的模型机 2、设计一个具有带进位加法和条件跳转的模型机 专 业: 计算机科学与技术 班 级: 09级37-3班 学 号: —————— 姓 名: 合 作: 指导教师: 实验时间: 2011-6-15 ~~ 6-17 实验一:设计一个具有带进位加法和立即数寻址方式的模型机 1、问题描述 本题目设计的是一台具有输入、输出、带进位加法、储存和跳转功能的模型计算机, 并写出工作程序和测试数据验证所设计的指令系统。 2、设计目标 在设计完本程序后,所设计模型机能够完成从一个外设输入一个数到指定的寄存器中 ,另外输入立即数并将其存入另一个、寄存器中,两数进行进位相加并将结果保存到第 一个寄存器,输出结果,并显示。另外,实现无条件跳转至开始。 3、指令格式 "助记符号 "机器指令码 "功 能 " "IN "0000 0000 "Input -> R0 " "ADC Imm "1110 0000 XXXX "R0+Imm+CY -> R0 " " "XXXX " " "STA addr "0010 0000 XXXX "R0 -> [addr] " " "XXXX " " "OUT addr "0011 0000 XXXX "[addr] -> LED " " "XXXX " " "JMP addr "0100 0000 XXXX "[addr] -> PC " " "XXXX " " 4、设计微指令 (1)定义指令码,及定义一个下地址为08H "指令 "指令编码 "微地址 " "IN "0000 0000 "08 " "ADC "0001 0000 "09 " "STA "0010 0000 "10 " "OUT "0011 0000 "11 " "JMP "0100 0000 "12 " (2)设计微指令编码表 "微地址 "S3 "S2 " "MOVrs,rd "XXXX Rs Rd "Rs->Rd " "ADCrs,rd "XXXX Rs Rd "Rs+Rd+CY -> R0 " "BZCD "00 00 00 00 "当cy=1或z=1时,D->" " "D "PC " " " "否则,顺序执行。 " "INrd "XXXX 01 Rd "SW->rd " "OUTrd "XXXX 10 Rd "Rd -> LED " "HALT "XXXX 0000 "停机 " 3、设计微指令 (1)定义一个下地址为20H "指令 "指令编码 "微地址 " "IN "0011 0000 "23 " "MOV "0010 0000 "22 " "ADC "0001 0000 "21 " "BZCD "0000 0000 "20 " "OUT "0100 0000 "24 " "HALT "0101 0000 "25 " (2)设计微指令 微地址 "S3 "S2 "S1 "S0 "M "Cn "WE "A9 "A8 "A "B "C "UA5-UA0 " "00 "0 "0 "0 "0 "0 "0 "0 "1 "1 "0 "0 "0 "0 "0 "0 "0 "0 "0 "0 "0 "0 "0 "0 "1 " "01 "0 "0 "0 "0 "0 "0 "0 "1 "1 "1 "1 "0 "1 "1 "0 "1 "1 "0 "0 "0 "0 "0 "1 "0 " "02 "0 "0 "0 "0 "0 "0 "0 "0 "1 "1 "0 "0 "0 "0 "0 "0 "0 "1 "1 "0 "0 "0 "0 "0 " "20 "0 "0 "0 "0 "0 "0 "0 "1 "1 "0 "0 "0 "0 "0 "0 "0 "1 "1 "0 "0 "0 "0 "0 "1 " "11 "0 "0 "0 "0 "0 "0 "0 "1 "1 "1 "1 "0 "1 "1 "0 "1 "1 "0 "0 "0 "0 "0 "1 "1 " "03 "0 "0 "0 "0 "0 "0 "0 "0 "1 "1 "0 "1 "0 "0 "0 "1 "1 "0 "0 "0 "0 "0 "0 "1 " "21 "0 "0 "0 "0 "0 "0 "0 "1 "1 "0 "1 "0 "0 "1 "0 "0 "0 "0 "0 "0 "0 "1 "0 "0 " "04 "0 "0 "0 "0 "0 "0 "0 "1 "1 "0 "1 "1 "0 "0 "1 "0 "0 "0 "0 "0 "0 "1 "0 "1 " "05 "1 "0 "0 "1 "0 "0 "0 "1 "1 "0 "0 "1 "1 "0 "1 "0 "0 "0 "0 "0 "0 "0 "0 "1 " "22 "0 "0 "0 "0 "0

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值