计算机组成原理实验.docx
《计算机组成原理实验.docx》由会员分享,可在线阅读,更多相关《计算机组成原理实验.docx(40页珍藏版)》请在冰豆网上搜索。
计算机组成原理实验
计算机组成原理实验指导
实验一 运算器部件实验
一、实验目的
⒈掌握简单运算器的数据传输方式。
⒉验证运算功能发生器(74LS181)及进位控制的组合功能。
二、实验要求
完成不带进位及带进位算术运算实验、逻辑运算实验,了解算术逻辑运算单元的运用。
三、实验原理
实验中所用的运算器数据通路如图2-1-1所示。
其中运算器由两片74LS181以并/串形式构成8位字长的ALU。
运算器的输出经过一个三态门(74LS245)以8芯扁平线方式和数据总线相连,运算器的2个数据输入端分别由二个锁存器(74LS273)锁存,锁存器的输入亦以8芯扁平线方式与数据总线相连,数据开关(INPUTDEVICE)用来给出参与运算的数据,经一三态门(74LS245)以8芯扁平线方式和数据总线相连,数据显示灯(BUSUNIT)已和数据总线相连,用来显示数据总线内容。
图2-1-1 运算器电原理图
图2-1-1中T2、T4为时序电路产生的节拍脉冲信号,通过连接时序启停单元时钟信号“
”来获得,剩余均为电平控制信号。
进行实验时,首先按动位于本实验装置右中侧的复位按钮使系统进入初始待令状态,在LED显示器闪动位出现“P.”的状态下,按【增址】命令键使LED显示器自左向右第4位切换到提示符“L”,表示本装置已进入手动单元实验状态,在该状态下按动【单步】命令键,即可获得实验所需的单脉冲信号,而LDDR1、LDDR2、ALU-B、SW-B、S3、S2、S1、S0、CN、M各电平控制信号用位于LED显示器上方的26位二进制开关来模拟,均为高电平有效。
四、实验连线
图2-1-2 实验连线示意图
按图2-1-2所示,连接实验电路:
①总线接口连接:
用8芯扁平线连接图2-1-2中所有标明“
”或“
”图案的总线接口。
②控制线与时钟信号“
”连接:
用双头实验导线连接图2-1-2中所有标明“
”或“
”图案的插孔(注:
Dais-CMH的时钟信号已作内部连接)。
五、实验系统工作状态设定
在闪动的“P.”状态下按动【增址】命令键,使LED显示器自左向右第4位显示提示符“L”,表示本装置已进入手动单元实验状态。
在“L”状态下,如图2-1-3所示系统用位于实验系统“
二进制开关单元”的26只拨动开关来模拟与微控制器相对应的控制信号。
用手动加载正逻辑控制电平(即高电平信号“H”)和按【单步】命令键产生的单周期4拍时序信号T1、T2、T3、T4的方法来实现和完成各单元实验所需的控制信号操作。
图2-1-3 二进制开关模拟控制原理图
六、手动实验提示
(一)初始化操作
一旦进入“L”状态,首先应把“
二进制开关单元”的26只模拟开关拨至下方(即低电平信号“L”),使26只微控制状态指示灯处“暗”,然后按【单步】命令键关闭全部控制信号锁存输出位,用手动方法完成微控制器的初始清零操作。
在“L”状态下直接按【复位】按钮亦可完成微控制器的初始清零操作。
(二)控制信号的打入方法
⑴有效状态的特征:
本系统提供的是“正逻辑”控制电路,通常情况下把高电平“H”定义为有效状态,以点亮发光二极管为标志。
⑵有效状态的建立:
结合实验项目,按实验要求把相关的二进制开关拨向上方,点亮对应的发光二极管。
⑶有效状态的控制:
在建立有效状态的基础上,按【单步】命令键单次启动时序节拍信号T1、T2、T3、T4,模型机按时序要求在相关时刻发出控制信号,以手动方式实现相关单元实验。
(三)总线输入/输出约定
⑴输入约定
对于计算机各部件的数据输出必须通过数据总线来完成,为了避免总线冲突与竞争,模型机规定在同一机器周期内只能允许一个部件的数据占用总线。
结合手动控制列举如下约定:
①数据开关送总线:
令SW-B=1,CBA=000,CE=0
②存储器内容送总线:
令CE=1,SW-B=0,CBA=000
③其它部件送总线:
令CBA=001~111,SW-B=0,CE=0
⑵输出共享
对于计算机各部件的数据输入可共享总线内容,即在同一机器周期内允许把当前数据同时送2个以上部件单元,结合手动控制举例如下:
例:
把数据开关的内容送通用寄存器R0、运算寄存器DR1、地址寄存器AR、指令寄存器IR,令SW-B=1,LDR0=1,LDDR1=1,LDAR=1,LDIR=1,然后按【单步】命令键即可实现总线数据共享。
七、实验内容
(一)算术运算实验
⑴写操作(置数操作)
拨动二进制数据开关向DR1和DR2寄存器置数,具体操作步骤如下:
注:
【单步】键的功能是启动时序电路产生T1~T4四拍单周期脉冲
图2-1-4 寄存器置数操作步骤
⑵读操作(运算寄存器内容送总线)
首先关闭数据输入三态控制端(SW-B=0),存储器控制端CE保持为0,令LDDR1=0、LDDR2=0,然后打开ALU输出三态门(CBA=010),置M、S0、S1、S2、S3为11111,再按【单步】键,数据总线单元显示DR1的内容,若把M、S0、S1、S2、S3置为10101,再按【单步】键,数据总线单元显示DR2的内容。
⑶算术运算(不带进位加)
置CBA=010,CN、M、S0、S1、S2、S3状态为101001,按【单步】键,此时数据总线单元应显示00001100(0CH)。
(二)进位控制实验
进位控制运算器的实验原理如实验四图2-4-1所示,其中181的进位位进入74LS74锁存器D端,该端的状态锁存受AR和T4信号控制,其中AR为进位位允许信号,高电平有效;T4为时序脉冲信号,当AR=1时在T4节拍将本次运算的进位结果锁存到进位锁存器中,实现带进位控制实验。
⑴进位位清零操作
在“L”状态下,按动【复位】按钮,进位标志灯CY“灭”,实现对进位位的清零操作。
(当进位标志灯“亮”时,表示CY=1)。
⑵用二进制数据开关向DR1和DR2寄存器置数
首先关闭ALU输出三态门(CBA=000)、CE=0,开启输入三态门(SW-B=1),设置数据开关,向DR1存入01010101(55H),向DR2存入10101010(AAH)。
操作步骤如下:
注:
【单步】键的功能是启动时序电路产生T1~T4四拍单周期脉冲
图2-1-5 寄存器置数操作步骤
⑶验证带进位运算的进位锁存功能
关闭数据输入三态门(SW-B=0)、CE=0,使CBA=010,AR=1,置CN、M、S0、S1、S2、S3的状态为101001,按【单步】键,此时数据总线单元显示的数据为DR1加DR2,若进位标志灯CY“亮”,表示有进位;反之无进位。
(三)逻辑运算实验
⑴写操作(置数操作)
拨动二进制数据开关向DR1和DR2寄存器置数,具体操作步骤如下:
注:
【单步】键的功能是启动时序电路产生T1~T4四拍单周期脉冲
图2-1-6 寄存器置数操作步骤
⑵读操作(运算寄存器内容送总线)
首先关闭数据输入三态控制端(SW-B=0),存储器控制端CE保持为0,令LDDR1=0、LDDR2=0,然后打开ALU输出三态门(CBA=010),置M、S0、S1、S2、S3为11111,再按【单步】键,数据总线单元显示DR1的内容,若把M、S0、S1、S2、S3置为10101,再按【单步】键,数据总线单元显示DR2的内容。
⑶逻辑或非运算
逻辑或非运算的方法是置CBA=010,M、S0、S1、S2、S3状态为11000,按【单步】键,此时数据总线单元应显示00011000(18H)。
注:
①加法运算时,CY=1表示运算结果有进位,CY=0表示运算结果无进位;
减法运算时,CY=1表示运算结果无借位,CY=0表示运算结果有借位。
实验二 移位寄存器实验
一、实验目的
⒈了解移位寄存器的硬件电路,验证移位控制与寄存的组合功能。
⒉利用寄存器进行数据传输。
二、实验要求
实现寄存器移位操作,了解通用寄存器的运用。
三、实验原理
图2-2-1 带进位移位寄存器电原理图
上图所示,使用了一片74LS299作为移位发生器,其中8位输入/输出端以8芯扁平线连接形式和总线接口连接。
299-B信号控制其使能端(0有效),T4为时序节拍脉冲,实验时按【单步】命令键产生。
由S0、S1、M控制信号设置其运行状态,其控制特性列表如下:
表2-2-1
299-B
S1
S0
M
功 能
0
0
0
任意
保持
0
1
0
0
循环右移
0
1
0
1
带进位循环右移
0
0
1
0
循环左移
0
0
1
1
带进位循环左移
任意
1
1
任意
装数
说明:
令CBA=011时表中299-B=0。
四、实验连线
图2-2-2 实验连线示意图
按图2-2-2所示,连接实验电路:
①总线接口连接:
用8芯扁平线连接图2-2-2中所有标明“
”或“
”图案的总线接口。
②控制线与时钟信号“
”连接:
用双头实验导线连接图2-2-2中所有标明“
”或“
”图案的插孔(注:
Dais-CMH的时钟信号已作内部连接)。
五、实验内容
(一)移位寄存器置数
首先置CBA=000,然后按下面所列流程图操作:
注:
【单步】键的功能是启动时序电路产生T1~T4四拍单周期脉冲
(二)寄存器移位
首先置CBA=011(299-B=0)、SW-B=0、CE=0,然后参照表7-2-1改变S0、S1、M的状态,按动【单步】命令键观察移位结果。
(三)移位结果的寄存
把移位寄存器移位后的内容寄存到通用寄存器(以R0为例),首先按图7-2-2所示连接实验电路。
在移位操作后保持CBA=011(即299-B=0)、置S0=0、S1=0,令LDR0=1,再按动【单步】命令键即可完成移位结果保存到通用寄存器R0的操作。
(四)移位结果的读出
置CBA=100、SW-B=0、CE=0,按【单步】键,数据总线单元显示R0寄存器的内容,该内容应与移位寄存器的内容一致。
实验三 通用寄存器实验
一、实验目的
⒈熟悉通用寄存器概念。
⒉熟悉通用寄存器的组成和硬件电路。
二、实验要求
完成3个通用寄存器的数据写入与读出。
三、实验原理
实验中所用的通用寄存器数据通路如图2-3-1所示。
由三片8位字长的74LS374组成R0、R1、R2寄存器组成。
三个寄存器的输入接口用一8芯扁平线连至BUS总线接口,而三个寄存器的输出接口用一8芯扁平线连至BUS总线接口。
图中R0-B、R1-B、R2-B经CBA二进制控制开关译码产生数据输出选通信号(详见表2-3-1),LDR0、LDR1、LDR2为数据写入允许信号,由二进制控制开关模拟,均为高电平有效;T4信号为寄存器数据写入脉冲,上升沿有效。
在手动实验状态(即“L”状态)每按动一次【单步】命令键,产生一次T4信号。
图2-3-1 通用寄存器单元电路
表2-3-1 通用寄存器单元选通真值表
C
B
A
选择
1
0
0
R0-B
1
0
1
R1-B
1
1
0
R2-B
四、实验连线
图2-3-2 实验连线示意图
按图2-2-2所示,连接实验电路:
①总线接口连接:
用8芯扁平线连接图2-3-2中所有标明“
”或“
”图案的总线接口。
②控制线与时钟信号“
”连接:
用双头实验导线连接图2-3-2中所有标明“
”或“
”图案的插孔(注:
Dais-CMH的时钟信号已作内部连接)。
五、实验内容
(一)通用寄存器的写入
拨动二进制数据开关向R0和R1寄存器置数,具体操作步骤如下:
注:
【单步】键的功能是启动时序电路产生T1~T4四拍单周期脉冲
图2-3-3 寄存器置数操作步骤
(二)通用寄存器的读出
关闭数据输入三态(SW-B=0),存储器控制端CE=0,令LDR0=0、LDR1=0、LDR2=0,分别打开通用寄存器R0、R1、R2输出控制位,置CBA=100时,按【单步】键,数据总线单元显示R0中的数据01H;置CBA=101时,按【单步】键。
数据总线单元显示R1中的数据80H;置CBA=110时,按【单步】键,数据总线单元显示R2中的数据(随机)。
实验四 存储器部件实验
一、实验目的
熟悉存储器和总线组成的硬件电路。
二、实验要求
按照实验步骤完成实验项目,利用存储器和总线传输数据。
三、实验原理
图2-4-1存储器实验原理图
实验所用的半导体静态存储器电路原理如图2-4-1所示,该静态存储器由一片6116(2Kx8)构成,其数据线(D7~D0)以8芯扁平线方式和数据总线(D7~D0)相连接,地址线由地址锁存器(74LS273)给出,该锁存器的输入/输出通过8芯扁平线分别连至数据总线接口和存储器地址接口。
地址显示单元显示AD7~AD0的内容。
数据开关经一三态门(74LS245)以8芯扁平线方式连至数据总线接口,分时给出地址和数据。
6116有3根控制线:
CS(片选线)、OE(读线)、WR(写线)。
当片选有效CS=0时,OE=0时进行读操作,WR=0时进行写操作。
本实验中将OE引脚接地,在此情况下,当CS=0、WR=1时进行读操作,CS=0、WR=0时进行写操作,其写时间与T3脉冲宽度一致。
实验时T3脉冲由【单步】命令键产生,其它电平控制信号由二进制开关模拟,其中CE、SW-B、LDAR为高电平有效,而WE为读/写(W/R)控制信号,当WE=0时进行读操作,当WE=1时进行写操作。
四、实验连线
图2-4-2 实验连线示意图
按图2-5-2所示,连接实验电路:
①总线接口连接:
用8芯扁平线连接图2-4-2中所有标明“
”或“
”或“
”图案的总线接口。
②控制线与时钟信号“
”连接:
用双头实验导线连接图2-4-2中所有标明“
”或“
”图案的插孔(注:
Dais-CMH的时钟信号已作内部连接)。
五、实验内容
在闪动的“P.”状态下按动【增址】命令键,使LED显示器自左向右第4位显示提示符“L”,表示本装置已进入手动单元实验状态。
(若当前处“L”状态,本操作可略)。
(一)内部总线数据写入存储器
给存储器的00、01、02、03、04地址单元中分别写入数据11、12、13、14、15,具体操作步骤如下(以向00地址单元写入数据11为例):
注:
【单步】键的功能是启动时序电路产生T1~T4四拍单周期脉冲
图2-4-3 寄存器置数操作步骤
(二)读存储器的数据到总线上
依次读出第00、01、02、03、04号单元中的内容,观察上述各单元中的内容是否与前面写入的一致。
具体操作步骤如下(以从00地址单元读出数据11为例):
注:
【单步】键的功能是启动时序电路产生T1~T4四拍单周期脉冲
图2-4-4 寄存器置数操作步骤
实验五 判零实验
一、实验目的
熟悉判零线路的硬件。
二、实验要求
完成运算寄存器的判零。
三、实验原理
图2-5-1 标志位锁存原理图
零标志的实验原理如图2-5-1所示,其中181的8位输出端逻辑或非后进入74LS74锁存器D端,该端的状态由AR和T4信号控制,当AR=1时,按【单步】命令键,在T4节拍把当前ZQ状态锁存到零标志锁存器中。
四、实验内容
⑴本实验的连接请按图2-1-2所示。
⑵用二进制数据开关向DR1和DR2寄存器置数
首先关闭ALU输出三态门(CBA=000)、CE=0,开启输入三态门(SW-B=1),设置数据开关。
例如向DR1、DR2均存入00000001(01H)。
具体操作步骤如下:
注:
【单步】键的功能是启动时序电路产生T1~T4四拍单周期脉冲
图2-5-2 寄存器置数操作步骤
⑶读操作(运算寄存器内容送总线)
首先关闭数据输入三态控制端(SW-B=0),存储器控制端CE保持为0,令LDDR1=0、LDDR2=0,然后打开ALU输出三态门(CBA=010),置M、S0、S1、S2、S3为11111,再按【单步】键,数据总线单元显示DR1的内容00000001(01H),若把M、S0、S1、S2、S3置为10101,再按【单步】键,数据总线单元显示DR2的内容00000001(01H)。
⑷带进位减法运算
令SW-B=0、CE=0,置CBA=010、AR=1,置CN、M、S0、S1、S2、S3为000110,按【单步】键,此时数据总线单元应显示00000000(00H)。
注:
181运算器作减法运算时,有借位CY=0,无借位CY=1。
⑸寄存器判零
在保持带进位减法运算所设置的状态下,令AR=1,按【单步】键,若零标志灯“亮”,表示当前运算结果为零;反之零标志灯“灭”,表示当前运算结果不为零。
实验六 指令部件模块实验
一、实验目的
⒈掌握时序产生器的组成方式。
⒉熟悉指令产生的原理。
二、实验要求
按照实验步骤完成实验项目,完成将数据打入IR寄存器,数据打入PC指针式寄存器,PC指针自动加1。
三、指令部件模块的构成
⑴如图2-6-1所示,2片74LS163作为8位PC程序计数器的8位输入/输出公用端用8芯扁平线与BUS总线接口相连接。
图2-6-1 程序计数器单元
2片74LS163组成了PC程序计数器,它有LDPC、LOAD信号,脉冲T3来控制PC指针的装载和加1操作。
在“L”状态下,由8位置数开关装入起始地址,当LOAD=1、LDPC=1时,按【单步】命令键,在T3上升沿把数据开关的内容装入PC。
当CBA=001、LOAD=0、LDPC=1、LDAR=1时,按【单步】命令键,在单周期四节拍时序的T2时刻打开PC-B三态门,在T3时刻PC值通过总线打入地址寄存器、同时PC值加1。
⑵如图2-6-2所示,1片74LS273作为指令寄存器单元,其8位输入端与BUS总线之间实验装置已作连接,其输出端用一8芯扁平线与SE5~SE0接口连接。
图2-6-2 指令寄存器单元
指令数据寄存器IR(74LS273)的LDIR为电平正跳变时,把来自数据总线的数据打入寄存器IR,IR的输出就作为本系统内的8位指令I7~I0。
在本系统内由这8位指令(可最多译码256条不同的指令),通过编码可对应这些指令在微程序存储器中的入口地址,并且输出相应的微控制指令。
⑶1片74LS74用来实现多种条件的跳转指令(JZ、JC等跳转指令)。
图2-6-3 CY、零标志锁存原理图
74LS74芯片是双D触发器,其中一组是锁存进位位CY标志,另一组是锁存零标志(Z)可通过AR来控制JC和JZ建立,以实现条件跳转的指令。
⑷1片74LS74用来实现开中断、关中断、中断服务。
图2-6-4 中断控制电路图
74LS74芯片是双D触发器,其中一组锁存开中断标志,另一组锁存中断服务标志,通过LOAD来控制EA、ED的建立,以实现中断响应与中断服务。
四、实验连接
图2-6-5 实验连线示意图
按图7-8-5所示,连接实验电路:
①总线接口连接:
用8芯扁平线连接图2-6-5中所有标明“
”或“
”图案的总线接口。
②控制线与时钟信号“
”连接:
用双头实验导线连接图2-6-5中所有标明“
”或“
”图案的插孔(注:
Dais-CMH的时钟信号已作内部连接)
五、实验内容
在闪动的“P.”状态下按动【增址】命令键,使LED显示器自左向右第4位显示提示符“L”,表示本装置已进入手动单元实验状态。
(一)程序计数器(PC值)的置数、输出与加1
⑴PC值的写入
拨动二进制数据开关向程序计数单元置数(置数灯亮表示它所对应的数据位为“1”、反之为零)。
具体操作步骤图示如下:
注:
【单步】键的功能是启动时序电路产生T1~T4四拍单周期脉冲
⑵PC值的读出
关闭数据输入三态(SW-B=0)、CE保持为0、LOAD=0、LDPC=0、CBA=001时,按【单步】键,打开PC-B缓冲输出门,数据总线单元应显示00000000;
⑶PC值送地址寄存器并加1
在保持PC值读出的开关状态下,置LDAR=1、LDPC=1,按【单步】命令键,在T3节拍把当前数据总线的内容(即PC)打入地址锁存器,地址总线单元的显示器应显示00H,在T3节拍的上升沿PC计数器加1,PC单元的显示器应显示01H。
(二)指令码的打入与散转
按实验七图7-7-3微程序流程所示的微控制流程,对指令译码寄存器IR分别打入微控制流程定义的操作码20H、40H、60H、80H、0A0H,然后根据流程图定义的基地址08H置入数据开关,按【单步】键,在机器周期的T2节拍把基地址08H打入微地址锁存器,在机器周期T4节拍按微控制流程对IR指令寄存器的内容进行测试和判别,使后续微地址转向与操作码相对应的微程序入口地址。
举例操作如下:
①当IR寄存器为20H、微地址为08H时,按【单步】键后微地址为09H。
②当IR寄存器为60H、微地址为08H时,按【单步】键后微地址为0BH。
注:
【单步】键的功能是启动时序电路产生T1~T4四拍单周期脉冲
实验七 微程序控制单元实验
一、实验目的
⒈掌握时序产生器的组成方式。
⒉熟悉微程序控制器的原理。
⒊掌握微程序编制及微指令格式。
二、实验要求
按照实验步骤完成实验项目,熟悉微程序的编制、写入、观察运行状态。
三、实验原理
⒈微程序控制电路
微程序控制器的组成见图2-7-1,其中控制存储器采用4片6116静态存储器,微命令寄存器32位,用三片8D触发器(273)和一片4D(175)触发器组成。
微地址寄存器6位,用三片正沿触发的双D触发器(74)组成,它们带有清零端和置位端。
在不判别测试的情况下,T2时刻打入微地址寄存器的内容即为下一条微指令地址。
当T4时刻进行测试判别时,转移逻辑满足条件后输出的负脉冲通过置位端将某一触发器输出端置为“1”状态,完成地址修改。
⒉微指令格式
表2-7-1
M25
M24
M23
M22
M21
M20
M19
M18
M17
M16
M15
M14
M13
M12
M11
M10
M9
M8
C
B
A
AR
未用
P3
A9
A8
CE
LOAD
CN
M
S0
S1
S2
S3
P2
LDAR
M7
M6
M5
M4
M3
M2
8
7
6
5
4
3
M1
M0
LDPC
LDIR
LDDR2
LDDR1
LDR0
WE
UA0
UA1
UA2
UA3
UA4
UA5
P1
SW-B
A字段B字段
M20
M9
M1
选择
测试字
P3
P2
P1
0
0
0
关闭测试
0
0
1
P
(1)
识别操作码
0
1
0
P
(2)
判寻址方式
0
1
1
P(Z)
Z标志测试
1
0
0
P(I)
中断响应
1
0
1
P(D)
中断服务
1
1
0
P(C)
C标志测试
1
1
1
保留位
C
B
A
选择
0
0
0
禁止
0
0
1
PC-B
0
1
0
ALU-B
0
1
1
299-B
1
0
0
R0-B
1
0
1
R1-B
1
1
0
R2-B
1