计算机组成原理实验指导_第1页
计算机组成原理实验指导_第2页
计算机组成原理实验指导_第3页
计算机组成原理实验指导_第4页
计算机组成原理实验指导_第5页
已阅读5页,还剩14页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

《计算机组成原理》实验指导

实验一监控程序与汇编语言程序设计实验

教学机的监控程序是,用教学机的汇编语言实现的,运行在教学机的硬件系统之上。它的

主要功能是支持把计算机终端或PC机仿真终端接入教学机系统,使用这样的设备执行输入

/输出操作,运行教学机的有关程序,以更方便直观的形式支持教学机上的各项实验功能,

提供教学机汇编语言的可用子程序。

监控程序提供类似PC机DOS系统下的Debug程序的功能,支持A、U、G、P、T、R、

D和E共8个监控命令。

监控命令的格式为:

单字母的命令名后跟回车,或命令名后跟一个地址参数,或寄存器名(编号)参数。当

有些命令运行时需要参数,但命令名后又不跟参数时,监控程序会从内存指定单元取一个默

认的地址参数值,通常为该命令前一次运行后所接收地址。TEC—2机从终端接收地址、指

令,数值时,均用最多4位的16进制数输入与显示,并且不能(或说不必)用跟字符h加

以标志。

⑴单条汇编命令A

格式:A[adr]

这里的[adr]表示此处的地址参数adr为任选项(但选择范围必须为0800H—0FFFH)。

无此参数时,系统将取默认值。该规则下同。

功能:完成单条指令的汇编操作,把产生出来的TEC—2机的执行代码放入对应的内存

单元中。命令名后的地址是头一条汇编语句的执行码的内存单元地址。每条语句汇编完成之

后,系统将相应修改地址值,以便正确处理下条汇编语句。

在应该输入汇编语句时,不给出汇编语句而直接回车,则结束A命令的运行过程。

若汇编中发现语法错误,用.指明出错位置后请求重新给出正确语句。

要说明,这里的单条汇编功能不很完善,例如不支持语句标号,也不能使用伪指令等。

遇到这些问题,要求使用者直接使用机器码,并通过E命令将其送入相应内存单元。

⑵反汇编命令U

格式:U[adr]

功能:每次从指定的(或默认的)地址反汇编15条命令,并将结果显示在终端屏幕上。

反汇编完成之后,已将该命令的默认地址修改好。接下来再键入不带参数的U命令,保证

接着从上一次反汇编的最后一条语句之后继续反汇编。

⑶执行程序命令G

格式:G[adrJ

功能:从指定的(或默认的)地址连续运行一个用户程序。为了使程序执行后能返回监

控程序,要求每个程序的最后一条指令应为RET指令。

(4)单指令执行程序命令T和P

格式:P[adr]

Hadr|

功能:从指定地址(或PC中的当前地址)开始单条执行程序指令。通常情况下,每按

一次T或P将执行一条指令。T和P命令的区别是,T总是执行单条指令,但执行P命令时,

则把每一个CALL语句连同被调用的子程序一次执行完成。每次执行后均显示所有通用寄

存器及状态寄存器的内容,并反汇编出下一条将要执行的指令。由于P和T命令是通过设

置断点来实现的,而在ROM区不能设置断点,故不能月它们来执行固化在ROM区中的监

控程序。

⑸显示/修改寄存器内容的命令R

格式:R[reg]

其中reg为寄存器名R0——R15或SP(R4),PC(R5),IP(R6),当R命令不带带寄

存器名时,显示全部寄存器(包括SP,PC和IP)及状态寄存器的值,并反汇编当前PC所

指的一条指令,其中状态的显示格式为:“F=8位二进制数”,其各位的值分别对应于C、Z、

V、S,INTE、P2、Pl、P0的值,当R命令带有寄存器名时,先显示出该寄存器的值,若

修改打入新值回车,否则只按回车即可。

(6)显示存储器内容的命令D

格式:D[adr]

功能:从指定(或默认)地址开始显示内存120个存储字的内容。

显示的格式:最左一列4位的16进制数是本行中第一个字的地址,接下来的8列是4

位的16进制的8个连续内存字的内容,最右一列是每个字节所对应的ASCII字符。当其值

不为可显示字符的ASCII码俏时,用一个字符标记。

连续的D命令,保证所显示内容前后正确的连续关系,即每次执行D命令,会将默认

的地址值加上120。TEC—2机通常采用字地址读写内存。

(7)修改存储器内容命令E

格式:E[adr]

功能:从指定(或默认)地址逐字显示每个内存字的内容,并等待用户打入一个新的值

存回该内存单元。若用户未打入新值就打了空格键,则该内存单元内容保持不变。若在打入

新值后跟空格键,则内存单元内容写成新值。空格键表明要连续修改一片内存区,故接下来

显示下一个单元的内容并等待修改。打回车键,则会结束E命令的执行过程,若回车前打

入一个新值,相应内存单元的内容也将被修改v

注:进入监控程序的具体操作步骤:

1.准备一台串口工作良好的PC机;

2.将TH-union放在实验台上,打开实验箱的盖子,确定电源处于断开状态;

3.将黑色的电源线一端接220V交流电源,另一端插在TH-union实验箱的电源

插座里;

4.取出通讯线,将通讯线的9芯插头接在TH-union实验箱上的串口“COM1”

或“COM2”上,另一端接到PC机的串口上;

5.将TH-union实验系统左下方的五个黑色的控制机器运行状态的开关置丁正确

的位置,在找个实验中开关应置为00110(连续、内存读指令、组合逻辑、联

机、16位),控制开关的功能在开关上、下方有标识:开关拨向上方表示“1”,

拨向下方表示“0”,“X”表示任意,其他实验相同;

6.打开电源,船形开关和5V电源指示灯亮。

7.在PC机上运行PCEC16.EXE文件,根据连接的PC机的串口设置所用PC机

的串口为“1”或“2”,其它的设置一般不用改动,直接回车即可。(具体步骤

附后)

8.按一下“RESET”按键,再按一下“START”按键,主机上显示:

1EC-2000CR1MON11OR

Version1.0April2001

ComputerArchitecturLab.,TsinghuaUniversity

ProgrammedbyHeJia

实验二运算器实验

一、实验原理:

运算器是计算机中执行各种算术和逻辑运算操作的部件。运算器的基本操作包括加、减、

乘、除四则运算,与、或、非、异或等逻辑操作,以及移位、比较和传送等操作。运算器的

组成除了必须的ALU单元外,寄存器和移位器也是必需。寄存器用于提供操作数和存放运

算结果,以节省访存时间;移位器可实现数据的移位功能,以扩展ALU的运算功能和数据

传送的灵活性。美国AMD公司生产的AM290I芯片是典型的运算器芯片。

1、AM2901的结构与组成

AM290I芯片是一个4位的,位片结构的、完整的运算器器件。AM2901由ALU、

输入多路诜择器、输出诜择门、寄存器组和移位器等器件组成,如图1-1所示,作为

教学内容的实例具有很好的典型性。

4。输出Y

31-1AM290I芯片的内部组成框图

2、AM2901各组成部分及其功能

I)ALU为4位算术逻辑单元,有8种运算功能,由外部送入3位信号15,14,13

的编码值来确定执行哪种功能。

2)存器组

AM290I具有由16个4位寄存器组成的寄存器组,作为通用寄存器组使用。该寄

存器组有两个4位地址译码器A和B,其中A译码器只具有读出数据功能,而B译

码器具有读出和写入两种功能。也就是说,该寄存器组具有两个数据输出端口,即A

口和B口,输出的数据分别存入锁存器A和B;一个数据输入端口,即B口。

3)寄存器

4位,在乘除运算中可用来存放乘数或商,故称做乘商寄存器。它本身具有移位功

能,即可接受其本身左移一位或右移一位的值,它还可以接收ALU的输出值。

4)输入多路选择器

AM2901具有两个输入多路选择器R和S,用于为ALU提供两个操作数。其中,R

可选择D数据线来的数据或A锁存器的数据;而S可从A锁存器、B锁存器、Q寄

存器3个来源选取数据。两个操作数的组合由外部送来的3位控制信号12、II、10

的编码确定.

5)移位器

4位,用于对ALU的输出实现直送、左移或右移。

6)输出选择门

用于确定AM2901输出数据Y的来源。输出数据Y有两个来源:一个是ALU的运

算结果F,另一个是直接来自All。输出数据Y的选择,以及ALU的运算结果F如

何传送给B输入口或Q寄存器,是由外部送来的3位控制信号18、17、16的编码值

确定的。

3、为了控制AM2901运算器按我们的意图完成预期的运算操作功能,就必须向其提供相

应的控制信号,包括:用3组各3位的编码,分别用于选择ALU的运算功能,输入

数据,结果处置方案,具体规定如表1-1、表1-2、表1-3所示。

表1-1选择8种运算表1-2选择ALU的8种输入数据组合

151413运算类型121110R来源S来源

000R+S000AQ

001S-R001AB

010R-S0100Q

011RVS0110B

100_RAS1000A

101"RASI01DA

110RVS110DQ

111RVS111D0

注:D表示外部数据

表1-3选择运算器的8种结果的处置方案

181716寄存器组Q寄存器Y输出

000F-QF

001F

010F-BA

011F-BF

100F/2»BQ/2►Qr

101F/2-BF

1102F-*B2Q-*QF

1112F-BF

二、实验步骤

运算器部件的实验,要在教学计算机主板上进行,既可以在脱机方式下完成,也可以在

联机方式下完成。

脱机方式是指使运算器部件完全脱离与计算机主机其他部件正常的连接关系,在完全孤

立出来的运算器上进行的教学实验。此时,只能通过数据开关提供参加运算的数据,通过微

型开关提供操作运算器完成运算所必需的控制信号,通过信号指示灯观察运算结果,操作筒

单,实验结果清晰易理解。

联机方式是指在运算器部件与计算机主机保持连接关系,教学计算机可以正常执行指令

的情况下进行的以运算器为重点的教学实验。此时,可以通过指令提供参加运算的数据,通

过控制器提供操作运算器完成运算所必需的控制信号,通过信号指示灯或者通过运行监控程

序观察运算结果,操作略显复杂。

1、脱机实验

⑴打开实验箱电源开关。

(2)将五个控制开关分别置为10000

注:五个控制开关从左至右分别是:

Step/CntnuHndlns/MEMIns^Comloq/Microp、LinkMachi/LeaveMachinex8Bit/16Bit

即:单步/连续、手动执行/程序存储、组合逻辑/微程序控制、联机/脱机、8位八6位

1:代表上档功能,0:代表下档功能

(3)将AAAA送入R0

①微型开关分别置为QJJ.如jJJ.皿L000000000000

注:微型开关从左至右分别对应的控制信号是:

18171615141312II10SSTA端口地址B端口地址SSHSCI

其中:SST为状态寄存器接收,SSH为最底位进位,SCI为移位控制

②设置数据开关为AAAA(16进制)

③按START按钮

(4)将5555送入R1

®微型开关分别置为o_LL典LLL皿1000000010000

②设置数据开关为5555(16进制)

③按START按钮

(5)R0+R1-*RI

微型开关分别置为0_1_100000J.00J.000000010000

2、联机实验

⑴将通讯线一端接实验箱上,另一端插头后接PC机任意COM口"

注:这里PC机只是实验箱的输入输出设备。

⑵将五个控制开关分别置为00010。

(3)打开计算机,运行PCEC程序,选择所接COMU后按回车。按F10进入主菜单,

选择0,分别按实验箱上的RESET、START按钮,进入监控程序。

(4)屏幕出现提示符>,即可用A命令输入程序

>A20(X)

MOVR0,AAAA

MOVRI,5555

ADDRI,R0

RET

(5)用T命令观察运行结果。

三、实验要求

1、认真写出预习报告,包括实验用的全部数据,实验操作步骤等。

2、实验之后写出实验报告,包括实验过程中遇到的问题,解决方法,实验后的心得体会

及对该次实验的建议与意见。

实验三内存储器部件实验

实验目的:

通过看懂教学计算机中已经使用的几个存储器芯片的逻辑连接关系和用于完成存储器

容量扩展的几个存储器芯片的布线安排,在教学计算机上设计、实现并调试出存储器容量扩

展的实验内容。其最终要达到的目的是:

1.深入理解计算机内存储器的功能、组成知识;

2.深入地学懂静态存储器芯片的读写原理和用他们组成教学计算机存储器系统的方

法(即字、位扩展技术),控制其运行的方式:

思考并对比静态和动态存储器芯片在特性和使月场合等方面的同异之处。

玄验说明:

教学计算机存储器系统由ROM和RAM两个存储区组成,分别由EPROM芯片(或

EEPROM芯片)和RAM芯片组成。TH-union教学计算机中还安排了另几个存储器器件插

座,可以插上相应存储器芯片以完成存储器容量扩展的教学实验,为此必须比较清楚地了解:

1.TH-union教学机的存储器系统的总体组成及其连接关系;

2.TH-union教学机的有关存储器芯片、I/O接口芯片的片选信号控制和读写命令的给

出和具体使用方法;

3.RAM和EPROM、EEPROM存储器芯片在读写控制、写入时间等方面的同异之处,

并正确建立连线关系和在程序中完成正确的读写过程;

4.如何在TH-union教学机中使用扩展的存储器空间并检查其运行的正确性.

实验内容:

I.要完成存储器容量扩展的教学实验,需为扩展存储器选择一个地址,并注意读写和

0E等控制信号的正确状态;

2.用监控程序的D、E命令对存储器进行读写,比较RAM(6116)、EEPROMQ8系歹I」

芯片)、EPROMQ7系列芯片)在读写上的异同;

3.用监控程序的A命令编写一段程序,对RAM(6116)进行读写,用D命令杳看结果

是否正确;

4.用监控程序的A命令编写一段程序,对扩展存储器EEPROM(28系列芯片)进行读

写,用D命令查看结果是否正确;如不正确,分析原因,改写程序,重新运行。

实验要求:

I.实验之前,应认真预先准备,写出实验步骤和具体设计内容,否则实验效率会特别

低,一次实验时间根本无法完成实验任务,即使基本做对了,也很难说学懂了些什

么重要教学内容;

2.实验过程中,应认真进行实验操作,既不要因为粗心造成短路等事故而损坏设备,

又要仔细思考实验有关内容,提高学习的主动性和创造性,把自己想不太明白的问

题通过实验理解清楚,争取最好的实验效果,刀求达到教学实验的主要目的;

3.实验之后,应认真思考总结,写出实验报告,包括实验步骤和具体实验结果,遇到

主要问题和分析与解决问题的思路。实验报告中,还应写出自己的学习心得和切身

体会,也可以对教学实验提出新的建议等。实验报告要交给教师评阅并给出实验成

绩。

实验步骤:

1.检查FPGA下方的插针要按下列要求短接:标有“/MWR”“RD”的插针左边两

个短接,标有“/MRD”“GND”的插针右边两个短接,标有ROMLCS和RAMLCS

的插针短接。

2.RAM(6116)支持即时读写,可直接用A、E命令向扩展的存储器输入程序或改变内

存单元的值。RAM中的内容在断电后会消失,重新启动实验机后会发现内存单元

的值发生了改变C

1)用E命令改变内存单元的值并用D命令观察结果。

<1>在命令行提示符状态下输入:

E2020

屏幕将显示:2020内存单元原值:

按如下形式键入:

2020原值:2222(空格)原值:3333(空格)原值:4444(空格)原

值:5555

<2>在命令行提示符状态下输入:

D2020

屏幕将显示从2020内存单元开始的情,其中2020H-2023H的信为:

2222333344445555

<3>断电后重新启动教学实验机,用D命令观察内存单元2020-2023的值。

会发现原来置入到这几个内存单元的值已经改变,用户在使用RAM时,

必须每次断电重启后都要重新输入程序或修改内存单元的值。

2)用A命令输入一段程序,执行并观察结果。

<1>在命令行提示符状态下输入:

A2000

屏幕将显示:2000:

按如下形式键入:

2000:MVRDRO,AAAA

2002:MVRDR1,5555

2004:ANDRO,RI

2005:RET

2006

<2>在命令行提示符状态下输入:

T2000

R0的值变为AAAAH,其余寄存器的值不变。

T

R1的值变为5555H,其余寄存器的值不变。

T

R0的值变为0000H,其余寄存器的值不变。

<3>在命令行提示符状态下输入:

G20D0

运行输入的程序。

<4>在命令行提示符状态下输入:

R

屏幕显示:

RO=OODORl=5555R2=.......

RAM芯片可直接用A命令键入程序,但断电会丢失,要再次调试该程序必须重新

输入,对那些较长的程序或经常用到的程序可通过交叉汇编,在上位机生成代码文

件,每次加电启动后不用重新输入,只需通过PCE16将代码文件传送给下位机即

可。

3.将扩展的ROM芯片(27或28系列或28的替代产品58C65芯片)插入标有

“EXTROMH”和“EXTROML”的自锁紧插座,要注意芯片插入的方向,带有半

圆形缺口的一方朝左插入。如果芯片插入方向不对,会导致芯片烧毁。然后锁紧插

座。

4.将扩展芯片右边的插针按下列方式短接:将EXTROML芯片右上方的标有“WE”

和“ALL”的插针下面两个短接,将它右边标有“TEC”"/CS”“FPGA”的三

个插针左边两个短接,标有XTROMLCS的插针短接,标有“TEC”“OE”“GND”

“FPGA”的四个插针中间的两个竖着短接。

5.在第四步中将标有“TEC”"/CS”“FPGA”的三个插针左边两个短接表示扩展

的ROM的内存地址是从4000H开始,可用空间是4000H~5FFFH,用户可在这个

范围内输入程序或改变内存单元的值。也可以将这个插针断开,将标有7cs的圆孔

针与标有MEM/CS的一排圆孔针中的任意一个用导线相连;注意连接的地址范围

是多少,用户可用的地址空间是多少。

6.将标有“DataBus15-8”和“DataBus7-0”的数据总线的指示灯下方的插针短接。

7.将标有“AdressBus15-8”和“AdressBus7-0”的地址总线的指示灯下方的插针短

接。

下面以AT28c64B(或其他替代产品58c65芯片)为例,进行扩展EEPROM实验。

8.AT28c64B的读操作和一般的RAM一样,而其写操作,需要一定的时间,大约为

1毫秒。因此,需要编写一延迟子程序,在对EEPROM进行写操作时,调用该子

程序,以完成正询的读写。

1)用E命令改变内存单元的值并用D命令观察结果。

<1>在命令行提示符状态下输入:

E5000

屏幕将显示:5000内存单元原值:

按如下形式键入:

5000原值:2424(按空格)原值:3636(按空格)原值:4848(按空格)

原值:5050

<2>在命令行提示符状态下输入:

D5000

屏幕将显示5OOOH-5O7FH内存单元的值,从5000开始的连续四个内

存单元的值依次为2424363648485050.

<3>断电后重新启动,用D命令察看内存单元5000〜5003的值,会发现这儿

个单元的值没有发生改变,说明EEPROM的内容断电后可保存.

2)AT28C64B存储器不能直接用A命令输入程序,单字节的指令可能会写进

去,双字节指令的低位会出错(建议试一试),可将编写好的程序用编程器写

入片内也可将程序放到RAM(6116)中、调用延时子程序,访问AT28C64B中

的内存地址.

下面给出的程序,在5OOOH~5OOFH单元中依次写入数据0000H.0001H、…

000FH。

从2000H单元开始输入主程序:

(2000)MVRDR0,0000

MVRDR2,0010;R2记录循环次数

MVRDR3,5000;R3的内容位16位内存地址

(2006)STRR[R31,R0;将R()寄存器的内容放到R3给出的内存单元中

CALA2200;调用程序地址为2200的延时子程序

INCR0;R0加1

INCR3;R3加1

DECR2;R2减I

JRNZ2006;R2不为0跳转到2006H

RET

从2200H单元开始输入延时子程序:

(2200)PUSHR3

MVRDR3,FFFF

(2203)DECR3

JRNZ2203

POPR3

RET

运行主程序,在命令提示符下输入:G2000

程序执行结束后,在命令提示符下输入:D500()

可看到从5000H开始的内存单元的俏变为

5(X)():000()()001000200030004()0050006()007

5008:00080009000A000B000C000D000E000F。

思考:1)为何能用E命令直接写AT28C64B的存储单元,而A命令则有

时不正确?

2)修改延时子程序,将其延时改短,可将延时子程序中R3的内

容赋成00FF或0FFF等,再看运行结果。

注意:实验完成后,取下扩展芯片,断开地址和数据总线的短路子,将

FPGA下方的标有“/MWR”“RD”的插针改成右边两个短接。

四、实验要求

1、认真预习实验,熟悉主存储器的读写特性及对内存有关信号的推断。

2、实验后独立填写实验报告。

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

控制器部件是计算机的五大功能部件之一,其作用是向整机每个部件(包括控制器本身)

提供协同运行的需要的控制信号.因而,控制器在计算机组成原理过程中是非常重要的内容,

但学生在学习过程中,对其工作原理却常常感到难以理解.教师在讲述这一部分内容时也常

常觉得难以叙述清楚,通过本实验,轻而易举的解决了这一问题。

一、实验原理

控制器的设计实现有两种方式:一种是微程序,另一种是组合逻辑线路,微程序控制器的工

作原理,是用一条微指令的控制命令字段来提供一条机器指令的一个执行步骤所需要的控制

信号,用这条微指令的下地址字段,指明下一条微指令在控制器存储器中的地址,以便从控制

器存储器中读出下条微指令.换句话说,每条微指令交应条机器指令的个执行步骤。

1、微指令格式

微指令由下地址字段及控制字段组成.TH—UNION教学机的微指令格式如下:

其中高八位为下地址字段.其余各位为控制字段.

1)址形成逻辑

TH-UNION教学机利用器件形成下一条微指令在控制器存储器的地址.

下地址的形成由下地址字段及控制字段中的CI3-SCC控制.当为顺序执行时,下地址字

段不起作用.下地址为当前微指令地址加1;当为转移指令913—0=0011)时,由控制信号SCC

提供转移条件,由卜地址字段提供转移地址.

2)控制字段

控制字段用以向各部件发送控制信号,使各部件能协调工作。

控制字段中各控制信号有如下几类:

①对运算器部件为了完成数据运算和传送功能,微指令向其提供了24位的控制信号,

包括:4位的A、BII地址,用于选择读写的通用积存器3组3位的控制码18—16、

15-13.12-16,在于选择结果处置方案、运算功能、数据来源。

3组共7位控制信号控制配合的两片GAL20V8

3位SST,用于控制记忆的状态标志位

2位SCI,用于控制产生运算器低位的进位输入信号

2位SSH,用于控制产生运算器最高,最地位(和积存器)移位输入信号

②对内存储器I/O和接口部件,控制器主要向它们秃供读写操作用到的全部控制信号,

共3位,即MRW

③对CPU内部总线数据来源的控制,主要通过3位编码标记为DCD,来选择把哪一

组数据发送到内部总线(1B)上。

④对几个特定的积存器接受输入的控制,也通过了编码C标记为D(2),用来选择允

许哪个积存器接受送个它的一组数据。

2、实验步骤

1)接通教学机电源

2)将教学机左下方的5个控制开关置为11010(单步、手动、置指令、微指令、联机、

16位)

3)按一下“RESET”按键

4)通过16的数据开关置指令机器码

如置为0000000000000001(表示指令ADDROR1)

5)按RESET键,指示灯亮(只要选择微程序,该灯在指令执行过程中一直亮),其它灯

全灭。

6)按RESET键,通过观察指示灯,得到该指令对应的第一条微指令。

0000000011100030010000010011000101010101000000010H10000此指令的

功能为:0->PC、DI#=O

7)按RESET键,通过观察指示灯,得到该指令对应的第二条微指令:

00000000111000000100001100100000010101010000000100110110功能:

POAR、PC+1->PC

8)按RESET键,通过观察指示灯,得到该指令对应的第三条微指令:

0000()00()111000000001()00()000100000101()1010000000100110110功能:

MEM->IRo

7)和8)两步骤合起来即为通常所说的取指,它是将要执行的机器指令从内存取出送

到指令寄存器中。

9)按RESET键,通过观察指示灯,得到该指令对应的第四条微指令:

(XXX)010000100(X)0010000000001000001010101000()(X)()l00110110功能:

执行非操作功能,相当于指令译码,由下地址字段给出执行ADD指令的微指令的转

移地址00000100。

10)按RESET键,通过观察指示灯,得到该指令对应的第五条微指令:

0011000000110000010000011011100000000001D001000000000000功能:

执行R0+RI->R0

四、实验要求

1、认真写出预习报告与实验报告,未写出预习报告者,不得开始实验。

2、实验报告中要认真总结分析实验中的各种现象,特别要把单微指令方式下的调试过

程写清楚。

实验五串行接口输入输出实验

实验目的:

学习串行口的正确设置与使用。

实验说明:

1.TH-union配置了两个串行接口C0M1和COM2,其中COM1口是系统默认的串行

口,加电复位后,监控程序对其进行初始化,并通过该口与PC机或终端相连;而

COM2O,留给用户扩展用。

2.查阅有关书籍,了解串行通信接口芯片8251的工作原理;了解8251复位、初始化、

数据传输的过程c提醒注意的是,每次对8251复位后(即按1次“RESET”按键),

都需要对其进行初始化,然后再进行正常的数据传输:复位后,只能对其进行1次

初始化,多次初始化将导致串口工作不正常。

3.在使用COM2口时,需要将两片8251芯片之间的插针用短路子短接(出厂时已短

接),这样才能为COM2正常工作提供所需的控制信号和数据;另外,还需要为其

分配数据口地址和控制地址。本教学机,已将COM2口的C/(D非)与地址总线

的最低位ABO相连,而其片选信号未连,只引出1个插孔,实验时,应将该插孔与

标有“I/O/CS”的7个插孔中的1个相连。

实验内容:

I.为扩展I/O口选择一个地址,即将与COM2口相连的8251的/CS与标有I/O/CS的

一排插孔中的一个相连。

2.将COM2口与终端或另一台运行有PCECI6的PC机的串口相连。

3.用监控程序的A命令,编写一段小程序,先初始化COM2口,在向COM2口发送

一些字符,也可从COM2口接收一些字符,或实现两个串口的通信。

实验要求:

1.应了解监控程序的A命令只支持基本指令,扩展指令应用E命令将指令代偃写入

到相应的存储单元中。

实验步骤:

I.为扩展I/O口选择一个地址,将与COM2口相连的8251的/CS与标有I/O/CS的插

孔中地址为A0〜AF的一个相连;注意,将两月8251芯片之间的插针短接(出厂时

以按默认方式短接)。

2.将教学机COMI口与一台PC机相连,在PC机上启动PCEC16.EXE。

3.断开C0M1与PC机的串口线,将其连接到另一台PC机或同一台PC机的另一个

串口,同样启动PCECI6.EXE。

4.用另一根串口线将COM2口和第一台PC机或同一台PC机的另一个串口相连。

5.在与COM1相连的PCEC上输入程序,这时主PCEC可以输入输出,和COM2连

接的时从PCEC只作输出。

6.用A、E命令编程进行COM2口的操作。(标有"的语句要用E命令直接写入指令编

码)

1)程序1:COM2口初始化

在命令行提示符状态下输入:

A2000

从20(X)H单元开始输入下面的程序:

2000:MVRDRO,004E;给R0赋值004E

2(X)2:OUTAl;将R0的值输出到COM2口的8251中的寄存器中

2003:MVRDR0,0037;给R0赋值0037

2005:OUTAl;将R0的值输出到COM2口的8251中的寄存器中

2(X)6:RET

在命令行提示符状态下输入G2000运行初始化程序,完成对COM2口的初始

化。每次按“RESET”按键后,在对•COM2进行读写操作之前,都应运行该

程序。需要注意的是,按一次“RESET”按键后,只能对COM2口进行一次

初始化操作c

2)程序2:从COM2口输入数据,然后再与COM1口相连的PC机上显示出数据。

在命令行提示符状态下输入:

A2040

从2040H单元开始输入下面的程序:

2040:INAl;判键盘上是否按了一个键

2041:SHRR0:即串行口是否有了输入的字符

2042:SHRR0

2043:JRNC2040;没有输入则循环测试

2044:INA0;从COM2口读入字符到R0

2045:OUT80;将该字符从COM1口输出

2046:RET

2047:

运行该程序,在命令行提示符状态下输入:

G2040

光标闪烁等待输入,从弓COM2口相连的PC机键盘输入字符,则在与COM1

口相连的PC机的屏幕上回显。

3)程序3:从COM1口接收数据,发送到与COM2口相连的PC机上回显。

在命令行提示符状态下输入:

A2060

从2060H单元开始输入下面的程序:

(2060)IN81;判键盘上是否按了一个键

2061:SHRR0;即串行口是否有了输入的字符

2062:SHRRO

2063:JRNC2060;没有,则循环等待

2064:IN80;接收字符

2065:OUTAO将从键盘输入的字符输出到另一串I」

2066:RET

2067:

运行该程序,在命令行提示符状态下输入:

G2060

光标闪烁等待用户输入,从键盘输入6,可在另一PC机的屏幕上回显出6。

扩展实验也可按另外一种方式完成,操作步骤如下:

I.为力,展I/O口选择一个地址:将与COM2LI相连的82M的/C5与标有I/O/CS

的插孔中地址为A0〜AF的一个相连;注意,将两片8251芯片之间的插针短接

(出厂时以按默认方式短接)。

2.将一台教学机COM1口与一台PC机相连,在PC机上启动PCEC16.EXE。

3.将另一台教学机COM1口与另一台PC机相连,同样启动PCEC16.EXE。

4.用一根串口线将第一台的教学机的COM2口和另一台教学机的COM2口相连。

5.在两台PC机对应的PCEC上分别输入以下程序:

从2000H单元开始输入下面的程序:

2000:MVRDR0,004E;给R0赋值004E

2(X)2:OUTAl;将R0的值输出到COM2口的8251中的寄存器中

2003:MVRDRO,0037;给R0赋值0037

2(X)5:OUTAl;将R0的值输出到COM2口的8251中的寄存器中

2006:IN81;检查本机键盘上是否按了一个键

2(X)7:SHRRO;即串行口是否有了输入的字符

2008:SHRRO

2009:JRNC200D:没有,则转去检查扩展接口的健盘有没有输入

200A:IN80;若本机键盘有输入则接收该字符

200B:OUT80;将键盘输入的字符在本机输出

200C:OUTA0;将从键盘输入的字符输出经扩展串口送到另一台教学机输出

200D:IN91:检杳扩展串口相连的另一台教学机对应的PC键盘上是否按键

2(X)E:SHRR0;即串行口是否有了输入的字符

200F:SHRR0

2010:JRNC2006:没有,则转去判本机键盘是否有输入

2011:INAO;若有,则接收

2012:OUT80;在本机输出

2013:JR2000

2014:RET

该程序完成两台教学计算机的第二个串行接口扩展操作并完成该串口初始化,

启动两台教学机,都运行这个程序,则两个键盘的愉入同时显示在两个屏幕上,

实现的是双机的双向通讯功能。

每台教学机都只能检查与操作自己的串行口,管不了另外那台教学机。

实验六多级嵌套的中断实验

1、实验原理

1.1中断电路

TH-union教学机中断电路的总体组成,如下图所示:

74LS14874LS27374LS85

图中1RQO—IRQ2是3个中断请求源信号,分别对应实验箱上的三个中断请求按钮,实

验时,按卜某个按钮表不发出相应的中断请求信号。这三级中断的优先次序从低到高为

IRQ0到IRQ2。

1.2中断处理在教学机中的具体实现

教学机的中断线路主要包括2片GAL、3个无锁按键、2片74LS374和若干插针。下

面分别对这几部分进行简要介绍。

(1)3个无锁按键,提供中断请求的源信号

教学机支持3级中断发,这3个无锁按键作为3个中断源,从右到左依次为一、二、三

级中断,对应的中断优先级编码Pl、P0依次为01、10、11,优先级也依次升高。这3个无

锁按键的引脚作为INTSGAL和INTPGAL的输入。

(2)INTSGAL,接受并记忆通过无锁

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论