DDR SDRAM 学习笔记

news2024/11/25 21:58:45

一、基本知识

1.SDRAM

SDRAM : 即同步动态随机存储器(Synchronous Dynamic Random Access Memory), 同步是指其时钟频率与对应控制器(CPU/FPGA)的系统时钟频率相同,并且内部命令 的发送与数据传输都是以该时钟为基准;动态是指存储阵列需要不断的刷新来保证数据不丢失;随机指数据的读取和写入可以随机指定地址,而不是必须按照严格的线性次序变化。

SDRAM 使用电容的电荷存储特性存储数据,而 SRAM使用CMOS晶体管存储数据,这决定了SDRAM的运行功耗要远远低于SRAM。由于使用晶体管存储数据,要能够正确的存储一位数据,需要最少6个晶体管。因此,从芯片面积上来说,单片SRAM芯片的容量不可能做到很高。

2.发展

SDRAM从发展到现在已经经历了五代,分别是:

第一代:SDR SDRAM,

第二代:DDR SDRAM,

第三代:DDR2 SDRAM,

第四代:DDR3 SDRAM,

第五代:DDR4 SDRAM。

第一代SDRAM采用单端(Single-Ended)时钟信号,第二、三、四、五代由于工作频率比较快(100MHz以上称为高频时钟),所以采用可降低干扰的差分时钟信号作为同步时钟。

差分时钟的P线与N线电平相反,而外界影响对变化沿作用等同,故外界干扰可通过两根线的处理相互抵消:如图,数据在PN的变化沿交叉处传输,由图可知时钟的高电平周期和低电平周期长度达到一致,如果不用差分时钟,则长短不一;控制信号与地址信号则只在P线的上升沿与N线的下降沿交叉处采集,从而起到触发时钟校准的作用。

SDR SDRAM的时钟频率就是数据存储的频率,第一代内存用时钟频率命名,如pc100,pc133则表明时钟信号为100或133MHz,数据读写速率也为100或133MHz。之后的第二,三,四代DDR(Double Data Rate)内存则采用数据读写速率作为命名标准,并且在前面加上表示其DDR代数的符号,PC-即DDR,PC2=DDR2,PC3=DDR3。如PC2700是DDR333,其工作频率是333/2=166MHz,2700表示带宽为2.7G。

DDR 设备: 1. 功能上实现双速率 2. 增加了差分时钟线(clk,clk_n) 3. 电压等级 SSTL_25 2.5V) 4. 增加了数据线(DQ)的随路时钟(DQS,DQS_n) 5. 速度达到400M (Mbit/s)

DDR2 设备: 1. 电压等级进一步减低( SSTL_18 ) 2. 增加了 ODT(On-Die Termination) 3. 内部 4Bit 预读结构 4. 速度最高达到 1066 (Mbit/s)

DDR3设备:内部 8Bit 预读结构

3.关键时序

时序上,看数据与时钟的对齐位置:

4.应用

为什么要用DDR这些存储器?(高速大容量)

1.大容量需求:DDR3、DDR4和DDR5的最大容量可以达到64GB、128GB和2TB。

2.高速度需求:DDR3内存传输速率可以达到800Mhz-1600MHz,带宽可以达到12.8-16GB/s,更新代的可以更高。

可用于如图像处理等应用,作为数据缓存区。

5.新概念:预读取

        由于存储器内部支持的最高读取速率是固定的(即内核时钟频率),且只能在上升沿/下降沿读取数据,不能双沿读取,想要提高数据通信带宽,只能通过预读取更高位宽的数据,然后用更高频率的时钟双沿分段送出这些预读取的数据来实现。比如:存储器内部支持的内核时钟最高读取速率是200M,接口数据引脚位宽为16bit,假设每周期读取16位数据,则存储器通信带宽为:200M * 16 =3600Mbit/s ; 对于双数据速率接口,我们要求时钟双沿都读取数据,假如此时接口时钟也为200MHz,那么一个周期就要处理32位数据,所以存储器应该预读取32位数据,此时接口通信带宽为200M * 16 * 2 = 7200 Mbit/s;当我想要提高通信带宽为14400Mbit/s时,即200M * 2 * 16 * 2 = 14400Mbit/s,这时候就需要用200M时钟预读取 2 * 2 * 16= 64 bit位宽的数据,然后用400M的时钟双沿送出即可(存储器内核200MHz时钟一周期单沿读出64bit数据,400MHz接口时钟双沿传输,则刚好能在一个200MHz时钟周期内送出 2*2*16 = 64 bit)。

       也就是说,用高速时钟传输低速时钟存取的数据,相当于低速时钟一次性读取出高位宽的数据放在寄存器里,然后用高速时钟分段传输。

        ddr3接口时钟频率较高,如400MHz等,而FPGA内部的时钟一般100MHz、200MHz就已经很高的了;为了建立FPGA与DDR3的通信,FPGA内部专门设计了一个转换的物理层PHY,通过选择ratio,如4:1,则可以实现ddr3接口时钟用400MHz,而FPGA内部时钟用100MHz,这样一来FPGA存取数据均用的是100MHz。一般来说,这个PHY会有FIFO来缓存转换。

6.学习方法

        DDR与SDR SDRAM底层时序上的区别并不大,但我们一般使用用户接口(IP核)来控制,不自己写代码,因为要作很多优化。我们只需要例化IP核,然后根据需求进行简化封装即可。一般IP核会为我们提供用户接口,可以直接使用(部分IP核可提供AXI4接口,一般用于与NISO II 软核通信)。

        一般来说,学习一个复杂的IP核,最直观的学习方式就是通过其仿真模型进行仿真,观察其工作时序,抓住需要重点关注的信号观察。在这里我们需要关注用户接口信号。

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

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

相关文章

竞赛选题 深度学习的水果识别 opencv python

文章目录 0 前言2 开发简介3 识别原理3.1 传统图像识别原理3.2 深度学习水果识别 4 数据集5 部分关键代码5.1 处理训练集的数据结构5.2 模型网络结构5.3 训练模型 6 识别效果7 最后 0 前言 🔥 优质竞赛项目系列,今天要分享的是 🚩 深度学习…

EasyExcel入门使用教程

文章目录 简介一、工程创建🎑二、读操作🎊二、写操作🎄总结 简介 数据导入导出意义 后台管理系统是管理、处理企业业务数据的重要工具,在这样的系统中,数据的导入和导出功能是非常重要的,其主要意义包括以下…

了解STM32看门狗定时器的工作原理和原则

STM32 系列微控制器的看门狗定时器 (Watchdog Timer,WWDG) 是一种重要的硬件资源,用于检测系统的异常状态,并在发生异常时执行特定的操作,以确保系统能够正常运行。在本文中,我将详细介绍 STM32 看门狗定时器的工作原理…

Java Elasticsearch 按一定时间间隔(timeInterval)循环查询数据

最近有个需求&#xff0c;前端传入时间间隔&#xff0c;去elasticsearch按照时间间隔统计每个时间间隔内数据量。 public List<HashMap<String,Object>> getCount(RequestParam Integer time, RequestParam String selectedDatedTime) {SimpleDateFormat format n…

Oracle(2-3) Basic Oracle Net Server Side Configuration

文章目录 一、基础知识1、The Listener Process监听器进程2、Connection Methods 连接方法3、Spawn and Bequeath Conn4、Direct Hand-Off Connections 直接切换连接5、Redirection Session 重定向会话6、Simple to Complex:N-Tier 简单到复杂&#xff1a;N层7、Service Config…

双写绕过 [极客大挑战 2019]BabySQL 1

打开题目 随便输入账号密码 根据报错信息可知这是单引号的字符型注入 那我们试试万能密码 1 or 11 页面报错 1 or 11 页面报错 而且根据报错内容显示是没有我们注入上去的or的 那我们就试试 1 order by 3 # 页面报错&#xff0c;根据报错显示页面过滤掉了or和by 那我们…

Java 并发-Lock

目录 Lock 源码 lock() tryLock() tryLock(long time, TimeUnit unit) Lock与synchronized Lock Lock 是 java.util.concurrent.locks包 下的接口。 上图是 java.util.concurrent.locks包下主要常用的类与接口的关系。 源码 public interface Lock {void lock();void l…

Flowable串行流程移动活动

在Activiti6和Activiti7中跳转节点都要自己实现&#xff0c;Flowable增加了这个功能。 一&#xff1a;简介 串行流程是指简单的一条线的流程&#xff0c;流程中如果包含会签、排它网关也算串行流程。 节点移动有三种方式&#xff1a; 向前移动foreward。向后移动back。直接跳…

并发编程产生的根本原因和C#怎么处理并发问题?

并发编程产生的根本原因和C#怎么处理并发问题&#xff1f; 前言 对于现在很多编程语言来说&#xff0c;多线程已经得到了很好的支持&#xff0c; 以至于我们写多线程程序简单&#xff0c;但是一旦遇到并发产生的问题就会各种尝试。 因为不是明白为什么会产生并发问题&#…

Android 布局优化,看过来 ~

屏幕刷新机制 基本概念 刷新率&#xff1a;屏幕每秒刷新的次数&#xff0c;单位是 Hz&#xff0c;例如 60Hz&#xff0c;刷新率取决于硬件的固定参数。帧率&#xff1a;GPU 在一秒内绘制操作的帧数&#xff0c;单位是 fps。Android 采用的是 60fps&#xff0c;即每秒 GPU 最多…

11-13 /11-14代理模式 AOP

调用者 代理对象 目标对象 代理对象除了可以完成核心任务&#xff0c;还可以增强其他任务,无感的增强 代理模式目的: 不改变目标对象的目标方法的前提,去增强目标方法 分为:静态代理,动态代理 静态代理 有对象->前提需要有一个类&#xff0c;那么我们可以事先写好一个类&a…

ATFX汇市:美国10月CPI数据来袭,通胀率料将进一步走低

ATFX汇市&#xff1a;本周二21:30&#xff0c;美国劳工部将公布10月未季调CPI年率&#xff0c;前值为3.7%&#xff0c;预期值3.3%&#xff1b;9月未季调核心CPI年率将于同一时间公布&#xff0c;前值为4.1%&#xff0c;预期值4.1%。机构预期美国名义通胀率将显著下降&#xff0…

【JVM】Java内存溢出分析(堆溢出、栈溢出、方法区溢出、直接内存溢出)

&#x1f4eb;作者简介&#xff1a;小明java问道之路&#xff0c;2022年度博客之星全国TOP3&#xff0c;专注于后端、中间件、计算机底层、架构设计演进与稳定性建设优化&#xff0c;文章内容兼具广度、深度、大厂技术方案&#xff0c;对待技术喜欢推理加验证&#xff0c;就职于…

【极客时间-系列教程】Vim 实用技巧必知必会-更多常用命令:应对稍复杂的编辑任务

文章目录 更多常用命令&#xff1a;应对稍复杂的编辑任务光标移动文本修改文本对象选择 更多常用命令&#xff1a;应对稍复杂的编辑任务 几个基本的命令已经了解了&#xff0c;可以操作简单的任务&#xff0c;但一些很复杂的命令&#xff0c;并没有了解到&#xff0c;只知道几…

【C++】类和对象(4)--析构函数

一 概念 通过前面构造函数的学习&#xff0c;我们知道一个对象是怎么来的&#xff0c;那一个对象又是怎么没呢的&#xff1f; 析构函数&#xff1a;与构造函数功能相反&#xff0c;析构函数不是完成对对象本身的销毁&#xff0c;局部对象销毁工作是由编译器完成的。而对象在销…

发布自研大模型 夸克App将迎来全面升级

国产大模型阵营再添新锐选手。11月14日&#xff0c;阿里巴巴智能信息事业群发布全栈自研、千亿级参数的夸克大模型&#xff0c;将应用于通用搜索、医疗健康、教育学习、职场办公等众多场景。夸克App将借助自研大模型全面升级&#xff0c;加速迈向年轻人工作、学习、生活的AI助手…

Seatunnel单机和集群部署说明

编译 编译命令 mvn clean package -pl seatunnel-dist -am -Dmaven.test.skiptrue 部署 将seatunnel-dist\target目录下的apache-seatunnel-2.3.3-SNAPSHOT-bin.tar.gz上传至服务器 解压安装包到/opt/soft/seatunnel目录下 配置环境变量 export SEATUNNEL_HOME/opt/soft/s…

【MySQL】事务(下)

文章目录 1. 各个隔离级别的演示事务隔离级别 —— 读未提交事务隔离级别—— 读提交事务隔离级别 —— 可重复读事务隔离级别 —— 串行化脏读 不可重复读 幻读的理解 2. MVCC机制读写3个记录隐藏列字段undo日志模拟MVCCread view 理论 3. 读提交与 可重复读的区别两者本质区别…

分布式锁介绍

为什么需要分布式锁 在单机部署的系统中&#xff0c;使用线程锁来解决高并发的问题&#xff0c;多线程访问共享变量的问题达到数据一致性&#xff0c;如使用synchornized、ReentrantLock等。 但是在后端集群部署的系统中&#xff0c;程序在不同的JVM虚拟机中运行&#xff0c;且…

ISP 处理流程

#灵感# 摆烂时间太长了&#xff0c;感觉知识忘光光了。重新学习&#xff0c;常学常新。 因为公司文档都不让摘抄、截取&#xff0c;所以内容是工作的一些自己记录和网络内容&#xff0c;不对的欢迎批评指正。 1、ISP概述 ISP是Image Signal Processor 的简称&#xff0c;也就…