分享几个FPGA配置在自动化设计方面的技巧

01、概述

“自动化”设计altera的设计流程中其实就是使用Quartus集成的TCL脚本编译器,用户可以编写自己的脚本来完成一些需要多次重复的动作,或者利用脚本来保存一些可以多场合重复使用的配置等到。

        本文总结有关FPGA配置方面应用“自动化”手段的小技巧,其中一个有关自动生成JIC配置文件,另一个就是如何批处理自动下载配置文件技巧。

02、JIC配置文件

Altera的FPGA有一种配置模式叫主动串行模式,即AS模式(最新有ASx4模式)。该模式可以通过EPCS这种Flash性质的配置芯片来对FPGA进行配置,需要注意的是Altera或Intel已经不生产这种基于Flash的配置芯片EPCS了,随着FPGA 规模越来越大,Flash配置芯片大多支持ASx4模式,Altera目前推荐使用的是EPCQL。而AS配置模式下,配置芯片的烧写有两种方式,一种是直接通过AS口直接独立地烧写POF文件,这样就需要给电路设计一个独立的10针插座;还有一种方式是可以借用JTAG的接口桥接方式来烧写,只是需要事先将配置文件*.sof文件转换成JIC文件。

03、JIC配置文件手动转换

JIC文件的转换方法,是在工程全编译后生成SOF文件,然后再通过Quartus软件的文件菜单打开编程文件转换工具来进行转换(File->Convert Programming Files...),该工具打开的界面如图1所示。

图1:配置文件转换工具及生成JIC的相关设置

04、JIC配置文件自动转换

通过脚本可以让Quartus II在全编译过程的同时自动生成JIC文件,这样只要首次进行配置后,后面项目任何更改后都会在全编译时自动生成JIC配置文件,而不需要如上述那样再手动将SOF文件转换为JIC文件。具体 方法是,设计者事先要确认一个正确的转换设置(不同的设计可能设置会有不同),再将这种设置保存到一个*.cof(这里命名为jicgen.cof)文件之中,如图2所示。

图2:将SOF文件转换到JIC文件的转换设置保存到COF文件

接着是编写一个简单的TCL脚本文件(这里将该文件命名为JicGen.tcl),该脚本文件中其实就一句话,即“exec quartus_cpf -c jicgen.cof”。

exec quartus_cpf -c jicgen.cof

最后一步是在工程的配置文件*.qsf文件中添加一句 “set_global_assignment -name POST_FLOW_SCRIPT_FILE "quartus_sh:JicGen.tcl"这样工程在编译结束后会为我们自动生成所需的JIC文件了。添加这条配置的目的,就是Quartus在编译过程中会适时地执行这条配置,并依据本条设置调用上述TCL脚本文件来产生JIC文件。

set_global_assignment -name POST_FLOW_SCRIPT_FILE "quartus_sh:JicGen.tcl

05、FPGA配置文件自动下载

Altera的FPGA程序在线下载一般都是在打开Quartus II软件进行项目开发的过程中进行,当然也可以在调试过程中通过SignalTap II下载sof文件,同时,在后期也可以只打开Programmer来单独下载程序。上述方法都是需要打开GUI界面,本文介绍一种通过批处理在未打开GUI界面的情况下下载程序到FPGA。

1.条件本条技巧涉及到的程序下载方法,都是需要经过下载电缆,所以条件之一就是必须要有一根USB-Blaster电缆,同时必须安装了Quartus II软件或单独安装Programmer亦可。这是FPGA在线配置的必要条件。

2.使用的命令及格式

下载使用的是集成在Quartus II软件中的“quartus_pgm”命令。为了自动化执行,需要手动生成一个Batch文件,将对应具体命令拷贝到这个BAT文件即可,这样在需要下载配置文件的时候,可以单击鼠标完成,而不需要打开GUI下载界面。BAT批处理具体格式如下:

1)、下载SOF文件

%QUARTUS_ROOTDIR%\\bin64\\quartus_pgm.exe -m jtag -c USB-Blaster[USB-0] -o "p;output_file.sof"

2)、下载JIC文件

%QUARTUS_ROOTDIR%\\bin64\\quartus_pgm.exe -m jtag -c USB-Blaster[USB-0] -o pvbi;output_file.jic

注:上述命令可能需要用户根据自己软件版本、硬件条件进行适当调整。比如32-bit版本就是将上述bin64修改成bin32,然后是usb-blaster下载线也要依据具体硬件来进行适当修改,因为现在usb-blaster升级到二代,而且有时可能电脑上连接有不止一根下载线。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值