《2022年合肥工业大学计算机组成原理实验报告》由会员分享,可在线阅读,更多相关《2022年合肥工业大学计算机组成原理实验报告(26页珍藏版)》请在金锄头文库上搜索。
1、实验一基本运算器实验一、实验目的了解运算器的组成结构;掌握运算器的工作原理。二、实验内容1、连线说明:ALU单元: S0.S3(JP18) 开关区单元:K20.K23(JP89)ALU单元: Wa 、wB 、 rALU、CN_I(JP19) 开关区单元:K15.K12(JP92)ALU单元: ALU_D0.ALU_D7(JP25) 扩展区单元:JP62ALU单元: IN0.IN7(JP22) 开关区单元:K0.K7(JP97)2、打开实验仪电源,按CON 单元的 nRST按键,将ALU的 A、B、FC、FZ、 FS、I 清零;如果 EXEC 键上方指示灯不亮,请按一次EXEC键,点亮指示灯,表
2、示实验仪在运行状态。3、给暂存器A赋初值(1)拨动开关区单元的K7.K0 开关,形成二进制数01011000(或其它值);指示灯亮,表示该位是 1,灭为 0。(2)拨动开关区单元K15(wA)、K14(wB)、K13(rALU) 、K12(CN_I) 开关,赋 wA=0 (允许写 A)、wB=1 (禁止写B)、rALU=1( 不允许 ALU输出 ) 、CN_I=0,按 CON 单元的 STEP按键一次, 产生一个T1 的下降沿, 将二进制数01011000 写入暂存器A中,ALU单元的 A_7A_0LED上显示 A中的值4、给暂存器B赋初值(1)拨动开关区单元的K7.K0 开关,形成二进制数1
3、0101011(或其它值)。(2)赋 wA=1 (禁止写A)、 wB=0 (允许写B)、 rALU=1(不允许 ALU输出 ) 、CN_I=0,按 CON单元的 STEP按键一次 , 产生一个T2 的下降沿,将二进制数10101011 写入暂存器B中, ALU单元的 R_7 R_0LED上显示 B中的值5、赋 wA=1 (禁止写A)、wB=1 (禁止写 B)、rALU(K10)=0, 按 uSTEP键,进入 T3 节拍,节拍DS169 DS168T1、T2、T3 无效(T1=0、T2=0、T3=0)0 0T1 (T1=1、T2=0、T3=0)0 1T2 (T1=0、T2=1、T3=0)1 0T
4、3 (T1=0、T2=0、T3=1)1 1说明: 1- 亮; 0- 灭当 rALU(K13)=0 ,如果 S3S2S1S0的值是 0000 时, T2、T3 节拍时,允许ALU结果输出;S3S2S1S0的值是其它数值,T3 节拍时,允许ALU结果输出,显示于扩展区的二位数码管、DS94.DS101 的 LED上。6、根据后边的“运算结果表”,改变K20(S0)、K21 ( S1)、K22(S2)、K23(S3)、K12 (CN_I)的值, 观察并记录运算器的输出。例如:S0=0,S1=0,S2=0,S3=0,ALU的 D7_D0 = 58H;FC 、 FZ、FS 、I 不变。注意:只有按CON
5、 单元的 STEP按键一次,产生一个T3 的下降沿, ALU才将标志位FC、FZ、 FS、I 写入标志寄存器PSW 中,才能在ALU单元的 FZ、FC、FS、I 指示灯上看到结果。精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 1 页,共 26 页如果实验仪、PC 联机操作,则可通过软件中的数据通路图来观测实验结果,方法是:打开软件,在星研软件的工具条中选择“运算器实验”,打开运算器实验的数据通路图。进行上面的手动操作,点击工具条上单节拍或单周期命令图标,数据通路图会反映当前运算器所做的操作。三、实验结果及分析运算结果表运算类型A B S3 S2
6、S1 S0 CN_I 结果逻辑运算58 AB 0000 0 ALU= ( 58) FC=(0 )FZ=(0 ) FS=(0 )58 AB 0000 1 ALU= ( AB) FC=(0 )FZ=( 0 ) FS=(0 )58 AB 0001 X ALU= ( FB) FC=( 0 )FZ=(0 ) FS=(0 )0010 X ALU= (08 ) FC=( 0 )FZ= (0 ) FS=(0 )0011 X ALU= (F3 ) FC=( 0 )FZ= (0 ) FS=(0 )0100 X ALU= ( A7 ) FC=(0 )FZ= (0 ) FS=( 0)移位运算0101 0 ALU= (
7、 0B ) FC=(0 )FZ= ( 0 ) FS=( 0)0101 1 ALU= ( 2C ) FC=(0 )FZ= ( 0 ) FS=(0 )0110 0 ALU= ( 2C ) FC=( 0 )FZ= ( 0 ) FS=(0 )0110(FC=0) 1 ALU= (2C ) FC=(0 )FZ= ( 0 ) FS=( 0)0110(FC=1) ALU= (AC ) FC=( 0 )FZ= ( 0 ) FS=(0 )0111 0 ALU= ( B0 ) FC=( 1 )FZ= ( 0 ) FS=(0 )0111(FC=0) 1 ALU=( B0 ) FC=(0)FZ=(0) FS=(0)0
8、111(FC=1) ALU= ( B1 ) FC=( 1 )FZ=(0) FS=(0)算术运算1000 0 ALU=( 03 ) FC=(0)FZ=(0) FS=(0)1000(FC=0) 1 ALU=( 03 ) FC=(0)FZ=(0) FS=(0)1000(FC=1) ALU= ( 04 ) FC=(1 )FZ=(0) FS=(0)1001 0 ALU=( AD ) FC=(0)FZ=(0) FS=(0)1001(FC=0) 1 ALU=( AD ) FC=(0)FZ=(0) FS=(0)1001(FC=1) ALU= ( AC ) FC=( 1 )FZ=(0) FS=(0)1010 0
9、 ALU= ( 59 ) FC=( 1 )FZ=(0) FS=(0)1 ALU= ( 58 ) FC=( 1 )FZ=(0) FS=(0)1011 X ALU= ( 57 ) FC=(1 )FZ=(0) FS=(0)其它1100 X FC= ( 1 )1101 X EI=( 0 )精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 2 页,共 26 页四、思考题本实验系统中寄存器的写入在什么时刻进行?寄存器的写入在什么时刻进行?能否在一个机器周期内将、寄存器写入不同的数据?答:按住 STEP,CK 由高变低,寄存器A 的黄色灯亮,表明选择A 寄存器。放
10、开STEP,CK 由低变高,产生上升沿,数据55H 被写入 A 寄存器。按住 STEP,CK 由高变低, 寄存器 B 的黄色灯亮, 表明选择B 寄存器。 放开 STEP ,CK 由低变高,产生上升沿,数据33H 被写入 B 寄存器。不允许在一个机器周期内将、寄存器写入不同的数据。本实验系统中的求补功能与的求补指令功能是否相同?答:本实验系统中可对8 位位变量进行逻辑“AND ” 、“OR ” 、“XOR ” 循环、求补、清零等基本操作,还可以进行加、减、乘、除等基本运算。而8086 处理器的逻辑运算是16 位。精选学习资料 - - - - - - - - - 名师归纳总结 - - - - -
11、- -第 3 页,共 26 页实验二存储器实验1、实验目的1、 掌握简单运算器的数据传送组成原理。2、 验证算术逻辑运算功能发生器74LS181的组合功能。二、实验原理1、总线原理: 由于本系统内使用8 根地址线, 8 根数据线, 所以使用1 拍你 74LS255作为数据总线, 另一片 74LS244作为地址总线, 总线把整个系统分为内部数据、地址总线和外部数据、地址总线,由于数据总线需要进行由内、外部数据交换,所以由BUS 信号来控制数据流向,当BUS=1时数据由内到外,当BUS=0时,数据由外到内。2、由于本系统内使用8 根地址线, 8 位数据线,所以6264的 A8A12接地,其实际容量
12、为 256,6264的数据、地址总线已经接在总线单元的外部总线上。存储器有3 个控制信号:地址总线设置存储地址,RM=0时,把存储器中的数据读出到总线上;当WM=0,并且 EMCK 有一个上升沿,把外部总线上的数据写到存储器中。精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 4 页,共 26 页图 7-6-1 存储器实验原理图实验所用的半导体静态存储器电路原理如图7-6-1所示,该静态存储器由一片6116(2Kx8)构成,其数据线(D7D0)以 8 芯扁平线方式和数据总线(D7D0)相连接,地址线由地址锁存器(74LS273)给出,该锁存器的输入/
13、输出通过8 芯扁平线分别连至数据总线接口和存储器地址接口。地址显示单元显示AD7AD0的内容。数据开关经一三态门(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为高电平有
14、效,而WE 为读 / 写(W/R) 控制信号,当WE=0时进行读操作,当WE=1时进行写操作。精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 5 页,共 26 页图 7-6-2 实验连线示意图按图 7-6-2所示, 连接实验电路: 总线接口连接: 用 8 芯扁平线连接图 7-6-2中所有标明 “”或“”或 “”图案的总线接口。 控制线与时钟信号“”连接:用双头实验导线连接图7-6-2中所有标明 “”或“”图案的插孔(注:Dais-CMH的时钟信号已作内部连接)。在闪动的 “P .”状态下按动【增址】命令键,使LED 显示器自左向右第4 位显示提示符
15、“L ”,表示本装置已进入手动单元实验状态。(若当前处“L ”状态,本操作可略)。( 一) 内部总线数据写入存储器给存储器的00 、01 、02 、03 、04 地址单元中分别写入数据11 、12 、13 、14 、 15 ,具体操作步骤如下(以向00 地址单元写入数据11 为例):注:【单步】 键的功能是启动时序电路产生T1T4四拍单周期脉冲( 二) 读存储器的数据到总线上依次读出第00 、01 、 02 、03 、04 号单元中的内容,观察上述各单元中的内容是否与前面写入的一致。具体操作步骤如下(以从00 地址单元读出数据11 为例):注 :【单步】键的功能是启动时序电路产生T1T4四拍单
16、周期脉冲三、实验结果及分析精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 6 页,共 26 页实验所得结果与理论分析结果基本一致。四、思考题1本实验系统中所使用的存储芯片的容量有多大?系统中实际可访问的空间是多大?答:存储器6116 芯片容量2K*8 位。实际可访存空间:2K。本实验系统中存储器的读写控制信号如何得到的?它们各自在什么时候有效?答:在 CS=0 下, OE=0 时进行读操作,WR=0 时进行写操作。OE 引脚接地下,当CS=0、 WR=1 时进行读操作,CS=0、WR=0 时进行写操作,其写时间与 T3 脉冲宽度一致。实验时 T3
17、脉冲由【单步】命令键产生,其它电平控制信号由二进制开关模拟,其中CE、SW-B、LDAR 为高电平有效,而WE 为读 /写(W/R) 控制信号,当WE=0 时进行读操作,当WE=1 时进行写操作。精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 7 页,共 26 页实验三系统总线和具有基本输入输出功能的总线接口实验一、实验目的1、 理解总线的概念及其特性。2、 掌握控制总线的功能和应用。二、实验内容由于存储器和输入、输出设备最终是要挂接到外部总线上,所以需要外部总线提供数据信 号、地址信号以及控制信号。在该实验平台中,外部总线分为数据总线、地址总线和
18、控制总线,分别为外设提供上述信号。外部总线和 CPU 内总线之间通过三态门连接,同时实现了内外总线的分离和对于数据流向的控制。地址总线可以为外部设备提供地址信号和片选信号。由地址总线的高位进行译码,系统的 I/O 地址译码原理如图 4-1(在地址总线单元)。由于使用 A6、 A7 进行译码, I/O 地址空间被分为四个区,如表 4-1 所示为了实现对于 MEM 和外设的读写操作,还需要一个读写控制逻辑,使得 CPU 能控制 MEM和 I/O 设备的读写, 实验中的读写控制逻辑如图 4-2 所示,由于 T3 的参与,可以保证写脉宽与 T3 一致, T3 由时序单元的 TS3 给出(时序单元的介绍
19、见附录 2)。 IOM 用来选择是对 I/O 设备还是对 MEM 进行读写操作,IOM=1 时对 I/O 设备进行读写操作,IOM=0 时对 MEM 进行读写操作。 RD=1 时为读, WR=1 时为写。1读写控制逻辑设计实验。(1) 按照图4-4 实验 接线图进行连线。精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 8 页,共 26 页首先将时序与操作台单元的开关 KK1 、 KK3 置为 运行 档,开关 KK2 置为 单拍 档,按动 CON 单元的总清按钮 CLR,并执行下述操作。 对 MEM 进行读操作( WR=0,RD=1,IOM=0 ),
20、此时 E0 灭,表示存储器读功能信号 有效。 对 MEM 进行写操作( WR=1 ,RD=0,IOM=0 ),连续按动开关ST,观察扩展单元数据 指示灯,指示灯显示为 T3 时刻时, E1 灭,表示存储器写功能信号有效。 对 I/O 进行读操作(WR=0,RD=1 ,IOM=1 ),此时 E2 灭,表示 I/O 读功能信号有效。 对 I/O 进行写操作(WR=1,RD=0 ,IOM=1 ),连续按动开关ST,观察扩展单元数据指示灯,指示灯显示为 T3 时刻时, E3 灭,表示 I/O 写功能信号有效。 2基本输入输出功能的总线接口实验。3、实验结果:(1)根据挂在总线上的几个基本部件,设计一个
21、简单的流程: 输入设备将一个数打入 R0 寄存器。 输入设备将另一个数打入地址寄存器。 将 R0 寄存器中的数写入到当前地址的存储器中。 将当前地址的存储器中的数用 LED 数码管显示。( 2)按照图 4-5 实验接线图进行连线。(3)具体操作步骤图示如下:进入软件界面,选择菜单命令“ 【实验】 【简单模型机】 ” , 打开简单模型机实验数据通路图。将时序与操作台单元的开关 KK1 、 KK3 置为 运行 档,开关 KK2 置为 单拍 档,CON 单元所有开关置 0(由于总线有总线竞争报警功能,在操作中应当先关闭应关闭的输出开关,再 打开应打开的输出开关,否则可能由于总线竞争导致实验出错),按
22、动 CON 单元的总清按钮 CLR,然后通过运行程序,在数据通路图中观测程序的执行过程。 输入设备将 11H 打入 R0 寄存器。 将 IN 单元置 00010001,K7 置为 1,关闭 R0 寄存器的输出; K6 置为 1,打开 R0 寄存器的输入;WR、RD、IOM 分别置为 0、1、1,对 IN 单元进行读操作;LDAR 置为 0,不将数据总线的数打入地址寄存器。连续四次点击图形界面上的 “ 单节拍运行 ” 按扭 (运行一个机器周期), 观察图形界面, 在 T4 时刻完成对寄存器 R0 的写入操作。 将 R0 中的数据 11H 打入存储器 01H 元。 将 IN 单元置 0000000
23、1(或其他数值)。K7 置为 1,关闭 R0 寄存器的输出;K6 置为 0, 关闭 R0 寄存器的输入; WR、RD、IOM 分别置为 0、1、1,对 IN 单元进行读操作;LDAR 置为 1,将数据总线的数打入地址寄存器。连续四次点击图形界面上的“ 单节拍运行 ” 按扭,观察图形界面,在 T3 时刻完成对地址寄存器的写入操作。先将 WR、 RD、 IOM 分别置为 1、 0、 0, 对存储器进行写操作;再把 K7 置为 0, 打开 R0 寄存器的输出; K6 置为 0,关闭 R0 寄存器的输入; LDAR 置为 0,不将数据总线的数打入地址寄存器。连续四次点击图形界面上的“ 单节拍运行 ”
24、按扭,观察图形界面,在 T3 时刻完成对存储器的写入操作。 将当前地址的存储器中的数写入到 R0 寄存器中。将 IN 单元置 00000001(或其他数值),K7 置为 1。关闭 R0 寄存器的输出;K6 置为 0,关闭 R0 寄存器的输入;WR、RD、IOM 分别置为 0、 1、1,对 IN 单元进行读操作;LDAR 置为 1,将数据总线的数打入地址寄存器。连续四次点击图形界面上的“ 单节拍运行 ” 按 扭,观察图形界面,在 T3 时刻完成对地址寄存器的写入操作。将 K7 置为 1,关闭 R0 寄存器的输出; K6 置为 1,打开 R0 寄存器的输入; WR、RD、 IOM 分别置为 0、1
25、、0,对存储器进行读操作;LDAR 置为 0,不将数据总线的数打入地址寄存器。连续四次点击图形界面上的“ 单节拍运行 ” 按扭,观察图形界面,精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 9 页,共 26 页在 T3 时刻完成对寄存器 R0 的写入操作。 将 R0 寄存器中的数用 LED 数码管显示。先将 WR、RD、IOM 分别置为 1、0、1,对 OUT 单元进行写操作;再将 K7 置为 0, 打开R0 寄存器的输出;K6 置为 0,关闭 R0 寄存器的输入; LDAR 置为 0,不将数据总线的数打入地址寄存器。连续四次点击图形界面上的“ 单
26、节拍运行 ” 按扭,观察图形界面,在T3 时刻完成对 OUT 单元的写入操作。三、实验结果及分析精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 10 页,共 26 页1、存储器和输入、 输出设备最终是要挂接到外部总线上,因此需要外部总线提供数据信号、地址信号以及控制信号。2、外部总线和 CPU 内总线之间通过三态门连接,同时实现了内外总线的分离和对于数据流向的控制。而地址总线可以为外部设备提供地址信号和片选信号。3.为了实现对于 MEM 和外设的读写操作,还需要一个读写控制逻辑,使得 CPU 能控制 MEM 和 I/O 设备的读写4、 WR=0,
27、RD=1 , IOM=0 时 E0 灭,表示存储器读功能信号有效。 WR=1 , RD=0, IOM=0 )连续按动开关ST,当指示灯显示为 T3 时刻时, E1 灭,表示存储器写功能信号有效。WR=0,RD=1 ,IOM=1 时, E2 灭,表示 I/O 读功能信号有效。WR=1,RD=0 ,IOM=1 )时,观察扩展单元数据指示灯,指示灯显示为 T3 时刻时, E3 灭,表示 I/O 写功能信号有效。5、在接线时为了方便,可将管脚接到 CON 单元闲置的开关上,若开关打到 1,等效于接到VCC ;若开关打到0,等效于接到GND。四、思考题精选学习资料 - - - - - - - - - 名
28、师归纳总结 - - - - - - -第 11 页,共 26 页本实验系统中外设的读写控制信号如何得到的?对外设的读、写控制信号能不能同时发出?对存储器呢?答:为了实现对于MEM 和外设的读写操作,需要一个读写控制逻辑,使得CPU 能控制 MEM 和 I/O 设备的读写。总线上的部件输出数据时为什么要加三态门?答:外部总线和CPU 内总线之间通过三态门连接,同时实现了内外总线的分离和对于数据流向的控制。而地址总线可以为外部设备提供地址信号和片选信号。精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 12 页,共 26 页实验四具有中断控制功能的总线接
29、口实验具有 DMA 控制功能的总线接口实验1、实验目的1掌握中断控制信号线的功能和应用。 2掌握在系统总线上设计中断控制信号线的方法。2、实验内容1、实验原理:为了实现中断控制,CPU 必须有一个中断使能寄存器,并且可以通过指令对该寄存器进行 操作。设计下述中断使能寄存器,其原理如图4-2-1 所示。其中EI 为中断允许信号,CPU 开中 断指令 STI 对其置 1,而 CPU 关中断指令CLI 对其置 0。每条指令执行完时,若允许中断, CPU 给出开中断使能标志STI,打开中断使能寄存器,EI 有效。 EI 再和外部给出的中断请求信号一起参与指令译码,使程序进入中断处理流程。本实验要求设计
30、的系统总线具备有类X86 的中断功能,当外部中断请求有效、CPU 允许响 应中断, 在当前指令执行完时,CPU 将响应中断。 当 CPU 响应中断时, 将会向 8259 发送两个 连续的 INTA 信号,请注意,8259 是在接收到第一个INTA 信号后锁住向CPU 的中断请求信号 INTR (高电平有效),并且在第二个INTA 信号到达后将其变为低电平(自动EOI 方式),所以, 中断请求信号IR0 应该维持一段时间,直到 CPU 发送出第一个INTA 信号,这才是一个有效的中断请求。 8259 在收到第二个INTA 信号后,就会将中断向量号发送到数据总线, CPU 读取中 断向量号, 并转
31、入相应的中断处理程序中。在读取中断向量时,需要从数据总线向CPU 内总线 传送数据。所以需要设计数据缓冲控制逻辑,在INTA 信号有效时,允许数据从数据总线流向 CPU 内总线。其原理图如图4-2-2 所示。其中RD 为CPU 从外部读取数据的控制信号。在控制总线部分表现为当CPU 开中断允许信号STI 有效、 关中断允许信号CLI 无效时,中断标志 EI 有效, 当 CPU 开中断允许信号STI 无效、 关中断允许信号CLI 有效时, 中断标志 EI 无效。 EI 无效时,外部的中断请求信号不能发送给CPU。2、实验步骤:精选学习资料 - - - - - - - - - 名师归纳总结 - -
32、 - - - - -第 13 页,共 26 页(1)按照图4-2-3 实验接线图进行连线。( 2 )具 体 操作 步 骤图 示 如下: 对总 线 进行 置 中断 操 作( K6=1,K7=0 ),观 察 控制 总 线部 分 的中 断 允许 指 示灯 EI,此时 EI 亮,表示允许响应外部中断。按动时序与操作台单元的开关KK ,观察控制总线单元的指示灯INTR, 发现当开关KK 按下时 INTR 变亮,表示总线将外部的中断请求送到CPU。使用电压表测量数据缓冲 74LS245 的 DIR(第 1 脚),显示为低,表示CPU 允许外部送中断向量号。 对总线进行清中断操作(K6=0,K7=1),观察
33、控制总线部分的中断允许指示灯EI,此时 EI 灭,表示禁止响应外部中断。按动时序与操作台单元的开关KK ,观察控制总线单元的指示灯INTR ,发现当开关KK 按下时INTR 不变,仍然为灭,表示总线锁死了外部的中断请求。使用电压表测量数据缓冲74LS245 的 DIR (第 1 脚),显示为低,表示CPU 允许外部送中断向量号。三、实验结果及分析精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 14 页,共 26 页1.按实验接线图接线时,注意与 K5 相接的是INTA 而非 INTA. 2.在步骤一中,时序与操作台的KK 开关的按下表示将中断请求送
34、入CPU 中。3.外部总线与CPU 之间通过三态门连接,其三态门芯片是74LS245。三态分别为:截至,导通,高阻。 4EI 表示中断允许指示灯,EI 灭表示当前禁止响应外部中断。5当 EI 熄灭时,按动时序与控制台上的KK ,发现 KK 按下时, INTR 灯仍然为灭,此时为中断锁死了外部中断请求。四、思考题响应中断的条件是什么?答: 1、有中断源发出的中断请求;2、中断总允许位EA=1,即 CPU 开中断;3、申请中断的中断源的中断允许位为1,即中断没有被屏蔽;4、无同级或更高级中断正在被服务;5、当前的指令周期已经结束. 中断源的中断向量地址是通过数据线还是地址线送给?答:中断源的中断向
35、量地址是通过数据总线送入PC,因为PC 会指出下一个指令所在的地址,相当于一个跳转,直接跳转到中断服务程序,所以存入PC 以后,直接通过PC 取出下一条指令,而这条指令其实就是中断服务程序的指令。响应请求后,其地址线、数据线和控制线引脚出现什么状态?答:当 DMAC 要进行 DMA 传送时, DMAC 向 CPU 发出 DMA 请求信号,迫使CPU 在现行的总线周期(机器周期 )结束后,使其地址总线、数据总线和部分控制总线处于高阻态,精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 15 页,共 26 页从 而让出对总线的控制权,并给出DMA 响应信
36、号。DMAC 接到该响应信号后,就可以控制总线,进行数据传送的控制工作,直到DMA 操作完成, CPU 再恢 复对总线的控制权,继续执行被中断的程序。精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 16 页,共 26 页实验五微程序控制器实验一、实验目的 掌握时序产生器的组成方式。 熟悉微程序控制器的原理。 掌握微程序编制及微指令格式。二、实验内容 微程序控制电路微程序控制器的组成见图7-7-1 ,其中控制存储器采用4 片 6116静态存储器, 微命令寄存器 32 位,用三片8D 触发器 (273) 和一片 4D(175)触发器组成。微地址寄存器6
37、 位,用三片正沿触发的双D 触发器 (74) 组成,它们带有清零端和置位端。在不判别测试的情况下, T2 时刻打入微地址寄存器的内容即为下一条微指令地址。当T4 时刻进行测试判别时,转移逻辑满足条件后输出的负脉冲通过置位端将某一触发器输出端置为“1 ”状态,完成地址修改。 微指令格式表 7-7-1M25 M24 M23 M22 M21 中M19 M18 M17 M16 M15 M14 M13 M12 M11 M10 M9 M8 C B A AR 保留PX3 A9 A8 CE LOACN M S0 S1 S2 S3 PX2 LDAM7 M6 M5 M4 M3 M2 8 7 6 5 4 3 M1
38、M0 LDPC LDIR LDDR2 LDDR1 LDR0 WE UA0 UA1 UA2 UA3 UA4 UA5 PX1 SW-B A 字段B 字段C B A 选择0 0 0 禁止0 0 1 PC-B 0 1 0 ALU-B 0 1 1 299-B 1 0 0 Rs-B 1 0 1 Rd-B 1 1 0 保留位1 1 1 保留位中断M9 M1 选择测试字PX3 PX2 PX10 0 0 关闭测试0 0 1 P (1) 识别操作码0 1 0 P (2) 判寻址方式精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 17 页,共 26 页0 1 1 P (
39、Z) Z 标志测试1 0 0 P (I) 中断响应1 0 1 P (D) 中断服务1 1 0 P (C) C 标志测试1 1 1 保留位其中 UA5UA0为 6 位的后续微地址,A、B 二译码字段, 分别由 6 个控制位译码输出多位。 B 段中的 PX3 、PX2 、PX1 三个测试字位,其功能是根据机器指令及相应微代码进行译码,使微程序转入相应的微地址入口,从而实现微程序的顺序、分支、循环运行。 微程序流程与代码图 7-7-3为几条机器指令对应的参考微程序流程图,将全部微程序按微指令格式变成二进制代码,可得到模型机(一)所列举的8位指令代码。图 7-7-3 微程序流程图(1) 微 程 序的
40、编写为了解决微程序的编写,本装置设有微程序读写命令键,学生可根据微地址和微指令格精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 18 页,共 26 页式将微指令代码以快捷方式写入到微程序控制单元。具体的操作方法是按动位于本实验装置右中侧的复位按钮使系统进入初始待令状态。再按动【增址】命令键使工作方式提示位显示 “H”。微程序存贮器读写的状态标志是:显示器上显示8 个数字,左边1、 2 位显示实验装置的当前状态,左边3、 4 位显示区域号(区域的分配见表7-7-2),左边5、6 位数字是微存贮单元地址,硬件定义的微地址线是ua0ua5共 6 根,因此
41、它的可寻址范围为00H3FH;右边 2 位数字是该单元的微程序,光标在第7 位与第 8 位之间,表示等待修改单元内容。表 7-7-2区域号微程序区对应位空间对应位控制功能0 31 24 C B A AR 保留PX3 A9 A8 1 23 16 CE AD CN M S0 S1 S2 S3 2 15 8 PX2 AR PC IR DR2 DR1 Ri WE 3 7 0 U0 U1 U2 U3 U4 U5 PX1 SW 用【读】命令键可以对微程序存贮器进行检查(读出)或更改(写入)。对微程序存贮器读写,一般应先按MON ,使实验系统进入初始待命状态。然后输入所要访问的微程序区域地址,再按【读】命令
42、键,实验系统便以该区域的00H 作为起始地址,进入微程序存贮器读写状态。下面举例说明操作规程:图 7-7-1微控制器原理图精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 19 页,共 26 页按键8 位 LED 显示说明【返回】D Y - H P. 返回初始待命状态【读】D Y - H P. 初始待命状态,按【读】键无效0 D Y - H 0 按数字键0,从 0 区域 0 地址开始【读】C n 0 0 0 0 X X 按【读】命令键,进入微程序读状态,左边第 3 位起显示 00(区域号 )、00(微地址 )、XX( 该微程序单元的内容),光标闪动移
43、至第7 位55 C n 0 0 0 0 5 5 按 55 键,将内容写入00 区域 00H 单元【增址】C n 0 0 0 1 X X 按【增址】命令键,读出 00 区域下一个单元01H,光标重新移至第7位AA C n 0 0 0 1 A A 按 AA 键 ,将内容写入00 区域 01H 单元【返回】D Y - H P. 返回初始待命状态1 D Y - H 1 再按数字键1,从 1 区域 0 地址开始【读】C n 0 1 0 0 X X 按【读】命令键,进入微程序读状态,左边第 3 位起显示 01(区域号 )、00(微地址 )、XX( 该微程序单元的内容),光标闪动移至第7 位55 C n 0
44、 1 0 0 5 5 按 55 键,将内容写入01 区域 00H 单元【增址】C n 0 1 0 1 X X 按【增址】命令键,读出 01 区域下一个单元01H,光标重新移至第7位AA C n 0 1 0 1 A A 按 AA 键 ,将内容写入01 区域 01H 单元【返回】D Y - H P. 按【返回】退出存储操作返回初始状态按以上所说明的操作规程,通过键盘在微地址00H单元所对应的四个区域地址分别输入 55H ,在微地址01H 单元所对应的四个区域地址分别输入0AAH 。( 二) 手动方式下的微地址打入操作微程序控制器的组成见图7-7-1 ,其中微命令寄存器32 位,用三片8D 触发器
45、(273)和一片 4D(175)触发器组成。 它们的清零端由CLR 来控制微控制器的清零。它们的触发端CK 接 T2 , 在时序节拍的T2 时刻将微程序的内容打入微控制寄存器(含下一条微指令地址)。 微地址控制原理精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 20 页,共 26 页图 7-7-4 微地址控制原理图 微地址控制单元的实验连接图 7-7-5 实验连线示意图按图 7-7-5所示,连接实验电路: 总线接口连接: 用 8 芯扁平线连接图7-7-5中所有标明 “”或“”图案的总线接口。 时钟信号 “”连接:用双头实验导线连接图 7-7-5中所
46、有标明 “”图案的插孔(注: Dais-CMH的时钟信号已作内部连接)。 微地址的打入操作在“L ”状态下,首先置SW-B=0,然后向数据开关置数,再按【单步】键,在机器周期的 T2 时刻把数据开关的内容打入微地址锁存器。实验步骤如下:注:【单步】键的功能是启动时序电路产生T1T4四拍单周期脉冲 微地址的修改与转移按图 7-7-4所示,微地址锁存器的置位端R 受 SE5SE0控制,当测试信号SE5SE0精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 21 页,共 26 页输出负脉冲时,通过锁存器置位端R 将某一锁存器的输出端强行置“1 ”,实现微地
47、址的修改与转移。按微程序流程图7-7-3所示的微控制流程,对指令译码寄存器IR 分别打入微控制流程定义的操作码20H 、40H 、 60H 、80H 、0A0H ,然后打入流程图定义的基地址08H ,按【单步】键,在机器周期T4 节拍按微控制流程对IR 指令寄存器的内容进行测试和判别,使后续微地址转向与操作码相对应的微程序入口地址。举例操作如下: 当 IR 寄存器为20H 、微地址为08H 时,按【单步】键后微地址为09H 。 当 IR 寄存器为 60H 、 微地址为 08H时,按【单步】键后微地址为0BH 。注:【单步】键的功能是启动时序电路产生T1T4四拍单周期脉冲3、实验结果及分析精选学
48、习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 22 页,共 26 页四、思考题试解释控制存储器号单元中微指令的功能(微指令中有效控制信号的功能)。答:微指令有跳转和寻址的功能作用。若将你学号的后两位当成十六进制数,并将其作为机器指令代码,则根据本系统的译码规则得到的微地址是什么?答: 62H精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 23 页,共 26 页实验六CPU 与简单模型机设计实验一、实验目的1.掌握一个简单CPU 的组成原理。2.在掌握部件单元电路的基础上,进一步将其构造一台基本模型计算机。3
49、.为其定义五条机器指令,编写相应的微程序,并上机调试掌握整机概念。二、实验内容本实验要实现一个简单的CPU,并且在此CPU 的基础上,继续构建一个简单的模型计算机。CPU 由运算器 (ALU )、微程序控制器 (MC)、通用寄存器 (RO) 、指令寄存器 (IR)、程序计数器( PC)和地址寄存器(AR)组成,如图5-1-1 所示。这个CPU 在写入相应的微指令后,就具备了执行机器指令的功能,但是机器指令一般存放在主存当中,CPU 必须和主存挂接后,才有实际的意义,所以还需要在该CPU 的基础上增加一个主存和基本的输入输出部件,以构成一个简单的模型计算机。图 5-1-1 基本 CPU构成原理图
50、本模型机和前面微程序控制器实验相比,共有 5 条指令: IN( 输入 )、 ADD(二进制加法) 、OUT( 输出 )、JMP(无条件转移 )、 HLT(停机),其指令格式如下:助记符机器指令码说明IN 0010 0000 IN-RO ADD 0000 0000 RO+RO-RO OUT 0011 0000 RO-OUT HLT 0101 0000 停机均为单字节指令,*为 addr 对应的二进制地址码。微程序控制器实验的指令是AR 控制PC IR A B RALU 精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 24 页,共 26 页通过手动给出
51、的,现在要求CPU 自动从存储器读取指令并执行。3、实验结果及分析精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 25 页,共 26 页(1)程序运行前必须对微地址清零。拨动实验仪右下角清零开关CLR(101 )后,观看实验仪右上方的微地址显示灯(UA0-UA5 )是否全为零,若全为零,则正确,若不全为零,说明有问题,要检查。(2)使用单步微指令运行程序,单击该系统第三行的“ 单步微指令 ” 图标即可。(3)在每次单步执行一条微指令的过程中,都要观察屏幕动态流线显示的运行结果,根据屏幕显示的结果分析与该条微指令的格式和功能是否一致。若不一致,必须检
52、查原因。(4)上面程序的运行中,每执行完一条机器指令,微地址都要返回到01,是应为为取下一条指令作准备。(5)在每一条机器指令的执行过程中,第一个 CPU 周期, 取指令阶段是由下列微指令组成: 01 02。它们完成的操作是:PC AR,M DR ,DR IR ,PC+1。四、思考题使用本实验系统中提供的微程序,加法指令执行阶段需要几个机器周期?能否修改加法指令执行阶段的微程序,使其执行速度加快?如果可以,请给出修改方案。修改后用几个机器周期?答:因为加法指令执行阶段需要1 个机器周期,所以不能执行加速。精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 26 页,共 26 页