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

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

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

相关推荐
一路往蓝-Anbo14 小时前
第 1 篇:对象池模式 (Object Pool) —— 裸机下的动态内存革命
jvm·数据库·stm32·单片机·嵌入式硬件·网络协议·tcp/ip
飞凌嵌入式14 小时前
1块集成了4核Cortex-A7高性能CPU、1颗RISC-V MCU、多种高速总线、还兼容树莓派的T153低成本开发板
linux·arm开发·嵌入式硬件·risc-v
大神与小汪14 小时前
STM32WB55蓝牙广播数据
stm32·单片机·嵌入式硬件
碎碎思16 小时前
KRS(Kratos Robotics Stack):让 Zynq / FPGA 机器人开发真正“跑”起来
fpga开发·机器人
Funing716 小时前
BUCK降压电路如何同时兼顾效率和纹波?——12V 转 3.3V 供电的工程解法
嵌入式硬件·电路·开关电源·buck降压
秋深枫叶红16 小时前
嵌入式第五十一篇——IMX6ULL中断和EPIT定时器
单片机·嵌入式硬件
【赫兹威客】浩哥16 小时前
【赫兹威客】Arduino安装教程
stm32·单片机·嵌入式硬件
阿呀呀呀17 小时前
ESP32复位电路分析
单片机·嵌入式硬件
华清远见IT开放实验室17 小时前
【课程升级】STM32U5体系化课程深度升级!全103集,覆盖裸机开发+TouchGFX图形界面+智能手表项目,从入门到实战!
stm32·单片机·嵌入式硬件·智能手表
一路往蓝-Anbo18 小时前
第 2 篇:单例模式 (Singleton) 与 懒汉式硬件初始化
开发语言·数据结构·stm32·单片机·嵌入式硬件·链表·单例模式