计算机组成原理实验指导书_图文_第1页
计算机组成原理实验指导书_图文_第2页
计算机组成原理实验指导书_图文_第3页
计算机组成原理实验指导书_图文_第4页
计算机组成原理实验指导书_图文_第5页
已阅读5页,还剩87页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、计算机组成原理实验指导书计算机应用教研室编西南科技大学计算机科学与技术学院2006年8月目录第0章 实验概述一、本课程实验教学的目的和要求二、本课程实验内容体系和实验类型第一章 实验项目内容安排实验一 系统认识实验实验二 运算器组成实验(一算术逻辑运算实验(二进位控制实验实验三 存储器实验(一静态随机存储器实验(二先进先出(FIFO存储器实验实验四 微控制器实验实验五 总线控制实验实验六 基本模型机设计与实现实验七 可重构原理计算机的组成设计实验实验八 复杂模型机的设计与实现实验九 基于精简指令系统计算机(RISC构成的模型机 附录A 实验报告格式第0章 实验概述一、本课程实验教学的目的和要求

2、课程实验教学目的:通过本实验课程训练,学生可熟悉典型计算机的基本结构、基本组成和基本功能,掌握计算机主要组成部件工作原理的基本分析与设计方法,使学生对典型计算机系统的分析、设计、开发与使用能力得到训练与提高,了解目前比较流行的硬件开发技术,培养学生的实验创新能力和对新技术、新方法的分析应用能力。课程实验教学要求:使学生对计算机各主要组成部件相互间的有机联系有较全面的理解。主要锻炼学生的实验技能、创新能力、科研能力及解决实际问题方面的能力。二、本课程实验内容体系和实验类型序号实验内容实验选题实验类型实验要求实验学时1 系统认识实验一台基本的模型计算机验证必做 42 常用组件设计1 运算器组成设计

3、验证选做 43 常用组件设计2 基本存储系统设计验证选做 44 常用组件设计3 基本微程序控制器结构设计验证选做 45 整体设计用CPLD实现模型机系统设计实验设计必做8第一章 实验项目内容安排实验一 系统认识实验一.实验类型验证型实验(4学时二. 实验目的1.构造一台最基本模型计算机。2.建立对计算机组成及其原理的基本认识。三.实验环境1. TDN-CM+计算机组成原理教学实验系统一台,排线若干。2. PC机一台四.背景知识五. 实验内容1.实验原理(1一台简单模型计算机的结构如图1.1 图1.1 简单模型计算机的结构图其中:ALU为运算器,DR1、DR2为工作寄存器,R0为通用寄存器,AR

4、为地址寄存器, PC为程序计数器,IR为指令寄存器,TIME为时序发生器,MEM为程序存储器,INPUT为输入设备,OUTPUT为输出设备,MC为微程序控制器。(2模型计算机的程序计算机数据通路的控制将由微程序控制器来完成,CPU从内存中取出一条机器指令到指令执行结束的一个指令周期全部由微指令组成的序列来完成,即一条机器指令对应一个微程序。本系统设计了四条机器指令: IN(输入、ADD(二进制加法、OUT(输出、JMP (无条件转移,其指令格式如下(前4位为操作码:助记符 机器指令码 说 明IN 0000 0000 INPUT ROADD addr 0001 0000 ××

5、×××××× R0+addr R0OUT addr 0010 0000 R0 LEDJMP addr 0011 0000 ×××××××× addr PC应用该指令系统可以编写一段计算机程序,并将其以二进制数的形式存放在存储器中,可以完成特定的功能。(3微程序表1.1机器指令对应的微操作加强指令助记符 微操作 说明IN ROPCAR,PC+1PC 预备取指RAMBUS,BUSIR 取指INPUTR0 向R0中输入一个数ADD X,R0PCAR,PC+1PC

6、 预备取指RAMBUS,BUSIR 取指PCAR,PC+1PC 预备取数据RAMBUS,BUSDR2 取数据送入DR2R0DR1 将R0中的数据送入DR1DR1+DR2 RO 两数相加,结果送入R0 OUT R0PCAR,PC+1PC 预备取指RAMBUS,BUSIR 取指R0OUTPUT 将结果输出显示JMP 00PCAR,PC+1PC 预备取指RAMBUS,BUSIR 取指PCAR,PC+1PC 预备取数据RAMBUS,BUSPC 取数据送入PC2.实验步骤(1构造模型机参照图1.2在教学实验系统中连接各个部件,构造一台完整的模型计算机。图中标有小圆圈的连线都是需要连接导线的,而未标有小圆

7、圈的连线是系统已经连接好的。 图1.2实验接线图(2编写一段简单程序该程序完成以下功能:a.由输入设备向CPU的通用寄存器R0中输入一个数。b.将输入的数与程序中的一个立即数相加。c.将运算结果输出到设备上显示。d.跳转返回到执行第一条指令的状态和位置。表1.2计算机程序地址 指令码 指令助记符 说明00 00000000 IN R0 INPUT RO0102 00010000XADD X,R0 R0+XR0X为立即数,存放在02单元中03 00100000 OUT R0 R0OUTPUT0405 0011000000000000JMP 00 00PC(3 模型机操作前的准备工作将PC与实验系

8、统相连,进入应用软件CMPP.(4 模型机的运行操作a.打开电源,单击CMPP,运行软件,若正常,将出现以下界面。 b.未联机正常,进入软件界面后,大部分菜单为灰色不可用。可进入【端口】菜单,选择2号串口进行端口测试。c.选择【转储】【装载】选项,进行装载。选择CMPPSAMPPLE目录下的例程EX,TXT,单击“打开”按钮后即进行装载。可选择“文件” “打开”来打开此文件,来查看模型机的程序及其微程序。其内容为:程 序$P0000 机器指令格式说明:$P0110 $P×× ××$P0208 机器指令代码$P0320 十六进制地址$P0430$P0500

9、微指令格式说明:$M ×× ××××××微程序 微指令代码$M00018001 十六进制地址 $M0101ED82$M0200C048$M0300B004$M0401A205$M05959A01$M0600D181$M08001001$M0901ED83$M0A070201$M0B01ED86d.装载完成后,选择【运行】【通路图】【复杂模型机】,可以打开一个对应的数据通路图,如。 图1.3e.在执行指令之前,拨动总清开关CLR(01,微地址清零,程序计数器清零。程序首址为00H。选择【运行】【单步微指令】,每按动一

10、次,系统运行一条微指令并在界面中显示动态数据流,仔细观察,可以了解计算机的工作过程。f. 选择【运行】【单步机器指令】,每按动一次,系统运行一条指令并在界面中显示动态数据流,仔细观察,可以了解计算机的工作过程。六.思考与分析:(1数据通路图中各个部件的控制信号是怎样产生的?(2单步执行指令ADD X,R0,分析运算器的控制信号的作用?七.实验报告要求:(1画出该实验电路接线图。(2在实验过程中,出现了哪些问题?是如何解决的?(3回答思考题。实验二 运算器组成实验(一 算术逻辑运算实验一.实验类型验证型实验(4学时二. 实验目的1.掌握简单运算器的数据传送通路。2.验证运算功能发生器(74LS1

11、81的组合功能。三.实验环境TDN-CM+计算机组成原理教学实验系统一台,排线若干。四.背景知识集成逻辑芯片74LS181是一个4位的ALU单元,引脚如图2.1所示。逻辑构成如图1.2所示,逻辑功能如表2.1所示, 图2.1 74LS181芯片引脚 图2.2 74LS181逻辑图 五.实验内容1.实验原理实验中所用的运算器数据通路如图2.3所示。其中运算器由两片74LS181以并/串形式构成8位字长的ALU。运算器的输出经过一个三态门(74LS245和数据总线相连,运算器的两个数据输入端分别由二个锁存器(74LS273锁存,锁存器的输入连至数据总线,数据开关(“INPUT DEVICE”用来给

12、出参与运算的数据,并经过一三态门(74LS245和数据总线相连,数据显示灯(“BUS UNIT”已和数据总线相连,用来显示数据总线内容。 图2.3 运算器数据通路2.实验步骤(1 按图2.4连接实验线路,仔细查线无误后,接通电源。图中已将用户需要连接的控制信号用圆圈标明(其他实验相同,不再说明,其中除T4为脉冲信号,其它均为电平信号。由于实验电路中的时序信号均已连至“W/R UNIT”的相应时序信号引出端,因此,在进行实验时,只需将“W/R UNIT”的T4接至“STATE UNIT”的微动开关KK2的输出端,按动微动开关,即可获得实验所需的单脉冲,而S3、S2、 S1、S0 、Cn、M、LD

13、DR1、LDDR2、ALU-B、SW-B各电平控制信号用“SWITCH UNIT”中的二进制数据开关来模拟,其中Cn、ALU-B、SW-B为低电平有效,LDDR1、LDDR2为高电平有效。 图2.4 实验接线图(2 用二进制数码开关向DR1和DR2寄存器置数。具体操作步骤图示如下: (3 检验DR1和DR2中存的数是否正确,具体操作为:关闭数据输入三态门(SW-B=1,打开ALU输出三态门(ALU-B=0,当置S3、S2、 S1、S0 、M为11111时,总线指示灯显示DR1中的数,而置成10101时总线指示灯显示DR2中的数。(4 验证74LS181的算术运算和逻辑运算功能(采用正逻辑在给定

14、DR1=65、DR2=A7的情况下,改变运算器的功能设置,观察运算器的输出,填入下表中,并和理论分析进行比较、验证。表2.2M=0(算术运算DR1 DR2 S3 S2 S1 S0 Cn=1无进位 Cn=0有进位M=1(逻辑运算65 65 65 A7A7A70000000100100011010001010110011110001001101010111100110111101111F=(65F=(E7F=(7DF=( F=( F=( F=( F=( F=( F=( F=( F=( F=( F=( F=( F=( F=(66F=(E8F=(7EF=( F=( F=( F=( F=( F=( F=

15、( F=( F=( F=( F=( F=( F=( F=(9AF=(18F=(82F=( F=( F=( F=( F=( F=( F=( F=( F=( F=( F=( F=( F=( 六.思考与分析:(1运算器主要由哪些器件组成?怎样连接这些器件?七.实验报告要求:(1画出该实验电路接线图,叙述74LS181的逻辑功能。(2在实验过程中,出现了哪些问题?是如何解决的?(3回答思考题(二 进位控制实验一.实验目的1.验证带进位控制的算术运算功能发生器的功能。2.按指定数据完成几种指定的算术运算。二.实验设备TDN-CM+计算机组成原理教学实验系统一台,排线若干。三.实验内容1.实验原理 图2.

16、5 进位控制实验原理图进位控制运算器的实验原理如图2.5所示,在实验(1的基础上增加进位控制部分,其中181的进位进入一个74锁存器,其写入是由T4和AR信号控制,T4是脉冲信号,实验时将T4 连至“ STATE UNIT”的微动开关KK2上。AR是电平控制信号(低电平有效,可用于实现带进位控制实验,而T 4脉冲是将本次运算的进位结果锁存到进位锁存器中。2.实验步骤(1 按图2.6连接实验线路,仔细查线无误后,接通电源. 图2.6 实验接线图(2 用二进制数码开关向DR 1和DR 2寄存器置数,具体方法: 关闭ALU 输出三态门(ALU-B=1,开启输入三态门(SW-B=0,设置数据开关 例如

17、向DR 1存入01010101,向DR 2存入10101010。具体操作步骤如下: 进位标志清零具体操作方法如下:实验板中“SWITCH UNIT”单元中的CLR 开关为标志CY、ZI 的清零开关,它为零时是清零状态,所以将次开关做1Æ0Æ1操作,即可使标志位清零。注:进位标志指示灯CY 亮时表示进位标志为“0”,无进位;标志指示灯CY 灭时表示进位为“1”,有进位。(3 验证带进位运算及进位锁存功能,使Cn=1,Ar=0来进行带进位算术运算。例如:做加法运算,首先向DR 1 、DR 2置数,然后使ALU-B=0,S 3 S 2 S 1 S 0 M 状态为1 0 0 1 0

18、,此时数据总线上显示的数据为DR 1加DR 2加当前进位标志,这个结果是否产生进位,则要按动微动开关KK2,若进位标志灯亮,表示无进位;反之,有进位。(三 移位运算实验一.实验目的验证移位控制的组合功能。二.实验设备TDN-CM+计算机组成原理教学实验系统一台,排线若干。三.实验内容实验原理 图2.7移位运算实验原理图移位运算实验原理如图2.7所示,使用了一片74LS299作为移位发生器,其八输入/输出端以排针方式和总线单元连接。299-B 信号控制其使能端,T 4时序为其时钟脉冲,实验时将“W/R UNIT”中的T 4接至“STATE UNIT”中的KK2单脉冲发生器,由S0 S1 M 控制

19、信号控制其功能状态,其列表如下:299-B S1 S0 M 功能 0 00 任意保持 0 10 0 循环右移 0 10 1 带进位循环右移0 0 1 0 循环左移 0 0 1 1带进位循环左移任意11任意装数2.实验步骤(1按图2.8连接实验线路,仔细查线无误后接通电源。 图2.8 实验接线图(2移位操作: 置数,具体步骤如下: SW-B=0 S0=1 SW-B=1 S1=1T4= 移位,参照上表改变S 0 S 1 M 299-B 的状态,按动微动开关KK2,观察移位结果。实验三 存储器实验(一 静态随机存储器实验一.实验类型验证型实验(4学时二. 实验目的掌握静态随机存储器RAM工作特性及数

20、据的读写方法。三.实验环境(1TDN-CM+计算机组成原理教学实验系统一台,排线若干。(2PC机(或示波器一台。四.背景知识在微机系统中,常用的静态RAM有6116、6264、62256等。在本实验中使用的是6116。6116为2K8位的静态RAM,其逻辑图如下: WR五.实验内容1. 实验原理实验所用的半导体静态存储器电路原理如图3.1所示,实验中的静态存储器一片6116 (2K×8构成,其数据线接至数据总线,地址线由地址锁存器(74LS273给出。地址灯AD0AD7与地址线相连,显示地址线内容。数据开关经一三态门(74LS245连至数据总线,分时给出地址和数据。因地址寄存器为8位

21、,接入6116的地址A7A0,而高三位A8A10接地,所以其实际容量为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 为高电平有效。2. 实验步骤(1 形成时钟脉冲信号T3,具体接线方法和操作步骤如下:

22、 接通电源,用示波器接入方波信号源的输出插孔H23,调节电位器W1,使H23端输出实验所期望的频率的方波。 将时序电路模块(STATE UNIT中的和信号源单元(SIGNAL UNIT中的H23排针相连。 在时序电路模块中有两个二进制开关“STOP”和“STEP” 。将“STOP”开关置为“RUN”状态、“STEP”开关置为“EXEC”状态时,按动微动开关START,则T3输出为连续的方波信号,此时调节电位器W1,用示波器观察,使T3输出实验要求的脉冲信号。当“STOP”开关置为“RUN”状态、“STEP”开关置为“STEP”状态时,每按动一次微动开关START,则T3输出一个单脉冲,其脉冲宽

23、度与连续方式相同。 关闭电源。 图3.1 存储器实验原理图(2 按图3.2连接实验线路,仔细查线无误后接通电源。由于存储器模块内部的连线已经接好,因此只需完成实验电路的形成、控制信号模拟开关、时钟脉冲信号T3 与存储模块的外部连接。 图3.2 实验接线图(3给存储器的00、01、02、03、04地址单元中分别写入数据11、12、13、14、15,具体操作步骤如下:(以向00号单元写入11为例 依次读出第00、01、02、03、04号单元中的内容,观察上述各单元中的内容是否与前面写入的一致。具体操作步骤如下:(以从0号单元读出11数据为例 六.七.其各信号的功能为:EMPTY:FIFO存储器为空

24、标志,高电平有效。FULL:FIFO存储器满标志,高电平有效。RST:清FIFO存储器为空。FIFOWR:FIFO存储器写入信号,低电平有效。FIFORD:FIFO存储器读信号,低电平有效。ID0ID7:FIFO存储器输入数据线。 C1 C2 C3 C4FIFORD OE1RST FULL EMPTY一. 实验步骤(1编写cpld芯片设计程序1.顶层电路图模块,见图3.3 图3.3顶层电路图模块 2.FIFO控制逻辑模块(fifo.ablMODULE FIFO"INPUTRST,FIFORD,FIFOWR PIN ;"OUTPUTFULL,EMPTY PIN ISTYPE

25、'COM'C1,C2,C3,C4 PIN ISTYPE 'COM'"NODEOE1,OE2,O2,O1 PIN ISTYPE 'REG'FLAGG PIN ISTYPE 'REG'"OE=OE2,OE1; O=O2,O1;"EQUATIONSOE.CLK=FIFORD;O.CLK=!FIFOWR;OE.AR=!RST;O.AR=!RST;FLAGG.CLK=FIFOWR;FLAGG.AR=(!FIFORD#(!RST;FLAGG:=1;WHEN OE=3 THEN OE:=0 ELSE OE:=OE+

26、1;WHEN O=3 THEN O:=0 ELSE O:=O+1;C1=FIFOWR&!O2&!O1;C2=FIFOWR&!O2&O1;C3=FIFOWR&O2&!O1;C4=FIFOWR&O2&O1;EMPTY=(OE=O&!FLAGG;FULL=(OE=O&FLAGG;END3.LS273模块(ls273.ablMODULE LS273"INPUTCLK PIN ;I7,I6,I5,I4,I3,I2,I1,I0 PIN ;"OUTPUTO7,O6,O5,O4,O3,O2,O1,O0 PIN

27、ISTYPE 'REG'I=I7,I6,I5,I4,I3,I2,I1,I0;O=O7,O6,O5,O4,O3,O2,O1,O0;"EQUATIONSO.CLK=CLK;O:=I;END4.MUX4多路选择模块(mux4.ablMODULE MUX4"INPUTOE1,OE2 PIN ;D07,D06,D05,D04,D03,D02,D01,D00 PIN ;D17,D16,D15,D14,D13,D12,D11,D10 PIN ;D27,D26,D25,D24,D23,D22,D21,D20 PIN ;D37,D36,D35,D34,D33,D32,D31,

28、D30 PIN ;"OUTPUTO7,O6,O5,O4,O3,O2,O1,O0 PIN ;"I0=D07,D06,D05,D04,D03,D02,D01,D00;I1=D17,D16,D15,D14,D13,D12,D11,D10;I2=D27,D26,D25,D24,D23,D22,D21,D20;I3=D37,D36,D35,D34,D33,D32,D31,D30;OD=O7,O6,O5,O4,O3,O2,O1,O0;OE=OE2,OE1;EQUATIONSWHEN OE=0 THEN OD=I0;ELSE WHEN OE=1 THEN OD=I1;ELSE WHEN

29、OE=2 THEN OD=I2;ELSE WHEN OE=3 THEN OD=I3;END(3 编译上述文件,并将生成的JEDEC文件下载至ISPLSI1032E中。(4按图3.4实验连线图接线。 图3.4实验连线图(5操作步骤接线图中OO1、OO2、OOE1、OOE2、OOEE1、OOEE2是六个观察记数的指示灯,其中OO1、OO2是写信号记数,OOE1、OOE2是读信号记数,OOEE1、OOEE2是FIFO中的数据个数。FULL 及EMPTYy是满和空标志灯。实验时,先拨动SW-B开关置“0”,拨动CLR开关使FIFO清空。然后给INPUT DEVICE 单元中置一个数,按动START,此

30、时将此数写入到FIFO中,依次写四次后,FULL满标志置位。此时再也写不进去,然后连续按动KK2-读信号,将顺序读出所存的四个数,从总线显示灯检查结果是否与理论值一致。实验四 微控制器实验一. 实验类型验证型实验(4学时二. 实验目的1.掌握时序产生器的组成原理。2.掌握微程序控制器的组成原理。3.掌握微程序的编制、写入,观察微程序的运行。三.实验环境(1TDN-CM+计算机组成原理教学实验系统一台,排线若干。(2PC机(或示波器一台。四.背景知识1. 微程序控制器的基本原理(1微程序控制的优点:微程序控制技术可代替直接由硬件连线的控制技术。由于微程序控制方法规整性好,灵活方便,通用性强,因此

31、在大型复杂的数字系统设计中广泛应用,成为控制器的主流设计方法。(2微程序控制的基本思想:微程序控制的基本思想,就是仿照通常的解题程序的方法,把所有的控制命令信号汇集在一起编码成所谓的微指令,再由微指令组成微程序,存放在一个EPROM里。系统运行时,一条又一条地读出这些微指令,产生执行部件所需要的各种控制信号,从而驱动执行部件进行所规定的操作。(3微指令的结构:控制器通过一条条控制线向执行部件发出各种控制命令,我们把这些控制命令叫做微命令。而执行部件接受微命令所执行的操作叫做微操作。在系统的一个基本状态周期(又称机器周期中,一组实现一定操作功能的微命令的组合,构成一条微指令。强调两点:第一,一条

32、微指令的有效持续时间是系统的一个基本周期,它表示从ROM 中读出微指令与执行这条微指令的时间总和。当从ROM中读出下一条微指令后,当前的这条微指令即失效。第二,一条微指令中包含若干个微命令,它们分头并行地控制执行部件进行相应的微操作。微指令除给出微命令信息外,还应给出测试判别信息。一旦出现此信息,执行这条微指令时要对系统的有关标志进行测试,从而实现控制算法流程图中出现的条件分支。微指令中还包含一个下一地址字段,该字段将指明ROM中下一条微指令的地址。 上图示出了微指令的典型结构。长条框内的符号×表示一个二进制位(bit。其中微命令字段给出执行部件的控制信号:×编码为1,表示

33、有微命令,×编码为0表示无微命令。测试判别字段和下一地址字段一起实现顺序控制:当测试判别字段无效时(×编码为0,下址字段信息即是下条微指令的地址;当判别测试字段有效时(其中一个X编码为1,根据执行部件反馈线上的标志信息对下址字段信息进行修改,修改好的地址即为下条微指令的地址。(4微程序微程序是由若干条微指令组成的序列。在计算机中,一条机器指令的功能可由若干条指令组成的微程序来解释和执行。在一般数字系统中,微程序相当于前述的ASM流程图,也就是将控制器的控制算法变成了微程序流程图,并用EPROM来实现。微程序概念的引入,使大型复杂数字系统控制器的设计发生了革命性的变化。因为微

34、程序技术可代替硬件布线的控制技术,即由门电路和触发器等组成的硬件网络可被存有控制代码的EPROM存储器所取代。2 微程序控制器的组成微程序控制器的结构与微指令的格式密切相关。下图是微程序控制器的结构框图。它由控制存储器、微地址寄存器、微命令寄存器和地址转移逻辑几部分组成。微地址寄存器和微命令寄存器两者的总长度即为一条微指令的长度,二者合在一起称为微指令寄存器。 (1控制存储器(ROMROM中存放微程序,也就是全部的微指令。ROM的容量取决于微指令的总数。假如控制器需要128条微指令,则微地址寄存器长度为7位。ROM的字长取决于微指令长度。如果微指令为32位,则ROM的字长就是32位。实际应用中

35、ROM可采用EPROM或E2PROM、EAROM,用户写入和修改微程序比较方便。(2微命令寄存器微命令寄存器暂存由控制存储器中读出的当前微指令中控制字段与测试判别字段信息,可由8D寄存器组成。(3微地址寄存器微地址寄存器暂存由控制存储器读出的当前微指令的下址字段信息。它可由带RD、S D 强置端的D触发器组成。其中时钟端和D端配合用做ROM的读出打入,用S D进行下址修改。(4地址转移逻辑微指令由ROM读出后直接给出下一条微指令的地址,这个地址就放在微地址寄存器中。当微程序出现分支时通过地址转移逻辑去修改微地址寄存器内容,并按修改好的微地址读出下条微指令。地址转移逻辑是一个组合逻辑电路,其输入

36、是当前微指令的判别测试字段P i、执行部件反馈的“状态条件”及时间因素T4(5控制时序信号上图中标明了一个基本机器周期中的控制时序信号。例如用上一周期的T4时间按微地址寄存器内容从ROM中读一条微指令,经过一段时间后被读出,用当前周期的T1时间打入到微指令寄存器。T2、T3时间用来控制执行部件进行操作。T4时间修改微地址寄存器内容并读出下一条微指令。3 微程序控制器的设计步骤(1设计微程序设计微程序,就是确定微程序流程图,也就是控制算法流程图。微程序流程图中的一条微指令,相当于ASM流程图中的一个状态。由于控制存储器有足够的容量,状态分配和状态化简这两种传统技术在微程序设计中已失去意义。控制存

37、储器中一个地址转移到下一个地址是随意的,灵活的。因此增加微指令或减少微指令不必改动硬件。总之,以微指令结构为基础,就可以设计任何所要求的微程序,可长可短,灵活自如,且能实现多路并行转移,而不受“状态分配”的限制。(2确定微指令格式微指令格式中的操作控制字段取决于执行部件的子系统需要多少微指令。假定采用直接控制方式,执行部件需要10个微命令,则操作控制字段需要10位。测试判别字段取决于微程序流程图中有多少处分支转移。假定有3处分支,则测试判别字段需要3位。下址字段取决于微程序流程图的规模。假定微程序共用50条微指令,则下址字段至少需要6位。这是因为ROM地址译码时,26=64,6位地址可容纳64

38、条微指令。(3将微程序编译成二进制代码根据确定的微指令格式,将微程序流程图中的每一条指令编译成二进制代码,这项工作可由人工完成。(4微程序写入控制存储器将二进制代码的微程序写入E2PROM中。(5设计硬件电路硬件电路包括微地址寄存器、微命令寄存器和地址转移逻辑三部分。前两部分可选用适当的标准寄存器芯片(如74LS36、74LS273等。地址转移逻辑的输入是测试判断标志P i、状态条件和时间因素T j(读ROM时间,先写出逻辑表达式,然后用门电路芯片实现。五.实验内容1. 实验原理实验所用的时序电路原理如图4.1所示,可产生4个等间隔的时序信号TS1TS4,其中为时钟信号,由实验台右上方的方波信

39、号源提供,可产生频率及脉宽可调的方波信号。学生可根据实验自行选择方波信号的频率及脉宽。为了便于控制程序的运行,时序电路发生器也设置了一个启停控制触发器Cr,使TS1TS4信号输出可控。图中STEP(单步、STOP (停机分别是来自实验板上方中部的两个二进制开关STEP、STOP的模拟信号。START键是来自实验板上方中部的一个微动开关START的按键信号。当STEP开关为0时(EXEC,一旦按下启动键START,运行触发器Cr一直处于“1”状态,因此时序信号TS1TS4将周而复始地发送出去。当STEP为1(STEP时,一旦按下启动键,机器便处于单步运行状态,即此时只发送一个CPU周期的时序信号

40、就停机。利用单步方式,每次只读一条微指令,可以观察微指令的代码与当前微指令的执行结果。另外,当机器连续运行时,如果STOP开关置“1”(STOP,也会使机器停机。由于时序电路的内部线路已经连好,所以只需将时序电路与方波信号源连接(即将时序电路的时钟脉冲输入端接至方波信号发生器输出端H23,时序电路的CLR已接至实验板左下方的CLR模拟开关上。 图4.1 时序电路原理图2.微程序控制电路与微指令格式(1 微程序控制电路微程序控制器的组成见图4.2,其中控制存储器采用3片2816的E2PROM,具有掉电保护功能,微命令寄存器18位,用两片8D触发器(273和一片4D(175触发器组成。微地址寄存器

41、6位,用三片正沿触发的双D触发器(74组成,它们带有清“0”端和预置端。在不判别测试的情况下,T2 时刻打入微地址寄存器的内容即为下一条微指令地址。当T4时刻进行测试判别时,转移逻辑满足条件后输出的负脉冲通过强置端将某一触发器置为“1”状态,完成地址修改。在该实验电路中设有一个编程开关(位于实验板右上方,它具有三种状态:PROM(编程、READ(校验、RUN(运行。当处于“编程状态”时,学生可根据微地址和微指令格式将微指令二进制代码写入到控制存储器2816中。当处于“校验状态”时,可以对写入控制存储器中的二进制代码进行验证,从而可以判断写入的二进制代码是否正确。当处于“运行状态”时,只要给出微

42、程序的入口微地址,则可根据微程序流程图自动执行微程序。图中微地址寄存器输出端增加了一组三态门,目的是隔离触发器的输出,增加抗干扰能力,并用来驱动微地址显示灯。 图4.2微程序控制器的试验原理图(2 微指令格式微指令字长共24位,其控制位顺序如下: 24 23 22 21 20 19 18 171615 14 1312 11 109 8 7 654321S3 S2 S1 S0 MCn WE A9A8 ABCµA5 µA4µA3 µA2 µA1 µA0A 字段B 字段C 字段 15 14 13 选择 0 0 0 0 0 1 LDRi 0

43、1 0 LDDR1 0 1 1 LDDR2 1 0 0 LDIR 1 0 1 LOAR 11LDAR其中UA5UA0为6位的后续微地址,A、B、C 为三个译码字段,分别由三个控制位译码出多位。C 字段中的P(1P(4是四个测试字位。其功能是根据机器指令及相应微代码进行译码,使微程序转入相应的微地址入口,从而实现微程序的顺序、分支、循环运行,其原理如图4.3所示,图中I7I2为指令寄存器的第72位输出,SE5SE1为微控器单元微地址锁存器的强置端输出。AR 为算术运算是否影响进位及判零标志控制位,其为零有效。B 字段中的RS-B、R0-B、RI-B 分别为源寄存器选通信号、目的寄存器选通信号及变

44、址寄存器选通信号,其功能是根据机器指令来进行三个工作寄存器R0、R1及R2的选通译码,其原理如图4.4,图中I0I3为指令寄存器的第03位,LDRi 为打入工作寄存器信号的译码器使能控制位。9 8 7 选择 0 0 0 0 0 1 P(1 0 1 0 P(2 0 1 1 P(3 1 0 0 P(4 1 0 1 AR 11LDPC121110选择 0 0 0 0 0 1 RS-B 0 1 0 RD-B 0 1 1 RI-B 1 0 0 299-B 1 0 1 ALU-B 11PC-B 图4.3 指令译码 图4.4寄存器译码 3.实验步骤(1 图4.5为几条机器指令对应的参考微程序流程图,将全部微

45、程序按微指令格式变成二进制代码,可得到表4.1的二进制代码表。(一个矩形方框表示一条微指令,方框中的内容表示该指令执行的微操作,右上角的数字是该条指令的微地址,用八进制表示。P(1为测试字。 图4.5 微程序流程图表4.1 二进制代码表微地址 S3S2S1S0 M Cn WE A9 A8 A B C µA5········µA00 0 0 0 0 0 0 0 0 1 1000 000 100 0100000 1 0 0 0 0 0 0 0 1 1110 110 110 0000100 2 0 0

46、 0 0 0 0 0 0 1100 000 001 0010000 3 0 0 0 0 0 0 0 0 1110 000 000 0001000 4 0 0 0 0 0 0 0 0 1011 000 000 0001010 5 0 0 0 0 0 0 0 1 1010 001 000 0001100 6 1 0 0 1 0 1 0 1 1001 101 000 0000010 7 0 0 0 0 0 0 0 0 1110 000 000 0011011 0 0 0 0 0 0 0 0 0 0001 000 000 0000011 1 0 0 0 0 0 0 0 1 1110 110 110 0

47、000111 2 0 0 0 0 0 0 0 1 1110 110 110 0001111 3 0 0 0 0 0 0 0 1 1110 110 110 0011101 4 0 0 0 0 0 0 0 1 1110 110 110 0101101 5 0 0 0 0 0 0 1 0 1000 001 000 0000011 6 0 0 0 0 0 0 0 0 1110 000 000 0011111 7 0 0 0 0 0 0 0 0 1010 000 000 0101012 0 0 0 0 0 0 0 0 1 1110 110 110 0100102 1 0 0 0 0 0 0 0 1 11

48、10 110 110 0101002 2 0 0 0 0 0 0 0 0 1010 000 000 0101112 3 0 0 0 0 0 0 0 1 1000 000 000 0000012 4 0 0 0 0 0 0 0 0 0010 000 000 0110002 5 0 0 0 0 0 1 1 1 0000 101 000 0000012 6 0 0 0 0 0 0 0 0 1101 000 110 0000012 7 0 0 0 0 0 1 1 1 0000 101 000 0100003 0 0 0 0 0 0 1 1 0 1000 101 000 010001(2 按图4.6连接

49、实验线路,仔细查线无误后接通电源。 图4.6 实验接线图(3 观测时序信号用双踪示波器(或用 PC 示波器功能观察方波信号源的输出,时序电路中的 “STOP”开关置为“RUN”,“STEP”开关置为“EXEC”。按动START按键,从方波器上可观察到TS1、TS2、TS3、TS4各点的波形,比较它们的相互关系,画出其波形,并标注测量所得的脉冲宽度,见图4.7。 图4.7 时序状态图(4 观察微程序控制器的工作原理: 编程A. 将编程开关置为PROM(编程状态。B. 将实验板上“STATE UNIT“中的“STEP”置为“STEP”,“STOP”置为“RUN”状态。C. 用二进制模拟开关置微地址

50、M A5-M A0。D. 在M K24M K1开关上置微代码,24位开关对应24位显示灯,开关量为“0”时灯亮,开关量为“1”时灯灭。E. 启动时序电路(按动启动按纽“START”,即将微代码写入到E2PROM 2816的相应地址对应的单元中。F. 重复C-E步骤,将表3.1的微代码写入2816。 校验A. 将编程开关设置为READ(校验状态。B. 将实验板的“STEP”开关置为“STEP”状态。“STOP”开关置为“RUN”状态。C. 用二进制开关置好微地址M A5-M A0。D. 按动“START”键,启动时序电路,读出微代码.观察显示灯MD24MD1的状态(灯亮为“0”,灭为“1”,检查

51、读出的微代码是否与写入的相同。如果不同,则将开关置于PROM编程状态,重新执行即可。 单步运行A. 将编程开关置于“RUN(运行”状态。B. 实验板的“STEP”及“STOP” 开关保持原状。C. 操作CLR开关(拨动开关在实验板右下角使CLR信号101,微地址寄存器µA5-µA0清零,从而明确本机的运行入口微地址为000000(二进制。D. 按动“START”键,启动时序电路,则每按动一次启动键,读出一条微指令后停机,此时实验台上的微地址显示灯和微命令显示灯将显示所读出的一条指令。注意:在当前条件下,可将“MICRO-CONTROLLER”单元的SE6SE1接至“SWIT

52、CH UNIT”中的S3Cn对应二进制开关上,可通过强置端SE1SE6 人为设置分支地址。将SE1SE6对应二进制开关量为“1”,当需要人为设置分支地址时,将某个或几个二进制开关置“0”,相应的微地址位即被强置为“1”,从而改变下一条微指令的地址。(二进制开关置为“0”,相应的微地址位将被强置为“1” 连续运行A. 将编程开关置为“RUN(运行”状态。B. 将实验板的单步开关“STEP”置为“EXEC”状态。C. 使CLR从101,此时微地址寄存器清“0”,从而给出取指微指令的入口地址为000000(二进制。D. 启动时序电路,则可连续读出微指令。六.思考与分析:(1微程序控制器的原理是什么?

53、微指令的后续地址怎样形成?七.实验报告要求:(1画出该实验电路接线图。(2在实验过程中,出现了哪些问题?是如何解决的?(3回答思考题实验五 总线控制实验一. 实验类型验证型实验(4学时二. 实验目的1.理解总线的概念及其特性。2.掌握总线传输控制特性。三.实验环境(1TDN-CM+计算机组成原理教学实验系统一台,排线若干。四.背景知识1. 总线结构微型计算机硬件结构的最重要特点是总线(Bus结构。它将信号线分成三大类,并归结为数据总线(Date Bus、地址总线(Address Bus和控制总线(Control Bus。这样就很适合计算机部件的模块化生产,促进了微计算机的普及。微型计算机的总线

54、化硬件结构图如图所示。 微型计算机总线化硬件结构图五.实验内容1.总线的基本概念总线是多个系统部件之间进行数据传送的公共通路,是构成计算机系统的骨架。借助总线连接,计算机在系统各部件之间实现传送地址、数据和控制信息的操作。因此,所谓总线就是指能为多个功能部件服务的一组公用信息线。2.实验原理实验所用总线传输实验框图如图5.1所示,它将几种不同的设备挂至总线上,有存储器、输入设备、输出设备、寄存器。这些设备都需要有三态输出控制,按照传输要求恰当有序的控制它们,就可实验总线信息传输。 图5.1总线传输实验框图3.实验要求根据挂在总线上的几个基本部件,设计一个简单的流程: 输入设备将一个数打入R0寄

55、存器。 输入设备将另一个数打入地址寄存器。 将R0寄存器中的数写入到当前地址的存储器中。 将当前地址的存储器中的数用LED数码管显示。4.实验步骤(1按照图5.2实验接线图进行连线。 图5.2 实验接线图(2具体操作步骤图示如下:初始状态应设为:关闭所有三态门(SW-B=1,CS=1,R0-B=1,LED-B=1,其他控制信号为LDAR=0,LDR0=0,W/R(RAM=1,W/R(LED=1。 六.思考与分析:(1总线有哪几种通讯方式?何为总线仲裁?七.实验报告要求:(1画出该实验电路接线图。(2在实验过程中,出现了哪些问题?是如何解决的?(3回答思考题实验六 基本模型机设计与实现一.实验类

56、型验证型实验(4学时三. 实验目的1. 在掌握部件单元电路实验的基础上,进一步将其组成系统构造一台基本模型计算机。2. 为其定义五条机器指令,并编写相应的微程序,具体上机调试掌握整机概念。三.实验环境1. TDN-CM+计算机组成原理教学实验系统一台,排线若干。2. PC机一台四.背景知识五.实验内容1. 实验原理部件实验过程中,各部件单元的控制信号是人为模拟产生的,而本次实验将能在微程序控制下自动产生各部件单元控制信号,实现特定指令的功能。这里,计算机数据通路的控制将由微程序控制器来完成,CPU从内存中取出一条机器指令到指令执行结束的一个指令周期全部由微指令组成的序列来完成,即一条机器指令对

57、应一个微程序。本实验采用五条机器指令: IN(输入、ADD(二进制加法、STA(存数、OUT(输出、JMP(无条件转移,其指令格式如下(前4位为操作码:助记符 机器指令码 说 明IN 0000 0000 “INPUT DEVICE”中的开关状态 RO ADD addr 0001 0000 ×××××××× R0+addr R0STA addr 0010 0000 ×××××××× RO addrOUT addr 0011 0000 ××××

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论