打印
[KungFu8位 MCU]

单片机存储器结构

[复制链接]
628|5
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
1、存储器构造
存储器就是用来存放数据的地方。它是利用的高低来存放数据的,也就是说,它存放的实际上是电平的高、低,而不是我们所习惯认为的1234这样的数字
      
    图2。单片机里面都有这样的存储器,这是一个存储器的示意图:一个存储器就象一个个的小抽屉,一个小抽屉里有八个小格子,每个小格子就是用来存放“电荷”的,电荷通过与它相连的电线传进来或释放掉,每个小抽屉称之为一个“单元”。
    有了这么一个构造,我们就能开始存放数据了,想要放进一个数据12,也就是00001100,我们只要把第二号和第三号小格子里存满电荷,而其它小格子里的电荷给放掉就行了。问题出来了,一个存储器有好多单元,线是并联的,在放入电荷的时候会将电荷放入所有的单元中,而释放电荷的时候会把每个单元中的电荷都放掉,这样的话,不管存储器有多少个单元,都只能放同一个数,这不是我们所希望的,因此要在结构上稍作变化,看图2,在每个单元上有个控制线,我想要把数据放进哪个单元,就给一个信号这个单元的控制线,这个控制线就把开关打开,这样电荷就能自由流动了,而其它单元控制线上没有信号,所以开关不打开,不会受到影响,这样,只要控制不一样单元的控制线,就能向各单元写入不一样的数据了,同样,如果要某个单元中取数据,也只要打开对应的控制开关就行了。

使用特权

评论回复
沙发
静听风易|  楼主 | 2019-4-29 22:20 | 只看该作者
2、存储器译码
   那么,我们怎样来控制各个单元的控制线呢?这个还不简单,把每个单元元的控制线都引到集成电路的外面不就行了吗?事情可没那么简单,一片27512存储器中有65536个单元,把每根线都引出来,这个集成电路就得有6万多个脚?不行,怎么办?要想法减少线的数量。我们有一种办法称这为译码,简单介绍一下:一根线能代表2种状态,2根线能代表4种状态,3根线能代表几种,256种状态又需要几根线代表?8种,8根线,所以65536种状态我们只需要16根线就能代表了。

使用特权

评论回复
板凳
静听风易|  楼主 | 2019-4-29 22:20 | 只看该作者
3、存储器的选片及总线的概念
    至此,译码的问题解决了,让我们再来关注另外一个问题。送入每个单元的八根线是用从什么地方来的呢?它就是从计算机上接过来的,一般地,这八根线除了接一个存储器之外,还要接其它的器件,这样问题就出来了,这八根线既然不是存储器和计算机之间专用的,如果将某个别的单元接在这八根线上,就不好了,比如这个存储器单元中的数值是0FFH另一个存储器的单元是00H,那么这根线到底是处于高电平,还是低电平?所以我们要让它们分离。办法当然很简单,当外面的线接到单片机的管脚进来后,不直接接到各单元去,中间再加一组开关就行了。平时我们让开关关闭着,如果确实是要向这个存储器中写入数据,或要从存储器中读出数据,再让开关接通就行了。这组开关由三根引线选择:读控制端、写控制端和片选端。要将数据写入片中,先选中该片,然后发出写信号,开关就合上了,并将传过来的数据(电荷)写入片中。如果要读,先选中该片,然后发出读信号,开关合上,数据就被送出去了。注意图4,读和写信号同时还接入到另一个存储器,但是由于片选端不一样,所以虽有读或写信号,但没有片选信号,所以另一个存储器不会“误会”而开门,造成冲突。
    从上面的介绍中我们已经看到,用来传递数据的八根线并不是专用的,而是很多器件大家共用的,所以我们称之为数据总线,总线英文名为BUS,总即公交车道,谁都能走。而十六根地址线也是连在一起的,称之为地址总线。

使用特权

评论回复
地板
静听风易|  楼主 | 2019-4-29 22:20 | 只看该作者
半导体存储器的分类
按功能能分为只读和随机存取存储器两大类。
  • 只读存储器的英文缩写为ROM(READ ONLY MEMORY),从字面上理解就是只能从里面读,不能写进去,它类似于我们的书本,发到我们手回之后,我们只能读里面的内容,不能随意更改书本上的内容。
  • 随机存储器的英文缩写为RAM(Random Access Memory),即随时能改写,也能读出里面的数据,它类似于我们的黑板,我能随时写东西上去,也能用黑板擦擦掉重写。

使用特权

评论回复
5
静听风易|  楼主 | 2019-4-29 22:21 | 只看该作者
解释一下几个常见的概念:

  • PROM,称之为可编程存储器。这就象我们的练习本,买来的时候是空白的,能写东西上去,可一旦写上去,就擦不掉了,所以它只能用写一次,要是写错了,就报销了。(现在已经被淘汰)
  • EPROM,称之为紫外线擦除的可编程只读存储器。它里面的内容写上去之后,如果觉得不满意,能用一种特殊的办法去掉后重写,这就是用紫外线照射,紫外线就象“消字灵”,能把字去掉,然后再重写。当然消的次数多了,也就不**了,所以这种芯片能擦除的次数也是有限的——几百次吧。(现在已经被淘汰)
  • EEPROM,也叫 E2PROM称之为电可擦可编程只读存储器,它和EEPROM类似,写上去的东西也能擦掉重写,但它要方便一些,不需要光照了,只要用电就能擦除或者重新改写数据,所以就方便许多,而且寿命也很长(几万到几十万次不等)。
  • FLASH,称之为闪速存储器,属于EEPROM的改进产品,它的最大特点是必须按块(Block)擦除(每个区块的大小不定,不同厂家的产品有不同的规格), 而EEPROM则可以一次只擦除一个字节(Byte)。FLASH现在常用于大容量存储,比如u盘

使用特权

评论回复
6
sxq2003| | 2019-6-17 17:40 | 只看该作者
不错的,学习一下

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

22

主题

231

帖子

0

粉丝