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

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

3天内不再提示

如何使用ICAP在Spartan-3AN FPGA内运行多重启动应用

XILINX开发者社区 来源:XILINX开发者社区 作者:XILINX开发者社区 2021-06-25 17:25 次阅读

(UG332) 即为《Spartan-3 系列配置用户指南》

在此用户指南中,并未涵盖有关从 SPI 闪存启动时,如何使用内部配置访问端口 (ICAP) 来支持在 Spartan-3AN FPGA 内运行多重启动应用的用例。

我们将在本篇博文中讲解此用例。

为何需要 ICAP?

对于非 ICAP 设计,使用“主 SPI 模式 (Master SPI Mode)”时,多重启动功能是无效的。

要启用多重启动 (Multiboot) 功能,需要在设计中插入 ICAP。

本文随附了 ICAP 代码以供参考(扫码即可下载)。

您还可参阅 XAPP468 和 XAPP483 以获取 ICAP 功能示例,然后根据您的设计对 ICAP 进行相应的修改。

添加 ICAP 前:

在设计中插入 ICAP 之前,请先执行下列步骤:

1) 计算 Next(即下一个配置镜像)配置地址。

例如,您的闪存中可能需要存储 2 个镜像。

首先生成包含单一 BIT 文件的 MCS 文件。这样即可得到 PRM 文件,其中包含 BIT 文件的 END 地址。据此,您即可确定 Next 配置地址。

2) 在 MOD_REG Bitstream Settings 中,确保“NEW MODE”设置为“0”。否则将不会发生回退 (Fallback)。

3) 在黄金 (Golden) 镜像的 BIT 文件中启用以下比特流设置 (Bitstream settings)。

ICAP_Enable:Yes

4) 在黄金镜像和多重启动 BIT 文件中启用以下比特流设置:

Reset_on_err:Yes

如何添加 ICAP:

遵循以下步骤,将 ICAP 添加到您的设计中:

1) 在黄金设计中,将 Spartan3AN 器件的 ICAP 原语例化,并编写状态机以控制跳转至更新/多重启动 (Update/Multiboot) 镜像时的 ICAP 操作。或者,也可以参阅本文随附的 ICAP FSM 代码,对其进行定制以满足您的黄金设计的需求。

2) 插入 ICAP 后,请在“ICAP 原语 (ICAP Primitive)”中输入 Next 配置地址

3) 完成此操作后,请生成包含黄金镜像和多重启动镜像的 MCS 文件,并执行多重启动。

责任编辑:haq

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

    关注

    30

    文章

    4556

    浏览量

    66812

原文标题:开发者分享 | 使用 ICAP 在 SPI 模式下执行 Spartan-3AN 多重启动

文章出处:【微信号:gh_2d1c7e2d540e,微信公众号:XILINX开发者社区】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    AMD推出全新Spartan UltraScale+ FPGA系列

    AMD 已经拥有 Zynq UltraScale+ 和 Artix UltraScale+ 系列,而 Spartan UltraScale+ FPGA 系列的推出使其不断现代化。
    发表于 03-18 10:40 72次阅读
    AMD推出全新<b class='flag-5'>Spartan</b> UltraScale+ <b class='flag-5'>FPGA</b>系列

    为嵌入式应用选择AMD Spartan UltraScale+FPGA

    全新 AMD Spartan UltraScale+ FPGA 系列在价格、功耗、功能和尺寸之间取得了良好的平衡。了解该系列器件如何帮助设计人员以低成本推动 I/O 密集型应用产品快速上市。
    的头像 发表于 03-06 11:31 224次阅读
    为嵌入式应用选择AMD <b class='flag-5'>Spartan</b> UltraScale+<b class='flag-5'>FPGA</b>

    AMD推出全新Spartan UltraScale+ FPGA系列

    AMD日前正式推出了全新的Spartan UltraScale+ FPGA系列,该系列作为AMD广泛的成本优化型FPGA和自适应SoC产品组合的最新成员,专为边缘端各种I/O密集型应用设计。
    的头像 发表于 03-06 11:09 317次阅读

    XMC4300从控制器与Spartan-6 FPGA兼容吗?

    兼容吗? 通信协议: XMC4300 从属控制器和 Spartan-6 FPGA 之间建立通信的最合适通信协议是什么? 考虑到我们的 PC EtherCAT 软件作为 EtherCAT 主站
    发表于 03-06 07:47

    linux重启命令有哪些

    。 reboot命令:reboot命令用于立即重启系统。可以在终端中运行以下命令来执行重启操作: reboot 这个命令会立即关闭系统并重新启动。需要注意的是,在执行此命令之前,请确保
    的头像 发表于 11-17 09:49 1153次阅读

    电脑不启动,机箱电源灯和风扇反复亮几秒,停几秒,偶尔又能进系统正常运行一次。是主板上什么元件故障?

    冷开机时可以成功开机进系统正常使用,重启动还可以正常进操作系统,但此时如果关机再开机必定不能启动。这种现象,最可能是主板上什么元件出了问题?
    发表于 09-25 21:37

    一种嵌入式Linux系统多重备份与恢复机制

    出现故障,触发 watchdog 机制重启,激活自动备份与恢复机制,保证系统任何时候都有一个可用的系统运行。该方法S5PV210处理器和Linux平台下进行模拟实验,得到很好的验证。当故障出现时,均能保证系统的正常
    发表于 09-20 07:01

    Spartan-6到Spartan-7 FPGA的迁移过程

    电子发烧友网站提供《从Spartan-6到Spartan-7 FPGA的迁移过程.pdf》资料免费下载
    发表于 09-14 15:15 4次下载
    从<b class='flag-5'>Spartan</b>-6到<b class='flag-5'>Spartan</b>-7 <b class='flag-5'>FPGA</b>的迁移过程

    如何实现stm32单片机每次接上电源就进行一次重启动

    如何实现stm32单片机每次接上电源就进行一次重启动? 在嵌入式系统中,单片机的重启有时是十分必要的,它可以解决一些系统启动过程中的问题、恢复系统的正常运行、使系统更加稳定等。 然而,
    的头像 发表于 09-14 14:22 2622次阅读

    Spartan-7 FPGA满足对成本敏感的市场要求

    电子发烧友网站提供《Spartan-7 FPGA满足对成本敏感的市场要求.pdf》资料免费下载
    发表于 09-13 10:33 1次下载
    <b class='flag-5'>Spartan</b>-7 <b class='flag-5'>FPGA</b>满足对成本敏感的市场要求

    AMD推出Spartan UltraScale+ FPGA,可简化FPGA开发体验

    简化设计流程:Spartan UltraScale+ FPGA 将为 AMD Vivado 和Vitis 工具所支持,这些工具可提供简化的FPGA 开发体验,从而提升生产力并助力客户更快地将产品推向市场。
    发表于 07-07 10:30 527次阅读

    CPU低温重启问题的定位和解决

    某产品研发阶段在做四角实验的过程中,发现单板在低温下出现反复重启动的问题,经过反复的实验和定位,发现是核电源DC-DC芯片使用的液态电解电容,在低温下,内部液体固化。导致电容ESR降低,进而使DC-DC输出的纹波变大,出现单板反复重启动的问题。
    发表于 06-25 16:57 798次阅读
    CPU低温<b class='flag-5'>重启</b>问题的定位和解决

    Spartan 6 FPGA上从头开始实现全加器

    电子发烧友网站提供《在Spartan 6 FPGA上从头开始实现全加器.zip》资料免费下载
    发表于 06-15 10:13 0次下载
    在<b class='flag-5'>Spartan</b> 6 <b class='flag-5'>FPGA</b>上从头开始实现全加器

    多片FPGA原型平台中的启动同步研究

    假如给定FPGA内的时钟没有正确运行,那么我们多片FPGA系统的整体将不能同时启动,这将有可能是致命的。
    发表于 05-22 09:21 145次阅读
    多片<b class='flag-5'>FPGA</b>原型平台中的<b class='flag-5'>启动</b>同步研究

    试问谁家MCU能有三重启动保障?

    i.MXRT 系列内部均没有非易失性存储器,所以需要配置一个外部存储器存放启动代码,这个外部存储器我们也叫做启动设备。i.MXRT 支持的启动设备类型非常多,并且因为启动设备受板级环境
    的头像 发表于 05-19 11:03 338次阅读
    试问谁家MCU能有三<b class='flag-5'>重启动</b>保障?