【DRAM存储器十三】DDR介绍

👉个人主页highman110

👉作者简介:一名硬件工程师持续学习,不断记录,保持思考,输出干货内容
参考资料:《镁光DDR数据手册》

目录

[DDR SDRAM芯片引脚](#DDR SDRAM芯片引脚)

[DDR SDRAM芯片框图](#DDR SDRAM芯片框图)

[DDR SDRAM的mode register](#DDR SDRAM的mode register)

[DDR SDRAM的初始化](#DDR SDRAM的初始化)


DDR SDRAM芯片引脚

第一代DDR引脚与初代SDRAM的不同上图红框圈出来了:

1、单端时钟改为差分时钟;

2、增加DQS信号,这时的DQS还是单端的;

3、VDD和VDDQ从3.3V降到了2.5V;

4、IO引脚电平从TTL改为了SSTL_2,增加了SSTL_2参考电压VREF(VDDQ/2)。另外外部还需要SSTL_2 IO的端接电压VTT(VDDQ/2)。

DDR SDRAM芯片框图

这里再把SDRAM的框图贴出来,大家对比一下:

可以看到,DDR的框图和初代SDRAM相比,只有红框处有所区别。我们从输入和输出两个方向分别看:

首先看输出,也就是读DDR数据,假设存储阵列核心频率100MHz,仅单边沿有效,IO gating在一个时钟边沿一次性输出16bit数据给到read latch锁存,然后通过MUX多路复用器输出8bit给输出驱动器,MUX这里16bit输入变8bit输出,两个8bit的输出总有个先后顺序吧,这个顺序在MUX这里靠最低位列地址COL0来决定,关于burst type和顺序的定义在后面说到mode register相关内容后再详细说。时钟CK在经过DLL与外部时钟同步后,驱动DRIVERS输出数据,这里的时钟频率与核心频率一致,但是是双边沿有效,所以这里一个时钟周期的两个沿刚好就能把内部输出的16bit数据输出完毕。另外DDR在输出数据时,内部的DQS generator会生成一个单端DQS信号,与数据一起在时钟作用下输出,这里的DQS与数据的相位关系是边沿对齐。

然后看输入,也就是写数据。接收模块RCVRS先后收到16bit输入数据DQ和2bit屏蔽信号DM,在控制器输出的DQS双边沿作用下,按既定的突发顺序将8+8的DQ和1+1的DM锁存到input register,控制器输出的DQS与DQ、DM为中心对齐关系。Input register将两个8bit数据合并成16bit数据给到write fifo,随后write fifo输出16bit数据给到IO gating进行写入阵列控制。此fifo的输入参考时钟为DQS,输出参考时钟为CK,均为单边沿有效,由于DDR内部逻辑是以CK为参考,而写入时的外部接口逻辑是以DQS为参考,所以需要一个fifo来实现跨时钟域的同步。

DDR SDRAM的mode register

DDR的模式寄存器与初代SDRAM大体相同,由于新增了功能,于是新增了extended mode register,相关定义如下:

Bit[2:0]:BL,突发长度。支持2、4、8突发长度。

Bit[3]:burst传输方式,0表示顺序传输,1表示交错传输。传输顺序由低位地址线决定,定义如下:

Bit[6:4]:CAS潜伏期,可设置为2、2.5、3,单位为时钟周期tck。

Bit[n:7]:操作模式,除了bit8之外,其他bit都是0,bit8为0为正常操作模式,bit8为1为DLL复位。DLL复位需要通过LMR命令来实现,镁光的这颗DDR是DLL复位完之后自动进入正常操作模式,不用再用LMR把这个bit8又写为0。

Bit[n+2:n+1]:00表示为基础模式寄存器,01表示为扩展模式寄存器。

Bit[0]:DLL,0使能,1不使能。正常工作都要使能。不使能DLL仅用于调试用途。

Bit[1]:驱动强度,0正常强度,1降低强度。正常为SSTL_2,class II驱动强度,降低后为正常强度的54%,用于轻负载场景,如点对点拓扑。

DDR SDRAM的初始化

流程图如下,大家自行看一下:

初始化时序图如下:

相关推荐
self-motivation10 天前
gpu硬件架构
硬件架构·gpu·nvidia·tensor·cuda
体系结构论文研讨会12 天前
【论文阅读】龙芯2号处理器设计和性能分析
论文阅读·开源·硬件架构
体系结构论文研讨会12 天前
【论文阅读】处理器芯片敏捷设计方法:问题与挑战
论文阅读·开源·硬件架构
体系结构论文研讨会12 天前
【论文阅读】基于 SimpleScalar 的龙芯CPU模拟器 Sim-Godson
论文阅读·开源·硬件架构
aixingkong92114 天前
PCIE错误系统
硬件架构·硬件工程
7yewh23 天前
嵌入式硬件实战提升篇(三)商用量产电源设计方案 三路电源输入设计 电源管理 多输入供电自动管理 DCDC降压
嵌入式硬件·硬件架构·soc·pcb工艺·电源·dcdc·原理图设计
水饺编程24 天前
【英特尔IA-32架构软件开发者开发手册第3卷:系统编程指南】2001年版翻译,2-38
linux·嵌入式硬件·fpga开发·硬件架构
无聊的菜鸟1 个月前
TI毫米波雷达(七)——high accurary示例分析(二)
c语言·硬件架构·射频工程
坚硬果壳_1 个月前
《硬件架构的艺术》笔记(八):消抖技术
笔记·硬件架构
丁总学Java1 个月前
uname -m(machine) 命令用于显示当前系统的机器硬件架构(Unix Name)
服务器·硬件架构·unix