软件学院.docx

上传人:b****3 文档编号:24911159 上传时间:2023-06-02 格式:DOCX 页数:35 大小:566.28KB
下载 相关 举报
软件学院.docx_第1页
第1页 / 共35页
软件学院.docx_第2页
第2页 / 共35页
软件学院.docx_第3页
第3页 / 共35页
软件学院.docx_第4页
第4页 / 共35页
软件学院.docx_第5页
第5页 / 共35页
点击查看更多>>
下载资源
资源描述

软件学院.docx

《软件学院.docx》由会员分享,可在线阅读,更多相关《软件学院.docx(35页珍藏版)》请在冰豆网上搜索。

软件学院.docx

软件学院

 

软件学院

 

计算机组成原理

实验指导书

 

软件工程系

2014年6月

 

实验一MACH器件及教学机监控程序实验

一、实验目的

(1)了解使用MACH器件实现的逻辑门线路的设计与操作过程;学习使用逻辑门线路实现某些简单的组合逻辑线路的功能;学习使用逻辑门线路实现某些简单的时序逻辑线路的功能;学习使用集成度较高的逻辑门线路实现某些复杂一些的组合逻辑线路的功能;学习使用集成度较高的逻辑门线路实现某些复杂一些的时序逻辑线路的功能。

(2)学习教学机监控程序的功能、监控命令的使用方法,体会软件系统在计算机组成中的地位和作用,以便正确地操作和运行教学机系统的各项功能。

二、实验具体内容

(1)用CPLD器件MACH-4芯片实现一定逻辑功能的电路。

(参见文献[2])

(2)熟悉教学机的结构、布局,了解各种开关、按钮和指示灯的作用。

(3体验教学机监控程序的功能,学习监控命令的使用方法,包括A/U/G/T/P/E/D/R这些命令的功能及使用方法。

三、实验操作过程

(1)关于MACH-4的使用,参照文献[2]中附录2。

(2)关于监控程序实验,首先使PC机处于正常运行状态,建立PC机与教学机的连接。

第一种方法,运行pcec16.exe程序,得到图1所示界面。

选择连接端口,系统默认选择串口1,用户可根据实际情况选择串口1或者串口2,(这里的串口指得是和TH—union教学实验系统相连得PC机的串口)按回车键会看到图2所示界面。

图2中显示的是系统设定的一些传输参数,建议用户不要改动,直接回车。

然后,按一下教学机上的“RESET”按钮,放开后再按一下“START”按钮,将出现如图3所示界面。

图3表明TH-union机器通讯正常,现在已经可以在监控程序下建立和调试汇编程序了。

图1

图2

图3

第二种方法,运行tec2kide.exe程序进入教学机集成开发环境,界面如图4所示。

图4

选择“终端”,界面如图5所示。

按一下教学机上的“RESET”按钮,放开后再按一下“START”按钮,出现图6所示界面,该界面下也可运行汇编程序,和运行pece.exe是一样的。

选择“编辑器”可以得到图7所示界面,可以在如下界面直接输入汇编程序,也可在写字板里输入汇编源程序,以“.asm”为扩展名保存,运行时打开此文件既可。

图7中的汇编程序为直接输入的或从文件中打开的汇编程序,在该软件中可以对其进行汇编、运行等操作,并可以查看内存和寄存器中的内容。

图5

图6

图7

四、实验要求与实验报告内容

(1)实验之前认真预习,明确实验目的和具体实验内容,设计好主要的待实验的程序,做好实验之前的必要准备。

(2)想好实验的操作步骤,明确通过实验到底可以学习哪些知识,想一想怎么样有意识地提高教学实验的真正效果;

(3)爱护教学实验设备,认真记录并仔细分析遇到的现象与问题,找出解决问题的办法,有意识地提高自己创新思维能力。

(4)实验之后认真写出实验报告,包括预习时准备的内容,实验数据,实验过程、遇到的现象和解决问题的办法,自己的收获体会,对改进教学实验安排的建议等。

善于总结和发现问题,写好实验报告是培养实际工作能力非常重要的一个环节,应予以足够的重视。

五、思考题

*1.MACH-4芯片的引腿定义中是否可以任意定义?

实际运用中应该注意哪些问题?

2.监控程序的建立有哪二种方法?

你准备选择哪一种?

为什么?

3.监控命令中G、T、P的功能是什么?

有什么不同?

4.若教学机与上位机(PC机)连接不上会是哪些原因引起的?

怎样解决?

 

实验二教学机运算器部件实验

一、实验目的

(1)熟悉与深入理解4位的运算器芯片Am2901的功能和内部组成,运行中要求使用的控制信号及其各自的控制作用;

(2)熟悉与深入理解用4片4位的运算器芯片构成16位的运算器部件的具体方案,各数据位信号、各控制位信号的连接关系;

(3)熟悉与深入理解用2片GAL20V8芯片解决ALU最低位的进位输入信号和最高最低位的移位输入信号、实现4位的标志位寄存器的方案,理解为什么这些功能不能在运算器芯片之内实现而要到芯片之外另外处理。

(4)明确教学计算机的运算器部件,使用总计24位的控制信号就完全确定了它的全部运算与处理功能,脱机运算器实验中可以通过24位的微型开关提供这些控制信号,教学计算机正常执行指令时,这些控制信号必须改由控制器部件来提供。

在两种方式下,每一位(组)的控制功能是完全相同的。

二、实验具体内容

(1)脱机运算器实验

依照实例中预定功能,在实验中实现如下7项操作,整理并完成表1的填写。

预期功能实现方案

1.R0←1234数据开关拨1234,B地址给0,D+0,结果送B口选的R0

2.R9←789F数据开关拨789F,B地址给9,D+0,结果送B口选的R9

3.R9←R9-R0B地址9,A地址给0,最低位进位给1,B-A,结果送B口选的R9

4.R0←R0+1B地址给0,最低位进位给1,B+0,结果送B口选的R0

5.R10←R0,逻辑右移B地址给A,A地址给0,A+0,结果送B口选的R10

6.R9←R9^R9B地址给9值,A地址也给9值,B^A,结果送B口R9

7.Q←R9A地址给9,通用寄存器不接收,A+0,结果送Q寄存器

表1运算器的功能与所用到的控制信号

预期功能

控制信号

I8-6

I5-3

I2-0

SST

A地址

B地址

SCI

SSH

R0←1234

R9←789F

R9←R9-R0

R0←R0+1

R10←R0,逻辑右移

R9←R9^R9

Q←R9

根据操作结果及状态,将7项功能的执行结果及状态标志填入表2。

表2执行结果

预期功能

Y15-Y0CYF=0OVRF15

(按STEP之前)

CZVS触发器的值

(按STEP之后)

R0←1234

R9←789F

R9←R9-R0

R0←R0+1

R10←R0,逻辑右移

R9←R9^R9

Q←R9

(2)联机运算器实验

根据预定功能,编写汇编源程序,在上位机上采用监控命令方式或者交叉汇编方式建立该程序,并运行,同时观察运行结果及状态。

实例程序如下:

ORG2000H;程序起始地址

MVRDR0,1234H;R0←1234

MVRDR9,789FH;R9←789F

SUBR9,R0;R9←R9-R0

INCR0;R0←R0+1

MVRRR10,R0;R10←R0

ANDR9,R9;R9←R9^R9

RET;程序结束

END;交叉汇编程序结束保留字

(3)自拟实验题目

根据实验方法,自己拟定一个运算类题目,分别采用脱机和联机方式实现该运算,观察并记录实验结果及现象。

三、实验操作过程

1、脱机的运算器实验

(1)将教学机的5个工作方式开关设置为11X00(单步、手动、脱机、16位),按一下“RESET”按钮,使教学机初始化;

(2)根据表1中的内容设置24个控制开关的值,并根据要求拨动16个数据开关设置数据;

(3)按动“START”按钮,通过指示灯观察并认真记录运算结果及状态标志。

2、联机运算器实验

(1)将教学机的5个工作方式开关设置为00X10(连续、内存、联机、16位),按一下“RESET”按钮,使教学机初始化;

(2)输入汇编源程序,在连续运行方式下,使用监控程序的单指令运行命令T,在显示器上观察每一条指令的运行结果;

(3)将教学机工作方式开关中的的“单步/连续”开关拨至“单步”,按动“START”按钮,观察指令运行过程。

四、实验要求与实验报告内容

(1)实验之前认真预习,明确实验目的和具体实验内容,写出实验用到的数据和控制信号的取值,做好实验之前的必要准备。

(2)想好实验的操作步骤,明确通过实验到底可以学习哪些知识,想一想怎么样有意识地提高教学实验的真正效果;

(3)爱护教学实验设备,记录实验步骤中的数据和运算结果,仔细分析遇到的现象与问题,找出解决问题的办法,有意识地提高自己创新思维能力。

(4)实验之后认真写出实验报告,重点在于预习时准备的内容,实验数据,运算结果的分析讨论,实验过程、遇到的现象和解决问题的办法,自己的收获体会,对改进教学实验安排的建议等。

五、思考题

1.执行R0+1时,输出Y15-Y0是什么数据(即是R0还是R0+1)?

为什么?

2.左右移位时,是通用寄存器本身移位,还是它与Q寄存器联合移位是怎么区分的?

3.最高、最低位的移位输入信号是怎么给出的?

C在移位中有什么作用?

4.Q寄存器的运用与通用寄存器R0-R15的运用有区别吗?

为什么?

 

实验三教学机汇编语言程序设计实验

一、实验目的

(1)了解教学计算机的指令格式、指令编码、选择的寻址方式和每一条指令的具体功能,这些都是学习指令系统设计必须掌握的知识,对进一步学习运算器组成和控制器设计也直接有关。

作为指令系统的实例,教学计算机的指令系统有比较好的完整性和典型性。

(2)了解汇编语言的语句与机器语言的指令之间的对应关系,了解伪指令在汇编过程中的作用,学习用汇编语言设计程序的过程和方法。

对于已经学习过PC机的汇编语言程序设计的学生,完成本项实验简便易学,主要精力应集中到熟悉教学计算机的指令系统方面,对于尚未学习过汇编语言程序设计的学生,本项实验可以补上欠缺的一个教学环节,对学习本课程的后续内容至关重要。

二、实验具体内容

(1)参照文献[1](教材)中有关指令系统和汇编程序的例子,在教学计算机上输入并调式、运行几个小的简单的汇编程序。

(2)设计、实现在文献[1](教材)有关章的习题中给出的几个汇编程序,并在教学计算机上完成调式、运行。

例如,用教学机的指令系统,设计一个程序,实现从键盘输入一个带符号的4位的十进制整形数字,转换成二进制的补码保存在一个寄存器中,并以二进制代码形式将其显示到计算机屏幕上。

三、实验操作过程

(1)使用监控程序的A命令,逐行输入并直接汇编单条的汇编语句,之后使用G命令运行这个程序,并使用其他命令监控运行结果及中间过程;

(2)使用教学机集成开发环境在PC机上编辑、运行汇编源程序。

四、实验要求与实验报告内容

(1)实验之前认真预习,明确实验目的和具体实验内容,编写实验用到的完整的汇编源程序,做好实验之前的必要准备。

(2)想好实验的操作步骤,明确通过实验到底可以学习哪些知识,想一想怎么样有意识地提高教学实验的真正效果;

(3)爱护教学实验设备,记录实验步骤中的数据和运算结果,仔细分析遇到的现象与问题,找出解决问题的办法,有意识地提高自己创新思维能力。

(4)实验之后认证写出实验报告,重点在于预习时准备的内容,实验数据,运算结果的分析讨论,实验过程、遇到的现象和解决问题的办法,自己的收获体会,对改进教学实验安排的建议等。

五、思考题

1.使用监控程序的A命令等来运行程序与使用教学机集成开发环境在PC机上编辑、运行汇编源程序各有什么优缺点,这两种操作分别需要注意什么?

2.在操作过程中,为什么有时会出现查看寄存器的值不是期望的理论值的现象?

3.你的汇编源程序的起始地址可以是0000H吗?

为什么?

实验四内存储器部件实验

一、实验目的

(1)熟悉ROM芯片和RAM芯片在功能和使用方法等方面的相同和差异之处;学习向EEPROM芯片写入数据的过程和方法。

(2)理解并熟悉通过字、位扩展技术实现扩展存储器系统容量的方案;

(3)了解静态存储器系统使用的各种控制信号之间正常的时序关系;

(4)了解如何通过读写存储器的指令实现对58C65ROM芯片的读、写操作;

(5)加深理解存储器部件在计算机整机系统中的作用。

二、实验具体内容

(1)扩展教学机的存储器空间

用2片58C65ROM器件扩展8K字的ROM存储区。

直接使用教学机的“存数”指令向58C65ROM器件内写入信息,然后使用教学机的“取数”指令读出写入该存储器的数据,判断数据是否正确;也可以使用监控命令向存储单元写入数据,然后使用监控命令查看数据时候正确。

用2片6116RAM器件扩展2K字的RAM存储区的实验。

此时需要把24脚的RAM芯片按照与器件插座右对齐的方式查到插座中,并适当的进行必要的跳接线连通或者断开操作。

全部接线都连接正确之后,就可以对这个存储区执行写入或者读出数据的操作功能。

*

(2)观察存储器运行的时序信号的波形

三、实验操作过程

1、按照实验预习准备的方案,正确地连接好需要的全部数据与控制信号连线,特别要注意/CE、/OE、/WE三个信号的设置。

弄清楚扩展存储空间与原有存储空间在地址空间分配、数据线和控制信号的连接关系、读写操作方法等各个方面的关系。

2、将预习准备好的程序代码或数据写入扩展的2片ROM芯片之中,注意需要将指令和数据的高、低8位写到各自对应的ROM芯片;然后将写入的数据读出来,并检查结果的正确性。

3、深入理解内存分成ROM存储区和RAM存储区两部分的理由,通过实验比较两种存储器的不同。

4、正确调整/CE、/OE、/WE三个信号的连接方案,用读写内存的指令完成向58C65ROM芯片指定单元写入一些数据,再读出来检查结果的正确性,如果遇到问题,分析清楚问题的根源并设法解决。

四、实验要求与实验报告内容

(1)实验之前认真预习,明确实验目的和具体实验内容,设计好扩展8K字存储器容量的线路图,标明数据线和控制信号的连接关系,做好实验之前的必要准备。

(2)想好实验的操作步骤,明确通过实验到底可以学习哪些知识,想一想怎么样有意识地提高教学实验的真正效果;

(3)爱护教学实验设备,记录实验步骤中的数据和运算结果,仔细分析遇到的现象与问题,找出解决问题的办法,有意识地提高自己创新思维能力。

(4)实验之后认真写出实验报告,重点在于预习时准备的内容,实验数据,运算结果的分析讨论,实验过程、遇到的现象和解决问题的办法,自己的收获体会,对改进教学实验安排的建议等。

五、思考题

1.实验中,2片扩展存储器芯片58C65的寻址空间可以是多少?

2.58C65芯片的读写时序一致吗?

在程序中应该如何保证读写操作的正确性?

3.58C65和6116芯片的写入时间一致吗?

用程序方法如何测得58C65芯片的写入时间?

 

实验五微程序控制器部件实验

一、实验目的

(1)进一步熟悉教学计算机的指令格式、指令编码、寻址方式和指令功能等内容;

(2)进一步熟悉教学计算机的总体组成和各个部件的运行原理,进一步理解和熟悉指令执行步骤的划分方案;

(3)进一步熟悉教学计算机的微指令格式和各个字段的控制功能,理解微指令下地址字段的作用,并学会使用这个字段解决微指令之间的接续关系。

(4)进一步熟悉教学计算机的微程序控制器的组成和运行原理,学习设计微程序控制器的过程和方法。

二、实验具体内容及操作过程

这是一个观察、验证性实验,即通过多种方式,察看教学计算机指令的执行步骤、运行结果、各组控制信号在每一个执行步骤中的状态、指令之间的衔接等有关内容。

这个层次的实验,重点在于学懂教学计算机中已有的设计结果,加深对授课内容的理解深度,为开展自己的设计打好基础。

在这个层次上的实验,有4项内容是必须完成的。

(1)检查与理解指令的执行效果

将教学计算机运行功能选择开关置为00001(连续运行、读内存、微程序、朕机、16位)。

设计含有预期执行指令的小程序,在单指令方式下运行该程序,每一条指令执行结束后,会在计算机屏幕上显示显示16个通用寄存器(含程序计数器PC和堆栈指针SP)的内容,C、Z、V、S四个标志位的值,下一条将要执行的指令,即可以清楚地看到每一条指令的执行效果,这非常有利于理解指令的功能,各条指令在程序中的不同作用。

(2)检查与理解指令的执行步骤

这主要指的是理解与体会微程序控制器中的微指令的下地址形成逻辑和它的运行结果。

将教学计算机运行功能选择开关置为11001(单步运行、手拔、微程序、朕机、16位),使用手拨开关输入需要检查的指令的操作码,让教学机反复执行同一条指令,对照教材上的指令执行流程图的内容,明确相关微指令的接续关系。

此时无需关心指令的执行功能,因为此时指令得不到正确的操作数据和地址信息。

(3)检查与理解指令的每一个执行步骤所使用的控制信号

这主要指的是理解与体会控制信号产生部件的功能。

将教学计算机运行功能选择开关置为11001(单步运行、手拔、微程序、朕机、16位),使用手拨开关输入需要检查的指令的操作码,在单步方式下,让计算机反复执行同一条指令,对照教材上的微程序清单或者指令执行流程表的内容,查看在不同指令、不同执行步骤的情况下,微指令寄存器输出的每一位控制信号的状态(取值),明确每一条指令在不同执行步骤中所用到的控制信号及其控制作用。

(4)检查与理解指令的每一个执行步骤实现的具体功能

将教学计算机运行功能选择开关置为00001(连续运行、读内存、微程序、朕机、16位)。

设计一小段含有预期观察指令的小程序,并使其进入并处于循环执行状态,在连续执行指令的方式下运行该程序,然后将教学机切换到单步运行方式(将教学机运行功能开关最左边的开关拨上去,即设置为“单步运行”),此后每按一次START按键,教学机执行一条指令的一个执行步骤的功能,对照教材上的微程序清单或者指令执行流程表的内容,观察不同指令在不同执行步骤下,微指令寄存器输出的每一位控制信号的状态(取值),以及在这些控制信号的作用下,教学机各个功能部件所实现的具体功能。

这是综合了解指令执行过程全部内容的非常有效的手段,对理解指令功能,指令执行步骤划分和每个执行步骤实现的功能,指令执行步骤的衔接关系,不同指令的衔接关系等很有帮助,是控制器实验中很好的一项实验内容。

三、实验要求与实验报告内容

(1)实验之前认真预习,明确实验目的和具体实验内容,认真学懂几条典型指令的微程序的有关内容,对微程序控制器的组成和运行原理有个初步的理解。

(2)参照对已有指令微程序的设计结果,设计待扩展的几条指令的微程序,要特别注意属于相同指令组的在执行步骤划分、每一个执行步骤(每一微指令)所用到的控制信号取值的相似性和差异之处,有意识地加深对微程序设计办法的理解程度,做好试验之前必要的准备工作。

(3)爱护教学实验设备,认真记录实验步骤中的数据和运算结果,仔细分析遇到的现象与问题,找出解决问题的办法,有意识地提高自己创新思维能力。

(4)实验之后认真写出实验报告,重点在于预习时准备的内容,最终正确的微程序设计结果,实验过程、遇到的现象和解决问题的办法,自己的收获体会,对改进教学实验安排的建议等。

五、思考题

1.通过实验,你认为微程序控制器的设计思想(或原理)有哪些优缺点?

2.微程序控制器设计的关键问题有哪些?

3.采用手动方式设置指令和操作数的时候,拨动开关的时间对指令执行结果有没有影响?

如果有影响,那么应该注意什么?

 

实验六硬布线控制器部件实验

一、实验目的

(1)进一步熟悉教学计算机的指令格式、指令编码、寻址方式和指令功能等内容;

(2)进一步熟悉教学计算机的总体组成和各个部件的运行原理,进一步理解和熟悉指令执行步骤的划分方案;

(3)进一步熟悉教学计算机的硬布线控制器各个控制命令(组)的控制功能,学习节拍发生器和控制信号产生部件的设计方法。

(4)进一步理解与熟悉在教学计算机硬布线控制器中处理原有指令和扩展指令的方案,比较它与在微程序控制器处理原有指令和扩展指令的方案有什么相同和差异之处,对比两种控制器在组成和运行原理方面有什么相同和差异之处。

二、实验具体内容

该实验可以在两个层次上进行。

第一个层次属于观察、验证性实验。

即通过多种方式,察看教学计算机指令的执行步骤、运行结果、各组控制信号在每一个执行步骤中的状态、指令之间的衔接等有关内容。

这个层次的实验,重点在于学懂教学计算机中已有的设计结果,加深对授课内容的理解深度,为开展自己的设计打好基础。

在这个层次上的实验,有4项内容是必须完成的,详细内容参见实验五微程序控制器部件实验中的说明。

第二个层次是学生进行自己的设计与实现的实验,即在教学机系统已有指令的基础上,由学生自己添加若干条(例如3~5条)新的指令进去,包括定义指令格式、功能,划分指令执行步骤和确定每一步的功能,确定每一执行步骤使用的全部控制信号的状态值,把新设计的结果添加到教学计算机硬件系统中去并调试正确,写一个包含已有指令和刚刚实现的指令的小程序,检查运行结果的正确性,若发现错误则找出原因并设法改正,直到全部正确为止。

这是运用所学知识体验设计计算机硬件的一次尝试,可以检验自己对所学知识的理解是否正确、是否会灵活应用。

请注意,在这个实验过程中,一定要注意新老指令在指令格式和寻址方式选择、指令执行步骤划分、使用的控制信号的组成等各个方面的关联性。

扩展指令使用的控制信号同样由MACH芯片提供,必须保证新增加的控制信号在任何情况下不会破坏已有基本指令的正常运行,可行措施之一,是在新指令和基本指令共同使用的节拍中,把新指令使用的控制信号特殊标记出来,使其设计中的错误不会对基本指令产生影响,出现在新指令单独使用的节拍中的控制信号的设计错误不会对基本指令产生影响。

三、实验操作过程

(1)检查与理解指令的执行效果

将教学计算机运行功能选择开关置为00101(连续运行、读内存、组合逻辑、朕机工作方式)。

①用A命令汇编一段小程序

例如:

在屏幕上显示输出一个字符“6”的程序。

A2000;地址从16进制的2000(内存RAM区的起始地址)开始

2000:

MVRDR0,0036;把字符“6”的ASCII码送入R0

2002:

OUT80;在屏幕上输出显示字符“6”,80为串行接口地址

2003:

RET;每个用户程序都必须用RET指令结束

2004:

(按回车键即结束源程序的输入过程)

②用G和T命令运行这个程序,在屏幕上观察程序和每条指令的执行效果。

(2)检查与理解指令的执行步骤

使用手拨开关输入需要检查的指令的操作码,在单节拍方式下(教学机左下方的5个功能开关为11101状态),每按一次启动按键,教学计算机执行一个节拍的功能,此时教学机会反复执行这同一条指令,对照指令执行流程图,观察节拍发生器的状态输出,能够最方便地查看不同类型的指令的执行步骤的变化与连接关系。

此时无需关心指令的执行功能,因为此时指令得不到正确的操作数据和地址信息。

如:

使用手拨开关SWH输入MVRD操作码88H,MVRD为B组基本指令,对照指令执行流程图,看到节拍发生器的状态输出为:

0000--0010--0110—0100

(3)检查与理解指令的每一个执行步骤所使用的控制信号

这指的是理解与体会控制信号产生部件的功能。

实验方式与实现思路是:

通过使用手拨开关输入需要检查的指令的操作码,在单节拍方式下,让计算机反复执行这同一条指令,对照文献[1]上的指令执行流程表的内容,观察在不同指令、不同节拍状态的情况下,控制信号产生部件输出的每一位控制信号的状态(取值),这样能够最方便地查看每一条指令的在不同执行步

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

当前位置:首页 > 自然科学 > 物理

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

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