导入开发板的引脚分配的csv文件:选择Assignments->Import Assignments
编译出错
Error: Can't place pins assigned to pin location xx点开出错细节:
nCEO和VAG_B0重复了。
那什么是nCEO??
Conclusion
在[7] MyFPGA, DE0的VGA_B[0] Pin assignment有錯有人抱怨為什麼Quartus II要default將nCEO弄成programming pin,而非regular I/O pin,害我們自己必須手動改一次,其實要怪的是設計DE2-70的人為什麼非要用nCEO這個pin不可,在pin足夠的的狀況下,應該是不會把nCEO拿來當regular I/O pin來用,除非是在pin不夠用的狀況下,且又只有單顆FPGA時,才會將nCEO也拿來用。在Terasic其他的版子也有類似的設計,熟析了其背後的道理後,也可套用到其他版子上。
解决办法
使用Tcl將nCEO設定成regular I/O pin?
代开tcl 在View->Unity windows->Tcl console下
set_global_assignment -name CYCLONEII_RESERVE_NCEO_AFTER_CONFIGURATION"USE AS REGULAR IO"
AS REGULAR IO"
或者在工程目录下打开 qsf文件,将上面的命令输入,效果一样的。
下面附录tcl的一些用法:
QuartusII主要提供了两种方法分配管脚:
第一种: 利用Assignments--->Assignment Editor 进行管脚分配;
这种方法适用于比较小的设计,所用管脚较少时
第二种:建立TCL文件进行管脚分配。这种方法比较灵活,是我比较常用的。
这种方法具有分配灵活,方便快捷,可重用性等多方面优点。方法如下:
选择Projects菜单项,并选择Generate tcl file for project选项,系统会为你自动生成相应文件,然后你只要向其中添加你的分配内容就可以了。
还有一种方法就是直接用new ,新建一个TCL文件即可,具体不再细讲。
在Quartus II中使用TCL脚本-可执行命令行
批处理
交互式shell
快速执行TCL指令行
-TCL命令行在GUI界面中
交互式Shell
在View->Unity windows->Tcl console下
在命令行中使用TCL脚本
-运行脚本
quartus_sh -t <script file> [<script arguments>]
quartus_sh -t myscript.tcl Stratix
-交互式使用
quartus_sh -s
-直接使用
quartus_sh --tcl_eval <tcl command>
quartus_sh --tcl_eval help -pkg flow
-与其他命令行具有相同的功能
运行TCL脚本
-命令行中支持TCL脚本
指令名 | 一般用途 | |
quartus_sh | Assignments,General Reporting,Compiling,Simple Shell | 赋值,一般报告,编译,简单shell |
quartus_tan | Timing Reporting,Advanced Timing Analysis | 时序报告,时序高级分析 |
quartus_cdb | Back Annotation,LogicLock Regions,Chip Editor Functions | 描述,固定模组优化,芯片优化 |
quartus_sim | Simulate with Tcl Testbenches | 仿真验证 |
为什么会有这些不同?
-不同的命令行支持不同的功能
不同TCL包允许不同的功能
-例子
quartus_cdb Supports LogicLock Functions,
Not Timing Analysis Functions
Basic Project Functions Supported by All
-可以查询Quartus II中手册查询相关资料
也可以在TCL命令行中使用help指令
Quartus II中TCL脚本
-TCL脚本被包含于Quartus II中
Design Space Explorer(DSE)
QHelp Unility
QFlow Script
-在Tool中的TCL Scripts
-为了需要改变版本
小测试
-列出三种在Quartus II软件中使用TCL脚本的方法
答案
-直接在GUI界面中使用
-交互式TCL命令行中使用
批处理行中使用
直接使用命令行
-TCL工具栏按钮(未必包含于所有的情况)