0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

FPGA开发板中几种不同的存储器

电子工程师 来源:FPGA设计论坛 作者:FPGA设计论坛 2020-10-09 11:41 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

FPGA开发板上都有几种不同的存储器,比如SDRAM,FLASH,EPCS,还有内部onchip memory,这几种存储器间是如何通信或者构建一个系统该如何搭配他们呢,不少人都问到这个问题。在这里我做个总结以方便初学者的学习。

首先看看在sopc builder中reset address

该如何搭配他们呢,不少人都问到这个问题。在这里我做个总结以方便初学者的学习。

首先看看在sopc builder中reset address和nios IDE中System Library中的program memory(.text)、read-only data memory(.rodata)等这几个地址的关系和作用根据altera 的文档解释如下:

.text :代码执行区

.rodata:只读数据区,存放静态全局变量

.rwdata:可读写数据区,存放可读写变量和指针变量

.bss:未初始化变量区

.text-the actual executable code

.rodata-where read only data used in the execution of the code

.rwdata-where read/write variables and pointers are stored

heap-where dynamically allocated memory is located

stack-where function call parameters and other temporary data

SOPC builder 在Nios II more "cpu_0" setting 标签中的

reset address 决定了flash programmer 的下载存储器(一般是选EPCS controller 或者CFI

flash),并且决定了程序从此处开始启动。exception address 指定的是异常处理地址。当然,程序在运行前所有的数据都是存放在flash(EPCS 或者CFI FLASH)中如果你设计的系统resetaddress 与其它地址的设置不相同,比如reset address 和exceprion address,reset address和IDE 中的program memory(.text)设成不同的存储器,那么系统从reset address 启动时都会从flash 中把相关数据自动下载到相应的地址或者初始化相应地址。通过上面的认识,我们就比较清楚了各存储器间可进行哪些搭配了,reset address 的选择可选EPCS controllor 或者CFI flash;program memory(.text) 可选择onchipmemory,SDRAM,CFI flash 等。如果reset address 为EPCS 则在使用flash progrrammer时程序是下载到EPCS 芯片中。如果reset address 选择CFI flash,则flash progrrammer时程序是下载到CFI flash 芯片中。需要注意的是这里有个特殊情况。例如在开发板上经常有这么一个简单的系统,CPU+

onchip memory+LED_PIO,reset address 选择onchip memory;感觉整个系统都没有用到flash。而且onchip memory 在系统断电后数据就会消失,那么程序代码是存在哪,系统如何从onchip memory 启动听呢?先来看看onchip memory 模块的描述信息:在onchip_memory.v 中有这么一段the_altsyncram.init_file = "onchip_memory.hex",很明显onchip memory 的初始数据来自"onchip_memory.hex",而"onchip_memory.hex"是在NiosIDE 的System Library 中存储器有选择onchip_memory( 至少有一项是选择onchip_memory,如果都不选,就不会生成)时,在build 结束的时候生成的。于是当我们把System Library 中存储器的选择都选择onchip_memory 时,在IDE 中build 结束后所有的程序代码都生成在"onchip_memory.hex"中,再在QII 中全编译一次时,系统通过onchip_memory.v 调用"onchip_memory.hex"从而把所有的程序代码以及配制信息都生成在POF 和SOF 文件中,使用QII 的programmer 直接下载到EPCS 芯片或者FPGA 芯片内程序都会立即执行。因为这里的特殊性就有很多网友询问了,reset address 选择onchipmemory,而IDE 中把代码区都选择SDRAM 调试的时候程序正常运行,再在QII 全编译后下载POF 文件就运行不了呢?问题就是出在这了,在这里可以总结出一点,要让程序在onchip memory 之外的存储器中运行,那么reset address 就必然选EPCS 或者CFI flash,并且要通过flash programmer 把程序下载到flash 中。

责任编辑:YYX

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • FPGA
    +关注

    关注

    1656

    文章

    22304

    浏览量

    630761
  • 存储器
    +关注

    关注

    39

    文章

    7716

    浏览量

    170932
收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    全网征集令:开源开发板命名火热征集中......

    拥抱开源!一起来做FPGA开发板啦!火爆开发|开源FPGA硬件板卡,硬件第一期发布开源FPGA
    的头像 发表于 11-04 08:03 443次阅读
    全网征集令:开源<b class='flag-5'>开发板</b>命名火热征集中......

    基于FPGA开发板TSP的串口通信设计

    本文详细介绍基于Terasic FPGA开发板TSP(又名C5P和OSK)和其板载CP2102N USB-UART桥接芯片的串口通信系统设计与实现。系统采用Verilog HDL编写UART收发控制,通过CP2102N实现
    的头像 发表于 10-15 11:05 4174次阅读
    基于<b class='flag-5'>FPGA</b><b class='flag-5'>开发板</b>TSP的串口通信设计

    基于FPGA开发板DE23-Lite的串口通信设计

    DE23-Lite开发板提供了一个UART通信接口(物理接口是下图的Type C接口),用户能够通过主机与Agilex 3 FPGA进行串口通信。
    的头像 发表于 10-15 10:57 4017次阅读
    基于<b class='flag-5'>FPGA</b><b class='flag-5'>开发板</b>DE23-Lite的串口通信设计

    2025 ALINX入门竞赛类FPGA开发板选型指南

    FPGA 开发板的核心芯片主要分为两大类:纯 FPGA 芯片和 SoC(System on Chip)芯片。
    的头像 发表于 09-17 16:56 1180次阅读
    2025 ALINX入门竞赛类<b class='flag-5'>FPGA</b><b class='flag-5'>开发板</b>选型指南

    RK3506开发板Linux开发板极致性价比之选

    RK3506开发板Linux开发板极致性价比之选瑞芯微RK3506开发板,3核Cortex-A7@1.5GHz+Cortex-M0,Linux+RT-Thread系统支持,128MB超大
    的头像 发表于 09-11 16:26 2888次阅读
    RK3506<b class='flag-5'>开发板</b>Linux<b class='flag-5'>开发板</b>极致性价比之选

    Pico2-ICE FPGA开发板的应用示例

    FPGA 和 MCU 结合的开发板不多,而 Pico2‑ICE 则把小巧、灵活和易上手完美结合。搭载 RP2350 双核 RISC-V MCU + Lattice iCE40UP5K FPGA,配合官方 SDK,你可以一步步跑通
    的头像 发表于 09-06 10:02 683次阅读
    Pico2-ICE <b class='flag-5'>FPGA</b><b class='flag-5'>开发板</b>的应用示例

    Vivado无法选中开发板的常见原因及解决方法

    在使用 AMD Vivado Design Suite 对开发板(Evaluation Board)进行 FPGA 开发时,我们通常希望在创建工程时直接选择开发板,这样 Vivado
    的头像 发表于 07-15 10:19 1431次阅读
    Vivado无法选中<b class='flag-5'>开发板</b>的常见原因及解决方法

    ALINX AMD RFSoC射频开发板选型指南

    ALINX 作为 FPGA 开发板领域领先供应商,RFSoC 系列开发板精准定位于雷达通信、5G 基站、卫星通信、测试测量等对性能要求严苛的高端射频应用。
    的头像 发表于 07-11 10:03 1278次阅读
    ALINX AMD RFSoC射频<b class='flag-5'>开发板</b>选型指南

    有ARM,NPU,FPGA三种核心的开发板 — 米尔安路飞龙派开发板

    最近我发现一个有趣的开发板。这个开发板集合了ARM核心,NPU核心甚至还有FPGA核心。它就是米尔新出的YM90X开发板。它基于安路科技所打造的芯片上海安路信息科技于2021年在上交所
    的头像 发表于 06-13 08:03 1400次阅读
    有ARM,NPU,<b class='flag-5'>FPGA</b>三种核心的<b class='flag-5'>开发板</b> — 米尔安路飞龙派<b class='flag-5'>开发板</b>

    【新品】远距离图传数传模块开发板、蓝牙模块开发板、无线模块开发板

    新品上市图传数传模块开发板蓝牙模块开发板国产无线模块开发板部分型号参与送样文末了解详情↓↓↓EWT611-900NW20S远距离图传数传模块开发板EWT611-900NW20S是一款入
    的头像 发表于 06-12 19:33 924次阅读
    【新品】远距离图传数传模块<b class='flag-5'>开发板</b>、蓝牙模块<b class='flag-5'>开发板</b>、无线模块<b class='flag-5'>开发板</b>

    【干货分享】:开源小巧的FPGA开发板——Icepi Zero

    “IcepiZero是一款经济实惠的FPGA开发板,和树莓派Zero一样的外形尺寸。它搭载LatticeECP525F,可在保持小巧便携尺寸的同时实现强大的设计。它还具有一个HDMI端口,可轻松输出
    的头像 发表于 06-10 08:05 1260次阅读
    【干货分享】:开源小巧的<b class='flag-5'>FPGA</b><b class='flag-5'>开发板</b>——Icepi Zero

    Why FPGA开发板喜欢FMC?

    插槽,使用母座FMC连接。载卡连接引脚与具有可配置IO资源的芯片例如FPGA引脚通过PCB设计连接在一起。FMC子模块:子模块上使用
    的头像 发表于 04-14 09:52 1264次阅读
    Why <b class='flag-5'>FPGA</b><b class='flag-5'>开发板</b>喜欢FMC?

    发布|CAE1200+FPGA开发板

    奇历士联合IDH晶立达推出的CAE1200+FPGA开发板(型号:sICGW5A25A01)是一款高性能、多功能的开发平台,集成了高精度数据采集和灵活的FPGA处理能力,适用于工业通信
    的头像 发表于 02-19 11:50 1088次阅读
    发布|CAE1200+<b class='flag-5'>FPGA</b><b class='flag-5'>开发板</b>

    蓝桥杯物联网开发板硬件组成

    第一节开发板简介物联网设计与开发竞赛实训平台由蓝桥杯大赛技术支持单位北京四梯科技有限公司设计和生产,该产品可用于参加蓝桥杯物联网设计与开发赛道的竞赛实训或院校相关课程的实践教学环节。开发板
    的头像 发表于 12-22 21:30 2196次阅读
    蓝桥杯物联网<b class='flag-5'>开发板</b>硬件组成

    ADS54J64EVM开发板可以配套使用哪些Xilinx FPGA开发板呢?

    个 FMC 连接,该连接也可与领先的FPGA制造商提供的许多开发套件兼容。 那么问题来了,TI的这两个AD开发板到底能不能直接用在Xil
    发表于 12-20 10:18