【DRAM存储器十三】DDR介绍

👉个人主页:highman110

👉作者简介:一名硬件工程师,持续学习,不断记录,保持思考,输出干货内容 

参考资料:《镁光DDR数据手册》

目录

DDR SDRAM芯片引脚

DDR SDRAM芯片框图

DDR SDRAM的mode register

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的初始化

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

        初始化时序图如下: 

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/99783.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

销售小白如何写客户拜访记录?

销售小白如何写客户拜访记录?10年客户管理经验,接下来我说的,都是实实在在的经验,小白能用到其中的40%,你的客户成单率会大大提升! 首先,客户拜访记录的哪些信息是重要的? 答案是&…

ueditor

下载文件 文档 UEditor入门部署 入门部署和体验 1.1 下载编辑器 到官网下载 UEditor 最新版:http://ueditor.baidu.com/website/download.html#ueditor 1.2 创建demo文件 解压下载的包,在解压后的目录创建 demo.html 文件,填入下面的…

【轻松玩转MacOS】网络连接篇

引言 本篇让我们来聊聊网络连接。不论你是在家、在办公室,还是咖啡厅、机场,几乎所有的MacOS用户都需要连接到互联网。在这个部分,我们将向你展示如何连接到互联网和局域网。让我们开始吧! 一、连接到互联网 首先,我…

CSS 中::after的妙用(实现在margin中显示内容)

效果图如下: 背景: 如上图,之前只是当纯的写一个参考货架平面图,用作物料系统的在库状态可视化,当完成页面body分成10等份时,货架之间需要有通道,为了实现实际的样式,我给每个等份都…

SpringBoot集成WebSocket讲解

文章目录 1 WebSocket1.1 简介1.2 WebSocket作用和调用1.2.1 作用1.2.2 js端调用 1.3 Javax1.3.1 服务端1.3.1.1 服务端接收1.3.1.2 服务端集成1.3.1.3 ping和pong消息 1.3.2 客户端1.3.2.1 客户端接收1.3.2.2 客户端发送 1.4 WebMVC1.4.1 服务端1.1.4.1 服务端接收1.1.4.2 服务…

ArcGIS Pro地图可视化—双变量关系映射

原址链接ArcGIS Pro地图可视化—双变量关系映射https://mp.weixin.qq.com/s/g-pPBHPXMOEF5NHm06JcrA 这个方法很早很早以前就有了,可能大家早就知道了,可我昨天刚看到这个东西 https://en.wikipedia.org/wiki/Multivariate_map 像是上图,美国…

笔记36:CNN的多通道卷积到底是什么样的

总结: (1)输入卷积层的feature_map的通道数,就是该卷积层每个卷积核所含有的通道数 (2)输出卷积层的feature_map的通道数,就是该卷积层所含有的卷积核的个数 a a a a 解释:【…

无人化微波产品智能测试系统

无人化微波产品智能测试系统是面向射频微波产品领域客户数字化转型需求,推出的一款新形态自动测试系统。该系统实现了微波产品测试由单工位串行测试向多工位并行测试转变,具有测试容量大、测试效能高、测试管理信息化等特点。该系统可数倍提升客户的测试…

以dzzoffice为例设置通过 SOCKET 连接 SMTP 服务器发送(支持 ESMTP 验证)

在测试dzzoffice的过程中,需要配置邮件服务器,dzzoffice的邮件设置有三种选项: 1、通过 PHP 函数的 sendmail 发送(推荐此方式) 2、通过 SOCKET 连接 SMTP 服务器发送(支持 ESMTP 验证) 3、通过 PHP 函数 SMTP 发送 Email(仅 Windows 主机下有…

vulnhub_clover靶机渗透测试

clover靶机 文章目录 clover靶机信息收集ftp渗透web渗透横线移动权限提升靶机总结 靶机地址:https://www.vulnhub.com/entry/clover-1,687/ 信息收集 使用nmap扫描得到了很对端口,能用的也就是21 22 80三个端口,其他都是关闭的,全…

基于正点原子alpha开发板的第三篇系统移植

系统移植的三大步骤如下: 系统uboot移植系统linux移植系统rootfs制作 一言难尽,踩了不少坑,当时只是想学习驱动开发,发现必须要将第三篇系统移植弄好才可以学习后面驱动,现将移植好的文件分享出来: 仓库&…

医药行业投资公司都有哪些?医药企业项目投资分析实用工具

据药融云-投融资数据库信息调研结果发现,在 3000家参与医疗投资的资方中,有超200家专注医疗投资的机构。 资方的信息可以通过垂直的生物医药行业投融资数据库进行查找,该类数据库收载了全球绝大部分的生物医药行业投资机构信息(包含了投资机构…

clickhouse之readonly解决方法

1,问题描述 日志报错写入ck报错:ru.yandex.clickhouse.except.ClickHouseUnknownException: ClickHouse exception, code: 1002, host: 192.16.1.19, port: 8123; Code: 242. DB::Exception: Table is in readonly mode: replica_path/clickhouse/tables…

$attrs 和 $listeners (vue2vue3)

目录 透传 Attributes Attributes 继承​ 对 class 和 style 的合并 v-on 监听器继承 深层组件继承 禁用 Attributes 继承 多根节点的 Attributes 继承 vue2 $attrs 和 $listeners $attrs 概念说明 $attrs 案例 $listeners 概念说明 $listeners案例 vue3 $attr…

【算法|双指针系列No.3】leetcode202. 快乐数

个人主页:兜里有颗棉花糖 欢迎 点赞👍 收藏✨ 留言✉ 加关注💓本文由 兜里有颗棉花糖 原创 收录于专栏【手撕算法系列专栏】【LeetCode】 🍔本专栏旨在提高自己算法能力的同时,记录一下自己的学习过程,希望…

springboot整合websocket开箱即用

springboot-websocket整合项目开箱即用,ws服务端,包含了在线客户监听,发送指定客户端数据,发送所有客户端数据。还可以根据指定转发给某个客户端。 WebSocketConfig配置缓存大小设置,设置异步发送操作的超时时间&#…

为什么 0.1 + 0.1 !== 0.2

为什么 0.1 0.1 ! 0.2 总结了几个很有意思的基础题目,分享一下。 为什么 0.1 0.1 ! 0.2 看到这个问题,不得不想到计算机中的数据类型,其中浮点数表示有限的精度。那么它就无法精确的表示所有的十进制小数,所以在在某些情况下…

在conda虚拟环境下安装PyTorch-gpu版本

conda环境配置 在conda虚拟环境下安装PyTorch-gpu版本1. 下载好anaconda以及CUDA2. 创建并进入虚拟环境 选择python版本3. 找对python torch torchvision cuda的对应版本 并 下载安装4. 测试是否成功5. 参考资料 在conda虚拟环境下安装PyTorch-gpu版本 引言: 学会在…

bootstrapjs开发环境搭建

Bootstrapjs是一个web前端页面应用开发框架,其提供功能丰富的JavaScript工具集以及用户界面元素或组件的样式集,本文主要描述bootstrapjs的开发环境搭建。 如上所示,使用nodejs运行时环境、使用npm包管理工具、使用npm初始化一个项目工程test…

C#实现OPC DA转OPC UA服务器

运行软件前提前安装好OPC运行组件: 为方便演示,提前准备好了一个DAServer服务器: 接下来开始配置: 该软件主要实现的功能如下: 配置过程也相对简单: 第一步: 编辑如下文件: 第二步…