0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

阐述DDR3读写分离的方法

CHANBAEK 来源:启芯硬件 作者:启芯 2023-10-18 16:03 次阅读

DDR3是2007年推出的,预计2022年DDR3的市场份额将降至8%或以下。但原理都是一样的,DDR3的读写分离作为DDR最基本也是最常用的部分,本文主要阐述DDR3读写分离的方法。

最开始的DDR,芯片采用的是TSOP封装,管脚露在芯片两侧的,测试起来相当方便;但是,DDRII和III就不一样了,它采用的是BGA封装,所有焊点是藏在芯片的底部的,测试起来非常不便,一般需要提前预留测试点

在DDR读写burst分析之前,首先得把read burst和write burst分离出来,读写双向的数据全部都搁在DQS和DQ上。那么,DDR的手册中,留下了哪些线索供我们进行读写的分离呢?

要实现DDR的快速的便捷的分离,在读写分离之前,我们必须得知道DDR读写信号之间的特征差异。首先,看看SPEC里面的定义:

图片

图片

方法一:preamble的差异

在每次的burst之前,DQS会从高阻态切换到一段负脉冲,然后才开始正常的读写。这段负脉冲,我们叫做preamble(preamble实际上是在读写前,DQS提前通知DRAM芯片或者是controller的信号)。一般说来,读数据DQS的preamble宽度要大于写数据。对于DDR3,情况就更简单了。因为在DDR3中,读数据的preamble是负脉冲,写数据的preamble是正脉冲。

图片

图片

图片

图片

方法二:幅度上的差异

一般在DRAM端进行测试,写数据从memory controller出来,经过了主板PCB板,内存插槽和内存条PCB板,到达DRAM颗粒的时候,信号已经被衰减了,而读数据刚刚从DRAM出来,还没有经过任何的衰减,因此读数据的幅度要大于写数据。

方法三:对齐方式

写数据是DQS和DQ centre-align(中间对齐), 读数据DQS和DQ是edge align(边沿对齐),memory controller在接收到内存的读数据时,在controller内部把DQS和DQ的相位错开90度,实现中间对齐来采样(这个过程示波器就看不到咯);

方法四:斜率的差异:

读数据的斜率大于写数据。一般在DRAM端进行测试,写数据从memory controller出来,经过了主板PCB板,内存插槽和内存条PCB板,到达DRAM颗粒的时候,信号已经被衰减了,所以,斜率也小一些;而读数据刚刚从DRAM出来,还没有经过任何的衰减,因此读数据的斜率要大于写数据。也可以从下图得到区分。

Read

图片

Write

图片

总结:

在计算机内存系统中,DDR3(Double Data Rate 3)是一种内存类型,具有读写分离(Read-Write Separation)的特性。这种特性可以在一定程度上提高内存的性能和效率。

DDR3的读写分离是DDR内存的一项基本功能,它是通过DQ和DQS信号来区分读操作和写操作的。

读写分离原理:

读写分离是指DDR3内存模块在执行读取和写入操作时使用不同的内部电路和通道。这使得内存可以同时进行读取和写入操作,而不需要等待一个操作完成后再执行另一个操作。这样可以显著提高内存的数据传输速度和效率,从而加快整个系统的响应速度。

在DDR3内存中,DQ信号用于传输数据,而DQS信号用于传输数据读取和写入的时钟信号。在读操作时,DQS信号会与DQ信号的边沿对齐,而在写操作时,DQS信号会在DQ信号的中央对齐。这种不同的对齐方式使得DDR3内存可以区分读操作和写操作。

内部通道分离:

DDR3内存模块内部通常分为读取通道和写入通道。这两个通道可以并行工作,分别处理读取和写入操作。通过这种分离,读取和写入操作可以同时进行,减少了等待时间。

命令队列:

DDR3内存模块通常具有命令队列(Command Queue)的功能。命令队列可以在内存控制器和内存模块之间缓存一系列的读取和写入命令。这有助于提高内存的效率,因为内存控制器可以将命令连续发送到内存模块,而无需等待每个命令的完成。

并行性提高性能:

读写分离以及命令队列的特性使DDR3内存模块能够在一定程度上实现并行性,从而提高了内存的性能。它可以在处理大量数据时更加高效,同时也有助于降低内存延迟。

利用DDR3内存中读数据和写数据之间信号特征的差异:在每次的burst开始时,DQS会从高阻态切换到一段负脉冲,然后才开始正常的读写。这段负脉冲叫做preamble(preamble实际上是在读写前,DQS提前通知DRAM芯片或者是controller的信号)。一般说来,读数据DQS的preamble宽度要大于写数据。对于DDR3,情况就更简单了。因为在DDR3中,读数据的preamble是负脉冲,写数据的preamble是正脉冲。

幅度上的差异:一般在DRAM端进行测试,写数据从memory controller出来,经过了主板PCB板,内存插槽和内存条PCB板,到达DRAM颗粒的时候,信号已经被衰减了,而读数据刚刚从DRAM出来,还没有经过任何的衰减,因此读数据的幅度要大于写数据。

请注意,对于DDR3内存的读写分离具体实现可能会因不同的硬件设备和系统环境而有所不同。如果您需要更详细或最新信息,建议咨询相关的硬件工程师或参考最新的技术文档。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 芯片
    +关注

    关注

    447

    文章

    47788

    浏览量

    409121
  • DDR3
    +关注

    关注

    2

    文章

    268

    浏览量

    41788
  • 封装
    +关注

    关注

    123

    文章

    7278

    浏览量

    141096
  • DDR
    DDR
    +关注

    关注

    9

    文章

    677

    浏览量

    64240
  • BGA
    BGA
    +关注

    关注

    4

    文章

    504

    浏览量

    46025
收藏 人收藏

    评论

    相关推荐

    DDR3布线参考

    DDR3DDR
    电子学习
    发布于 :2022年12月07日 22:57:54

    DDR3布线参考

    DDR3DDR
    电子学习
    发布于 :2022年12月07日 22:58:53

    ddr3一般上电多久后可对其进行读写操作?

    先用spartan6对ddr3进行读写操作,想知道ddr3一般上电多久后可对其进行读写操作?求大神解答,感谢!
    发表于 06-14 16:13

    如何提高DDR3的效率

    的话总的带宽就不够。burst length太小,整体的带宽利用率就更悲催了。请问各位前辈有没有什么好的方法能够在这种应用用最大化的利用DDR3的带宽?
    发表于 08-27 14:47

    cyclone V控制DDR3读写,quartusII配置DDR3 ip核后,如何调用实现DDR3读写呢,谢谢

    DDR3的IP核配置完毕后,产生了好多文件,请问如何调用这些文件实现DDR3读写呢?看了一些文章,说是要等到local_init_done为高电平后,才能进行读写操作。请问
    发表于 01-14 18:15

    基于Xilinx MIS IP的DDR3读写User Interface解析

    基于Xilinx MIS IP的DDR3读写User Interface解析特权同学,版权所有,转载请注明出处参考文档:ug586_7Series_MIS.pdf1. Command时序首先,关于
    发表于 10-13 15:18

    基于FPGA的DDR3六通道读写防冲突设计

    作者:张凤麒,张延彬,王忠勇;2018年电子技术应用第7期摘要: 为了解决期货行情数据加速处理中多个通道同时访问DDR3时出现的数据读写冲突问题,实现了一种基于FPGA的DDR3六通道读写
    发表于 08-02 09:32

    基于FPGA的DDR3 SDRAM控制器的设计与优化

    进行了DDR3 SDRAM控制器的编写,分析并提出了提高带宽利用率的方法。最终将其进行类FIFO接口的封装,屏蔽掉了DDR3 IP核复杂的用户接口,为DDR3数据流缓存的实现提供便利。
    发表于 08-02 09:34

    基于FPGA的DDR3多端口读写存储管理的设计与实现

    ,只需通过用户接口信号就能完成DDR3读写操作。DDR3用户接口仲裁控制模块将中断请求分成多个子请求,实现视频中断和图形中断的并行处理。帧地址控制模块确保当前输出帧输出的是最新写满的帧。结果表明
    发表于 08-02 11:23

    DDR3芯片读写控制及调试总结

    DDR3芯片读写控制及调试总结,1. 器件选型及原理图设计(1) 由于是直接购买现成的开发板作为项目前期开发调试使用,故DDR3芯片已板载,其型号为MT41J256M16HA-125,美光公司生产的4Gb容量
    发表于 07-22 08:33

    怎样对DDR3芯片进行读写控制呢

    怎样对DDR3芯片进行读写控制呢?如何对DDR3芯片进行调试?
    发表于 08-12 06:26

    ddr3读写分离方法有哪些?

    DDR3是目前DDR的主流产品,DDR3读写分离作为DDR最基本也是最常用的部分,本文主要
    的头像 发表于 11-06 13:44 8489次阅读
    <b class='flag-5'>ddr3</b>的<b class='flag-5'>读写</b><b class='flag-5'>分离</b><b class='flag-5'>方法</b>有哪些?

    基于FPGA的DDR3多端口读写存储管理的设计与实现

    读写操作。DDR3用户接口仲裁控制模块将中断请求分成多个子请求,实现视频中断和图形中断的并行处理。帧地址控制模块确保当前输出帧输出的是最新写满的帧。
    发表于 11-18 18:51 6532次阅读
    基于FPGA的<b class='flag-5'>DDR3</b>多端口<b class='flag-5'>读写</b>存储管理的设计与实现

    基于AXI总线的DDR3读写测试

    本文开源一个FPGA项目:基于AXI总线的DDR3读写。之前的一篇文章介绍了DDR3简单用户接口的读写方式:《DDR3
    的头像 发表于 09-01 16:20 2279次阅读
    基于AXI总线的<b class='flag-5'>DDR3</b><b class='flag-5'>读写</b>测试

    基于FPGA的DDR3读写测试

    本文介绍一个FPGA开源项目:DDR3读写。该工程基于MIG控制器IP核对FPGA DDR3实现读写操作。
    的头像 发表于 09-01 16:23 856次阅读
    基于FPGA的<b class='flag-5'>DDR3</b><b class='flag-5'>读写</b>测试