精华内容
下载资源
问答
  • FPGA学习之SDRAM简介
    2019-10-29 12:32:06

    存储器类型

    在这里插入图片描述
    SDRAM
    Synchronous Dynamic Random Access Memory
    同步动态随机存储器传输
    同步:工作需要同步时钟
    动态:要不断刷新电容。
    随机:可以任意地址访问。

    优点:
    空间存储量大
    读写速度快
    价格相对便宜

    缺点:控制逻辑复杂
    image.png

    容量计算

    image.png
    例如:
    image.png
    4M是每个bank里面的存储单元的数目。
    4banks不用解释了吧
    16bits是每个单元里面的容量。

    SDRAM功能框图

    简单讲解一下吧。(我现在肚子疼,先溜一会儿)
    我回来啦
    地址线A0到A11是地址操作。
    BA0、BA1是banks地址选择。
    还有两个数据掩码(控制数据线)可能是读入写出控制。

    在这里插入图片描述
    在这里插入图片描述

    更多相关内容
  • SDRAM简介

    2022-03-07 22:42:33
    了解SDRAM之前我们先了解一下ROM、RAM、DRAM、SRAM和FLASH的一些基础知识 参考博文:ROM、RAM、DRAM、SRAM和FLASH的区别 ROM和RAM指的都是半导体存储器,ROM在系统停止供电的时候仍然可以保持数据,而RAM通常都是在...

    在这里插入图片描述


    前言

    了解SDRAM之前我们先了解一下ROM、RAM、DRAM、SRAM和FLASH的一些基础知识
    参考博文:ROM、RAM、DRAM、SRAM和FLASH的区别

    ROM和RAM指的都是半导体存储器,ROM在系统停止供电的时候仍然可以保持数据,而RAM通常都是在掉电之后就丢失数据,典型的RAM就是计算机的内存。

    RAM有两大类,一种称为静态RAM(Static RAM/SRAM),SRAM速度非常快,是目前读写最快的存储设备了,但是它也非常昂贵,所以只在要求很苛刻的地方使用,譬如CPU的一级缓冲,二级缓冲。另一种称为动态RAM(Dynamic RAM/DRAM),DRAM保留数据的时间很短,速度也比SRAM慢,不过它还是比任何的ROM都要快,但从价格上来说DRAM相比SRAM要便宜很多,计算机内存就是DRAM的。

    DRAM分为很多种,常见的主要有FPRAM/FastPage、EDORAM、SDRAM、DDR RAM、RDRAM、SGRAM以及WRAM等,这里介绍其中的一种DDR RAM。

    DDR RAM(Date-Rate RAM)也称作DDR SDRAM,这种改进型的RAM和SDRAM是基本一样的,不同之处在于它可以在一个时钟读写两次数据,这样就使得数据传输速度加倍了。这是目前电脑中用得最多的内存。在很多高端的显卡上,也配备了高速DDR RAM来提高带宽,这可以大幅度提高3D加速卡的像素渲染能力

    一、内存的工作原理

    内存工作原理:

    内存是用来存放当前正在使用的(即执行中)的数据和程序,我们平常所提到的计算机的内存指的是动态内存(即DRAM),动态内存中所谓的==“动态”==,指的是当我们将数据写入DRAM后,经过一段时间,数据会丢失,因此需要一个额外设电路进行内存刷新操作。

    具体的工作过程是这样的:一个DRAM的存储单元存储的是0还是1取决于电容是否有电荷,有电荷代表1,无电荷代表0。但时间一长,代表1的电容会放电,代表0的电容会吸收电荷,这就是数据丢失的原因;刷新操作定期对电容进行检查,若电量大于满电量的1/2,则认为其代表1,并把电容充满电;若电量小于1/2,则认为其代表0,并把电容放电,藉此来保持数据的连续性。

    ROM也有很多种,PROM是可编程的ROM,PROM和EPROM(可擦除可编程ROM)两者区别是,PROM是一次性的,也就是软件灌入后,就无法修改了,这种是早期的产品,现在已经不可能使用了,而EPROM是通过紫外光的照射擦出原先的程序,是一种通用的存储器。另外一种EEPROM是通过电子擦出,价格很高,写入时间很长,写入很慢。

    1.1 FLASH

    FLASH存储器又称闪存,它结合了ROM和RAM的长处,不仅具备电子可擦除可编程(EEPROM)的性能,还不会断电丢失数据同时可以快速读取数据(NVRAM的优势),U盘和MP3里用的就是这种存储器。在过去的20年里,嵌入式系统一直使用ROM(EPROM)作为它们的存储设备,然而近年来Flash全面代替了ROM(EPROM)在嵌入式系统中的地位,它用作存储Bootloader以及操作系统或者程序代码,或者直接当硬盘使用(U盘)。
    目前Flash主要有NOR Flash和NADN Flash。

    二、SDRAM内存模组与基本结构

    接下来我们回归正题,回到SDRAM,我们平时看到的 SDRAM 都是以模组形式出现,为什么要做成这种形式呢?这首先要接触到两个概念:
    物理 Bank 芯片位宽
    在这里插入图片描述

    2.1、物理 Bank

    传统内存系统为了保证 CPU 的正常工作,必须一次传输完 CPU 在一个传输周期内所需要的数据。而CPU 在一个传输周期能接受的数据容量就是 CPU 数据总线的位宽,单位是 bit(位)。当时控制内存与 CPU之间数据交换的北桥芯片也因此将内存总线的数据位宽等同于 CPU 数据总线的位宽,而这个位宽就称之为物理 Bank(Physical Bank,下文简称 P-Bank)的位宽。所以,那时的内存必须要组织成 P-Bank 来与 CPU打交道。
    资格稍老的玩家应该还记得 Pentium 刚上市时, 需要两条 72pin 的 SIMM 才能启动, 因为一条 72pin -SIMM 只能提供 32bit 的位宽,不能满足 Pentium 的 64bit 数据总线的需要。直到 168pin-SDRAM DIMM 上市后,才可以使用一条内存开机。下面将通过芯片位宽的讲述来进一步解释 P-Bank 的概念。 不过要强调一点, P-Bank 是 SDRAM 及以前传统内存家族的特有概念, 在RDRAM 中将以通道 (Channel)取代,而对于像 Intel E7500 那样的并发式多通道 DDR 系统,传统的 P-Bank 概念也不适用。
    说了那么多总结就是内存要组成一个和CPU数据总线位宽相同的东西才能和CPU进行数据传输,而由这个由多个内存构成的东西就是物理bank.
    在这里插入图片描述

    2 2、芯片位宽

    上文已经讲到SDRAM内存系统必须要组成一个P-Bank的位宽, 才能使CPU正常工作, 那么这个P-Bank位宽怎么得到呢?这就涉及到了内存芯片的结构。
    每个内存芯片也有自己的位宽,即每个传输周期能提供的数据量。理论上,完全可以做出一个位宽为64bit 的芯片来满足 P-Bank 的需要,但这对技术的要求很高,在成本和实用性方面也都处于劣势。所以芯片的位宽一般都较小。台式机市场所用的 SDRAM 芯片位宽最高也就是 16bit,常见的则是 8bit。这样,为了组成 P-Bank 所需的位宽,就需要多颗芯片并联工作。对于 16bit 芯片,需要 4 颗(4×16bit=64bit)。对于 8bit 芯片,则就需要 8 颗了。
    在这里插入图片描述
    以上就是芯片位宽、芯片数量与 P-Bank 的关系。P-Bank 其实就是一组内存芯片的集合,这个集合的容量不限,但这个集合的总位宽必须与 CPU 数据位宽相符。随着计算机应用的发展,一个系统只有一个P-Bank 已经不能满足容量的需要。所以,芯片组开始可以支持多个 P-Bank,一次选择一个 P-Bank 工作,这就有了芯片组支持多少(物理)Bank 的说法。而在 Intel 的定义中,则称 P-Bank 为行(Row),比如845G 芯片组支持 4 个行, 也就是说它支持 4 个 P-Bank。 另外, 在一些文档中, 也把 P-Bank 称为 Rank (列) 。

    三、 SDRAM的逻辑Bank与芯片容量表示方法

    讲完 SDRAM 的外在形式,就该深入了解 SDRAM 的内部结构了。这里主要的概念就是逻辑 Bank。简单地说,SDRAM 的内部是一个存储阵列。因为如果是管道式存储(就如排队买票),就很难做到随机访问
    了。 阵列就如同表格一样,将数据“填”进去,你可以把它想象成一张表格。和表格的检索原理一样,先指定一个行(Row),再指定一个列(Column),我们就可以准确地找到所需要的单元格,这就是内存芯片寻址的基本原理。对于内存,这个单元格可称为存储单元,那么这个表格(存储阵列)叫什么呢?它就是逻
    辑 Bank(Logical Bank,下文简称 L-Bank)。
    在这里插入图片描述
    由于技术、成本等原因,不可能只做一个全容量的 L-Bank,而且最重要的是,由于 SDRAM 的工作原理限制,==单一的 L-Bank 将会造成非常严重的寻址冲突,大幅降低内存效率(在后文中将详细讲述)。所以人们在 SDRAM 内部分割成多个 L-Bank,较早以前是两个,目前基本都是 4 个,这也是 SDRAM 规范中的最高 L-Bank 数量。==到了 RDRAM 则最多达到了 32 个,在最新 DDR-Ⅱ的标准中,L-Bank 的数量也提高到了 8 个。

    这样,在进行寻址时就要先确定是哪个 L-Bank,然后再在这个选定的 L-Bank 中选择相应的行与列进行寻址。可见对内存的访问,一次只能是一个 L-Bank 工作,而每次与北桥交换的数据就是 L-Bank 存储阵列中一个“存储单元”的容量。在某些厂商的表述中,将 L-Bank 中的存储单元称为 Word(此处代表位的集合而不是字节的集合)。
    从前文可知,SDRAM 内存芯片一次传输率的数据量就是芯片位宽,那么这个存储单元的容量就是芯片的位宽(也是 L-Bank 的位宽),但要注意,这种关系也仅对 SDRAM 有效,原因将在下文中说明。
    在这里插入图片描述

    3.1 内存芯片的容量

    现在我们应该清楚内存芯片的基本组织结构了。那么内存的容量怎么计算呢?显然,内存芯片的容量就是所有 L-Bank 中的存储单元的容量总合。计算有多少个存储单元和计算表格中的单元数量的方法一样:
    ==存储单元数量= 行数× 列数(得到一个 L-Bank 的存储单元数量)×L-Bank 的数量 ==
    在很多内存产品介绍文档中, 都会用M×W的方式来表示芯片的容量 (或者说是芯片的规格/组织结构) 。M 是该芯片中存储单元的总数,单位是兆(英文简写 M,精确值是 1048576,而不是 1000000),W 代表每个存储单元的容量,也就是 SDRAM 芯片的位宽(Width),单位是 bit。计算出来的芯片容量也是以 bit。
    为单位,但用户可以采用除以 8 的方法换算为字节(Byte)。比如 8M×8,这是一个 8bit 位宽芯片,有 8M个存储单元,总容量是 64Mbit(8MB)。
    在这里插入图片描述
    不过,M×W 是最简单的表示方法。下图则是某公司对自己内存芯片的容量表示方法,这可以说是最正规的形式之一。
    在这里插入图片描述
    我们可以计算一下,结果可以发现这三个规格的容量都是 128Mbits,只是由于位宽的变化引起了存储单元的数量变化。从这个例子就也可以看出,在相同的总容量下,位宽可以采用多种不同的设计。

    四、SDRAM的引脚与封装

    内存芯片要想工作,必须要与内存控制器有所联系,同时对于一个电气元件,电源供应也是必不可少的,而且数据的传输要有一个时钟作为触发参考。因此,SDRAM 在封装时就要留出相应的引脚以供使用。电源与时钟的引脚就不必多说了,现在我们可以想象一下,至少应该有哪些控制引脚呢?
    我们从内存寻址的步骤缕下来就基本明白了,从中我们也就能了解内存工作的大体情况。这里需要说明的是,与 DIMM 一样,SDRAM 有着自己的业界设计规范,在一个容量标准下,SDRAM 的引脚/信号标准不能只考虑一种位宽的设计,而是要顾及多种位宽,然后尽量给出一个通用的标准,小位宽的芯片也许会空出一些引脚,但高位宽的芯片可能就全部用上了。不过容量不同时,设计标准也会有所不同,一般的容量越小的芯片所需要的引脚也就越小。
    1、 首先,我们知道内存控制器要先确定一个 P-Bank 的芯片集合,然后才对这集合中的芯片进行寻址操作。因此要有一个片选的信号,它一次选择一个 P-Bank 的芯片集(根据位宽的不同,数量也不同)。被选中的芯片将同时接收或读取数据,所以要有一个片选信号
    2、 接下来是对所有被选中的芯片进行统一的L-Bank的寻址, 目前SDRAM中L-Bank的数量最高为 4 个,
    所以需要两个L-Bank地址信号(2*2=4)。
    3、 最后就是对被选中的芯片进行统一的行/列(存储单元)寻址。地址线数量要根据芯片的组织结构分别设计了。但在相同容量下,行数不变,只有列数会根据位宽的而变化,位宽越大,列数越少,因为所需的存储单元减少了。
    4、 找到了存储单元后,被选中的芯片就要进行统一的数据传输,那么肯定要有与位宽相同数量的数据 I/O 通道才行,所以肯定要有
    相应数量的数据线引脚

    现在我们就基本知道了内存芯片的一些信号引脚,下图就是一个简单的 SDRAM 示意图,大家可以详细看看。
    在这里插入图片描述
    在这里插入图片描述
    根据 SDRAM 的官方规范,台式机上所用的 SDRAM 在不同容量下的各种位宽封装标准如下:
    在这里插入图片描述

    总结

    上文我们已经了解了 SDRAM 所用到的基本信号线路,下面就看看它们在 SDRAM 芯片内部是怎么“布置”的,并从这里开始深入了解内存的基本操作与过程,在这一节中我们将接触到有天书之称的时序图。这里就不深究了(tips:我也看不懂)
    上文出处来自:《高手进阶,终极内存技术指南》,大家感兴趣一定看一下,讲的很好。我这里做个简介。
    参考博文:
    SDRAM详细介绍
    相信我,SDRAM真的不难----汇总篇(直达链接)

    展开全文
  • 它是美国爱荷华州立大学的约翰·文森特·阿塔纳索夫(John Vincent Atanasoff)教授和他的研究生克利福特·贝瑞(Clifford Berry)在1937年设计的。  遗憾的是当时仅仅用于求解线性方程组,也没有申请,爱荷华州立...
  • 46\_实战篇\_SDRAM简介ppt,46_实战篇_SDRAM简介
  • 简要介绍了SDRAM的由来和历史。重点介绍了SDRAM的性能指标,连接方式,和基本操作
  • SDRAM 介绍

    千次阅读 2021-08-23 20:49:36
    SDRAM :Synchronous Dynamic Random Access Memory,同步动态随机存储器。同步是指其时钟频率和CPU前端总线的系统时钟相同,也就是双方通信,有同步时钟;内部命令的发送与数据的传输都以它为基准;动态是指存储...

    目录

    1、名词解释

    2、SDRAM 内部结构

    3、SDRAM 外部信号描述

    4、SDRAM 命令

    4.1、COMMAND INHIBIT

    4.2、NO OERATION

    4.3、ACTIVE

    4.4、LOAD MODE REGISTER (LMR)

    4.5、READ

    4.6、WRITE

    4.7、PRECHARGE

    4.8、BURST TERMINATE

    4.9、REFRESH

    4.9.1、AUTO REFRESH

    4.9.2、SELF REFRESH

    5、SDRAM 状态

    5.1、Idle

    5.2、Row active

    5.3、Read

    5.4、Write

    5.5、Refreshing

    5.6、Accessing mode register

    5.6、Precharging all

    6、SDRAM 初始化

    7、Mode Register

    7.1、Burst Length

    7.2、Burst Type

    7.3、CAS latency

    8、Read operations

    8.1、连续读

    8.2、随机读

    8.3、读过程中去 precharge

    8.4、burst 读并终止

    8.5、交替读

    9、Write operations

    9.1、Burst 写

    9.2、换列写

    9.3、随机写

    9.4、写转读

    9.5、写转precharge

    9.6、交替写

    10、PRECHARGE Operation

    11、AUTO REFRESH Operation

    12、SELF REFRESH Operation

    13、POWER DOWN

    14、Clock Suspend

    15、驱动


    1、名词解释

    SDRAM :Synchronous Dynamic Random Access Memory,同步动态随机存储器。同步是指其时钟频率和CPU前端总线的系统时钟相同,也就是双方通信,有同步时钟;内部命令的发送与数据的传输都以它为基准;动态是指存储阵列需要不断的刷新来保证数据不丢失;随机是指数据不是线性依次存储,而是自由指定地址进行数据的读写。

    NOTES:这里需要强调一下:为了保证数据一直都在,SDRAM 需要不停的去刷新,刷新,刷新

    2、SDRAM 内部结构

    这里以 MICRON(美光)的 SDRAM(MT48LC16M16A2P-6AIT_256Mb_SDRAM)为例,进行 SDRAM 的结构介绍;

    这款 SDRAM 有几种规格:

    1、16 Meg x 4 x 4 banks

    2、 8 Meg x 8 x 4 banks

    3、 4 Meg x 16 x 4 banks

    MT48LC16M16A2P-6AIT_256Mb_SDRAM 属于 :4 Meg x 16 x 4 banks,16 位的数据总线;

    首先,先说一下存储结构,其实存储内部是由 Row、Column、Bank 组成:

     其中:

    紫色部分,是 Bank,这款 SDRAM 有 4 个 Bank;

    红色部分,是 Column,列;

    绿色部分,是 Row,行;

    那么不同组成部分的解释为:

    1、16 Meg x 4 x 4 banks : 8192 row、2048 columns、by 4 bits

    2、 8 Meg x 8 x 4 banks:8192 row、1024 columns、by 8 bits

    3、 4 Meg x 16 x 4 banks:8192 row、512 columns、by 16 bits

    那么 16Meg x16 他的内部是这样的:

     所以呢,如果我们要寻址一个 SDRAM 内部的单元,我们需要给出 3 个参数,Row、Colunm、Bank;

    细心的读者可能看到,输入的地址总线只有 A[12:0],这代表可寻址的空间只有 2^13 = 8KB,那是如何访问到 256Mbit(32MB) 的空间的呢?稍安勿躁,看后面描述;

    3、SDRAM 外部信号描述

    我们来看看 SDRAM 的信号线描述:

    引脚代号定义
    Vdd/VddQ工作/DQ电压
    Vss/VssQ相应电压的接地
    DQ[15:0]数据I/O线
    A[12:0]行列地址线
    DQML/DQMH数据掩码
    CS#片选(低电平有效)
    CAS#列地址选通脉冲(低电平有效)
    RAS#行地址选通脉冲(低电平有效)
    WE#读写信号(低电平有效)
    CK时钟信号
    CKE时钟有效
    BA[1:0]Bank 选择信号

    可以看出来了吧,选择 Bank 的话,一共 4 个 Bank,2bit 就可以了,也就是 BA[1:0];

    专门有 CAS# 和 RAS# 信号给到 SDRAM,告知,当前的 A[12:0] 代表的行地址,还是列地址;

    那么,一切就说得通了;

    Datasheet 中描述到一个概念:Speed Grade:-6A、-75、-7E,也代表了不同规格的 SDRAM,速率不一样,时序参数也有所区别;时序部分,下面在仔细看;

     另外,Datasheet 还描述了三种另外的规格:分别叫:

    commercial:商业级

    industrial:工业级

    automotive:车规级

    他们的时序和温度要求,可靠性要求有所不一样,但是大致都差不多,这里,我们暂时忽略他们的区别;

    4、SDRAM 命令

    介绍完 SDRAM 的结构组成、以及信号后,接下来介绍一下他的命令;啥?他还有命令?当然,SDRAM 也有他自己的控制器和状态机,我们要用它,就需要深入了解他;

    首先需要说明一下,SDRAM 的命令,是外部发给 SDRAM 的,也就是 CPU 或者 MCU;SDRAM 引脚就这么多,那么如何发送命令呢?肯定就是不同引脚上不同的电平状态的组合了:

     可以看到,SDRAM 支持如下命令:

    COMMAND INHIBIT(NOP):空指令;

    NO OERATION(NOP):空指令;

    ACTIVE:选择 bank 和 row 的指令;

    READ:选择 bank 和 column ,并且开始读数据的指令;

    WRITE:选择 bank 和 column ,并且开始写数据的指令;

    BURST TERMINATE:终止 Burst 指令;

    PRECHARGE:预充电指令(会使得 bank 中的 row 变成 deactivate 状态);

    AUTO REFRESH or SELF REFRESH:刷新指令;

    LOAD MODE REGISTER:配置寄存器指令;

    可以看到,发送这些指令,都是靠不同电平状态下的各个信号组合而成;

    4.1、COMMAND INHIBIT

    COMMAND INHIBIT 指令,不管 CLK 是否被使能,发送 COMMAND INHIBIT 指令的功能是阻止新的指令执行;

    4.2、NO OERATION

    NO OERATION 指令是为了发送 NOP 不想让其他的命令占用设备;

    4.3、ACTIVE

    当设备处于 IDLE 状态的时候,ACTIVE 指令用于激活指定 bank 的指定 row;其中 BA[1:0] 用于指定 Bank;

    注意:在发送 PRECHARGE 命令之前,当前的 row 都可以持续被访问,直到该 bank 被发送了 PRECHARGE 命令;在打开同一个 bank 的不同 row 之前,PRECHARGE 命令都必须先被发送;

    看到这里,小伙伴肯定很懵逼,什么又是选中 bank + row,什么又是 PRECHARGE 命令;不着急,后面我会再次汇总,现在有一个概念就可以了:访问一个 row 之前,必须先执行 PRECHARGE 命令(可以理解为,对他充电),要访问其他 row,需要再次充电;

    4.4、LOAD MODE REGISTER (LMR)

    刚刚不是说了么,SDRAM 也有自身的控制逻辑,这个控制逻辑有一部分是在 SDRAM 的寄存器里面,有且只有一个寄存器,就是这个 LOAD MODE REGISTER;我们在使用之前,需要去配置他,就是通过发送这个 LMR 命令配置;

    4.5、READ

    读命令是用来在 ACTIVE 命令之后,去选择 column ,并且发起 burst 读的;在读命令的时候,需要注意两点:

    1、READ 的时候呢,A10 这个位,标记了,是否需要使用 auto precharge 功能;这里会衍生出几个问题:

    1.1、A10 不是地址线么,为啥拿来做标志位了?:

    因为在 READ 阶段,属于选 column 阶段,ACTIVE 阶段使用到 A[12:0],在 READ 阶段,只用到了:x4: A[9:0], A11; x8: A[9:0]; x16: A[8:0],,对于我们这块来说,就是 A[8:0];所以不管怎么说,这个阶段选择列,最大用到 10bit,那么 A10 (也就是第 11 bit 就可以挪作他用了)

    1.2、auto precharge 是啥?

    如果 auto precharge 被选择,那么就意味着,在这次 READ 结束的时候,会自动跟上一个 precharge 的操作;这个操作上了以后呢,就使得这个 row 变为了一个 inactive 状态,无法立即访问该 row;

    如果 auto precharge 没有被选择,那么就意味着,在这次 READ 结束的时候,不会自动跟上一个 precharge 的操作;该 row 可以再次立即被访问;

    现在你只需要知道,每次访问一个 row,都要先 precharge,然后等上一个时间;

    2、READ 的时候呢,DQM 这个信号起作用了,这个 DQM 是什么意思呢?

    数据掩码的意思,就是代表了那些位的数据是需要的,DQM分为 2 bit,DQMH 和 DQML,分别代表了高 D[15:8] 和 D[7:0]

    4.6、WRITE

    写命令基本上和 READ 是一样的,只不过变成了数据写入 SDRAM,在这个阶段,也是选择 column;其他都和 READ 一样,不再多说:

    4.7、PRECHARGE

    PRECHARGE 命令用于指定的 bank 的 处于 open 状态下的 row 进入 deactivate 状态,或者也可以让所有的 bank 的 row 都进入 deactivate 状态;当发送 PRECHARGE 命令后,经过一个指定的时间:tRP,指定 bank 的指定 row 就将可以被访问;

    A10 在这个过程中,依然充当了另外角色,指示了是要指定 bank 的 row 进入deactivate 状态,还是 all bank 的 row 进入 deactivate 状态;

    4.8、BURST TERMINATE

    用于终止一个 Burst 传输;

    4.9、REFRESH

    为了保持 SDRAM 的数据一直都在,需要不停的刷新,刷新分为两种类型如下:

    4.9.1、AUTO REFRESH

    第一种叫 AUTO 类型,这里说是 AUTO,其实一点都不 AUTO,就是需要手动去刷新(或者称之为 MCU 或者 CPU 端的 SDRAM Controller 去主动刷新),所以,就必须在一个指定的时间间隔之内,去刷新一次,也就是发送一次这个指令;

    在每次发送 AUTO REFRESH 之前,所有的 active bank 都必须被 precharged 一次

    在发送 PRECHARGE 之后,需要等待 tRP 时间,然后在去发送 AUTO REFRESH 指令;

    在发送 AUTO REFRESH 命令期间,地址会在内部自动去递增的生成,所以,在这期间,外部输入的地址信息,是无效的;

    根据 Spec 的要求,256Mb SDRAM 需要 8192 次 AUTO REFRESH Cycles 每 64ms (针对商业级和工业级的 SDRAM) 或者 16ms (车规级 SDRAM).

    当然,这种刷新,你既可以按照时间来进行等时的刷新(比如你吧 64ms 分为 8192 份,就可以得到 7.813μs 就要刷新一次),当然,也可以在 64ms 到之前,一次性发送 8192 个 AUTO REFRESH,来一次性完成刷新;

    4.9.2、SELF REFRESH

    SELF REFRESH 这种才是真的自动刷新,它不需要外部参与,完全依靠 SDRAM 的内部时钟来刷新,从而保持内部数据;

    这种刷新,需要将 CKE 信号拉低,也就是时钟的使能信号;

    SDRAM 在进入这种模式后,最少持续时间是 tRAS,最长时间是无限期;

    如果要推出 SELF REFRESH,需要几步:

    1、CLK 必须要稳定

    2、CKE 拉高

    3、至少 2 个周期的 NOP 指令(tXSR),因为内部需要完成他的 refresh;

    4、退出 SELF REFRESH 后,以后的刷新都要交给上面的 AUTO REFRESH 了;

    5、SDRAM 状态

    SDRAM 定义了几种状态如下:

    5.1、Idle

    当 bank 被 precharged 后,等了 tRP 时间后,SDRAM 处于 Idle 状态:

    5.2、Row active

    处于 Idle 状态的 SDRAM,收到 ACTIVE 后,bank 和 row 被选中,并等待了 tRCD 时间后的状态:

    5.3、Read

    处于 Row active 状态的 SDRAM,收到 READ 后,bank 和 column 被选中后的状态:

    5.4、Write

    处于 Row active 状态的 SDRAM,收到 WRITE 后,bank 和 column 被选中后的状态:

    5.5、Refreshing

    当发送 Refresh 后,等待 tRFC 时间,bank 进入 idel;

    5.6、Accessing mode register

    当发送 LOAD MODE REGISTER 指令后,等 tMRD 时间:

    5.6、Precharging all

    发送 Precharging 后等待 tRP 时间:

    小结:命令+时序,组成了状态,各个状态直接,又有顺序的联系;

    6、SDRAM 初始化

    上面讲完了命令,状态,时序,下面是初始化的流程:

    1、VDD 和 VDDQ 上电;

    2、拉低 CKE;

    3、CLK 稳定;

    4、等 100us;

    5、拉 CKE 高;

    6、发送 PRECHARGE ALL 指令;

    7、等待至少 tRP 时间;

    8、发送 AUTO REFRESH 指令并等待 tRFC;

    9、发送 AUTO REFRESH 指令并等待 tRFC(第二次);

    10、现在 SDRAM 已经可以接受配置 REGISTER 了,上电时刻,mode register 是随机值,所以我们必须配置它;通过 LMR 指令配置 mode register;

    11、等待至少 tMRD 时间;

    12、此刻 SDRAM 初始化完成,可以被访问;

    整个初始化流程和时序如下:

    7、Mode Register

    讲完了初始化,那么这个 mode register 到底是何方神圣呢?

    Mode register 是 SDRAM 部分的控制逻辑,它定义了一个 16bits 的寄存器,里面包含了 burst len(BL),burst type, CAS latency (CL),操作模式等:

    7.1、Burst Length

    突发长度决定了给定 READ 或 WRITE 命令可以访问的最大列位置数。突发长度为 1、2、4、8 或连续位置可用于顺序和交错突发类型,连续页突发可用于顺序类型。连续页突发与 BURST TERMINATE 命令结合使用以生成任意突发长度。

    7.2、Burst Type

    突发类型定义了2种,一个是顺序,另一个是交错,他和 Burst len 组合如下:

    7.3、CAS latency

    CAS latency 指的是,在 READ 操作的时候,数据延时几个 CLK 出来;这个值可以配置位 2 或者 3;

    8、Read operations

     读操作有很多次 case,spec 里面列出来很多,这里就简单截图:

    8.1、连续读

    分别列出来 CL=2 和 CL=3 的情况,先读 Bank 的 n 列,如果没有换的话,burst 会继续读 n+1、n+2....

    8.2、随机读

     

    8.3、读过程中去 precharge

    读过程中去 precharge 后,需要再次发送 ACTIVE ;

     

    8.4、burst 读并终止

    读的过程中,发送 BURST TERMINATE;

    8.5、交替读

    9、Write operations

     写的时序类似

    9.1、Burst 写

    9.2、换列写

    9.3、随机写

    9.4、写转读

    9.5、写转precharge

    9.6、交替写

    10、PRECHARGE Operation

    11、AUTO REFRESH Operation

    12、SELF REFRESH Operation

    13、POWER DOWN

    14、Clock Suspend

    这些部分参考 Spec,不再赘述;

    15、驱动

    对于软件驱动主要应该做哪些事情呢?

    1、按照 SDRAM 的时序,合理的配置驱动的时序信息;

    2、发送对应的命令,初始化 SDRAM;

    3、访问 SDRAM 的时候,由对应的 decoder 进行地址译码,并且生成相应的时序;

    4、根据需要,配置 refresh 的时间间隔;

    5、低功耗的时候,进行对应的配置;

    展开全文
  • 本文将进行对SRAM简介及与DRAM/SDRAM的比较
  • SRAM SDRAM DDR 简介

    2021-01-12 13:22:45
    SRAM SDRAM DDR 简介 转载 SRAM SDRAM DDR 简介 https://blog.csdn.net/monkea123/article/details/103267121 SRAM 为什么要讲 SRAM 呢?因为大多数的朋友最先接触 RAM 芯片都是从 SRAM 开始的,因为大量的 STM32...

    SRAM SDRAM DDR 简介


    转载

    SRAM SDRAM DDR 简介
    https://blog.csdn.net/monkea123/article/details/103267121

    SRAM

    为什么要讲 SRAM 呢?因为大多数的朋友最先接触 RAM 芯片都是从 SRAM 开始的,因为大量的 STM32 单片机开发板都使用到了 SRAM,比如 F103、 F407 等,基 本都会外扩一个512KB 或 1MB 的 SRAM 的,因为 STM32F103/F407 内部 RAM 比较小,在一些比较耗费内存的应用中会出现内存捉紧的情况,比如 emWin 做 UI 界面。我们简单回顾一下 SRAM,
    SRAM 的全称叫做 Static Random-Access Memory,也就是静态随机存储器,这里的“静态”说的就是只要 SRAM 上电,那么 SRAM 里面的数据就会一直保存着,直到 SRAM 掉电。对于RAM 而言需要可以随机的读取任意一个地址空间内的数据,因此采用了地址线和数据线的方式,这里就以 STM32F103/F407 开发板常用的 IS62WV51216 这颗 SRAM 芯片为例简单的讲解一下 SRAM,这是一颗 16 位宽(数据位为 16 位)、1MB 大小的 SRAM
    在这里插入图片描述
    ①、 地址线
    这部分是地址线,一共 A0~A18, 也就是 19 根地址线,因此可访问的地址大小就是2^19=524288=512KB。不是说 IS62WV51216 是个 1MB 的 SRAM 吗?为什么地址空间只有512KB?前面我们说了 IS62WV51216 是 16 位宽的,也就是一次访问 2 个字节,因此需要对512KB 进行乘 2 处理,得到 512KB*2=1MB。位宽的话一般有 8 位/16 位/32 位,根据实际需求选择即可,一般都是根据处理器的 SRAM 控制器位宽来选择 SRAM 位宽。
    ②、数据线
    这部分是 SRAM 的数据线,根据 SRAM 位宽的不同,数据线的数量要不同, 8 位宽就有 8根数据线, 16 位宽就有 16 根数据线, 32 位宽就有 32 根数据线。 IS62WV51216 是一个 16 位宽的 SRAM,因此就有 16 根数据线,一次访问可以访问 16bit 的数据,也就是 2 个字节。因此就有高字节和低字节数据之分,其中 IO0~IO7 是低字节数据, IO8~IO15 是高字节数据。
    ③、控制线
    SRAM 要工作还需要一堆的控制线, CS2 和 CS1 是片选信号,低电平有效,在一个系统中可能会有多片 SRAM(目的是为了扩展 SRAM 大小或位宽),这个时候就需要 CS 信号来选择当前使用哪片 SRAM。另外,有的 SRAM 内部其实是由两片 SRAM 拼接起来的,因此就会提供两个片选信号。
    OE 是输出使能信号,低电平有效,也就是主控从 SRAM 读取数据。
    WE 是写使能信号,低电平有效,也就是主控向 SRAM 写数据。
    UB 和 LB 信号,前面我们已经说了, IS62WV51216 是个 16 位宽的 SRAM,分为高字节和低字节,那么如何来控制读取高字节数据还是低字节数据呢?这个就是 UB 和 LB 这两个控制线的作用,这两根控制线都是低电平有效。 UB 为低电平的话表示访问高字节, LB 为低电平的话表示访问低字节。

    SDRAM 简介

    前面给大家简单讲解了 SRAM,可以看出 SRAM 最大的缺点就是价格高、容量小!但是应用对于内存的需求越来越高,必须提供大内存解决方案。为此半导体厂商想了很多办法,提出了很多解决方法,最终 SDRAM 营运而生,得到推广。 SDRAM 全称是 Synchronous Dynamic Random Access Memory,翻译过来就是同步动态随机存储器,“同步”的意思是 SDRAM 工作需要时钟线,“动态”的意思是 SDRAM 中的数据需要不断的刷新来保证数据不会丢失,“随机”的意思就是可以读写任意地址的数据。
    与 SRAM 相比, SDRAM 集成度高、功耗低、成本低、适合做大容量存储,但是需要定时刷新来保证数据不会丢失。因此 SDRAM 适合用来做内存条, SRAM 适合做高速缓存或 MCU内部的 RAM。 SDRAM 目前已经发展到了第四代,分别为: SDRAM、 DDR SDRAM、 DDR2 SDRAM、 DDR3 SDRAM、 DDR4 SDRAM。 STM32F429/F767/H743 等芯片支持 SDRAM,学过STM32F429/F767/H743 的朋友应该知道 SDRAM,这里我们就以 STM32 开发板最常用的华邦W9825G6KH 为例, W9825G6KH 是一款 16 位宽(数据位为 16 位)、 32MB 的 SDRAM、速度一般为 133MHz、 166MHz 或 200MHz。
    在这里插入图片描述
    在这里插入图片描述
    ①、控制线
    SDRAM 也需要很多控制线,我们依次来看一下:
    CLK: 时钟线, SDRAM 是同步动态随机存储器,“同步”的意思就是时钟,因此需要一根额外的时钟线,这是和 SRAM 最大的不同, SRAM 没有时钟线。
    CKE: 时钟使能信号线, SRAM 没有 CKE 信号。
    CS: 片选信号,这个和 SRAM 一样,都有片选信号。
    RAS:行选通信号,低电平有效, SDRAM 和 SRAM 的寻址方式不同, SDRAM 按照行、列来确定某个具体的存储区域。因此就有行地址和列地址之分,行地址和列地址共同复用同一组地址线,要访问某一个地址区域,必须要发送行地址和列地址,指定要访问哪一行?哪一列?
    RAS 是行选通信号,表示要发送行地址
    在这里插入图片描述
    CAS: 列选通信号,和 RAS 类似,低电平有效,选中以后就可以发送列地址了。
    WE: 写使能信号,低电平有效。
    ②、 A10 地址线
    A10 是地址线,那么这里为什么要单独将 A10 地址线给提出来呢?因为 A10 地址线还有另外一个作用, A10 还控制着 Auto-precharge,也就是预充电。这里又提到了预充电的概念, SDRAM芯片内部会分为多个 BANK,关于 BANK 我们稍后会讲解。 SDRAM 在读写完成以后,如果要对同一个 BANK 中的另一行进行寻址操作就必须将原来有效的行关闭,然后发送新的行/列地址,关闭现在工作的行,准备打开新行的操作就叫做预充电。一般 SDSRAM 都支持自动预充电的功能。
    ③、地址线
    对于 W9825G6KH 来说一共有 A0~A12,共 13 根地址线,但是我们前面说了 SDRAM 寻址是按照行地址和列地址来访问的,因此这 A0~A12 包含了行地址和列地址。不同的 SDRAM 芯片,根据其位宽、容量等的不同,行列地址数是不同的,这个在 SDRAM 的数据手册里面会也清楚的。比如 W9825G6KH 的 A0~A8 是列地址,一共 9 位列地址, A0~A12 是行地址,一共 13位,因此可寻址范围为: 29*213=4194304B=4MB, W9825G6KH 为 16 位宽(2 个字节),因此还需要对 4MB 进行乘 2 处理,得到 42=8MB,但是 W9825G6KH 是一个 32MB 的 SDRAM 啊,为什么算出来只有 8MB,仅仅为实际容量的 1/4。不要急,这个就是我们接下来要讲的 BANK,8MB 只是一个 BANK 的容量, W9825G6KH 一共有 4 个 BANK。
    ④、 BANK 选择线
    BS0 和 BS1 是 BANK 选择信号线,在一片 SDRAM 中因为技术、成本等原因,不可能做一个全容量的 BANK。而且,因为 SDRAM 的工作原理,单一的 BANK 会带来严重的寻址冲突,减低内存访问效率。为此,人们在一片 SDRAM 中分割出多块 BANK,一般都是 2 的次方,比如 2, 4, 8 等。图 23.1.1.2 中的⑤就是 W9825G6KH 就是 4 个 BANK 示意图,每个 SDRAM数据手册里面都会写清楚自己是几 BANK。前面我们已经计算出来了一个 BANK 的大小为 8MB,那么四个 BANK 的总容量就是 8MB4=32MB。既然有4个BANK,那么在访问的时候就需要告诉SDRAM,我们现在需要访问哪个BANK,BS0 和 BS1 就是为此而生的, 4 个 BANK 刚好 2 根线,如果是 8 个 BANK 的话就需要三根线,也就是 BS0~BS2。 BS0、 BS1 这两个线也是 SRAM 所没有的。
    ⑤、 BANK 区域
    关于 BANK 的概念前面已经讲过了,这部分就是 W9825G6KH 的 4 个 BANK 区域。这个概念也是 SRAM 所没有的。
    ⑥、数据线
    W9825G6KH 是 16 位宽的 SDRAM,因此有 16 根数据线, DQ0~DQ15,不同的位宽其数据线数量不同,这个和 SRAM 是一样的。
    ⑦、高低字节选择
    W9825G6KH 是一个 16 位的 SDRAM,因此就分为低字节数据和高字节数据, LDQM 和UDQM 就是低字节和高字节选择信号,这个也和 SRAM 一样。

    DDR 简介

    DDR 内存是 SDRAM 的升级版本, SDRAM 分为 SDR SDRAM、DDR SDRAM、 DDR2 SDRAM、 DDR3 SDRAM、 DDR4 SDRAM。可以看出 DDR 本质上还是SDRAM,只是随着技术的不断发展, DDR 也在不断的更新换代。先来看一下 DDR,也就是DDR1,人们对于速度的追求是永无止境的,当发现 SDRAM 的速度不够快的时候人们就在思考如何提高 SDRAM 的速度, DDR SDRAM 由此诞生。
    DDR 全称是 Double Data Rate SDRAM,也就是双倍速率 SDRAM,看名字就知道 DDR 的速率(数据传输速率)比 SDRAM 高一倍!这 1 倍的速度不是简简单单的将 CLK 提高 1 倍,SDRAM 在一个 CLK 周期传输一次数据, DDR 在一个 CLK 周期传输两次数据,也就是在上升沿和下降沿各传输一次数据,这个概念叫做预取(prefetch),相当于 DDR 的预取为 2bit,因此DDR 的速度直接加倍!比如 SDRAM 速度一般是 133200MHz,对应的传输速度就是133200MT/s,在描述 DDR 速度的时候一般都使用 MT/s,也就是每秒多少兆次数据传输。133MT/S 就是每秒 133M 次数据传输, MT/s 描述的是单位时间内传输速率。同样 133~200MHz
    的频率, DDR 的传输速度就变为了 266~400MT/S,所以大家常说的 DDR266、 DDR400 就是这么来的。
    DDR2 的 IO 时钟是 DDR 的 2 倍,因此 DDR 内核时钟依旧是 133~200MHz 的时候,总线速度就是 266~400MHz。而且 DDR2 在 DDR 基础上进一步增加预取(prefetch),增加到了 4bit,相当于比 DDR 多读取一倍的数据,因此 DDR2 的数据传输速率就是 533~800MT/s,这个也就是大家常说的 DDR2 533、 DDR2 800。当然了, DDR2 还有其他速度,这里只是说最常见的几种。
    DDR3 在 DDR2 的基础上将预取(prefetch)提高到 8bit,因此又获得了比 DDR2 高一倍的传输速率,因此在总线时钟同样为 266~400MHz 的情况下, DDR3 的传输速率就是 1066~1600MT/S。MMDC 外设用于连接 DDR,支持 LPDDR2、 DDR3、 DDR3L,最高支持 16 位数据位宽。总线速度为 400MHz(实际是 396MHz),数据传输速率最大为 800MT/S。这里我们讲一下
    PDDR3、 DDR3 和 DDR3L 的区别,这三个都是 DDR3, 但是区别主要在于工作电压, LPDDR3叫做低功耗 DDR3,工作电压为 1.2V。 DDR3 叫做标压 DDR3,工作电压为 1.5V,一般台式内存条都是 DDR3。 DDR3L 是低压 DDR3,工作电压为 1.35V,一般手机、嵌入式、笔记本等都使用 DDR3L。
    我们就以NT5CC256M16EP-EK 为例讲解一下 DDR3。可以到 nanya官网去查找一下此型号,信息如图所示:
    在这里插入图片描述

    NT5CC256M16EP-EK 是一款容量为 4Gb,也就是 512MB 大小、16 位宽、 1.35V、传输速率为 1866MT/S 的 DDR3L 芯片。 NT5CC256M16EP-EK 的数据手册没有在 nanya 官网找到,但是找到了 NT5CC256M16ER-EK 数据手册,在官网上没有看出这两个有什么区别,因此我们就直接用 NT5CC256M16ER-EK 的数据手册。
    在这里插入图片描述

    从图可以看出, DDR3L 和 SDRAM 对的结构框图很类似,但是还是有点区别。
    ①、控制线
    ODT:片上终端使能, ODT 使能和禁止片内终端电阻。
    ZQ:输出驱动校准的外部参考引脚,此引脚应该外接一个 240 欧的电阻到 VSSQ 上,一般
    就是直接接地了。
    RESET: 复位引脚,低电平有效。
    CKE: 时钟使能引脚。
    A12: A12 是地址引脚,但是有也有另外一个功能,因此也叫做 BC 引脚, A12 会在 READ和 WRITE 命令期间被采样,以决定 burst chop 是否会被执行。
    CK 和 CK#: 时钟信号, DDR3 的时钟线是差分时钟线,所有的控制和地址信号都会在 CK对的上升沿和 CK#的下降沿交叉处被采集。
    CS#:片选信号,低电平有效。
    RAS#、 CAS#和 WE#:行选通信号、列选通信号和写使能信号。
    ②、地址线
    A[14:0]为地址线, A0~A14,一共 15 根地址线,根据 NT5CC256M16ER-EK 的数据手册可知,列地址为 A0~A9,共 10 根,行地址为 A0~A14,共 15 根,因此一个 BANK 的大小就是2102152=32MB2=64MB,根据图 23.1.4.2 可知一共有 8 个 BANK,因此 DDR3L 的容量就是 648=512MB。
    ③、 BANK 选择线
    一片 DDR3 有 8 个 BANK,因此需要 3 个线才能实现 8 个 BANK 的选择, BA0~BA2 就是用于完成 BANK 选择的。
    ④、 BANK 区域
    DDR3 一般都是 8 个 BANK 区域。
    ⑤、数据线
    因为是 16 位宽的,因此有 16 根数据线,分别为 DQ0~DQ15。
    ⑥、数据选通引脚
    DQS 和 DQS#是数据选通引脚,为差分信号,读的时候是输出,写的时候是输入。 LDQS(有的叫做 DQSL)和 LDQS#(有的叫做 DQSL#)对应低字节,也就是 DQ0~7, UDQS(有的叫做 DQSU)和 UDQS#(有的叫做 DQSU#),对应高字节,也就是 DQ8~15。
    ⑦、数据输入屏蔽引脚
    DM 是写数据收入屏蔽引脚。关于 DDR3L 的框图就讲解到这里,想要详细的了解 DDR3 的组成,请阅读相应对的数据手册

    展开全文
  • 注:本文章主要内容为DDR4相关的内容整理 一、SDRAM的发展 SDRAM 全称:同步动态随机访问存储器(Synchronous Dynamic Random Access Memory)
  • SDRAM实战篇—SDRAM读写

    千次阅读 2022-01-05 11:24:44
    SDRAM实战篇—SDRAM读写一、SDRAM简介1、存储器类型2、SDRAM3、SDRAM内部结构4、存储单元5、功能框图二、SDRAM操作时序1、初始化2、读写操作3、刷新三、程序设计1、实验任务2、系统框图3、模块功能及实现 一、SDRAM...
  • 关于SDRAM简介0916

    2020-11-02 08:54:54
    1.SDRAM(Synchronous Dynamic Random Access Memory)同步动态随机存储器(电容存储电荷为单元) 同步:时钟与对应控制器的系统时钟相同,命令和数据都是以时钟为基准 动态:存储阵列需要不断的刷新,保证数据不丢失 ...
  • SDRAM控制器

    2020-11-29 09:49:47
    1.SDRAM简介 简介:SDRAM为同步动态随机存储内存,同步指的是时钟与外部输入的时钟保持一致,也就是与外部共用一个时钟;动态指的是每个时间段内,都要进行一次刷新操作,否则里面的数据会丢失,这也是由存储特性...
  • ,之后又出现第二代的DDR2 SDRAM,以及第三代的DDR3 SDRAM,下一个升级版本是第四代的DDR4 SDRAM 题外话:某计算机大国,号称自己研发的超级计算机的速度世界第一,但是居然使用美国Intel公司的CPU,...
  • FPGA SDRAM接口设计(一)初窥门径

    千次阅读 2020-03-29 21:30:04
    SDRAM简介: 同步动态随机存取内存(synchronous dynamic random-access memory,简称SDRAM)是有一个同步接口的动态随机存取内存(DRAM),可以实现数据的存储和读取。这里主要注意的是同步、动态、随机。 同步:...
  • 在数字图像处理、航空航天等... 1 IS42S16400芯片简介 IS42S16400是ISSl公司推出的一种单片存储容量高达64 Mb(即8 MB)的16位字宽高速SDRAM芯片。SDRAM的主要特点是:①同步访问,读写操作需要时钟;②动态存储,芯片需
  •  1 IS42S16400芯片简介  IS42S16400是ISSI公司推出的一种单片存储容量高达64Mb(即8MB)的16位字宽高速SDRAM芯片。SDRAM的主要特点是:①同步访问,读写操作需要时钟;②动态存储,芯片需要定时刷新。I
  • SDRAM存储接口

    千次阅读 2019-10-10 14:05:13
    简介 DRAM即动态随机存储器(Dynamic Random Access Memory),动态是指存储阵列需要不断的刷新来保证数据不丢失;随机是指数据不是线性依次存储,而是自由指定地址进行数据读写。DRAM是一种易失性存储器,分SDRAM和...
  • SDRAM

    2021-04-06 17:24:20
    存储器简介1.1 存储器类型1.2 SDRAM内部结构2. SDRAM操作时序2.1 初始化2.2 读写操作2.3 刷新3. SDRAM读写测试3.1 系统框图3.2 程序设计 1. 存储器简介 1.1 存储器类型 1.2 SDRAM内部结构 SDRAM:同步动态随机...
  • 1. SDRAM简介 2. SDRAM 存取原理 3. SDRAM 特性 1. SDRAM简介 SDRAM ,同步动态随机存储器(Synchronous Dynamic Random Access Memory) 同步是指其时钟频率与对应控制器(CPU/FPGA)的系统时钟频率相同,内部命 ...
  • SDRAM简介 SDRAM(synchronous Dynamic Random ),同步动态随机存储器,同步指内存工作需要同步时钟,内存的命令的发送和数据的接收都以它为标准。动态是指需要不断地刷新来保证数据不丢失(电容存储),随机指的是...
  • FPGA实现的SDRAM驱动

    千次阅读 2019-04-14 00:20:14
    一、SDRAM 简介 SDRAM 同步动态随机存储器(Synchronous Dynamic Random Access Memory)。SDRAM 的时钟频率能达到100MHz以上,主要用于程序的运行空间、大数据存储等;Memory工作需要同步时钟,又由于信息存放在...
  • SDRAM设计之初始化(二)        在我学习FPGA设计之初,就在各种各样的学习开发板上见到过各个厂家的SDRAM,几乎每种开发板上都会板载一片甚至多片SDRAM,最近又重温了一下...
  • SDRAM学习整理

    2019-10-16 10:00:11
    一、SDRAM简介@TOC SDRAM(Synchronous Dynamic Random Access Memory),同步动态随机存储器。同步是指内存工作需要同步时钟,内部的命令的发送与数据的传输都以它为基准;动态是指存储阵列需要不断的刷新来保证...
  • 存储控制器(SDRAM操作)

    千次阅读 2019-04-04 15:59:04
    SDRAM简介 SDRAM的内部是一个个存储阵列,阵列就如同表格一样,将数据“填”进去。和表格的检索原理一样,先指定一个行(Row)和一个列(Column),就可以准确的找到所需要的单元格,这就是SDRAM寻址的基本原理,...
  • FPGA中用verilog直接读写操作SDRAM

    千次阅读 2020-06-16 16:22:57
    1 简介 SDRAM 型号为MT48LC32M16A2。SDRAM,英文名是: Synchronous Dynamic Random Access Memory,相较于 SRAM(静态存储器), SDRAM 具有:容量大和价格便宜的特点,但是需要动态刷新,保持存储单元内的数据不...
  • SDRAM简介 SDRAM( Synchronous Dynamic Random Access Memory),同步动态随机存储器。 同步是指 Memory 工作需要同步时钟,内部的命令的发送与数据的传输都以它为基准;(本文用了差分时钟,来处理时序的数据采集...
  • 简介 SDRAM 也就是同步动态随机存取内存,在计算机中得到了广泛的应用。在单片机应用中SRAM 和SDRAM 都用于扩展MCU 内存,通常SDRAM 用于大容量扩展,SRAM 用于小容量扩展。相比于SRAM,SDRAM 最大的不同是访问时有...
  • SDRAM的机理

    千次阅读 2016-05-11 10:48:11
    一、简介 SDRAM(synchronous dynamic random-access memory)是嵌入式系统中经常用到的器件。对于一个嵌入式软件工程师而言,了解SDRAM的机理是有益的。我们可以从下面三个方面理解SDRAM: 1、RAM很好理解,...
  • DDR SDRAM基本原理

    2014-07-31 14:32:14
    DDR SDRAM 基本原理简介,大致初步了解DDR,适合入门级

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 3,146
精华内容 1,258
关键字:

SDRAM简介

友情链接: Calender.rar