寄存器与存储器物理区别

从根本上讲,寄存器与存储器RAM的元件不一样????

memory is equivalent to a lot of registers.

寄存器存在于CPU中,速度很快,但是所占面积大,数目有限;
存储器就是内存,速度稍慢,所占面积小,但数量很大;
计算机做运算时,必须将数据读入寄存器才能运算。

 

Mike Ash写了一篇很好的解释,非常通俗地回答了这个问题,有助于加深对硬件的理解。下面就是我的简单翻译。

原因一:距离不同

距离不是主要因素,但是最好懂,所以放在最前面说。内存离CPU比较远,所以要耗费更长的时间读取。

以3GHz的CPU为例,电流每秒钟可以振荡30亿次,每次耗时大约为0.33纳秒。光在1纳秒的时间内,可以前进30厘米。也就是说,在CPU的一个时钟周期内,光可以前进10厘米。因此,如果内存距离CPU超过5厘米,就不可能在一个时钟周期内完成数据的读取,这还没有考虑硬件的限制和电流实际上达不到光速。相比之下,寄存器在CPU内部,当然读起来会快一点。

距离对于桌面电脑影响很大,对于手机影响就要小得多。手机CPU的时钟频率比较慢(iPhone 5s为1.3GHz),而且手机的内存紧挨着CPU。

原因二:硬件设计不同

苹果公司新推出的iPhone 5s,CPU是A7,寄存器有6000多位(31个64位寄存器,加上32个128位寄存器)。而iPhone 5s的内存是1GB,约为80亿位(bit)。这意味着,高性能、高成本、高耗电的设计可以用在寄存器上,反正只有6000多位,而不能用在内存上。因为每个位的成本和能耗只要增加一点点,就会被放大80亿倍。

事实上确实如此,内存的设计相对简单,每个位就是一个电容和一个晶体管,而寄存器的设计则完全不同,多出好几个电子元件。并且通电以后,寄存器的晶体管一直有电,而内存的晶体管只有用到的才有电,没用到的就没电,这样有利于省电。这些设计上的因素,决定了寄存器比内存读取速度更快。

原因三:工作方式不同

寄存器的工作方式很简单,只有两步:(1)找到相关的位,(2)读取这些位。

内存的工作方式就要复杂得多

 

寄存器(以RS锁存器例)

flip-flop 触发器

latch 锁存器

一般寄存器是指由基本的RS触发器结构衍生出来的D触发,就是一些与非门构成的结构,这个在数电里面大家都看过;

 

 

 

单个触发器定义:https://baike.baidu.com/item/触发器/193146

触发器的电路图由逻辑门组合而成,其结构均由R-S锁存器派生。触发器可以处理输入、输出信号和时钟频率之间的相互影响。

在R-S锁存器的前面加一个由两个与门和一个非门构成的附加电路,则构成D触发器。

当时钟脉冲CP为1时,读入输入端D的数据并传至输出端;当CP为0时,根据与门“只要有一个输入端为0

则输出为0”的特性,输入端D的数据被与门屏蔽了,无法到达输出端,不管输入D怎样变化,Q端输出值都保持不变,只有等到下一个CP高电平到来时,才会把当前的D值送出。这样就实现了延迟输出即暂时保存的功能。从电路的动作可以看出,时钟输入端起到控制的作用,CP为1时,能触发后面的锁存器把D的值暂时锁存起来,这也正是触发器名词中“触发”的含义,这正是触发器与锁存器的联系与区别:触发器利用了锁存器的保存原理,但是加上了触发功能,可以控制保存的时间。

RS锁存器电路:

 

基础知识反相器

反相器inverter:

当输入Vin=0 V时,晶体管截止,集电极开路,Vout=5 V;

当输入Vin=5 V时,晶体管饱和,饱和导通,Vout=0 V

触发器的基本物理组成:电阻、电容、二极管、三极管

下图是由4个三极管组成的4位寄存器,它的原理是:用晶体管导通状态(0011)或集电极电压(1100)记录输入电压(0011),这个寄存器能寄存15种状态(0000~1111).

 

存储器

不同的存储位置,程序指令执行周期不同。

硬件寄存器和程序寄存器(4.2.5节)

数电第七章:半导体存储器

ROM和PROM:例由二极管、MOS管构成。非易失性存储,存储于ROM中的程序称固件firmware。

例:由二极管组成的8个存储单元(每个单元4bit)的ROM。

图1:8个地址address对应的存储内容word

图2:用二极管实现图1逻辑。8条地址线,4条数据线。

图3:8个地址用3个二进制位编码,实现整个电路都用二进制表示,programmable ROM

 

EPROM,erasable,紫外线擦写,由MOSFET管构成?

EPROM,electrically erasable,电擦除

下图的ROM还加入了EN使能,除了地址和数据,还有第三种控制。

RAM则有自己的工艺。

静态statistic SRAM:靠VDD供电,不动。图a,Q1Q2控制,Q3Q4寄存,形成一个latch。

动态dynamic DRAM。靠电容供电,电容会放电,需反复快速充电,动态。

下图分别是静态和动态,但是功能一样,锁存1bit???

DRAM比SRAM电路简单,占用面积少,但是DRAM刷新电容电路复杂,从控制电路看,SRAM简单。

SRAM的每个位存储在一个双稳态存储器单元里,每个单元由6个MOS管实现”

DRAM每个位由一个充电电容和一个访问晶体管组成”

 

 

单片机的寄存器:“每个寄存器有分配的唯一地址”

为什么寄存器也有地址?寄存器也属于内存?x86中的寄存器有地址吗?

 

 

这个图???物理部分需要分隔开??

DOS内存管理:为物理内存分配地址??

 

“主存是x86CPU外的存储区域,堆栈是在主存中开辟的一片数据存储区”

x86芯片的寄存器都有自己的名字(有相应的机器代码约定,寄存器标识符),所以不需要地址???

程序寄存器:

芯片的寿命一般是多长 ?

http://3g.163.com/dy/article/DHRHTT420511UFN2.html

如果说是SSD上用的闪存芯片,那就有相对有限的寿命了,闪存芯片主要分为SLC、MLC和TLC三种,SLC寿命最长,速度最快,但是成本最高,TLC则相反。闪存的寿命磨损就在于闪存单元的写入-擦除,一般来说,SLC闪存可进行100000次写入-擦除循环,MLC可进行10000次左右。不要觉得可怕,得益于越来越先进的主控芯片,日常使用下正常的闪存芯片没那么容易用坏,即使是TLC闪存,寿命达到8年以上也没有问题,使用几年后一般都会掉速,不过实际影响并不大。其实相比闪存芯片,SSD上的主控反而更有可能先坏掉。所以我们不用太在意闪存芯片的寿命,一般在你换下一个SSD或者手机时,它就直接淘汰掉了。不过对于7*24小时工作的服务器来说,非常不建议用SSD,因为在这种高强度工作环境下的闪存芯片寿命会大打折扣,即使是机械硬盘,用个两三年挂掉的几率也很高。

至于电脑上的内存芯片(RAM),由于其电容存储机制,只要是正常没有缺陷的芯片,寿命非常长,要不然绝大多数内存条都是终身保,只要不是不当超频,静电损坏,人为破坏,正常的内存寿命几乎不用担心。

 

可编程逻辑技术(FPGA/CPLD)在存储中的应用

 

存储器

T:transistor晶体管 C:Capacitance电容

DRAM:dynamic random access memory动态存储器。一个电容;一个晶体管。存储原理:动态MOS存储单元利用MOS管栅极电容来存储信息,但由于栅极电容的容量很小,而漏电流又不可能绝对等于0,所以电荷保存的时间有限。为了避免存储信息的丢失,必须定时地给电容补充漏掉的电荷。通常把这种操作称为“刷新”或“再生”,该时间必须小于栅极电容自然保持信息的时间(小于2ms),因此DRAM内部要有外围刷新控制电路,其操作也比SRAM复杂。尽管如此,由于DRAM存储单元的结构能做得非常简单,所用元件少,功耗低,已成为大容量RAM的主流产品。

SRAM:static静态存储器。存储原理:由触发器存储数据。有锁存器。单元结构:六管NMOS或OS构成。速度快、使用简单、不需刷新、静态功耗极低;常用作Cache。●缺点:元件数多、集成度低、运行功耗大。●常用的SRAM集成芯片:6116(2K×8位),6264(8K×8位),62256(32K×8位),2114(1K×4位)

ROM:

掩膜ROM:数据通过掩膜方式写入。掩膜:烧断每个单元内与外部相连的熔丝。

EEPROM:数据通过紫外线照射或注入隧穿电流方式写入。

 

 

参考文献:

1、数字电子技术基础

2、《深入理解计算机系统》第三版,第六章

3、《DOS原理与结构》

4、《[80X86汇编语言程序设计].王元珍.文字版》

5、《Dsp-Digital-Signal-Processing-With-Fpga》

6、《CMOS数字集成电路:分析与设计  第3版》第十章 半导体存储

7、《Digital Computer Electronics-McGraw-Hill (1993)》第九章 memories

  • 14
    点赞
  • 65
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值