计算机组成原理实验指导书0901.docx
- 文档编号:3652000
- 上传时间:2022-11-24
- 格式:DOCX
- 页数:44
- 大小:5.47MB
计算机组成原理实验指导书0901.docx
《计算机组成原理实验指导书0901.docx》由会员分享,可在线阅读,更多相关《计算机组成原理实验指导书0901.docx(44页珍藏版)》请在冰豆网上搜索。
计算机组成原理实验指导书0901
前言
《计算机组成原理》是计算机与信息工程系的一门核心专业基础课程。
它从层次结构的观点和信息输入、处理和输出的顺序讲述计算机的结构及工作原理,使学生掌握计算机常用的逻辑器件、部件的原理、参数及使用方法,学习计算机设计中的入门性知识,以及简单、完备的单台计算机的基本组成原理,培养学生掌握硬件系统的分析、设计、开发、使用和维护的能力。
本课程主要任务是通过学习能够使学生在已有的计算机知识的基础上,对计算机组成有一个较全面、系统的了解,提高学生的计算机硬件基本知识和基本理论和实际操作的能力。
特别是通过学生实践,提高学生对计算机组成的认识,维护和应用技能。
实验的验收将分为两个部分。
第一部分是上机操作,包括检查程序运行和即时提问。
第二部分是提交书面的实验报告。
此外,针对以前教学中出现的问题,实验将采用每个实验逐个检查方式,每个实验都将应当在规定的时间内完成并检查通过,过期视为未完成该实验,不计成绩。
以避免期末集中检查方式产生的诸多不良问题,希望同学们抓紧时间,合理安排,认真完成。
实验要求及评分标准
一、实验要求:
在《计算机组成原理》的课程实验过程中,要求学生做到:
1.预习实验指导书有关部分,认真做好实验内容的准备,就实验可能出现的情况提前作出思考和分析。
2.仔细观察上机作时出现的各种现象,记录主要情况,作出必要说明和分析。
3.认真书写实验报告。
实验报告包括实验目的和要求,实验情况及其分析。
对需编程的实验,给出包含详细注释的源程序清单。
4.遵守机房纪律,服从辅导教师指挥,爱护实验设备。
5.实验课程不迟到。
如有事不能出席,所缺实验一般不补。
实验的验收将分为两个部分。
第一部分是上机操作,包括检查程序运行和即时提问。
第二部分是提交书面的实验报告(大作业)。
为避免期末考试方式产生的诸多不良问题,希望同学们抓紧时间,合理安排,认真完成。
二、评分标准:
1.没有正确的调试程序,最多只能得50分。
2.基本正确的调试程序,可以得60-70分。
。
3.能理解程序并给出详细注释,可得80分。
4.程序书写规范,遵守实验纪律,可得90分。
5.上述各项均做得比较好,可得100分。
评分标准的满分为100分,所有的评分标准的下一项均建立在前一项已经满足的情况下。
目录
实验一一位全加器实验...........................................
实验二4位二进制计数器实验........................................
实验三多路选择器实验............................................
实验四加减器实验................................................
实验五移位运算实验..............................................
实验六算术逻辑运算器实验.........................................
实验七-八寄存器堆实验..........................................
实验一一位全加器实验
【实验环境】
1.Windows2000或WindowsXP
2.QuartusII、GW48-PK2或DE2-115计算机组成原理教学实验系统一台,排线若干。
【实验目的】
1、熟悉原理图和VHDL语言的编写。
2、验证全加器功能。
【实验原理】
设计一个一位全加器,能完成两个二进制位的加法操作,考虑每种情况下的进位信号,完成8组数据的操作。
【实验步骤】
1.1建立工程项目
1.1.1启动QuartusⅡ
QuartusⅡ软件安装好后,在桌面上双击
图标,或执行菜单命令“开始”→“程序”→“Altera”→“QuartusⅡ”→“
QuartusⅡ”,打开如图1-1所示的界面。
单击此界面的“CreateaNewProject”按钮,可创建一个新的项目;单击“OpenExistingProject”按钮可打开一个以创建的项目;单击“OpenInteractiveTutorial”按钮可打开交互式指南,进入QuartusⅡ的使用指南。
如果单击右上角“
”按钮,可关闭此界面进入QuartusⅡ的主界面窗口,如图1-2所示。
如果选中左下角的“Don’tshowthisscreenagain”,以后启动QuartusⅡ时,将直接进入QuartusⅡ的主界面窗口。
1.1.2QuartusⅡ使用
1)工程项目的创建
(1)在图1-1中,单击“CreateaNewProject”按钮,或在图1-2中执行菜单命令“File”→“NewProjectWizard…”(注意,“New”是新建文件,不是这里的工程),弹出如图1-3所示的新建项目向导对话框。
(2)在新建项目向导对话框中单击“Next>”按钮,进入如图1-4所示的建立新设计项目对话框。
此对话框中的第1栏指定项目所在的工作库文件;第2栏指定项目名,项目名可以取任何名字,也可以直接用顶层文件的实体名作为项目名(建议使用);第3栏用于指定顶层文件的实体名。
本例中项目的路径为E:
\cpu,项目名与顶层文件的实体名同为“cpu”。
(3)在建立新设计项目对话框中单击“Next>”按钮,进入如图1-5所示的添加文件对话框。
由于本设计为新建的项目,还没有输入文件,所以可以不做任何操作。
如果已经有文件或调用以前的文件,最好先将该文件复制到本项目文件夹下,然后单击“AddAll”添加。
图1-1QuartusⅡ10.0软件启动界面
图1-2QuartusⅡ10.0主界面窗口
图1-3新建项目向导对话框
图1-4建立新设计项目对话框
注意:
任何一项设计都是一个项目(Project),必须首先为此项目建立一个放置与此项目相关的所有文件的文件夹,此文件夹将被QuartusⅡ默认为工作库(WorkLibrary)。
一般,不同的设计项目最好放在不同的文件夹中,而同一项目的所有文件都必须放在统一文件夹中,并且不要将文件夹设在计算机已有的安装目录中,不要将项目文件直接放在安装目录中。
如果“E:
\cpu”路径输入的是一个不存在的文件夹,则会弹出一个提示对话框,此时,单击“是”即可。
图1-5添加文件对话框
图1-6指定目标器件对话框
在添加文件对话框中单击“Next>”按钮,进入如图1-6所示的指定目标器件对话框。
在此对话框的“Devicefamily”区域“Family:
”栏中可选择目标器件系列;在“Showin‘Availabledevice’list”栏中可指定器件的封装(Package)、引脚数(Pincount)和器件速度等级(Speedgrade)来加快器件查找速度;在“Availabledevice”栏中可选择器件型号,本例按如图1-6所示选择器件型号“EP1C6Q240C8”。
(4)在指定目标器件对话框中单击“Next>”按钮,进入如图1-7所示的指定EDA工具对话框。
如果只利用QuartusⅡ软件的集成环境进行项目开发,而在整个过程中不使用其他EDA开发工具,在本操作中可不进行任何复选项的设定。
(5)在指定EDA工具对话框中单击“Next>”按钮,进入如图1-8所示的项目信息报告对话框。
在次对话框中可以看到目前所建立的项目文件的配置信息报告。
在此对话框中单击“Finish”按钮,即可完成本次设计项目的创建工作。
(6)项目建立完成后,还可以根据设计中的实际情况对项目进行重新设置,其操作方法是执行菜单命令“Assignments”→“Settings”或单击主界面窗口工具栏上的
图标,弹出如图1-9所示的项目重新设置对话框,在此对话框中根据需要可重新设置相关内容。
在左边的选项中,可通过“Files”、“Libraries”和“Device”等选项设置环境。
重新设置好内容后,单击“OK”按钮,则一个新的项目就被建立了。
图1-7指定EDA工具对话框
图1-8项目信息报告对话框
图1-9项目重新设置对话框
2)项目与文件的打开
(1)在图1-1中,单击“OpenExistingProject”按钮,或在图1-2中执行菜单命令,“File”→“OpenProject…”,弹出如图1-10所示的对话框。
在此对话框中找到以创建的项目所在路径及项目名,然后再单击“打开”按钮,即可打开项目。
(2)执行菜单命令“File”→“Open…”,或在工具栏中单击
图标,弹出如图1-11所示对话框。
然后找到需要打开的文件名,单击“打开”按钮即可,如果将对话框下面的“AddFiletocurrentProject”勾选,打开的文件会被添加到当前项目中。
图1-10打开项目对话框
图1-11文件打开对话框
1.1.3QuartusⅡ文件后缀及含义
在这里只列出本书会用到的一些常用的文件后缀及含义:
文件后缀
含义
*.qpf
工程文件
QuartusIIProjectFile
*.pin
引脚输出文件
Pin-OutFile
*.pof
程序工程文件
ProgrammerObjectFile
*.qsf
设置文件
QuartusIISettingsFile
*.qws
界面配置文件
QuartusIIWorkspaceFile
*.qxp
输出划分文件
QuartusIIExportedPartitionFile
*.qdf
默认设置文件
QuartusIIDefaultSettingsFile
*.qud
用户定义设备文件
QuartusUser-DefinedDeviceFile
*.qarlog
归档日志文件
QuartusIIArchiveLogFile
*.qar
存档文件
QuartusIIArchiveFile
*.mif
存储器初始化文件
MemoryInitializationFile
*.bdf
原理图设计文件
BlockDesignFile
*.bsf
原理图封装文件
BlockSymbolFile
*.vhd
vhdl语言文件
VHDLFile
*.vwf
波形仿真文件
CompressedVectorWaveformFile
1.1.4原理图设计
新建项目后,就可以绘制原理图程序了。
下面以一位全加器如图1-12所示为例,讲解原理图的编辑输入的方法与具体步骤。
图1-12一位全加器原理图
(1)执行菜单“File”→“New…”,或在工具栏中单击
图标,弹出如图1-13所示的“New”对话框。
在此对话框的“DesignFiles”项中选择“BlockDiagram/SchematicFile”,在单击“OK”按钮,QuartusⅡ10.0的主窗口进入如图1-14所示的原理图工作环境界面。
图1-13“New”对话框
(2)在如图1-14所示的原理图工作环境界面中单击
图标或在原理图编辑区的空白处双击鼠标或在原理图编辑区的空白处右键单击在弹出的菜单中选择“Insert”中的任意一个,弹出如图1-15所示的元件输入对话框,在“Name”栏中直接输入所需元件名或在“Libraries:
”的相关库中找到合适的元件,再单击“OK”按钮,然后在原理图编辑区中单击鼠标左键,即可将元件调入原理图编辑区中。
为了输入如图1-12所示的原理图,应分别调入and2、xor2、or3、input、output。
对于相同的器件,可通过复制来完成。
例如3个and2门,器操作方法是,调入一个and2门后,在该器件上单击鼠标右键,在弹出的菜单中选择“Copy”命令将其复制,然后在合适的位置上右键,在弹出的菜单中选择“Paste”命令将其粘帖即可。
图1-14原理图工作环境界面
图1-15元件输入对话框
如果元件放置好后,需要改元件的位置时,对于单个器件而言,在该器件上按住鼠标左键,拖到合适的位置后再松开鼠标左键即可;对于多个器件而言,应该按下鼠标左键框选需要移动的所有器件,然后将光标移动到选择的器件上,待光标变成可移动的“十”字光标,此时按住鼠标左键将其拖到合适的位置即可。
如果要删除元件时,应先将元件选中,然后按“Del”键或右键在弹出的菜单中选择“Del”。
如果要旋转元件时,应先将元件选中,然后右键在弹出的菜单中可选“FilpHorizontal”(水平翻转)、“FilpVertical”(垂直翻转)、“RotatebyDegrees”(逆时针方向旋转,可选90°、180°、270°)等命令。
(3)将光标指向元件的引脚上,光标变成“十”字形状,按下鼠标左键并拖动,就会有导线引出,连接到另一端的元件上后,松开鼠标左键,即可绘制好一根导线,按此方法绘制好全部导线,如图1-16所示。
图1-16导入元件和绘制导线(注意:
用鼠标拖出的导线只能最多转一个弯)
图1-17修改引脚名对话框
(4)双击或右键单击“pin_name”输入引脚,将弹出如图1-17所示的对话框。
在此对话框的“Gerneral”页的“Pinname(s)”项中输入引脚名,如:
S,然后单击“确定”按钮,即可将“pin_name”输入引脚名改为“S”。
按此方法依次修改其他引脚。
修改后如图1-16所示。
(5)执行菜单命令“File”→“Save…”,或在工具栏中单击
图标,弹出“SaveAS”对话框,在此对话框中输入文件名并单击“保存”按钮即可(此时最好不要更改存储路径)。
2.1顶层VHDL文件设计
2.1.1创建工程和编辑设计文件
首先建立工作库,以便设计工程项目的存储。
任何一项设计都是一项工程(Project),都必须首先为此工程建立一个放置与此工程相关的所有文件的文件夹,此文件夹将被EDA软件默认为工作库(WorkLibrary)。
在建立了文件夹后就可以将设计文件通过QuartusII的文本编辑器编辑并存盘,详细步骤如下:
1、新建一个文件夹。
利用资源管理器,新建一个文件夹,如:
e:
\eda。
注意,文件夹名不能用中文。
2、输入源程序。
打开QuartusII,选择菜单“File”“New”,在New窗中的“DeviceDesignFiles”中选择编译文件的语言类型,这里选“VHDLFiles”(如图2-1所示)。
然后在VHDL文本编译窗中键入VHDL程序(如图2-2所示)。
图2-1选择编辑文件的语言类型
图2-2编辑输入设计文件(顶层设计文件ADD1.VHD)
图2-3利用“NewPrejectWizard”创建工程
图2-4创建工程文件及顶层文件
图2-5将所有相关的文件都加入进此工程
3、文件存盘。
选择“File”“SaveAs”,找到已设立的文件夹e:
\syadd1,存盘文件名应该与实体名一致,即add1.vhd。
3.1编译及下载
3.1.1创建工程
在此要利用“NewPrejectWizard”创建此设计工程,并设定此工程一些相关的信息,如工程名、目标器件、综合器、仿真器等。
步骤如下:
1、建立新工程管理窗。
选择菜单“File”“NewPrejectWizard”,即弹出工程设置对话框(图2-1)。
点击此框最上一栏右侧的按钮“…”,找到文件夹e:
\eda,选中已存盘的文件add1.vhd(一般应该设定顶层设计文件为工程),再点击“打开”,即出现如图2-2所示设置情况。
其中第一行表示工程所在的工作库文件夹;第二行表示此项工程的工程名,此工程名可以取任何其它的名,通常直接用顶层文件的实体名作为工程名,第三行是顶层文件的实体名。
2、将设计文件加入工程中。
然后点击下方的“Next”按钮,在弹出的对话框中点击“File”栏的按钮,将此工程相关的所有VHDL文件加入进此工程(如果有的话),即得到如图2-5所示的情况。
工程的文件加入的方法有两种:
第1种是点击右边的“AddAll”按钮,将设定的工程目录中的所有VHD文件加入到工程文件栏中;第2种方法是点击“…”按钮,从工程目录中选出相关的VHDL文件。
3、选择仿真器和综合器类型。
点击图3-5的“Next”按钮,这时弹出的窗是选择仿真器和综合器类型的,如果都是选默认的“NONE”,表示都选QuartusII中自带的仿真器和综合器,因此,在此都选默认项“NONE”。
4、选择目标芯片。
再次点击“Next”,选择目标芯片。
首先在“Family”栏选芯片系列,在此选“Cyclone”系列,并在此栏下选“Yes”,即选择一确定目标器件。
再按键“Next”,选择此系列的具体芯片:
EPIC6Q240C8(图3-6),按键“Next”后,弹出工程设置统计窗口,以上列出了此项工程的相关设置情况。
5、结束设置。
最后按键“Finish”,即已设定好此工程(图3-7),此工程管理窗主要显示工程项目的层次结构。
图3-6选择此系列的具体芯片图3-7cnt4的工程管理窗图3-8选定目标器件
3.1.2编译前设置
在对工程进行编译处理前,必须作好必要的设置。
具体步骤如下:
1、选择目标芯片。
目标芯片的选择也可以这样来实现:
选择“Assignmemts”菜单中的“settings”项,在弹出的对话框中选“CompilerSettings”项下的Device,首先选目标芯片:
EPIC6Q240C8(此芯片已在建立工程时选定了),也可以在(图3-8)“Availabledevices”栏分别选“Package”:
PQFP;“Pincount”:
240;“Speed”:
8,来选芯片。
2、选择目标器件编程配置方式。
由图3-8中的按钮“Device&PinOptions”进入选择窗,首先选择“Configuration”项,在此框的下方有相应的说明,在此可选Configuration方式为ActiveSerial,这种方式指对专用配置器件进行配置用的编程方式,而PC机对此FPGA的直接配置方式都是JTAG方式。
“Configurationdevice”项,选择配置器为EPCS1或EPCS4(根据实验系统上目标器件配置的EPCS芯片决定如图3-9所示)。
3、选择输出配置。
在图3-9窗的“ProgrammingFiles”窗,可以选Hexadecimal(Intel-Format)outputFile,即产生下载文件的同时,产生2进制16进制配置文件fraqtest.hexout,可用于单片机与EPROM构成的FPGA配置电路系统。
图3-9选择配置器件和配置方式
图3-10输出文件.hexout设置
3.1.3编译及了解编译结果
QuartusII编译器是由一系列处理模块构成的,这些模块负责对设计项目的检错,逻辑综合和结构综合。
即将设计项目适配进FPGA/CPLD目标器中,同时产生多种用途的输出文件,如功能和时序仿真文件,器件编程的目标文件等。
编译器首先从工程设计文件间的层次结构描述中提取信息,包括每个低层次文件中的错误信息,供设计者排除,然后将这些层次构建产生一个结构化的以网表文件表达的电路原理图文件,并把各层次中所有的文件结合成一个数据包,以便更有效地处理。
下面首先选择Processing菜单的“StartCompilation”项,启动全程编译。
注意这里所谓的编译(Compilation)包括QuartusII对设计输入的多项处理操作,其中包括排错、数据网表文件提取、逻辑综合、适配、装配文件(仿真文件与编程配置文件)生成,以及基于目标器件的工程时序分析等。
如果工程中的文件有错误,在下方的Processing处理栏中会显示出来。
对于Processing栏显示出的语句格式错误,可双击此条文,即弹出vhdl文件,在闪动的光标处(或附近)可发现文件中的错误。
再次进行编译直至排除所有错误。
我们会发现在Processing处理栏,编译后出现如下错误信息:
Error:
Nodeinstanceu1instabtiatesundefinedentityDATAROM
4.1仿真及芯片编程Programming(配置configuration)记录结果。
生成时序仿真文件,记录结果,下载到FPGA芯片上观察并记录结果。
4.1.1建立仿真文件
执行菜单命令“File”→“New…”,或在工具栏中单击
图标,弹出图2-13所示的“New”对话框。
在此对话框的“Verification/DebuggingFiles”项中选择“VectorWaveformFile”,再单击“OK”按钮,QuartusⅡ的主界面窗口进入如图2-28所示的波形文件编辑环境界面。
图2-28波形文件编辑环境界面
在波形文件编辑方式下,执行菜单命令“Edit”→“Insert”→“InsertNodeorBus…”,或在波形编辑窗口右边“Name”下的空白处单击鼠标右键,在弹出的菜单中选择“InsertNodeorBus”命令,即可弹出如图2-29所示的插入节点或总线对话框。
在图2-29所示的对话框中,单击“NodeFinder…”按钮,弹出如图2-30所示的“NodeFinder”对话框,在“Filter”栏中选择“Pins:
all”,单击“List”按钮,这时在窗口左边的“NodesFound:
”(节点建立)框中将列出该设计项目的全部信号节点。
若在仿真中需要观察全部信号的波形,则单击窗口中间的
按钮;若在仿真中只需观察部分信号的波形,则首先用鼠标单击信号名→单击窗口中的
按钮,或直接双击信号名,选中的信号则进入到窗口右边的“SelectedNodes:
”(被选择的节点)框中;如果需要删除“SelectedNodes:
”框中的节点信号,也可以用鼠标将其选中→单击窗口中的
按钮,或直接双击信号名;
按钮是将“SelectedNodes:
”框中的节点信号全部删除。
节点信号选择完毕后,单击“OK”按钮即可。
图2-29插入节点或总线对话框
图2-30“NodeFinder”对话框(注意:
前面设置时要选择一个设备,否则没有Pins:
all项)
4.1.2仿真设置工具
QuartusⅡ默认的仿真时间域是1μs。
如果需要更长的时间观察仿真结果,需设置仿真时间。
执行菜单命令“Edit”→“EndTime…”,弹出如图2-31所示对话框,在“Time:
”栏中输入合适的仿真时间即可。
在波形编辑界面内,左排按钮是用于设置输入信号的,使用时,只要先用光标在波形输入上拖一需要改变的区域,然后单击左排相应按钮即可。
或右键要设置值的节点信号,弹出如图2-32所示快捷菜单,单击“Value”→“ConutValue”弹出如图2-33所示对话框,按如图2-35所示设置。
还可以通过右键弹出菜单“Properties”设置信号节点波形以何种进制显示。
最后,执行菜单命令“File”→“Save…”,或在工具栏中单击
图标,弹出“SaveAs”对话框,在此对话框中输入文件名,并按下保存即可(注意:
最好和编译的文件同名如:
add1)。
图2-31设置仿真时间域对话框图2-34信号节点属性设置框
图2-35设置了输入
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 计算机 组成 原理 实验 指导书 0901