[DRAM Test]Memory Initialization,Training and Calibration of LPDDR5/5X

LPDDR5物理接口介绍

美光LPDDR5 Eight-Die,Quad-Channel 引脚定义:

引脚名称    功能
CK_t/CK_c    地址/命令时钟,上升沿/下降沿同时采样,差分时钟输入。
CS    片选信号,时钟上升沿(下降沿)被采样,用于选择目标DIE。
CA[6:0]    命令/地址输入。
DQ[15:0]    数据输入/输出总线
WCK[1:0]_t/WCK[1:0]_c    写时钟,为差分输入
RDQS[1:0]_t/RDQS[1:0]_c    读选通信号(读时钟),为差分输出
DMI[1:0]    数据总线翻转,每byte数据后接一位DMI
ZQ    ZQ用于校准输出驱动强度。ZQ引脚需使用240Ω电阻连接到VDDQ上。

LPDDR5 Eight-Die,Quad-Channel内部Channel 、RANK 、DIE关系框图:

Channel 、RANK 、DIE、Bank定义
1、Channel: 数据传输通道。
2、RANK:rank是为了凑cpu的位数。例如cpu是64bit的,但是LPDDR的单DIE一般是4bit、8bit或者16bit,如上图单DIE为16bit所以要凑4个,也就是数据位扩展,这4个就叫一个rank。
3、DIE:芯片内部封装的晶圆。
4、Bank:简单的说就是一个行,列组成的矩阵。芯片里面最小的存储单元排列成的矩阵就是Bank。

LPDDR5用到的相关技术


1、ODT技术
ODT(On-die termination)是从DDR2 SDRAM时代开始新增的功能。其允许用户通过读写寄存器,来控制DDR SDRAM中内部的终端电阻的连接或者断开。从上图的美光LPDDR5 Eight-Die,Quad-Channel的封装原理图可看出,一个通道挂载了两个Die,单数据传输时,只有一个Die是目标Die(Target Die)另一个Die(Non-Target Die)则是不工作的。当信号传输时,Non-Target Die那端的阻抗非常大,就会有很严重的信号反射,从而造成接收端信号完整性下降。如果这时候存在ODT电阻,那么信号就可以在ODT电阻处消耗掉,减少这些信号在电路上形成的反射,进而增强信号完整性。

含有ODT电阻的引脚有CK_c/CK_t、CA、DMI、DQ、WCK_c/WCK_t。可根据需求配置。能配置的ODT值为40Ω、48Ω、60Ω、80Ω、120Ω、240Ω。全为能被校准引脚ZQ外接标准电阻(240Ω)整除的数。

LPDDR5读/写模式下的拓扑图:

2、读写训练 Read/Write Training
读写训练大概会经过以下几个步骤:
1、运行算法,以对齐 DRAM 的时钟信号 CK 与数据有效信号 DQS 的边沿
2、运行算法,确定 DRAM 颗粒的读写延迟
3、将采样时刻移动至读取数据眼图的中央
4、报告错误,如果此时的信号完整性实在太差,没办法确保可靠的读写操作
为什么要进行读写训练?
一般LPDDR5芯片内部的一个Channel会连接有多个Die,这就使得走线需为星形连接。从主机角度来看,主机到Memory芯片内的各个Die的走线距离是不同的;从Memory角度看,它内部每个Die的时钟与各个数据线之间的走线延时也是不同的。为了消除这两个影响,就引入了读写训练。最终要达到的效果就是写操作时,时钟边沿对齐数据眼中心;读操作时,DQS边沿对齐数据眼中心。

LPDDR5 DRAM工作流程详解


1. 发送地址和命令
CPU发送地址和命令: 当CPU需要访问LPDDR5中的数据时,首先发送一个地址和相应的命令(读取或写入命令)到内存控制器。

2. 地址解码和行选通
行地址选择: LPDDR5根据接收到的行地址(RAS信号)选择特定的行。 行选通延迟(tRCD): 从RAS信号发出到CAS信号发出之间的时间延迟。这段时间内,LPDDR5准备选中的行开始处理。

3. 选中行并准备数据
列地址选择和数据准备: LPDDR5接收到列地址(CAS信号),选中特定的列以准备读取或写入数据。 CAS延迟(CL): 从CAS信号发出到可以读取或写入数据之间的时间延迟。这个时间取决于LPDDR5的CL值。 数据传输准备:

·DQS(Data Strobe): 用于在数据传输时同步和锁存数据的信号。

·DQM(Data Mask): 数据屏蔽信号,指示哪些数据位应该被忽略或不处理。

·CK(Clock): 时钟信号,用于同步数据传输的时序。

·PREFETCH: LPDDR5采用了32倍prefetch技术,每个存储周期内能够同时传输32个数据位,提高了数据吞吐量。

4. 数据传输和操作时序
数据传输和操作时序:

·DLL(延迟锁存器): 用于控制数据信号的延迟,以确保数据的正确读取和写入。

·SKEW(数据偏移): 不同数据信号到达时间的差异,需要通过调整来保持同步。

·Setup Time: 数据在有效触发沿到来之前数据保持稳定的时间。

·Hold Time: 数据在有效触发沿到来之后数据保持稳定的时间。

5. 预充电和刷新过程
预充电和刷新:

·预充电(Precharge): 在进行下一次读取或写入操作之前,LPDDR5会对未使用的存储单元进行预充电,清空存储单元中的电荷状态。

·1.2VCC比较刷新过程: LPDDR5在工作时会定期进行行的刷新操作,以保持存储单元的电荷状态,防止数据丢失。

6. 特殊信号处理
ODT(On-Die Termination)和ZQ(ZQ Calibration):

·ODT: 内存总线终端,用于匹配信号阻抗以减少反射和功耗。

·ZQ: ZQ校准信号,用于在LPDDR5初始化阶段对内部的电阻进行校准。

应用示例
假设LPDDR5的参数如下:

·CL = 18

·tRCD = 20

·tRP = 24

·tRAS = 45

·数据传输速率 = 6400 MT/s

·工作电压 = 1.1V

当CPU发出读取命令时的操作流程示例:

1.内存控制器发送RAS信号选中行,等待tRCD(20个时钟周期)后发送CAS信号选中列。

2.根据CL(18个时钟周期),LPDDR5准备好数据并通过DQS同步和锁存。

3.数据通过DQM进行掩码处理,同时使用CK进行时钟同步。

4.在读取数据过程中,LPDDR5保持选中行在tRAS(45个时钟周期)内活跃状态。

5.每次操作后,LPDDR5通过tRP(24个时钟周期)进行预充电,为下一次操作做准备。

结论
以上流程详细描述了LPDDR5的工作原理和关键参数在实际操作中的应用。理解这些参数如何影响LPDDR5的性能和操作流程,有助于优化系统内存的管理和数据访问效率,提高系统整体性能。LPDDR5作为最新一代的低功耗内存标准,通过提供更高的带宽、更低的延迟和更高的能效比,满足了现代移动设备和高性能嵌入式系统对内存需求的挑战。

### LPDDR5 IP Core for Chip Design and Hardware Development #### Overview of LPDDR5 Technology Low Power Double Data Rate 5 (LPDDR5) represents a significant advancement in mobile DRAM technology designed to meet the increasing demands of modern computing devices. This generation offers enhanced performance with lower power consumption compared to its predecessors, making it ideal for applications requiring high bandwidth while maintaining energy efficiency[^2]. #### Key Features of LPDDR5 IP Cores The primary attributes that define an LPDDR5 IP core include: - **High Bandwidth**: Supports data rates up to 6400 Mbps per pin, providing substantial improvements over previous standards. - **Power Efficiency**: Incorporates advanced power-saving modes such as Deep Sleep and Dynamic Voltage Frequency Scaling (DVFS), which help reduce overall system power usage without compromising on speed or functionality. #### Integration into System-on-Chip (SoC) For integration within SoCs like those based on architectures similar to ARM Cortex-A57 quad-core processors operating at 2 GHz alongside NVIDIA Denver2 dual-core CPUs also running at 2 GHz, incorporating an LPDDR5 controller can significantly enhance memory subsystem capabilities. Such configurations are typical in platforms aimed at edge AI processing where both computational intensity and efficient resource utilization are critical factors[^3]. #### Application Scenarios In scenarios involving deep neural networks (DNNs)—which have seen increased adoption across various domains due to their effectiveness—having access to fast yet economical storage solutions becomes paramount. By leveraging LPDDR5's superior throughput along with optimized algorithms tailored specifically towards these workloads, developers can achieve better results from machine learning models deployed directly onto embedded systems equipped with this type of RAM interface[^4]. ```cpp // Example C++ code snippet demonstrating how one might interact programmatically with an LPDDR5 module during initialization phase. #include <iostream> using namespace std; class Lpddr5Controller { public: void initialize() const { cout << "Initializing LPDDR5 Controller..." << endl; } }; int main(){ Lpddr5Controller lpddr5; lpddr5.initialize(); } ``` --related questions-- 1. What specific advantages does integrating an LPDDR5 IP core offer when designing chips intended for artificial intelligence tasks? 2. How do different versions of DDR SDRAM compare against each other regarding latency times and error correction mechanisms? 3. Can you provide examples of consumer electronics products currently utilizing LPDDR5 technology? 4. In what ways has the introduction of newer DRAM technologies influenced software development practices around memory management techniques? 5. Are there any notable challenges associated with migrating existing projects from older DDR types to LPDDR5 interfaces?
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值