• DDR相关实验


    DDR3内存简介

    1.相关概念:

    RAM:随机存储器,可以随时进行读写操作,速度很快,掉电以后数据会丢失。比如内存条、SRAM、SDRAM、DDR等都是RAM。RAM一般用来保存程序数据、中间结果。

    ROM:只读存储器,但可以进行写的操作,只是要先进行擦除,然后再发送要写的地址或扇区,最后才是要写入的数据。相比于RAM,向ROM或者Flash写入数据要复杂很多,因此意味着速度就会变慢(相比RAM),但是ROM和Flash可以将容量做的很大,而且掉电以后数据不会丢失,适合用来存储资料,比如音乐、图片、视频等信息。

    SRAM:SRAM的全称叫做Static Random-Access Memory,也就是静态随机存储器,这里的“静态”说的就是只要SRAM上电,那么SRAM里面的数据就会一直保存着,直到SRAM掉电。对于RAM而言需要可以随机的读取任意一个地址空间内的数据,因此采用了地址线和数据线分离的方式。

    SDRAM:与SRAM相比,SDRAM集成度高、功耗低、成本低、适合做大容量存储,但是需要定时刷新来保证数据不会丢失。因此SDRAM适合用来做内存条,SRAM适合做高速缓存或MCU内部的RAM。SDRAM目前已经发展到了第四代,分别为:SDRAM、DDR SDRAM、DDR2 SDRAM、DDR3 SDRAM、DDR4 SDRAM。

    DDR介绍

    DDR内存是SDRAM的升级版本,SDRAM分为SDR SDRAM、DDR SDRAM、DDR2 SDRAM、DDR3 SDRAM、DDR4 SDRAM。可以看出DDR本质上还是SDRAM,只是随着技术的不断发展,DDR也在不断的更新换代。先来看一下DDR,也就是DDR1,人们对于速度的追求是永无止境的,当发现SDRAM的速度不够快的时候人们就在思考如何提高SDRAM的速度,DDR SDRAM由此诞生。
    DDR全称是Double Data Rate SDRAM,也就是双倍速率SDRAM,看名字就知道DDR的速率(数据传输速率)比SDRAM高1倍!这1倍的速度不是简简单单的将CLK提高1倍,SDRAM在一个CLK周期传输一次数据,DDR在一个CLK周期传输两次数据,也就是在上升沿和下降沿各传输一次数据,这个概念叫做预取(prefetch),相当于DDR的预取为2bit,因此DDR的速度直接加倍!比如SDRAM速度一般是133200MHz,对应的传输速度就是133200MT/s,在描述DDR速度的时候一般都使用MT/s,也就是每秒多少兆次数据传输。133MT/S就是每秒133M次数据传输,MT/s描述的是单位时间内传输速率。同样133200MHz的频率,DDR的传输速度就变为了266400MT/S,所以大家常说的DDR266、DDR400就是这么来的。
    DDR2在DDR基础上进一步增加预取(prefetch),增加到了4bit,相当于比DDR多读取一倍的数据,因此DDR2的数据传输速率就是533~800MT/s,这个也就是大家常说的DDR2 533、DDR2 800。当然了,DDR2还有其他速度,这里只是说最常见的几种。
    DDR3在DDR2的基础上将预取(prefetch)提高到8bit,因此又获得了比DDR2高一倍的传输速率,因此在总线时钟同样为266400MHz的情况下,DDR3的传输速率就是10661600MT/S。
    I.MX6U的MMDC外设用于连接DDR,支持LPDDR2、DDR3、DDR3L,最高支持16位数据位宽。总线速度为400MHz(实际是396MHz),数据传输速率最大为800MT/S。这里我们讲一下LPDDR3、DDR3和DDR3L的区别,这三个都是DDR3,但是区别主要在于工作电压,LPDDR3叫做低功耗DDR3,工作电压为1.2V。DDR3叫做标压DDR3,工作电压为1.5V,一般台式内存条都是DDR3。DDR3L是低压DDR3,工作电压为1.35V,一般手机、嵌入式、笔记本等都使用DDR3L。

    DDR3L初始化与测试

    NXP提供了一个非常好用的DDR初始化工具,叫做ddr_stress_tester。

    ①、此工具通过USB OTG接口与开发板相连接,也就是通过USB OTG口进行DDR的初始化与测试。
    ②、此工具有一个默认的配置文件,为excel表,通过此表可以设置板子的DDR信息,最后生成一个.inc结尾的DDR初始化脚本文件。这个.inc文件就包含了DDR的初始化信息,一般都是寄存器地址和对应的寄存器值。
    ③、此工具会加载.inc表里面的DDR初始化信息,然后通过USB OTG接口向板子下载DDR相关的测试代码,包括初始化代码。
    ④、对此工具进行简单的设置,即可开始DDR测试,一般要先做校准,因为不同的PCB其结构肯定不同,必须要做一次校准,校准完成以后会得到两个寄存器对应的校准值,我们需要用这个新的校准值来重新初始化DDR。
    ⑤、此工具可以测试板子的DDR超频性能,一般认为DDR能够以超过标准工作频率10%~20%稳定工作的话就认定此硬件DDR走线正常。
    ⑥、此工具也可以对DDR进行12小时的压力测试。

    安装好ddr_stress_tester,还要进行相关配置文件

    对该Excel表进行数据的配置,修改相关数据。

     

    配置好Excel表后,提取相关数据,复制为.inc文件。

    打开ddr_stress_tester:

     

     

     将开发板调整为USB模式下:

    运行结果:

     压力测试:

     

  • 相关阅读:
    09循环嵌套
    Python爬虫(二十四)_selenium案例:执行javascript脚本
    Xcode14.3.1 真机调试iOS17的方法(无iOS17 DeviceSupport)
    Rust中的函数指针
    Java 集合类的高级特性介绍
    智乃酱的cube(线段树维护)
    TikTok视频没播放,涨粉难?狠抓5点,TikTok运营so easy!
    js对象获取属性的方法(.和[]方式)
    Java老人护理上门服务类型系统小程序APP源码
    AJAX跨域访问(不同域之间相互访问)
  • 原文地址:https://blog.csdn.net/qq_66545503/article/details/126335952