除通过外部多功能IO来选择之外,易灵思通过内部重配置实现远程更新操作也非常简单。
(1)使能内部重配置接口
1、在interface Designer中选择Device Setting ->Configuration
2、打开Enable Internal Reconfiguration Interface
3、生成例化接口添加到top文件。
![图片[1]-易灵思内部重配置实现远程更新 -v1-易灵思(Elitestek)社区-FPGA CPLD-ChipDebug](http://chipdebug.com/wp-content/uploads/2024/10/20241019141244745-101729318364.png?v=1729318365)
关于重配置接口就以下几个信号
input cfg_ERROR,: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](http://chipdebug.com/wp-content/uploads/2024/10/20241019141246972-91729318366.png?v=1729318366)
(2)在CBSEL为00的地方添加golden image,其余添加APP_image即可以,地址如果不给定,会自动分配。填写输出文件,点击apply生成即可。
![图片[3]-易灵思内部重配置实现远程更新 -v1-易灵思(Elitestek)社区-FPGA CPLD-ChipDebug](http://chipdebug.com/wp-content/uploads/2024/10/20241019141247646-31729318367.png?v=1729318367)
更详细的信号请参考易灵思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](http://chipdebug.com/wp-content/uploads/2024/10/20241019141248276-11729318368.png?v=1729318368)
下面提供一个demo,CONFIG只需要拉高一个时钟周期即可
链接:https://pan.baidu.com/s/1V2BdogNYOw0kYWH7F60Dkg
提取码:1234





没有回复内容