测试环境:AX7035B开发板
block设计如下图所示

这个框图中其它的东西暂且不提,主要实现的功能是能让程序跑在DDR上面,毕竟这个片子的资源太少了,要是跑多一些的功能资源不够,核心IP是红色框图中的部分,必须要添加一个QSPI的接口,这样才能让boot程序显式的从flash中将代码搬到DDR中,具体IP的配置可以参考各开发板的教材,这里有一个注意事项是mig的sys_rst引脚的处理,我一开始是将它和aresetn连接在了一起,程序跑不起来,后来改成上图的形式后可以运行,mig的时钟使用的是内部pll产生的200M,其他的没有特殊点。
剩下的是vitis程序的开发,如果只运行在local memery上,直接开发应用程序即可,如果要运行在DDR上,还需要开发boot loader程序,详细的步骤可参考https://blog.csdn.net/ZLK1214/article/details/115875025。对于boot loader没有特殊点,只需要按照参考文章建立工程,更改应用程序的存储地址即可,对于应用程序,因为只需要下载elf文件即可,更改Generate Linker Script,只需要将code部分更改到DDR即可,当然其他部分也可以改到DDR,都运行在DDR上。


刚开是我更换成了DDR,生成download.bit的时候提示没有对应的地址,以为有问题,实际上没有必要,只需要编译得到elf文件即可。
下载的时候要注意勾选格式转换,

下载完成后,掉电重启即可。

