安路TangDynasty(TD)双分区启动功能(Dual Boot)多分区启动( Multi Boot)-Anlogic-安路社区-FPGA CPLD-ChipDebug

安路TangDynasty(TD)双分区启动功能(Dual Boot)多分区启动( Multi Boot)

对于 EagleEF2/3 系列的 FPGA,在对外部 flash 进行程序加载时,支持 Dual Boot
(双启动模式)和 Multi Boot(多启动模式)。
双启动模式是指在
SPI FLASH 中存放了两套 FPGA 位流,上电后 FPGA 首先加载
Primary 位流,如果 Primary 位流出错导致加载失败,则会根据 Golden Address(跳转地
址)去加载
Golden 位流。双启动模式下, 数据空间分布如下图所示:

20230926111647552-image

Eagle 系列 FPGA 在默认情况下就支持双启动模式,即在上电后会默认从 FLASH
0 地址加载程序,如果 0 地址开始的位流被破坏导致 FPGA 程序加载失败,则 FPGA
0X0D0000 地址读取跳转地址, 然后从指定的跳转地址去加载位流。

使用双启动模式的步骤为:
1. Download 界面中, 选择下载模式为 Dual Boot;

20230926111715907-image

2. 通过 Add 按钮添加需要下载到 FLASH 中的两个位流文件;

20230926111728957-image

3. 设置 Default 位流(Primary 地址段)和 Golden 位流(Golden 地址段);

20230926111741205-image

4. 设置 Golden 位流存放的起始地址。注意, Golden 存放地址只能大于 0X0D0000
默认为:
0X0E0000

20230926111752716-image

5. 点击 Run 下载位流。

多启动模式是指用户可以在 SPI FLASH 中存放两套或者多套 FPGA 位流,上电后
FPGA 首先加载 Primary 位流,然后在 Primary 位流的 FPGA 代码中可以控制 FPGA
指定地址加载位流。多启动模式下,数据空间分布如下图所示:

20230926111856550-image

使用多启动模式前,用户需要在代码中调用以下 IP 单元:
EG_LOGIC_MBOOT #(“DYNAMIC”,8’h00) mboot(rebootn, dynamic_addr);
其中, dynamic_addr 8 FLASH 地址,是 24 FLASH 地址的高 8 位,在设置
好地址后,通过给
rebootn 一个低脉冲,即可实现从 dynamic_addr 指定地址重新加载
FPGA 程序。
TD Download 界面中,需设置下载模式为 MULTI BOOT,并指定用于跳转的
bit 文件的 Start Address, 该地址需和 dynamic_addr 相同。

20230926111912449-image

 

请登录后发表评论

    没有回复内容