FPGA的EPCS 配置的2种方法 FPGA下载程序的方法(EPCS)
使用主动串行配置模式对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的型号
转载http://www.cr173.com/html/46165_1.html
FPGA的EPCS 配置的2种方法 FPGA下载程序的方法(EPCS)的更多相关文章
- 图解Stm32使用jlink下载程序时jtag接口(SW和JTAG模式)的简化方法
转自: http://www.it165.net/embed/html/201308/2332.html 用过stm32的人都知道stm32有两种常用下载程序的方法,用串口和jlink.串口下载方法和 ...
- .net下载文件的方法
最近做项目遇到文件下载的问题,原本采用的是直接用一个href链接到需要下载的文件来处理这个问题,后来发现,如果文件是一个图片,浏览器会自动打开图片而不是下载,需要用户右击另存为才可以下载,很不友好,后 ...
- thinkphp的钩子的两种配置和两种调用方法
thinkphp的钩子行为类是一个比较难以理解的问题,网上有很多写thinkphp钩子类的文章,我也是根据网上的文章来设置thinkphp的钩子行为的,但根据这些网上的文章,我在设置的过程中,尝试了十 ...
- 【Java】java数据库连接池配置的几种方法
今天遇到了关于数据源连接池配置的问题,发现有很多种方式可以配置,现总结如下,希望对大家有所帮助:(已Mysql数据库为例) 一,Tomcat配置数据源: 方式一:在WebRoot下面建文件夹META- ...
- Linux系统下安装jdk及环境配置(两种方法)
https://blog.csdn.net/qq_42815754/article/details/82968464 这里介绍两种linux环境下jdk的安装以及环境配置方法在windows系统安装j ...
- Spring Boot 排除自动配置的 4 种方法,关键时刻很有用!
Spring Boot 提供的自动配置非常强大,某些情况下,自动配置的功能可能不符合我们的需求,需要我们自定义配置,这个时候就需要排除/禁用 Spring Boot 某些类的自动化配置了. 比如:数据 ...
- 【Android】一种提高Android应用进程存活率新方法
[Android]一种提高Android应用进程存活率新方法 SkySeraph Jun. 19st 2016 Email:skyseraph00@163.com 更多精彩请直接访问SkySeraph ...
- log4j配置日志文件log4j.appender.R.File相对路径方法
方法一. 解决的办法自然是用相对路径代替绝对路径,其实log4j的FileAppender本身就有这样的机制,如:log4j.appender.logfile.File=${WORKDIR}/logs ...
- Myeclipse 10/2014 配置插件(svn、maven、properties、velocity)方法
一.构造SVN具体说明 什么是SVN? 管理软件开发过程中的版本控制工具. 以下会以两种方式来介绍怎么安装svn,myeclipse安装SVN插件步骤.以myeclipse 2014为例,第一种是最常 ...
随机推荐
- mysql select语句执行顺序
SELECT语句定义 一个完成的SELECT语句包含可选的几个子句. SELECT语句的定义如下: <SELECT clause> [<FROM clause&g ...
- React事件初探
作者:朱灵子 React 是一个 Facebook 和 Instagram 用来创建用户界面的 JavaScript 库.创造 React 是为了解决一个问题:构建随着时间数据不断变化的大规模应用程序 ...
- 多线程间通信之AutoResetEvent和ManualResetEvent的原理分析和开发示例
AutoResetEvent 允许线程通过发信号互相通信. 通常,当线程需要独占访问资源时使用该类. 线程通过调用 AutoResetEvent 上的 WaitOne 来等待信号. 如果 AutoRe ...
- 高级需求分析UML建模设计模式笔记
1.REQ->HLR 分析 全系统性质->AD设计 Context,BOM,Conception 2.REQ->LLR 分析 模块分析->DD设计 + 编码 Feature,B ...
- hdu1269迷宫城堡 (强连通Tarjan+邻接表)
Problem Description 为了训练小希的方向感,Gardon建立了一座大城堡,里面有N个房间(N<=10000)和M条通道(M<=100000),每一个通道都是单向的,就是说 ...
- flume学习(三):flume将log4j日志数据写入到hdfs(转)
原文链接:flume学习(三):flume将log4j日志数据写入到hdfs 在第一篇文章中我们是将log4j的日志输出到了agent的日志文件当中.配置文件如下: tier1.sources=sou ...
- 创建一个简单的windows服务,每间隔一定时间重复执行批处理文件
创建一个windows服务项目,增加App.config <?xml version="1.0" encoding="utf-8" ?> <c ...
- iOS: FFmpeg的使用一
现状:现在视频直播非常的火,所以在视频直播开发中,使用的对视频进行遍解码的框架显得尤为重要了,其实,这种框架蛮多的,这次主要介绍一下FFmpeg视频播放器的集成和使用,FFmpeg是视频编解码的利器. ...
- 高版本teamview的成为被控制端时,会一直出现“正在初始化显示参数”
故障现象:高版本teamview的成为被控制端时,控制端会一直出现“正在初始化显示参数”,如图是teamview13作为服务器端,控制端连接一直出现这个情况 做好的解决办法: 把被控制端的teamvi ...
- 盒模型中的div居中
说到居中的问题,或许大多数童鞋都会想到text-align:center; margin:0 auto; vertical-align:middle; line-height:height; ……的确 ...