《计算机组成原理》实验教学教案.docx
《《计算机组成原理》实验教学教案.docx》由会员分享,可在线阅读,更多相关《《计算机组成原理》实验教学教案.docx(14页珍藏版)》请在冰豆网上搜索。
![《计算机组成原理》实验教学教案.docx](https://file1.bdocx.com/fileroot1/2023-3/19/f13ba95d-537b-4dbe-baf0-596d5c2c614b/f13ba95d-537b-4dbe-baf0-596d5c2c614b1.gif)
《计算机组成原理》实验教学教案
实验一运算器实验
一、实验目的:
(1)结合学过的有关运算器的基本知识,掌握运算器的基本组成、工作原理。
特别是了解算术逻辑运算单元ALU的工作原理;
(2)验证多功能算术单元74181、74182的运算功能;
(3)熟悉掌握本实验中运算器的数据传输通路。
二、实验要求
(1)预习74181、74182的工作原理及逻辑关系;
(2)测量数据要求准确;
(3)写出实验报告。
三、实验内容
1、实验原理
实验中的运算器由两片74LS181以并/串形成8位字长的ALU构成。
运算器的输出经过一个三态门74LS245到ALUO1插座,实验时用8芯排线和内部数据总线BUSD0~D7插座BUS1~6中的任一个相连,内部数据总线通过LZD0~LZD7显示灯显示;运算器的两个数据输入端分别由二个锁存器74LS273锁存,两个锁存器的输入并联后连至插座ALUBUS,实验时通过8芯排线连至外部数据总线EXD0~D7插座EXJ1~EXJ3中的任一个;参与运算的数据来自于8位数据开关KD0~KD7,并经过一三态门74LS245直接连至外部数据总线EXD0~EXD7,通过数据开关输入的数据由LD0~LD7显示。
算术逻辑运算功能发生器74LS181的功能控制信号S3、S2、S1、S0、CN、M并行相连后连至SJ2插座,实验时通过6芯排线连至6位功能开关插座UJ2,以手动方式用二进制开关S3、S2、S0、CN、M来模拟74LS181的功能控制信号S3、S2、S1、S0、CN、M;其他电平控制信号也由二进制开关来模拟。
2、实验接线
本实验主要用到4个主要模块:
(1)低8位运算器模块;
(2)数据输入并显示模块;
(3)数据总线显示模块;
(4)功能开关模块。
根据实验原理详细接线如下:
(1)ALUBUS连EXJ3;
(2)ALUO1连BUS1;
(3)SJ2连UJ2;
(4)跳线器J23上T4连SD;
(5)LDDR1、LDDR2、ALUB、SWB四个跳线器拨在左边(手动方式);
(6)AR跳线器拨在左边,同时开关AR拨在"1"电平。
3、实验步骤
(1)连接线路,仔细查线无误后,接通电源。
(2)用二进制数码开关KD0~KD7向DR1和DR2寄存器置数。
方法:
关闭ALU输出三态门(ALUB`=1),开启输入三态门(SWB`=0),输入脉冲T4按手动脉冲发生按钮产生。
(3)检验DR1和DR2中存入的数据是否正确,利用算术逻辑运算功能发生器74LS181的逻辑功能,即M=1。
具体操作为:
关闭数据输入三态门SWB=1,打开ALU输出三态门ALUB=0,当置S3、S2、S1、S0、M为11111时,总线指示灯显示DR1中的数,而置成10101时总线指示灯显示DR2中的数。
(4)验证74LS181算术运算和逻辑运算功能的内容(采用正逻辑)。
实验二半导体存储器实验
一、实验目的
(1)掌握静态随机存储器的工作原理与连接方法;
(2)掌握半导体存储器如何存储数据和读取数据。
二、实验要求
(1)熟悉静态RAM芯片容量及位数;
(2)掌握半导体存储器的组织方法;
(3)测量数据要求准确;
(4)写出实验报告。
三、实验内容
1、实验原理
主存储器单元电路主要用于存放实验机的机器指令,它的数据总线挂在外部数据总线EXD0~EXD7上;它的地址总线由地址寄存器单元电路中的地址寄存器74LS273给出,地址值由8个LED灯LAD0~LAD7显示,高电平亮,低电平灭;在手动方式下,输入数据由8位数据开关KD0~KD7提供,并经一三态门74LS245连至外部数据总线EXD0~EXD7,实验时将外部数据总线EXD0~EXD7用8芯排线连到内部数据总线BUSD0~BUSD7,分时给出地址和数据。
它的读信号直接接地;它的写信号和片选信号由写入方式确定。
该存储器中机器指令的读写分手动和自动两种方式。
手动方式下,写信号由W/R`提供,片选信号由CE`提供;自动方式下,写信号由控制CPU的P1.2提供,片选信号由控制CPU的P1.1提供。
由于地址寄存器为8位,故接入6264的地址为A0~A7,而高4位A8~A12接地,所以其实际使用容量为256字节。
6264有四个控制线:
CS1第一片选线、CS2第二片选线、OE读线、WE写线。
CS1片选线由CE`控制(对应开关CE)、OE读线直接接地、WE写线由W/R`控制(对应开关WE)、CS2直接接+5V。
信号线LDAR由开关LDAR提供,手动方式实验时,跳线器LDAR拨在左边,脉冲信号T3由实验机上时序电路模块TS3提供,实验时只需将J22跳线器连上即可,T3的脉冲宽度可调。
2、实验接线
(1)MBUS连BUS2;
(2)EXJ1连BUS3;
(3)跳线器J22的T3连TS3;
(4)跳线器J16的SP连H23;
(5)跳线器SWB、CE、WE、LDAR拨在左边(手动位置)。
2、实验步骤
(1)连接实验线路,仔细查线无误后接通电源。
(2)形成时钟脉冲信号T3,方法如下:
在时序电路模块中有两个二进制开关"运行控制"和"运行方式"。
将"运行控制"开关置为"运行"状态、"运行方式"开关置为"连续"状态时,按动"运行启动"开关,则T3有连续的方波信号输出,此时调节电位器W1,用示波器观察,使T3输出实验要求的脉冲信号;本实验中"运行方式"开关置为"单步"状态,每按动一次"启动运行"开关,则T3输出一个正单脉冲,其脉冲宽度与连续方式相同。
(3)设置存储器单元地址,向该单元写入数据。
(4)从该单元读取数据,观察内容是否与写入的一致。
(5)测试存储器的读出时间。
实验三数据通路实验
一、实验目的
了解如何将运算器和存储器相连接,实现运算结果在存储器的存放。
在前述实验的基础上,进一步掌握计算机的数据通路概念及相关特性。
二、实验要求
(1)熟悉有关器件及其对应线路的作用;
(2)了解各个控制信号的意义;
(3)准确记录实验数据;
(4)完成实验报告。
三、实验内容
1、实验原理
运算器由两片74LS181以并/串形成8位字长的ALU构成。
运算器的输出经过一个三态门74LS245到ALUO1插座,实验时用8芯排线和内部数据总线BUSD0~D7插座BUS1~6中的任一个相连,内部数据总线通过LZD0~LZD7显示灯显示;运算器的两个数据输入端分别由二个锁存器74LS273锁存,两个锁存器的输入并联后连至插座ALUBUS,实验时通过8芯排线连至外部数据总线EXD0~D7插座EXJ1~EXJ3中的任一个;参与运算的数据来自于8位数据开关KD0~KD7,并经过一三态门74LS245直接连至外部数据总线EXD0~EXD7,通过数据开关输入的数据由LD0~LD7显示。
主存储器单元电路主要用于存放实验机的机器指令,它的数据总线挂在外部数据总线EXD0~EXD7上;它的地址总线由地址寄存器单元电路中的地址寄存器74LS273给出,地址值由8个LED灯LAD0~LAD7显示,高电平亮,低电平灭;在手动方式下,输入数据由8位数据开关KD0~KD7提供,并经一三态门74LS245连至外部数据总线EXD0~EXD7,实验时将外部数据总线EXD0~EXD7用8芯排线连到内部数据总线BUSD0~BUSD7,分时给出地址和数据。
它的读信号直接接地;它的写信号和片选信号由写入方式确定。
该存储器中机器指令的读写分手动和自动两种方式。
手动方式下,写信号由W/R`提供,片选信号由CE`提供;自动方式下,写信号由控制CPU的P1.2提供,片选信号由控制CPU的P1.1提供。
由于地址寄存器为8位,故接入6264的地址为A0~A7,而高5位A8~A12接地,所以其实际使用容量为256字节。
6264有四个控制线:
CS1第一片选线、CS2第二片选线、OE读线、WE写线。
CS1片选线由CE`控制(对应开关CE)、OE读线直接接地、WE写线由W/R`控制(对应开关WE)、CS2直接接+5V。
2、实验接线
(1)ALUBUS连EXJ3;
(2)ALUO1连BUS1;
(3)SJ2连UJ2;
(4)跳线器J23上T4连SD;
(5)AR跳线器拨在左边,同时开关AR拨在"1"电平。
(6)MBUS连BUS2;
(7)EXJ1连BUS3;
(8)跳线器J22的T3连TS3;
(9)跳线器J16的SP连H23;
(10)跳线器LDDR1、LDDR2、ALUB、SWB、CE、WE、LDAR拨在左边(手动位置)。
(11)“运行方式”开关置为“单步”
3、实验步骤
(1)连接实验线路,仔细查线无误后接通电源。
(2)形成时钟脉冲信号T3
(3)用二进制数码开关KD0~KD7向DR1和DR2寄存器置数。
(4)检验DR1和DR2中存入的数据是否正确(利用算术逻辑运算功能发生器74LS181的逻辑功能,即M=1,F=A或F=B实现),之后完成求和运算(即M=0,F=A+B)。
(5)设置存储器单元地址,向该单元写入结果。
(6)将存储器中该单元的内容输出到数据输出LED上显示。
具体操作如下图所示:
1.将35H通过开关KD7~KD0置入。
KD7~KD0
2.将48H通过开关KD7~KD0置入。
KD7~KD0
3.实现求和运算
4.结果存入存储器00H单元。
5.验证存放结果。
实验四微程序控制器实验
一、实验目的
(1)掌握时序信号发生电路组成原理;
(2)掌握微程序控制器的设计思想和组成原理;
(3)深入掌握微指令、微命令、微程序的概念;
(4)掌握微程序的编制、写入,观察微程序的运行。
二、实验要求
(1)熟悉机器指令、程序、存储器、微指令、微程序、控制存储器的概念;
(2)波形正确、测量数据要求准确;
(3)写出实验报告。
三、实验内容
1、实验原理
实验所用的时序电路由可产生4个等间隔的时序信号TS1~TS4,其中SP为时钟信号,由实验机上时钟源提供,可产生频率及脉宽可调的方波信号。
为了便于控制程序的运行,时序电路发生器设计了一个启停控制触发器UN1B,使TS1~TS4信号输出可控。
"运行方式"、"运行控制"、"启动运行"三个信号分别是来自实验机上三个开关。
当"运行控制"开关置为"运行","运行方式"开关置为"连续"时,一旦按下"启动运行"开关,运行触发器UN1B的输出QT一直处于"1"状态,因此时序信号TS1~TS4将周而复始地发送出去;当"运行控制"开关置为"运行","运行方式"开关置为"单步"时,一旦按下"启动运行"开关,机器便处于单步运行状态,即此时只发送一个CPU周期的时序信号就停机。
利用单步方式,每次只运行一条微指令,停机后可以观察微指令的代码和当前微指令的执行结果。
另外,当实验机连续运行时,如果"运行方式"开关置"单步"位置,也会使实验机停机。
2、微程序控制电路
微程序控制器的组成,其中控制存储器采用3片E2PROM2816芯片,具有掉电保护功能,微命令寄存器18位,用两片8D触发器74LS273和一片4D触发器74LS175组成。
微地址寄存器6位,用三片正沿触发的双D触发器74LS74组成,它们带有清"0"端和预置端。
在不判别测试的情况下,T2时刻打入微地址寄存器的内容即为下一条微指令地址。
当T4时刻进行测试判别时,转移逻辑满足条件后输出的负脉冲通过强置端将某一触发器置为"1"状态,完成地址修改。
在该实验电路中设有一个编程开关,它具有三种状态:
写入、读出、运行。
当处于"写"状态时,学生根据微地址和微指令格式将微指令二进制代码写入到控制存储器2816中。
当处于"读"时,可以对写入控制存储器中的二进制代码进行验证,从而可以判断写入的二进制代码是否正确。
当处于"运行"状态时,只要给出微程序的入口微地址,则可根据微程序流程图自动执行微程序。
图中微地址寄存器输出端增加了一组三态门,目的是隔离触发器的输出,增加抗干扰能力,并用来驱动微地址显示灯。
3、实验步骤
(1)根据机器指令画出对应的微程序流程图;
(2)根据微程序流程图设计微指令,并按微指令格式转换成二进制代码。
(3)实验接线
①跳线器J20、J21连上短路片;
②跳线器J16上SP连H23;
③UJ1连UJ2。
(4)仔细查线无误后接通电源
(5)观测时序信号
用双踪示波器观察方波信号源的输出。
方法如下:
将"运行控制"开关置为"运行"、"运行方式"开关置为"连续"。
按动"启动运行"开关,从示波器上可观察各点的波形,比较它们的相互关系,画出其波形,并标注测量所得的脉冲宽度。
(6)进一步了解微程序控制器的工作原理
①写微程序
A“编程开关”置为“写入”状态。
B“运行控制”开关置为“运行”,“运行方式”开关置为“单步”状态。
C用二进制模拟开关UA0~UA5置6位微地址,UA0~UA5的电平由LK0~LK5显示,高电平亮,低电平灭。
D用二进制模拟开关MK1~MK24置24位微代码,24位微代码由LMD1~LMD24显示灯显示,高电平亮,低电平灭。
E.按动"启动运行"开关,启动时序电路,即可将微代码写入到E2PROM2816的相应地址单元中。
F重复C-E步骤,将微代码全部写入E2PROM2816中。
②读微程序
A.将“编程开关”设置为“读”状态。
B.“运行控制”开关置为“运行”,“运行方式”开关置为“单步”状态。
C.用二进制模拟开关UA0~UA5置6位微地址。
D.按动“启动运行”开关,启动时序电路,读出微代码,观察显示灯LMD1~LMD24的状态,检查读出的微代码是否与写入的相同,如果不同,则将“编程开关”置为“写”状态。
重新执行①即可。
③单步运行
A.“编程开关”置于“运行”状态。
B.“运行控制”开关置为“运行”,“运行方式”开关置为“单步”状态。
C.系统总清,即“总清”开关拨0→1,使微地址寄存器U14~U16清零,从而明确本机的运行入口微地址为000000(二进制)。
D.按动“启动运行”开关,启动时序电路,则每按动一次,读出一条微指令后停机,此时实验机上的微地址显示灯和微程序显示灯将显示所读出的一条指令。
④连续运行
A.将“编程开关”置为“运行”状态。
B.“运行控制”开关置为“运行”,“运行方式”开关置为“连续”状态。
C.系统总清,即“总清”开关拨0→1。
使微地址寄存器U14~U16清零,从而明确本机的运行入口微地址为000000(二进制)。
D.按动“启动运行”开关,启动时序电路,则可连续读出微指令。
实验五基本模型机设计与实现
一、实验目的
(1)学习将运算器、微程序控制器和存储器三部件连机,从而形成一个简单的模型机;
(2)掌握微程序控制器如何控制数据通路实验中所用的数据通路;
(3)通过让CPU运行由若干条机器指令组成的简单程序,更进一步了解机器指令和微指令的关系,了解微程序是如何解释机器指令的。
二、实验要求
(1)熟悉计算机指令的执行过程;
(2)运行结果准确;
(3)写出实验报告。
三、实验内容
1、实验原理
部件实验过程中,各部件单元的控制信号是人为模拟产生的,而本次实验将能在微程序控制下自动产生各部件单元控制信号,实现特定指令的功能。
这里,实验计算机数据通路的控制将由微程序控制器来完成,CPU从内存中取出一条机器指令到指令执行结束的一个指令周期全部由微指令组成的序列来完成,即一条机器指令对应一个微程序。
(1)有关微控制器部分在前一实验中已详细介绍
(2)主存储器的读、写和运行
为了向主存储器RAM中装入程序或数据,并且检查写入是否正确以及能运行主存储器中的程序,必须设计三个控制操作微程序。
存储器读操作:
拨动总清开关后,置控制开关SWC、SWA为"00"时,按要求连线后,连续按"启动运行"开关,可对主存储器RAM连续手动读操作。
存储器写操作:
拨动总清开关后,置控制开关SWC、SWA为"01"时,按要求连线后,再按"启动运行"开关,可对主存储器RAM进行连续手动写入。
运行程序:
拨动总清开关后,置控制开关SWC、SWA为"11"时,按要求连线后,再按"启动运行"开关,即可转入到第01号"取址"微指令,启动程序运行。
(3)指令寄存器介绍
指令寄存器用来保存当前正在执行的一条指令。
当执行一条指令时,先把它从内存取到缓冲寄存器中,然后再传送到指令寄存器。
指令划分为操作码和地址码字段,由二进制构成,为了执行任何一条给定的指令,必须对操作码进行测试P
(1),通过节拍脉冲T4的控制以便识别所要求的操作。
"指令译码器"根据指令中的操作码进行译码,强置微控器单元的微地址,使下一条微指令指向相应的微程序首地址。
(4)输入/输出设备
本系统有两种外部I/O设备,一种是二进制代码开关KD0~KD7,它作为输入设备INPUT;另一种是数码显示块,它作为输出设备OUTPUT。
例如:
输入时,二进制开关数据直接经过三态门送到外部数据总线上,只要开关状态不变,输入的信息也不变。
输出时,将输出数据送到外部数据总线上,当写信号(W/R)有效时,将数据打入输出锁存器,驱动数码块显示。
(5)设计指令
根据基本模型机的硬件设计五条机器指令:
外设输入指令IN、二进制加法指令ADD、存数指令STA、输出到外设指令OUT、无条件转移指令JMP。
指令格式如下:
助记符机器指令码说明
IN00000000;"外部开关量输入"KD0~KD7的开关状态→R0
ADDaddr00010000××××××××;R0+[addr]→R0
STAaddr00100000××××××××;R0→[addr]
OUTaddr00110000××××××××;[addr]→BUS
JMPaddr01000000××××××××;[addr]→PC
说明:
指令IN为单字节指令,其余均为双字节指令,××××××××为addr对应的主存储器二进制地址码。
(6)基本模型机监控软件的设计
本模型机监控软件主要完成从输入设备读入数据,进行简单算术运算后,将结果存入内存的某个单元,最后通过输出设备输出结果。
监控软件详细如下:
地址内容助记符说明
0000000000000000IN;"INPUTDEVICE"→R0
0000000100010000ADD[0AH];R0+[0AH]→R0
0000001000001010
0000001100100000STA[0BH];R0→[0BH]
0000010000001011
0000010100110000OUT[0BH];[0BH]→BUS
0000011000001011
0000011101000000JMP[00H];00H→PC
0000100000000000
00001001
0000101000000001;自定义参加运算的数
00001011;求和结果存放单元
2、实验步骤
(1)根据实验原理设计数据通路框图。
(2)根据机器指令画出对应的微程序流程图
本实验的微程序流程,当拟定“取指”微指令时,该微指令的判别测试字段为P
(1)测试。
由于“取指”微指令是所有微程序都使用的公用微指令,因此P
(1)的测试结果出现多路分支。
本机用指令寄存器的前4位I7~I4作为测试条件,出现5路分支,占用5个固定微地址单元。
实验机控制操作为P(4)测试,它以控制开关SWC、SWA作为测试条件,出现了3路分支,占用3个固定微地址单元。
当分支微地址单元固定后,剩下的其它地方就可以一条微指令占用控存一个微地址单元随意填写。
(3)根据微程序流程图设计微指令并转换成16进制代码文件。
当全部微程序设计完毕后,应将每条微指令代码化,即按微指令格式将微程序流程图转化成二进制微代码表,再转换成16进制代码文件。
(4)实验接线
a、跳线器J1~J12全部拨在右边(自动工作方式);
b、跳线器J16、J18、J23、J24全部拨在左边;
c、跳线器J13~J15、J19、J25拨在右边;
d、跳线器J20~J22、J26、J27连上短路片;
e、UJ1连UJ2,JSE1连JSE2,SJ1连SJ2;
f、MBUS连BUS2;
g、REGBUS连BUS5;
h、PCBUS连EXJ2;
i、ALUBUS连EXJ3;
j、ALUO1连BUS1;
k、EXJ1连BUS3;
(5)读写程序
①手动方法写微程序参看实验六。
手动方法写代码程序(机器指令)步骤如下:
通过上一步将机器指令对应的微代码正确地写入E2ROM2816芯片后,再进行机器指令程序的装入和检查。
A.将“编程开关”置“运行”位置,“运行控制”开关置“运行”位置,“运行方式”开关置“单步”位置。
B.拨动总清开关(0→1),微地址寄存器清零,程序计数器清零。
然后使控制开关SWC、SWA开关置为“01”,按动一次“启动运行”开关,微地址显示灯LUA0~LUA5显示“010001”,再按动一次“启动运行”开关,微地址显示灯LUA0~LUA5显示“010100”,此时数据开关的内容置为要写入的机器指令,再按动一次“启动运行”开关,即完成该条指令的写入。
若仔细阅读微程序流程,就不难发现,机器指令的首地址只要第一次给出即可,PC会自动加1,所以,每次按动“启动运行”开关,只有在微地址灯显示“010100”时,才设置内容,直到所有机器指令写完。
C.写完程序后须进行检验。
拨动总清开关(0→1)后,微地址清零,PC程序计数器清零,然后使控制开关SWC、SWA为“00”,按动“启动运行”开关,微地址灯将显示“010000”,再按“启动运行”开关,微地址灯显示为“010010”,第三次按“启动运行”开关,微地址灯显示为“010111”,此时总线数据显示灯LZD0~LZD7显示为该首地址的内容,再按动一次“启动运行”开关,微地址灯显示为“010000”,2位数码管即显示RAM中的程序。
不断按动"启动运行"开关,可检查后续单元内容。
注意:
每次仅在微地址灯显示为“010000”时,2位数码管显示的内容才是相应地址中的机器指令内容。
②联机读/写微程序和机器指令
用联机软件的装载功能将16进制格式文件(文件名为C8JHE1)装入实验系统即可。
(6)运行程序
①单步运行程序
A.“编程开关”置“运行”状态,“运行方式”开关置为“单步”状态,“运行控制”开关置为“运行”状态。
B.拨动总清开关(0→1),微地址清零,PC计数器清零,程序首地址为00H。
C.按动“启动运行”开关,即单步运行一条微指令。
对照微程序流程图,观察微地址显示灯是否和流程一致。
②连续运行程序
A.“编程开关”置“运行”状态,“运行方式”开关置为“连续”状态,“运行控制”开关置为“运行”状态。
B.拨动总清开关,清微地址及PC计数器,按动“启动运行”开关,系统连续运行程序。
如果要停止程序的运行,只需将“运行控制”开关置为“停止”状态,系统就停机。
C.停机后,可检查存数单元0BH中的结果是否正确。