基本设计流程

相关主题
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

第2章Quartus Ⅱ应用向导

Quartus II 是Altera公司的综合性PLD开发软件,支持原理图、VHDL、VerilogHDL以及AHDL(Altera Hardware Description Language)等多种设计输入形式,内嵌自有的综合器以及仿真器,可以完成从设计输入到硬件配置的完整PLD

设计流程。

Quartus II可以在XP、Linux以及Unix上使用,除了可以使用Tcl脚本完成设计流程外,提供了完善的用户图形界面设计方式。具有运行速度快,界面统一,功能集中,易学易用等特点。

Quartus II支持Altera的IP核,包含了LPM/MegaFunction宏功能模块库,使用户可以充分利用成熟的模块,简化了设计的复杂性、加快了设计速度。对第三方EDA工具的良好支持也使用户可以在设计流程的各个阶段使用熟悉的第三放EDA工具。

此外,Quartus II 通过和DSP Builder工具与Matlab/Simulink相结合,可以方便地实现各种DSP应用系统;支持Altera的片上可编程系统(SOPC)开发,集系统级设计、嵌入式软件开发、可编程逻辑设计于一体,是一种综合性的开发平台。

Maxplus II 作为Altera的上一代PLD设计软件,由于其出色的易用性而得到了广泛的应用。目前Altera已经停止了对Maxplus II 的更新支持,Quartus II 与之相比不仅仅是支持器件类型的丰富和图形界面的改变。Altera在Quartus II 中包含了许多诸如SignalTap II、Chip Editor和RTL Viewer的设计辅助工具,集成了SOPC 和HardCopy设计流程,并且继承了Maxplus II 友好的图形界面及简便的使用方法。

Altera Quartus II 作为一种可编程逻辑的设计环境, 由于其强大的设计能力和直观易用的接口,越来越受到数字系统设计者的欢迎。

Altera的Quartus II可编程逻辑软件属于第四代PLD开发平台。该平台支持一个工作组环境下的设计要求,其中包括支持基于Internet的协作设计。Quartus平台与Cadence、ExemplarLogic、 MentorGraphics、Synopsys和Synplicity等EDA 供应商的开发工具相兼容。改进了软件的LogicLo

ck模块设计功能,增添了FastFit编译选项,推进了网络编辑性能,而且提升了调试能力。支持MAX7000/MAX3000等乘积项器件

2.1 基本设计流程

本节以十进制计数器为例,通过实现流程,详细介绍Quartus II的重要功能和使用方法

2.1.1建立工作库文件和编辑设计文件

任何一项设计都是一项工程(Project),都必须首先为此工程建立一个放置与此工程相关的所有设计文件的文件夹。此文件夹将被EDA软件默认为工作库(Work Library)。一般,不同的设计项目最好放在不同的文件夹中,而同一工程的所有文件都必须放在同一文件夹中。在建立了文件夹后就可以将设计文件通过Quartus?II的文本编辑器编辑并存盘。(注意不要将文件夹设在计算机已有的安装目录中,更不要将工程文件直接放在安装目录中)

(1)新建一个文件夹。这里假设本项设计的文件夹取名为jsq,在E盘中,路径为E:\jsq 。注意,文件夹名不能用中文,也最好不要用数字。

(2)输入源程序。打开计算机桌面上图表,选择菜单File→New,出现如图2.1.1所示见面,在New窗口Device Design Files中选择编译文件的语言类型,这里选择VHDL File,选好后用鼠标左键单击OK按钮,出现源程序输入窗口如图2.1.2所示(以十进制为例)。

图2.1.1 选择编译文件的语言类型

图2.1.2 源程序输入窗口

十进制计数器源程序如下:

LIBRARY IEEE;

USE IEEE.STD_LOGIC_1164.ALL;

USE IEEE.STD_LOGIC_UNSIGNED.ALL;

ENTITY CNT10 IS

PORT (CLK,RST,EN : IN STD_LOGIC;

CQ : OUT STD_LOGIC_VECTOR(3 DOWNTO 0);

COUT : OUT STD_LOGIC );

END CNT10;

ARCHITECTURE behav OF CNT10 IS

BEGIN

PROCESS(CLK, RST, EN)

VARIABLE CQI : STD_LOGIC_VECTOR(3 DOWNTO 0);

BEGIN

IF RST = '1' THEN CQI := (OTHERS =>'0') ; --计数器异步复位

ELSIF CLK'EVENT AND CLK='1' THEN --检测时钟上升沿

IF EN = '1' THEN --检测是否允许计数(同步使能)

IF CQI < 9 THEN CQI := CQI + 1; --允许计数, 检测是否小于9 ELSE CQI := (OTHERS =>'0'); --大于9,计数值清零

END IF;

END IF;

END IF;

IF CQI = 9 THEN COUT <= '1'; --计数大于9,输出进位信号

ELSE COUT <= '0';

END IF;

CQ <= CQI; --将计数值向端口输出

END PROCESS;

END behav;

(3)文件存盘

选择File→Save As命令,找到已建立的文件夹E:\ jsq,存盘文件名应与实体的名字一致,即CNT10,其界面窗口如图2.1.3所示。

图2.1.3 文件存盘

单击“否(N)”按钮,则按以下方法进入创建工程流程。

2.1.2创建工程

使用New Project Wizard可以为工程指定工作目录、分配工程名称以及指定最高层设计实体的名称,还可以指定要在工程中使用的设计文件、其他源文件、用户库和EDA工具,以及目标器件系列和具体器件等。

(1)打开建立新工程管理窗

选择File→New Preject Wizard工具选项创建设计工程命令,即弹出“工程设置”对话框如图2.1.4所示,单击对话框最上第一栏右侧的“…”按钮,找到文件夹E:\jsq,选种已存盘的文件CNT10,再单击打开按钮,既出现如图2.4.1所示的设置情况。对话框中第一行表示工程所在的工作库文件夹,第二行表示此项工程的工程名,第三行表示顶层文件的实体名。

图2.1.4 利用New Preject Wizard创建工程CNT10

(2)将设计文件加入工程中

单击图2.1.4中下方的Next按钮,出现如图2.1.5所示的对话框,在弹出的对话框中单击File name栏的按钮,将与工程相关的所有VHDL文件加入此工程,加入完成后单击Next 按钮。此工程加入的方法有两种:第一种是单击Add All按钮,将设定的工程目录中的所有VHDL文件加入到工程文件栏中;第二种方法是单击“Add …”按钮,从工程目录中选出相关的VHDL文件。

图2.1.5 将所有的工程VHDL文件加入此工程图

(3)选择仿真器、综合器和目标器件的类型

相关文档
最新文档