来自:http://www.cr173.com/html/46165_1.html
使用主动串行配置模式对Cyclone
FPGA进行配置前,必须将配置文件写入串行配置器件EPCS。将配置文件写入EPCS的方法有三种:
(1)在Quartus
II的Programmer中,通过专门与EPCS连接的AS下载接口下载.pof文件到EPCS。不同之处在于将下载线连接到AS接口而不是JTAG接口,选择编程文件时是*.pof而不是*.sof。
(2)在Quartus II的Programmer中,使用JTAG接口通过FPGA中间通道间接对EPCS进行编程。
(3)使用Nios II IDE中的Flash Programmer对EPCS进行编程。
这里要讲的第一种,是常见的AS方法:
首先就是编译好一个文件以后,就会自动生成.POF和.SOF 的文件,SOF 当然就是给FPGA SRAM 调试用的,POF 就是给AS
下载用的,
打开我们的下载对话框,
选择下载模式
提示一些器件会丢失,因为我们常用的JTAG 模式下面的器件会找不到,因此我们直接确定
接下来我们就天剑POF 文件
选中 编程,校验,就可以点击开始下载了!
下面讲解一种JTAG
模式下面的配置方法,转换生成一个JIC (JTAG Indirect Configuration File
)
在Quartu s II 界面选择File > C o nv ert Program mi ng Files,对 SOF
和POF 文件进行转换,
生成各种格式的文件。将SOF 配置文件转换为JIC 文件的步骤如下(参见图):
(1) 在Quartu s II 界面中选择File > Co nv ert Progra mmi ng Files ,打开Convert Programming Files
对话框,参照下图,从Programmi ng file ty pe 下拉列表框中选择编程文件的类型为JTAG Indirect
Configuration File (.jic)。
(2) 在Configuration d e vi ce
下拉列表框中根据实际设计选择被编程目标器件,对于EP1C3 选择EPCS1 ;EP1C12选择EPCS4 。
(3) 在File name 文本框中,输入或浏览选择JIC 文件名和存放路径。
(4) 在Input files to convert 栏中单击Flash
Loader,使其高亮。
(5) 单击 add device
打开Select Device (选择器件) 对话框,如图所示。
(6) 参照图中选择器件类型和型号。例如器件类型选择Cyclone。
(7) 器件型号选择EPlC3 ,然后单击OK,关闭选择器件对话框。
选择器件
(8) 参照图,在Input files to convert 栏中单击SOF Data
,使其高亮。
(9) 单击Add File 打开Select Input File
(选择输入文件)对话框。
(10) 在该对话框中选择要进行转换的SOF
文件,然后单击打开按钮。
(11) 选择完输入文件后,会在SOF Data
下面出现要被转换的输入SOF 文件,如图所示。单击SOF Data 下的输入SOF 文件使其高亮。
(12) 参照图,单击Properties打开SOF File
Properties (SOF 文件属性) 对话框。(注意SOF选中的时候,才能打开Properties)
通过上面的步骤,即可完成SOF 文件到JIC 文件的转换。转换后的JIC
文件存放到用户指定的路径。
下面我们就 使用JlC 文件和Quartus
II Pr ogrammer 对EPCS 编程在第1) 步中已经将SOF 文件转换成JIC
文件。现在可以利用JIC 文件和Quartu s II Programme r 对串行配置器件EPCS 进行编程。步骤如下:
(1) 打开Programme
r,选中JTAG模式,确保硬件(下载电缆)已安装,添加要进行编程,
(2) 参照下图,选中图中的Program/Configure
下的两个复选框;注意,如果有打开的SOF文件,在JTAG 烧写JIC 的时候,需要先删除掉,
(3) 单击户St a rt 开始编程,等待编程完成。
以上的编程过程要确保目标系统的电源打开、下载电缆的连接良好。
利用JTAG配置EPCS芯片的方法
可以不用AS接口,而用JTAG接口配置EPCS器件,具体操作步骤如下:
1.在QuartusII中打开工程,然后编译链接,生成JTAG配置文件.sof;
2.选择File->Convert Programming Files,调出Convert Programming
Files对话框;
3.Output programming file对话栏内,Programming file type选择JTAG Indirect
Configuration File(.jic);
4.Configuration device选择你所使用的配置芯片,如EPCS16;
5.File name填写输出文件的名字,如output_file.jic;
6.Input files to convert对话栏内,选中Flash Loader,点击Add
Device按钮,在弹出对话框中选择你的FPGA芯片,如EP2C35;
7.选中SOF Data,点击Add File按钮,在弹出的资源浏览器中找到并选中编译生成的.sof文件,点击打开按钮;
8.点击Generate按钮生成output_file.jic文件;
9.打开Programmer对话框,选择JTAG模式;
10.点击Add File按钮,选择output_file.jic文件,并在Program/Configure复选框上打勾;
11.确定链接好JTAG电缆后,点击Start,QuartusII会先配置FPGA,然后再有FPGA烧写配置芯片。
利用这种方法可以在不使用AS接口的情况下完成对配置芯片的烧写,缺点是配置过程时间稍长,且每次配置完之后,要将板卡断电后重新加电,程序才能开始运行。我所使用的FPGA芯片和配置芯片分别是,Stratix
II EP2S60和EPCS64,以及Cyclone II EP2C35和EPCS16。
FPGA——下载程序的方法(这里指把程序下载到配置芯片中)
1.无Nios情况下
(1)利用AS口和.pof配置文件
(2)利用JTAG口和.JIC、.JAM文件
2.有Nios情况下
(1)利用AS口和.pof配置文件
操作方法:SOPC_Builder中添加onchip_rom和onchip_ram(或其他RAM)
Nios 的cpu内核设置:Reset:onchip_rom
Exception:onchip_ram(或其他RAM)
(2)在Nios IDE中用Flash Programmer
操作方法:SOPC_Builder 中添加EPCS_controller,SDRAM或SRAM
Nios 的cpu内核设置:
Reset:EPCS_controller
Exception:SDRAM(或SRAM)
Nios IDE 中的设置: stdout:null stderr:null
programme memory:SDRAM
Quartus软件中下载.sof或.pof文件,选择对应的模式(JTAG,AS)
然后在IDE中Tools——>Flash programmer 选择你要下载的工程和.sof文件,Hardware
Image:Custom 运行即可
其中,第一种方法是当用户程序比较小时可以用,当用户程序比较大时,就会超出onchip_ram的容量。
需要注意一点:在Quartus中Assignment》Setting中Device and Pin
Option>Configration,选择Active Serial模式,然后选择Flash的型号