DRAM、SDRAM和SRAM的区别

2024-01-09 08:19
文章标签 区别 sram dram sdram

本文主要是介绍DRAM、SDRAM和SRAM的区别,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

特点简介:

 

 

SRAM 

  

静态

RAM

不用刷新,

速度可以非常快,

CPU

内部的

cache

都是静态

RAM

缺点是一个内存单元需要的晶体管数量多,因而价格昂贵,容量不大。

 

DRAM

  

动态

RAM

,需要刷新,容量大。

 

SDRAM 

:同步动态

RAM

,需要刷新,速度较快,容量大。

 

DDR SDRAM

  

双通道同步动态

RAM

,需要刷新,速度快,容量大。

 

 

 

具体解释一:

 

 

   

什么是

DRAM 

 

 

DRAM 

的英文全称是

'Dynamic RAM'

,翻译成中文就是

'

动态随机存储器

'

DRAM

用于

通常的数据存取。我们常说内存有多大,主要是指

DRAM

的容量。

 

 

 

 

什么是

SRAM 

 

 

SRAM 

的英文全称是

'Static RAM'

,翻译成中文就是

'

静态随机存储器

'

SRAM

主要用于

制造

Cache

 

 

 

什么是

SDRAM 

 

 

SDRAM 

的英文全称是

'Synchronous DRAM'

翻译成中文就是

'

扩充数据输出内存

'

它比

一般

DRAM

EDO RAM

速度都快,它已经逐渐成为

PC

机的标准内存配置。

 

 

 

什么是

Cache 

 

 

 Cache 

的英文原意是

'

储藏

'

,它一般使用

SRAM

制造,它与

CPU

之间交换数据的速度

高于

DRAM

,所以被称作

'

高速缓冲存储器

'

,简称为

'

高速缓存

'

。由于

CPU

的信息处理速度

常常超过其它部件的信息传递速度,

所以使用一般的

DRAM

来作为信息存储器常常使

CPU

处于等待状态,造成资源的浪费。

Cache

就是为了解决这个问题而诞生的。在操作系统启动

以后,

CPU

就把

DRAM

中经常被调用的一些系统信息暂时储存在

Cache

里面,

以后当

CPU

需要调用这些信息时,

首先到

Cache

里去找,

如果找到了,

就直接从

Cache

里读取,

这样利

Cache

的高速性能就可以节省很多时间。大多数

CPU

在自身中集成了一定量的

Cache

一般被称作

'

一级缓存

'

'

内置

Cache'

这部分存储器与

CPU

的信息交换速度是最快的,

但容

量较小。

大多数主板上也集成了

Cache

一般被称作

'

二级缓存

'

'

外置

Cache'

比内置

Cache

容量大些,一般可达到

256K

,现在有的主板已经使用了

512K

2M

的高速缓存。在最新的

Pentium

二代

CPU

内部,

已经集成了一级缓存和二级缓存,

那时主板上的

Cache

就只能叫作

'

三级缓存

'

了。

 

 

什么是闪存

 

 

 

闪存

 

目前主板上的

BIOS

大多使用

Flash Memory

制造,翻译成中文就是

'

闪动的存储器

'

通常把它称作

'

快闪存储器

'

简称

'

闪存

'

这种存储器可以直接通过调节主板上的电压来对

BIOS

进行升级操作。

 

 

解释为什么

dram

要刷新,

sram

不需要:

 

        

这个是由于

ram

的设计类型决定的,

dram

用了一个

t

和一个

rc

电路,导致电容毁漏电

和缓慢放电。所以需要经常的刷新来保持数据

 

 

具体解释二:

 

 

DRAM

,动态随机存取存储器,需要不断的刷新,才能保存数据。

 

而且是行列地址复用的,

许多都有页模式。

  

SRAM

,静态的随机存取存储器,加电情况下,不需要刷新,数据不会丢失,而且,一般不

是行列地址复用的。

  

SDRAM

,同步的

DRAM

,即数据的读写需要时钟来同步。

  

 

DRAM

SDRAM

由于实现工艺问题,容量较

SRAM

大。但是读写速度不如

SRAM

,但是

现在,

SDRAM

的速度也已经很快了,时钟好像已经有

150

兆的了。那么就是读写周期小于

10ns

了。

SDRAM

虽然工作频率高,但是实际吞吐率要打折扣。以

PC133

为例,它的时钟

周期是

7.5ns

,当

CAS latency=2 

时,它需要

12

个周期完成

8

个突发读操作,

10

个周期完成

8

个突发写操作。

不过,

如果以交替方式访问

Bank

SDRAM

可以在每个周期完成一个读写

操作

(当然除去刷新操作)

其实现在的主流高速存储器是

SSRAM

(同步

SRAM

SDRAM

(同步

DRAM

。目前可以方便买到的

SSRAM

最大容量是

8Mb/

片,最大工作速度是

166MHz

;可以方便买到的

SDRAM

最大容量是

128Mb/

片,最大工作速度是

133MHz

 

SRAM

Static Random Access Memory

的缩写,中文含义为静态随机访问存储器,它是一

种类型的半导体存储器。

静态

是指只要不掉电,存储在

SRAM

中的数据就不会丢失。这

一点与动态

RAM

DRAM

)不同,

DRAM

需要进行周期性的刷新操作。

 

然后,我们不应将

SRAM

与只读存储器(

ROM

)和

Flash Memory

相混淆,因为

SRAM

是一种易失性存储器,

它只有在电源保持连续供应的情况下才能够保持数据。

随机访问

是指存储器的内容可以以

任何顺序访问,而不管前一次访问的是哪一个位置。

  

       SRAM

中的每一位均存储在四个晶体管当中,这四个晶体管组成了两个交叉耦合反向

器。这个存储单元具有两个稳定状态,通常表示为

0

1

。另外还需要两个访问晶体管用于

控制读或写操作过程中存储单元的访问。因此,一个存储位通常需要六个

MOSFET

。对称

的电路结构使得

SRAM

的访问速度要快于

DRAM

SRAM

DRAM

访问速度快的另外一

个原因是

SRAM

可以一次接收所有的地址位,而

DRAM

则使用行地址和列地址复用的结

构。

  

       SRAM

不应该与

SDRAM

相混淆,

SDRAM

代表的是同步

DRAM

Synchronous DRAM

这与

SRAM

是完全不同的。

SRAM

也不应该与

PSRAM

相混淆,

PSRAM

是一种伪装成

SRAM

DRAM

  

       

从晶体管的类型分,

SRAM

可以分为双极性与

CMOS

两种。从功能上分,

SRAM

可以

分为异步

SRAM

和同步

SRAM

SSRAM

。异步

SRAM

的访问独立于时钟,数据输入和输

出都由地址的变化控制。同步

SRAM

的所有访问都在时钟的上升

/

下降沿启动。地址、数据

输入和其它控制信号均于时钟信号相关。

 

DRAM

:动态随机存取存储器,需要不断的刷新,才能保存数据。而且是行列地址复用的,

许多都有页模式。

 

SRAM

:静态的随机存取存储器,加电情况下,不需要刷新,数据不会丢失,而且,一般不

是行列地址复用的。

 

SDRAM

:同步的

DRAM

,即数据的读写需要时钟来同步。

 

    

主要是存储单元结构不同导致了容量的不同。一个

DRAM

存储单元大约需要一个晶体管

和一个电容

(不包括行读出放大器等)

而一个

SRAM

存储单元大约需要六个晶体管。

DRAM

SDRAM

由于实现工艺问题,容量较

SRAM

大,但是读写速度不如

SRAM

 

    

一个是静态的,

一个是动态的,

静态的是用的双稳态触发器来保存信息,

而动态的是用电

子,要不时的刷新来保持。

 


这篇关于DRAM、SDRAM和SRAM的区别的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/586480

相关文章

Springboot @Autowired和@Resource的区别解析

《Springboot@Autowired和@Resource的区别解析》@Resource是JDK提供的注解,只是Spring在实现上提供了这个注解的功能支持,本文给大家介绍Springboot@... 目录【一】定义【1】@Autowired【2】@Resource【二】区别【1】包含的属性不同【2】@

Java中的String.valueOf()和toString()方法区别小结

《Java中的String.valueOf()和toString()方法区别小结》字符串操作是开发者日常编程任务中不可或缺的一部分,转换为字符串是一种常见需求,其中最常见的就是String.value... 目录String.valueOf()方法方法定义方法实现使用示例使用场景toString()方法方法

分辨率三兄弟LPI、DPI 和 PPI有什么区别? 搞清分辨率的那些事儿

《分辨率三兄弟LPI、DPI和PPI有什么区别?搞清分辨率的那些事儿》分辨率这个东西,真的是让人又爱又恨,为了搞清楚它,我可是翻阅了不少资料,最后发现“小7的背包”的解释最让我茅塞顿开,于是,我... 在谈到分辨率时,我们经常会遇到三个相似的缩写:PPI、DPI 和 LPI。虽然它们看起来差不多,但实际应用

GORM中Model和Table的区别及使用

《GORM中Model和Table的区别及使用》Model和Table是两种与数据库表交互的核心方法,但它们的用途和行为存在著差异,本文主要介绍了GORM中Model和Table的区别及使用,具有一... 目录1. Model 的作用与特点1.1 核心用途1.2 行为特点1.3 示例China编程代码2. Tab

Nginx指令add_header和proxy_set_header的区别及说明

《Nginx指令add_header和proxy_set_header的区别及说明》:本文主要介绍Nginx指令add_header和proxy_set_header的区别及说明,具有很好的参考价... 目录Nginx指令add_header和proxy_set_header区别如何理解反向代理?proxy

Java中&和&&以及|和||的区别、应用场景和代码示例

《Java中&和&&以及|和||的区别、应用场景和代码示例》:本文主要介绍Java中的逻辑运算符&、&&、|和||的区别,包括它们在布尔和整数类型上的应用,文中通过代码介绍的非常详细,需要的朋友可... 目录前言1. & 和 &&代码示例2. | 和 ||代码示例3. 为什么要使用 & 和 | 而不是总是使

C++中函数模板与类模板的简单使用及区别介绍

《C++中函数模板与类模板的简单使用及区别介绍》这篇文章介绍了C++中的模板机制,包括函数模板和类模板的概念、语法和实际应用,函数模板通过类型参数实现泛型操作,而类模板允许创建可处理多种数据类型的类,... 目录一、函数模板定义语法真实示例二、类模板三、关键区别四、注意事项 ‌在C++中,模板是实现泛型编程

Spring中@RestController和@Controller的使用及区别

《Spring中@RestController和@Controller的使用及区别》:本文主要介绍Spring中@RestController和@Controller的使用及区别,具有很好的参考价... 目录Spring中@RestController和@Controller使用及区别1. 基本定义2. 使

Qt 中 isHidden 和 isVisible 的区别与使用小结

《Qt中isHidden和isVisible的区别与使用小结》Qt中的isHidden()和isVisible()方法都用于查询组件显示或隐藏状态,然而,它们有很大的区别,了解它们对于正确操... 目录1. 基础概念2. 区别清见3. 实际案例4. 注意事项5. 总结1. 基础概念Qt 中的 isHidd

Spring、Spring Boot、Spring Cloud 的区别与联系分析

《Spring、SpringBoot、SpringCloud的区别与联系分析》Spring、SpringBoot和SpringCloud是Java开发中常用的框架,分别针对企业级应用开发、快速开... 目录1. Spring 框架2. Spring Boot3. Spring Cloud总结1. Sprin