我是靠谱客的博主 贤惠招牌,最近开发中收集的这篇文章主要介绍nios烧写到EPCS的问题处理,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

原理图如下图,板卡FPGA同时使用2片flash配置芯片,左侧M25P64即EPCS64。2片flash配置芯片使用相同的SPI总线。

 在不使用nios的quartus工程中,使用jtag烧写jic的方式固化程序到EPCS64,始终正常。

近期使用含有nios的quartus工程,发现无论是使用Nios® II Flash Programmer还是shell的方式均无法烧写程序,解决方法是直接焊掉U2 N25Q128

焊掉U2前后使用Nios® II Flash Programmer烧写信息对比如下图(仅显示差异部分)

其中焊掉U2前 EPCS identifier is 0x20BA1F  / EPCS status is 0x02 应该是U2

其中焊掉U2后 EPCS identifier is 0x202017   / EPCS status is 0x00应该是U3 EPCS FLASH

为什么优先访问U2呢,求大佬指点

解决问题曾经走过最大的弯路nios2-flash-override.txt

使用Nios® II Flash Programmer烧写报错如下图

根据 Unable to use EPCS device Leaving target processor paused_Michael-H的博客-CSDN博客提示,新建一个文本文档,命名为nios2-flash-override.txt,将其复制到nios的安装程序的bin目录下面altera13.1nios2edsbin

报错为:"No EPCS layout data - looking for section [EPCS-20BA1F]"
那么应该添加的代码则为
[EPCS-20BA1F] # EPCS64N (lead-free)
sector_size = 65536
sector_count = 128

修改后Nios® II Flash Programmer烧写提示正常,但是固化失败。

于是手动修改Nios® II Flash Programmer生成的sh文件,添加校验命令--verify,命令行执行,发现校验失败,如下图

使用sh脚本转换hex,生成jic的方式烧写,发现重启板卡后,FPGA内确实有nios核,但是c代码不执行。【我也很困惑,求大佬指点

 

最后

以上就是贤惠招牌为你收集整理的nios烧写到EPCS的问题处理的全部内容,希望文章能够帮你解决nios烧写到EPCS的问题处理所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(39)

评论列表共有 0 条评论

立即
投稿
返回
顶部