除通过外部多功能IO来选择之外,易灵思通过内部重配置实现远程更新操作也非常简单。
(1)使能内部重配置接口
1、在interface Designer中选择Device Setting ->Configuration
2、打开Enable Internal Reconfiguration Interface
3、生成例化接口添加到top文件。
关于重配置接口就以下几个信号
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)在CBSEL为00的地方添加golden image,其余添加APP_image即可以,地址如果不给定,会自动分配。填写输出文件,点击apply生成即可。
更详细的信号请参考易灵思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配置触发。
下面提供一个demo,CONFIG只需要拉高一个时钟周期即可
链接:https://pan.baidu.com/s/1V2BdogNYOw0kYWH7F60Dkg
提取码:1234
没有回复内容