(转载)Quartus II中FPGA的管脚分配保存方法(Quartus II)
一、摘要
将Quartus II中FPGA管脚的分配及保存方法做一个汇总。
二、管脚分配方法
FPGA 的管脚分配,除了在QII软件中,选择“Assignments ->Pin”标签(或者点击按钮) ,打开Pin Planner,分配管脚外,还有以下2种方法。
方法一:Import Assignments
步骤1:
使用记事本或类似软件新建一个txt文件(或csv文件),按如下格式编写管脚分配内容(不同的开发版,其内容也不同,本文以我使用的DIY_DE2开发板为范例)。【这种方式格式最为简单】
注意:To和Location两个关键字中间有一个半角逗号。 
图1 pin.txt
步骤2:
在QII软件中,选择“Assignments -> Import Assignments”。如图所示,导入xxx.txt或者xxx.csv文件即可


图2 导入pin.txt
步骤3:
在QII软件中,选择“Assignments -> Pin”标签(或者点击 按钮) ,打开Pin Planner,验证管脚是否分配正确。

图3 验证管脚是否分配正确
方法二:导入source xxx.tcl文件
步骤1:
在QII软件中,使用“Assignments -> Remove Assignments”标签,移除管脚分配内容,以确保此次操作,分配的管脚没有因为覆盖而出现错误的情况。

图4 Remove Assignments
注:在未执行任何管脚分配操作新工程中,可跳过步骤1。
步骤2:
使用记事本或类似软件新建一个tcl文件,按如下格式编写管脚分配内容(不同的开发版,其内容也不同,本文以我使用的DIY_DE2开发板为范例)。
注意关键字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。
三、FPGA管脚分配文件保存方法
使用别人的工程时,有时找不到他的管脚文件,但可以把他已经绑定好的管脚保存下来,输出到文件里。
方法一:
查看引脚绑定情况,quartus -> assignment -> Pins,打开FPGA引脚界面,在这个界面的菜单中可以保存引脚文件为csv格式(表格形式)和tcl格式。
步骤:File -> Export… -> 选择保存名字和保存格式。
方法二:
直接输出管脚配置,assignmengt -> Export assignmengt,可以保存配置为qsf格式,该格式可以用记事本查看,在该文件中同样包含了引脚信息。注意:保存时会在原工程文件夹下新建一个文件夹。
至于元件的其它配置方式,可以在qsf文件和tcl文件中用语句来设置,也可以在Assignment -> device,界面中设置。
加载:
使用已经有的引脚文件时,在选项assignment -> Import assignment,中可以选择要加载的引脚文件。此时,可以加载qsf 和 csv(或txt)文件。
保存的csv(txt)文件、qsf文件 和 tcl文件的区别:
csv(txt)文件:包含芯片所有管脚信息,包括分配的和未分配的;
qsf文件:包含管脚分配信息和芯片信息;
tcl文件:只包含已分配管脚信息。
(转载)Quartus II中FPGA的管脚分配保存方法(Quartus II)的更多相关文章
- Quartus II中FPGA的管脚分配保存方法
一.摘要 将Quartus II中FPGA管脚的分配及保存方法做一个汇总. 二.管脚分配方法 FPGA 的管脚分配,除了在QII软件中,选择“Assignments ->Pin”标签(或者点击按 ...
- quartus2中FPGA管脚分配保存方法(转)
一.摘要 将Quartus II中FPGA管脚的分配及保存方法做一个汇总. 二.管脚分配方法 FPGA 的管脚分配,除了在QII软件中,选择“Assignments ->Pin”标签(或者点击按 ...
- 【转载】C#中double.TryParse方法和double.Parse方法的异同之处
在C#编程过程中,double.TryParse方法和double.Parse方法都可以将字符串string转换为double类型,但两者还是有区别,最重要的区别在于double.TryParse方法 ...
- 【转载】 C#中decimal.TryParse方法和decimal.Parse方法的异同之处
在C#编程过程中,decimal.TryParse方法和decimal.Parse方法都可以将字符串string转换为decimal类型,但两者还是有区别,最重要的区别在于decimal.TryPar ...
- 【转载】C#中float.TryParse方法和float.Parse方法的异同之处
在C#编程过程中,float.TryParse方法和float.Parse方法都可以将字符串string转换为单精度浮点类型float,但两者还是有区别,最重要的区别在于float.TryParse方 ...
- 【转载】C#中int.TryParse方法和int.Parse方法的异同之处
在C#编程过程中,int.TryParse方法和int.Parse方法都可以将字符串string转换为整型int类型,但两者还是有区别,最重要的区别在于int.TryParse方法在字符串无法转换为i ...
- 【转载】c++中堆、栈内存分配
一.内存划分 1.栈区(stack)— 由编译器自动分配释放 ,存放函数参数值,局部变量值等.其操作方式类似于数据结构中栈.2.堆区(heap) — 一般由程序员分配释放, 若程序员不释放,程序结束时 ...
- (转载)java中判断字符串是否为数字的方法的几种方法
java中判断字符串是否为数字的方法: 1.用JAVA自带的函数 public static boolean isNumeric(String str){ for (int i = 0; i < ...
- (转载)Linux中cp直接覆盖不提示的方法
(转载)http://soft.chinabyte.com/os/220/11760720.shtml 新做了服务器,cp覆盖时,无论加什么参数-f之类的还是提示是否覆盖,这在大量cp覆盖操作的时候是 ...
随机推荐
- 12_Python语法示例(函数)
1.写一个函数mysum,此函数带有两个参数x,y打印出两个参数x,y的和 def mysum(x, y): print(x + y) mysum(3, 2) 2.写一个函数print_even,传入 ...
- html基础:基本标签
一.html简介 html是一个长的字符串,它能够被浏览器解析.html分为三块:html代码,css,js. html的注释可以用<!-- --> 或者ctrl+? html页面打开以后 ...
- mysql数据库常见问题修改(待补充)
1.修改mysql最大连接数的方法:临时修改:1.使用命令show variables 来查看当前最大连接数 show variables like '%max_connections%'; 使用命令 ...
- MySQL行构造器
子查询返回多列的办法 主要用途,项目中初版使用子查询返回一列用来限制主表,项目新版本中,表关联建改为多列时建议使用
- js中数组Array对象的方法sort()的应用
一. sort()方法的介绍 //给一组数据排序 var arrNum = [12,1,9,23,56,100,88,66]; console.log("排序前的数组:"+arrN ...
- Python 开发GUI之UI界面的三种引入形式
[纯手工代码] # -*- coding: utf-8 -*- # Author:Jack LEE # FileName:main # CreatedDate: 2020/9/17 # 手写代码的基础 ...
- 关于java中循环的学习
switch 值是固定的 效率高语法:switch (表达式) { case 常量 1: 语句; break; case 常量 2: 语句; break; … default: 语句; break;} ...
- Codeforces1131G Most Dangerous Shark
Description Original Problem Chinese Translation 大概就是给你一个间隔为1的多米诺序列,推倒一个多米诺骨牌有个花费,求推倒所有多米诺骨牌的最小花费 So ...
- Linux实战(20):非docker部署ELK
部署环境: Elasticsearch:7.5.2 Kibana:7.5.2 Logstash:7.5.2 filebeat:7.5.2 redis:最新版 部署方式:rpm+二进制包 使用架构 软件 ...
- Django中间件之SessionMiddleware源码分析
settings.py文件中 MIDDLEWARE = [ 'django.contrib.sessions.middleware.SessionMiddleware', ] # from djang ...