计算机组成原理设计性实验,(计算机组成原理)设计性实验报告.doc

华北科技学院计算机学院设计性实验

实 验 报 告

课程名称 计算机组成原理B

实验学期 2013 至 2014 学年 第 一 学期

学生所在院部 计算机学院

年级 2011 专业班级 计科B112

学生姓名 程子慧 学号 201107014230

任课教师 席振元

实验成绩

计算机学院制

实验报告须知学生实验报告,页面空间不够,。学生应该填写的内容包括:封面相关栏目、地点、时间、结果分析。教师应该填写的内容包括:实验教师根据课程的实验要求,评定学生的实验成绩未尽事宜,请参考该课程实验大纲和大纲。

Am2910器件的功能与具体用法,教学计算机的总体组成和部件之间的连接方法,总之应该深入理解控制器部件的组成、设计、控制与使用等诸项知识。

二、设备与环境

TEC-XP+教学机,微机(装有Windows XP、ISPLEVER、ispVM System等软件)。

三、实验内容

在现有的基本指令系统上,扩展2条指令:HADR、INCR。

四、实验步骤

1、 扩展的4条指令的格式及功能

(1)HADR DR,SR 互换指令

改指令需要四步微指令完成。

第一步:该指令的入口地址为80,下址为00,微程序顺序执行,无内存操作,数据来源为011,运算结果送入Q寄存器,并由Y口输出,进行R与S的加法操作,B口为IR的DR,不使用A口数据,状态寄存器的值不变,进位输入为0,专用寄存器无操作,送开关内容到内部总线;

第二步:微程序的入口地址为81,下址为00,顺序执行,无内存操作,数据来源为100,运算结果送入Y输出,进行R与S的加法运算,不使用B口数据,A口为IR的SR,状态寄存器的值不变,进位输入为0,地址寄存器接收数据,送开关内容到内部总线;

第三步:微程序的入口地址为82,下址为00,顺序执行,对内存进行读操作,运算器外获得数据,运算结果送入B口,并由Y输出,进行R与S的或运算,B口为IR的DR,不使用A口数据,状态寄存器的值不变,进位输入为0,专用寄存器无操作,送开关内容到内部总线;

第四步:微程序的入口地址为83,下址为30,执行完后必转,对内存进行写操作,数据来源为010,运算结果送入Y输出,进行R与S的加法运算,不使用A口与B口数据,状态寄存器的值不变,进位输入为0,专用寄存器无操作,送ALU输出到内部总线。

实现的功能:将DR与SR所存的值互换。

寻址方式:寄存器寻址方式。

操作码编码:IR==[(1,1,1,0,1,0,0,1)];

微程序步数:四步;

微程序入口地址:80。

(2)INCR DR 自增

INC DR;

实现的功能:将DR的值连续自增一次。

寻址方式:直接寻址方式。

操作码编码:IR==[(0,0,1,0,0,0,1,0)];

微程序步数:一步;

微程序入口地址:84。

2、 指令所对应的微程序

(1)HADR指令

下址

CI3

~0

SCC3

~0

MRW

I2

~0

I8

~6

I5

~3

B口

A口

SST

SSH

SCI

DC2

DC

80

00

11

10

00

00

100

011

000

000

10

00

00

00

000

000

000

000

81

00

11

10

00

00

100

100

001

000

00

00

10

00

000

000

011

000

82

00

11

10

00

00

001

111

011

000

10

00

00

00

000

000

000

000

83

30

00

11

00

00

000

010

001

000

00

00

00

00

000

000

000

001

(2)INCR指令

下址

CI3

~0

SCC3

~0

MRW

I2

~0

I8

~6

I5

~3

B口

A口

SST

SSH

SCI

DC2

DC1

84

30

00

11

00

00

100

011

011

000

10

00

00

0

0

001

001

000

000

3、ABEL语言源程序编辑以及JED文件生成

(1)HADR = (IR==[1,1,1,0,1,0,0,1]);

INCR = (IR==[0,0,1,0,0,0,1,0]);

(2)MA80 = (Y==[1,0,0,0,0,0,0,0]);

MA81

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
1. 深入掌握CPU的工作原理,包括ALU、控制器、寄存器、存储器等部件的工作原理; 2. 熟悉和掌握指令系统的设计方法,并设计简单的指令系统; 3. 理解和掌握小型计算机的工作原理,以系统的方法建立起整机概念; 4. 理解和掌握基于VHDL语言和TEC-CA硬件平台设计模型机的方法。 二、设计要求   参考所给的16位实验CPU的设计与实现,体会其整体设计思路,并理解该CPU的工作原理。在此基础上,对该16位的实验CPU(称为参考CPU)进行改造,以设计得到一个8位的CPU。总的要求是将原来16位的数据通路,改成8位的数据通路,总的要求如下: 将原来8位的OP码,改成4位的OP码; 将原来8位的地址码(包含2个操作数),改成4位的地址码(包含2个操作数)。   在上述总要求的基础上,对实验CPU的指令系统、ALU、控制器、寄存器、存储器进行相应的改造。具体要求如下: 修改指令格式,将原来指令长为16位的指令格式改成8位的指令长格式; 设计总共16条指令的指令系统。此指令系统可以是参考CPU指令系统的子集,但参考CPU指令系统中A组和B组中的指令至少都要选用2条。此外,常见的算术逻辑运算、跳转等指令要纳入所设计的指令系统; 设计8位的寄存器,每个寄存器有1个输入端口和2个输出端口。寄存器的数量受控于每一个操作数的位数,具体要看指令格式如何设计设计8位的ALU,具体要实现哪些功能与指令系统有关。设计时,不直接修改参考CPU的VHDL代码,而是改用类似之前基础实验设计ALU的方式设计设计8位的控制逻辑部件,具体结合指令功能、硬布线逻辑进行修改; 设计8位的地址寄存器IR、程序计数器PC、地址寄存器AR; 设计8位的存储器读写部件。由于改用了8位的数据通路,不能直接采用DEC-CA平台上的2片16位的存储芯片,需要按照基础实验3的方法设计存储器。此种方法不能通过DebugController下载测试指令,因此测试指令如何置入到存储器中是一个难点。设计时,可以考虑简单点地把指令写死在存储器中(可用于验证指令的执行),然后用只读方式读出来;或者考虑在reset的那一节拍里,实现存储器中待测试指令的置入; (可选项)设计8位的数据寄存器DR; (可选项)不直接设计存储器RAM,而是采用DEC-CA平台上的2片16位的存储芯片.在实现了第9个要求的基础上,实现由Debugcontroller置入待测试指令; (可选项)顶层实体,不是由BDF方式画图实现,而是用类似基础实验4(通用寄存器组)中设计顶层实体的方式,用VHDL语言来实现。 (可选项)自己设想   利用设计好的指令系统,编写汇编代码,以便测试所有设计的指令及指令涉及的相关功能。设计好测试用的汇编代码后,然后利用Quartus II软件附带的DebugController编写汇编编译规则。接着,利用DebugController软件把汇编编译之后的二进制代码置入到所采用的存储器中,并对设计好的8位CPU进行测试。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值