zoukankan      html  css  js  c++  java
  • Quartus 调试中的Nios 程序

    FPGA的程序通常包含硬件和软件两部分。正常情况下调试需要分别进行下载,过程繁琐。

    为了将Nios II的软件程序包含到.sof文件中方便调试,可以在SOPC Builder中的RAM初始化为Nios 中的应用程序,在早先的版本中onchip_mem.hex都是自动生成的,并且每次编译Nios 程序的时候都会自动更新。但是最近Nios II EDS 12.0中,此初始化文件需要手工更新,方法如下:

    project--->make target--->build--->build.

    其间容易出现的错误:

    Title

    Error: mem_init.mk:220 *** multiple target patterns. Stop.

    Description

    You may see this error on Nios® II SBT for Eclipse by "make" tool with mem_init.mk when turning on "Enable non-default initialization file" and setting characters in "User created initialization file" column including colon ':' character, such as "D:\altera\myboot", on On-Chip Memory's Component Editor in SOPC Builder or Qsys.

    To prevent this error, the file name must not include colon ':' character in "User created initialization file" column,  for example, by managing the initialization file ("my_init_file_name.hex") at Quartus® II project directory and filling just "my_init_file_name" in the column.

    升级到13.0之后的mem_init文件又发生了变化,altera产品思路着实让人捉摸不透。

    RAM初始化文件的产生过程

    I follow the steps to create memory initialization files in the Nios II Software Developer's Handbook.
    1. Right-click the application project.
    2. Point to Make targets and click Build to open the Make Targets dialog box.
    3. Select mem_init_generate.
    4. Click Build.
    5. Add the .qip (meminit.qip) file to the Quartus II project.

    需要注意的一点是,如果添加了Uart Jtag可能导致Nios被挂起,导致初始化中出现问题,详细参照:

    http://www.alteraforum.com/forum/archive/index.php/t-43194.html

  • 相关阅读:
    容器与线程--更新
    js生成元素的事件不执行问题
    Webpack 笔记
    思考题——爬楼梯
    正则表达式笔记
    github + travis 自动构建 vue 项目到 gitpage
    css3 动画 vs js 动画
    深度哲学对工作的启发
    yml 文件操作方法
    布尔变量在项目中的应用
  • 原文地址:https://www.cnblogs.com/zhongzhe/p/3147538.html
Copyright © 2011-2022 走看看