计算机组成原理实验八简单模型计算机实验.docx

上传人:b****8 文档编号:11112026 上传时间:2023-02-25 格式:DOCX 页数:14 大小:138.82KB
下载 相关 举报
计算机组成原理实验八简单模型计算机实验.docx_第1页
第1页 / 共14页
计算机组成原理实验八简单模型计算机实验.docx_第2页
第2页 / 共14页
计算机组成原理实验八简单模型计算机实验.docx_第3页
第3页 / 共14页
计算机组成原理实验八简单模型计算机实验.docx_第4页
第4页 / 共14页
计算机组成原理实验八简单模型计算机实验.docx_第5页
第5页 / 共14页
点击查看更多>>
下载资源
资源描述

计算机组成原理实验八简单模型计算机实验.docx

《计算机组成原理实验八简单模型计算机实验.docx》由会员分享,可在线阅读,更多相关《计算机组成原理实验八简单模型计算机实验.docx(14页珍藏版)》请在冰豆网上搜索。

计算机组成原理实验八简单模型计算机实验.docx

计算机组成原理实验八简单模型计算机实验

实验八

简单模型计算机实验

一、实验目的

1)通过实验分析简单模型机结构,了解计算机的工作原理。

2)掌握计算机微程序控制器的控制方法,掌握计算机指令执行过程

二、实验原理

基本整机模型数据框图如图所示,计算机数据通路的控制将由微程序控制器来完成,CPU从内存中取出一条机器指令到指令执行结束的一个指令周期全部由微指令组成的序列来完成,即一条机器指令对应一个微程序。

数据的通路从程序计数器PC的地址送到主存的地址寄存器,根据地址寄存器的内容找到相应的存储单元。

存储器中的数据是指令时,那么数据是从RAM送到总线,再从总线送到IR中。

存储器中的数据是需要加工的数据时,那么数据是从RAM送到总线,再动总线送到通用寄存器中等待加工。

数据加工过程中,两个数据是从总线上将数据分别分时压入两个暂存器中,等待运算部件的加工,在数据加工完成以后。

运算结果是通过三太门送到总线上。

三态门的控制时由微控制器来控制。

 

图:

模型机的数据通路图

三、实验过程

1.连线

按实验逻辑原理图连接以下控制信号。

1)时钟单元(CLOCKUNIT)的T1-T4接到微程序控制单元(MAINCONTROLUNIT)的T1-T4.

2)手动控制开关单元(MANUALUNIT)的KA,KB接到指令单元(INSUNIT)的KA,KB。

3)指令单元(INSUNIT)的J

(1)-J(5)、SE6-SE0、B-IR接到的微程序控制单元(MAINCONTROLUNIT)的J

(1)-J(5)、SE6-SE0、B-IR。

4)

输入/输出单元(INPUT/OUTPUTUNIT)IO-W,IO-R接到微程序控制单元(MAINCONTROLUNIT)的IO-W,IO-R,Ai接到地址单元(ADDRESSUNIT)的A0.

5)

主存储器单元(MEMUNIT)M-W、M-R接到微程序控制单元(MAINCONTROLUNIT)的M-W、M-R,A7-A0接到地址单元(ADDRESSUNIT)的A7-A0.

6)

地址单元(ADDRESSUNIT)的B-AR、B-PC、PC+1、PC-B接到微程序控制单元(MAINCONTROLUNIT)的B-AR、B-PC、PC+1、PC-B.

7)通用寄存器单元(REGUNIT)的B-R、R0-B接到微程序控制单元(MAINCONTROLUNIT)的B-DR、DR-B。

8)

把算术逻辑单元(ALUUNIT)的B-DA1、B-A2、ALU-B、Cycn、CyNCn、S3-S0、M、Ci接到微程序控制单元(MAINCONTROLUNIT)的B-DA1、B-A2、ALU-B、Cycn、CyNCn、S3-S0、M、Ci。

2.写入、检验微代码

这项操作与实验七的操作过程相同

3.装入机器指令汇编程序操作

1)微程序控制单元(MAINCONTROLUNIT)编程开关置于“RUN”状态。

2)手动控制开关单元(MANUALUNIT)的“STEP/RUN”开关置于“STEP”状态。

3)手动控制开关单元(MANUALUNIT)的KA,KB开关置于1、0写主存储器状态。

4)拨动

开关从11—0—1,产生一个负脉冲,清零程序计数器PC、微地址寄存器。

5)拨动“START”按钮一次,从微程序控制存储器的00H微地址开始执行微指令,暂停在0AH微地址处。

6)此时在输入数据开关上拨入实验用机器指令汇编程序表中对应00H地址的指令码C0H,接着第二次按动“START”按钮,暂停在0FH微地址处;第三次按动“START”按钮,暂停在1CH微地址处;第四次按动“START”按钮,暂停在1DH微地址处,此时机器指令汇编的第一个字节已写入存储器,程序计数器PC已加1为01H;第四次按动“START”按钮,暂停在0AH微地址处,开始写机器指令汇编程序第二个字节。

7)第六次至九次按动“START”按钮与第二次至五次按动“START”按钮的作用类似,当微地址为0AH时,在输入数据开关上拨入下一个机器指令汇编程序字节,程序计数器PC不断加1,反复操作第(6)步直至全部机器码送入主存器为止。

4.检查机器指令汇编程序

1)微程序控制单元(MAINCONTROLUNIT)编程开关置于“RUN”状态。

2)手动控制开关单元(MANUALUNIT)的“STRP/RUN”开关置于“STEP”状态。

3)手动控制开关单元(MANUALUNIT)的KA、KB开关置于0、1写主存储器状态。

4)拨动开关从1-0-1,产生一个负脉冲,清零程序计数器PC、微地址寄存器。

5)按动“START”按钮一次,从微程序控制存储器00H微地址开始执行微指令,暂停在09H微指令处。

6)第二次按动“START”按钮,暂停在0CH微地址处,此时程序计数器PC加1为01H,指示的是下一次读主存储器的地址,当前读主存储器的地址为00H;接着第三次按动“START”按钮,暂停在09H微地址处;第四次按动“START”按钮,暂停在0EH微地址处。

第五次按动“START”按钮,暂停在09H微地址处,此时输出显示灯上显示主存储器00H单元中的数据。

7)第六至九次按动“START”按钮的作用与第二至五次按动“START”按钮的作用类似,在0CH微地址处,程序计数器PC加1,在09H微地址处显示主存储器相对应单元中的数据,反复操作第(6)步直至全部机器码读出检查完为止。

8)如果主存储器中数据与表2-26中数据不符,则回到第三步装入机器指令汇编程序的操作过程,重新向主存储器写入正确数据。

5.单步运行机器指令汇编程序

1)微程序控制单元(MAINCONTROLUNIT)编程开关置于“RUN”状态。

2)手动控制开关单元(MANUALUNIT)的“STRP/RUN”开关置于“STEP”状态。

3)手动控制开关单元(MANUALUNIT)的KA、KB开关置于1、1或0、0运行机器码状态。

4)拨动开关从1-0-1,产生一个负脉冲,清零程序计数器PC、微地址寄存器。

5)按动“START”按钮一次,从微程序控制存储器的00H微地址开始执行微指令,暂停在08H或0BH微地址处;第二次按动“START”按钮,暂停在01H微地址处,开始执行机器指令的公共操作。

6)第三次按动“START”按钮,暂停在02H微地址处;第四次按动“START”按钮,暂停在03H微地址处;接着第五次按动“START”按钮,暂停在10H微地址处,准备各条机器指令的散转。

7)接下来微地址随着主存储器中机器指令汇编程序指令的不同而作不同的变化,实验者可根据表2-26和表2-15中的内容观察各部件的动作变化。

6.连续运行机器指令汇编程序

1)微程序控制单元编程开关置于“RUN”状态。

2)手动控制开关单元的“STEP/RUN”开关置于“RUN”状态。

3)手动控制开关单元的KA、KB开关置于1、1或0、0运行机器码状态。

4)拨动

开关从1-0-1,产生一个负脉冲,清零程序计数器PC、微地址寄存器。

5)按动“START”按钮一次,模型计算机将自动执行表2-26中的机器指令汇编程序,程序功能是对输入数据开关上的数据进行连续加操作,若在输入数据开关上拨01H,则进行连续加“1”操作;若拨03H,则进行连续加“3”操作。

四、微指令运行步骤

机器指令写入

控制台指令机器指令读出

机器指令执行

取指

译码

机器指令执行执行

访存

写回

五、结果与总结

1)记录实验过程中的情况和原始数据。

2)参照算术加法指令的微程序操作过程,能否自己设计一条无借位算术减法指令的微程序操作代码,以扩充模拟计算机的功能。

3)记录每条机器指令结束时的模拟模型计算机各指示灯上的信息,用16进制形式填入表2-27中,并说明这些信息的意义。

4)结合上面的问题总结出总线的特性和使用方法,以及解决问题的方法和过程,把观察到的现象和对书本上原理的理解写入实验报告。

表2-27实验八结果记录

机器状态

输入指示灯

总线指示灯

微地址指示灯

微指令码指示灯

输出指示灯

指示灯信息含义

初始状态

01

FF

00

01C008

94

将执行00地址中的指令01C008H

控制台指令结束时

01

FF

01

DC4002

94

执行完后地址跳转至01H

IN结束时

01

01

01

94

输入01H中的数据

ADD结束时

01

95

01

94

与输入数相加

STA结束时

01

95

01

94

将结果送01H

OUT结束时

01

95

01

95

将01H数据输出

JMP结束时

01

00

01

95

跳转至00H

六、附录实验箱介绍

RS

运算器

寄存器

报警

输入/输出

中断

主存储器

总线

微程序控制器

指令

地址

时钟

手动控制开关

实验仪基本组成框图

1.简单模型计算机构架

简单模型计算机逻辑结构如图1所示,构成简单模型计算机的实验部件以总线为基本连接通道,主要有以下7个:

1)算术逻辑运算部件ALUUNIT进行算术逻辑运算操作。

2)存储器部件MEMUNIT,存储模型计算机汇编语言程序和操作数据。

3)地址寄存器部件ADDRESSUNIT,包含两部分电路,地址寄存器AR:

接收存储器程序中的指令地址和指令中的数据地址;指令地址计数器PC:

用于指示程序中的指令地址并通过地址缓冲器送往地址寄存器AR。

4)指令寄存器部件INSUNIT,寄存器当前正在执行的机器指令,此指令的指令码通过指令译码器向微程序控制器指示相应的微程序入口地址;此指令的地址码指示的操作数地址,送往地址寄存器AR。

5)输入/输出部件INPUT/OUTPUT,操作数据的输入与输出显示。

6)通用寄存器部件REGUNIT,暂存运算的中间数据。

7)微程序控制器部件MAINCONTROLUNIT,控制各部件完成指令的功能。

图1-简单模型计算机逻辑结构图

2.总线结构

总线是多个系统部件之间进行数据传送的公共通路,是构成计算机系统的骨架。

借助总线连接,计算机在系统各部件之间实现传送地址、数据和控制信息的操作。

因此,所谓总线就是指能为多个功能部件服务的一组公用信息线。

总线传输实验框图如下图所示,它将几种不同的设备挂至总线上,有存储器、输入设备、输出设备、寄存器。

这些设备都需要有三态输出控制,按照传输要求恰当有序的控制它们,就可实现总线信息传输。

3.运算器ALU

运算器ALU由一片ispLSI1024(U47)组成,在选择端S2、S1、S0控制下,对数据A和B进行加、减、与、直通、乘五种运算,功能如下:

运算器功能表

选择

操作

S2

S1

S0

0

0

0

A&B

0

0

1

A&A(直通)

0

1

0

A+B

0

1

1

A-B

1

0

0

A(低4位)×B(低4位)

进位C只在加法运算和减法运算时产生。

加运算中,C表示进位;减运算中,C代表借位。

加、减运算产生的进位(借位)在T4的上升沿送入C寄存器保存。

与、乘、直通操作不影响进位C的状态,即进位C保持不变。

当ALU_BUS=1时,运算结果送往数据总线DBUS。

加、减运算产生的进位(借位)C与控制台的C指示灯相连。

4.地址寄存器

地址寄存器AR1(U37)和AR2(U27、U28)提供双端口存储器的地址。

AR1是一片GAL22V10,具有加1功能,提供双端口存储器左端口的地址。

AR1从数据总线DBUS接收数据。

AR1的控制信号是LDAR1和AR1_INC。

当AR1_INC=1时,在T4的上升沿,AR1的值加1;当LDAR1=1时,在T4的上升沿,将数据总线DBUS的数据打入地址寄存器AR1。

AR2由2片74HC298组成,有两个数据输入端,一个来自程序计数器PC,另一个来自数据总线DBUS。

AR2的控制信号是LDAR2和M3。

M3选择数据来源,当M3=1时,选中数据总线DBUS;当M3=0时,选中程序计数器PC。

LDAR2控制何时接收地址,当LDAR2=1时,在T2的下降沿将选中的数据源上的数据打入AR2。

5.指令寄存器

指令寄存器IR是一片74HC374(U20)。

它的数据端从双端口存储器接收数据(指令)。

当LDIR=1时,在T4的上升沿将来自双端口存储器的指令打入指令寄存器IR保存。

指令的操作码部分送往控制器译码,产生各种所需的控制信号。

大多数情况下,指令的操作数部分应连到寄存器堆(用户自己连接),选择参与运算的寄存器。

在某些情况下(条件转移指令时),指令的操作数部分也参与新的PC的计算。

本实验系统设计了12条基本的机器指令,均为单字长(8位)指令。

指令功能及格式如表2所示。

表2中的X代表随意值;RS1、RS0指的是寄存器堆的B端口选择信号RS1、RS0;RD1、RD0指的是寄存器堆的A端口选择信号RD1、RD0,不过由于运算结果需写回,因此它也同时指WR1、WR0,用户需将它们对应连接。

另一点需说明的是,为了简化运算,指令JCD中的D是一个4位的正数,用D3D2D1D0表示。

机器指令格式

名称

助记符

功能

指令格式

R7R6R5R4

R3R2

R1R0

加法

ADDRd,Rs

Rd+Rs→Rd

0000

RS1RS0

RD1RD0

减法

SUBRd,Rs

Rd-Rs→Rd

0001

RS1RS0

RD1RD0

乘法

MULRd,Rs

Rd*Rs→Rd

0010

RS1RS0

RD1RD0

逻辑与

ANDRd,Rs

Rd&Rs→Rd

0011

RS1RS0

RD1RD0

存数

STARd,[Rs]

Rd→[Rs]

0100

RS1RS0

RD1RD0

取数

LDARd,[Rs]

[Rs]→Rd

0101

RS1RS0

RD1RD0

无条件转移

JMP[Rs]

[Rs]→PC

1000

RS1RS0

××

条件转移

JCD

若C=1,PC+D→PC

若C=0,PC+1→PC

1001

D3D2

D1D0

停机

STP

暂停运行

0110

××

××

中断返回

IRET

返回断点

1010

××

××

开中断

INTS

允许中断

1011

××

××

关中断

INTC

禁止中断

1100

××

××

6.时序发生器

时序发生器产生计算机模型所需的时序。

时序电路由一个1MHz晶体震荡器、2片GAL22V10(U6和U7)组成,位于控制存储器的右边。

根据本机设计,执行一条微指令需要4个节拍脉冲T1、T2、T3、T4,执行一条指令通常需要取指、送操作数、运算、写结果四个节拍电位W1、W2、W3、W4,因此本机的基本时序如下:

 

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 高等教育 > 经济学

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1