[DDR5 Jedec] 读操作 Read Command 精讲

2024-06-13 23:36

本文主要是介绍[DDR5 Jedec] 读操作 Read Command 精讲,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

依公知及经验整理,原创保护,禁止转载。

专栏 《深入理解DDR》

Read

读取命令也可以视为列读取命令。当与正确的bank地址和列地址结合使用时,通过激活命令(行访问)移动到检测放大器中的数据, 现在被推送到数据总线上。 DRAM 通常包括一个“读取和自动预充电”命令,该命令执行列读取,然后关闭/预充电行。这样,就不需要发出单独的预充电命令。如果需要访问同一行,但需要访问不同的列,则根本不会发出预充电,并且该行将保持打开状态。要使用 read 命令,CS 和 CAS 被拉低,而 RAS 和 WE 被拉高。

在这里插入图片描述
图. 高亮显示Active 和 读操作
图中黄色高亮的行, 是 Active 操作对象。紫色高亮的列, 是读操作的对象。

1.1 Read 过程

在这里插入图片描述
图. 读操作

上图是 BL 为 8 的一组 Read 操作。分为两步骤

  1. Act 命令线激活 bank 某一行
  2. 第二步是 RDA(Read 自动预充电读取), 当连续读长度达到 BL(8)后, 读完成, 并自动预充电。

地址位寄存器以及“读取”或“写入”命令用于选择用于突发操作的列。此步骤是 CAS 或列地址选通。由于每个组只有一个感应放大器,因此在移动到第二个行之前必须停用第一个行。这是使用 PRECHARGE 命令完成的。还有其他方便的命令替代品,如 RDA(使用自动预充电读取)和 WRA(使用自动预充电写入)命令,它们会自动处理激活和停用。

在这里插入图片描述
图 完整的 Burst Length 的 Read Cycle

1.2 Read 时序

Read 时序分三类参数, 分别是 读取时序,时钟到DS (data strobe) 关系,DS 到 Data 的关系

读取时序

参数功能
CL (CAS Latency)CAS 是 Column-Address-Strobe,即当列地址出现在行上时。CL 是内部 READ 命令与输出数据第一位之间的延迟(以时钟周期为单位)。
AL (Additive Latency)使用 AL,设备允许在 ACTIVATE 命令之后立即发出 READ 命令
RL (Read Latency)总体读取延迟
tCCD_S & tCCD_L与Bank访问同一Bank组内的银行相比,访问不同bank group 之间的时间延迟更少。对不同bank group 的访问命令需要间隔的tCCD_S(短时间)延迟,而同一bank group 内的访问命令要间隔tCCD_L(长时间)延迟。

在这里插入图片描述
图:对不同Bank Group的连续读取。(来源:美光数据表)

在这里插入图片描述
图:tCCD_S 和 tCCD_L 的图示(来源:美光数据表)

tDQSCK (MIN/MAX)描述数据选通边沿相对于时钟CK_t的允许范围
tDQSCK是上升频闪边沿相对于CK_t的实际位置
tQSH描述数据选通高脉冲宽度
tQSL数据选通低脉冲宽度。

在这里插入图片描述
图:CK-DQS 和 DQS-DQ 关系图示(来源:美光数据表)

参考

1https://www.systemverilog.io/design/ddr4-basics/#read

在这里插入图片描述

免责声明

一. 本博客及动态出现的信息,均仅供参考。本人将尽力以求所提供信息的准确性及可靠性,但不保证有关资料的准确性及可靠性。本人对有关资料所引致的错误、不确或遗漏,概不负任何法律责任(包括侵权责任、合同责任和其它责任)。

二. 任何透过本博客及动态的网页或链接及得到的资讯、产品及服务,本人概不负责,亦不负任何法律责任。

三. 本博客及动态使用的信息,网页或链接(图片)可能由于本人疏忽未标明作者和出处,如有侵权,请立即与本人取得联系。

四. 本博客及动态支持保护知识产权,任何单位或个人认为本博客及动态中的网页或链接内容可能涉嫌侵犯其知识产权,应该及时向本人提出,并提供侵权情况证明。本人会依法尽快删除相关内容或断开相关链接。

五. 本博客内容仅供学习交流,禁止商用。

六. 阅读并使用本博客及动态包括其提供的网页链接及资源时,即代表您已阅读并同意本免责声明的全部内容。如有异议,请立刻关闭本网页并屏蔽本人动态并停止使用。

这篇关于[DDR5 Jedec] 读操作 Read Command 精讲的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1058745

相关文章

Linux使用fdisk进行磁盘的相关操作

《Linux使用fdisk进行磁盘的相关操作》fdisk命令是Linux中用于管理磁盘分区的强大文本实用程序,这篇文章主要为大家详细介绍了如何使用fdisk进行磁盘的相关操作,需要的可以了解下... 目录简介基本语法示例用法列出所有分区查看指定磁盘的区分管理指定的磁盘进入交互式模式创建一个新的分区删除一个存

Golang操作DuckDB实战案例分享

《Golang操作DuckDB实战案例分享》DuckDB是一个嵌入式SQL数据库引擎,它与众所周知的SQLite非常相似,但它是为olap风格的工作负载设计的,DuckDB支持各种数据类型和SQL特性... 目录DuckDB的主要优点环境准备初始化表和数据查询单行或多行错误处理和事务完整代码最后总结Duck

C# 读写ini文件操作实现

《C#读写ini文件操作实现》本文主要介绍了C#读写ini文件操作实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧... 目录一、INI文件结构二、读取INI文件中的数据在C#应用程序中,常将INI文件作为配置文件,用于存储应用程序的

Python使用qrcode库实现生成二维码的操作指南

《Python使用qrcode库实现生成二维码的操作指南》二维码是一种广泛使用的二维条码,因其高效的数据存储能力和易于扫描的特点,广泛应用于支付、身份验证、营销推广等领域,Pythonqrcode库是... 目录一、安装 python qrcode 库二、基本使用方法1. 生成简单二维码2. 生成带 Log

Java操作ElasticSearch的实例详解

《Java操作ElasticSearch的实例详解》Elasticsearch是一个分布式的搜索和分析引擎,广泛用于全文搜索、日志分析等场景,本文将介绍如何在Java应用中使用Elastics... 目录简介环境准备1. 安装 Elasticsearch2. 添加依赖连接 Elasticsearch1. 创

java Stream操作转换方法

《javaStream操作转换方法》文章总结了Java8中流(Stream)API的多种常用方法,包括创建流、过滤、遍历、分组、排序、去重、查找、匹配、转换、归约、打印日志、最大最小值、统计、连接、... 目录流创建1、list 转 map2、filter()过滤3、foreach遍历4、groupingB

Java操作PDF文件实现签订电子合同详细教程

《Java操作PDF文件实现签订电子合同详细教程》:本文主要介绍如何在PDF中加入电子签章与电子签名的过程,包括编写Word文件、生成PDF、为PDF格式做表单、为表单赋值、生成文档以及上传到OB... 目录前言:先看效果:1.编写word文件1.2然后生成PDF格式进行保存1.3我这里是将文件保存到本地后

Python使用Colorama库美化终端输出的操作示例

《Python使用Colorama库美化终端输出的操作示例》在开发命令行工具或调试程序时,我们可能会希望通过颜色来区分重要信息,比如警告、错误、提示等,而Colorama是一个简单易用的Python库... 目录python Colorama 库详解:终端输出美化的神器1. Colorama 是什么?2.

Python视频剪辑合并操作的实现示例

《Python视频剪辑合并操作的实现示例》很多人在创作视频时都需要进行剪辑,本文主要介绍了Python视频剪辑合并操作的实现示例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习... 目录介绍安装FFmpegWindowsMACOS安装MoviePy剪切视频合并视频转换视频结论介绍

Windows自动化Python pyautogui RPA操作实现

《Windows自动化PythonpyautoguiRPA操作实现》本文详细介绍了使用Python的pyautogui库进行Windows自动化操作的实现方法,文中通过示例代码介绍的非常详细,对大... 目录依赖包睡眠:鼠标事件:杀死进程:获取所有窗口的名称:显示窗口:根据图片找元素:输入文字:打开应用:依