在Quartus II中分配管脚的两种常用方法
- 格式:doc
- 大小:233.00 KB
- 文档页数:6
QuartusII软件概述QuartusII软件是Altera公司最新版本的EDA开发软件,支持APEX系列、Cyclone系列、Stratix系列和Excalibur系列等新型系列器件的开发。
含有工作组计算、集成逻辑分析仪、EDA工具集成、多过程支持、增强重编译和IP集成等特性。
支持百万门级的设计,支持高速I/O设计,具有更强的设计能力和更快的编译速度。
QuartusII开发软件为可编程片上系统(SOPC)设计提供了一个完整的设计环境。
无论是使用个人电脑、NUIX或Linux 工作站,QuartusII都提供了方便设计、快速编译处理以及编程功能。
QuartusII输入的设计过程可分为创建工程、输入文件、项目编译、项目校验和编程下载等几个步骤。
1文本输入的设计过程现通过一个简单设计实例说明QuartusII的基本文本设计过程。
例:用硬件描述语言VHDL设计一个2 输入与非门,设计放d:\ nand2_lab1目录下,工程文件名为nand2_lab1 。
先打开“我的电脑”,在D盘新建名为“nand2_lab1”文件夹。
1、创建工程文件利用QuartusII软件创建工程向导(New Project Wizard)创建一个新工程。
步骤如下:1)打开QuartusII6.0软件界面,在“文件”菜单下选择“New Project Wizard”,点击“next”后弹出如图1.1对话框图1.1 New Project Wizard对话框第一页点选第一行右侧的“…”选择工程目录为“d:\ nand2_lab1”,在第二行输入项目名称: nand2_lab1,第三行默认把项目名设为顶层文件名,点击“next”,2)新建项目向导第二页,如图1.2,该窗口可为项目添加已经编辑好的程序文件,默认为空,点击“next”,图1.2 New Project Wizard对话框第二页3)新建项目向导第三页,如图1.3,该窗口可以选择FPGA硬件信息,在Family下拉框内选择“FLEX10K”,在Avaliable devices窗口选择芯片型号为:EPF10K20RC208-4,其它选项默认。
如何分配FPGA管脚在芯片的研发环节,FPGA 验证是其中的重要的组成部分,如何有效的利用 FPGA 的资源,管脚分配也是必须考虑的一个重要问题。
一般较好的方法是在综合过程中通过时序的一些约束让对应的工具自动分配,但是从研发的时间段上来考虑这种方法往往是不可取的,RTL验证与验证板设计必须是同步进行的,在验证代码出来时验证的单板也必须设计完毕,也就是管脚的分配也必须在设计代码出来之前完成。
所以,管脚的分配更多的将是依赖人,而非工具,这个时候就更需要考虑各方面的因素。
综合起来主要考虑以下的几个方面:1、FPGA 所承载逻辑的信号流向。
IC 验证中所选用的 FPGA 一般逻辑容量都非常大,外部的管脚数量也相当的丰富,这个时候就必须考虑到PCB 设计时的布线的难度,如果管脚的分配不合理,那么有可能在PCB 设计时出现大量的交叉的信号线,这给布线带来很大的困难,甚至走不通,或者是即便是布线走通了,也有可能由于外部的延时过大而不满足时序方面的要求。
所以在管脚分配前对 FPGA 工作的环境要相当的熟悉,要对其中的信号来自哪里去向何方非常的清楚,这就按照连线最短的原则将对应的信号分配到与外部器件连线最近的 BANK 中2、掌握 FPGA 内部 BANK 的分配的情况。
现在 FPGA 内部都分成几个区域,每个区域中可用的 I/O 管脚数量各不相同。
在 IC 验证中都是采用了ALTERA 与 XILINX系列的 FPGA ,这两个厂商的 FPGA中内部BANK的分配有一定的差异,这可以在设计中查阅相关的手册。
下面与 ALTERA 中 Stratix II系列的 FPGA 内部 BANK 的分配为例来进行说明。
图中详细说明了 FPGA 内部 BANK 的分配情况和每个 BANK 中所支持的 I/O 标准。
根据FPGA 中内部BANK 的分配的情况,同时结合图 1 中信号的流向也就可以大体固定FPGA 在单板中的方向,同时按照就近的原则将相关的信号分配到相关的 BANK 中,这样的方法可以完成一般信号的分配。
由于QuartusII中一个工程中只能有一个顶层文件,所以当在一个工程中同一级需要多个模块时,就需要模块之间的连接,主要方法是:1.编辑输入各个模块的verilog文件并保存,然后Processing->Analyze Current File2.变异没错误后,在左侧工程栏中选择该Verilog文件,鼠标右键->Creat Symbole Files for Current File3.新建原理图文件,在原理图文件绘图界面上双击鼠标左键或者选择左侧工具栏的与门符号,就会出现该verilog文件对应的原理图模块4.调用所有生成的原理图模块,连线得到同一模块的连接,构成同一层次上的原理图,然后综合,编译仿真(注意:连线后的原理图不能与先前生成的各个模块同名)QuartusII用自带波形文件做激励进行功能仿真主要步骤:1.建立工程new->New project Wizard2.输入verilog文件new->verilog hdl file3.编译Processing->Start->Start Analyse & Synthesis4.管脚分配Assiment->Pins在Location处双击,另外将不用的引脚设为高阻态5.整体编译Start Compile6.将仿真类型设为功能仿真,Assignment->Setting->Simulation Setting->Function7.建立波形文件file->new->vector waveform file,然后导入引脚双击name空白区->Node Finder->List-> 》8.设置信号激励,选择左侧的某一种波形进行起始时间及周期的设定9.生成仿真需要的网表Processing->Generate Function Simulation Netlist10.仿真Processing->start simulation注意:波形仿真时要建立的波形文件加入到输入中,方法是:Assignment->Settings->Simulator Settings中的Simulation Input栏是否为空,若为空,应将波形文件加入,否则仿真时会出现No Simulation input file assignment specified.....错误。
目录 :Quartus II 的使用 (1)1 工程建立 (1)2 原理图的输入 (4)3 文本编辑(verilog) (14)4 波形仿真 (16)Quartus II 的使用在这里,首先用最简单的实例向读者展示使用Quartus II软件的全过程。
进入WINDOWS XP后,双击Quartus II图标,屏幕如图1.1所示。
图 1.1 Quartus II 管理器1.1 工程建立使用 New Project Wizard,可以为工程指定工作目录、分配工程名称以及指定最高层设计实体的名称。
还可以指定要在工程中使用的设计文件、其它源文件、用户库和 EDA 工具,以及目标器件系列和器件(也可以让Quartus II 软件自动选择器件)。
建立工程的步骤如下:(1) 选择File菜单下New Project Wizard ,如图1.2所示。
图 1.2 建立项目的屏幕(2) 输入工作目录和项目名称,如图1.3所示。
可以直接选择Finish,以下的设置过程可以在设计过程中完成。
图 1.3 项目目录和名称(3) 加入已有的设计文件到项目,可以直接选择Next,设计文件可以在设计过程中加入,如图1.4所示。
图 1.4 加入设计文件(4) 选择设计器件,如图1.5所示。
图 1.5 选择器件(5) 选择第三方EDA综合、仿真和时序分析工具,如图1.6所示。
图 1.6 选择EDA 工具(6) 建立项目完成,显示项目概要,如图1.7所示。
图 1.7 项目概要1.2 原理图的输入原理图输入的操作步骤如下:(1) 选择File 菜单下New ,新建图表/原理图文件,如图1.8 所示。
图 1.8 新建原理图文件(2) 在图1.9的空白处双击,屏幕如图1.10所示:(3) 在图1.10的Symbol Name 输入编辑框中键入dff后,单击ok按钮。
此时可看到光标上粘着被选的符号,将其移到合适的位置(参考图 1.11)单击鼠标左键,使其固定;(4) 重复(2)、(3)步骤,给图中放一个input、not、output 符号,如图1.11所示;在图1.11中,将光标移到右侧input 右侧待连线处单击鼠标左键后,再移动到D触发器的左侧单击鼠标左键,即可看到在input和D触发器之间有一条线生成;图1.9 空白的图形编辑器图1.10 选择元件符号的屏幕图1.11 放置所有元件符号的屏幕(5) 重复(4)的方法将DFF和output连起来,完成所有的连线电路如图1.12所示;(6) 在图1.12中,双击input_name使其衬低变黑后,再键入clk,及命名该输入信号为clk,用相同的方法将输出信号定义成Q;如图1.13所示。
Quartus II中FPGA管脚的分配策略编写:***校核:审核:二〇一年月日目录目录 (I)QUARTUS II中FPGA管脚分配策略 (1)1.FPGA管脚介绍 (1).电源管脚 (1).配置管脚 (2).普通I/O管脚 (2).时钟管脚 (2)2.FPGA管脚分配方法 (3).P IN P LANNER方式 (3).I MPORT A SSIGNMENTS方式 (3).T CL S CRIPTS方式 (6).项目组统一使用方式 (8)3.编写FPGA管脚分配文件 (9).查看PDF格式的原理图 (9).查看P RJ PCB格式的原理图 (10)4.保存FPGA管脚分配文件 (11).T CL格式或CSV格式 (11).QSF格式 (11).项目组统一使用格式 (11)附录管脚类型说明 (12)Quartus II中FPGA管脚分配策略1.FPGA管脚介绍FPGA的管脚从使用对象来说可分为两大类:专用管脚和用户自定义管脚。
一般情况下,专用管脚大概占FPGA管脚数的20% ~ 30%,剩下的70% ~ 80%为用户自定义管脚。
从功能上来说可分为电源管脚、配置管脚、时钟管脚、普通I/O管脚等。
下面以Altera公司的Cyclone IV E系列芯片EP4CE30F23C8为例,如图1所示,芯片总共包含484个芯片管脚。
图中不同颜色的区域代表不同的Bank,整个芯片主要分为8个Bank,FPGA的各个管脚分布在不同的Bank中。
其中,三角形标记的管脚为电源管脚,正三角表示VCC,倒三角表示GND,三角内部的O表示I/O管脚电源,I表示内核电源。
圆形标记的管脚为普通用户I/O管脚,可以由用户随意使用。
正方形标记且内部有时钟沿符号的管脚为全局时钟管脚。
五边形标记的管脚为配置管脚。
图1 Wire Bond1.1.电源管脚FPGA通常需要两个电压才能运行,一个是内核电压,另一个是I/O电压。
每个电压通过独立的电源管脚来提供。
在Quartus II中分配管脚的两种常用方法.
示范程序
seg7_test.v
此例化文件共需要17个管脚。
接下来我和大家一起讨论使用QII分配管脚的两种常用方法。
方法一:Import Assignments
步骤1:使用记事本或类似软件新建一个txt文件(或csv文件),按如下格式编写管脚分配内容(不同的开发版,其内容也不同,本文以我使用的艾米电子2C8开发版为范例)。
注意:To和Location两个关键字中间有一个半角逗号。
图1 pin.txt
步骤2:在QII软件中,选择“Assignments ——Import Assignments”。
如图所示,导入xxx.txt文件即可。
图2 导入pin.txt
步骤3:在QII软件中,选择“Assignments ——Pin”标签(或者点击按钮),打开Pin Planner,验证管脚是否分配正确。
图3 验证管脚是否分配正确
方法二:source xxx.tcl
步骤1:在QII软件中,使用“Assignments ——Remove Assignments”标签,移除管脚分配内容,以确保此次操作,分配的管脚没有因为覆盖而出现错误的情况。
图4 Remove Assignments
注:在未执行任何管脚分配操作新工程中,可跳过步骤1。
步骤2:使用记事本或类似软件新建一个tcl文件,按如下格式编写管脚分配内容(不同的开发版,其内容也不同,本文以我使用的艾米电子2C8开发版为范例)。
注意关键字set_location_assignment和-to的用法。
图5 pin.tcl
步骤3:执行pin.tcl
方法1:在QII软件中,使用“View ——Utility Windows ——Tcl Console”标签,打开Quartus II Tcl Console。
执行语句:
图6 source pin.tcl
方法2:在QII软件中,使用“Tools ——Tcl Scripts …”标签,打开Tcl Scripts。
图7 Tcl Scripts
选择pin.tcl,选择“Run”标签,执行Tcl文件。
步骤4:同方法1的步骤3。