Qsys中的EPCS使用技巧

一、概述

EPCS系列器件属于串行Flash器件,具有掉电非易失性,常用作Altera公司的FPGA的周边器件,存储FPGA的配置数据。尤其在NiosII系统中,集成有EPCS serial flash controller core,利用这个控制接口不但可以将FPGA的配置数据存储在内部,也可以将用户数据存储在内部,下面展示了EPCS serial flash controller core的功能:

从中可以看出,EPCS器件中存储分为两个部分一部分是config memory,用于存储FPGA的配置数据,另一部分是General-Purpoe Memory用于存储用户数据;

另外关于EPCS的引脚和FPGA之间的连接,官方手册是这样描述的:

In all Altera device families except Cyclone III and Cyclone IV,the EPCS serial flash controller core does not create any I/O ports on thetop-level Qsys system module. When you compile the Qsys system in the QuartusII software, the EPCS serial flash controller core signals are routedautomatically to the device pins for the EPCS device.

在Qsys窗口中配置系统时,一定要将EPCS Controller模块的rest连接到CPU模块,否则Flash编程时会出现无法读取EPCS寄存器的错误,这个问题困扰了我好久才解决;

二、带NiosII内核的程序下载方式:

    注意:下载配置文件(.sof和.elf)到EPCS里面之前必须先通过Quartuars将.sof文件下载到FPGA中,它起到一个配置引导作用,将.elf文件和.sof文件通过JTAG接口下载在FPGA中然后传送至EPCS中,要注意这和AS下载模式的区别,AS下载模式(如下载.pof或.jic文件)是通过AS接口直接将配置文件下载到EPCS中,配置过程不需要FPGA的参与;换句话说,NiosII SBT的flash 编程相当于通过JTAG接口间接的将配置文件下载到EPCS中,然后上电运行;

1)关于编程文件格式:

à.sof文件:.sof被称为“硬件”或“固件”文件,JTAG下载方式,掉电丢失;

à.pof文件:.pof被称为“硬件”或“固件”文件,AS(Active Slave)下载方式,掉电不丢失;

à.jic文件:JTAG(Indirection Configuration File) 为间接配置文件,可由.sof文件转换而来,下载到串行方式的Flash中,即EPCS系列,掉电不丢失;

à.elf文件:.elf被称为 “软件”文件,原文件为C代码,该文件不能单独运行,必须与“硬件”文件一起下载才能运行;

2)Flash编程方式:

à在Nios II SBT环境中,点击NiosII—>Flashprogrammer;

à在弹出的NiosII Flash Programmer界面点击File—>new,然后添加硬件配置文件,如下图所示:

à更新连接,如果Sys ID和Systimestamp不匹配,则会连接失败,可点击connections,屏蔽掉校验,则连接正常;然后添加.sof文件和.elf文件,最后点击Start即可。

说明:利用Flash编程,在Qsys系统中必须添加EPCS控制模块并将其复位引脚连接至CPU;另外EPCS的引脚不需要引出,一般FPGA会自动连接到专用引脚上(除了Cyclone III和IV系列可以引出引脚,详情见手册);

如果是Win10或者win8系统可能还会出现1 [main] bash 33460 find_fast_cwd: WARNING: Couldn'tcompute FAST_CWD pointer.  Please reportthis problem to the public mailing list cygwin@cygwin.com这样的错误提醒,但好像对过程没有影响,暂且不去理睬,网上说的cygwin版本导致的,下载更新替换就行了,但是测试会出现更多问题,暂时不予理睬。

3)基于.jic的Flash配置方式:

网上小梅歌介绍了另一种新的配置方式(https://www.cnblogs.com/xiaomeige/p/5366512.html),将.sof和.elf文件转换成一个.jic文件,然后通过AS接口将.jic文件配置到EPCS当中,不过该方式我暂时测试未通过,后续;


 

  • 2
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
"failed to connect to 127.0.0.1 port 7890 after 20000 ms: Couldn't connect to server" 这个错误通常是由于无法连接到指定的服务器引起的。根据引用、和的内容,可能的原因可能是以下几种: 1. 系统代理:你可能已经在系统设置了代理,而代理服务器无法连接到指定的端口。你可以尝试关闭系统代理或者确保代理服务器的设置是正确的。 2. 网络连接问题:可能是由于网络连接不稳定或者防火墙设置导致无法连接到指定的服务器。你可以尝试检查网络连接是否正常,并确保防火墙允许与服务器的通信。 3. 服务器故障:指定的服务器可能暂时不可用或者出现故障。你可以尝试等待一段时间并重新连接,或者联系服务器管理员进行进一步的排查。 综上所述,"failed to connect to 127.0.0.1 port 7890 after 20000 ms: Couldn't connect to server"错误的原因可能是系统代理设置、网络连接问题或者服务器故障。你可以尝试根据具体情况排查并解决问题。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* [如何解决:Failed to connect to github.com port 443 after 21098 ms: Timed out](https://blog.csdn.net/weixin_43666333/article/details/129904391)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 33.333333333333336%"] - *2* [解决 github项目clone报错 Failed connect to github.com:443; Connection](https://download.csdn.net/download/weixin_38714641/14053810)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 33.333333333333336%"] - *3* [curl: (7) Failed to connect to 127.0.0.1 port 1081 after 3 ms: Couldn‘t connect to server](https://blog.csdn.net/kdksz/article/details/129739103)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 33.333333333333336%"] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值