当前位置:文档之家› 计算机组成原理实验指导书

计算机组成原理实验指导书

计算机组成原理实验指导书

计算机组成原理课题组

南通大学计算机科学与技术学院

二零一一年九月

目录

第一部分Quartus II的操作 (1)

第1章Quartus II 简介 (1)

1.1 Quartus II软件 (1)

1.2 Quartus II软件的设计流程 (1)

1.3 Quartus II软件的用户界面 (3)

第2章Quartus II 2.1的安装 (6)

2.1 安装软件 (6)

2.2安装license (6)

第3章Quartus II 2.1的使用 (8)

3.1 图形用户界面 (8)

3.2 设计模式 (8)

3.3 设计步骤 (8)

3.3 原理图设计与编译 (9)

3.4 创建向量波形文件 (17)

第4章设计结果下载 (22)

4.1 安装下载电缆驱动程序 (22)

4.2 器件的选择与引脚的锁定与下载 (29)

4.3 实验箱的设置与I/O引脚 (32)

第二部分课程实验 (47)

实验1 Quartus Ⅱ的使用 (47)

实验2 运算器组成实验 (48)

实验3 半导体存储器原理实验 (50)

实验4 简单数据通路的组成与故障分析实验 (52)

第三部分课程设计 (54)

附录 (58)

第一部分Quartus II的操作

第1章Quartus II 简介

1.1 Quartus II软件

Quartus II软件是Altera公司的综合开发工具,它集成了Altera的FPGA/CPLD(复杂可编程逻辑器件Complex Programmable Logic Device,CPLD/现场可编程器件Field Programmable Gate Array,FPGA)开发流程中所涉及的所有工具和第三方接口。通过使用此综合开发工具,设计者可以创建、组织和管理自己的设计。

Quartus II为电路设计者提供了完整的多平台设计环境,它可以满足众多特定设计的需要。Quartus II拥有CPLD/FPGA各个开发阶段对应的开发工具,设计者通过它的集成开发环境可一次性完成整体应用的开发。

1.2 Quartus II软件的设计流程

Quartus II 软件为设计流程的每个阶段提供Quartus II 图形用户界面、EDA 工具界面以及命令行界面。用户可以在整个流程中只使用这些界面中的一个,也可以在设计流程的不同阶段使用不同界面。下图1-1所示是利用Quartus II完成应用开发的流程。

图1-1 设计流程

1. 设计输入

设计输入是CPLD/FPGA开发阶段的第一步.它完成了器件的硬件描述。Quartus II提供了以下多种设计输入的工具。

● 文本编辑器

利用该工具完成硬件描述语言程序文件的编写、修改与保存。

● 块与符号编辑器

该工具用于查看和编辑代表宏功能、宏功能模块、基本单元或设计文件的预定义符号。

● MegaWizard插件管理器

Quartus II提供了许多Altera公司的宏功能模块,可以在设计文件中与门和触发器等基本单元一起使用。利用MegaWizard插件管理器可将这些功能强大的宏功能模块插入到设计中。

● 约束编辑器

利用该工具可为设计指定初始约束条件,例如引脚分配、器件选项、逻辑选项和时序等约束条件。

● 布局图编辑器

利用该工具可以查看上一次编译期间执行的资源分配和布线结果(该结果是只读的,不可通过编辑器更改)。绝大多数的设计者往往只会使用到前3种设计输入工具,约束编辑器只在特定环境下(如需要对器件编译或编程进行必要条件约束时)才会用到,而布局图编辑器是提供接近物理器件内部布线编程的工具,很少会被设计者使用。

2. 综合

Quartus II提供了如下综合工具:

● 分析和综合器

该工具调用了Quartus II的内置综合器,它支持最新版本的Verilog和VHDL,并最终生成EDIF网表文件(.edf)或VQM文件(.vqm)。

● 辅助工具

Quartus II在设计综合期间提供了辅助工具,用于检查设计的可靠性。

● RTL查看器

利用该工具可查看硬件描述最终的综合结果,并给出形象的电路元器件图表。

3. 布局连线

布局连线是将设计综合后的网表文件映射到实体器件的过程。该过程包括:将设计工程的逻辑和时序要求与器件的可用资源相匹配;将每个逻辑功能分配给最好的逻辑单元位置,进行布线和时序分析;选择相应的互连路径和引脚分配。Quartus II提供了以下丰富的布局连线工具。

● Fitter工具

如果设计者利用约束编辑器指定了编译约束条件,那么Fitter工具试图将设计约束与器件上的资源相匹配,并努力满足约束条件,然后试图优化设计中的其余逻辑。如果设计者未指定任何约束条件,那么Fitter工具将自动优化设计。

● 约束编辑器

利用该工具可为设计指定初始约束条件,例如引脚分配、器件选项、逻辑选项和时序等约束条件。

● 布局图编辑器

利用该工具可以查看上一次编译期间执行的资源分配和布线结果(该结果是只读的,不可通过编辑器进行更改)。

● 芯片编辑器

利用该工具可以显示芯片内部完整的布线信息,显示每个器件资源之间的所有可能和使用的布线路径。

● 增量布局连线工具

如果设计者所做的更改仅影响少数节点,可利用该工具避免运行全编译。Quartus II的增量布局连线工具将尽量保留以前编译的布局连线结果,以较快的速度完成新的编译。

在布局连线过程中,设计者还会遇到―整体设计工程更改管理‖的情况,这种工程更改管理是指在完成全编译之后,使用芯片编辑器查看设计布局布线详细信息,并确定要更改的资源,从而避免了过多地修改设计源文件或Quartus II设置。

4. 时序分析

Quartus II提供了专用的时序分析器,可用于分析设计中的所有逻辑,并有助于指导Fitter 工具达到设计的时序要求。时序分析的结果包括f MAX(最大频率)、t SU(时钟建立时间)、t H(时钟保持时间)、t CO(时钟至输出延时)、t PD(引脚至引脚延时)、最小t CO和最短t PD。

5. 仿真

Quartus II提供了功能仿真和时序仿真两种仿真工具,其功能十分强大。设计者视所需的信息类型而定,可以进行功能仿真以测试设计的逻辑功能,也可以进行时序仿真,在目标器

件中测试设计的逻辑功能和最坏情况下的时序。在时序仿真过程中,Quartus II可根据设计者提供的向量波形文件( .vwf)、间量表输出文件(.tbl)、向量文件(.vec)和仿真基准文件(.tbl)格式的波形文件进行仿真,输出仿真波形。除此之外,Quartus II还可以估计在时序仿真期间当前设计所消耗的功率。

6. 器件编程与配置

Quartus II编译成功后,设计者就可以对器件进行编程或配置了。器件编程器使用编译过程中的Assembler工具生成的POF和SOF文件对器件进行编程,其编程模式有4种。

● 被动串行模式:该模式可实现对多个器件进行编程。

● JTAG模式:该模式也可实现对多个器件进行编程。

● 主动串行编程模式:该模式可实现对单个串行配置器件进行编程。

● 插座内编程模式:该模式可实现对单个CPLD或配置器件进行编程。

1.3 Quartus II软件的用户界面

Quartus II软件启动后的主界面如图1-2所示,由标题栏、菜单栏、工具栏、资源管理窗、编译状态显示窗、信息显示窗和工程工作区等部分组成。

图1-2 Quartus II软件主界面

下面分别介绍各个部分的作用和使用方法。

1. 标题栏

标题栏显示当前工程的路径和程序的名称。

2. 菜单栏

菜单栏主要由文件(File)、视图(View)、工程(Project)、操作(Processing)、资源分配(Assignments)、调试(Debug)、工具(Tools)、窗口(Window)和帮助(Help)等下拉菜单组成。其中工程(Project)、资源分配(Assignments)、操作(Processing)、工具(Tools)集中了Quartus II软件较为核心的全部操作命令,下面分别介绍。

(1) Project菜单

该菜单项主要完成对工程的一些操作。

● 【Add/Remove Files in Project】:添加或新建某种资源文件。

● 【Revisions】:创建或删除工程,在其弹出的窗口中单击―Create…‖按钮创建一个新

的工程;或者在创建好的几个工程中选中一个,单击―Set Current‖按钮,就把选中的工程设置为当前工程。

● 【Archive Project】:为工程归档或备份。

● 【Generate Tcl File for Project】:产生工程的Tcl脚本文件,选择好要生成的文件名以

及路径后,单击OK 按钮即可。如果选中了―Open generated file‖则会在工程工作区打开该Tcl文件。

● 【Generate Tcl File for Project】:产生功率估计文件。

● 【HardCopy Utilities】:跟HardCopy 器件相关的功能。

● 【Locate】:将Assignment Editor 中的节点或原代码中的信号在Timing Closure

Floorplan编译后布局布线图,Chip Editor或原文件中定位其位置。

● 【Hierarchy】:打开工程工作区显示的源文件的上一层或下一层的源文件以及顶层文

件。

(2) Assignments菜单

该菜单项的主要功能是对工程的参数进行配置,如管脚分配、时序约束、参数设置等。

● 【Device】:是指目标器件型号。

● 【Assign Pins】:打开分配管脚对话框,给设计的信号分配IO管脚。

● 【Timing Settings】:打开时序约束对话框。

● 【EDA Tool Settings】:设置EDA工具,如Synplify等。

● 【Settings】:打开参数设置页面,可以切换到使用Quartus II软件开发流程的每个步

骤所需的参数设置页面。

● 【Wizard】:启动时序约束设置、编译参数设置、仿真参数设置、Software Build参数

设置。

● 【Assignment Editor】:分配编辑器,用于分配管脚、设定管脚电平标准、设定时序

约束等。

● 【Remove Assignments】:用户可以使用它删除设定的类型的分配,如管脚分配、时

序分配、SignalProbe信号分配等。

● 【Demote Assignments】:允许用户降级使用当前较不严格的约束,使编辑器更高效

地编译分配和约束等。

● 【Back-Annotate Assignments】:允许用户在工程中反标管脚、逻辑单元、LogicLock

区域、节点、布线分配等。

● 【Import Assignments】:给当前工程导入分配文件。

● 【Timing Closure Foorplan】:启动时序收敛平面布局规划器。

● 【LogicLock Region】:允许用户查看,创建和编辑LogicLock区域约束以及导入导

出LogicLock 区域约束文件。

(3) processing 菜单

该菜单项包含了对当前工程执行各种设计流程,如开始综合、开始布局布线、开始时序分析等。

(4) Tools菜单

该菜单项调用Quartus II软件中集成的一些工具,如MegaWizard Plug-In manager(用于生成IP和宏功能模块),ChipEditor、RTL Viewer、Programmer等工具。

3. 工具栏

工具栏中包含了常用命令的快捷图标。将鼠标移到相应图标时,在鼠标下方出现此图标对应的含义,而且每种图标在菜单栏均能找到相应的命令菜单。用户可以根据需要将自己常用的功能定制为工具栏上的图标,方便在Quartus II软件中灵活快速地进行各种操作。

4. 资源管理窗

资源管理窗用于显示当前工程中所有相关的资源文件。资源管理窗左下脚有三个标签,分别是结构层次(Hierarchy),文件(Files )和设计单元(Design Units)。结构层次窗口在工程编译之前只显示了顶层模块名,工程编译了一次后,此窗口按层次列出了工程中所有的模块,并列出了每个原文件所有资源的具体情况。顶层可以是用户产生的文本文件,也可以是图形编辑文件。文件窗口列出了工程编译后的所有文件,文件类型有设计器件文件(Design Device Files) 、软件文件(Software Files)和其他文件(Other Files)。设计单元窗口列出了工

程编译后的所有单元,如AHDL单元,Verilog单元,VHDL单元等,一个设计器件文件对应生成一个设计单元,参数定义文件没有对应设计单元。

5. 工程工作区

器件设置、定时约束设置、底层编辑器和编译报告等均显示在工程工作区中,当Quartus II实现不同功能时此区域将打开相应的操作窗口,显示不同的内容,进行不同的操作。

6. 编译状态显示窗

编译状态显示窗主要时显示模块综合、布局布线过程及时间。模块(Module)列出工程模块,过程(Process)显示综合、布局布线进度条,时间(Time)表示综合、布局布线所耗费时间。

7. 信息显示窗

信息显示窗显示Quartus II软件综合、布局布线过程中的信息,如开始综合时调用源文件、库文件、综合布局布线过程中的定时、告警、错误等,如果是告警和错误,则会给出具体的引起告警和错误原因,方便设计者查找及修改错误。

第2章Quartus II 2.1的安装

2.1 安装软件

1.将安装光盘插入CD-ROM,系统自动运行安装向导,点击―Install QuartusII Software‖按钮,启动安装程序(或者用户直接运行光盘Quartus目录下的Setup.exe文件,启动安装程序)。

2.根据安装提示,选择适当的安装选项,点击Next按钮,逐步完成Quartus II 2.1的安装。安装路径建议使用默认路径,确保有足够的硬盘空间即可。

3.当系统完成相关文档的复制后,点击Finish按钮,即可安装结束。此时,Windows开始菜单程序组中会出现Quartus II 2.1项目菜单。

2.2安装license

1.将光盘下的quartus_crack文件夹复制到硬盘上;

2.进入Windows命令提示符(开始菜单〉程序—〉附件—〉命令提示符),并进入quartus_crack文件夹;

3.输入ipconfig -all 找到本机的物理地址,记录备用,如图2-1所示;

3.用记事本打开Alteral.src修改其中的HOSTID为本机物理地址(去掉横线,如00055D0787F2);

4.在dos提示符下输入―altcrypt -i alteral.Src -o 存放目录/license.dat‖,即在存放目录中生成license.dat文件(如:c:\quartus_crack>altcrypt -i alteral.src –o c: \quartus_crack /license.dat);

图2-1 本机IP地址及MAC地址获取命令示意图

5.将生成的license文件保存到适当文件夹中(推荐Quartus安装目录的bin文件夹下);

6.运行quartus II,点击tools菜单下的license setup,进行license关联,检查license是否安装正确,如图2-2所示。至此,你的quartus II已经可以正常使用了。

License的默认

关联路径,也可

自行关联

图2-2 license setup 界面

第3章 Quartus II 2.1的使用

3.1 图形用户界面

Quartus II 的图形用户界面可分为四个部分:工具栏、文件管理器、编辑区及调试信息区,如下图3-1所示:

图3-1 Quartus II 的图形用户界面 3.2 设计模式

Quartus II 共分三种设计模式:Compile Mode (编译模式)、Simulate Mode (仿真模式)、Software Mode (软件模式)。图3-2表示了主界面上三种模式的指示图标。在不同的操作步骤中,使用不同的设计模式。

图3-2 三种模式的指示图标

3.3 设计步骤

1.新建项目

首先新建一个项目来管理所要新建的各种文件,方法是:

在Quartus Ⅱ环境下,打开菜单File ,选择子菜单New Project Wizard 后,打开如下图3-3所示窗口,按照向导窗口的提示,创建新项目。

工具栏

文件管理器

编辑区

调试信息

Compile Mode (编译模式) Simulate Mode (仿真模式)

Software Mode (软件模式)

图3-3 新建项目窗口1 点击图3-3中的―Next‖按钮,在下图3-4所示窗口中输入有关的路径名和项目名称后,按下―Finish‖按钮,即可完成新建项目的工作。

图3-4 新建项目窗口2 3.3 原理图设计与编译

原理图的设计与编译在Compile Mode (编译模式)下进行。

3.3.1 新建原理图文件

打开File 菜单,选择New ,出现如下图3-5所示 ―新建‖窗口。

图3-5 新建窗口 在图3-5 所示的―Device Design Files‖标签中,选择―Block Diagram/Schematic File‖项,按下―OK‖按钮即可打开原理图编辑器(如图3-6所示),进行原理图的设计与编辑。

图3-6 原理图编辑器 选择―Block & Symbol Editors‖中的不同器件(如图3-7所示),在编辑区中就可完成原理图的设计编辑。

图3-7 Block & Symbol Editors Block & Symbol Editors

添加元器件可点击―Block & Symbol Editors‖中元器件符号,或在编辑区的空白处双击鼠标左键,出现―Symbol‖对话框,在―Libraries‖中选择所需元器件,或直接在―Name‖文本框中输入元器件名称,如74138(3-8译码器),点击―OK‖按钮,将元器件拖放到编辑区中。

图3-8 Symbol对话框

按照设计需要,使用―单线连接线‖或―总线连接线‖将各器件的引脚连接起来。总线的命名采用数组形式,如out[7..0],与总线相连的引脚也采用相同的数组形式命名;若需从总线中引出单线时,须指出各单线对应的总线位号(双击线条即可命名)。(如图3-9所示)两根连接线,若名称相同,亦表示两线为连通状态。(如图3-10所示)

图3-9 连线示意图1

图3-10 连线示意图2

选择某一元器件,点击―元器件翻转工具‖按钮,即可改变元器件引脚顺序及摆放方向(如图3-11所示)。

图3-11元器件翻转工具使用效果

3.3.2 编译原理图

原理图设计完成后,在编译模式下,点击―?‖按钮进行编译,编译无误将弹出编译成功对话框;编译如有错误,请根据―调试信息‖框中的错误提示修改原理图,直至编译通过。生成成功后将弹出成功对话框。(如图3-12所示)

图3-12 编译模式按钮及编译成功对话框

3.3.3 生成自定义芯片

原理图编译通过后,可根据用户需要,设计生成自定义芯片。打开―Tools‖菜单,选择―Creat Symbol For Current File‖菜单项(如图3-13所示),就可生成自己定义的芯片,芯片的名称就是编译通过的原理图的名称。用户即可在―Symbol‖对话框―Libraries‖文本框的―Project‖菜单下找到自己设计的芯片(如图3-14所示)。

图3-13 自定义芯片生成菜单项

图3-14 自定义芯片选择界面

3.3.4 存储器初始化

当设计中使用到存储器(RAM或ROM)时,一般需对存储器进行初始化设置,方法如下:

1.打开―新建‖窗口(如图3-15),新建存储器初始化文件。在―Other Files‖标签中选择

―Memory Initialization File‖,按下―OK‖按钮;

图3-15 存储器初始化文件新建对话框

2.设置存储器的存储单元个数和字长(每个单元保存二进制的位数),设置完成后,按下―OK‖按钮(如图3-16);

图3-16 存储器容量及字长设定对话框

3.存储单元初始化

在存储器初始化文件中,对各个存储单元进行初始化,存储单元保存内容默认为无符号十进制数。存储单元地址由横坐标和纵坐标组成,纵坐标为每行的起始地址,横坐标为每个存储单元对于起始地址的偏移量,坐标默认采用十进制表示(如图3-17)。

图3-17 存储器内容

我们也可以改变存储单元及其地址的默认进制,在坐标处单击鼠标右键进行设置(如图3-18);

图3-18 存储单元内容及地址进制值设定对话框

对存储器初始化完成后,以后缀名.mif保存初始化文件。

4.存储器元件与存储器初始化文件的关联

在原理设计图中添加存储器芯片,弹出存储器设置对话框,对存储器进行相关设置后,就可完成存储器与存储器初始化文件的关联。

添加存储器芯片的步骤如下:

在―Symbol‖对话框(如图3-19)的―Libraries‖—―megafunctions‖—―storage‖中根据需要选择所需存储器芯片。

图3-19 Symbol对话框

对存储器的设置的步骤如下:

(1)指定存储器芯片名称

如图3-20所示,可在对话框的名字文本框中输入或选择存储器芯片的名称。

图3-20 存储器芯片名称指定界面

(2)设置存储器字长与容量

点击图3-20所示界面上的―Next‖按钮,就可进入设置存储器芯片的输出数据线宽度和存储器的地址线宽度界面(如图3-21所示)。

(3)设置存储器芯片端口

在图3-21界面上,点击―Next‖按钮,就进入设置存储器芯片的端口的界面(如图3-22所示),确定是否需要输入、输出时钟信号;

(4)设定存储器芯片与存储器初始化文件相关联

在图3-22界面上,点击―Next‖按钮,就进入,将存储器芯片和存储器初始化文件进行关联(如图3-23所示)后,点击―Next‖按钮,进入完成设置界面。在该界面下,按―Finish‖按钮完成存储器设置。

最后,在原理图的适当位置,放置设置好的存储器芯片,就完成了存储器的设计。

图3-21 存储器字长与容量的设定界面

图3-22 存储器芯片端口设定界面

图3-23 存储器芯片与初始化文件关联界面

3.4 创建向量波形文件

当原理图编译完成后,需要新建波形文件,以便利用波形文件对前面完成的设计进行仿真分析。本过程需要在Simulate Mode(仿真模式)下进行。

打开―新建‖窗口,在―Other Files‖标签中选择―Vector waveform File‖(如图3-24所示),按下―OK‖按钮,即可新建一个波形文件。

相关主题
文本预览
相关文档 最新文档