这里主要是针对EP3C系列FPGA的Nios程序固化到EPCS中的方法做简要说明。硬件SOPC1、要固化程序到EPCS,在SOPC Builder中首先需要添加EPCS_Controller核,此外,CPU的reset vector设置为EPCS_Controller,Exception Vector一般设置为SDRAM即可。2、生成该nios_cpu。对于EP3C系列的FPGA来说,在生成cpu后,会出现与EPCS_Controller相关的4根引线(如图),

这在之前的EP2C等早期系列的FPGA中是没有的,因为系统已经默认完成了相应的设置,而EP3C是需要自己来对这些引脚设置的,

这一点尤为要注意,下面就来具体说明一下。这4根信号线分别为(EP3C10F256):EPCS_DATA0   ->  H2ASDO                 ->  C1nCS0,(Flash_nCE)  ->  D2DCLK                ->  H1在对这4根引线进行引脚分配的时候,要在Device中将这些双功能引脚功能都设置为regular I/O Pin,否则会出现错误:比如:Error:Can't place multiple pins assigned to pin location PIN_H2                        ......对这些引脚做完这些设置后,即可进行编译、下载了(引脚分配如下图)。

另外,在使用Quartus II 10.0高版本编译Cyclone IV器件的时候,可能在Device->Dual Purpose里面的DCLK等引脚没有

USE AS Regular I/O选项,用户就无法给DCLK这些引脚指定Pin Assignment。这时的解决办法是:打开工程的.qsf文件,加上以下几句(若存在对这4个引脚的其它类似配置信息时,先删除):set_global_assignment -name RESERVED_FLASH_NCE_AFTER_CONFIGURATION "USE AS REGULAR IO"set_global_assignment -name RESERVED_DATA0_AFTER_CONFIGURATION "USE AS REGULAR IO"set_global_assignment -name RESERVED_DATA1_AFTER_CONFIGURATION "USE AS REGULAR IO"set_global_assignment -name RESERVED_DCLK_AFTER_CONFIGURATION "USE AS REGULAR IO"保存并编译,就可以正确读写EPCS了。软件Nios1、在nios中建立相应工程,并编译。2、编译完成之后,打开FLASH Programmer。勾上Program FPGA configuration data into hardware-image region of flash memory(将FPGA的配置文件写入Flash(EPCS)),并设置对应的.sof文件Hardware Image设置为Custom,Memory设置为EPCS_Controller,offset为0x0,不勾选Program a file into flash memory(可将二进制文件写入Flash)。完成后如图所示:

以上所有设置完成后,Apply,然后Program Flash即可。烧写成功后,会有如下信息:

#!/bin/sh## This file was automatically generated by the Nios II IDE Flash Programmer.## It will be overwritten when the flash programmer options change.#

cd D:/MySoftwares/QuartusII/Mywork/sopc_project/led_test/software/led_test/Debug

# Creating .flash file for the FPGA configuration"$SOPC_KIT_NIOS2/bin/sof2flash" --epcs --input="D:/MySoftwares/QuartusII/Mywork/sopc_project/led_test/led_test.sof" --output="led_test.flash" Info: *******************************************************************Info: Running Quartus II Convert_programming_fileInfo: Command: quartus_cpf --no_banner --convert --device=EPCS128 --option=led_test.opt D:/MySoftwares/QuartusII/Mywork/sopc_project/led_test/led_test.sof led_test.pofInfo: Quartus II Convert_programming_file was successful. 0 errors, 0 warnings    Info: Peak virtual memory: 70 megabytes    Info: Processing ended: Wed Mar 30 12:34:48 2011    Info: Elapsed time: 00:00:02    Info: Total CPU time (on all processors): 00:00:02Info: *******************************************************************Info: Running Quartus II Convert_programming_fileInfo: Command: quartus_cpf --no_banner --convert led_test.pof led_test.rpdInfo: Quartus II Convert_programming_file was successful. 0 errors, 0 warnings    Info: Peak virtual memory: 68 megabytes    Info: Processing ended: Wed Mar 30 12:34:51 2011    Info: Elapsed time: 00:00:03    Info: Total CPU time (on all processors): 00:00:02

# Programming flash with the FPGA configuration"$SOPC_KIT_NIOS2/bin/nios2-flash-programmer" --epcs --base=0x01001800 --sidp=0x01002018 --id=1794073991 --timestamp=1301451768 --instance=0 "led_test.flash"Using cable "USB-Blaster [USB-0]", device 1, instance 0x00Resetting and pausing target processor: OKReading System ID at address 0x01002018: verified

: Checksumming existing contents

00000000      : Verifying existing contents

00010000      : Verifying existing contents

00020000      : Verifying existing contents

00000000      : Reading existing contents

00010000      : Reading existing contents

00020000      : Reading existing contents

Checksummed/read 54kB in 1.4s

00000000 ( 0%): Erasing

00010000 (33%): Erasing

00020000 (66%): Erasing

Erased 192kB in 1.9s (101.0kB/s)

00000000 ( 0%): Programming

00010000 (33%): Programming

00020000 (66%): Programming

Programmed 139KB +53KB in 3.3s (58.1KB/s)                  Did not attempt to verify device contentsLeaving target processor paused

# Creating .flash file for the project"$SOPC_KIT_NIOS2/bin/elf2flash" --epcs --after="led_test.flash" --input="led_test.elf" --output="epcs_controller.flash"

# Programming flash with the project"$SOPC_KIT_NIOS2/bin/nios2-flash-programmer" --epcs --base=0x01001800 --sidp=0x01002018 --id=1794073991 --timestamp=1301451768 --instance=0 "epcs_controller.flash"Using cable "USB-Blaster [USB-0]", device 1, instance 0x00Resetting and pausing target processor: OKReading System ID at address 0x01002018: verified

: Checksumming existing contents

00020000      : Verifying existing contents

00020000      : Reading existing contents

Checksummed/read 42kB in 1.1s

00020000 ( 0%): Erasing

Erased 64kB in 0.6s (106.6kB/s)

00020000 ( 0%): Programming

Programmed 23KB +41KB in 0.7s (91.4KB/s)                   Did not attempt to verify device contentsLeaving target processor paused

烧写完成,Reset或者断电重启,烧写在EPCS中的程序即开始运行了。

nios 双核 烧录_Nios程序烧写到EPCS方法相关推荐

  1. nios 双核 烧录_FPGA烧写NIOS ii程序至FLASH(epcs)中

    硬件平台:黑金开发板 软件平台:quartus 11.0  NIOS II 11.0IDE FPGA芯片:EP4CE6F17C8N 1.      新建工程,bdf文件,这些不做具体说明了,网络资料详 ...

  2. 32通过rs485烧写程序_28027芯片sci程序烧写问题请教

    需求:希望用TI官方提供的"f28027_flash_kernel"过通sci串口烧录程序 如下所示bootload与pc烧录软件都是TI官方提供的. pc烧录软件: D:tico ...

  3. 51单片机程序烧写说明

    程序烧写说明 USBASP下载器使用方法 启动下载软件PROGISP1.6.7 烧录步骤: 设置编程器及接口,编程器选择USBASP,接口为USB(如图) 选择芯片,在选择芯片下拉列表可以选择正在使用 ...

  4. TI DSP TMS320C66x学习笔记之SPI Nor Flash多核程序烧写

    烧写工具链接: https://pan.baidu.com/s/1em4jWjbskpMmNd1uzscjjA 提取码: 82qg 经过一段时间的研究终于把TMS320C6657单核和双核的SPI N ...

  5. 主板EC程序烧写异常致无法点亮修复经验

    主板型号:Gigabyte AB350M-Gaming3 官网上明确写着支持R5 5500,但按照如下步骤实践下来实际是不支持的 升级biosF31到F40版本的注意事项: 步骤: 1 使用Q-Fla ...

  6. 在 Vivado 将程序烧写固化到 flash

    程序的固化 什么是程序的固化? 通常对FPGA下载程序时,会采用JTAG口下载,完成好HDL设计,并且验证无误后,对设计文件进行综合,布局布线以及生成比特流文件,而FPGA开发板要想工作,需要将该文件 ...

  7. c语言每次堆的变化是1k,DSPXC语言+程序烧写讲述.ppt

    DSPXC语言程序烧写讲述 * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * ...

  8. STM32 KEIL软件设置程序烧写起始地址选择

    转自  https://blog.csdn.net/alfredseng/article/details/53021583 STM32系列的mcu,这儿以cortex-M4为例,我们在线调试时,一般会 ...

  9. CCS使用教程04:程序烧写与仿真

    目录 01  CCS的介绍.下载与安装 1  CCS的介绍 2  下载 3  安装 02  创建一个CCS工程 1  工作空间 2  创建一个新的CCS工程 3  编译与生成 03  工程导入 1  ...

  10. NXP系列芯片程序烧写方法

    NXP (恩智浦半导体)是一家新近独立的半导体公司,由飞利浦公司创立,已拥有五十年的悠久历史,主要提供工程师与设计人员各种半导体产品与软件,为移动通信.消费类电子.安全应用.非接触式付费与连线,以及车 ...

最新文章

  1. Java多线程1:进程与线程
  2. leetcode算法题--Minimum Number of Arrows to Burst Balloons
  3. 网络营销方案之巧用电子书营销
  4. Oracle基础知识-Oracle不同的启动关闭方式
  5. python mysql 时间比较大小_python时间函数与mysql时间函数转换
  6. 如何强制.NET应用程序以管理员身份运行?
  7. L1-030 一帮一 (15 分)
  8. 基于麻雀搜索算法优化概率神经网络PNN的分类预测-附代码
  9. Linux操作系统搭建本地源
  10. Google的“神秘链接”
  11. 红蜘蛛10013端口被占用
  12. THINKPHP5(TP5)新手入门必看教程
  13. python项目-Python 的练手项目有哪些值得推荐?
  14. G.726音频编解码原理介绍
  15. 悲观者往往正确,乐观者往往成功
  16. arthas-dashboard
  17. h3c登录交换机的配置方法
  18. 动画中的“表现手法”和“表现方式”分别是什么?今天艺点动画大家庭来给你唠嗑唠嗑
  19. Python3,掌握这20个小技巧,小菜鸡瞬间变成老码农~
  20. 字节跳动安全AI挑战赛总结

热门文章

  1. 文件共享服务器如何提高网速,局域网共享文件传输速度很慢怎么办
  2. RAID - 提升IO性能及数据安全
  3. 英寸和厘米的交互python_Python新手尝试编写厘米到英寸的代码,反之亦然
  4. 页面跳转报错This request has been blocked; the content must be served over HTTPS
  5. 电容器的 ESR 参数
  6. 网页设计配色应用实例剖析——蓝色系
  7. Intellij IDEA--配色方案/主题/风格/样式--自定义/配置
  8. 【007】Excel宏编程相关封装模块(筛选、复制、黏贴)_001_#VBA
  9. python sorted怎么排序_Python sorted排序方法怎么用
  10. 36.42. schemata