【三】FPGA软核学习常见的错误(qsys、eclipse)

这篇具有很好参考价值的文章主要介绍了【三】FPGA软核学习常见的错误(qsys、eclipse)。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

一、eclipse报错

  • 1、烧写软件代码出现这样的错误,在run as–>Nios II Hardware时出现错误:Downloading ELF Process failed

    downloading elf process failed,fpga开发,学习,eclipse

在控制台捕获得到的信息,这个信息闪一下就消失了,所以需要截图捕获。可以从信息“verify failed between address 0x0 and 0x1F”知道,是在0x0 and 0x1F地址段验证失败了。通过打开qsys,查看地址的分配,发现是epcs所在的地址。

downloading elf process failed,fpga开发,学习,eclipse

打开qsys查看:

downloading elf process failed,fpga开发,学习,eclipse

另外,Nios处理器的复位地址设置为0x0。

downloading elf process failed,fpga开发,学习,eclipse

从下图中可以看出代码的运行实际上是在onchip ram上运行的,所以需要一个代码搬运的工具(即Bootloader)从epcs(从0x0开始搬运)中搬运到ram,这个搬运工具只有在NiosII flash programmer(下图中)操作时才能下载到板子上,直接run as是不具备这个功能的。downloading elf process failed,fpga开发,学习,eclipse

downloading elf process failed,fpga开发,学习,eclipse

**解决方法:**右键软件工程目录–>Nios II–>BSP editor。弹出下面的对话框,将这两个选项去掉即可。完美解决。这两选项的含义是:复位的时候,允许代码在这里跑程序,代码会下载到ox0地址当中。然而我们run as时,没有将代码搬运的工具下载进去,所以代码搬运不到ram上,代码就无法运行,导致代码烧写错误。取消掉这两个选项之后,代码会直接烧入到ram中而不会烧写到epcs当中。

downloading elf process failed,fpga开发,学习,eclipse

勾选掉这两个选项之后,run as看到地址变为100020而非0x0,100020这个刚好是onchip_ram的地址。

downloading elf process failed,fpga开发,学习,eclipse

什么是Bootloader:实现代码的搬运。

各个地址段的含义:

downloading elf process failed,fpga开发,学习,eclipse

2、问题:设置的内存大小不够,设置大一点

region `tcm_instruction' overflowed by 256 bytes

downloading elf process failed,fpga开发,学习,eclipse

warning: Unable to reach (null) (at 0x00002018) from the global pointer (at 0x0000e07c) because the offset (-49252) is out of the allowed range, -32678 to 32767.

解决方法:更换为其他的ram

downloading elf process failed,fpga开发,学习,eclipse

3、重新生成板极支持包

Generate the BSP to update the Makefile, and then build again.

To generate from Eclipse:
 1. Right-click the BSP project.
 2. In the Nios II Menu, click Generate BSP.

To generate from the command line:
 nios2-bsp-generate-files --settings=<settings file> --bsp-dir=<target bsp files directory>

更改了qsys里面的配置,在eclipse中没有重新generate,软件工程右键–>Nios II–>BSP editor–>generate

4、qsys连连看报错:在qsys添加自IP时报错,看了提示信息,其实相关的接口明明已经连接。通过查找资料,按照提示的内容将这三个IP remove掉在重新添加连线(pio_key, jtag_uart,epcs_flash),错误就消失了。网上的说法是高版本的quartus II的一个bug,我这个是17.1的,之前低版本是不会出现这样的问题的。

Error: unsaved.nios2_qsys.irq/epcs_flash.irq: Missing connection start (try "Remove Dangling Connections")

downloading elf process failed,fpga开发,学习,eclipse

重新添加连线之后:不再报错了。

downloading elf process failed,fpga开发,学习,eclipse

5、在eclipse中烧写程序的时候出现这样的错误:

Unable to validate connection settings.
Connected system ID hash not found on target at expected base address.

右键软件工程目录–>Run as–>run configurations,将这两个选上。

downloading elf process failed,fpga开发,学习,eclipse文章来源地址https://www.toymoban.com/news/detail-624415.html

	--晓凡 2023年3月18日于桂林书

到了这里,关于【三】FPGA软核学习常见的错误(qsys、eclipse)的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • FPGA固核、硬核与软核的详细介绍以及之间的区别和联系

    注意:后续技术分享,第一时间更新,以及更多更及时的技术资讯和学习技术资料 ,将在公众号 CTO Plus 发布,请关注公众号: CTO Plus FPGA固核、硬核与软核的详细介绍以及之间的区别和联系 FPGA(Field-Programmablex0aGate Array)是一种可编程逻辑器件,可以通过编程实现 https://m

    2024年02月08日
    浏览(34)
  • (一)手把手教你如何通过ARM DesignStart计划在FPGA上搭建一个Cortex-M3软核

    1.1 如何下载ARM DesignStart Cortex-M3相关文件 ​ 关于ARM DesignStart计划的介绍:ARM DesignStart计划——私人定制一颗ARM处理器 - 知乎 (zhihu.com)。 ​ 在arm Developer官网[Arm Developer](https://developer.arm.com/downloads)右上方的Downloads中搜索ARM DesignStart Cortex-M3第一个即是FPGA上定制的Cortex-M3软核IP。

    2024年02月04日
    浏览(49)
  • 常见Http错误码学习

    ​ 服务器巡检时比较常见的 http 错误码 400 Bad Request 408 Request Timeout 499 client has closed connection 502 Bad Gateway 504 Gateway Timeout 这些错误码反映了服务器什么样的状态,仅看字面意思还不太容易理解,就动手做个试验吧 在 linux 主机上运行 nginx,在本机(windows 10)上运行 jetty,linux 上的

    2024年02月04日
    浏览(24)
  • /storage/emulated/0/Download/copy_download.db (Permission denied)错误的处理方法

    报错信息:   其实这个问题是由于Android6.0更新了权限机制,在6.0之前,写入sd卡权限只需在清单文件中添加  即可,而在6.0及以上版本,对一些公共目录的访问比如:/storage/emulated/0/Download 则需要在activity中用代码来请求一些敏感的权限方可实现,其中就包括对sd卡的操作权限

    2024年02月13日
    浏览(160)
  • FPGA学习笔记(1):使用Verilog实现常见的加法器

    本文使用VerilogHDL实现一些简单的加法器,本人水平有限,希望大佬能够多指证 Quartus Prime(18.0) Modelsim 半加器可以用于计算两个单比特二进制数的和,C表征进位输出,S表述计算的结果。 半加器的真值表 化简以后的逻辑表达式可以表达为: s = a’b+ab’ c = ab Verilog 代码块 全加

    2024年02月09日
    浏览(47)
  • C编译过程 以及 ELF文件(学习笔记)

    一个用C语言编写的高级语言程序是从编写到打包、再到编译执行的基本过程,我们知道在CPU上执行的是低级别的机器语言,从高级语言到低级别的机器语言肯定是要经过翻译过程,这个过程大体的过程如下图所示: 在Unix系统中,从源文件到可执行目标文件是由编译驱动程序完

    2024年02月12日
    浏览(41)
  • Error: Flash Download failed - “Cortex-M3“错误解决办法

    在使用STM32F103的时候,使用DAP仿真器下载程序,出现下载不了的情况,错误信息如下: 输出框里打印信息如下: No Algorithm found for: 08000000H - 08000BD7H Erase skipped! Error: Flash Download failed  -  \\\"Cortex-M3\\\" 根据该信息可知,Flash下载失败 解决办法: 1、查看是否未安装相应芯片的支持包

    2024年02月06日
    浏览(52)
  • edge浏览器安装扩展插件报错:出现错误Download interrupted【更新版】

    由于作者本文章是之前作者遇到问题时,记录而来。并不能保证可以解决大伙的问题 最近,看到读者的反馈,进行了更新和升级!希望能够提供帮助!!! 如果还是没能解决问题,请一定不要放弃,勇敢百度,勇敢尝试!!! {如果使用方法一,一定将前面的#去掉} 打开ho

    2024年02月07日
    浏览(182)
  • 【已解决】ubuntu出现Can‘t find MMDB, start download错误

    #clash 在linux系统中配置时发生错误 根据clash官网的“linux使用教程”进行到第3步启动clash 报以下错误  原因:端口占用导致clash无法识别的问题 #解决办法 查看端口是否占用  运行完上述指令不返回任何信息,接下来 取消端口占用 完成上述操作,按照官网指令重新下载confi

    2024年02月11日
    浏览(38)
  • docker错误 download failed after attempts=6 :net/http :tls handshake timeout

    将镜像拉取地址改为阿里云的: docker-ce镜像_docker-ce下载地址_docker-ce安装教程-阿里巴巴开源镜像站 上面那个连接里面有下面这个,添加软件源信息:   配置镜像加速器: 先登录你的阿里云,下面是登录地址: 阿里云登录 - 欢迎登录阿里云,安全稳定的云计算服务平台 登录

    2024年02月12日
    浏览(48)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包