方法一: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。 步骤1:在QII软件中,使用“Assignments —— Remove Assignments”标签,移除管脚分配内容,以确保此次操作,分配的管脚没有因为覆盖而出现错误的情况。 注:在未执行任何管脚分配操作新工程中,可跳过步骤1。 步骤2:使用记事本或类似软件新建一个TCL文件,按如下格式编写管脚分配内容(以EP1C12的 例程为例) 我们命名的名字就是后面那部分,PIN_*是FPGA硬件上癿引脚,-to后面的就是对应的名字 如 set_location_assignment PIN_153 -to clk_50m 我们可以看到,原理图中50MHz晶振Y1(CLK2)接的就是FPGA的153脚。 步骤3:将新建的TCL文件放到工程目录文件夹下。 步骤4:执行pin.tcl。 在QII软件中,使用“Tools —— Tcl Scripts „”标签,打开Tcl Scripts 选择pin.tcl,选择“Run”标签,执行Tcl文件。 如下所示,又看见Successfully了吧,返说明我们脚本文件运行成功了
|