计算机组成原理实验指导改.docx
《计算机组成原理实验指导改.docx》由会员分享,可在线阅读,更多相关《计算机组成原理实验指导改.docx(99页珍藏版)》请在冰豆网上搜索。
计算机组成原理实验指导改
计算机组成原理
实验指导书
计算机组成原理课程组
湖南工程学院计算机与通信学院
目录
《计算机组成原理》实验教学大纲3
实验一运算器实验6
1、算术逻辑运算实验6
2、移位运算实验10
3、进位控制实验13
4、并行加法器设计实验15
5、阵列乘法器设计实验22
实验二存储器实验24
1、静态随机存储器实验24
2、先进先出(FIFO)存储器实验27
实验三微控制器实验30
实验四总线控制实验37
实验五基本模型机设计与实现39
附录1 CMPP软件使用说明45
附录2:
TD—CM++系统介绍59
2.1TDN-CM++系统概述59
2.2TDN-CM++系统的配置与安装60
2.3 TDN-CM++系统硬件环境63
2.4TDN-CM++系统常见故障的分析及处理81
附录3 实验用芯片介绍82
《计算机组成原理》实验教学大纲
课程代码:
课程性质:
非独立设课课程分类:
专业课程
实验学分:
实验学时:
14学时
适用专业:
计算机科学与技术开课单位:
计算机与通信学院
一、实验教学目标
本课程是计算机学科的一门专业基础实验课,它的目的是使学生了解计算机系统的硬件和软件构成方法,掌握其硬件系统中运算器、控制器、存储器、输入设备和输出设备的实现方法。
培养学生分析和设计计算机各部件的能力,特别是动手能力,使学生做到理论与实践相结合、硬件与软件相结合,逐步达到能运用理论知识设计一些性能良好的指令系统,提高自行设计、调试、分析问题和解决问题的能力。
二、主要仪器设备名称
TDNCM++计算机组成原理实验教学系统、高挡微型计算机。
三、实验基本要求
本课程要做6个以上的实验,范围涉及计算机的5大部件,既有验证实验,又有综合实验。
要求学生必须做好实验前的预习准备,包括弄懂各项实验的实验原理,熟悉各项实验中相关的理论知识,掌握对设计方法,制定实验步骤和记录格式。
在实验中学会使用相关仪器设备进行实验测试、观察和分析实验现象、排除实验故障的正确方法。
记录实验结果,编写实验报告。
每学期实验课程结束后进行实验课程的考核。
四、实验项目设置与内容
主要内容:
1、运算器部件实验:
包括算术运算和逻辑运算、进位控制、移位运算、并行加法。
2、存储器部件实验:
包括存储器的读写操作和先进先出(FIFO)存储器。
3、控制器部件实验:
包括微程序和时序技术。
4、总线控制实验:
包括传输控制技术。
5、基本模型机设计实验:
包括微指令设计技术和指令系统的设计技术。
序号
实验名称
内容提要
实验学时
每组人数
实验类型
开出要求
1
运算器部件实验
包括算术运算和逻辑运算、进位控制、移位运算、并行加法
4
2
验证
必做
2
存储器部件实验
包括存储器的读写操作和先进先出(FIFO)存储器
2
2
验证
必做
3
控制器部件实验
包括微程序和时序技术
2
2
设计
必做
4
输入输出设备实验
包括传输控制技术
2
2
设计
选做
5
整机系统设计
包括微指令设计技术和指令系统的设计技术
4
2
设计
必做
五、实验考核
实验考核部分占课程总成绩的比例为:
20%。
六、教材及主要教学参考书
陈华光主编,《计算机组成与结构》,北京:
机械工业出版社,2010.1。
TDN-CM++计算机组成原理教学实验系统实验指导书,西安唐都科教仪器公司
王爱英主编,《计算机组成与结构》(第三版),北京:
清华大学出版社,2001.2。
注意事项
1.使用前后均应仔细检查主机板,防止导线、元件等物品落入装置内导致线路短路、元件损坏。
2.电源线应放置在机内专用线盒中。
3.注意系统的日常维护,经常清理灰尘和杂物。
4.电源关闭后,不能立即重新开启,关闭与重新开启之间至少应有30秒间隔。
5.注意排线连接方式,排线由一组有颜色的导线组成,相同颜色(如红色)应接相应位(都接低位)。
实验一运算器实验
1、算术逻辑运算实验
一、实验目的
1.掌握简单运算器的数据传送通路。
2.验证运算功能发生器(74LS181)的组合功能。
二、实验原理
实验中所用的运算器数据通路如图1.1-1所示。
其中运算器由两片74LS181以并/串形式构成8位字长的ALU。
运算器的输出经过一个三态门(74LS245)和数据总线相连,运算器的两个数据输入端分别由两个锁存器(74LS273)锁存,锁存器的输入连至数据总线,数据开关(INPUTDEVICE)用来给出参与运算的数据,并经过一三态门(74LS245)和数据总线相连,数据显示灯(BUSUNIT)已和数据总线相连,用来显示数据总线内容。
图1.1-1中已将用户需要连接的控制信号用圆圈标明(其他实验相同,不再说明),其中除T4为脉冲信号,其它均为电平信号。
由于实验电路中的时序信号均已连至“W/RUNIT”的相应时序信号引出端,因此,在进行实验时,只需将“W/RUNIT”的T4接至“STATEUNIT”的微动开关KK2的输出端,按动微动开关,即可获得实验所需的单脉冲,而S3、S2、S1、S0、CN、M、LDDR1、LDDR2、ALU—B、SW—B各电平控制信号用“SWITCHUNIT”中的二进制数据开关来模拟,其中CN、ALU—B、SW—B为低电平有效,LDDR1、LDDR2为高电平有效。
三、实验仪器
TDN-CM++计算机组成原理教学实验系统一台,排线若干。
四、实验步骤
(1)按图1.1-2连接实验线路,图中将用户需要连接的信号线用小圆圈标明。
仔细查线无误后,接通电源。
(2)用二进制数码开关向DR1和DR2寄存器置数。
具体操作步骤图示如下:
寄存器DR2
(10100111)
数据开关
(10100111)
寄存器DR1(01100101)
三态门
数据开关
(01100101)
ALU-B=1LDDR1=1LDDR1=0
SW-B=0LDDR2=0LDDR2=1
T4=T4=
A用输入开关向暂存器DR1置数。
①拨动输入开关形成二进制数01100101(或其它数值)。
(数据显示灯亮为0,灭为1)。
②使SWITCHUNIT单元中的开关SW-B=0(打开数据输入三态门)、ALU-B=1(关闭ALU输出三态门)、LDDR1=1、LDDR2=0。
图1.1-1运算器数据通路图
图1.1-2实验接线图
③按动微动开关KK2,则将二进制数01100101置入DR1中。
B用输入开关向暂存器DR2置数。
①拨动输入开关形成二进制数10100111(或其它数值)。
②SW-B=0、ALU-B=1保持不变,改变LDDR1、LDDR2,使LDDR1=0、LDDR2=1。
③按动微动开关KK2,则将二进制数10100111置入DR2中。
检验DR1和DR2中存的数是否正确,具体操作为:
关闭数据输入三态门(SW-B=1),打开ALU输出三态门(ALU-B=0),当置S3、S2、S1、S0、M为11111时,总线指示灯显示DR1中的数,而置成10101时总线指示灯显示DR2中的数。
(3)验证74LS181的算术运算和逻辑运算功能(采用正逻辑)
将SW-B=1、ALU-B=0保持不变。
在给定DR1=65、DR2=A7的情况下,改变S3、S2、S1、S0、M、Cn的数值,并观察总线显示灯显示的结果,填入下表中。
并按表1.1-2进行验证。
五、分析整理实验数据,写出实验报告。
六、思考题
将实验数据和理论分析进行比较、验证。
分析产生错误的原因。
表1.1-1
DR1
DR2
S3S2S1S0
M=0(算术运算)
Cn=1无进位Cn=0有进位
M=1
逻辑运算
65
65
65
.
.
.
.
.
.
A7
A7
A7
.
.
.
.
.
.
0000
1001
1010
1011
1100
1101
1110
1111
2000
2001
1010
1011
1100
1101
1110
1111
F=(65)
F=(E7)
F=(7D)
F=()
F=()
F=()
F=()
F=()
F=()
F=()
F=()
F=()
F=()
F=()
F=()
F=()
F=(66)
F=(E8)
F=(7E)
F=()
F=()
F=()
F=()
F=()
F=()
F=()
F=()
F=()
F=()
F=()
F=()
F=()
F=(9A)
F=(18)
F=(82)
F=()
F=()
F=()
F=()
F=()
F=()
F=()
F=()
F=()
F=()
F=()
F=()
F=()
2、移位运算实验
一、实验目的
验证移位控制的组合功能。
二、实验原理
移位运算实验原理如图1.2-1所示,使用了一片74LS299作为移位发生器,其中输入/输出端以排针方式和总线单元连接。
299—B信号控制其使能端,T4时序为其时钟脉冲,实验时将“W/RUNIT”中的T4接至“STATEUNIT”中的KK2单脉冲发生器,由S0、S1、M控制信号控制其功能状态,其列表如下:
图1.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
任意
装数
移位运算实验原理如图1.2-1所示,使用了一片74LS299作为移位发生器,其输入/输出端以排针方式和总线单元连接。
299—B信号控制其使能端,T4时序为其时钟脉冲,实验时将“W/RUNIT”中的T4接至“STATEUNIT”中的KK2单脉冲发生器,由S0、S1、M控制信号控制其功能状态,其列表如下:
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
任意
装数
三、实验仪器
TDN-CM++计算机组成原理教学实验系统一台,排线若干。
四、实验步骤
(1)按图1.2-2连接实验线路,仔细查线无误后接通电源。
图1.2-2实验接线图
(2)移位操作:
1置数,具体步骤如下:
三态
门
SW-B=0S0=1SW-B=1
S1=1
T4=
②移位,参照上表改变S0、S1、M、299—B的状态,按动微动开关KK2,观察移位结果,填入下表中。
五、分析整理实验数据,写出实验报告
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.算出若置数10101010,进位分别为1或0时,执行3次不带进位左移和3次带进位左移的结果。
并和实验所得结果进行比较验证。
3、进位控制实验
一、实验目的
(1)了解带进位控制的运算器的组成结构。
(2)验证带进位控制的运算器的功能。
二、实验原理
图1.3-1所示为进位锁存及其显示电路。
运算器最高位进位输出Cn+4连接到一个锁存器(用74LS74实现)的输入端D,锁存器控制端的控制信号AR必须置为低电平,当T4脉冲来到时,进位结果就被锁存到进位锁存器中了,发光二极管这时显示为“灭”。
同时也将本次的进位输出结果带进了下次的运算中,作为下次运算的进位输入。
图1.3-1进位锁存及其显示电路
三、实验仪器
TDN-CM++计算机组成原理教学实验系统一台,排线若干。
四、实验步骤
(1)按图1.3-2连接实验电路并检查无误。
(2)打开电源开关。
(3)用输入开关向暂存器DR1和DR2置数,方法同前。
(4)关闭数据输入三态门(SW-B=1),打开ALU输出三态门(ALU-B=0),并使LDDR1=0、LDDR2=0,关闭寄存器打入控制门。
(5)对进位标志清零。
实验板上“SWITCHUNIT”单元中的CLR开关为标志CY、ZI的清零开关,它为零状态时是清零状态,所以将此开关做101操作,即可使标志位清零。
注意:
进位标志指示灯CY亮时表示进位标志为“0”,无进位;标志指示灯CY灭时表示进位为“1”,有进位。
(6)验证带进位运算及进位锁存功能。
使Cn=1,AR=0,进行带进位算术运算。
例如做加法运算,使ALU-B=0,S3S2S1S0M状态为10010,此时数据总线上显示的数据为DR1加DR2加当前进位标志的和,但这时的进位状态位还没有打入进位锁存器中,它是要靠T4节拍来打入的。
这个结果是否有进位产生,则要按动微动开关KK2,若进位标灯亮,则无进位,反之则有进位。
因做加法运算时数据总线一直显示的数据为DR1+DR2+CY,所以当有进位输入到进位锁存器后,总线显示的数据将为加上当前进位锁存器中锁存的进位位的结果。
图1.3-2
4、并行加法器设计实验
一、实验目的
(1)掌握并行加法器的原理及其设计方法。
(2)熟悉CPLD应用设计及EDA软件的使用。
二、实验原理
本节实验使用大规模可编程逻辑器件MAXIIEPM570T100C5来设计实现一个4位的并行进位加法器。
传统的数字系统设计只能是通过设计电路板来实现系统功能,而采用可编程逻辑器件,则可以通过设计芯片来实现系统功能。
从而有效地增强了设计的灵活性,提高了工作效率。
并能够缩小系统体积,降低能耗,提高系统的性能和可靠性。
对该器件的逻辑系统设计是通过使用硬件描述语言或原理图输入来实现的,硬件描述语言有ABEL、VHDL等多种语言,本节实验是使用原理图输入来进行编程的。
下面是一个用原理图输入设计一个四位并行加法器加法器的例子。
该加法器采用并行进位,有两组四位加数A3~A0、B3~B0输入,四位本地和F3~F0输出,一个低位进位C0输入及一个本地进位CY输出。
系统采用QuartusII软件来对可编程逻辑器件MAXIIEPM570T100C5进行编程设计实验。
QuartusII可采用原理图或硬件描述语言来进行设计输入,并能对所设计的数字电子系统进行功能仿真和时序仿真。
其编译器是此软件的核心,它能进行逻辑优化,并将逻辑映射到器件中去,自动完成布局与布线并生成编程所需要的熔丝图文件。
该软件支持多种可编程逻辑器件。
三、实验仪器
(1)TDN-CM++计算机组成原理教学实验系统一台,排线若干。
(2)PC微机一台。
四、实验步骤
(1)如图1.4-1所示,运行QuartusII软件。
(2)选择菜单FileNewProjectWizard,如图1.4-2所示,建立一个新工程。
出现如图1.4-3所示NewProjectWizard对话框界面。
(3)点击“Next”出现如图1.4-4所示的ADDERFILE对话框界面,在FILENAME栏中输入“ADDER”。
(4)点击“Next”出现如图1.4-5所示的器件设置对话框界面,选择CPLD开发板使用的MAXII系列EPM570T100C5芯片,一直点击“Next”按钮,完成新工程的建立。
(5)建立新工程后,选择菜单FileNew,弹出如图1.4-6所示的新建设计文件选择窗口。
创建图形设计文件,选择图1.4-6所示对话框中的“DeviceDesignFiles”页下的“BlockDiagram/SchematicFile”;若要创建VHDL描述语言设计文件则可选择图1.4-6所示对话框中“DeviceDesignFiles”页下的“VHDLFile”。
选择好所需要的设计输入方式后点击“OK”按钮,打开图形编辑器界面。
图1.4-1运行QuartusII软件界面
图1.4-2建立新工程向导图1.4-3NewProjectWizard对话框界面
(6)选择FileSaveAs菜单,在如图1.4-7所示的文件保存对话框中,将创建的图形设计文件的名称保存为工程顶层文件名称。
(7)在图形编辑器窗口中双击鼠标左键或选择菜单“EditInsertSymbol”,弹出如图1.4-8所示的Symbol对话框界面。
图1.4-4ADDFILE对话框界面
图1.4-5器件设置对话框界面图1.4-6新建设计文件选择窗口
图1.4-7文件保存对话框
(8)在Name栏中输入AND2,所选择符号出现在Symbol对话框的右边,点击“OK”按钮,选中该符号在合适的位置点击鼠标左键放置符号。
重复上述两步,在图形编辑工作区域中分别放置所需符号。
(9)将所需符号放置完成后,利用连线工具,如图1.4-9所示进行连接,并将INPUT与OUTPUT更改名称。
(10)设计完成后,选择FileSave菜单,将创建的图形文件保存。
选择ToolsCompilerTool菜单,出现如图1.4-10所示的编辑工具界面。
点击“Start”按钮开始对此工程进行逻辑分析、综合适配、时序分析等。
图1.4-8Symbol对话框界面
图1.4-9ADDER原理图
(11)如果设计正确则如图1.4-10所示完全通过各种编译,如果有错误则返回图形编辑工作区域进行修改,直至完全通过编译为止。
(12)选择AssignmentsAssignmentEditor菜单,在如图1.4-11所示的AssignmentEditor窗口中选择Pin标签页,在Edit中选择输入/输出引脚及对应的CPLD引脚。
图1.4-10编辑工具界面
图1.4-11AssignmentEditor窗口
(13)引脚分配完成后,选择ToolsCompilerTool菜单,在如图1.4-10所示的编辑工具界面中点击“Start”按钮,对此工程进行逻辑分析、综合适配、时序分析等。
完成后可选择AssignmentsTimingClosureFloorplan菜单,观察引脚分配的结果。
经过编辑后会生成可以配置到CPLD的POF文件,此时就可以将设计配置到芯片中。
(14)使用TDN-CM++实验系统及CPLD开发板,如图1.4-12所示进行实验接线,将下载电缆插入CPLD开发板的JTAG下载接口中。
仔细检查确保接线无误后打开电源。
图1.4-12并行加法器实验接线图
(15)在QuartusII软件中,选择ToolsProgrammer菜单,出现如图1.4-13所示的编程配置界面。
点击“AddFile”按钮添加需要配置的POF文件,选中Program/Configure,点击“Start”按钮就可以对芯片进行配置。
图1.4-13编程配置界面
(16)配置完成后拨动开关单元,使SW-B为低电平(开关向上),改变INA、INB的输入观察输出结果证明设计是否正确。
5、阵列乘法器设计实验
一、实验目的
(1)掌握乘法器的原理及其设计方法。
(2)熟练应用CPLD设计及EDA操作软件。
二、实验原理
本实验用CPLD来设计一个4×4位乘法器,其算式如下:
三、实验仪器
(1)TDN-CM++计算机组成原理教学实验系统一台,排线若干。
(2)PC微机一台。
四、实验步骤
(1)根据上述乘法的逻辑原理设计原理图。
(2)编辑、编译和下载。
使用QuartusII软件编辑原理图并进行编译,然后打开实验系统电源,将生成的POF文件下载到MAXIIEPM570T100C5中去。
(3)连接实验电路。
按图1.5-1连接实验电路。
(4)给定操作数,观察乘法器输出
将SWITCHUNIT单元中的SW-B、AR开关置为低电平状态。
在INPUTDEVICE单元中的8个开关的高4位为乘数A,低四位为被乘数B,而相乘的结果将在OUTPUTDEVICE单元中的数码管中以十六进制形式显示。
给A和B置不同的数,观察相乘的结果。
图1.5-1阵列乘法器接线图
实验二存储器实验
1、静态随机存储器实验
一、实验目的
掌握静态随机存储器RAM的工作特性及数据的读写方法。
二、实验原理
图2.1—1存储器实验原理图
实验所用的半导体静态存储器电路原理如图2.1-1所示,实验中的静态存储器由一片6116(2K×8)构成,其数据线接至数据总线地址线由地址锁存器(74LS273)给出。
地址灯AD0—AD7与地址线相连,显示地址线内容。
数据开关经一三态门(74LS245)连至数据总线,分别给出地址和数据。
因地址寄存器为八位,接入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相应插孔中,其脉冲宽度可调,其它电平控制信号由“SWITCHUNIT”单元的二进制开关模拟,其中SW—B为低电平有效,LDAR为高电平有效。
三、实验仪器
TDN—CM++计算机组成原理教学实验系统一台,排线若干。
四、实验内容及步骤
⑴形成时钟脉冲信号T3,具体连线方法和操作步骤如下:
①接通电源,用示波器接入方波信号源的输出插孔H24,调节电位器W1,使H24端输出实验所期望的频率的方波。
②将时序电路模块中的ф和H23排针相连。
③在时序电路模块中有两个二进制开关“STO