基于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文件即可。

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

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

相关推荐
mcupro3 分钟前
TQTT_KU5P开发板教程---在Windows下XCKU5P+AD9361测试
嵌入式硬件·fpga开发·模块测试
青桔柠薯片21 分钟前
IMX6ULL 时钟、定时器与中断系统:从晶体振荡器到GIC的硬件机制分析
嵌入式硬件·imx6ull
辰哥单片机设计32 分钟前
STM32智能家用垃圾桶(升级版)
stm32·单片机·嵌入式硬件
qq_1508419939 分钟前
浅析光模块固件之PC-MCU-Driver构架下的二级I2C从机的透传编程(再续)
单片机·嵌入式硬件
惶了个恐1 小时前
嵌入式硬件第六弹——ARM(3)
arm开发·stm32·嵌入式硬件·arm
学工科的皮皮志^_^1 小时前
RS485学习
经验分享·笔记·单片机·嵌入式硬件·学习
wearegogog1231 小时前
基于STM32的数据采集+心率检测仪设计
stm32·单片机·嵌入式硬件
没有医保李先生1 小时前
mcu中cpu通用和特殊寄存器
单片机·嵌入式硬件
C^h1 小时前
RT thread中断管理学习记录
单片机·嵌入式硬件·学习
senijusene1 小时前
从启动到中断:基于i.MX6UL的ARM Cortex-A7中断系统详解
arm开发·嵌入式硬件