COMPUTER ORGANIZATION AND ARCHITECTURE DESIGNING FOR PERFORMANCE NINTH EDITION

RAM technology is divided into two technologies: dynamic and
static. A dynamic RAM (DRAM) is made with cells that store data as charge on
capacitors. The presence or absence of charge in a capacitor is interpreted as a
binary 1 or 0. Because capacitors have a natural tendency to discharge, dynamic

RAMs require periodic charge refreshing to maintain data storage. The term
dynamic refers to this tendency of the stored charge to leak away, even with power
continuously applied.

Computer Systems A Programmer's Perspective Second Edition

SRAM stores each bit in a bistable memory cell. Each cell is implemented with

a six-transistor circuit. This circuit has the property that it can stay indefinitely
in either of two different voltage configurations, or states.
Any other state will
be unstable—starting from there, the circuit will quickly move toward one of the
stable states. Such a memory cell is analogous to the inverted pendulum illustrated
in Figure 6.1.
The pendulum is stable when it is tilted either all the way to the left or all the
way to the right. From any other position, the pendulum will fall to one side or the
other. In principle, the pendulum could also remain balanced in a vertical position
indefinitely, but this state is metastable—the smallest disturbance would make it
start to fall, and once it fell it would never return to the vertical position.
Due to its bistable nature, an SRAM memory cell will retain its value indef-
initely, as long as it is kept powered. Even when a disturbance, such as electrical
noise, perturbs the voltages, the circuit will return to the stable value when the
disturbance is removed.
 
metastable 亚稳的,相对稳定的
 
DRAM stores each bit as charge on a capacitor. This capacitor is very small—

typically around 30 femtofarads, that is, 30×10−15
farads. Recall, however, that
a farad is a very large unit of measure. DRAM storage can be made very dense—
each cell consists of a capacitor and a single access transistor. Unlike SRAM,
however, a DRAM memory cell is very sensitive to any disturbance. When the
capacitor voltage is disturbed, it will never recover. Exposure to light rays will
cause the capacitor voltages to change. In fact, the sensors in digital cameras and
camcorders are essentially arrays of DRAM cells.
Various sources of leakage current cause a DRAM cell to lose its charge
within a time period of around 10 to 100 milliseconds. Fortunately, for computers
operating with clock cycle times measured in nanoseconds, this retention time is
quite long. The memory system must periodically refresh every bit of memory by
reading it out and then rewriting it. Some systems also use error-correcting codes,
where the computer words are encoded a few more bits (e.g., a 32-bit word might
be encoded using 38 bits), such that circuitry can detect and correct any single
erroneous bit within a word.
Figure 6.2 summarizes the characteristics of SRAM and DRAM memory.
SRAM is persistent as long as power is applied. Unlike DRAM, no refresh is
necessary. SRAM can be accessed faster than DRAM. SRAM is not sensitive to
disturbances such as light and electrical noise. The trade-off is that SRAM cells
use more transistors than DRAM cells, and thus have lower densities, are more
expensive, and consume more power.
 

Static Random-Access Memory Dynamic Random-Access Memory的更多相关文章

  1. Method for training dynamic random access memory (DRAM) controller timing delays

    Timing delays in a double data rate (DDR) dynamic random access memory (DRAM) controller (114, 116) ...

  2. System and method for parallel execution of memory transactions using multiple memory models, including SSO, TSO, PSO and RMO

    A data processor supports the use of multiple memory models by computer programs. At a device extern ...

  3. Extended paging tables to map guest physical memory addresses from virtual memory page tables to host physical memory addresses in a virtual machine system

    A processor including a virtualization system of the processor with a memory virtualization support ...

  4. Access之C#连接Access

    原文:Access之C#连接Access 如果是个人用的小程序的话.一般都推荐用Sqlite和Access 使用SQlite数据库需要安装SQLite驱动,详情:SQLite之C#连接SQLite 同 ...

  5. 【转】C++ Incorrect Memory Usage and Corrupted Memory(模拟C++程序内存使用崩溃问题)

    http://www.bogotobogo.com/cplusplus/CppCrashDebuggingMemoryLeak.php Incorrect Memory Usage and Corru ...

  6. Random类和Math.random()方法

    一.Random类的定义Random类位于 java.util 包中,主要用于生成伪 随机数Random类将 种子数 作为随机算法的起源数字,计算生成伪随机数,其与生成的随机数字的区间无关创建Rand ...

  7. php编译 :virtual memory exhausted: Cannot allocate memory

    有时候用vps建站时需要通过编译的方式来安装主机控制面板.对于大内存的VPS来说一般问题不大,但是对于小内存,比如512MB内存的VPS来说,很有可能会出现问题,因为编译过程是一个内存消耗较大的动作. ...

  8. LeetCode——Copy List with Random Pointer(带random引用的单链表深拷贝)

    问题: A linked list is given such that each node contains an additional random pointer which could poi ...

  9. 编译时:virtual memory exhausted: Cannot allocate memory

    一.问题 当安装虚拟机时系统时没有设置swap大小或设置内存太小,编译程序会出现virtual memory exhausted: Cannot allocate memory的问题,可以用swap扩 ...

  10. Random.nextint() 和Math.random()的区别

    Random.nextint() 和Math.random()的区别 Java代码   Random rand = new Random(); long startTime = System.nano ...

随机推荐

  1. C# 从入门到精通

    int i=null; int? i=null; 我们用一个问号 来指定这个值类型是可空的 属性是只读的

  2. 在php4下可用,简单的php数组转成json格式,

    function array_to_json( $array ){     if( !is_array( $array ) ){         return false;     }       $ ...

  3. 富士通F-02D 1630万像素翻盖手机docomo官方解锁送充电器

    此款富士通F-02D手机是非常漂亮的一款拿在手上十分有质感的日版翻盖手机.2011年11月上市的新款手机.1630万像素的高清摄像头,防水,带指纹锁,高清HDMI输出,非常漂亮的手机灯光设计,其性能配 ...

  4. 关于MFC监听器的相关了解

    最近有个项目,所搭框架为了减少耦合,希望MainFrame中View不依赖于Mainframe,即MainFrame中含有view类而view中不会包含MainFrame的相关信息. 现在遇到一个问题 ...

  5. VMware-WorkStation 序列号(转)

    原文摘自: http://blog.csdn.net/twlkyao/article/details/8681927 最近升级了下虚拟机,可是还要序列号,网上找了几个可以用的,留着,备用. 9.0.2 ...

  6. Android_就像小朋友“搭积木”一样。

    就像小朋友“搭积木”一样.感觉这句话很有意思.完整的话是这样的: Android提供了大量功能丰富的UI组件,开发者只要按一定规律把这些UI组件组合起来 --就像小朋友“搭积木”一样,把这些UI组件搭 ...

  7. 蒟蒻的树形dp记录

    POJ2342: 题意:某公司要举办一次晚会,但是为了使得晚会的气氛更加活跃,每个参加晚会的人都不希望在晚会中见到他的直接上司,现在已知每个人的活跃指数和上司关系(当然不可能存在环),求邀请哪些人(多 ...

  8. MATLAB中 feval 函数的用法

    feval就是把已知的数据或符号带入到一个定义好的函数句柄中,你看看下面的例子 syms tf=@(x,y) x^2+y^2k1=feval(f,1,t)k2=f(1,t)k3=feval(f,1,1 ...

  9. TODO:C# Socket

    http://www.cnblogs.com/licongjie/archive/2006/10/26/540640.html http://blog.csdn.net/ZOU_SEAFARER/ar ...

  10. BZOJ4298 : [ONTAK2015]Bajtocja

    设f[i][j]为第i张图中j点所在连通块的编号,加边时可以通过启发式合并在$O(dn\log n)$的时间内维护出来. 对于每个点,设h[i]为f[j][i]的hash值,若两个点hash值相等,则 ...