DDR4 核心2133/2400/3200数据传输率理解

news/2024/12/5 9:46:18/

先了解内存知识基础:

(2条消息) DDR 内存基础知识(2)- DDR预取_0xFFFFFFF0的博客-CSDN博客_ddr 预取

1、DDR4和DDR3 的一个差异是:DDR4之前的带宽提升依靠增加预取的bit数(ddr 2bit,ddr2  4bit ,ddr3 8bit 预取),而到了ddr4,只能通过bank group的方式来提高带宽了。

    对于DDR4的控制器和DDR4颗粒,首先会提供一个tCK_freq的参数,这个参数值一般是533Mhz、600Mhz和800Mhz,分别对应数据传输率为2133Mbit、2400Mbit和3200Mbit。

  在UVM环境中,有一个宏+define+DDR2133,此宏的生效的地方在:

    

        可以看到此时在我们验证平台中产生的clk连接到了DDR_TOP.PLLOUT_X1这个信号管脚中去了,这个信号会得到ddr_pll_clk并传递给umctl2 这个ddr控制器中,用于给umctl提供core_ddrc_core_clk,产生的时钟有533Mhz、600Mhz和800Mhz;

     

     另外,在uvm验证环境中,在配置ddr的时候也需要将tCK_freq配置对应的频率,是为了生成相应的时序,并写入到DDR 的controller中去。

      

        但是533/600/800Mhz和2133/2400/3200Mbit是如何挂钩在一起的呢?

     从ddr颗粒的时钟波形上可以看出,ck/ck_n的信号频率是1.06Ghz,并且上下沿采样,因此,一根数据线上的数据传输率为1.06Ghzx2=2133Mbit;

    那么1.06Ghz是如何根据533Mhz得到的呢?

  对于双BG的DDR4,由于两个BG可以同时工作,因此,其IO频率(即颗粒上的ck/ck_n 会翻倍)。

  而我们将的2133Mhz/2400Mhz/3200Mhz均为等效频率。

2、总的带宽如何计算呢?

    例如tCK_freq=800Mhz时候,接了两个DDR颗粒,BP_DDR_DQ是inout [31:0],每个ddr颗粒16bit,因此,总的带宽为:3200Mbit x 32=

    

  根据之前同事总结的来看,对于总线位宽32bit来说,3200M情况下,总线带宽为:3200x4B(4x8bit)=12.8GByte/s

   那么ddr的带宽都受那些影响呢?

   上面讲述的是ddr的频率对带宽的影响,例如对于600Mhz和800Mhz tCK_freq,带宽是不同的;那么noc总线是否对ddr的读写带宽有影响呢?如果有,如何影响带宽?

   如果DDR的频率比较小,那么主要影响带宽的因素就是ddr的频率;如果DDR的频率比较大,那么主要影响带宽的因素就是noc 总线的频率;例如:

    对于DDR  2400(对应的tCK_freq=600Mhz), 总线位宽是32bit,最大带宽是=2400x32 /8=9.6Gbyte/s

    对于noc 总线clk=600Mhz,由于ddr和noc总线接口位宽是128bit,因此,带宽计算:600Mhzx 128/8= 9.6Gbyte/s

        如何查看noc的位宽:   

  

3、DDR 的bank group 的作用

    

       根据addr地址,可以看出,bank_group对应的是addr[30:29], bank 对应的是addr[28:27], row 对应addr[26:10], col对应addr[9:0];

4、DDR4和DDR5的具体区别在哪里?

    1)总线带宽更高。

   2)功耗更低。


http://www.ppmy.cn/news/720659.html

相关文章

DDR3中bank, 16bit和32bit等概念

原文链接:http://blog.csdn.net/njuitjf/article/details/17096517 非常好的资料关于两片DDR级联组成32bit系统,平时工作中也经常遇到,跟大家分享一下: DDR3中bank, 16bit和32bit等概念 最近在看内存相关的东东。 以前认为内存就是…

DDR3详解(以Micron MT41J128M8 1Gb DDR3 SDRAM为例)之一

1.结构框图: 2.管脚功能描述 管脚符号 类型 描述 A0-A9,A10/AP,A11,A12/BC#,A13 Input 地址输入。为ACTIVATE命令提供行地址,和为READ/WRITE命令的列地址和自动预充电位(A10),以便从某个ba…

cnpm使用

安装node.js,里面自带npm。cnpm的安装 // 全局安装,在命令行里输入一下代码,等待下载完毕 npm install -g cnpm --registryhttps://registry.npm.taobao.org安装完成后关掉窗口重新打开,使用方法与npm一致,就是把npm换…

DDR3中bank, 16bit和32bit等概念(很好的资料)

原文链接:http://blog.csdn.net/njuitjf/article/details/17096517 非常好的资料关于两片DDR级联组成32bit系统,平时工作中也经常遇到,跟大家分享一下: DDR3中bank, 16bit和32bit等概念 最近在看内存相关的东东。 以前认为内存就是…

如何设置qq邮箱服务器smtp

1.登陆网页qq邮箱,点击设置如下图所示 2.点击账户 在里面找到服务这一行,打开POP3或者IMAP,点击后面的开启,根据提示步步操作,需要手机发送短信给qq 3.最终得到授权码,使用qq账号和授权码进行登陆 qq服务…

ou邮箱用qq邮箱服务器地址,QQ邮箱怎么设置

满意答案 puwadsx 2015.10.18 采纳率:41% 等级:10 已帮助:1472人 通过手机客户端绑定邮箱,方法和步骤: 首先,需要电脑浏览器登陆到QQ邮箱mail.qq.com(设置--账户--开启pop3或imap才可以绑定)&#xff0c…

QQ邮箱开启SMTP服务的步骤

首先要确保你的QQ邮箱已经要开启超过一个月。对于新开启的邮箱,腾讯是不开放这些功能的。 方法/步骤 首先点QQ头像旁边的信封符号进入邮箱。 当然你也可以使用 mail.qq.com进邮箱 进入邮箱后点击顶部的设置按钮 点击二级目录“账户” 拉到中下部 把这两项勾上 4 QQ邮箱 POP3 和…

“金九银十”和秋招通过率达 95% 的 Java 面试要点集锦

前言 这才刚刚进入 7 月,我就看到了许多朋友在焦急的准备“金九银十”跳槽面试,甚至很多即将毕业的大学生都在备战秋招,对于学历还算优秀的大学生来说,这是一次离大厂最近的机会,毕竟是应届毕业生,不会对技…