[计算机组成原理课程设计]2023浙江理工大学 您所在的位置:网站首页 计算机网络CRC题目 [计算机组成原理课程设计]2023浙江理工大学

[计算机组成原理课程设计]2023浙江理工大学

2023-06-14 11:09| 来源: 网络整理| 查看: 265

一、目的和要求

深入了解计算机各种指令的执行过程,以及控制器的组成,指令系统微程序设计的具体知识,进一步理解和掌握动态微程序设计的概念;完成微程序控制的特定功能计算机的指令系统设计和调试。

要进行这项大型实验,必须清楚地懂得:

TEC-2机的功能部件及其连接关系

TEC-2机每个功能部件的功能与具体组成

TEC-2机支持的指令格式

TEC-2机的微指令格式,AM2910芯片的用法

已实现的典型指令的执行实例,即相应的微指令与其执行次序的安排与衔接

要实现的新指令的格式与功能。

二、实验环境

TEC-2模拟机

三、具体内容

选定指令格式、操作码,设计如下指令:

(1)加法指令。

指令格式:D5DRSR,DISP 双字指令(控存入口100H)

功能: [DR]=[DR] +[[SR]+DISP]

微程序设计与实现 执行顺序微指令说明1PC->AR将DISP的地址放入AR,为偏移量读出做准备2MEM->Q将DISP从内存读出放入Q寄存器3SR->AR将SR寄存器的值放入AR,为SR读出做准备4MEM+Q->AR将SR从内存读出并加上DISP后放入AR寄存器,为[[SR]+DIP]的读出做准备5MEM->Q将[[SR]+DIP]读出放入Q寄存器6DR->AR将DR放入AR,为DR读出做准备7MEM+Q->Q将DR从AR中读出,让后放入Q寄存器8Q->MEM,CC#=0将Q寄存器的值放入DR中(上次放入AR的值是DR指向的地址)。

1.PC->AR

 0000 0E00 9030 5002

微码介绍:

2.MEM->Q

 0000 0E00 00F0 0000

微码介绍:

3.SR->AR

 0000 0E00 9040 0082

微码介绍:

4.MEM+Q->AR

 0000 0E01 10E0 0002

微码介绍:

5.MEM->Q

 0000 0E00 00F0 0000

微码介绍:

6.DR->AR

 0000 0E00 90B0 008A

微码介绍:

7.MEM+Q->Q

 0000 0E01 00E0 0000

微码介绍:

8.Q->MEM,c#=0

 0029 0300 1020 0010

微码介绍:

指令测试

如下图所示,[1800H]单元存储了100,[1700H]单元存储了1800,[1805H]单元存储了10,在使用该指令后,[1800H]单元加上了[1805H]单元的10后存放在[1800]单元中得到正确结果:110.

(2)传送指令。

指令格式:D8××,ADDR1,ADDR2 三字指令(控存入口110H)

功能: [ADDR1]←[ADDR2]

微程序设计与实现 执行顺序微指令说明1PC+1->AR将ADDR2的指针地址放入AR,为ADDR2地址读出做准备2MEM->AR将ADDR2的地址从地址中读出放入AR,为ADDR2读出做准备3MEM->Q将ADDR1的值读出放入Q寄存器中4PC->AR,PC+1->PC将ADDR1的内存地址送入AR,为ADDR1地址读出做准备5MEM->AR将ADDR1的值读出放入AR,为ADDR1读出做准备6Q->MEM,CC#=0将Q寄存器的值放入,AR指向的内存单元(此时AR指向的内存单元是[ADDR1])

1.PC+1->AR

0000 0E00 9035 5402

微码介绍:

2.MEM->AR

0000 0E00 10F0 0002

微码介绍:

3.MEM->Q

0000 0E00 00F0 0000

微码介绍:

4.PC->AR,PC+1->PC

0000 0E00 A0B5 5402

微码介绍:

5.MEM->AR

0000 0E00 10F0 0002

微码介绍:

6.Q->MEM,c#=0

0029 0300 1020 0010

微码介绍:

指令测试

如下图所示[1800H]单元存储了1,[1805H]单元存储了2,使用该微程序后[1800]H单元存储了[1805H]单元的2结果正确。

(3)转移指令。

注意:本题结果有误,但是用E501,0004可以得正确结果但不符合题目要求。期末复习任务重,具体正确做法请读者自行探究。

判断两个通用寄存器内容是否相等,若相等则转移到指定目的地址((IP)+DISP),否则顺序执行。

指令格式:E1 DR SR,DISP 双字指令(控存入口130H, DISP为相对转移地址偏移量)

功能: if DR=SR goto (IP)+DISP else 顺序执行。

微程序设计与实现 执行顺序微指令说明1DR-SR,CC#=CND测试DR与SR是否相等,如果Z=1(/Z=0)则程序跳转到A4H2PC->AR,PC+1->PC为读取转移地址做准备3IP+MEM->PC,CC#=0读取偏移量并且加上当前地址,然后跳至指定地址

1.DR-SR,#CC=CND

0029 0371 9190 0088

微码说明:

2.PC->AR,PC+1->PC

0000 0E00 A0B5 5402

微码说明:

3.IP+MEM->PC,CC#=0

0029 0300 30D6 5000

微码说明:

指令测试

如图所示在R0,R1中分别存放1,1 使用该指令后不执行`MOV R2,0指令R2的值仍为1.

四.实验心得

五.附加材料

下面是对Tec-2机的一些总结

字长

TEC-2机字长为10位。

指令

TEC-2机指令字长位16位,其中有6位(IR_{15-10})操作码,之后两位IR_{9-8}是条件码。最多支持2^{6}=64条指令,其中有53条已经实现。

IR:指令寄存器,用于存储当前正在执行的指令

主存

主存支持64K字,4K\times 8的ROM存放监控程序,2K \times 8的RAM存放用户数据和数据。

运算器

运算器由四片AM2901级联而成,可以实现8种运算功能,16哥双端口(A,B)读出、单端口(B)写入的通用寄存器,其中R_{4-6} 分别为SP,PC,IP寄存器,其余寄存器可用于用户编程。

IP 寄存器

保存当前正在运行的指令的地址,用于转移变址的目的

I_{8-6}

进行寄存器结果和Y输出选择

I_{5-3}

进行运算功能选择

I_{2-0}

进行数据来源选择

控制器

控制器由一篇AM2910,7片6116(RAM,2K \times 8)(微控)、16位的指令寄存器IR和2片2716(存储用于实现53条机器指令的微程序,加电后读取送入微控存)等组成。

PC寄存器

程序计数器PC用运算器的R5寄存器表示,保存下一条指令的地址

IP寄存器

指令地址寄存器IP由运算器的R6寄存器表示,保存当前执行的指令

微控

已实现的53条指令的微程序存放在2片单独的8位 中,加电的过程自动调入控存(装入微 码)。

AR

地址总线的输入信号仅有一组,即地址寄存器( AR),而AR只能接收来自运算器的结果输出信号。

常用微指令

19H

取指令, 增量。

该条微指令公用于所有指令。

1AH

1AH 按新取来的指令的操作码找到该条指令本身的微程序段的入口地址。

19H之后一定是1AH。

A4H

A4H 根据有无中断请求,决定是进入中断处理过程,还是顺序执行。

任何一条机器指令执行完都要去A4H检测中断

程序调试

以第一个微程序为例

前期准备

S_{2}S_{1}S_{0}

设为100

FS_{1}FS_{2}FS_{3}FS_{4}

设为1010

STEP/CONT

设为CONT

输入并查看微码

E900

将微码输入到900H开始的内存单元中

D900

查看900H开始的内存单元的数据

将微码加载到微控

A800

输入加载微码的程序

G800

运行上边的代码,把微码装入微控存100H开始的单元中

测试指令

A820

输入测试指令的程序到820H开始的内存单元中

E830

把新指令写到830H开始的内存单元中

U820

反汇编,查看输入的测试指令的程序

G820

运行从820H开始的程序

观察运算结果

DA00



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有