为了正常的体验网站,请在浏览器设置里面开启Javascript功能!
首页 > 计算机组成的实验

计算机组成的实验

2022-07-22 20页 doc 192KB 4阅读

用户头像

is_686908

暂无简介

举报
计算机组成的实验、``                 OP]、]][、实验一 运算器──算术逻辑运算器实验一 实验目的(1)掌握算术逻辑运算单元(ALU)的工作原理;(2)熟悉简单运算器的数据传送通路;(3)验证4位运算功能发生器功能(74181)的组合功能。二实验设备TDN-CM++计算机组成原理教学实验系统一台,排线若干。三实验原理图1 运算器数据通路实验中所用到的运算器数据通路如图1所示。其中运算器由两片74181以并/串形式构成8位字长的ALU。运算器的输出经过一个三态门(74245)和数据总线相连,运算器的两个数据输入端分别由两个...
计算机组成的实验
、``                 OP]、]][、实验一 运算器──算术逻辑运算器实验一 实验目的(1)掌握算术逻辑运算单元(ALU)的工作原理;(2)熟悉简单运算器的数据传送通路;(3)验证4位运算功能发生器功能(74181)的组合功能。二实验设备TDN-CM++计算机组成原理教学实验系统一台,排线若干。三实验原理图1 运算器数据通路实验中所用到的运算器数据通路如图1所示。其中运算器由两片74181以并/串形式构成8位字长的ALU。运算器的输出经过一个三态门(74245)和数据总线相连,运算器的两个数据输入端分别由两个锁存器(74373)锁存,锁存器的输入连接至数据总线,数据开关INPUTDEVICE用来给出参与运算的数据,并经过一个三态门(74245)和数据总线相连,数据显示灯“BUSUNIT”已和数据总线相连,用来显示数据总线内容。图中已将用户需要连接的控制信号用圆圈标明(其他实验相同,不再说明),其中除T4为脉冲信号,其它均为电平信号。由于实验电路中的时序信号均已连至W/RUNIT的相应时序信号引出端,因此,在进行实验时,只需将W/RUNIT的T4接至STATEUNIT的微动开关KK2的输出端,按动微动开关,即可获得实验所需的单脉冲,而S3,S2,S1,S0,Cn,LDDR1,LDDR2,ALU-B,SW-B各电平控制信号用SWITCHUNIT中的二进制数据开关来模拟,其中Cn,ALU-B,SW-B为低电平控制有效,LDDR1,LDDR2为高电平有效。四 实验步骤(1)按图2连接实验线路,仔细查线无误后,接通电源。(2)用二进制数码开关向DR1和DR2寄存器置数。具体操作步骤如 ::寄存器DR1(01100101)数据开关(10100111)寄存器DR1(01100101)三态门数据开关(01100101)ALU-B=1SW-B=0LDDR1=1LDDR2=0T4=LDDR1=0LDDR2=1T4=校验DR1和DR2中存放的数据是否正确,具体操作为:关闭数据输入三态门(SW-B=1),打开ALU输出三态门(ALU-B=0),当置S3,S2,S1,S0,M为11111时,总线指示灯显示DR1中的数,而置成10101时,总线指示灯显示DR2中的数。图2 实验接线图(3)验证74181的算术运算和逻辑运算功能(采用正逻辑)。在给定DR1=65,DR2=A7的情况下,改变运算器的功能设置,观察运算器的输出,填入1中,并和理论分析进行比较、验证。表1 正逻辑74181运算功能验证结果DR1 DR2 S3 S2 S1 S0M=0(算术运算)M=1(逻辑运算)Cn=1无进位Cn=0有进位65A70 0 0 0F=(65)F=(66)F=(9A)65A70 0 0 1F=(E7)F=(E8)F=(18)65A70 0 1 0F=(7D)F=(7E)F=(82)0 0 1 1F=( )F=( )F=( )0 1 0 0F=( )F=( )F=( )0 1 0 1F=( )F=( )F=( )0 1 1 0F=( )F=( )F=( )0 1 1 1F=( )F=( )F=( )1 0 0 0F=( )F=( )F=( )1 0 0 1F=( )F=( )F=( )1 0 1 0F=( )F=( )F=( )1 0 1 1F=( )F=( )F=( )1 1 0 0F=( )F=( )F=( )1 1 0 1F=( )F=( )F=( )1 1 1 0F=( )F=( )F=( )1 1 1 1F=( )F=( )F=( )实验二 运算器──进位控制实验一 实验目的(1)验证带进位控制的算术运算功能发生器的功能;(2)按指定数据完成几种指定的算术运算。二 实验设备TDN-CM++计算机组成原理教学实验系统一台,排线若干。三 实验内容进位控制运算器的实验原理如图3所示,在算术逻辑运算实验的基础上增加进位控制部分,其中74181的进位进入一个7474锁存器,其写入是由T4和AR信号控制,T4是脉冲信号,实验时将T4连至STATEUNIT的微动开关KK2上。AR是电平控制信号(低电平有效),可用于实现带进位控制实验,而T4脉冲是将本次运算的进位结果锁存到进位锁存器中。图3 进位控制实验原理图线图四 实验步骤 (1)按图4连接实验线路,仔细查线无误后,接通电源。(2)用二进制数码开关向DR1和DR2寄存器置数,具体方法:①关闭ALU输出三态门(ALU-B=1),开启输入三态门(SW-B=0),设置数据开关;②例如向DR1存入01010101,向DR2存入10101010。具体操作步骤如下:LDDR1=0LDDR2=0图4 进位控制实验接线图线图(3) 关闭输入三态门(SW-B=1),开启ALU输出三态门(ALU-B=0)。(4) 进位标志清零具体操作方法如下:实验板中SWITCHUNIT单元中的CLR开关为标志CY,ZI的清零开关,它为零时是清零状态,所以依次将开关做1→0→1操作,即可使标志位清零。注:进位标志指示灯CY亮时表示进位标志为“0”,无进位:标志指示灯CY灭时表示进位为“1”,有进位.(5) 验证带进位运算及进位锁存功能,使Cn=1,AR=0来进行带进位算术运算。例如:做加法运算,首先向DR1,DR2置数,然后使ALU-B=0,S3S2S1S0M状态为10010,此时数据总线上显示的数据为DR1加DR2加当前进位标志,这个结果是否产生进位,则要按动微动开关KK2,若进位标志灯亮,表示无进位;反之,有进位。因做加法运算时数据总线一直显示的数据为DR1DR2CY,所以当有进位打入到进位锁存器后,总线显示的数据为加上进位位的结果。实验三 运算器──移位运算实验一 实验目的验证移位寄存器控制的组合功能。二实验设备  TDN-CM++计算机组成原理教学实验系统一台,排线若干。三 实验内容 原理图5 移位运算实验原理图线图移位运算实验原理图如图5所示,使用了一片74299作为移位发生器,其8输入/输出端以排线方式和总线单元连接。299-B信号控制其使能端,T4时序为其时钟脉冲,实验时将W/RUNIT中的T4接至STATEUNIT中的KK2单脉冲发生器,由S0,S1,M控制信号控制其功能状态,如表2所示。表2 移位状态控制表299-BS1S0M功    能000任意保持0100循环右移0101带进位循环右移0010循环左移0011带进位循环左移任意11任意装数四 实验步骤(1)按图6连接实验线路,仔细查线无误后,接通电源。STATEUNITW/RUNITKK2T4ALUUNITMS0S1299-BAUJ1…BUSUNIT…S0S1M299-BSW-BSW-BSWJ3SWITCHUNITBUSUNIT图6 位运算实验接线图(2)移位操作:①置数,具体步骤如下:数据开关(01010101)数据开关(01101011)三态门三态门SW-B=0SW-B=1S0=1S1=1T4=②移位,参照表2改变S0,S1,M,299-B的状态,按动微动开关KK2,观察移位结果。实验四 存储器──静态随机存储器实验一 实验目的掌握静态随机存储器RAM工作特性及数据的读写方法。二 实验设备  TDN-CM++计算机组成原理教学实验系统一台,排线若干。三 实验内容 原理实验所用的半导体静态存储器电路原理如图7所示,实验中的静态存储器由一片6116(2K×8)构成,其数据线接至数据总线,地址线由地址锁存器(74273)给出。地址灯AD0--AD7与地址线相连,显示地址线内容。数据开关经一三态门(74245)连至数据总线,分时给出地址和数据。图7 存储器实验原理图因地址寄存器为8位,接入6116的地址A7—A0,而高三位A8—A10接地,所以其实际容量为256字节。6116有三个控制线:CE(片选线)、OE(读线)、WE(写线)。当片选有效(CE=0)时,OE=0时进行读操作,WE=0时进行写操作。本实验中将OE常接地,在此情况下,当CE=0、WE=0时进行读操作,CE=0、WE=1时进行写操作,其写时间与T3脉冲宽度一致。实验时将T3脉冲接至实验板上时序电路模块的TS3相应插孔中,其脉冲宽度可调,其它电平控制信号由SWITCH UNIT单元的二进制开关模拟,其中SW-B为低电平有效,LDAR为高屯平有效。四 实验步骤(1)形成时钟脉冲信号T3。。具体接线方法和操作步骤如下:①接通电源,用示波器接入方波信号源的输出插孔H23,调节电位器W1,使H23端输出实验所期望的频率的方波。②将时序电路模块中的φ和H23排针相连。③在时序电路模块中有两个二进制开关STOP和STEP 。将STOP开关置为“RUN”状态、STEP开关置为“EXEC”状态时,按动微动开关START,则T3输出为连续的方波信号。此时,调节电位器W1,用示波器观察,使T3输出实验要求的脉冲信号。当STOP开关置为“RUN”状态、STEP开关置为“STEP”状态时,每按动一次微动开关START,则T3输出一个单脉冲,其脉冲宽度与连续方式相同。④关闭电源。(2)按图8连接实验线路,仔细查线无误后,接通电源。由于存储器模块内部的连线已经接好,因此只需完成实验电路的形成、控制信号模拟开关、时钟脉冲信号T3与存储模块的外部连接。.15存储器实验接线图图8 存储器实验接线图(3)给存储器的00,01,02,03,04地址单元分别写入数据11,12,13,14,15。具体步骤如下:(以向0单元写入11为例)存储器RAM(00010001)SW-B=0CE=1,WE=1LDAR=0T3=三态门SW-B=1数据开关(00010001)三态门数据开关(00000000)地址寄存器AR(00000000)SW-B=0LDAR=0SW-B=1SW-B=0CE=1SW-B=0CE=1LDAR=1T3=(4)依次读出第00、01、02、03、04号单元中的内容,观察上述各单元的内容是否与前面写的写入的一致,具体步骤如下:(以从0号单元读出11数据为例)地址寄存器AR(00000000)存储器RAM(00010001)SW-B=1数据开关(00000000)三态门SW-B=0CE=1LDAR=1T3=SW-B=0CE=1SW-B=0CE=0WE=0LDAR=0实验五 微程序控制器实验一 实验目的(1)掌握时序产生器的组成原理。(2)掌握微程序控制器的组成原理。(3)掌握微程序的编制、写入,观察微程序的运行。二 实验设备TDN-CM++计算机组成原理教学实验系统一台,排线若干。三 实验内容 1)原理图9 时序电路框图实验所用的时序控制电路框图如图9所示,可产生4个等间隔的时序信号TS1--TS4。其中:φ为时钟信号,由实验台右上方的方波信号源提供,可产生频率及脉宽可调的方波信号。学生可根据实验自行选择方波信号的频率及脉宽。图中STEP(单步)、STOP(停机)分别是来自实验板上方中部的两个二进制开关STEP,STOP的模拟信号。START键是来自实验板上方左部的一个微动开关START的按键信号。当STEP开关为0时(EXEC),一旦按下启动键,时序信号TSI--TS4将周而复始地发送出去。当STEP为1(STEP)时,一旦按下启动键,机器便处于单步运行状态,即此时只发送一个CPU周期的时序信号就停机。利用单步方式,每次只读一条微指令,可以观察微指令的代码与当前微指令的执行结果。另外,当机器连续运行时,如果STOP开关置“1”(STOP),也会使机器停机,或使CLR开关拨至零也可以使时序清零。时序状态图17。由于时序电路的内部线路已经连好,所以只需将时序电路与方波信号源连接,即将时序电路的时钟脉冲输入端φ接至方波信号发生器输出端H23,就可产生时序信号TS1--TS4。时序电路的CLR已接至实验板左下方的CLR模拟开关上。2)微程序控制电路与微指令格式(A)微程序控制电路微程序控制器的组成见图10,其中控制存储器采用3片2816的E2PROM,具有掉电保护功能,微命令寄存器18位,用两片8D触发器(74273)和一片4D(74175)触发器组成。微地址寄存器6位,用三片正沿触发的双D触发器(7474)组成,它们带有清“0”端和预置端。在不判别测试的情况下,T2时刻打入微地址寄存器的内容即为下一条微指令地址。当T4时刻进行测试判别时,转移逻辑满足条件后输出的负脉冲通过强置端将某一触发器置为“1”状态,完成地址修改。在该实验电路中设有一个编程开关(位于实验板右上方),它具有三种状态:PROM (编程)、READ(校验)、RUN(运行)。当处于“编程状态”时,实验者可根据微地址和微指令格式将微指令二进制代码写入到控制存储器2816中。当处于“校验状态”时,可以对写入控制存储器中的二进制代码进行验证,从而可以判断写入的二进制代码是否正确。当处于“运行状态”时,只要给出微程序的入口微地址,则可根据微程序图自动执行微程序。图中微地址寄存器输出端增加了一组三态门,目的是隔离触发器的输出,增加抗干扰能力,并用来驱动微地址显示灯。图10微程序控制器原理图(B)微指令格式微指令字长共24位,其控制位顺序如图11所示。图11 微指令格式图12地址转移逻辑电路其中UA5--UA0为6位的后续微地址,A,B,C为三个译码字段,分别由三个控制位译码出多个微命令。C字段中的P(1)--P(4)是四个测试字位。其功能是根据机器指令及相应微代码进行译码,使微程序转入相应的微地址入口,从而实现微程序的顺序、分支、循环运行,其原理如图12所示。图中I7一I2为指令寄存器的第7--2位输出,SE5--SE1为微程序控制器单元微地址锁存器的强置端输出。AR为算术运算是否影响进位及判零标志控制位,其为零有效。B字段中的RS-B,R0-B,RI-B分别为源寄存器选通信号、目的寄存器选通信号及变址寄存器选通信号,其功能是根据机器指令来进行三个工作寄存器R0,R1及R2的选通译码,其原理如图13所示。图中,I0--I4为指令寄存器的第0—4为,LDRi为打入工作寄存器信号的译码器使能控制位。Y2图13 寄存器选通译码电路四 实验步骤八进制地址(1) 图14为几条机器指令对应的参考微程序流程图,将全部微程序按指令格式变成二进制代码,可得到表3所示的二进制代码表。01表3 微程序代码表微地址S3 S2 S1 S0 MCnWEA9 A8ABCμA5--μA0000 0 0 0 0 0 0 1 1000000100010000010 0 0 0 0 0 0 1 1110110110000010020 0 0 0 0 0 0 0 1100000001001000030 0 0 0 0 0 0 0 1110000000000100040 0 0 0 0 0 0 0 1011000000000101050 0 0 0 0 0 0 1 1010001000000110061 0 0 1 0 1 0 1 1001101000000001070 0 0 0 0 0 0 0 1110000000001101100 0 0 0 0 0 0 0 0001000000000001110 0 0 0 0 0 0 1 1110110110000011120 0 0 0 0 0 0 1 1110110110000111130 0 0 0 0 0 0 1 1110110110001110140 0 0 0 0 0 0 1 1110110110010110150 0 0 0 0 0 1 0 1000001000000001160 0 0 0 0 0 0 0 1110000000001111170 0 0 0 0 0 0 0 1010000000010101200 0 0 0 0 0 0 1 1110110110010010210 0 0 0 0 0 0 1 1110110110010100220 0 0 0 0 0 0 0 1010000000010111230 0 0 0 0 0 0 1 1000000000000001240 0 0 0 0 0 0 0 0010000000011000250 0 0 0 0 1 1 1 0000101000000001260 0 0 0 0 0 0 0 1101000110000001270 0 0 0 0 1 1 1 0000101000010000300 0 0 0 0 1 1 0 1000101000010001(2)按图15连接实验线路,仔细查线无误后,接通电源。…(3)观测时序信号用双踪示波器(或用PC示波器功能)观察方波信号源的输出,时序电路中的STOP开关置为“RUN”,STEP开关置为"EXEC”。按动START按键,从方波器上可观察到TS1,TS2,TS3,TS4各点的波形。比较它们的相互关系,画出其波形,并标注测量所得的脉冲宽度,如见图16所示。图16 时序波形图(4) 观察微程序控制器的工作原理:(A)编程① 将编程开关置为PROM(编程)状态。②将实验板上STATEUNIT中的STEP置为“STEP”,STOP置为“RUN”状态。③用二进制模拟开关置微地址μA5一μA0。④在MK24--MK1开关上置微代码,24位开关对应24位显示灯,开关量为“0”时灯亮,开关量为“1”时灯灭。⑤启动时序电路(按动启动按纽START),即将微代码写入到E2PROM2816的相应地址对应的单元中。⑥重复C—E步骤,将表12的微代码写入2816。(B)校验①将编程开关设置为READ(校验)状态。②将实验板的STEP开关置为“STEP”状态,STOP开关置为“RUN”状态。③用二进制开关置好微地址μA5一μA0。④按动START键,启动时序电路,读出微代码.观察显示灯MD24--MD1的状态(灯亮为“0”,灭为“1”),检查读出的微代码是否与写入的相同。如果不同,则将开关置于PROM编程状态,重新执行①即可,(C)单步运行①将编程开关置于“RUN”状态。②实验板的STEP及STOP开关保持原状。③操作CLR开关(拨动开关在实验板右下角)使CLR信号1→0→1,微地址寄存器μA5一μA0清零,从而明确本机的运行入口微地址为000000(二进制)。④按动“START”键,启动时序电路,则每按动一次启动键,读出一条微指令后停机,此时实验台上的微地址显示灯和微命令显示灯将显示所读出的一条指令。注意:在当前条件下,可将MICRO-CONTROLLER单元的SE6--SE1接至SWITCHUNIT中的S3--Cn对应二进制开关上,可通过强置端SE1--SE6人为设置分支地址。将SE1--SE6对应二进制开关量置为“1”,当需要人为设置分支地址时,将某个或几个二进制开关置“0”,相应的微地址位即被强置为“1”,从而改变下一条微指令的地址。(二进制开关置为“0”,相应的微地址位将被强置为“1”)(D)连续运行①将编程开关置为“RUN”状态。②将实验板的单步开关STEP置为“EXEC”状态。③使CLR从1→0→1,此时微地址寄存器清“0”,从而给出取指微指令的入口地址为000000(二进制)。④启动时序电路,则可连续读出微指令。实验6 总线控制器实验一 实验目的(1)理解总线的概念及其特性。(2)掌握总线传输控制特性。二 实验设备TDN-CM++计算机组成原理教学实验系统一,排线若干。三 实验内容1)总线的基本概念总线是多个系统部件之间进行数据传送的公共通路,是构成计算机系统的骨架。借助总线连接,计算机在系统各部件之间实现传送地址、数据和控制信息的操作。因此,所谓总线就是指能为多个功能部件服务的一组公用信息线。2)实验原理实验所用总线传输实验框图如图17所示,它将几种不同的设备挂至总线上,有存储器、输入设备、输出设备、寄存器。这些设备都需要有三态输出控制,按照传输要求恰当有序的控制它们,就可进行总线信息传输。3)实验要求  根据挂在总线上的几个基本部件,设计一个简单的流程:总线(1)输入设备将一个数打入R0寄存器。(2)输入设备将另一个数打入地址寄存器。(3)将R0寄存器中的数写入到当前地址的存储器中。(4)将当前地址的存储器中的数用LED数码管显示。四 实验步骤(1)按照图18实验接线图进行连线。LDAR(2)具体操作步骤图示如下:初始状态应设为:关闭所有三态门(SW-B=1,CS=1,R0-B=1,LED-B=1),其他控制信号为LDAR=0,LDR0=0,W/R(RAM)=1,W/R(LED)=1。W/R(LED)=实验七 基本模型机的设计与实现一 实验目的(1)在掌握部件单元电路实验的基础上,进一步将其组成系统,构造一台基本模型计算机。(2)为其定义五条机器指令,并编写相应的微程序,具体上机调试掌握整机概念二 实验设备TDN—CM++计算机组成原理教学实验系统一台,排线若干。三实验内容1)实验原理部件实验过程中,各部件单元的控制信号是人为模拟产生的,而本次实验将能在微程序控制下自动产生各部件单元控制信号,实现特定指令的功能。这里,计算机数据通路的控制将由微程序控制器来完成,CPU从内存中取出一条机器指令到指令执行结束的一个指令周期全部由微指令组成的序列来完成,即一条机器指令对应一个微程序。本实验采用五条机器指令:IN(输入),ADD(二进制加法),STA(存数),OUT(输出),JMP(无条件转移)。其指令格式如下(前4位为操作码):助记符    机器指令码        说明IN      00000000      “INPUTDEVICE”中的开关状态→R0ADD addr   00010000 ×××××××× R0[addr]→R0STA   addr   00100000 ×××××××× R0→[addr]OUT addr   00110000 ×××××××× [addr]→LEDJMP   addr   01000000 ×××××××× addr→PC其中::IN为单字长(8位),其余为双字长指令,××××××××为addr对应的二进制地址码。为了向RAM中装入程序和数据,检查写入是否正确,并能启动程序执行,还必须设计三个控制台操作微程序。*存储器读操作(KRD):拨动总清开关CLR后,控制台开关SWB、SWA为“00”时,按START微动开关,可对RAM连续手动读操作。*存储器写操作(KWE):拨动总清开关CLR后,控制台开关SWB、SWA置为“01”时,按START微动开关可对RAM进行连续手动写入。*启动程序:拨动总清开关CLR后,控制台开关SWB、SWA置为“11”时,按START微动开关,即可转入到第01号“取址”微指令,启动程序运行。上述三条控制台指令用两个开关SWB,SWA的状态来设置,其定义如表4所示。表4 控制台的开关设置SWBSWA控制台指令001011读内存(KRD)写内存(KWE)启动程序(RP)根据以上要求,可设计数据通路框图,如图19所示。微指令定义如表4所示。系统涉及到的微程序流程如图21所示。当拟定“取指”微指令时,该微指令的判别测试字段为P(1)测试。由于“取指”微指令是所有微程序都使用的公用微指令,因此P(1) 的测试结果出现多路分支。本机用指令寄存器的前4位(IR7一IR4)作为测试条件,出现5路分支,占用5个固定微地址单元。控制台操作为P(4)测试,它以控制台开关SWB,SWA作为测试条件,出现了3路分支,占用3个固定微地址单元。当分支微地址单元固定后,剩下的其他地方就可以一条微指令占用控存一个微地址单元随意填写。注意:微程序流程图上的单元地址为8进制。当全部微程序设计完毕后,应将每条微指令代码化,表5即为将图21的微程序流程图按微指令格式转化而成的“二进制微代码表”。图19 数据通路框图下面介绍指令寄存器(IR):指令寄存器用来保存当前正在执行的一条指令。当执行一条指令时,先把它从内存取到缓冲寄存器中,然后再传送至指令寄存器。指令划分为操作码和地址码字段,由二进制数构成,为了执行任何给定的指令,必须对操作码进行测试[P(1)],通过节拍脉冲T4的控制以便识别所要求的操作。“指令译码器”(实验板上标有“INSDECODE”的芯片)根据指令中的操作码译码强置微控器单元的微地址,使下一条微指令指向相应的微程序首地址。本系统有两种外部I/O设备,一种是二进制代码开关,它作为输入设备(INPUTDEVICE):另一种是数码块,它作为输出设备(OUTPUTDEVICE)。例如:输入时,二进制开关数据直接经过三态门送到总线上,只要开关状态不变,输入的信息也不变。输出时,将输出数据送到数据总线上,当写信号(W/R)有效时,将数据打入输出锁存器,驱动数码块显示。本实验设计机器指令程序如下:地址(二进制) 内容(二进制)  助记符        说 明00000000  00000000  IN  R0       “INPUTDEVICE”→R000000001  00010000  ADD [0AH],R0    R0[0AH]→R000000010  0000101000000011  00100000  STA R0,[0BH]    R0→[0BH]00000100  00001011  00000101  00110000  OUT [0BH]      [0BH]→LED00000110  00001011  00000111  01000000  JMP 00H       00H→PC00001000  0000000000001001  00001010  00000001              自定00001011                    求和结果四 实验步骤  (1)按图20连接实验线路。图20 基本模型机实验接线图(2)写程序 方法一:手动写入①先将机器指令对应的微代码正确地写入2816中,由于在微程序控制实验中已将微代码写入E2PROM芯片中,对照表5校验正确后就可使用。② 使用控制台KWE和KRD微程序进行机器指令程序的装入和检查。A.使编程开关处于“RUN",STEP为“STEP”状态,STOP为“RUN”状态。B.拨动总清开关CLR(0→1),微地址寄存器清零,程序计数器清零。然后使控制台SWB,SWA开关置为“01”,按动一次启动开关START,微地址显示灯显示“010001”,再按动一次START,微地址灯显示“010100"。此时,数据开关的内容置为要写入的机器指令,按动两次START键后,即完成该条指令的写入。若仔细阅读KE的流程,就不难发现,机器指令的首地址总清后为零,以后每个循环PC会自动加1,所以,每次按动START,只有在微地址灯显示“010100”时,才设置内容,直到所有机器指令写完。C.写完程序后须进行校验。拨动总清开关CLR(0→1)后,微地址清零。PC程序计数器清零,然后使控制台开关SWB,SWA为“00”,按动启动START,微地址灯将显示“010000”;再按START,微地址灯显示为“010010";第3次按START,微地址灯显示为“010111”,再按START后,此时输出单元的数码管显示为该首地址中的内容。不断按动START,以后每个循环PC会自动加1,可检查后续单元内容。每次在微地址灯显示为“010000”时,是将当前地址中的机器指令写入到输出设备中显示。方法二:联机读/写程序按照规定格式,将机器指令及表5微指令二进制表编辑成十六进制的如下格式文件。微指令格式中的微指令代码为将表5中的24位微代码按从左到右分成3个8位,将此3个8位二进制代码化为相应的十六进制数即可。程 序$P4000$P4110$P420A机器指令格式说明:$P××××机器指令代码十六进制地址$P4320$P440B$P4530微指令格式说明:$M××××××微指令代码十六进制地址$P460B$P4740$P4800$P4A01微程序 $M00018110      $M0901ED83        $M1200A017$M0101ED82      $M0A0IED87        $M13018001$M0200C048      $M0B01ED8E       $M14002018$M0300E004      $M0C01ED96       $M15070A01$M0400B005      $N0D028201        $M1600D181$M0501A206      $M0E00E00F        $M17070A10$M06959A01      $M0F00A015        $M18068A11$M0700E00D      $M1001ED92        $M18068A11$M08001001      $M1101ED94        用联机软件的传送文件功能(F4)将该格式文件传入实验系统即可,(3)运行程序(A)单步运行程序①使编程开关处于“RUN”状态,STEP为“STEP”状态,STOP为“RUN”状态。②拨动总清开关CLR(0→1),微地址清零,程序计数器清零。程序首址为00H。③单步运行一条微指令,每按动一次START键,即单步运行一条微指令。对照微程序流程图,观察微地址显示灯是否和流程一致。④当运行结束后,可检查存数单元(0BH)中的结果是否和理论值一致。(B)连续运行程序①使“STATEUNIT”中的STEP开关置为“EXEC”状态。STOP开关置为“RUN”状态。②拨动CLR开关,清微地址及程序计数器,然后按动START,系统连续运行程序,稍后将STOP拨至“STOP”时,系统停机。③停机后,可检查存数单元(0BH)结果是否正确。**若联机运行程序时,进入DEBUG调试界面,总清开关CLR(1→0→1)清零后,程序首址为00H,按相应功能键即可联机运行、调试程序。(软件使用说明请看(   10.8))实验八 带移位运算的模型机的设计与实现一 实验目的(1)熟悉用微程序控制器控制模型机的数据通路。(2)学习设计与调试计算机的基本步骤及方法。二 实验设备TDN-CM++计算机组成原理教学实验系统一台,排线若干。三 实验内容1)实验原理本实验在基本模型机的基础上搭接移位控制电路,实现移位控制运算。实验中新增4条移位运算指令:RL(左环移)、RLC(带进位左环移)、 RR(右环移)、RRC(带进位右环移),其指令格式如下:操作码RR   01010000RRC   01100000RL    01110000RLC    10000000以上4条指令都为单字长(8位)。RR为将R0寄存器中的内容循环右移1位。RRC为将R0寄存器中的内容带进位右移1位,它将R0寄存器中的数据右边第1位移入进位,同时将进位寄存器的数移至R0寄存器的最左位。RL为将R0寄存器中的数据循环左移1位。RLC为将R0寄存器中的数据带进位循环左移1位。为了向RAM中装入程序和数据,检查写入是否正确,并能启动程序执行,还设计了3个控制台操作微程序。存储器读操作(KRD):拨动总清开关CLR后,控制台开关SWB,SWA为“00”时,按START启动纽,可对RAM连续手动读操作。存储器写操作(KWE):拨动总清开关CLR后,控制台开关SWB,SWA置为“01”时,按动START启动纽可对RAM进行连续手动写入。启动程序:拨动总清开关CLR后,控制台开关SWB,SWA置为“11”时,按动启动键,即可转入到第01号“取址”微指令上述3条控制台指令用两个开关SWB,SWA的状态来设置,其定义如表6所示。实验数据通路框图如图23所示(可忽略其中的R1和R2)。图21带移位运算模型机微程序流程图本实验设计机器指令程序如下:地址(二进制)  内 容(二进制) 助记符     说 明00000000    00000000    IN      “INPUTDEVICE”→R000000001    00010000    ADD[0DH] R0[0DH]→R0R000000010    0000110100000011      10000000    RLC00000100    00000000    IN      “INPUTDEVICE”→R000000101    01100000      RRC00000110      01110000      RL00000111      00100000    STA [0EH]    R0→[0EH]00001000    0000111000001001    00110000      OUT [0EH]   [0EH]→LED00001010    0000111000001011      01000000    JMP 00H   00H→PC00001100      0000000000001101      01000000    自定00001110              存数单元将微代码流程图代码化,本实验给出将微程序二进制代码转化成十六进制格式文件。机器指令及微程序按照规定格式编写成十六进制格式文件,具体内容如下:程序 $P0000      $P0720$P0110      $P080E$P020D      $P0930$P0380      $P0A0E$P0400      $P0B40$P0560      $P0C00$P0670      $P0D40微程序$M1900EO1A$M1A00A01B$M1B070A01$M1C00D181$M1D21881E$M1E019801$M1F298820$M20019801$M21118822$M22019801$M23198824$M24019801$M0D068A09$M0E070A08$M0F028201$M10001001$M1101ED83$M1201ED87$M1301ED99$M1401EDgC$M1531821D$M1631821F$M17318221$M18318223$M1900E01A$M00018108$M0101ED82$M0200C050$M0300E004$M0400B005$M0501A206$M06959A01$M0700E00F$M0S01ED8A$M0901ED8C$M0A00A00E$M0B018001$M0C00200D四 实验步骤(1)按图22连接实验线路,仔细查线无误后,接通电源。(2)写 微程序:与PC联机,将实验微程序装入TDN-CM++机中或脱机时手动将本实验微程序写入TDN-CM++中,手动写入的具体方法如下:(A)编程①将编程开关置为PROM(编程)状态。②将实验板上STATEUNIT中的STEP置为“STEP”,STOP置为“RUN”状态。③用二进制模拟开关置微地址μA5--μA0(如图22须将此6线排针接开关单元)。图22 带移位运算基本模型机实验接线图④在MK24--MK1开关上置微代码,24位开关对应24位显示灯,开关量为“0”时灯亮,开关量为“1”时灯灭。⑤启动时序电路(按动启动按纽START),即将微代码写入到E2PROM2816的相应地址对应的单元中。⑥重复③~⑤步骤,将本实验给出的十六进制格式文件转换的二进制代码写入2816。  本实验微指令格式如下:(B)校验①将编程开关设置为READ(校验)状态。②将实验板的STEP开关置为“STEP”状态,STOP开关置为“RUN”状态。③用二进制开关置好微地址μA5--μA0。④按动START键,启动时序电路,读出微代码.观察显示灯MD24~MD1的状态(灯亮为“0”,灭为“1”),检查读出的微代码是否与写入的相同。如果不同,则将开关置于PROM编程状态,重新执行(A)即可。(3)写程序方法一:手动写入。使用控制台KWE和KRD微程序进行机器指令程序的装入和检查。  :①使编程开关处于"RUN”,STEP为“STEP”状态,STOP为“RUN”状态。②拨动总清开关CLR(0→1),微地址寄存器清零,程序计数器清零,然后控制台SWB,SWA开关置为“01”,按动一次启动开关START,微地址显示灯显示“001001”, 再按动一次START,微地址灯显示“001100”,此时数据开关的内容置为要写入的机器指令,按动两次START键后,即完成该条指令的写入。若仔细阅读KWE的流程,就不难发现,机器指令的首地址总清后为00H,以后每个循环PC自动加1,所以,每次按动START,只有在微地址灯显示“001100”时,才设置内容,直到所有机器指令写完。③写完程序后须进行校验。拨动总清开关CLR(0→1)后,微地址清零。PC程序计数器清零,然后使控制台开关SWB,SWA为“00”,按动启动START,微地址灯将显示“001000";再按START,微地址灯显示为“001010”;第3次按START,微地址灯显示为“001110”;再按START后,此时输出单元的数码管显示为该首地址中的内容。不断按动START,以后每个循环PC会自动加1,可检查后续单元内容。每次在微地址灯显示为“001000”时,是将当前地址中的机器指令写入到输出设备中显示。方法二:联机读/写程序。使用软件中的F4_LOAD功能装入机器指令格式文件或F2_R/WPR功能逐条写入。(4)运行程序。①单步运行程序:A.使编程开关处于“RUN”状态,STEP为“STEP”状态,STOP为“RUN”状态。B.拨动总清开关CLR(0→1),微地址清零,程序计数器清,程序首址为00H。C.单步运行一条微指令,每按动一次START键,即单步运行一条微指令。对照微程序流程图,观察微地址显示灯是否和流程一致。D.当运行结束后,可检查存数单元(0EH)中的结果是否和理论值一致②连续运行程序:A.使STATEUNIT中的STEP开关置为“EXEC”状态,STOP开关置为“RUN”状态。B.拨动CLR开关,清微地址及程序计数器,然后按动START,系统连续运行程序,稍后将STOP拨至“STOP”时,系统停机。C.停机后,可检查存数单元(0EH)结果是否正确。*若联机运行程序时,进入DEBUG调试界面,总清开关CLR(0→1)清零后,程序相应首址为00H,按相应功能键即可联机运行、调试程序。(软件使用说明请看10.8) *存放机器指令的RAM中0DH单元自定,0EH单元存放结果。参照机器指令及微程序流程图,将实验现象与理论分析比较。课程设计 一台复杂模型机的设计与实现一 实验目的综合运用所学计算机原理知识,设计并实现较为完整的计算机。二 实验设备TDN-CM++计算机组成原理教学实验系统一台,排线若干。三 数据格式及指令系统1)数据格式模型机规定采用定点补码表示法表示数据,且字长为8位,其格式如下:76 5 4 3 2 1 0符号数  据其中,第7位为符号位,数值表示范围是:-1≤X<1。2)指令格式模型机设计4大类指令共16条,其中包括算术逻辑指令、I/O指令、访问及转移指令和停机指令。(A)算术逻辑指令设计9条算术逻辑指令并用单字节表示,寻址方式采用寄存器直接寻址,其格式如下:765432 1 0OP-CODERsRd其中,OP-CODE为操作码,Rs为源寄存器,Rd为目的寄存器,并规定:9条算术逻辑指令的名称、功能和具体格式见表14。(B)访问指令及转移指令模型机设计2条访问指令,即存数(STA)、取数(LDA);2条转移指令,即无条件转移(JMP)、结果为零或有进位转移指令(BZC)。设计9条算术逻辑指令并用单字节表示,寻址方式采用寄存器直接寻址,其格式如下:765432 1000MOP-CODERdD其中,OP-CODE为操作码,Rd为目的寄存器,D为位移量(正负均可),M为寻址方式,其定义如下:寻址方式有效地址说 明00011011E=DE=(D)E=(R2)DE=(PC)D直接寻址间接寻址R2为变址寻址相对寻址(C)输入输出指令765432 1 0OP-CODEaddrRd其中,addr=01时,选中“INPUTDEVICE”中的开关组作为入设备,addr=10时,选中OUTPUTDEVICE中的数码快作为输出设备。(D)停机指令格式如下:7 6 5 4 3 2 1 0OP-CODE0000这类指令只有1条,即停机指令HALT。3)指令系统本模型机共有16条基本指令。其中,算术逻辑指令7条,访问内存指令和程序控制指令4条,输入输出指令2条,其他它指令1条。表5列出了各条指令的格式、汇编符号、指令功能。四 总体设计本模型机的数据通路如图23所示。根据机器指令系统要求,设计微程序流程图及确定微地址,如图24所示。按照图18所示的微指令格式参照指令流程图,将每条微指令代码化,译成二进制代码表,并将二进制代码转换为联机操作时的十六进制格式文件。表5 指令系统编码序号汇编符号指令格式功能说明1CLR Rd011100Rd0→Rd2MOVRS,Rd1000RSRdRS→Rd3ADCRS,Rd1001RSRdRs+Rd+Cy→Rd4ABCRS,Rd1010RSRdRs-Rd-Cy→Rd5INCRd1011--RdRd+1→Rd6ANDRS,Rd1100RSRdRs∧Rd →Rd7COMRd110100RdRd →Rd8RRCRS,Rd111000RdRd带进位右循环一位,RS→Rd9RLCRS,Rd1111RsRdRd带进位左循环一位,RS→Rd10LDAM,D,Rd00M00Rd,DE→RS11STAM,D,Rd00M01Rd,DRd→E12JMPM,D00M1000,DE→PC13BZCM,D00M1100,D当CY=1或或=1时,E→PC14INaddr,Rd010001Rdaddr→Rd15OUTaddr,Rd010110RdRd→addr16HALT01100000停机实验程序如下:程序    助记符$P0044    IN    01,R0$P0146    IN    01,R2$P0298    ADC  R2,R0$P0381    MOV  R0,R1$P04F5    RLC    R1,R1$P050C    BZC    00,00$P0600    $M0D00A00E$M0E01B60F$M0F95EA25$M1001ED83$M1101ED85$M1201ED8D$M1301EDA6$M14001001$M15030401$M16018016$M173D9A01$M18019201$M1901A22A$M3405DB81$M35B99B41$M360D9A01$M37298838$M38019801$M3919883A$M3A019801$M3B070A08$M3C068A09$M1A01B22C$M1B01A232$M1C01A233$M1D01A236$M1E318237$M1F318239$M20009001$M21028401$M2205DB81$M230180E4$M24018001$M2595AAA0$M2600A027$M2701BC28$M2895EA29$M2995AAA0$M2A01B42B$M2B959B41$M2C01A42D$M2D65AB6E$M2E0D9A01$M2F01AA30$M300D8171$M31959B41$M32019A01$M3301B435微程序$M00018108$M0101ED82$M0200C050$M0300A004$M0400E0A0$M0500E060$M0600A007$M0700E0A0$M0801ED82$M0901ED8C$M0A00A03B$M0B018001$M0C00203C五实验步骤(1)按图23连接实验线路,仔细查线无误后,接通电源。图23 复杂模型机数据通路图(2)写微程序:与PC联机,将实验微程序装入TDN-CM++机中或脱机时手动将本实验微程序写入TDN-CM++中。手动写入的具体方法如下;(A)编程①将编程开关置为PROM(编程)状态。②将实验板上STATEUNIT中的STEP置为“STEP”,STOP置为“RUN”状态。③用二进制模拟开关置微地址μA5~μA0(如图22须将此六线排针接开关单元)。④在MK24~MK1开关上置微代码,24位开关对应24位显示灯,开关量为“0”时灯亮,开关量为“1”时灯灭。⑤启动时序电路(按动启动按纽START),即将微代码写入到E2PROM2816的相应地址对应的单元中.⑥重复③~⑤步骤,将本实验给出的十六进制格式文件转换的二进制代码写入2816。(B)校验①将编程开关设置为READ(校验)状态。②将实验板的STEP开关置为“STEP”状态,STOP开关置为“RUN”状态。③用二进制开关置好微地址μA5~μA0。④按动START键,启动时序电路,读出微代码.观察显示灯MD24~MD1的状态(灯亮为“0”,灭为“1”),检查读出的微代码是否与写入的相同。如果不同,则将开关置于PROM编程状态,重新执行(A)即可。(C)写程序方法一;手动写入。使用控制台KWE和KRD微程序进行机器指令程序的装入和检查。  :①使编程开关处于“RUN”,STEP为“STEP”状态,STOP为“RUN”状态。②拨动总清开关CLR(0→1),微地址寄存器清零,程序计数器清零,然后控制台SWB、图24复杂模型机微程序流程图图25复杂模型机实验接线图SWA开关置为“01”,按动一次启动开关START,微地址显示灯显示“001001”,再按动一次START,微地址灯显示“001100”,此时数据开关的内容置为要写入的机器指令,按动两次START键后,即完成该条指令的写入。若仔细阅读KWE的流程,就不难发现,机器指令的首地址总清后为00H,以后每个循环PC自动加1,所以,每次按动START,只有在微地址灯显示“001100”时,才设置内容,直到所有机器指令写完。③写完程序后须进行校验。拨动总清开关CLR(0→1)后,微地址清零。PC程序计数器清零,然后使控制台开关SWB,SWA为“00”,按动启动START,微地址灯将显示“001000”;再按START,微地址灯显示为“001010”;第3次按START,微地址灯显示为“111011”;再按START后,此时输出单元的数码管显示为该首地址中的内容。不断按动START,以后每个循环PC会自动加1,可检查后续单元内容。每次在微地址灯显示为“001000”时,是将当前地址中的机器指令写入到输出设备中显示。方法二:联机读/写程序。使用软件中的F4—LOAD功能装入机器指令格式文件或F2_R/WPR功能逐条写入。(5) 运行程序。(A)单步运行程序①使编程开关处于“RUN”状态,STEP为“STEP”状态,STOP为“RUN”状态。②拨动总清开关CLR(0
/
本文档为【计算机组成的实验】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。 本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。 网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。

历史搜索

    清空历史搜索