1821|1

80

帖子

0

TA的资源

一粒金砂(高级)

楼主
 

【中科亿海微EQ6HL45开发平台测评体验】+08.ICAP测试(zmj) [复制链接]

 

【中科亿海微EQ6HL45开发平台测评体验】+08.ICAP测试(zmj)

 

中科亿海微的FPGA重配置功能十分强大。那么重配置功能可以应对哪些场景?如何实现呢?

在实际工程应用场景中可能要实现几个不同功能的码流,如果采用几片FPGA+Flash的方式势必会增加成本并且会使得系统变得更加复杂,而IP核ICAP正是解决这一问题的方式之一。具体是将不同的码流下载到不同的地址,利用ICAP向配置模块发送IPROG命令切换到不同的码流地址,执行其相应的功能。FPGA的重配置操作可由FPGA外部的处理器、微控制器、计算机和按键等“智能”终端触发。

在应用设计中,只需在每个应用程序中例化一个IP核ICAP来实现相关命令序列即可实现Multi-Boot特性。

 

1. ICAP概述

实现多个功能的程序依据不同的地址分配统一固化到QSPI-FLASH中,当外部指令启动重配置功能时,依据设定的地址检索并加载对应的程序。

//------ICAP手册

ICAP_User_Guide.pdf (511.49 KB, 下载次数: 2)

 

1.1 IP核ICAP端口说明

IP核ICAP直接调用即可,无额外的参数设置。

ICAP模块端口说明:

//------ICAP例化代码
    icap_0  u_icap_0(
    .CLK        (clk                    ),//时钟信号
    .CE         (icap_ce                ),//模块选择信号
    .WRITE      (icap_wr_rd             ),//读写信号
    .I          (icap_din               ),//要输入的时钟数据
    .O          (icap_dout              ),//要输出的时钟数据
    .BUSY       (icap_busy              ),//忙信号
    .ICAP_ENA   (1'b1                   ) //模块使能信号
    );
//------指定multi_addr和gold_addr
localparam    multi_addr = 32'h100000                   ,
              gold_addr  = 32'h500000                   ;

 

1.2 IP核ICAP接口协议

IP核ICAP接口协议如图所示:(工程代码中使用的是3byte寻址模式,0x5566)

1.3 关于multi_addr和gold_addr的说明

在IP核ICAP中,multi_addr和gold_addr这两个地址的功能十分重要,它们是FPGA重配置功能的关键参数。

将原始码流和重配置码流统一下载烧录到QSPI-FLASH中。原始码流的地址和重配置码流的地址是如何分配以及与时序中的Multi-Boot地址和Golden-Boot地址之间是什么关系呢?下面详细说明。

//------Multi-Boot地址和Golden-Boot地址说明:
a.在原始工程中例化IP核ICAP,代码中指定multi-addr为0x100_000和golden-addr为0x500_000。
b.烧录时原始码流地址为0x000000,重配置码流地址为0x500000。
c.原始码流里面包含icap功能,上电后会首先运行此码流,在下载界面中它的地址可以由用户来指定。
d.当执行ICAP功能后,首先检索multi-addr地址。如果该地址拥有有效的码流则会执行重配置码流的功能,此时不会再去寻找Golden地址;如果该地址无有效码流则会跳转并检索golden-addr地址。对于不同开发者来讲,理论上可以在下载界面中加载多个码流利用icap进行跳转。
//------从码流运行角度讲
a.在此次功能测试中,烧录时的重配置码流地址与代码中golden-addr一致。
b.当ICAP功能启动后会先跳转到multi-addr,此时找不到码流会等待一段时间跳出,之后会跳转到Golden-addr继续寻找码流,最后启动执行重配置码流。
//------从代码功能角度分析
a.原始工程实现了LED流水灯功能,按键KEY1为复位,按键KEY4为重配置启动按钮。
b.当按下按键KEY4后,重配置工程实现了LED呼吸灯,并且扩展接口点亮了彩条灯。

 

2. 工程文件

2.1 功能设计

FPGA工程包括原始工程(包含IP核ICAP)和重配置工程。

  • 原始工程功能设计:实现LED流水灯功能,按键KEY1为复位,按键KEY4为重配置启动按钮。

  • 重配置工程功能设计:使用之前的LED呼吸灯工程,添加了彩条灯功能。

详细工程参考附件。

//------原始工程led_prj_v1

led_prj_v1.zip (1.6 MB, 下载次数: 1)

//------重配置工程rtc_prj

rtc_prj.zip (8.69 MB, 下载次数: 1)

 

2.2 工程框架

原始工程的工程框架如图所示:

 

3. 测试

IP核ICAP的重配置功能需要固化到QSPI-FLASH中,烧录时Flash选项需要勾选启动“Mulboot”,添加好原始工程码流和重配置工程码流后,点击start开始烧录。

烧录完成后重启开发板,通过KEY4可以启动ICAP完成FPGA的重配置功能。

//------烧录配置

 

 

//------功能视频

//------功能视频说明:
a.原始工程实现了LED流水灯功能,按键KEY1为复位,按键KEY4为重配置启动按钮。
b.当按下按键KEY4后,重配置工程实现了LED呼吸灯,并且扩展接口点亮了彩条灯。

 

06_ICAP

 

//------end

 

点赞 关注
 
 

回复
举报

80

帖子

0

TA的资源

一粒金砂(高级)

沙发
 
补充一点:ICAP的重配置功能启动后,FPGA加载重配置码流需要一小段时间。
 
 
 

回复
您需要登录后才可以回帖 登录 | 注册

随便看看
查找数据手册?

EEWorld Datasheet 技术支持

相关文章 更多>>
关闭
站长推荐上一条 1/10 下一条

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 国产芯 安防电子 汽车电子 手机便携 工业控制 家用电子 医疗电子 测试测量 网络通信 物联网

北京市海淀区中关村大街18号B座15层1530室 电话:(010)82350740 邮编:100190

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved
快速回复 返回顶部 返回列表