易灵思内部重配置实现远程更新 -v1-易灵思(Elitestek)社区-FPGA CPLD-ChipDebug

易灵思内部重配置实现远程更新 -v1

除通过外部多功能IO来选择之外,易灵思通过内部重配置实现远程更新操作也非常简单。

 

(1)使能内部重配置接口

1、在interface Designer中选择Device Setting ->Configuration

2、打开Enable Internal Reconfiguration Interface

3、生成例化接口添加到top文件。

图片[1]-易灵思内部重配置实现远程更新 -v1-易灵思(Elitestek)社区-FPGA CPLD-ChipDebug

关于重配置接口就以下几个信号

  • input cfg_ERROR,
  • output [1:0] cfg_CBSEL,
  • output cfg_CONFIG,
  • output cfg_ENA

其中_CBSEL就是选择那个image的。ENA拉高就可以启动相应image加载。

 

(2)重配置过程操作

1、通过_CBSEL选择相应的image;

2、拉高_ENA;

3、使能_CONFIG为高;

4、如果_ERROR为0重配置成功。

 

 

(3)组合image文件的生成

1、在Efinity Programmer中,点击combine multiple Image Files项。

图片[2]-易灵思内部重配置实现远程更新 -v1-易灵思(Elitestek)社区-FPGA CPLD-ChipDebug

(2)在CBSEL为00的地方添加golden image,其余添加APP_image即可以,地址如果不给定,会自动分配。填写输出文件,点击apply生成即可。

图片[3]-易灵思内部重配置实现远程更新 -v1-易灵思(Elitestek)社区-FPGA CPLD-ChipDebug

 

更详细的信号请参考易灵思AN010.

 

 

 

1、通过内部重配置远程更新也要注意在上电时外部CSEL管脚的状态,如果没有指向goden image或者app image,那么会要等待一段时间,文档说应该会加载6次,大概41s。

2、下面是重配置流程图。

(1)上电之后,CRESET_N上升沿触发配置过程。

(2)golden image加载完成之后进入user mode;

(3)用户启动重配置触发,配置新image;

(4)如果配置成功则进入user mode,如果没有配置成功则会加载6次;

(5)6次之后_ERROR拉高,并再次加载golden image;

(6)如果不想反复以上操作可以通过检测_ERROR来禁止下次的New image配置触发。

图片[4]-易灵思内部重配置实现远程更新 -v1-易灵思(Elitestek)社区-FPGA CPLD-ChipDebug

 

下面提供一个demo,CONFIG只需要拉高一个时钟周期即可

链接:https://pan.baidu.com/s/1V2BdogNYOw0kYWH7F60Dkg

提取码:1234

 

 

 

请登录后发表评论

    没有回复内容