基于XC7A35T的DDR3 IP核使用

测试环境: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文件即可。

下载的时候要注意勾选格式转换,

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

相关推荐
于小猿Sup5 小时前
VMware在Ubuntu22.04驱动Livox Mid360s
linux·c++·嵌入式硬件·自动驾驶
chao1898447 小时前
STM32 HAL库驱动AT24C02 EEPROM例程
stm32·单片机·嵌入式硬件
小眼睛FPGA8 小时前
【紫光HiYou开源入门轻量级PCIE开发板PG2L25G】实验例程1-基于紫光FPGA 的LED 流水灯
fpga开发
不会武功的火柴8 小时前
SystemVerilog语法(8)-有限状态机(FSM)
嵌入式硬件·fpga开发·自动化·ic验证·rtl·uvm方法学
Kent Gu10 小时前
Lattice FPGA选型
fpga开发
嵌入式小站11 小时前
STM32 零基础可移植教程 05:按键消抖,为什么按一次会触发好几次
chrome·stm32·嵌入式硬件
czhaii11 小时前
跟我动手学FX系列PLC GX2环境
嵌入式硬件
2zcode13 小时前
基于STM32的智能扫地机器人设计与实现
stm32·嵌入式硬件·机器人
Terasic友晶科技13 小时前
答疑解惑|为DE25-Nano开发板配置Linux kernel时.config文件没有起作用是什么原因?
linux·服务器·fpga开发·linux kernel·de25-nano
jllllyuz13 小时前
单相并网逆变器控制代码实现(STM32版)
stm32·单片机·嵌入式硬件