《第4章 QuartusⅡ软件应用》由会员分享,可在线阅读,更多相关《第4章 QuartusⅡ软件应用(150页珍藏版)》请在金锄头文库上搜索。
1、第第4章章 Quartus软件应用软件应用 u4.1 概述概述u4.2 Quartus软件的安装与授权软件的安装与授权u4.3 Quartus图形用户介绍图形用户介绍 u4.4 Quartus图形编辑输入法图形编辑输入法 u4.5 LPM参数化宏功能模块及应用参数化宏功能模块及应用 u4.6 Quartus文本编辑输入法文本编辑输入法 u4.7 层次电路设计层次电路设计u小结小结4.1 概述概述u Quartus软件包是美国软件包是美国Altera公司的第四代公司的第四代EDA开发软件。其提供了一开发软件。其提供了一个一种与结构无关的设计环境,非常适应具体的设计需要。个一种与结构无关的设计环境
2、,非常适应具体的设计需要。Quartus提提供了方便的设计输入方式、快速的编译和直接易懂的器件编程。能够支供了方便的设计输入方式、快速的编译和直接易懂的器件编程。能够支持逻辑门数在百万门以上的逻辑器件的开发,并且为第三方工具提供了持逻辑门数在百万门以上的逻辑器件的开发,并且为第三方工具提供了无缝接口。无缝接口。Quartus支持的器件有:支持的器件有:Stratix、Stratix GX、Stratix、Mercury、MAX3000A、MAX7000B、MAX7000S、MAX 7000AE、MAX、FLEX6000、FLEX10K、FLEX10KA、FLEX10KE、Cyclone、Cyc
3、lone、APEX、APEX20KC、APEX20KE和和ACEX1K系列。系列。下一页 返回4.1 概述概述u Quartus软件包的编程器是系统的核心,提供功能强大的设计处理,设软件包的编程器是系统的核心,提供功能强大的设计处理,设计者可以添加特定的约束条件来提高芯片的利用率。在设计流程的每一计者可以添加特定的约束条件来提高芯片的利用率。在设计流程的每一步,步,Quartus软件能够引导设计者将注意力放在设计上,而不是软件的软件能够引导设计者将注意力放在设计上,而不是软件的使用上。同时,自动的错误定位、完备的错误和警告信息,使设计修改使用上。同时,自动的错误定位、完备的错误和警告信息,使设
4、计修改变得简单容易。另外,变得简单容易。另外,Quartus可与可与MATLAB的的Simulink和和DSP Builder结合,是开发结合,是开发DSP硬件系统的关键硬件系统的关键EDA工具,工具,Quartus与与SOPC Builder结合,能够开发结合,能够开发SOPC(System On a Programmable Chip)系统,)系统,是一款很有发展前途的是一款很有发展前途的EDA软件。软件。uQuartus软件设计流程如软件设计流程如图图4-1所示。所示。 上一页 返回4.2 Quartus软件的安装与授权软件的安装与授权u要想在计算机上使用要想在计算机上使用ALTERA公
5、司的公司的Quartus开发软件,必须经过安装开发软件,必须经过安装和授权两个步骤。本节将简单介绍和授权两个步骤。本节将简单介绍Quartus软件的安装步骤和授权方法。软件的安装步骤和授权方法。u4.2.1配置要求配置要求u为了在计算机上高效地使用为了在计算机上高效地使用Quartus开发软件,开发软件,ALTERA公司建议设计公司建议设计者的计算机的最低配置如下:者的计算机的最低配置如下:u奔腾奔腾400MHz的的CPU主频,主频,512MB以上的系统内存;以上的系统内存;u最小的硬盘空间必须大于最小的硬盘空间必须大于800MB;下一页 返回4.2 Quartus软件的安装与授权软件的安装与
6、授权u操作系统是操作系统是Microsoft Windows NT 4.0版本版本Service Pack 4或更新版本、或更新版本、Microsoft Windows 2000,Microsoft Windows XP,或者是运行,或者是运行Solaris7版本或版本或8版本的版本的Sun Ultra 工作站;工作站;uMicrosoft Windows兼容的兼容的SVGA显示器;显示器;uCD-ROM驱动器;驱动器;uMicrosoft IE 5.0以上的浏览器;以上的浏览器;uTCP/IP网络协议;网络协议;u至少具有以下端口之一:用于至少具有以下端口之一:用于ByteBlaster或者
7、或者ByteBlasterMV下载电下载电缆的并行端口(缆的并行端口(LPT口),用于口),用于Master Blaster通信电缆的串行端口,用通信电缆的串行端口,用于于USB-Blaster下载电缆、下载电缆、Master Blaster通信电缆以及可编程单元通信电缆以及可编程单元APU(ALTERA Programming Unit)的的USB端口。端口。下一页 返回上一页4.2 Quartus软件的安装与授权软件的安装与授权u4.2.2安装步骤安装步骤u在满足在满足ALTERA公司建议的计算机最低配置后,公司建议的计算机最低配置后,Quartus开发软件的安开发软件的安装步骤如下(以安
8、装装步骤如下(以安装Quartus6.1为例)。为例)。u1.把把Quartus开发软件的安装光盘放入计算机的光驱中,安装光盘将自开发软件的安装光盘放入计算机的光驱中,安装光盘将自动启动安装文件,如动启动安装文件,如图图4-2所示。如果没有出现所示。如果没有出现图图4-2所示的安装界面,所示的安装界面,则通过资源管理器进入光驱驱动器目录,双击根目录下的则通过资源管理器进入光驱驱动器目录,双击根目录下的install.exe文件文件即可。即可。u2.在在图图4-2中单击中单击Install Subscription Package按钮,即可进入如按钮,即可进入如图图4-3所所示的示的Quartu
9、s开发软件的安装欢迎界面。开发软件的安装欢迎界面。下一页 返回上一页4.2 Quartus软件的安装与授权软件的安装与授权u3.在在图图4-3中根据设计者拥有的软件可以选择安装中根据设计者拥有的软件可以选择安装Quartus软件、软件、ModelSim软件、软件、Mega Core IP Library工具包软件以及工具包软件以及Nios嵌入式处嵌入式处理器开发软件,选择好要安装的软件后,单击理器开发软件,选择好要安装的软件后,单击Next按钮即可进入如图按钮即可进入如图4-4所示的所示的Quartus开发环境的协议接受界面。如果单击开发环境的协议接受界面。如果单击Cancel按钮则退出按钮则
10、退出安装。安装。u4.在在图图4-4中单击单选按钮中单击单选按钮“I accept the terms of the license agreement”,按,按Next按钮进入如按钮进入如图图4-5所示的定义用户名和公司名信息的界面。所示的定义用户名和公司名信息的界面。u5.在图在图4-5中单击中单击Next按钮,进入如按钮,进入如图图4-6所示的所示的Quartus开发软件安装开发软件安装目录选择界面。目录选择界面。u6.在图在图4-6中选择中选择Quartus开发软件安装目录,默认的安装路径是开发软件安装目录,默认的安装路径是C:altera61quartus目录。然后单击目录。然后单击
11、Next按钮进入如按钮进入如图图4-7所示的所示的Quartus开发软件自定义安装和完全安装选择界面。开发软件自定义安装和完全安装选择界面。下一页 返回上一页4.2 Quartus软件的安装与授权软件的安装与授权u7.在图在图4-7中可以选择自定义安装和完全安装,此处选择完全安装,单击中可以选择自定义安装和完全安装,此处选择完全安装,单击Next按钮进入如按钮进入如图图4-8所示的选择程序文件夹界面。所示的选择程序文件夹界面。u8.在图在图4-8中设置好程序文件夹,默认的程序文件夹是中设置好程序文件夹,默认的程序文件夹是Altera,然后单击,然后单击Next按钮就开始安装程序文件了,如按钮就
12、开始安装程序文件了,如图图4-9所示。等待一段时间,所示。等待一段时间,Quartus开发软件就安装成功了,如开发软件就安装成功了,如图图4-10所示,按所示,按Finish按钮完成安按钮完成安装。装。u此时在计算机桌面上双击此时在计算机桌面上双击Quartus软件的图标或者在计算机桌面上单击软件的图标或者在计算机桌面上单击开始开始|程序程序|Altera|Quartus6.1,即可进入,即可进入Quartus集成开发环境。集成开发环境。下一页 返回上一页4.2 Quartus软件的安装与授权软件的安装与授权u4.2.3 授权方法授权方法u1. 授权形式授权形式uALTERA公司的公司的Qua
13、rtus开发软件安装完成后,在首次使用它之前还必开发软件安装完成后,在首次使用它之前还必须要有须要有ALTERA公司提供的授权文件公司提供的授权文件(license.dat)。ALTERA公司对公司对Quartus软件的授权有两种形式,一种是单机用户软件的授权有两种形式,一种是单机用户(node-locked,FIXED PC License),另一种是网络用户,另一种是网络用户(network FLOATPC、FLOATNET、FLOATLNX License)。正确安装)。正确安装Quartus软件的授权软件的授权文件有以下文件有以下4个注意点。个注意点。u不管是不管是network li
14、cense(多用户)还是(多用户)还是node locked license(单用户),(单用户),Quartus开发软件都需要有一个有效的,未过期的授权文件开发软件都需要有一个有效的,未过期的授权文件(license.dat),授权文件包括对),授权文件包括对ALTERA综合和仿真工具的授权,当综合和仿真工具的授权,当然也包括然也包括MAX+plus软件。软件。下一页 返回上一页4.2 Quartus软件的安装与授权软件的安装与授权u如果是使用多用户的授权文件,还需要对授权文件进行简单的改动,并如果是使用多用户的授权文件,还需要对授权文件进行简单的改动,并且需要安装、配置且需要安装、配置FL
15、EXLM授权管理服务器(授权管理服务器(FLEXLM license manager server)。如果是使用单用户的授权文件,还需要安装软件狗)。如果是使用单用户的授权文件,还需要安装软件狗(Sentinel Software Guard)。)。u2.指定授权文件指定授权文件u首次启动首次启动Quartus开发软件,会出现的软件请求授权的选项,如开发软件,会出现的软件请求授权的选项,如图图4-11所示。所示。u前面两项分别是前面两项分别是30天试用期和自动从天试用期和自动从Altera网站请求许可文件,如果拥网站请求许可文件,如果拥有授权文件,则选择第三项有授权文件,则选择第三项Speci
16、fy valid license file,点击,点击OK按钮,授按钮,授权文件设置如权文件设置如图图4-12所示。所示。u启动启动Quartus开发软件后,也可以通过执行开发软件后,也可以通过执行Tools|Licese Steup命命令,进入令,进入图图4-13所示的方法进入授权文件设置界面。所示的方法进入授权文件设置界面。下一页 返回上一页4.2 Quartus软件的安装与授权软件的安装与授权u选择导入授权文件选择导入授权文件(license文件),操作界面如文件),操作界面如图图4-14所示。所示。u导入授权文件后,用户信息显示如导入授权文件后,用户信息显示如图图4-15所示。所示。u
17、至此,至此,Quartus6.1软件的安装全部结束,可以开始设计工作了。软件的安装全部结束,可以开始设计工作了。上一页 返回4.3 Quartus图形用户介绍图形用户介绍uALTERA公司的公司的Quartus开发软件根据设计者的需求提供了一个全面的、开发软件根据设计者的需求提供了一个全面的、易于使用且具有独立解决方案的能力,可以完成设计流程的所有阶段。易于使用且具有独立解决方案的能力,可以完成设计流程的所有阶段。图图4-16显示了显示了Quartus图形用户界面为设计流程每个阶段所提供的功能。图形用户界面为设计流程每个阶段所提供的功能。u启动启动Quartus软件时出现的图形用户界面如软件时
18、出现的图形用户界面如图图4-17所示。所示。Quartus的图的图形用户界面分为六个大的区域,即:工程导航区、状态区、信息区、工形用户界面分为六个大的区域,即:工程导航区、状态区、信息区、工作区、快捷工具条和菜单命令区。作区、快捷工具条和菜单命令区。u4.3.1工程导航区工程导航区u 工程导航区如工程导航区如图图4-18所示,显示了当前工程的绝大部分重要信息,使所示,显示了当前工程的绝大部分重要信息,使用户对当前工程的文件层次结构、所有相关文档以及设计单元有一个很用户对当前工程的文件层次结构、所有相关文档以及设计单元有一个很清晰的认识。工程导航区由三个部分构成:清晰的认识。工程导航区由三个部分
19、构成:下一页 返回4.3 Quartus图形用户介绍图形用户介绍u1. Hierarchyu设计实体的层次结构,它清楚地显示了顶层实体和各调用实体的层次关设计实体的层次结构,它清楚地显示了顶层实体和各调用实体的层次关系。系。u2. Filesu显示所有与当前工程相关联的文件,这些文件被归类在两个文件夹中:显示所有与当前工程相关联的文件,这些文件被归类在两个文件夹中:Device design files和和Other Files。其中,。其中,Device design files中的文件是指中的文件是指能够使工程成功编译或仿真所需要的最基本的文件。能够使工程成功编译或仿真所需要的最基本的文件
20、。Other Files中放的中放的是辅助文件。当把鼠标放在文件夹中的文件上时,软件会自动显示文件是辅助文件。当把鼠标放在文件夹中的文件上时,软件会自动显示文件所在的绝对地址。用鼠标双击文件,则会在编辑窗口打开该文件。所在的绝对地址。用鼠标双击文件,则会在编辑窗口打开该文件。u 需要说明的是,这些文件夹在实际的硬盘存储空间中并不存在,它们需要说明的是,这些文件夹在实际的硬盘存储空间中并不存在,它们的作用只是为了方便用户浏览和编辑工程文件,而且这些文件夹在当前的作用只是为了方便用户浏览和编辑工程文件,而且这些文件夹在当前工程编译之前是不包含内容的,只有在当前工程编译之后才会将所有的工程编译之前是
21、不包含内容的,只有在当前工程编译之后才会将所有的工程文件信息显示在文件夹中。工程文件信息显示在文件夹中。下一页 返回上一页4.3 Quartus图形用户介绍图形用户介绍u3. Design Unitsu当前工程中的使用的所有设计单元。这些单元既包含当前工程中的使用的所有设计单元。这些单元既包含Quartus中自带的中自带的设计模块(如乘法器、移位寄存器等),也包含用户自己设计的单元模设计模块(如乘法器、移位寄存器等),也包含用户自己设计的单元模块。块。u4.3.2状态区状态区u状态区的作用是显示系统状态信息。它由一个显示窗口和一个位于系统状态区的作用是显示系统状态信息。它由一个显示窗口和一个位
22、于系统环境最下方的状态条组成。环境最下方的状态条组成。图图4-19中位于上面的窗口用于显示编译或仿中位于上面的窗口用于显示编译或仿真时的运行状态和进度。位于下方的状态条用于显示每个按钮或菜单的真时的运行状态和进度。位于下方的状态条用于显示每个按钮或菜单的功能描述以及工程编译和波形仿真的进度。此外,当仿真器运行到设置功能描述以及工程编译和波形仿真的进度。此外,当仿真器运行到设置的断点时,状态条还会显示系统处于等待状态的断点时,状态条还会显示系统处于等待状态“Simulator Waiting”;当编译器和仿真器都不工作时,状态窗口显示系统处于空闲状态;当编译器和仿真器都不工作时,状态窗口显示系统
23、处于空闲状态“Idle”。下一页 返回上一页4.3 Quartus图形用户介绍图形用户介绍u4.3.3信息区信息区u信息区用于显示系统在编译和仿真过程中所产生的指示信息。例如,语信息区用于显示系统在编译和仿真过程中所产生的指示信息。例如,语法信息、均成功信息等。信息区提供五大类操作标记信息:法信息、均成功信息等。信息区提供五大类操作标记信息:Extra Info、 Info、 Warning、 Critical Wan以及以及Error,关于各类信息的描述见,关于各类信息的描述见表表4-1。下一页 返回上一页4.3 Quartus图形用户介绍图形用户介绍u 这里需要提醒读者,警告信息和错误信息
24、不同:当编译仿真或软件构造这里需要提醒读者,警告信息和错误信息不同:当编译仿真或软件构造过程中产生错误信息时,用户的操作不会成功;而当出现警告信息时,过程中产生错误信息时,用户的操作不会成功;而当出现警告信息时,操作仍能成功。但是这并不能说明用户的设计文件是完全正确的,尤其操作仍能成功。但是这并不能说明用户的设计文件是完全正确的,尤其在综合和编译过程中更要注意警告信息,因为它可能代表逻辑上的错误在综合和编译过程中更要注意警告信息,因为它可能代表逻辑上的错误或芯片性能不符合设计要求。所以在编译阶段,读者最好对每个警告信或芯片性能不符合设计要求。所以在编译阶段,读者最好对每个警告信息都进行仔细检查
25、并寻找原因,这样能保证设计的稳定性和正确性,而息都进行仔细检查并寻找原因,这样能保证设计的稳定性和正确性,而且可以避免由此而给后面设计工作带来的不必要的麻烦。且可以避免由此而给后面设计工作带来的不必要的麻烦。u 用户可以通过点击信息区的标签来选择显示相应的信息,也可以通过用户可以通过点击信息区的标签来选择显示相应的信息,也可以通过鼠标右键的弹出菜单选择显示或隐藏某类信息,从而进行个性化定制,鼠标右键的弹出菜单选择显示或隐藏某类信息,从而进行个性化定制,如如图图4-20所示。所示。下一页 返回上一页4.3 Quartus图形用户介绍图形用户介绍u为了设计人员方便查阅信息,除了五类操作标记信息外,
26、为了设计人员方便查阅信息,除了五类操作标记信息外,Quartus软件软件还在信息区中增加了还在信息区中增加了System,Processing以及以及Suppressed三项标签信息,三项标签信息,但此三项信息仍属于五大类标记信息。但此三项信息仍属于五大类标记信息。Processing窗口显示所有操作标记窗口显示所有操作标记信息,即上面提到的五类操作标记信息都会在这个窗口显示。信息,即上面提到的五类操作标记信息都会在这个窗口显示。System窗窗口显示所有与设计工程无关的任务信息,例如,当把一个设计输入文件口显示所有与设计工程无关的任务信息,例如,当把一个设计输入文件作为工程的顶层实体时,在作
27、为工程的顶层实体时,在System窗口中就会记录下这次任务操作。窗口中就会记录下这次任务操作。Supperssed信息显示受信息显示受Message Suppression Manager对话框中的规则对话框中的规则(由用户设置)限制的(由用户设置)限制的Processing信息,当信息符合受限条件时,它将被信息,当信息符合受限条件时,它将被转移到转移到Supperssed标签页中,而标签页中,而Porcessing和其所属大类型标签页中则不和其所属大类型标签页中则不再显示此条信息。再显示此条信息。 下一页 返回上一页4.3 Quartus图形用户介绍图形用户介绍u4.3.4工作区工作区u工作
28、区是用户对输入文件进行设计的空间区域。在工作区中,工作区是用户对输入文件进行设计的空间区域。在工作区中,Quartus软件将显示设计文件和工具条以方便用户操作,如软件将显示设计文件和工具条以方便用户操作,如图图4-21所示。所示。u在默认情况下,在默认情况下,Quartus软件会根据用户打开的设计输入文件的类型以软件会根据用户打开的设计输入文件的类型以及用户当前的工作环境,自动地为用户显示不同的工具条,用户也可以及用户当前的工作环境,自动地为用户显示不同的工具条,用户也可以自定义工具条和快捷命令按钮。自定义工具条和快捷命令按钮。下一页 返回上一页4.3 Quartus图形用户介绍图形用户介绍u
29、4.3.5快捷命令工具条快捷命令工具条u 快捷命令工具条是由若干个按钮组成的,用鼠标点击按钮,可快速执行快捷命令工具条是由若干个按钮组成的,用鼠标点击按钮,可快速执行相应的操作。当把相应的操作。当把Quartus的所有工具条全部拖出显示时,会发现这些的所有工具条全部拖出显示时,会发现这些工具条中有很多按钮是重复的,这是工具条中有很多按钮是重复的,这是Quartus为了方便用户在打开每个为了方便用户在打开每个土具条时都能进行一些基本操作而做的设计。但是当用户同时打开多个土具条时都能进行一些基本操作而做的设计。但是当用户同时打开多个工具条时,会使整个系统环境显得臃肿繁琐,而这种情况在用户只需要工具
30、条时,会使整个系统环境显得臃肿繁琐,而这种情况在用户只需要不同工具条中的几个简单功能时会显得更为突出。所以不同工具条中的几个简单功能时会显得更为突出。所以Quartus也为用也为用户提供了个性化的设置功能,用户可以自定义工具条和快捷命令按钮。户提供了个性化的设置功能,用户可以自定义工具条和快捷命令按钮。上一页 返回4.4 Quartus图形编辑输入法图形编辑输入法u在在Quartus平台上,使用图形编辑输入法设计电路的操作流程,包括:平台上,使用图形编辑输入法设计电路的操作流程,包括:原理图编辑设计、设计编译、设计仿真和编程下载等基本过程。用原理图编辑设计、设计编译、设计仿真和编程下载等基本过
31、程。用Quartus图形编辑方式生成的图形文件的扩展名为图形编辑方式生成的图形文件的扩展名为.gdf或或 .bdf。u利用利用Quartus设计数字系统之前,应该先建立一个文件夹,此文件夹可设计数字系统之前,应该先建立一个文件夹,此文件夹可作为作为Quartus默认的工作库。默认的工作库。Quartus中任何一项设计都是一项工程,中任何一项设计都是一项工程,在工程设计过程中,会产生许多仅扩展名不同的同名文件,放在同一个在工程设计过程中,会产生许多仅扩展名不同的同名文件,放在同一个文件夹下,便于统一管理。出于同样的原因,不同的设计项目最好放在文件夹下,便于统一管理。出于同样的原因,不同的设计项目
32、最好放在不同的文件夹中。在本例中,建立文件夹不同的文件夹中。在本例中,建立文件夹e:mydesign作为工作库,以便作为工作库,以便将设计过程中的相关文件存储于此。将设计过程中的相关文件存储于此。下一页 返回4.4 Quartus图形编辑输入法图形编辑输入法u4.4.1创建工程设计项目创建工程设计项目 u打开打开Quartus集成环境后,呈现如集成环境后,呈现如图图4-22所示的主窗口界面。所示的主窗口界面。u1.执行主窗口菜单执行主窗口菜单File|New Project Wizard命令,弹出新建设计项目介命令,弹出新建设计项目介绍的对话框,按绍的对话框,按Next按钮,弹出如图按钮,弹出
33、如图4-23所示的新建设计项目对话框,所示的新建设计项目对话框,在对话框下输入项目路径、项目名称和顶层实体文件名,如在对话框下输入项目路径、项目名称和顶层实体文件名,如expl。顶层。顶层实体文件可以与项目名称不一致。实体文件可以与项目名称不一致。u2.点击点击图图4-23中中Next按钮,弹出现添加或删除与该项目有关的所有文件对按钮,弹出现添加或删除与该项目有关的所有文件对话框,包括第三方话框,包括第三方EDA工具输入文件。点击按钮工具输入文件。点击按钮“”可浏览文件选项。可浏览文件选项。下一页 返回上一页4.4 Quartus图形编辑输入法图形编辑输入法u3.依次点击依次点击Next按钮,
34、弹出选择目标器件和器件的封装形式、引脚数目按钮,弹出选择目标器件和器件的封装形式、引脚数目和速度级别对话框。和速度级别对话框。u4.最后弹出的是前面输入内容的总览对话框。点击最后弹出的是前面输入内容的总览对话框。点击Finish按钮,项目出现按钮,项目出现在项目导航窗口在项目导航窗口exp1表示顶层实体文件,双击文件名可打开文件,如表示顶层实体文件,双击文件名可打开文件,如图图4-24所示。所示。u4.4.2编辑设计原理图编辑设计原理图u在在Quartus中,通过模块原理图编辑器可以编辑图表模块和符号,产生中,通过模块原理图编辑器可以编辑图表模块和符号,产生原理图文件(原理图文件(.bdf)。
35、原理图输入的基本步骤包括:创建原理图文件、输。原理图输入的基本步骤包括:创建原理图文件、输入元件符号或模块、元件符号和模块间连线等。入元件符号或模块、元件符号和模块间连线等。下一页 返回上一页4.4 Quartus图形编辑输入法图形编辑输入法u1. 创建原理图文件创建原理图文件 u执行菜单执行菜单File|New命令,弹出如命令,弹出如图图4-25所示的编辑文件类型对话框,选择所示的编辑文件类型对话框,选择Block Diagram|Schematic File(模块模块|原理图文件)方式。或直接单击主窗原理图文件)方式。或直接单击主窗口上的口上的“创建新的图形文件创建新的图形文件”按钮,进入
36、按钮,进入Quartus原理图编辑器,如原理图编辑器,如图图4-26所示。原理图右边为工作区,左边为原理图编辑工具条,原理图编所示。原理图右边为工作区,左边为原理图编辑工具条,原理图编辑工具条按钮从上到下依次为:嵌入分离窗口工具、选择工具、文本工辑工具条按钮从上到下依次为:嵌入分离窗口工具、选择工具、文本工具、元件符号工具、模块工具、正交节点工具、正交总线工具、正交管具、元件符号工具、模块工具、正交节点工具、正交总线工具、正交管道工具、橡皮筋工具、部分线选择工具、放大缩小按钮、全屏按钮、道工具、橡皮筋工具、部分线选择工具、放大缩小按钮、全屏按钮、查找工具、元件水平翻转按钮、元件垂直翻转按钮、元
37、件逆时针旋转查找工具、元件水平翻转按钮、元件垂直翻转按钮、元件逆时针旋转90度按钮、画矩形框工具、画椭圆形工具、画直线工具、画弧线工具,这度按钮、画矩形框工具、画椭圆形工具、画直线工具、画弧线工具,这些工具栏按钮均可在菜单命令些工具栏按钮均可在菜单命令Edit和和View菜单中找到。菜单中找到。下一页 返回上一页4.4 Quartus图形编辑输入法图形编辑输入法u2.输入元件符号输入元件符号u以输入一个以输入一个D触发器元件为例,来介绍元件的输入过程。触发器元件为例,来介绍元件的输入过程。(1)在原理图编辑器窗口下,选择菜单)在原理图编辑器窗口下,选择菜单Edit|Insert Symbol,
38、或点击工,或点击工具栏中模块符号的图标,也可以直接在编辑器空白处双击鼠标左键,出具栏中模块符号的图标,也可以直接在编辑器空白处双击鼠标左键,出现如现如图图4-27所示的所示的Symbol对话框。对话框。(2)在)在Symbol对话框的对话框的Libraries中点击中点击“”,扩展,扩展C:alteraquartuslibraries中的文件夹中的文件夹Primitivesstorage,选中选中jkff,也可以也可以直接在直接在Name栏中输入关键字栏中输入关键字dffe,Symbol对话框右边出现触发器图元。对话框右边出现触发器图元。下一页 返回上一页4.4 Quartus图形编辑输入法图
39、形编辑输入法(3)点击)点击OK按钮,在模块编辑器中点击鼠标左键,插入按钮,在模块编辑器中点击鼠标左键,插入JK触发器符号。触发器符号。(4)重复以上)重复以上3步,可输入其他逻辑符号。右键选中符号,拖动鼠标,步,可输入其他逻辑符号。右键选中符号,拖动鼠标,可复制并连续输入符号。删除符号时,选中元件符号后,按键盘可复制并连续输入符号。删除符号时,选中元件符号后,按键盘Delete键即可。键即可。uSymbol对话框左下角的对话框左下角的3个复选框表示输入符号的不同方式:连续输入个复选框表示输入符号的不同方式:连续输入符号(符号(Repeat-insert mode)、以图表模块形式输入符号()
40、、以图表模块形式输入符号(Insert Symbol As block)、打开、打开MegaWizard Plug-In Manager(Launch MegaWizard Plug-In)。)。下一页 返回上一页4.4 Quartus图形编辑输入法图形编辑输入法u3.输入引脚类型输入引脚类型u在图在图4-27Symbol对话框的符号库中扩展文件夹对话框的符号库中扩展文件夹C:altera61quartuslibraries中的中的PrimitivesPin,选择引脚类型选择引脚类型input(输(输入引脚)、入引脚)、output(输出引脚)、(输出引脚)、bidir(双向引脚),也可以在(
41、双向引脚),也可以在Name栏栏中直接输入引脚关键字来输入引脚。中直接输入引脚关键字来输入引脚。u4.引脚命名引脚命名u鼠标左键双击引脚符号,弹出鼠标左键双击引脚符号,弹出Properties属性对话框,在属性对话框,在General栏的栏的Pinname(s)中填写自定义的引脚名称。或者用鼠标指向引脚符号的)中填写自定义的引脚名称。或者用鼠标指向引脚符号的pin_name,双击鼠标,键入引脚名称,按回车键,自动指向下一个引脚的双击鼠标,键入引脚名称,按回车键,自动指向下一个引脚的pin_name处,继续对下一个引脚命名。处,继续对下一个引脚命名。下一页 返回上一页4.4 Quartus图形编
42、辑输入法图形编辑输入法u5.元件符号间连线元件符号间连线u在在Quartus的原理图编辑器中能用的原理图编辑器中能用“智能智能”连接工具(节点、总线和管连接工具(节点、总线和管道工具)连接模块和符号。管道主要用于连模块,代表进出模块的一个道工具)连接模块和符号。管道主要用于连模块,代表进出模块的一个或多个或多个I/O端口信号的总线组。端口信号的总线组。u当鼠标位于元件符号的引脚上或图表模块边沿时,当鼠标位于元件符号的引脚上或图表模块边沿时,“智能智能”连接工具自连接工具自动变成十字形画线指针,如动变成十字形画线指针,如图图4-28所示。移动鼠标,选择连线起点(如所示。移动鼠标,选择连线起点(如
43、D触发器的引脚触发器的引脚Q),按住左键拖动鼠标至结束点(输入引脚符号)放开。),按住左键拖动鼠标至结束点(输入引脚符号)放开。u6.保存文件保存文件u选择菜单选择菜单File|Save或单击保存文件图标,保存文件,选中对话框下端的或单击保存文件图标,保存文件,选中对话框下端的可选项可选项Add file to current project,如,如图图4-29所示,文件在保存的同时被所示,文件在保存的同时被添加到项目添加到项目expl中,并作为顶层实体文件。中,并作为顶层实体文件。下一页 返回上一页4.4 Quartus图形编辑输入法图形编辑输入法u4.4.3设计编译设计编译u编辑完原理图文
44、件后,下面就可以进行设计项目的编译了。编辑完原理图文件后,下面就可以进行设计项目的编译了。Quartus编编译器的功能包括设计错误检查、逻辑综合、译器的功能包括设计错误检查、逻辑综合、Altera适配器件以及产生下适配器件以及产生下载编程的输出文件载编程的输出文件,编译器生成的编程文件可以用编译器生成的编程文件可以用Quartus编程器或其编程器或其他工业标准的编程器对器件进行编程或配置。他工业标准的编程器对器件进行编程或配置。u1.编译设置编译设置u在管理器窗口中选择菜单在管理器窗口中选择菜单Assignment|Settings,或用鼠标右键单击项目,或用鼠标右键单击项目名,选择名,选择S
45、ettings,出现设置对话框,如出现设置对话框,如图图4-30所示。所示。下一页 返回上一页4.4 Quartus图形编辑输入法图形编辑输入法u在对话框中选在对话框中选Category下的下的Device选项,根据系统设计的实际需要选择选项,根据系统设计的实际需要选择目标芯片系列及相应的芯片。还可在目标芯片系列及相应的芯片。还可在Available devices栏分别单击栏分别单击Package(封装形式)、(封装形式)、Pin count(管脚数量)和(管脚数量)和Speed(速度)来选定(速度)来选定芯片。芯片。u2.开始编译开始编译u选择菜单选择菜单Processing|Start
46、Complition或直接点击工具栏中编译快捷按钮或直接点击工具栏中编译快捷按钮开始编译。编译过程中,状态窗口显示编译进度的百分比和每个阶段所开始编译。编译过程中,状态窗口显示编译进度的百分比和每个阶段所花时间。花时间。下一页 返回上一页4.4 Quartus图形编辑输入法图形编辑输入法u信信息息窗窗口口显显示示所所有有信信息息、警警告告和和错错误误。双双击击某某个个信信息息项项,可可以以定定位位到到原原设设计计文文件件并并高高亮亮显显示示。编编译译完完成成后后将将产产生生一一个个编编译译报报告告栏栏,编编译译结结果果在在报报告告栏栏中中自自动动更更新新,如如图图4-31所所示示。编编译译报报
47、告告包包含含了了将将一一个个设设计计放放到到器器件件中中的的所所有有信信息息,如如器器件件资资源源统统计计、编编译译设设置置、底底层层显显示示、器器件件资资源源利利用用率率、适适配配结结果果、延延时时分分析析结结果果以以及及CPU使使用用资资源源等等。这这是是一一个个只只读读窗窗口口,选选中中某某项项可可获获得得更更详详细细的的信信息息。如如果果编编译译有有错错误误,需需要要修修改改设设计计,并重新编译。并重新编译。下一页 返回上一页4.4 Quartus图形编辑输入法图形编辑输入法u4.4.4波形仿真波形仿真u当一个设计项目的编译完成之后,能否实现预期的逻辑功能,仍需要进当一个设计项目的编译
48、完成之后,能否实现预期的逻辑功能,仍需要进一步的检验。为了实现正确的逻辑设计,仿真分析过程是必不可少的一一步的检验。为了实现正确的逻辑设计,仿真分析过程是必不可少的一个环节。仿真分析就是在波形编辑器中将设计的逻辑功能用波形图的形个环节。仿真分析就是在波形编辑器中将设计的逻辑功能用波形图的形式显示出来,检查逻辑功能是否符合设计要求,并给出波形分析报告。式显示出来,检查逻辑功能是否符合设计要求,并给出波形分析报告。设计项目波形仿真的过程如下:设计项目波形仿真的过程如下:u1.创建波形文件并进入编辑环境创建波形文件并进入编辑环境u执行菜单命令执行菜单命令File|New或者单击标准工具栏上的新建图标
49、,则可打开新或者单击标准工具栏上的新建图标,则可打开新建文件对话框,在建文件对话框,在Other Files标签页中选择标签页中选择Vector Waveform File项则可项则可以新建一个矢量波形文件(以新建一个矢量波形文件(*.vwf)。单击。单击OK按钮即可进入按钮即可进入Quartus软软件的波形文件编辑器,如件的波形文件编辑器,如图图4-32所示。其标题栏的默认文件名是所示。其标题栏的默认文件名是Waveforml.vwf。下一页 返回上一页4.4 Quartus图形编辑输入法图形编辑输入法u2.插入节点插入节点u在波形文件编辑器中,插入节点步骤如下:在波形文件编辑器中,插入节点
50、步骤如下:(1)在图)在图4-32中,选择菜单中,选择菜单Edit|Insert Node or Bus,在弹出的,在弹出的Insert Node or Bus对话框中点击按钮对话框中点击按钮Node Finder,弹出节点查找对话框,如,弹出节点查找对话框,如图图4-33所示。所示。(2)在图)在图4-33信号节点查找对话框的信号节点查找对话框的Filte栏目中选择栏目中选择Pins:all后,再单击后,再单击List按钮,这时在窗口左边的按钮,这时在窗口左边的Nodes Found:框中将列出该设计项目的全框中将列出该设计项目的全部信号节点。若在仿真中需要观察全部信号的波形,则单击窗口中间
51、的部信号节点。若在仿真中需要观察全部信号的波形,则单击窗口中间的“”按钮;若在仿真中只需要观察部分信号的波形,则首先用鼠标单按钮;若在仿真中只需要观察部分信号的波形,则首先用鼠标单击信号名,然后单击窗口中间的击信号名,然后单击窗口中间的“”按钮,选中的信号即进入到窗口按钮,选中的信号即进入到窗口右边的右边的Selected Nodes(被选择的节点)框中。如果需要删除(被选择的节点)框中。如果需要删除Selected Nodes框中的节点信号,也可以用鼠标将其选中,然后单击窗口中间的框中的节点信号,也可以用鼠标将其选中,然后单击窗口中间的“”按钮。节点信号选择完毕后,单击按钮。节点信号选择完毕
52、后,单击OK按钮即可。按钮即可。下一页 返回上一页4.4 Quartus图形编辑输入法图形编辑输入法u3.设置输入节点的波形设置输入节点的波形u在波形文件编辑器中,设置输入节点的波形步骤如下:在波形文件编辑器中,设置输入节点的波形步骤如下:(1)选择菜单)选择菜单Edit/End Time,设置仿真结束时间,如,设置仿真结束时间,如1S;选择菜单;选择菜单Edit/Grid Size.,可以修改仿真栅格大小,通常用栅格大小表示信号状,可以修改仿真栅格大小,通常用栅格大小表示信号状态的基本维持时间。态的基本维持时间。下一页 返回上一页4.4 Quartus图形编辑输入法图形编辑输入法u(2)设设
53、置置输输入入信信号号波波形形时时,先先选选中中一一个个节节点点,节节点点选选中中后后,波波形形文文件件编编辑辑器器左左侧侧波波形形编编辑辑工工具具按按钮钮被被激激活活,然然后后单单击击波波形形编编辑辑工工具具按按钮钮来来节节点点赋赋值值,如如图图4-35所所示示。也也可可以以拖拖动动鼠鼠标标,选选定定信信号号的的某某个个时时间间段段进进行行赋赋值值。图图4-34中中,波波形形编编辑辑工工具具按按钮钮从从上上而而下下依依次次为为:嵌嵌入入分分离离窗窗口口工工具具、选选择择工工具具、文文本本工工具具、波波形形编编辑辑工工具具、缩缩放放工工具具、全全屏屏显显示示、查查找找工工具具、替替换换文文本本工
54、工具具、波波形形编编辑辑中中的的未未初初始始化化设设置置、不不定定状状态态设设置置、强强0电电平平设设置置、强强1电电平平设设置置、高高阻阻设设置置、弱弱不不定定电电平平设设置置、弱弱0电电平平设设置置、弱弱1电电平平设设置置、无无关关状状态态设设置置、对对选选择择的的波波形形电电平平取取反反、计计数数器器设设置置工工具具、时时钟钟信信号号设设置置工工具具、信信号号任任意意值值设设置置、随随机机信信号号设设置置工工具具、对对齐齐网网格格工工具具、排序工具。排序工具。下一页 返回上一页4.4 Quartus图形编辑输入法图形编辑输入法u4.保存波形文件保存波形文件u执行菜单执行菜单File|Sa
55、ve as,保存波形文件。,保存波形文件。u5.设置仿真器设置仿真器u执行菜单执行菜单Assignments|Simulator Settings命令,在命令,在Settings对话框的对话框的Simulator Settings项中直接设置。项中直接设置。u在在Quartus中,仿真模式有两种:功能仿真(中,仿真模式有两种:功能仿真(Functional )和时序仿真和时序仿真(Timing),如图),如图4-35所示。功能仿真又称前仿真,是在不考虑器件延时所示。功能仿真又称前仿真,是在不考虑器件延时的理想情况下进行的逻辑验证;时序仿真又称后仿真,是在考虑了具体的理想情况下进行的逻辑验证;时
56、序仿真又称后仿真,是在考虑了具体适配器件的各种延时的情况下进行的仿真。适配器件的各种延时的情况下进行的仿真。下一页 返回上一页4.4 Quartus图形编辑输入法图形编辑输入法u6.运行仿真器运行仿真器u选择菜单选择菜单Processing|Start Simulation或点击工具栏中的仿真快捷按钮运或点击工具栏中的仿真快捷按钮运行仿真器,仿真状态窗口和仿真报告栏自动出现并更新,信息窗口中显行仿真器,仿真状态窗口和仿真报告栏自动出现并更新,信息窗口中显示相关信息。仿真波形见示相关信息。仿真波形见图图4-36,如果仿真结果有错误,需要修改设计并如果仿真结果有错误,需要修改设计并重新编译仿真。重
57、新编译仿真。u7.延时分析延时分析u延时分析有两种:单时钟和多时钟延时分析。延时分析有两种:单时钟和多时钟延时分析。u单时钟的延时分析包括最大时钟频率及最差情况下的寄存器到寄存器的单时钟的延时分析包括最大时钟频率及最差情况下的寄存器到寄存器的延时延时Fmax,建立时间建立时间Tsu,保持时间保持时间Th,时钟到输出时间时钟到输出时间Tco,引脚之间的延引脚之间的延时时Tpd及整个系统的及整个系统的Fmax。下一页 返回上一页4.4 Quartus图形编辑输入法图形编辑输入法u多时钟的延时是指分析不同时钟控制的寄存器之间的延时,可以运用多时钟的延时是指分析不同时钟控制的寄存器之间的延时,可以运用
58、Slack进行分析。生成的延时信息可以用进行分析。生成的延时信息可以用VHDL,Verilog HDL或标准延时或标准延时文件(文件(.sdf )格式输出到第三方的格式输出到第三方的EDA工具中。所有延时分析信息都包工具中。所有延时分析信息都包含在编译报告中,在编译报告栏选择含在编译报告中,在编译报告栏选择Timing Analyses可查看详细信息。可查看详细信息。u4.4.5引脚锁定引脚锁定u引脚锁定是指将设计文件的输入输出信号分配到器件特定引脚的过程。引脚锁定是指将设计文件的输入输出信号分配到器件特定引脚的过程。引脚锁定的步骤如下:引脚锁定的步骤如下:u1.执行执行Assignments
59、|Assignments Editor命令或者直接单击命令或者直接单击Assignments Editor按钮,打开如按钮,打开如图图4-37所示的引脚锁窗口,在窗口的所示的引脚锁窗口,在窗口的Category栏目选栏目选择择Pin项。项。下一页 返回上一页4.4 Quartus图形编辑输入法图形编辑输入法u2.用鼠标左键双击用鼠标左键双击Name栏目下的栏目下的new,在其下拉菜单中列出了设计,在其下拉菜单中列出了设计项目中电路的全部输入和输出引脚名,例如项目中电路的全部输入和输出引脚名,例如exp1的的CLK、D、PRN、ENA和和Q引脚引脚,用鼠标选择其中的一个引脚。用鼠标选择其中的一个
60、引脚。u3.用鼠标左键双击用鼠标左键双击Location栏目下的栏目下的new,在其下拉菜单中列出了目,在其下拉菜单中列出了目标芯片全部可使用的标芯片全部可使用的I/O引脚,然后用鼠标选择其中的一个引脚,然后用鼠标选择其中的一个I/O引脚分配引脚分配给给Name栏目下某个引脚。例如将栏目下某个引脚。例如将Pin_7、Pin_8、Pin_9、Pin_10、Pin_11和和Pin_12分配分别给分配分别给Name栏目下的栏目下的CLK、D、PRN、ENA和和Q引引脚。引脚锁定后如脚。引脚锁定后如图图4-38所示。所示。u4. 执行菜单执行菜单Processing|Start Simulation命
61、令队锁定引脚后的设计项目重命令队锁定引脚后的设计项目重新编译,产生设计电路的下载及配置文件。新编译,产生设计电路的下载及配置文件。下一页 返回上一页4.4 Quartus图形编辑输入法图形编辑输入法u4.4.6器件编程器件编程u使用使用Quartus的编程器可以为的编程器可以为Altera公司的可编程逻辑器件进行编程和公司的可编程逻辑器件进行编程和配置。设计者也可以验证、检查和清空配置器件。配置。设计者也可以验证、检查和清空配置器件。u1.产生编程文件产生编程文件uQuartus编译器对已选择器件的工程进行编译后会自动产生编译器对已选择器件的工程进行编译后会自动产生.pof和和.sof文件。其
62、中文件。其中.pof文件专用配置器件,文件专用配置器件,.sof文件用于通过连接计算机上的文件用于通过连接计算机上的下载电缆直接对下载电缆直接对FPGA进行配置,配置的方式可以是进行配置,配置的方式可以是JTAG方式或方式或PS方式。方式。在成功进行编译后,在成功进行编译后,Quartus将生成编程数据文件,如将生成编程数据文件,如.pof和和.sof等编等编程数据文件,这些文件可以被编程器使用,对器件进行编程或配置,通程数据文件,这些文件可以被编程器使用,对器件进行编程或配置,通过下载电缆将编程文件下载到可编程器件中。过下载电缆将编程文件下载到可编程器件中。下一页 返回上一页4.4 Quar
63、tus图形编辑输入法图形编辑输入法u2.连接下载电缆和连接下载电缆和EDA实验装置实验装置u如果使用如果使用ByteBlasterMV下载电缆,将下载电缆,将ByteBlasterMV的的DB25接到接到PC机机的并行端口;如果使用的并行端口;如果使用MasterBlaster下载电缆编程,将下载电缆编程,将MasterBlaster的的RS-232接口连接到接口连接到PC机的机的RS-232C串行端口;如果使用串行端口;如果使用USB接口,则连接口,则连接到接到PC机的机的USB端口。下载电缆连接后要打开端口。下载电缆连接后要打开EDA实验装置电源。实验装置电源。u3.器件编程器件编程(1)
64、执行菜单)执行菜单Tools|Programmer命令或者直接单击命令或者直接单击Programmer按钮,按钮,弹出如弹出如图图4-39所示的编程口。所示的编程口。(2)在)在图图4-40,单击,单击Hardware settings按钮,在弹出的按钮,在弹出的Hardware Setup对话框中单击对话框中单击Add Hardware按钮,在弹出对话框中选择按钮,在弹出对话框中选择ByteBlasterMV编程方式,单击编程方式,单击OK按钮。如图按钮。如图4-40所示。所示。下一页 返回上一页4.4 Quartus图形编辑输入法图形编辑输入法(3)根据用户)根据用户EDA实验装置,在模式
65、项中选择实验装置,在模式项中选择Passive Serial或或JTAG模模式,然后点击式,然后点击Add File或或Add Device按钮增加将要配置或编程的文件或按钮增加将要配置或编程的文件或器件,并建立一该个器件链(器件,并建立一该个器件链(chain)描述文件()描述文件(.cdf)。在被动串行模)。在被动串行模式下,在器件链中选择式下,在器件链中选择.sof文件。在文件。在JTAG模式下,在器件链中应增加模式下,在器件链中应增加特定的器件和配置器件,除了特定的器件和配置器件,除了. sof和和.pof文件外,在器件链中对每个配文件外,在器件链中对每个配置器件都有几个可编程选项,包
66、括对照编程文件的数据校验一个置器件都有几个可编程选项,包括对照编程文件的数据校验一个EPC配配置器件的;内容,检测器件是否空,检查己编程器件并将其中的数据保置器件的;内容,检测器件是否空,检查己编程器件并将其中的数据保存到文件中,或者使用其数据编程或校验其它的配置器件。存到文件中,或者使用其数据编程或校验其它的配置器件。(4)执行)执行Processing|Start Programming命令或者直接单击命令或者直接单击Start按钮,按钮,即可实现设计电路到目标芯片的编程下载。即可实现设计电路到目标芯片的编程下载。上一页 返回4.5 LPM参数化宏功能模块及应用参数化宏功能模块及应用u随着
67、数字系统设计越来越复杂,将系统中的每个模块都从头开始设计是随着数字系统设计越来越复杂,将系统中的每个模块都从头开始设计是一件十分困难的事,而且会大大延长设计周期,甚至增加系统的不稳定一件十分困难的事,而且会大大延长设计周期,甚至增加系统的不稳定因素。因素。IP的出现使得设计过程变得十分简单,用户甚至只需要将不同的的出现使得设计过程变得十分简单,用户甚至只需要将不同的模块连接起来,就可以实现一个完整的系统。这样对减少产品的上市时模块连接起来,就可以实现一个完整的系统。这样对减少产品的上市时间,赚取早期利润非常有利。间,赚取早期利润非常有利。u4.5.1IP的概念及的概念及Altera的的IPu1
68、. IP的概念的概念uIP (Intellectual Property)就是常说的知识产权。美国)就是常说的知识产权。美国Dataquest咨询公咨询公司将半导体产业的司将半导体产业的IP定义为用于定义为用于ASIC, ASSP, PLD等芯片当中的,并且等芯片当中的,并且是预先设计好的电路功能模块。是预先设计好的电路功能模块。下一页 返回4.5 LPM参数化宏功能模块及应用参数化宏功能模块及应用u在可编程逻辑器件(在可编程逻辑器件(PLD)领域,)领域,IP核是指将一些在数字电路中常用但核是指将一些在数字电路中常用但比较复杂的功能块,如比较复杂的功能块,如FIR滤波器、滤波器、SDRAM控
69、制器、控制器、PCI接口等,设计接口等,设计成参数可修改的模块,让其他用户可以直接调用这些模块。成参数可修改的模块,让其他用户可以直接调用这些模块。u根据实现的不同,根据实现的不同,IP可以分为软可以分为软IP、固、固IP和硬和硬IP。软。软IP用硬件描述语言用硬件描述语言(HDL)的形式描述功能块的行为,但是并不涉及用什么电路和电路元)的形式描述功能块的行为,但是并不涉及用什么电路和电路元件实现这些行为;固件实现这些行为;固IP是完成了综合的功能块,有较大的设计深度,以是完成了综合的功能块,有较大的设计深度,以网表的形式提交客户使用。如果客户与固网表的形式提交客户使用。如果客户与固IP使用同
70、一个生产线的单元库,使用同一个生产线的单元库,IP的成功率会比较高;硬的成功率会比较高;硬IP提供设计的最终阶段产品提供设计的最终阶段产品掩膜(掩膜(Mask)。)。随着设计深度的提高,后续工序所需要做的事情就越少,当然,灵活性随着设计深度的提高,后续工序所需要做的事情就越少,当然,灵活性也就越低。也就越低。u因此,不同的设计者可以根据自己的需要订购不同的因此,不同的设计者可以根据自己的需要订购不同的IP产品。产品。下一页 返回上一页4.5 LPM参数化宏功能模块及应用参数化宏功能模块及应用u2. Altera的的IPu(1)基本宏功能()基本宏功能(Megafunctions/LPM)u在在
71、Altera的开发工具的开发工具Quartus中,有一些内带的基本宏功能可供用户选中,有一些内带的基本宏功能可供用户选用,如乘法器、多路选择器、移位寄存器等。当然,这些基本的逻辑功用,如乘法器、多路选择器、移位寄存器等。当然,这些基本的逻辑功能也可以由通用的硬件描述语言能也可以由通用的硬件描述语言 (Hardware Description Language)描述描述出来。然而出来。然而Altera的这些基本宏功能都是针对其实现的目标器件进行优的这些基本宏功能都是针对其实现的目标器件进行优化过的模块,它们应用在具体化过的模块,它们应用在具体Altera器件的设计中,往往可以使用户的器件的设计中
72、,往往可以使用户的设计性能更高,使用的资源更少。使用设计性能更高,使用的资源更少。使用Altera的基本宏功能还可以显著的基本宏功能还可以显著提高用户设计的开发进度,缩短用户产品的上市时间。另外,还有一些提高用户设计的开发进度,缩短用户产品的上市时间。另外,还有一些Altera器件特有的资源,例如片内器件特有的资源,例如片内RAM块、块、DSP块、块、LUDS驱动器、驱动器、PLL, DDIO和高速的收发电路等,同样是通过基本宏功能方式提供给和高速的收发电路等,同样是通过基本宏功能方式提供给用户使用的。这样,用户使用起来非常方便,设置参数比较简单,只需用户使用的。这样,用户使用起来非常方便,设
73、置参数比较简单,只需通过图形界面通过图形界面(GUI)操作即可,而且不容易出错。操作即可,而且不容易出错。下一页 返回上一页4.5 LPM参数化宏功能模块及应用参数化宏功能模块及应用uAltera可以提供的基本宏功能参见可以提供的基本宏功能参见表表4-2。u在这里要强调的是,对一些简单的功能模块,如加减、简单的多路器在这里要强调的是,对一些简单的功能模块,如加减、简单的多路器等,通常建议使用通用的等,通常建议使用通用的HDL来描述。这样的逻辑功能用来描述。这样的逻辑功能用HDL描述起来描述起来非常简洁,而且综合工具可以把这些基本功能放在整个设计中进行优化,非常简洁,而且综合工具可以把这些基本功
74、能放在整个设计中进行优化,使得系统达到最优。如果使用使得系统达到最优。如果使用Altera的基本宏功能,由于综合工具的算的基本宏功能,由于综合工具的算法无法对该模块进行基本逻辑的优化操作,反而会影响设计的结构。而法无法对该模块进行基本逻辑的优化操作,反而会影响设计的结构。而对一些相对比较复杂的设计,例如,一个同步可载入的计数器,使用对一些相对比较复杂的设计,例如,一个同步可载入的计数器,使用Altera的基本宏功能会得到较好的结果。的基本宏功能会得到较好的结果。下一页 返回上一页4.5 LPM参数化宏功能模块及应用参数化宏功能模块及应用u另外,在设计代码中过多地使用基本宏功能,也会降低代码的可
75、移植性,另外,在设计代码中过多地使用基本宏功能,也会降低代码的可移植性,这些都需要读者在实践中体会和积累。这些都需要读者在实践中体会和积累。u(2)Altera的的IP核与核与AMPP IP核(核(MegaCore)uAltera除了提供一些基本宏功能以外,还提供了一些比较复杂的、相对除了提供一些基本宏功能以外,还提供了一些比较复杂的、相对比较通用的功能模块,例如比较通用的功能模块,例如PCI接口、接口、DDR SDRAM控制器等。这些就控制器等。这些就是是Altera可以提供的可以提供的IP库,也称之为库,也称之为MegaCore。总的来说,。总的来说,Altera的的MegaCore可以分
76、为可以分为4大类,参见大类,参见表表4-3。下一页 返回上一页4.5 LPM参数化宏功能模块及应用参数化宏功能模块及应用u此外,一些此外,一些Altera的合作伙伴的合作伙伴AMPP (Altera Megafunction Parters Program)也向)也向Altera的客户提供基于的客户提供基于Altera器件优化的器件优化的IP核。核。u所有的所有的Altera或或AMPP的的IP具有统一的具有统一的IP Toolbench界面,用来定制和生界面,用来定制和生成成IP文件。所有的文件。所有的IP核可以支持功能仿真模型,绝大部分核可以支持功能仿真模型,绝大部分IP核支持核支持Ope
77、nCorePlus,也就是说用户可以免费在实际器件中验证所用的也就是说用户可以免费在实际器件中验证所用的IP核(用核(用户必须把所用器件通过户必须把所用器件通过JTAG电缆连到电缆连到PC机上,否则机上,否则IP核电路不会工作)核电路不会工作),直到用户觉得没有问题,再购买,直到用户觉得没有问题,再购买IP许可证。许可证。u在使用在使用Altera的的IP或是或是AMPP的的IP时,一般的开发步骤如下:时,一般的开发步骤如下:u下载所要下载所要MegaCore的安装程序并安装;的安装程序并安装;下一页 返回上一页4.5 LPM参数化宏功能模块及应用参数化宏功能模块及应用u通过通过MegaWiz
78、ard的界面打开的界面打开IP核的统一界面核的统一界面IP Toolbench;u根据用户的需要定制要生成根据用户的需要定制要生成IP的参数;的参数;u产生产生IP的封装和网表文件,以及功能仿真模型;的封装和网表文件,以及功能仿真模型;u用户对用户对IP的的RTL仿真模型做功能仿真;仿真模型做功能仿真;u用户把用户把IP的封装文件和网表文件放在设计工程中,并实现设计;的封装文件和网表文件放在设计工程中,并实现设计;u如果如果IP支持支持OpenCorePlus:用户可以把设计下载到器件中做验证和调试;:用户可以把设计下载到器件中做验证和调试;u如果确认如果确认IP使用没有问题,即可以向使用没有
79、问题,即可以向Altera或第三方或第三方IP供应商购买许可供应商购买许可证。证。下一页 返回上一页4.5 LPM参数化宏功能模块及应用参数化宏功能模块及应用u4.5.2 Alter宏功能模块应用实例宏功能模块应用实例u为了方便用户使用宏功能模块,为了方便用户使用宏功能模块,Quartus软件为用户提供了软件为用户提供了“MegaWizard Plug-InManager”,即,即MegaWizard管理器。它允许用户选管理器。它允许用户选择基本宏功能模块,然后为其选择合适的参数,选择需要的输入输出端择基本宏功能模块,然后为其选择合适的参数,选择需要的输入输出端口设置,再生成用户设计所需的模块
80、文件。向导将提供一个供自定义和口设置,再生成用户设计所需的模块文件。向导将提供一个供自定义和参数化宏功能模块使用的图形界面,并确保用户正确设置所有宏功能模参数化宏功能模块使用的图形界面,并确保用户正确设置所有宏功能模块的参数。块的参数。u在在Quartus中使用基本宏功能模块设计项目的步骤大致如下:建立一个中使用基本宏功能模块设计项目的步骤大致如下:建立一个Project、使用、使用MegaWizard管理器定制宏功能模块、继续完成设计的其管理器定制宏功能模块、继续完成设计的其他部分、对设计进行编译、时序分析仿真。下面通过举一他部分、对设计进行编译、时序分析仿真。下面通过举一“44乘法器乘法器
81、设计设计”来说明来说明Quartus中使用基本宏功能模块的方法。中使用基本宏功能模块的方法。下一页 返回上一页4.5 LPM参数化宏功能模块及应用参数化宏功能模块及应用u1. 创建工程项目及原理图文件创建工程项目及原理图文件u创建好如创建好如图图4-41所示的工程项目及原理图文件,工程项目及原理图文件所示的工程项目及原理图文件,工程项目及原理图文件的方法如前所述,此处不再累赘。的方法如前所述,此处不再累赘。u2.定制基本宏功能定制基本宏功能(1)在图)在图4-41所示窗口中,选择菜单所示窗口中,选择菜单Edit|Insert Symbol或点击工具栏或点击工具栏中模块符号的图标,也可以直接在编
82、辑器空白处双击鼠标左键,出现如中模块符号的图标,也可以直接在编辑器空白处双击鼠标左键,出现如图图4-42所示的所示的Symbol对话框。对话框。(2)在)在c:altera61quartuslibrariesmegafunctionsarithmetic,选中,选中lpm_mult,也可以直接在也可以直接在Name栏中输入关键字栏中输入关键字lpm_mult,Symbol对话框对话框右边出现触发器图元。右边出现触发器图元。(3)点击图)点击图4-42中中OK按钮,即打开按钮,即打开MegaWizard Plug-InManager向导,向导,进入第进入第2页语言参数设置页面,如页语言参数设置页
83、面,如图图4-43所示。所示。下一页 返回上一页4.5 LPM参数化宏功能模块及应用参数化宏功能模块及应用(4)点击图)点击图4-43中中Next按钮,弹出第按钮,弹出第3页选择乘法器的输入数据宽度页选择乘法器的输入数据宽度4,以及是否需要设置进位输入和输出端,如以及是否需要设置进位输入和输出端,如图图4-44所示。点击所示。点击Next按钮。按钮。(5)第)第4页的页的3个选项表示:是否需要设置一个常量输入、数据为有符号个选项表示:是否需要设置一个常量输入、数据为有符号数还是无符号数、使用乘法器的工具类型。本例选择缺省设置,点击数还是无符号数、使用乘法器的工具类型。本例选择缺省设置,点击Ne
84、xt按钮。按钮。(6)第)第5页系统提示是否要对该模块管道化(页系统提示是否要对该模块管道化(Pipeline)。若选择该选项,)。若选择该选项,系统将自动添加一个时钟信号,并在最后生成的模块中,用时钟控制输系统将自动添加一个时钟信号,并在最后生成的模块中,用时钟控制输出的时间。出的时间。对话框右下角是可选的优化方式:对话框右下角是可选的优化方式:Default(缺省项)、(缺省项)、speed(速度优化)(速度优化)Area(面积优化)。选择缺省设置,点击(面积优化)。选择缺省设置,点击Next按钮进入下一页。按钮进入下一页。(7)在)在MegaWizard Plug-In Manager的
85、最后的最后1页,如页,如图图4-45所示。选择所示。选择要生成的要生成的4种类型的乘法器文件:种类型的乘法器文件:下一页 返回上一页4.5 LPM参数化宏功能模块及应用参数化宏功能模块及应用Lmp_mult0.vhd:乘法器模块的:乘法器模块的VHDL文本文件。文本文件。Lmp_mult0.inc:ASC码文件,包含可写入包头的函数定义。码文件,包含可写入包头的函数定义。Lmp_mult0.cmp:ASC码文件,包含适用于其他高层模块调用的码文件,包含适用于其他高层模块调用的VHDLCOMPONENT定义。定义。Lmp_mult0.bsf模块符号文件(模块符号文件(Block Symbol F
86、ile)。)。u点击点击Finish按钮,乘法器设计结束并出现在原理图编辑窗口中,按鼠标按钮,乘法器设计结束并出现在原理图编辑窗口中,按鼠标左键放置。左键放置。u3.编译及时序仿真编译及时序仿真u按照按照图图4-46为为Lmp_mult0模块添加输入输出引脚,引脚添加完后进行编模块添加输入输出引脚,引脚添加完后进行编译及时序仿真,编译与时序仿真的方法如前所述。译及时序仿真,编译与时序仿真的方法如前所述。图图4-47为为Lmp_mult0的时序仿真结果图,从图中看出乘法器的设计是满足正确的。的时序仿真结果图,从图中看出乘法器的设计是满足正确的。返回上一页4.6 Quartus文本编辑输入法文本编
87、辑输入法 uQuartus的文本编辑输入法与图形输入法的设计步骤基本相同。下面以的文本编辑输入法与图形输入法的设计步骤基本相同。下面以二输入端与非门二输入端与非门VHDL设计为例,来介绍设计为例,来介绍Quartus文本编辑输入法的使文本编辑输入法的使用。用。u4.6.1编辑设计文件编辑设计文件u首先建立工作库,以便设计工程项目的存储。任何一项设计都是一项工首先建立工作库,以便设计工程项目的存储。任何一项设计都是一项工程程(Project)都必须首先为此工程建立一个放置与此工程相关的所有文件都必须首先为此工程建立一个放置与此工程相关的所有文件的文件夹,此文件夹将被的文件夹,此文件夹将被EDA软
88、件默认为工作库软件默认为工作库(work Library)。u在建立了文件夹后就可以将设计文件通过在建立了文件夹后就可以将设计文件通过Quartus的文本编辑器编辑并的文本编辑器编辑并存盘,步骤如下:存盘,步骤如下:下一页 返回4.6 Quartus文本编辑输入法文本编辑输入法u1.新建一个文件夹新建一个文件夹u利用资源管理器,新建一个文件夹,如:利用资源管理器,新建一个文件夹,如:e:exp来存放设计文件。来存放设计文件。u2.输入源程序输入源程序u打开打开Quartus,执行,执行File|New命令,在命令,在New窗口中的窗口中的Device Design Files中选择编译文件的语
89、言类型,这里选中选择编译文件的语言类型,这里选VHDL Files,如,如图图4-48所示,然后所示,然后在在图图4-49在在VHDL文本编译窗中键入二输入端与非门的文本编译窗中键入二输入端与非门的VHDL程序。程序。u文本编辑器的工具栏(文本编辑器的工具栏(Text Editor)如)如图图4-50所示。所示。u图图4-50的工具栏包括了文本编辑器的所有常用工具,从左到右依次为:的工具栏包括了文本编辑器的所有常用工具,从左到右依次为:嵌入分离窗口工具、查找工具、替换文本工具、查找匹配定界符工具、嵌入分离窗口工具、查找工具、替换文本工具、查找匹配定界符工具、增加缩进工具、减小缩进工具、设置书签
90、工具、跳到书签设置的位置处、增加缩进工具、减小缩进工具、设置书签工具、跳到书签设置的位置处、删除书签工具、插入分页符号工具、插入文件工具、插入模板工具、对删除书签工具、插入分页符号工具、插入文件工具、插入模板工具、对当前文件分析按钮、在编辑器中显示行编号、显示连续标记当前文件分析按钮、在编辑器中显示行编号、显示连续标记“/”按钮,按钮,这些工具栏按钮均可在菜单命令这些工具栏按钮均可在菜单命令Edit和和View菜单中找到。菜单中找到。下一页 返回上一页4.6 Quartus文本编辑输入法文本编辑输入法 u3.文件存盘文件存盘u执行执行File|Save命令,弹出命令,弹出图图4-51所示所示S
91、ave As对话框。在图对话框。在图4-51对话框中对话框中指定文件保存路径为指定文件保存路径为e:exp,文件名为,文件名为nand_2.vhd,即与实体名一致,即与实体名一致;保保存类型选存类型选VHDL file,然后点保存按钮保存文件,当出现问句然后点保存按钮保存文件,当出现问句“Do you want to create.”时,若选时,若选“否否”,可按以下的方法进入创建工程流程;,可按以下的方法进入创建工程流程;若选若选“是是”,则直接进入创建工程流程,创建工程流程如下:,则直接进入创建工程流程,创建工程流程如下:下一页 返回上一页4.6 Quartus文本编辑输入法文本编辑输入法
92、 u4.6.1创建工程创建工程u在此要利用在此要利用“New Project Wizard”创建此设计工程,即令创建此设计工程,即令nand_2.vhd为为工程,步骤如下:工程,步骤如下:u1.建立新工程管理窗建立新工程管理窗u执行执行File|New Project Wizard命令,即弹出如命令,即弹出如图图4-52所示的工程设置对话所示的工程设置对话框。点击此框最上一栏右侧的按钮框。点击此框最上一栏右侧的按钮“”,找到文件夹,找到文件夹e:exp,选中己存,选中己存盘的文件盘的文件nand_2.vhd,再单击再单击“打开打开”按钮,即出现如图按钮,即出现如图4-52所示设置情所示设置情况
93、。其中第一行表示工程所在的工作库文件夹,此例中为况。其中第一行表示工程所在的工作库文件夹,此例中为e:exp;第二行;第二行表示此项工程的工程名,此工程名可以取任何其他的名,通常直接用顶表示此项工程的工程名,此工程名可以取任何其他的名,通常直接用顶层文件的实体名作为工程名,此例中为层文件的实体名作为工程名,此例中为nand_2;第三行是顶层文件的实;第三行是顶层文件的实体名,此例中为体名,此例中为nand_2。下一页 返回上一页4.6 Quartus文本编辑输入法文本编辑输入法 u2.将设计文件加入工程中将设计文件加入工程中u然后单击下方的然后单击下方的Next按钮,在弹出的对话框中点击按钮,
94、在弹出的对话框中点击File name栏的栏的“”按钮,将此工程相关的所有按钮,将此工程相关的所有VHDL文件加入进此工程,即得到如文件加入进此工程,即得到如图图4-53所示的情况。所示的情况。u工程的文件加入的方法有两种:第一种是单击右边的工程的文件加入的方法有两种:第一种是单击右边的Add All按钮,将设按钮,将设定的工程目录中的所有定的工程目录中的所有VHD文件加入到工程文件栏中;第二种方法是单文件加入到工程文件栏中;第二种方法是单击击“”按钮,从工程目录中选出相关的按钮,从工程目录中选出相关的VHDL文件。文件。u3.选择仿真器和综合器类型选择仿真器和综合器类型u单击图单击图4-53
95、的的Next按钮,这时弹出的窗口是选择仿真器和综合器类型的,按钮,这时弹出的窗口是选择仿真器和综合器类型的,如果都是选默认的如果都是选默认的NONE表示都选表示都选Quartus中自带的仿真器和综合器,中自带的仿真器和综合器,因此,在此都选默认项因此,在此都选默认项NONE。下一页 返回上一页4.6 Quartus文本编辑输入法文本编辑输入法 u4.结束设置结束设置u最后单击最后单击Finish按钮,即己设定好此工程,如按钮,即己设定好此工程,如图图4-54所示,此工程管理窗所示,此工程管理窗主要显示工程项目的层次结构。主要显示工程项目的层次结构。u4.6.2编译编译u1编译前设置编译前设置u
96、在对工程进行编译处理前,必须作好必要的设置。具体步骤如下:在对工程进行编译处理前,必须作好必要的设置。具体步骤如下:(1)选择目标芯片。执行菜单选择目标芯片。执行菜单Assignments|Device命令,在弹出的命令,在弹出的图图4-55对话框对话框Family选项中设置芯片系列,在选项中设置芯片系列,在Available选项中选择具体芯片选项中选择具体芯片型号。例如,选型号。例如,选ACEX1K系列的系列的 EP1K50TC144-3。下一页 返回上一页4.6 Quartus文本编辑输入法文本编辑输入法 (2)选选择择目目标标器器件件编编程程配配置置方方式式。单单击击图图4-55中中的的
97、DevicePin Options. 按按钮钮,进进入入选选择择窗窗,选选择择Configuration标标签签,设设置置Configuration scheme选选项项为为Passive Serial(Can use Configuration device)这这种种方方式式指指对对专专用用配配置置器器件件进进行行配配置置用用的的编编程程方方式式,而而PC机机对对此此FPGA的的直直接接配配置置方方式式都都是是JTAG方方式式。在在Configuration device项项下下,选选择择配配置置器器为为EPC2(根根据据实实验验系统上目标器件配置的系统上目标器件配置的EPC芯片决定),如图
98、芯片决定),如图4-55所示。所示。(3)选选择择输输出出配配置置。在在图图4-56所所示示的的Programming Files窗窗口口,可可以以选选Hexadecimal(Intel-Format) output File即即产产生生下下载载文文件件的的同同时时,产产生生二二进进制制十十六六进进制制配配置置文文件件fraqtest.hexout可可用用于于单单片片机机与与EPROM构构成成的的FPGA配置电路系统,如配置电路系统,如图图4-56所示。所示。下一页 返回上一页4.6 Quartus文本编辑输入法文本编辑输入法 u2.编译编译uQuartus编译器是由一系列处理模块构成的,这些
99、模块负责对设计项目编译器是由一系列处理模块构成的,这些模块负责对设计项目的检错,逻辑综合和结构综合。即将设计项目适配进的检错,逻辑综合和结构综合。即将设计项目适配进FPGA/CPLD目标目标器中,同时产生多种用途的输出文件,如功能和时序仿真文件,器件编器中,同时产生多种用途的输出文件,如功能和时序仿真文件,器件编程的目标文件等。编译器首先从工程设计文件间的层次结构描述中提取程的目标文件等。编译器首先从工程设计文件间的层次结构描述中提取信息,包括每个低层次文件中的错误信息,供设计者排除,然后将这些信息,包括每个低层次文件中的错误信息,供设计者排除,然后将这些层次构建产生一个结构化的以网表文件表达
100、的电路原理图文件,并把各层次构建产生一个结构化的以网表文件表达的电路原理图文件,并把各层次中所有的文件结合成一个数据包,以便更有效地处理。下面首先执层次中所有的文件结合成一个数据包,以便更有效地处理。下面首先执行行Processing|Start Compilation命令,启动全程编译。命令,启动全程编译。下一页 返回上一页4.6 Quartus文本编辑输入法文本编辑输入法 u注意这里所谓的编译注意这里所谓的编译(Compilation)包括包括Quartus对设计输入的多项处对设计输入的多项处理操作,其中包括排错、数据网表文件提取、逻辑综合、适配、装配文理操作,其中包括排错、数据网表文件提
101、取、逻辑综合、适配、装配文件(仿真文件与编程配置文件)的生成,以及基于目标器件的工程时序件(仿真文件与编程配置文件)的生成,以及基于目标器件的工程时序分析等。如果工程中的文件有错误,在下方的分析等。如果工程中的文件有错误,在下方的Processing处理栏中会显示处理栏中会显示出来。对于出来。对于Processing栏显示出的语句格式错误,可双击此条文,即弹出栏显示出的语句格式错误,可双击此条文,即弹出VHDL文件,在闪动的光标处(或附近)可发现文件中的错误。再次进文件,在闪动的光标处(或附近)可发现文件中的错误。再次进行编译直至排除所有错误。行编译直至排除所有错误。下一页 返回上一页4.6
102、Quartus文本编辑输入法文本编辑输入法 u4.6.3仿真仿真u仿真就是对设计项目进行一项全面彻底的测试,以确保设计项目的功能仿真就是对设计项目进行一项全面彻底的测试,以确保设计项目的功能和时序特性,以及最后的硬件器件的功能与原设计相吻合。仿真操作前和时序特性,以及最后的硬件器件的功能与原设计相吻合。仿真操作前必须利用必须利用Quartus的波形编辑器建立一个矢量波形文件以作仿真激励。的波形编辑器建立一个矢量波形文件以作仿真激励。VWF文件将仿真输入矢量和仿真输出描述成为一波形的图形来实现仿真。文件将仿真输入矢量和仿真输出描述成为一波形的图形来实现仿真。Quartus允许对整个设计项目进行仿
103、真测试,也可以对该设计中的任何允许对整个设计项目进行仿真测试,也可以对该设计中的任何子模块进行仿真测试。对工程的编译通过后,必须对其功能和时序性质子模块进行仿真测试。对工程的编译通过后,必须对其功能和时序性质进行仿真测试,以了解设计结果是否满足原设计要求。步骤如下:进行仿真测试,以了解设计结果是否满足原设计要求。步骤如下:u1.打开波形编辑器打开波形编辑器u执行菜单执行菜单File|New命令,在命令,在New窗口中选窗口中选Other Files中的中的Vector Waveform File,单击,单击OK按钮,即出现如按钮,即出现如图图4-57所示空白的波形编辑器。所示空白的波形编辑器。
104、下一页 返回上一页4.6 Quartus文本编辑输入法文本编辑输入法 u2.设置仿真时间区域设置仿真时间区域u为了使仿真时间轴设置在一个合理的时间区域上,执行菜单为了使仿真时间轴设置在一个合理的时间区域上,执行菜单Edit|End Time命令,在弹出的窗口中的命令,在弹出的窗口中的Time窗口中键入窗口中键入1,单位选,单位选s,即整个仿,即整个仿真域的时间即设定为真域的时间即设定为1微秒,单击微秒,单击OK按钮,结束设置。按钮,结束设置。u3.存盘波形文件存盘波形文件u选择菜单选择菜单File中的中的“Save as”,将以名为,将以名为nand_2.vwf(默认名)的波形文件默认名)的波
105、形文件存入文件夹存入文件夹e:exp中。中。u4.输入信号节点输入信号节点u将与非门的端口信号节点选入此波形编辑器中。方法是首先执行菜单将与非门的端口信号节点选入此波形编辑器中。方法是首先执行菜单View (Utility Windows|Node Finder命令,在命令,在Filter框中选框中选Pins: all,然后单然后单击击List按钮,于是在下方的按钮,于是在下方的Nodes Found窗口中出现了设计中的窗口中出现了设计中的nand_2工工程的所有端口引脚名。程的所有端口引脚名。u5.编辑输入波形(输入激励信号)编辑输入波形(输入激励信号)u按按图图4-58给给a,b端进行赋值
106、。端进行赋值。下一页 返回上一页4.6 Quartus文本编辑输入法文本编辑输入法 u6.启动仿真器,观察仿真结果启动仿真器,观察仿真结果u所有设置完毕,执行菜单所有设置完毕,执行菜单Processing |Start Simulation命令,直到出现命令,直到出现Simulation was successful仿真波形文件仿真波形文件Simulation Report通常会自动弹通常会自动弹出,如出,如图图4-59所示。所示。u注意,注意,Quartus的仿真波形文件中,波形编辑文件(的仿真波形文件中,波形编辑文件(*.vwf)与波形仿真与波形仿真报告文件报告文件(Simulation
107、Report)是分开的,如果在启动仿真后,并没有出是分开的,如果在启动仿真后,并没有出现仿真完成后的波形图,而是出现文字现仿真完成后的波形图,而是出现文字Cant open Simulation Report Window,但报告仿真成功,则可自己打开仿真波形报告,执行但报告仿真成功,则可自己打开仿真波形报告,执行processing simulation Report命令。命令。下一页 返回上一页4.6 Quartus文本编辑输入法文本编辑输入法 u4.6.4 引脚锁定和下载引脚锁定和下载u1. 引脚锁定引脚锁定u为了能对与非门进行硬件测试,应将与非门的输入输出信号锁定在芯片为了能对与非门进
108、行硬件测试,应将与非门的输入输出信号锁定在芯片确定的引脚上,引脚锁定方法参照确定的引脚上,引脚锁定方法参照4. 5节的引脚锁定方法,在此不再累赘。节的引脚锁定方法,在此不再累赘。u2. 选择编程模式和配置选择编程模式和配置u为了将编译产生的下载文件配置进为了将编译产生的下载文件配置进FPGA中进行测试,首先将通信电缆中进行测试,首先将通信电缆连接好并打开连接好并打开EDA开发系统电源,然后执行菜单开发系统电源,然后执行菜单Tool|Programmer命令,命令,于是弹出如于是弹出如图图4-60所示的编程窗口。在所示的编程窗口。在Mode栏中有栏中有3种编程模式,可以种编程模式,可以选择选择J
109、TAG, Passive Serial和和Active Serial。选。选JTAG,单击左侧打开的单击左侧打开的nand_2.Sof文件,并将文件,并将Program/Configure选项选中,单击选项选中,单击Strart按钮开按钮开始下载。当始下载。当Progress显示出显示出100%以及在底部的处理栏中出现以及在底部的处理栏中出现Configuration Succeeded时,表示编程成功。时,表示编程成功。返回上一页4.7 层次电路设计层次电路设计u层次电路的设计方法分为自上而下和自下而上两种设计方法,二者各有层次电路的设计方法分为自上而下和自下而上两种设计方法,二者各有其特点
110、。其特点。Quartus对以上两种设计方法均支持。下面以一个简单的计数对以上两种设计方法均支持。下面以一个简单的计数译码显示电路的设计来介绍如何运用译码显示电路的设计来介绍如何运用Quartus进行自上而下的层次电路进行自上而下的层次电路设计。设计。u4.7.1顶层文件设计顶层文件设计u1.各模块创建各模块创建u(1)首先要创建好设计工程项目)首先要创建好设计工程项目jishuyima,在已创建好的工程项目中,在已创建好的工程项目中打开打开图图4-61所示原理图编辑器,点击工具栏中的模块按钮,用模块工具所示原理图编辑器,点击工具栏中的模块按钮,用模块工具在图形编辑工作区插入一个模块,如图在图形
111、编辑工作区插入一个模块,如图4-61所示,然后在模块上单击鼠所示,然后在模块上单击鼠标右键,在弹出的对话框中选,择标右键,在弹出的对话框中选,择Block Properties,打开如打开如图图4-62所示的所示的模块属性对话框。模块属性对话框。下一页 返回4.7 层次电路设计层次电路设计u(2)定义模块引脚。在属性对话框的)定义模块引脚。在属性对话框的General栏中输入模块名栏中输入模块名jishuqi,在在I/Os栏中输入模块引脚名并选择引脚类型,本例用到的引脚有输入引栏中输入模块引脚名并选择引脚类型,本例用到的引脚有输入引脚脚clk和输出引脚和输出引脚q3.0。点击。点击Add按钮进
112、行引脚添加。也可一次输入所按钮进行引脚添加。也可一次输入所有同类型引脚,中间用逗号隔开。设置完毕后点击有同类型引脚,中间用逗号隔开。设置完毕后点击“确定确定”,生成模块,生成模块,然后单击鼠标右键,选择然后单击鼠标右键,选择“Autofit”自动调整模块尺寸,这样一个模块自动调整模块尺寸,这样一个模块的创建过程就结束了。的创建过程就结束了。u如果要修改引脚类型,选中如果要修改引脚类型,选中I/Os栏中已定义的引脚名,改变栏中已定义的引脚名,改变Type栏中的栏中的引脚类型,则引脚类型,则Change按钮被激活,点击按钮被激活,点击Change按钮即可。删除引脚时,按钮即可。删除引脚时,选中待删
113、除引脚,点击选中待删除引脚,点击Delete按钮。按钮。u由于各个模块的产生过程都类似,因此,这里只对计数器模块的建立方由于各个模块的产生过程都类似,因此,这里只对计数器模块的建立方法作详细介绍,译码器模块的建立这里不再重复叙述,读者可以自己进法作详细介绍,译码器模块的建立这里不再重复叙述,读者可以自己进行创建。创建好的行创建。创建好的jishuqi和和yimaqi模块如模块如图图4-63所示。所示。下一页 返回上一页4.7 层次电路设计层次电路设计u2.模块间的连接和映射模块间的连接和映射u下面以下面以jishuqi模块的连接和映射为例,介绍模块的映射关系。将鼠标移模块的连接和映射为例,介绍
114、模块的映射关系。将鼠标移至至jishuqi模块图形边沿时鼠标箭头会变为连接状态,拖动鼠标划出一条模块图形边沿时鼠标箭头会变为连接状态,拖动鼠标划出一条连线,并且在模块图形上会自动出现一个映射符号,如连线,并且在模块图形上会自动出现一个映射符号,如图图4-64所示。所示。u双击映射符或在映射符上单击鼠标右键,在弹出对话框中选择双击映射符或在映射符上单击鼠标右键,在弹出对话框中选择Mapper Properties,弹出如,弹出如图图4-65所示的端口映射设置对话框。在对话框所示的端口映射设置对话框。在对话框Mappings的的I/0 on block中输入模块端口名中输入模块端口名q3.0,在,
115、在Signals in node中添中添加信号名加信号名q3.0,点击,点击Add按钮,自动显示映射表。映射表反映了模块引按钮,自动显示映射表。映射表反映了模块引脚与连线之间的映射关系。脚与连线之间的映射关系。下一页 返回上一页4.7 层次电路设计层次电路设计u同理,给同理,给yimaqi模块也添加映射。映射后的电路如模块也添加映射。映射后的电路如图图4-66所示。所示。u3.添加输入输出引脚添加输入输出引脚u模块连接完成后,最后添加输入输出引脚,构成完整的顶层原理图文件,模块连接完成后,最后添加输入输出引脚,构成完整的顶层原理图文件,如如图图4-67所示。所示。下一页 返回上一页4.7 层次
116、电路设计层次电路设计u4.7.2创建各模块的下层设计文件创建各模块的下层设计文件u1. jishuqi电路设计电路设计u(1)创建)创建jishuqi设计文件设计文件u将鼠标移至将鼠标移至jishuqi模块上方,单击鼠标右键,在弹出的对话框中有模块上方,单击鼠标右键,在弹出的对话框中有3个与个与设计文件有关的选项:设计文件有关的选项:uCreate Design File from Selected Block:从选中模块创建设计文件。:从选中模块创建设计文件。uUpdate Design File from Selected Block:从选中模块更新设计文件。:从选中模块更新设计文件。uO
117、pen Design File:打开设计文件。:打开设计文件。u选择选择Create Design File from Selected Block,出现如出现如图图4-68所示的对话框。所示的对话框。u本例中,本例中,jishuqi底层电路采用原理图设计,故在图底层电路采用原理图设计,故在图4-68中,选择中,选择Schematic,点击,点击OK按钮,打开按钮,打开jishuqi.bdf原理图文件。文件中包含了已原理图文件。文件中包含了已定义的端口符号。定义的端口符号。下一页 返回上一页4.7 层次电路设计层次电路设计u各模块设计输入文件的形式可以是多样的,既可以是文本形式也可以是各模块设
118、计输入文件的形式可以是多样的,既可以是文本形式也可以是原理图输入形式,用户可以根据设计的需要和个人喜好进行选择。原理图输入形式,用户可以根据设计的需要和个人喜好进行选择。u(2)编辑)编辑jishuqi原理图原理图u编辑计数器原理图的编辑计数器原理图的4.4节所述,在此不再累赘。编辑完的计数器电路如节所述,在此不再累赘。编辑完的计数器电路如图图4-69所示。所示。u2. yimaqi电路设计电路设计u译码器电路设计的设计方法与计数器相同。只不过译码器电路采用译码器电路设计的设计方法与计数器相同。只不过译码器电路采用VHDL程序设计,因此,在创建程序设计,因此,在创建yimaqi设计文件时,在图
119、设计文件时,在图4-68中选中选VHDL选项即可。译码器程序如选项即可。译码器程序如图图4-70所示。所示。下一页 返回上一页4.7 层次电路设计层次电路设计u4.7.3设计项目的编译仿真设计项目的编译仿真u对设计项目的编译仿真参照对设计项目的编译仿真参照4.6节所述,在此不再累赘。节所述,在此不再累赘。图图4-71给出了计给出了计数译码显示电路的仿真结果。数译码显示电路的仿真结果。u4.7.4层次显示层次显示uQuartus能够将设计的结果以一个层次树的形式显示整个项目和电路的能够将设计的结果以一个层次树的形式显示整个项目和电路的设计层次。项目编译成功后,在编译报告栏选择设计层次。项目编译成
120、功后,在编译报告栏选择Analysis&Synthesis下的下的Hierarchy项,当前项目的层次便显示出来。项,当前项目的层次便显示出来。图图4-72显示了显示了jishuyima项目项目编译后各个电路的层次关系。层次树中的每个文件都可以通过双击文件编译后各个电路的层次关系。层次树中的每个文件都可以通过双击文件名打开,并送到前台显示。名打开,并送到前台显示。返回上一页小结小结u本章简单介绍了本章简单介绍了Altera公司的公司的Quartus软件的使用方法。软件的使用方法。Quartus软件是软件是Altera公司推出的第四代可编程逻辑器件开发软件,适合于大规模逻辑公司推出的第四代可编程
121、逻辑器件开发软件,适合于大规模逻辑电路设计,提供了从设计输入到器件编程的全部功能,同第三代设计工电路设计,提供了从设计输入到器件编程的全部功能,同第三代设计工具具Max+plus相比其功能更加完善,支持的可编程逻辑器件数目也更多,相比其功能更加完善,支持的可编程逻辑器件数目也更多,其设计的输入、编译和仿真的设置也更加简洁,同时还可为设计提供详其设计的输入、编译和仿真的设置也更加简洁,同时还可为设计提供详细的编译和仿真报告。细的编译和仿真报告。uQuartus软件的设计流程概括为设计输入、设计编译、设计仿真和设计软件的设计流程概括为设计输入、设计编译、设计仿真和设计下载等过程。支持图形编辑输入法
122、、文本编辑输入法、符号编辑输入法、下载等过程。支持图形编辑输入法、文本编辑输入法、符号编辑输入法、内存编辑输入法等多种编辑输入法。内存编辑输入法等多种编辑输入法。返回图图4-1 Quartus软件设计流程软件设计流程返回图图4-2 Quartus开发软件的安装界面开发软件的安装界面返回图图4-3 Quartus开发软件的安装欢迎界面开发软件的安装欢迎界面返回图图4-4 Quartus开发环境的协议接受界面开发环境的协议接受界面返回图图4-5 定义用户名和公司名信息的界面定义用户名和公司名信息的界面返回图图4-6 Quartus开发软件安装目录选择界开发软件安装目录选择界面面返回图图4-7 Qu
123、artus开发软件自定义安装和完开发软件自定义安装和完全安装选择界面全安装选择界面返回图图4-8 安装安装Quartus的选择程序文件夹界的选择程序文件夹界面面返回图图4-9 Quartus开发软件正在安装的过程开发软件正在安装的过程中中返回图图4-10 Quartus开发软件安装成功的界开发软件安装成功的界面面返回图图4-11 软件请求授权软件请求授权返回图图4-12 设置授权文件设置授权文件返回图图4-13 通过菜单进入图通过菜单进入图4-12所示画面所示画面返回图图4-14 导入授权文件导入授权文件返回图图4-15 正确导入授权文件后的画面正确导入授权文件后的画面返回图图4-16 Qua
124、rtus图形用户界面功能显示图形用户界面功能显示返回图图4-17 Quartus图形用户界面图形用户界面 返回图图4-18 工程导航区工程导航区返回图图4-19 状态区的显示窗口和工作条状态区的显示窗口和工作条返回表表4-1 五类操作标记信息五类操作标记信息返回图图4-20 信息区信息区返回图图4-21 工作区工作区返回图图4-22 Quartus主窗口界面主窗口界面返回图图4-23 New Project Wizard对话框对话框返回图图4-24 建立项目建立项目exp1返回图图4-25 编辑文件类型对话框编辑文件类型对话框返回图图4-26 原理图编辑器原理图编辑器返回图图4-27 Symb
125、ol对话框对话框返回图图4-28 D触发器原理图触发器原理图返回图图4-29 保存原理图文件保存原理图文件exp1.bdf返回图图4-30 在在Settings对话框的编译设置选项对话框的编译设置选项返回图图4-31 设计项目的编译设计项目的编译返回图图4-32 Quartus波形文件编辑器波形文件编辑器返回图图4-33 节点查找对话框节点查找对话框返回图图4-34 设置输入信号波形设置输入信号波形返回图图4-35 选择仿真模式选择仿真模式返回图图4-36 仿真波形仿真波形返回图图4-37 引脚锁窗口引脚锁窗口返回图图4-38 引脚锁定后窗口引脚锁定后窗口返回图图4-39 Quartus编程窗
126、口编程窗口返回图图4-40 指定下载电缆对话框指定下载电缆对话框返回表表4-2 Altera可提供的基本宏功能可提供的基本宏功能返回表表4-3 Altera的的MegaCore返回图图4-41 创建工程项目及原理图文件创建工程项目及原理图文件返回图图4-42 Symbol对话框对话框返回图图4-43 语言参数设置页面语言参数设置页面返回图图4-44 MegaWizard Plug-In Manager第第3页页返回图图4-45 MegaWizard Plug-In Manager的最的最后后1页页返回图图4-46 为设计文件添加输入输出引脚为设计文件添加输入输出引脚返回图图4-47 lmp_m
127、ult0的时序仿真结果图的时序仿真结果图返回图图4-48 选择编辑文件的语言类型选择编辑文件的语言类型返回图图4-49 编辑输入设计文件(顶层设计文件编辑输入设计文件(顶层设计文件nand_2.VHD)返回图图4-50 文本编辑器的工具栏文本编辑器的工具栏返回图图4-51 Save As对话框对话框返回图图4-52 利用利用New Project Wizard.创建工创建工程程返回图图4-53 将所有相关的文件都加入进此工程将所有相关的文件都加入进此工程返回图图4-54 nand_2的工程管理窗的工程管理窗返回图图4-55 目标芯片选择对话框目标芯片选择对话框返回图图4-55 选择配置器件和配
128、置方式选择配置器件和配置方式返回图图4-56 输出文件输出文件.hexout设置设置返回图图4-57 波形编辑器图波形编辑器图返回图图4-58 nand_2输入波形输入波形返回图图4-59 nand_2工程仿真波形工程仿真波形返回图图4-60 编程窗口编程窗口返回图图4-61 添加模块添加模块返回图图4-62 模块属性模块属性返回图图4-63 创建好的创建好的jishuqi和和yimaqi模块模块返回图图4-64 映射符映射符返回图图4-65 端口映射设置对话框端口映射设置对话框返回图图4-66 映射表映射模块端口映射表映射模块端口返回图图4-67 完整的顶层设计文件完整的顶层设计文件返回图图4-68 创建原理图设计文件创建原理图设计文件返回图图4-69 jishuqi原理图原理图返回图图4-70 译码器程序译码器程序返回图图4-71 jishuyima电路的仿真结果电路的仿真结果返回图图4-72 层次显示层次显示返回图图4-3 Quartus开发软件的安装欢迎界面开发软件的安装欢迎界面返回