story · 5月17日

内存控制器(MC)和DDR phy的集成

内存子系统是 SoC 中最复杂的系统之一,对芯片的整体性能至关重要。近年来,内存市场呈爆炸式增长,在移动、消费和企业系统中势头强劲。这不仅导致内存控制器 (MC) 越来越复杂,还导致将内存子系统连接到外部 DRAM 的 PHY变得非常复杂。

由于 SoC 和 DRAM 之间的数据高速传输,因此有必要对内存接口信号进行复杂的training以获得最佳操作(更好的眼图)。

MC 和 PHY 的集成是一个重大挑战,特别是如果两个IP 块来自不同的供应商(当然即使同一家供应商也可能是独立开发的)。关键原因是内存协议的快速发展,以及控制器和 PHY 之间的 DFI 接口在 MC-PHY training的要求方面没有完全指定,或者在某些情况下是模棱两可的。

image.png

为什么 MC-PHY 集成现在不是一个大问题?

随着 DFI MC-PHY 接口规范的推进,事情正朝着正确的方向发展。对于不熟悉 DFI 的人来说,这是一个行业标准,它定义了任何通用 MC 和 PHY 之间的接口信号和协议。自 2006 年 DFI 1.0 问世以来,该规范稳步发展,涵盖了 MC-PHY 操作的所有方面。

但这并不是 MC-PHY 集成变得更容易的唯一原因。为了更好地理解这一点,我们需要研究 MC 和 PHY 在training过程中如何相互作用。有两种基本方法可以training memory 信号:

  1. PHY evaluation mode or DFI Training mode - 此模式可由 PHY 或MC 启动,无论哪一方启动training,MC 都会设置DRAM gate/read data eye/write/CA training,并定期发出read 或write等training命令。PHY 负责确定每个操作正确的编程延迟,但 MC 必须启用和禁用 DRAM 和 PHY 中的training逻辑,以及生成必要的read/write/mrr命令。因此,DFI Training mode需要MC进行足够多的配合,并且在早期的 DFI 规范中是强制性的。然而在较新的DFI中,这种DFI Training mode已成为 MC 的可选项
  2. PHY independent mode – 这是一种 PHY 执行DRAM training的模式,MC 很少参与。PHY 生成所有read/write命令并编程每个操作的延迟,而 MC 耐心等待“done”状态。

PHY IP 提供商已决定通过在其IP中实现对PHY independent mode的支持来获得training的所有权,保留基于其PHY架构优化 PHY training算法的控制权

随着 PHY 复杂性和DDR速率增加的挑战,对 PHY independent mode的支持为PHY IP提供商增加了宝贵的差异化优势。

在PHY-independent mode中,内存控制器的作用是什么?

由于 PHY 在training期间承担了大部分繁重的工作,因此 MC 只需要关注两个问题:

  1. 何时发出training请求?
  2. 将控制权交给 PHY 进行training时,DRAM需要处于什么状态,当 PHY 将控制权交还给 MC 时,DRAM将处于什么状态?

因此,MC 将 PHY training的请求作为中断进行处理,它需要安排一些为实现最佳内存操作所做的许多事情。​

作者:数字芯片
来源:数字芯片实验室

推荐阅读

更多数字IC设计技术干货等请关注数字芯片实验室专栏。添加极术小姐姐(微信:aijishu20)微信可申请加入IC设计交流群。
推荐阅读
关注数
12304
内容数
211
前瞻性的眼光,和持之以恒的学习~
目录
极术微信服务号
关注极术微信号
实时接收点赞提醒和评论通知
安谋科技学堂公众号
关注安谋科技学堂
实时获取安谋科技及 Arm 教学资源
安谋科技招聘公众号
关注安谋科技招聘
实时获取安谋科技中国职位信息