由于PLD器件的复杂性,EDA工具的功能和操作也相应的复杂起来。以Quartus II为例,每一个单独的功能和操作都对应着多个设置选项。通常可以选择缺省项,但是针对具体的应用环境,往往需要设置个性化的配置。 riple
在Quartus II的使用过程中,经常会遇到需要备份或转移某个工程的设置内容的情况,最常见的就是引脚配置内容。在不熟悉Quartus II的文件类型和对应内容时,常常不知从何入手,往往采用手工抄写的方式从Assignments-〉settings中逐项抄出,既费时又容易出错。 riple
下面是建立一个工程需要配置的内容: riple
1. 器件类型(如Cyclone) riple
2. 器件型号(如EP1C12Q240C8) riple
3. 顶层实体名 riple
4. 设计文件路径 riple
如果针对具体的电路板,还要设置 riple
1. 引脚分配(往往是内容最多的一项) riple
2. 未使用的引脚功能(通常设为输入三态) riple
3. 引脚电平类型 riple
4. 生成第三方编程文件类型(如.ttf文件) riple
5. 配置方式(主动串行或被动串行) riple
此外,还有针对第三方EDA工具接口的配置、编译过程的配置等。 riple
这些选项虽然可以在IDE界面中逐级设置,可是毕竟繁琐费时,稍不留神就会漏掉几项。其实,所有的IDE界面中的选项,都有其在ASCII文件中的具体语句对应。 riple Quartus II运行时需要读取ASCII文件而不是IDE的界面。掌握了这一规律,就可以按照Quartus II软件的运行方式,找到对应的ASCII文件,直接对其操作来修改或复制其内容。 riple
下面是我想到的几种半自动化的设置转移方法: riple
1. 在设置内容相对较少的情况下可以手工抄出。不推荐。 riple
2. 手工复制或修改.qsf文件的内容。 riple
3. 打开.qsf文件,选择File-〉Save As,指定存放路径,文件类型选择.tcl文件。 riple
4. 从Assignments-〉Assignment Editor界面中,选择File-〉Export,文件类型选择.tcl文件。这种方法不包括对缺省选项的修改。 riple
5. 选择Project-〉Generate Tcl File for Project,指定存放路径,选择保存选项,我通常把Include default assignments选上。 riple
上面的第五种方法是最全面的,可以把各种不常用的缺省选项都包括进来。这些缺省选项往往是根据特定工程的特殊性进行的配置,由于在IDE界面中不容易找到,也往往是最容易漏掉的关键选项。 riple
得到了.tcl文件,并不能像.qsf文件一样直接被Quartus II软件作为新的配置文件。从.tcl文件加载新的配置文件的方法有三种: riple
1. 把.tcl文件中需要的语句手工拷贝到新的.qsf文件中。如果仔细看一下,.qsf文件就是用标准的Tcl语言写的,只不过调用了Quartus II的Tcl命令包。 riple
2. 在IDE界面中选择Tools-〉Tcl Scripts,指定用上面方法得到的.tcl文件并选择Run,就可以自动得到新的.qsf文件。注意需要先修改.tcl文件中的必要内容,并把.tcl文件和新工程的.qdf文件放在同一个目录下。 riple
3. 在命令行中执行quartus_sh -t xx.tcl命令。关于quartus命令行的使用方法我会在以后的日志中给出。 riple
由于.qsf文件很容易在IDE界面被修改,不适合作为保存设置的文件;而.tcl文件只有在特定的操作下才会生成,相对不容易变动,所以更适合作为备份设置文件。 riple
这里需要注意的是,Quartus II通常只保存修改过的缺省选项,不保存未经修改的缺省选项。这一点在.qsf文件中可以很明显的看出。如果需要查看所有的缺省选项,需要在修改某一个缺省选项后执行第五种方法,就可以得到完整的缺省选项列表。 riple
有趣的是,如果这时选择Project-〉Organize Quartus II Setting File,再打开.qsf文件,会看到分组注释得很清晰的设置文件,这时再执行第五种方法就得不到完整的缺省选项列表了,只能得到修改过的缺省选项列表。 riple
总结,写了这么多12345,恐怕读者逐君要糊涂了,还不如给出一种方法好呢。其实我也不想把问题搞这么复杂,下面就给出一个参考的执行步骤,先帮大家用起来。如果大家以后有进一步的兴趣,可以回过头来把上面的文字细看一遍,没准还能有更适合自己的方法。 riple
1. 正确的设置工程选项。如果需要转移已有的工程,这一步可以略去。 riple
2. 选择Project-〉Generate Tcl File for Project,指定存放路径,选择保存选项,我通常把Include default assignments选上。 riple
3. 在IDE界面中选择Tools-〉Tcl Scripts,指定用上面方法得到的.tcl文件并选择Run,就可以自动得到新的.qsf文件。注意需要先修改.tcl文件中的必要内容,并把.tcl文件和新工程的.qdf文件放在同一个目录下。 riple
背景资料:Quartus II Settings File Reference Manual。 riple
上面文档中给出了.qsf文件的语法和所有设置选项的说明和调用方法。如果看文档还不能确定如何执行某一个具体设置的话,可以在IDE界面中找到并修改对应的设置,保存后就可以在.qsf文件中看到新添加的一行对应语句。参考这条语句,下一次就可以直接在ASCII文件中修改设置了。 riple
用户1532436 2012-10-16 14:56
用户323289 2010-11-15 16:11
用户859628 2010-5-11 10:32
用户1303485 2010-5-2 22:36
ash_riple_768180695 2010-3-10 16:09
用户1584993 2010-3-10 15:56
ilove314_323192455 2010-3-10 13:37
ash_riple_768180695 2007-12-28 09:13
第一个问题需要咨询A的FAE,没准他会建议你升级一下版本。
第二个问题:鸡对鸭讲。所以不通。
用户111215 2007-12-27 18:14
用户111215 2007-12-27 18:11
2. 在IDE界面中选择Tools-〉Tcl Scripts,指定用上面方法得到的.tcl文件并选择Run,就可以自动得到新的.qsf文件。注意需要先修改.tcl文件中的必要内容,并把.tcl文件和新工程的.qdf文件放在同一个目录下。
我点击Tools-〉Tcl Scripts 为什么会没有反应呢?