intel fpga elf与sof同时下载

解决方法sof+elf>flash>hex>jic

经Edison指点,得知alteraforum上有前辈给出解决方法。看似简单,疗效却比较好。

  1. 在所在QII工程文件夹中,新建一个文件夹。此处以sof+elf_jic为例;
  2. 将QII工程和NII工程编译生成的sof和elf都拷贝到此文件夹内;
  3. 按如下格式,新建一个sh文件,此处命名为make_hex.sh;(sh文件,bash的批处理文件;类似于DOC的bat文件) 
    1
    2
    3
    4
    5
    6
    7
    8
    sof="DE0_Nano.sof"
    elf="DE0_Nano.elf"
     
    echo "sof>flash ..."; sof2flash --epcs --input=$sof --output=hw.flash --quiet
    echo "elf>flash ..."; elf2flash --epcs --after=hw.flash --input=$elf --output=sw.flash
    echo "cat flash ..."; cp hw.flash hw_sw.flash; cat sw.flash >> hw_sw.flash
    echo "flash>hex ..."; nios2-elf-objcopy --input-target srec --output-target ihex hw_sw.flash hw_sw.hex
    echo "del flash ..."; rm -f *.flash
  4. 修改第1~2行处所指的文件名,保存。打开开始>程序>Altera>Nios II EDS xx.x>Nios II xx.x Command Shell,此处以Nios II 10.1 Command Shell做示范(图1)。 
    image 图1
  5. 打开QII>File>Convert Programming Files(图2),把SOF Data给Remove掉,然后点Generate生成jic。 
     image 图2
  6. 直接下载jic,OK。

1. alteraforum.JIC file Generation 

http://www.alteraforum.com/forum/showthread.php?p=77416


方法二:

1、  在Qsys里NIOSii 核,jtag控制器,EPCS/EPCQ*1控制器的reset要链接在一起。

关于除了内部片内ram和rom需要连接data_master,instruction_master,其他只需连接到data_master。Reset Vector 指向epcq_controller, Exception Vector指向onchip memory或其他memory。

2、工程目录下,<project>.qsf file打开编辑,拷贝以下两行进去,保存。

set_global_assignment -name STRATIXV_CONFIGURATION_SCHEME "ACTIVE SERIAL X1"

//set_global_assignment -nameENABLE_INIT_DONE_OUTPUT ON

3、将sof文件转换成jic文件,用jic烧写flash,重启。

打开< Convert Programming File tool>

4、使用Nios II CommandShell.bat按如下命令行生成flash烧写文件。

sof2flash --input=AVNIOSII.sof--output=hw.flash --epcq verbose

elf2flash --input=ARV_NEU.elf--output=sw.flash --epcs --after=hw.flash verbose

5、使用如下命令行烧写flash文件到EPCQ。

nios2-flash-programmer --epcs --base=<baseaddress of EPCQ device> hw.flash

nios2-flash-programmer --epcs --base=<baseaddress of EPCQ device> sw.flash

 

注:<base address of EPCQ device>是EPCQ的基地址,在QSYS里或EDS 的system.h都可以查到。

 

 

例如:

nios2-flash-programmer --epcs --base=0x11000hw.flash   =后不要空格。地址和hw.flash后有空格

nios2-flash-programmer --epcs --base=0x11000sw.flash



  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
文件分成两个版本, “合并sofelf生产jic文件脚本.rar”为EP4CE10+EPCS16的版本,适用于小梅哥所有以EP4CE6、EP4CE10 FPGA芯片开发的FPGA开发板。如AC620、AC601、Starter等等 “合并sofelf生产jic文件脚本 - 4ce30.rar”为EP4CE30+EPCS64的版本,适用于小梅哥所有以EP4CE30、EP4CE40 FPGA芯片开发的FPGA开发板。如AC6102 工具说明 本工具实现将Quartus ii编译产生的sof文件和NIOS II EDS编译产生的elf文件合并为jic文件,以方便烧写。 根据测试,本工具使用需要具备以下条件: 1、quartus ii软件版本在13.0及以上 2、quartus ii编译生成的sof文件输出目录为根目录下的output_files文件夹下。很多从老版本修改过来工程sof输出目录在工程根目录,因此需要用户自行修改脚本和cof文件 3、nios ii的软件工程路径为quartus 工程根目录下的software文件夹下(一般都能满足) 使用方法 1、将generate_jic.tcl、generate_jic.sh、generate_jic.cof文件拷贝到你的nios ii软件工程下。 2、在eclipse中选中应用工程,注意是应用工程,不是BSP工程,右键->NIOS II->NIOS command shell。 3、NIOS command shell中输入"./generate_jic.sh"。 (运行完成后,会在Quartus II工程根目录下生成一个myoutput_files的文件夹,同时将generate_jic.tcl、generate_jic.cof文件拷贝到工程根目录下。) 4、在quartus ii中点击Tools -> Tcl Scripts,选中generate_jic.tcl,点击run, (运行成功,会在myoutput_files目录下生成名叫hs_combined.jic的文件) 5、烧写hs_combined.jic到FPGA中,对板卡断电重新上电,新固件就可以开始运行了。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值