《FPGA开发工具使用》PPT课件.ppt_第1页
《FPGA开发工具使用》PPT课件.ppt_第2页
《FPGA开发工具使用》PPT课件.ppt_第3页
《FPGA开发工具使用》PPT课件.ppt_第4页
《FPGA开发工具使用》PPT课件.ppt_第5页
已阅读5页,还剩56页未读 继续免费阅读

下载本文档

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

文档简介

1、FPGA开发工具分类:全球提供FPGA开发工具的厂商有近百家之多,大体分为两类:一类是专业软件公司研制的FPGA开发工具,独立于半导体器件厂商;另一类是半导体器件厂商为了开发本公司产品研制的FPGA开发工具,只能用来开发本公司的产品。 本章介绍的FPGA开发工具:本章介绍的FPGA开发工具是QuartusII,该工具属于专用FPGA开发工具,QuartusII是Altera公司研制的FPGA开发工具。 QuartusII的版本:从使用者看来各版本的主要功能基本相同,只是有些操作界面有所不同。本章将以QuartusII8.0为例,介绍QuartusII8.0基本使用方法。QuartusII8.0

2、提供的功能很多,读者可参考其他书籍或QuartusII8.0用户手册,学习更多的内容。,4.1 QuartusII 概述 4.2 QuartusII 使用 4.3 原理图文件输入 4.4 参数化模块库使用 4.5 层次化设计流程 4.6 嵌入式逻辑分析仪使用,第4章 FPGA开发工具使用,QuartusII支持哪些FPGA的开发:Altera公司的各种系列的可编程逻辑器件开发,包括:ACEX系列、APEX系列、ARM-based Excalibur系列、Cyclone系列、FLEX系列、HardCopy Stratix系列、MAX系列、Mercury系列和Stratix系列等。 Quartus

3、II是否有第三方工具的无缝连接: QuartusII提供了与第三方开发工具的无缝连接,支持Cadence、Mentor、Synopsys等专业软件公司的综合工具和校验工具,能读入和生成标准的EDIF、VHDL及Verilog HDL网表文件。 QuartusII使用的硬件环境:无论使用个人电脑、NUIX或Linux工作站,QuartusII都提供了方便的实体设计、快速的编译处理以及编程功能。,4.1 QuartusII概述,QuartusII管理器窗口:运行QuartusII,可以看到QuartusII的管理器窗口,如图所示。 管理器窗口主要包含:项目导航窗口、任务窗口、消息窗口,可以通过Vi

4、ewUtility Windows菜单下的选项添加或隐藏这些窗口。,项目导航窗口,任务窗口,消息窗口,设置license.dat文件:为了保证QuartusII的正常运行,第一次运行软件,需要设置license.dat文件,否则工具的许多功能将被禁用。在QuartusII管理器窗口选择ToolsLicense Setup,点击License file的 “.”按钮,在出现的对话框中选择License.dat文件或直接输入具有完整路径的文件名,如图所示。,4.2 QuartusII使用,使用QuartusII开发工具的主要步骤:进行FPGA器件的开发和应用,其步骤主要有设计输入、设计处理、波形仿

5、真和器件编程等。在设计的任何阶段出现错误,都需要进行修改,纠正错误,重复上述过程,直至每个阶段都正确为止。 使用QuartusII开发工具的举例:下面将以一个6位二进制计数器myexam1.vhd的设计为例,介绍QuartusII的使用流程,介绍如何经过设计各个阶段,最终将myexam1.vhd设计下载到FPGA芯片,使一片空白的FPGA裸片变为一片6位二进制计数器芯片的完整过程。,设计输入,设计处理,波形仿真,器件编程,FPGA裸片,6位二进制计数器,建立文件夹:QuartusII 编辑器的工作对象是项目,项目用来管理所有设计文件以及编辑设计文件过程中产生的中间文档,建议读者在开始设计之前先

6、建立一个文件夹,方便项目的管理。设计文件的种类:在一个项目下,可以有多个设计文件,这些设计文件的格式可以是原理图文件、文本文件(如AHDL、VHDL、Verilog HDL等文件)、符号文件、底层输入文件;第三方EDA工具提供的多种文件格式,如EDIF、HDL、VQM等。 以文本文件为例:学习设计输入过程中的主要操作。,4.2.1 设计输入,1. 建立设计项目,项目路径,项目名称,顶层实体名,(1)在管理器窗口中选择菜单File/New Project Wizard.,出现新建项目向导New Project Wizard对话框的第一页,输入项目路径、项目名称和顶层实体名,如myexam。,(2

7、)新建项目向导第二页,点击按钮“.”可浏览文件选项,添加或删除与该项目有关的文件。初学者还没有建立文件,可以先跳过该页。,(3)新建项目向导第三页,根据器件的封装形式、引脚数目和速度级别,选择目标器件。读者可以根据具备的实验条件进行选择,这里选择的芯片是Cyclone系列中EP1C6Q240C8芯片。,当前项目,(4)新建项目向导第四页,添加第三方EDA综合、仿真、定时等分析工具,系统默认选择QuartusII的分析工具,对开发工具不熟悉的读者,建议采用系统默认选项。 (5)新建项目向导对话框的最后一页,给出前面输入内容的总览。点击Finish按钮,myexam项目出现在项目导航窗口,myex

8、am表示顶层实体文件,如图所示。在任务窗口出现设计项目过程中的全部操作,执行操作命令的方法可以在菜单栏下选择命令、点击工具栏中对应的工具按钮或者在任务窗口双击命令。,任务窗口,2. 输入文本文件 使用文本编辑器模板:QuartusII支持AHDL、VHDL、及Verilog HDL等硬件描述语言描述的文本文件,关于如何用VHDL描述硬件电路请参考第5章和第6章。这里将结合实例说明如何使用文本编辑器模板输入VHDL文本文件。 新建VHDL文本文件:在QuartusII管理器界面中选择菜单FileNew.,或单击新建文件按钮,出现New对话框,如图所示。在对话框Design Files中选择VHD

9、L File ,点击ok按钮,打开文本编辑器。在文本编辑器窗口下,按照VHDL语言规则输入设计文件,并将其保存,VHDL文件的扩展名为.vhd。,文件扩展名:QuartusII支持多种硬件描述语言,不同的硬件描述语言编写的文件扩展名不同,如AHDL文件扩展名为.tdf,Verilog HDL文件扩展名为.v,VHDL文件的扩展名为.vhd。 QuatusII提供的文本文件编辑模板:使用模板可快速准确地创建VHDL文本文件,避免语法错误,提高编辑效率。例如:用VHDL模板设计一个6位二进制计数器的VHDL文本文件。 (1)选择菜单EditInsert Template, 打开Insert Tem

10、plate对话框,点击右侧LanguageTemplate栏目打开VHDL,VHDL栏目下显示出所有VHDL的程序模板,如图所示。,(1)打开模板:选择菜单EditInsert Template, 打开Insert Template对话框,点击右侧LanguageTemplate栏目打开VHDL,VHDL栏目下显示出所有VHDL的程序模板。 (2)选择模板:在VHDL模板中选择Full DesignArithmeticCoutersBinary Counter,Insert Template对话框的右侧会出现计数器模板程序的预览。这是一个带清零和使能端的计数器模板。点击Insert,模板程序出

11、现在文本编辑器中,其中兰色的字母是关键字,绿色部分为注释语句。 (3)修改模板:根据设计要求,对模板中的文件名、信号名、变量名等黑色文字内容进行修改。将实体名binary_counter修改为myexam1;将程序中变量表示改为常数形式;删掉enable输入信号等。,修改后的VHDL代码如下: - Quartus II VHDL Template - Binary Counter library ieee; use ieee.std_logic_1164.all; use ieee.numeric_std.all; entity myexam1 is-实体名为myexam1 port (clk

12、 : in std_logic;-时钟信号clk定义 reset : in std_logic;-复位信号reset定义 q : out integer range 0 to 63);-输出信号q定义 end entity; architecture rtl of myexam1 is begin process (clk) variable cnt: integer range 0 to 63; begin if (rising_edge(clk) then-时钟clk上升沿 if reset = 1 then-复位reset为高电平 cnt := 0;-计数器复位 else cnt :=

13、cnt + 1;-计数器工作 end if; end if; q = cnt;-输出当前的计数值 end process; end rtl;,myexam1.vhd 输入完成!,3. 添加或删除与当前项目有关的文件 添加文件:如果希望将存放在别处的文件加入到当前的设计项目中,选择菜单AssignmentsSettings,打开如图所示的Settings对话框。在Settings对话框左侧的Cagegory栏目下选择Files项,通过右边File Name栏的“”按钮查找文件选项,点击Add按钮添加文件。Add All按钮的作用是将当前目录下的所有文件添加到项目中。 删除文件:如果希望将当前项目

14、中的文件从项目中删除,首先选中待删除文件,Remove按钮则被激活,点击Remove按钮即可。 其它功能设置:在Settings对话框下,除了可以进行设计项目的文件设置外,还可以进行与设计有关的各种其它功能设置,如:库Libraries、器件Device、EDA工具EDA Tool、编译Compilation、分析与综合Analysis % 用十进制数描述的ROM地址深度,地址位宽=5% WIDTH =8; % 用十进制数描述的ROM数据宽度,数据位宽=8% ADDRESS_RADIX = UNS; % 地址基数,可以是BIN、DEC、HEX、OCT或UNS格式% DATA_RADIX = U

15、NS; % 数据基数,可以是BIN、DEC、HEX、OCT或UNS格式% CONTENT BEGIN %在地址中指定内容% 0. 1 :0; %地址0、1的数据均为0 % 14:1; %地址14数据为1 % 8: 7,6,5; %地址8数据为7,后面地址的数据依次为6、5 % END ; 注意:ROM文件和初始化数据文件应保存在同一个目录中。,3. ROM文件的仿真验证 将648ROM的文件作为顶层设计文件,连接输入引脚和输出引脚,形成完整的电路图。,编译仿真后得到波形图如图所示,可以看到ROM仿真结果与初始化数据文件中的内容一致。,会用参数化模块库啦!,4.5 层次化设计流程,何为层次化设计

16、:复杂系统描述经常采用多层次的设计结构。多层次的设计结构指的是在一个设计项目中,顶层模块调用底层模块的结构方式。QuartusII支持层次化设计,设计者可以灵活进入每层设计文件的编辑窗口,对文件进行编辑。 层次化设计方式:可以采用文本文件也可以采用原理图文件进行层次化设计,用硬件描述语言描述的文本文件如何对底层同类型的文本文件进行调用,将在书中第5章介绍。 本节主要介绍:原理图文件的层次化设计方法,在图形编辑器中创建顶层原理图设计文件(.bdf),采用原理图文件调用底层文件,底层设计文件可以是文本或原理图文件。由于每个层次中的设计文件可以是不同格式的设计文件,也称为混合设计法。,混合设计过程中

17、应注意的问题: (1)同一设计项目中,顶层设计文件和底层设计文件名称不能重复; (2)顶层文件中调用的符号所代表的文件为底层设计文件; (3)顶层文件或符号文件不能自身递归调用; (4)顶层设计文件可以通过打包的方法降低为底层文件,供其它顶层文件调用; (5)同一设计项目中的各个设计文件都可以重新编译、修改、保存或打包,打包后要及时在上层文件中更新并保存。 层次化设计举例:将前面设计完成的计数器模块myexam1和ROM模块myrom1作为底层文件,在顶层实体文件中调用,进行层次化设计形成一个新的原理图文件myexam.bdf。 设计步骤: 打开项目myexam建立顶层文件、连接底层模块和符号

18、、顶层文件的编译和仿真、显示层次化设计结构。,1. 建立顶层文件myexam 建立原理图文件myexam.bdf,设为顶层实体文件。在原理图中调入设计好的子模块:ROM模块myrom1和计数器模块myexam1。实现下述功能:随着时钟信号的加入,从低位地址到高位地址依次变化,自动读取ROM中预先存储的数据。,2. 连接底层模块和符号 将计数器模块myexam1的输出与ROM模块myrom1的地址端相连,两个模块的时钟相连,连接输入和输出引脚,构成完整的顶层原理图文件myexam.bdf。,3. 顶层文件的编译仿真 对原理图文件myexam.bdf进行编译,成功后,建立波形文件myexam.vwf,进行波形仿真,仿真后得到波形图如图所示。从图中可以看到该文件实现了在时钟信号clk的控制下,自动按顺序依次读取ROM中预先存储的数据输出qout,且带有复位信号控制端reset。,模拟信号显示方

温馨提示

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

评论

0/150

提交评论