《计算机组成原理实验指导书2.pdf》由会员分享,可在线阅读,更多相关《计算机组成原理实验指导书2.pdf(126页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、计算机组成原理实验指导书许高攀编著厦门理工学院出版2009.2目录第 1 章运算器.-4-1.1 基本运算器实验.-4-1.1.1 实验目的.-4-1.1.2 实验设备.-4-1.1.3 实验原理.-4-1.1.4 实验步骤.-7-1.2 超前进位加法器设计实验.-9-1.2.1 实验目的.-9-1.2.2 实验设备.-9-1.2.3 实验原理.-9-1.2.4 实验步骤.-13-1.3 阵列乘法器设计实验.-15-1.3.1 实验目的.-15-1.3.2 实验设备.-15-1.3.3 实验原理.-15-1.3.4 实验步骤.-16-第 2 章存储系统.-17-2.1 静态随机存储器实验.-1
2、7-2.1.1 实验目的.-17-2.1.2 实验设备.-17-2.1.3 实验原理.-17-2.1.4 实验步骤.-19-2.2 Cache控制器设计实验.-22-2.2.1 实验目的.-22-2.2.2 实验设备.-22-2.2.3 实验原理.-22-2.2.4 实验步骤.-24-第 3 章控制器.-27-3.1 时序发生器设计实验.-27-3.1.1 实验目的.-27-3.1.2 实验设备.-27-3.1.3 实验原理.-27-3.1.4 实验步骤.-28-3.2 微程序控制器设计实验.-30-3.2.1 实验目的.-30-3.2.2 实验设备.-30-3.2.3 实验原理.-30-3.
3、2.4 实验步骤.-36-第 4 章系统总线与总线接口.-39-4.1 系统总线和具有基本输入输出功能的总线接口实验.-39-4.1.1 实验目的.-39-4.1.2 实验设备.-39-4.1.3 实验原理.-39-4.1.4 实验步骤.-40-4.2 具有中断控制功能的总线接口实验.-44-4.2.1 实验目的.-44-4.2.2 实验设备.-44-4.2.3 实验原理.-44-4.2.4 实验步骤.-45-4.3 具有DM A控制功能的总线接口实验.-46-4.3.1 实验目的.-46-4.3.2 实验设备.-46-4.3.3 实验原理.-46-4.3.4 实验步骤.-47-第 5 章 模
4、型计算机.-48-5.1 CPU 与简单模型机设计实验.-48-5.1.1 实验目的.-48-5.1.2 实验设备.-48-5.1.3 实验原理.-48-5.1.4 实验步骤.-52-5.2 硬布线控制器模型机设计实验.-56-5.2.1 实验目的.-56-5.2.2 实验设备.-56-5.2.3 实验原理.-56-5.3 复杂模型机设计实验.-60-5.3.1 实验目的.-60-5.3.2 实验设备.-60-5.3.3 实验原理.-60-5.3.4 总体设计.-62-5.3.5 实验步骤.-68-第 6 章输入输出系统.-74-6.1 带中断处理能力的模型机设计实验.-74-6.1.1 实验
5、目的.-74-6.1.2 实验设备.-74-6.1.3 实验原理.-74-6.2 带 DM A控制功能的模型机设计实验.-89-6.2.1 实验目的.-89-6.2.2 实验设备.-89-6.2.3 实验原理.-89-6.2.4 实验步骤.-93-6.3 典型I/O 接口 8253扩展设计实验.-95-6.3.1 实验目的.-95-6.3.2 实验设备.-95-6.3.3 实验原理.-95-6.3.4 实验步骤.-97-第7章精简指令系统计算机.-98-7.1 计算机的指令系统.-99-7.2 基 于 RISC技术的模型计算机设计实验.-101-7.2.1 实验目的.-102-7.2.2 实验
6、设备.-102-7.2.3 实验原理.-102-7.2.4 实验步骤.-105-7.2.5 性能评测.-105-第 8 章重叠处理机.-107-8.1 重叠的基本原理和思想.-107-8.1.1 重叠的基本思想及实现.-107-8.1.2 相关处理.-108-8.2 基于重叠技术的模型计算机设计实验.-109-8.2.1 实验目的.-109-8.2.2 实验设备.-109-8.2.3 实验原理.-109-8.2.5 实验步骤.-115-8.2.6 性能评测.-117-第 9 章流水线处理机.-118-9.1 流水线的原理及基本思想.-118-9.1.1 流水的基本概念.-118-9.1.2 流
7、水线的特点.-119-9.1.3 相关处理.-119-9.2 基于流水技术的模型计算机设计实验.-120-9.2.1 实验目的.-120-9.2.2 实验设备.-120-9.2.3 实验原理.-120-9.2.4 实验步骤.-123-9.2.5 性能评测.-125-第 1 章运算器计算机的一个最主要的功能就是处理各种算术和逻辑运算,这个功能要由C P U中的运算器来完成,运算器也称作算术逻辑部件ALU。本章首先安排一个基本的运算器实验,了解运算器的基本结构,然后再设计一个加法器和一个乘法器。1.1 基本运算器实验1.1.1 实验目的(1)了解运算器的组成结构。(2)掌握运算器的工作原理。1.1
8、.2 实验设备P C机一台,TD-CMA实验系统一套。1.1.3 实验原理本实验的原理如图1-1-1所示。运算器内部含有三个独立运算部件,分别为算术、逻辑和移位运算部件,要处理的数据存于暂存器A和暂存器B,三个部件同时接受来自A和B的数据(有些处理器体系结构把移位运算器放于算术和逻辑运算部件之前,如A R M),各部件对操作数进行何种运算由控制信号S3 SO和C N来决定,任何时候,多路选择开关只选择三部件中一个部件的结果作为A L U的输出。如果是影响进位的运算,还将置进位标志F C,在运算结果输出前,置A LU零标志。A L U中所有模块集成在一片CPLD中。逻辑运算部件由逻辑门构成,较为
9、简单,而后面又有专门的算术运算部件设计实验,在此对这两个部件不再赘述。移位运算采用的是桶形移位器,一般采用交叉开关矩阵来实现,交叉开关的原理如图1-1-2所示。图中显示的是一个4 X 4的矩阵(系统中是一个8 X 8的 矩 阵)。每一个输入都通过开关与一个输出相连,把沿对角线的开关导通,就可实现移位功能,即:对于逻辑左移或逻辑右移功能,将一条对角线的开关导通,这将所有的输入位与所使用的输出分别相连,而没有同任何输入相连的则输出连接0。对于循环右移功能,右移对角线同互补的左移对角线一起激活。例如,在4位矩阵中使用 右1 和 左3 对角线来实现右循环1位。(3)对于未连接的输出位,移位时使用符号扩
10、展或是0填充,具体由相应的指令控制。使用另外的逻辑进行移位总量译码和符号判别。图 1-1-1 运算器原理图运算器部件由一片CPLD实现。A LU的输入和输出通过三态门74LS245连到CPU内总线上,另外还有指示灯标明进位标志F C和零标志FZ。请注意:实验箱上凡丝印标注有马蹄形标记,表示这两根排针之间是连通的。图中除T 4和C LR,其余信号均来自于A L U单元的排线座,实验箱中所有单元的T l、T2、T3、T 4都连接至控制总线单元的T l、T2、T3、T4,CLR都连接至C O N单元的CLR按钮。T 4由时序单元的T S 4提供(忖序单元的介绍见附录二),其余控制信号均由C O N单
11、元的二进制数据开关模拟给出 控制信号中除T 4为脉冲信号外,其余均为电平信号,其中ALU_B为低有效,其余为高有效。图 1-1-2 交叉开关桶形移位器原理图暂 存 器A和暂存器B的数据能在LED灯上实时显示,原理如图1-1-3所 示(以A0为例,其它相同)。进位标志FC、零标志F Z和数据总线D7 D O的显示原理也是如此。VCC|-C )-o d AO图 Ll-3 AO旦示原理图ALU和外围电路的连接如图1-1-4所示,图中的小方框代表排针座。运算器的逻辑功能表如表1-1-1所示,其中S3 s2S1SO CN为控制信号,F C为进位标志,F Z为运算器零标志,表中功能栏内的FC、FZ表示当前
12、运算会影响到该标志。n 1 11S 7.S 1-1-4 ALU和外围电路连接原理图1-1-1 运算器逻辑功能表运算类型S3 S2 SI SOCN功 能逻辑运算0000XF=A(直通)0001XF=B(直通)0010XF=AB(FZ)0011XF=A-B(FZ)0100XF=/A(FZ)移位运算0101XF=A不带进位循环右移B(取 低 3 位)位(FZ)01100F=A逻辑右移一位(FZ)1F=A带进位循环右移一位(FC,FZ)01110F=A逻辑左移一位(FZ)1F=A带进位循环左移一位(FC,FZ)算术运算1000XS FC-CN(FC)1001XF=A 加 B(FC,FZ)1010XF=
13、A 加 B 加 FC(FC,FZ)1011XF=A 减 B(FC,FZ)1100XF=A 减 1(FC,FZ)1101XF=A 加 1(FC,FZ)1110X(保留)1111X(保留)*表 中“X”为任意态,下同1.1.4实验步骤(1)按图1 T-5连接实验电路,并检查无误。图中将用户需要连接的信号用圆圈标明(其它实验相同)。EiAH枚 M iE了 叫UE图L L 5实验接线图(2)将时序与操作台单元的开关KK2置 为 单 拍 档,开 郑K I、KK3置 为 运行档。(3)打开电源开关,如果听到有,嘀,报警声,说明有总线竞争现象,应立即关闭电源,重新检查接线,直到错误排除。然后按动CON单元的
14、CLR按钮,将运算器的A、B和FC、F Z清零。(4)用输入开关向暂存器A置数。拨 动CON单元的SD27SD20数据开关,形成二进制数01100101(或其它数值),数据显示亮为 1,灭 为 0。置LDA=1,LDB=O,连续按动时序单元的S T按钮,产生一个T 4上沿,则将二进制数01100101置入暂存器A中,暂存器A的值通过ALU单元的A7A 0八位LED灯显示。(5)用输入开关向暂存器B置数。拨 动CON单元的SD27SD20数据开关,形成二进制数10100111(或其它数值)。置LDA=O,LDB=1,连续按动时序单元的S T按钮,产生一个T 4上沿,则将二进制数10100111置
15、入暂存器B中,暂存器B的值通过ALU单元的B 7-B 0八位LED灯显示。(6)改变运算器的功能设置,观察运算器的输出。置ALU_B=O、LDA=O、LDB=O,然后按表1-1-1置S3、S2、S I、S 0和C n的数值,并观察数据总线LED显示灯显示的结果。如置S3、S2、S I、S 0为0 0 1 0,运算器作逻辑与运算,置S3、S2、S l、S 0为10 0 1,运算器作加法运算。如果实验箱和PC联机操作,则可通过软件中的数据通路图来观测实验结果(软件使用说明请看附录一),方法是:打开软件,选择联机软件的“【实验】一【运算器实验】,打开运算器实验的数据通路图,如 图1-1-6所示。进行
16、上面的手动操作,每按动 一 次S T按钮,数据通路图会有数据的流动,反映当前运算器所做的操作,或在软件中选择“【调试】一【单节拍】”,其作用相当于将时序单元的状态开关KK2置为 单拍档后按动了一次S T按钮,数据通路图也会反映当前运算器所做的操作。重复上述操作,并完成表1 T-2。然后改变A、B的值,验证FC、F Z的锁存功能。图1-1-6数据通路图*1-1-2送的 果上送舞美ABS3 S2 SI SOex笫暴星软运斗65AT0 0 0 0XF=(65)FC=()FZ=(65A70 0 0 1XF=(A7)FC=()FZ=(0 0 1 0XF=()FC=()FZ=(0 0 1 1XF=()FC
17、=()FZ=(0 1 0 0XF=()FC=()F Z=()移位运W0 1 0 1XF=()FC=()FZ=(0 1 1 00F=()FC=()F Z=()1F=()rc=()FZ=(0 1 1 10F-()FC=()F2=XF=()rc=()FZ=(1 0 1 1XF=()FC=()FZ=1 1 0 0XF=()rc=()FZ=(1 1 0 1XF=()FC=()F2=1.2超前进位加法器设计实验1.2.1 实验目的(1)掌握超前进位加法器的原理及其设计方法。(2)熟悉C P L D 应用设计及E D A 软件的使用。1.2.2 实验设备P C机一台,T D-C M A 实验系统一套。1.2
18、.3 实验原理加法器是执行二进制加法运算的逻辑部件,也是C P U 运算器的基本逻辑部件(减法可以通过补码相加来实现)。加法器又分为半加器和全加器(FA),不考虑低位的进位,只考虑两个二进制数相加,得到和以及向高位进位的加法器为半加器,而全加器是在半加器的基础上又考虑了低位过来的进位信号。*1-2-1 1 位。加 3(输 入输 出ABCiS Co0000000110010100110110010101011100111111A、B为 2个 1 位的加数,C i 为来自低位的进位,S为和,Co为向高位的进位,根据表1-2-1所示的真值表,可得到全加器的逻辑表达式为:S=ABCi+Ci+ABCi+
19、ABCiCo=AB+ACi+BCi根据逻辑表达式,可得到如图1-2-1所示的逻辑电路图。有了 1 位全加器,就可以用它来构造多位加法器,加法器根据电路结构的不同,可以分为串行加法器和并行加法器两种。串行加法器低位全加器产生的进位要依次串行地向高位进位,其电路简单,占用资源较少,但是串行加法器每位和以及向高位的进位的产生都依赖于低位的进位,导致完成加法运算的延迟时间较长,效率并不高。图 1-2-1 1 位全加器(F A)逻辑电路图串行加法器运算速度慢,其根本原因是每一位的结果都要依赖于低位的进位,因而可以通过并行进位的方式来提高效率。只要能设计出专门的电路,使得每一位的进位能够并行地产生而与低位
20、的运算情况无关,就能解决这个问题。可以对加法器进位的逻辑表达式做进一步的推导:C o=OCw=A i B a-A i G-B dC i=A i (A i+B i)C i设g i =A i B api =A i+B i则有:G*i =g i+pG=g j+p 2 +pi-X i-l)=百+p (g H +pi-l(&2+M (g+P 0)=g i+px g -l+p4 h-lg i-2+.+p5 h-l.pig O +p i-l.pipoC o由于gi、p i只和由、B i有关,这样由+1就只和Ai、Ai-1、AO,Bi、Bi-l、BO及CO有关。所以各位的进位Ci、Ci-l、C l就可以并行地
21、产生,这种进位就叫超前进位。根据上面的推导,随着加法器位数的增加,越是高位的进位逻辑电路就会越复杂,逻辑器件使用也就越多。事实上我们可以继续推导进位的逻辑表达式,使得某些基本逻辑单元能够复用,且能照顾到进位位的并行产生。定义G iJ=g i+pig i-i-p1pI-ig i-:+.+pip-i.prig)P ij=pipt-i.pripj则有Gu=giPij=piG y =G a*P lkG k-ljB j=支C i-1 =G j+P ijC j从而可以得到表1-2-2所示的算法,该算法为超前进位算法的扩展算法,这里实现的是一个8位加法器的算法。衰 1-2-2G i.o=g i+pig cP
22、 1.0 =pipoG s.o=G o.2 +P 5,a G 工 oP s.o=PS.SPL OGT.O=G r.4 +P r.a G o.oPT.O=P r.oP s.ox g 3 +psg:P a,2 =pa psX.4 二 群 +psg 4P o.4 =pspiGT.=GT.6 +P r.sf c GT.6 =g r+prg 6PT.K 6 (STOP)开关置 T ,K 5 (C L R)开关置 41-0-1),使T1 T 4 输出低。运行联机软件,选 择“【波形】一【打开】打开逻辑示波器窗口,然后选择“【波形】一【运行】启动逻辑示波器,逻辑示波器窗口显示T1“T 4 四路时序信号波形。
23、(5)将C O N 单元的K 7(S TA R T)开关置41-0-1 *,启动T1 T 4 时序,示波器窗口显示T1 T4波形,如图3-1-5所示。图 3-L 5 时序波形图(6)将C O N 单元的K 6(S TO P)开关置 W ,停止T1 T 4 时序,示波器窗口显示T1 T4波形均变为低。3.2微程序控制器设计实验3.2.1 实验目的(1)掌握微程序控制器的组成原理。(2)掌握微程序的编制、写入,观察微程序的运行过程。3.2.2 实验设备P C机一台,TD-C M A 实验系统一套。3.2.3 实验原理微程序控制器的基本任务是完成当前指令的翻译和执行,即将当前指令的功能转换成可以控制
24、的硬件逻辑部件工作的微命令序列,完成数据传送和各种处理操作。它的执行方法就是将控制各部件动作的微命令的集合进行编码,即将微命令的集合仿照机器指令一样,用数字代码的形式表示,这种表示称为微指令。这样就可以用一个微指令序列表示一条机器指令,这种微指令序列称为微程序。微程序存储在一种专用的存储器中,称为控制存储器,微程序控制器原理框图如图3-2-1 所示。图 3-2-1 微程序拄制器组成原理根图控制器是严格按照系统时序来工作的,因而时序控制对于控制器的设计是非常重要的,从前面的实验可以很清楚地了解时序电路的工作原理,本实验所用的时序由时序单元来提供,分为四拍TS 1、TS 2、TS 3、TS 4,时
25、序单元的介绍见附录2。微程序控制器的组成见图3-2-2,其中控制存储器采用3 片 2 81 6的 E 2 P R 0 M,具有掉电保护功能,微命令寄存器1 8 位,用两片8 D触 发 器(2 73)和一片4D (1 75)触发器组成。微地址寄存器6 位,用三片正沿触发的双D触 发 器(74)组成,它们带有清“0”端和预置端。在不判别测试的情况下,T 2时刻打入微地址寄存器的内容即为下一条微指令地址。当 T 4 时刻进行测试判别时,转移逻辑满足条件后输出的负脉冲通过强置端将某一触发器置为“1”状态,完成地址修改。E B 4 2-2微程序控制原田在实验平台中设有一组编程控制开关KK3、KK4、KK
26、5(位于时序与操作台单元),可实现对存储器(包括存储器和控制存储器)的三种操作:编程、校验、运行。考虑到对于存储器(包括存储器和控制存储器)的操作大多集中在一个地址连续的存储空间中,实验平台提供了便利的手动操作方式。以向00H 单元中写入332211为例,对于控制存储器进行编辑的具体操作步骤如下:首先将KK 1拨至 停止 档、KK 3拨至 编程 档、K K 4拨 至 控 存 档、KK5拨 至 置 数 档,由 CO N 单 元 的 SD05SD00开关给出需要编辑的控存单元首地址(000000),IN 单元开关给出该控存单元数据的低8 位(00010001),连续两次按动时序与操作台单元的开关S
27、T(第一次按动后M C 单元低8位显示该单元以前存储的数据,第二次按动后显示当前改动的数据),此 时 M C 单元的指示灯MA5-M A0显示当前地址(000000),M7-M 0 显示当前数据(00010001)。然后将KK 5拨 至 加 1 档,IN 单元开关给出该控存单元数据的中8 位(00100010),连续两次按动开关S T,完成对该控存单元中8 位数据的修改,此 时 M C 单元的指示灯MA5-M A0显示当前地址(000000),M15-M 8 显示当前数据(00100010):再由 IN 单元开关给出该控存单元数据的高8 位(001 100 11),连续两次按动开关S T,完成
28、对该控存单元高8 位数据的修改此时M C 单元的指示灯MA5M A0显示当前地址(000000),M23M 16显示当前数据(00110011)。此时被编辑的控存单元地址会自动加1(0 1 H),由 IN 单元开关依次给出该控存单元数据的低8 位、中 8 位和高8 位配合每次开关S T 的两次按动,即可完成对后续单元的编辑。C O N 一元置修址(H i t,I阴兀取我(000(XX)l)w单比W敢才,网在(00110011)网 单 兀 中 留*(001000K)4 o 5 s m(l-DO(XKIOIN=0(X)1000!KK1=停止KIC!蛇编KK4 一校存K IC:=Wtt S T n
29、JT/IIJM0B V9ZMmK MKKFs l/编辑完成后需进行校验,以确保编辑的正确。以校验00 H 单元为例,对于控制存储器进行校验的具体操作步骤如下:首先将KK 1拨 至 停止档、KK 3拨 至 校验档、K K 4拨 至 控 存 档、KK 5拨 至 置 数 档。由 CO N 单 元 的 SD05SDOO开关给出需要校验的控存单元地址(0 0 0 0 0 0),连续两次按动开关ST,M C 单元指示灯M7M 0 显示该单元低8 位 数 据(00010001);KK5拨 至 加 1 档,再连续两次按动开关ST,M C 单元指示灯M15-M 8 显示该单元中8 位 数 据(00100010)
30、;再连续两次按动开关ST,M C 单元指示灯M23M 16显示该单元高8 位 数 据(00110011)。再连续两次按动开关S T,地址加1,M C 单元指示灯M7M 0 显示01 H 单元低8 位数据。如校验的微指令出错,则返回输入操作,修改该单元的数据后再进行校验,直至确认输入的微代码全部准确无误为止,完成对微指令的输入。位于实验平台M C 单元左上角一列三个指示灯MC2、M CI、M C0用来指示当前操作的微程序字段,分别对应M23M16、M15M8、M7M 0实验平台提供了比较灵活的手动操作方式,比如在上述操作中在对地址置数后将开关KK4拨 至 减 1档,则每次随着开关S T 的两次拨
31、动操作,字节数依次从高8 位到低8 位递减,减至低8 位后,再按动两次开关S T,微地址会自动减一,继续对下一个单元的操作。微指令字长共2 4 位,控制位顺序如表3-2 T:表3-2-1微指令格式232221201918-151 1-1211-98-65-0M23M22W RRD I0MS3-S0A字段B字段C字段VLA5-M A0A字段 B字段 C字段制位译码出多位。C字段中的P为测试字位。其功能是根据机器指令及相应微代码进行译码,使微程序转入相应的微地址入口,从而实现完成对指令的识别,并实现微程序的分支,本系统上的指令译码原理如图3-2-3所示,图中1712为指令寄存器的第72位输出,SE
32、5-SE0为微控器单元微地址锁存器的强置端输出,指令译码逻辑在IR单元的 INS_DEC(GAL20V8)中实现。从 图3-2-2中也可以看出,微控器产生的控制信号比表3-2-1中的要多,这是因为实验的不同,所需的控制信号也不一样,本实验只用了部分的控制信号。本实验除了用到指令寄存器(IR)和通用寄存器R 0外,还要用到IN和O U T单元,从微控器出来的信号中只有IOM、W R和R D三个信号,所以对这两个单元的读写信号还应先经过译码,其译码原理如图3-2-4所示。IR单元的原理图如图3-2-5所示,R 0单元原理如图3 2 7所示,IN单元的原理图见图2-1-3所示,O U T单元的原理图
33、见图3-2-6所示。图 3-2-3 指令译码原理图图 3-2-4 读写拄制逻辑图)2-5 IR 单元原理图图 3-2-6 OVT单元原理图 W)_ H OUT(00110000)和HLT(0 1 0 1 0 0 0 0),括号中为各指令的二进制代码,指令格式如下:助记符机器指令码说明IN0010 0000Nf R0ADD0000 0000R 0-R 0 R 0OUT00110000R09O U THLT0101 0000停机实验中机器指令由CON单元的二进制开关手动给出,其余单元的控制信号均山微程序控制器自动产生,为此可以设计出相应的数据通路图,见图3-2-8所示。几条机器指令对应的参考微程序
34、流程图如图3-2-9所示。图中一个矩形方框表示一条微指令,方框中的内容为该指令执行的微操作,右上角的数字是该条指令的微地址,右下角的数字是该条指令的后续微地址,所有微地址均用1 6进制表示。向下的箭头指出了下一条要执行的指令。P为测试字,根据条件使微程序产生分支。状态备件图3-2-8数据通路图图3-2-9微程序流程图将全部微程序按微指令格式变成二进制微代码,可得到表3-2-2的二进制代码表。表 3-2-2 二进制微代码表地址十六进制高五位S3-S0A 字段B 字段C 字段IA5IA00000 00 010000000000000000000000010100 70 70000000000111
35、0000011100000400 24 050000000000100100000001010504 B2 010000010010110010000000013000 14 040000000000010100000001003218 30 010001100000110000000000013328 04 010010100000000100000000013500 00 350000000000000000001101013.2.4实验步骤1 .按图3-2-1 0 所示连接实验线路,仔细查线无误后接通电源。如 果 有 滴 报警声,说明总线有竞争现象,应关闭电源,检查接线,直到错误排除。-
36、00-O O-犷 偃 单 元 GM:C T 刚 I 元W7图 3-2-1 0 实验接线图2 .对微控器进行读写操作,分两种情况:手动读写和联机读写。1)手动读写(1)手动对微控器进行编程(写)将时序与操作台单元的开关K K 1 置 为 停止 档,K K 3 置 为 编程 档,K K 4 置为 控存 档,K K 5 置 为 置 数 档。使 用 C 0 N 单元的S D 0 5 S D O O 给出微地址,I N 单元给出低8位应写入的数据,连续两次按动时序与操作台的开关S T,将I N 单元的数据写到该单元的低8位。将时序与操作分单元的开关K K 5 置 为 加1 档。I N 单元给出中8位应写
37、入的数据,连续两次按动时序与操作台的开关S T,将I N 单元的数据写到该单元的中8位。I N 单元给出高8位应写入的数据,连续两次按动时序与操作台的开关S T,将I N 单元的数据写到该单元的高8位。重 复 、四步,将表3-2-2 的微代码写入2 8 1 6 芯片中。(2)手动对微控器进行校验(读)将时序与操作台单元的开关K K 1 置 为 停止 档,K K 3 置为 校验 档,K K 4 置为 控存 档,K K 5 置 为 置数档。使 用 C O N 单元的S D 0 5 S D O O 给出微地址,连续两次按动时序与操作台的开关S T,MC单元的指数据指示灯M 7 M0显示该单元的低8位
38、。将时序与操作台单元的开关K K 5 置 为 加1 档。连续两次按动时序与操作台的开关S T,M C 单元的指数据指示灯M 1 5 M8显示该单元的中8位,MC单元的指数据指示灯M 2 3 M 1 6 显示该单元的高8位。重 复 、四步,完成对微代码的校验。如果校验出微代码写入错误,重新写入、校验,直至确认微指令的输入无误为止。2)联机读写(1)将微程序写入文件联机软件提供了微程序下载功能,以代替手动读写微控器,但微程序得以指定的格式写入到以T X T 为后缀的文件中,微程序的格式如下:微指令格式说明:SM XX XXXXXXT 一匚二-微指令代码1-十六进制地址-微指令标志如$乂 1 F 1
39、 1 2 2 3 3,表示微指令的地址为1 F H,微指令值为1 1 H (高)、2 2 H (中)、3 3 H (低),本次实验的微程序如下,其 中 分 号 ;为注释符,分号后面的内容在下载时将被忽略掉。(2)写入微程序用联机软件的“【转储】一【装载】”功能将该格式(*.T X T)文件装载入实验系统。装入过程中,在软件的输出区的 结果 栏会显示装载信息,如当前正在装载的是机器指令还是微指令,还剩多少条指令等。(3)校验微程序选择联机软件的“【转储】一【刷新指令区】可以读出下位机所有的机器指令和微指令,并在指令区显示。检查微控器相应地址单元的数据是否和表3-2-2 中的十六进制数据相同,如果
40、不同,则说明写入操作失败,应重新写入,可以通过联机软件单独修改某个单元的微指令,先用鼠标左键单击指令区的 微存T A B 按钮,然后再单击需修改单元的数据,此时该单元变为编辑框,输入6位数据并回车,编辑框消失,并以红色显示写入的数据。;*;/;/微控器实验指令文件/;/;/By T a n gD u CO.,L T D /;/;11u;*S t a r t O f M ic r o c o n t r o l l er D a t a *$M 0 0 0 0 0 0 0 1$M 0 1 0 0 7 0 7 0$M 0 4 0 0 2 4 0 5$M 0 5 0 4 B2 0 1$M 3 0 0
41、 0 1 4 0 4$M 3 2 1 8 3 0 0 1$M 3 3 2 8 0 4 0 1$M 3 5 0 0 0 0 3 5*E n d O f;N O P;CO N(I N S)-I R,P;R 0-B;A 加 B-R 0;R 0-A;I N-R 0;R 0-O U T;N O PM ic r o c o n t r o l l er D a t a *3.运行微程序运行时也分两种情况:本机运行和联机运行。1)本机运行将时序与操作台单元的开关K K 1、K K 3置 为 运行档,按动CO N单元的CL R按钮,将微地址寄存器(M A R)清零,同时也将指令寄存器(I R)、A L U单元
42、的暂存器A和暂存器B清零。将时序与操作台单元的开关K K 2置 为 单拍档,然后按动S T按钮,体会系统在T 1、T 2、T 3、T 4节拍中各做的工作。T 2节拍微控器将后续微地址(下条执行的微指令的地址)打入微地址寄存器,当前微指令打入微指令寄存器,并产生执行部件相应的控制信号;T 3、T 4节拍根据T 2节拍产生的控制信号做出相应的执行动作,如果测试位有效,还要根据机器指令及当前微地址寄存器中的内容进行译码,使微程序转入相应的微地址入口,实现微程序的分支。按 动CO N单元的CL R按钮,清微地址寄存器(M A R)等,并将时序与单元的开关K K 2置 为 单 步 档。置I N单元数据为
43、0 0 1 0 0 0 1 1,按动S T按钮,当M C单元后续微地址显示为0 0 0 0 0 1时,在CO N单元的S D 2 7 S D 2 0模拟给出1 N指令0 0 1 0 0 0 0 0并继续单步执行,当M C单元后续微地址显示为0 0 0 0 0 1时,说明当前指令已执行完;在CO N单元的S D 2 7 S D 2 0给出A D D指令0 0 0 0 0 0 0 0,该指令将会在下个T 3被打入指令寄存器(I R),它将R 0中的数据和其自身相加后送R 0;接下来在CO N单元的S D 2 7 S D 2 0给出O U T指令0 0 1 1 0 0 0 0并继续单步执行,在M C
44、单元后续微地址显示为0 0 0 0 0 1时,观查O U T单元的显示值是否为0 1 0 0 0 1 1 0。2)联机运行联机运行时,进入软件界面,在菜单上选择【实验】一【微控器实验】,打开本实验的数据通路图,也可以通过工具栏上的下拉框打开数据通路图,数据通路图如图3-2-8所示。将时序与操作台单元的开关K K 1、K K 3置 为 运行档,按动C O N单元的总清开关后,按动软件中单节拍按钮,当后续微地址(通路图中的M AR)为0 0 0 0 0 1时,置C O N单元SD 2 7 SD 2 0,产生相应的机器指令,该指令将会在下个T 3被打入指令寄存器(T R),在后面的节拍中将执行这条机
45、器指令。仔细观察每条机器指令的执行过程,体会后续微地址被强置转换的过程,这是计算机识别和执行指令的根基。也可以打开微程序流程图,跟踪显示每条机器指令的执行过程。按本机运行的顺序给出数据和指令,观查最后的运算结果是否正确。第4章系统总线与总线接口总线是计算机中连接各个功能部件的纽带,是计算机各部件之间进行信息传输的公共通路。总线不只是一组简单的信号传输线,它还是一组协议。分时与共享是总线的两大特征。所谓共享,在总线上可以挂接多个部件,它们都可以使用这一信息通路来和其他部件传送信息。所谓分时,同一总线在同一时刻,只能有一个部件占领总线发送信息,其他部件要发送信息得在该部件发送完释放总线后才能申请使
46、用。总线结构是决定计算机性能、功能、可扩展性和标准化程度的重要因素。本章安排了三个实验:系统总线和具有基本输入输出功能的总线接口实验、具有中断控制功能的总线接口实验和具有DMA控制功能的总线接口实验。4.1 系统总线和具有基本输入输出功能的总线接口实验4.1.1 实验目的1.理解总线的概念及其特性。2.掌握控制总线的功能和应用。4.1.2实验设备PC机一台,TD-CMA实验系统一套。4.1.3实验原理由于存储器和输入、输出设备最终是要挂接到外部总线上,所以需要外部总线提供数据信号、地址信号以及控制信号。在该实验平台中,外部总线分为数据总线、地址总线、和控制总线,分别为外设提供上述信号。外部总线
47、和CPU内总线之间通过三态门连接,同时实现了内外总线的分离和对于数据流向的控制。地址总线可以为外部设备提供地址信号和片选信号。由地址总线的高位进行译码,系统的I/O 地址译码原理见图4-1-1(在地址总线单元).由于使用A6、A 7进行译码,I/O 地址空间被分为四个区,如表4-1-1所示:A6A7必62S1HA1B1A2B2G1NG2N二二YY0 0 O O-D-O-O-图4-1-1 LO地址译码原理图表,1-1 I/O地址空间分配A7 A6选定地址空间00IOYO00-3F01IOY140-7F10I0Y280-BF11IOY3C0-FF为了实现对于M EM和外设的读写操作,还需要一个读写
48、控制逻辑,使得CPU能控制MEM和I/O设备的读写,实验中的读写控制逻辑如图4-1-2所示,由于T 3的参与,可以保证写脉宽与T3 一致,T 3由时序单元的TS3给出(时序单元的介绍见附录2)。IO M用来选择是对I/O设备还是对M EM进行读写操作,I0M=1时 对I/O设备进行读写操作,IOM=0时对M EM进行读写操作。RD=1时为读,WR=1时为写。图 4-L 2 读写控制逻辑在理解读写控制逻辑的基础上我们设计一个总线传输的实验。实验所用总线传输实验框图如图4-1-3所示,它将几种不同的设备挂至总线上,有存储器、输入设备、输出设备、寄存器。这些设备都需要有三态输出控制,按照传输要求恰当
49、有序的控制它们,就可实现总线信息传输。总线图 4-1-3 总线传输实验幅图4.1.4实验步骤1.读写控制逻辑设计实验。(1)按照图4 T-4实验接线图进行连线。图 4-1-4 实验接线图(2)具体操作步骤图示如下:首先将时序与操作台单元的开关KK1、K K 3 置为 运行档,开关K K 2 置 为 单拍档,按动C O N 单元的总清按钮CLR,并执行下述操作。对M E M 进行读操作(W R=O,R D=1,I0M=0),此时E 0 灭,表示存储器读功能信号有效。对 MEM进行写操作(W R=1,R D=O,10M=0),连续按动开关S T,观察扩展单元数据指示灯,指示灯显示为T3 时刻时,E
50、 1 灭,表示存储器写功能信号有效。对 I/O 进行读操作(W R=O,R D=1,10M=l),此时E 2 灭,表示I/O 读功能信号有效。对 I/O 进行写操作(W R=1,R D=O,IO M=1),连续按动开关S T,观察扩展单元数据指示灯,指示灯显示为T3 时刻时,E 3 灭,表示I/O 写功能信号有效。2.基本输入输出功能的总线接口实验。(1)根据挂在总线上的几个基本部件,设计一个简单的流程:输入设备将一个数打入R0 寄存器。输入设备将另一个数打入地址寄存器。将 R 0 寄存器中的数写入到当前地址的存储器中。将当前地址的存储器中的数用L E D 数码管显示。(2)按照图4-1-5实