Zynq UltraScale+ MPSoC配置DDR4参数

Zynq UltraScale+ MPSoC配置DDR4参数

前言

自己做自己的嵌入式产品一般要选择合适的DDR,而这里开发板给的是4GB的UIMM的DDR4,也就是电脑上用的,所以用不了,只能自己挂载Component,这里说一下配置的过程,如何从PDF中拿出参数来
参考手册:UG1085 P201

开始

Zynq DDR控制器

1、首先看一下Zynq MPSoC支持的DDR,这里的手册是UG1085,首先是最大支持多少
Zynq UltraScale+ MPSoC配置DDR4参数_第1张图片
可以看出最大支持34GB,很大了,然后呢这里我们用DDR4,所以单片支持8Gb、16Gb(注意B和b不一样)这种,然后bank、rol、group这种自己百度吧。
2、看一下参考配置
Zynq UltraScale+ MPSoC配置DDR4参数_第2张图片
我们这里是8GB就足够了,所以我们用的单片8Gb然后两个rank,共8片DDR组成64Gb(8GB),可能有人问为啥不用16Gb单片的,因为镁光16Gb的速度最低是2933,而zynq ddr控制器,只有2400.

Zynq 参数配置

1、首先看一下DDR控制的参数
Zynq UltraScale+ MPSoC配置DDR4参数_第3张图片
(1)Load DDR Preset,这里可以选择官方测试过的还是我们自定义
(2)Frequency,这就是你ddr主频的一半,这里看下面是DDR4 2400P,所以频率是1200
(3)type,DDR4也可以用DDR3啥的
(4)位宽:64
(5)component选择UIMM集成的金手指的还是我们自己画的component
(6)ecc:disable
接下来的是比较重要的,首先看我们的DDR4手册第一页,
Zynq UltraScale+ MPSoC配置DDR4参数_第4张图片
(1)三个关键时间:16 16 16,直接写入Cas Lateny和RAs to Cas delay以及Precharge time
(2)位宽看你选择的是512x16还是1Gx8,这里我们选择是前者,所以16
(3)容量8Gb
(4)bank Group Count:看手册,只有一个BG0,所以是1
(5)BanK address count:BA[1:0]两位,所以是2
(6)Row addr count:这里是A[15:0],所以16
下面是几个比较重要的时间,然后其实都是在手册里面,然后还是先找到对应的83E,然后找到你要的时间
Zynq UltraScale+ MPSoC配置DDR4参数_第5张图片
下面的三个参数
Zynq UltraScale+ MPSoC配置DDR4参数_第6张图片
Zynq UltraScale+ MPSoC配置DDR4参数_第7张图片
(0)Cas Wirte xx: 这里是设置的12就可以,从上图看出DDR2400,这里要看他支持那些,这里选择常用的12
(1)tRC:手册说了是tRAS+tRP所以是32+23.32=45.32
(2)tRAS:32
(3)tFAW:下图30ns
Zynq UltraScale+ MPSoC配置DDR4参数_第8张图片

END

注意要修改PLL
Zynq UltraScale+ MPSoC配置DDR4参数_第9张图片
编译综合,看时钟信号频率等对不对,ok,最后配置成功。

你可能感兴趣的:(zynq,ARM)